The one thing that has always bothered me about functional programming languages is that they seem to attract very intelligent and extremely arrogant people.
You might argue that these people are the loud minority of the functional programming community, and you might be right. But guess what?
It does not matter.
If you want to attract new people behind any cause, it is not a good idea to give an arrogant first impression. No one wants to join to a community whose members think that if you don’t get their point of view, you are not smart enough.
I repeat:
No one wants to join to a community whose members think that if you don’t get their point of view, you are not smart enough.
Arrogance does not build bridges. It destroys them.
For an “outsider” like me, it seems that these people value clever oneliners over solving real world problems.
I am a huge fan of writing readable code which solves the right problems. Although using oneliners is a nice way to demonstrate the features and the flexibility of functional programming languages, they have no place in the source code of production systems.
We are not writing code because we want to convince our colleagues that we are smarter than they are. We are writing code because we are solving a real world problem together with our colleagues.
We must remember that if our colleagues cannot understand our code, it is not their fault. It is our fault!
Rod Johnson gets this.
I enjoyed watching his ScalaDays 2013 keynote because he clearly understands that if the Scala community wants to grow, its members must
- Take a more pragmatic approach to software development. Most of the developers don’t care about oneliners. They care about solving real world problems.
- Stop alienating Java developers (and other new adopters). Intelligent and arrogant people end up playing with other intelligent and arrogant people. Why would a developer want to have any part in a community which despise her?
Scala Has Potential
That being said, I think that Scala has a great potential to be the next big enterprise programming language.
I had lost my interest to Scala mainly because I felt that the Scala community is full of immature and arrogant purists. Then I decided to participate to Coursera’s Scala course and I saw a totally different part of the Scala community. I saw people who were extremely helpful and newbie friendly. I realized that my first impression was not correct.
These are the people who can make Scala succesful. I am happy to see that Rod Johnson is one of them.