I had it. I’m sick and tired of this nonsense. People, Devs in the specific, should pull their head out of their ass right now and act like adults.
What am I on about? I’m about re-factored, recompiled languages. Stuff like CoffeShit (yeah, Coffee-SHIT - so what?).
Who the fuck cares?
Come on people, are we really saying that the grammar of a language makes you a better/smarter/faster developer? This is BULLSHIT! Grammar has nothing to do with the quality of your code or with your development speed. NOTHING!
If you are a shit-head, a language is not going to make you brilliant. It might get you to do a speech in a conference no one cares about, where you can brag for 15m about:
Oh, I started to use CoffeScript for my coding and it's brilliant and shit! My productivity gone out and shit! My girlfriend left me for a C++ developer but I don't give a shit, because I'm free of **semicolons** and **brackets**! Now I can really develop great stuff.
If you ever said (or thought) stuff like the above, you are a retard! Getting rid of semicolons or brackets will not take away all your childhood dramas, all the times in which your personal bully kicked you in the nuts, or all the times in which your mother in law says to your wife:
Darling, I know you love him, but he is ugly as shit!
Brackets and Semicolons are for sanity. For order. For organisation. And they are there because they make the life of the code easier, as he can code with more freedom. YES! MORE FREEDOM! - If you think about it, you know I’m right.
Man up, you sissy!
Decisive factors that can really make a difference in your developer life are instead things like:
- A proper, well organised, rich API
- An easy-to-live-with SDK
- A good Platform Abstraction
- A new approach to Concurrency
- A loosely coupled Publish-Subscribe implementation in compiled languages (this as well)
- A fast write-compile-test roundtrip
- An editor that doesn’t get in the way
“Not having to type brackets” or “being free from semicolons” is just an excuse: people that enjoy or are serious about their task, don’t give a shit about this stuff. Ever!
Only the ego-maniac, time-wasters, bored developers think that adopting something like CoffeeShit can make them better/faster. Is because they have no idea on how to learn or improve, so they look for someone else’s recipe to make themselves better. Sad people indeed.
Of course, this doesn’t apply to everything: better languages for specific domains/fields do come along sometimes and make stuff better/easier, but it’s never because of the grammar.
Better Dev Environment == Better Dev Experience == Better Dev Performance
If you can experience the above, than you are doing well. Yes, you still don’t get to sleep with Jennifer Aniston, but you might be closer to that (hey, statistics wise, I’m not saying anything wrong here!).
There are multiple example in the industry that demonstrate this to be true.
Symbian invented the concept of Apps for Mobile a trillion years ago, but the SDK was pure shit. Apple came along, made the iOS SDK (after having seen how easily people started making one anyway :-P) and they now rule the world.
Linux has been around for decades, but a lot of tech-savvy people never adopted it, and stick with Windows, because it was too painful to have to deal with all the intricacies of Linux, if your only aim was to code in a stable, fast, reliable environment.
There was (and still is) a multitude of Linux distro that aim at making the experience better, but we had to wait for Canonical to came along to see massive adoption from “skeptics”.
Perl has been for quite sometime the only scripting language for web development. But was not as easy. Rasmus Lerdorf invented PHP and kicked everyone in the nuts. Yes, PHP has problems and can turn any mongoloid into “I’m a web dev” but… with great power comes great responsibilities.
Less or SASS
Less and Sass are 2 very good examples of how to do stuff like this right! They do compile down to CSS ultimately, but they have A MASSIVE VALUE ADDED. Ask any modern web dev and he will tell you why. No time here.
By the way, I do love semicolons and brackets, and I believe that Python-ers fixation for not using them is correctly defined as wanking. But I also believe that if a community/team agrees on a coding standard, is good to stick with it.
I might still complain about it, but I’d definitely stick.
P.P.P.S.: I know it might hard to believe, but this article doesn’t want, in any way, attack the good work of Jeremy Ashkenas. His implementation of CoffeeScript, and the way he clearly documented (and in a very stylish manner) is remarkable and deserves all my respect (and yours too). This is about a higher concept: hope Jeremy gets it, and this doesn’t sound as a “personal” attack.