This post is part of my Stepping Up Rails: Go From Good to Great series. Get the complete series on Teachable!
It is said of Ruby’s creator Yukihero Matsumoto, ‘Matz is Nice and So Are We.’ It is this mantra about the Ruby community and programming language, the vision of Rubyists with an ethical calling towards treating each other nicely— an interdependence, of a kind, on the transitive property of niceness (that is, that nice can be passed on from one individual to another).
When we code we are nice. We treat one another with dignity and respect; we are good to ourselves; and we are good to the codebase itself. We don’t try to fit ugly code into structures. We are nice to the codebase and we are nice to us. Matz is nice.
When we make something work well, we proclaim, ‘NICE!‘ as an expression of triumph. We are nice.
Nice is about being considerate. It requires human empathy to understand the other person. Matz is nice.
Nice means we put-up other people up instead of putting them down. We are nice.
Nice is how we design a system— with “just enough” knowledge to guide our choices now, and nicely extensible for the future. Matz is nice.
Nice, to many people, means courteous and pleasant. To Rubyists, it means that but so much more. It’s a way of thinking, it’s a way of being, it’s a core value. What we put in we get out and what we get back and give back.
Before it was a Linux operating system, “Ubuntu” was a South African spiritual philosophy:
I am because you are because I am
In our inter-disciplined practice of Ruby, We are Nice Because Matz is Nice and We are Nice Because We are Nice— it is the core of our modern approach to Ruby and the Rails ecosystem of developers.
So be nice, because it will come back to you 1000 times.