Everyone has heard about hipster developers. These are the guys and gals who are working in startups and doing cool things.
They are not driven by money. They are driven by the will to make the world a better place for all of us.
They use cool technologies. They are agile. They are lean.
You must be wondering how you can become one of them. Let me tell you a secret:
It all starts from selecting the right technologies.
Technology Evaluation Guide for Hipster Developers
If you want to become a hipster developer, you have to select your technologies by following these rules:
Rule One: If It Is Not on Hacker News, It Is Not Cool
If the technology is not frequently found from the front page of Hacker News, it is boring. You want to be cool and using boring technologies doesn’t make you cool. It makes you look boring like those enterprise developers. Poor bastards.
Rule Two: You Want to Have the Latest Toys
If the technology is mature (a stable version has been released), you should not use it because it is not new and exciting. You want to be an early adopter because using new technologies is fun and it makes you look cool. You don’t want to be known as the guy (or gal) who uses yesterday’s tech. You want to have the latest toys.
Who cares if you have to rewrite your application because you notice that the author has abandoned his creation and moved on. That is part of the game. That is what hipsters do.
However, if articles about this technology are often found from the front page of Hacker News, you can consider using it. You will not look as cool as the early adopters but you will not look boring either. This can make you look professional.
On the other hand, who wants to look professional? That is the opposite of cool.
Rule Three: Functional Programming Is Fun
Functional programming is cool, and object oriented programming is boring. You must use functional programming language because everyone knows that object oriented programming does not help you to solve real world problems. Only stupid developers use it, and you don’t want to look stupid. You want to look cool.
Besides, if you use functional programming language, you can do cool things with a single line of code. Who cares that no other human can read or understand your code. A true hipster knows that code is written for computers to read.
Rule Four: NoSQL Solves All Problems
NoSQL databases are superior to relational databases. Database schemas sucks because they force you to specify the structure of your data before you can store it. Also, relational databases force you to write custom translation code or use ORM (which all suck by the way). This is not fun.
Enterprise developers claim that relational databases are better because they support ACID transactions. Don’t believe this bullshit. Everyone knows that ACID transactions are not really ACID.
The biggest problem of relational databases (besides being boring) is that they DO NOT SCALE.
NoSQL databases are cool because you can just shove anything in and read it too. You don’t need to create schemas or write any boilerplate code. The best part of NoSQL databases is that they SCALE LIKE A KING.
If you want to be the coolest kid on the block, you must use a NoSQL database in your every project. Who knows, one of those projects might be the next Facebook and you must be prepared for it.
Rule Five: True Hipsters DO NOT USE JAVA
Java is a verbose programming language which doesn’t support functional programming. Even the simplest operations require that you write a lot of boilerplate code. Do you really want to do this when you can use a functional programming language to write one liners which make you look smart in the eyes of your peers?
Java is a unfashioned dinosaur and it is used by clueless developers. You don’t want to be associated with these guys. You want to be the coolest kid of the block. Remember?
Wait. You still have one more lesson to learn.
Only One Rule Matters
The most important rule of the way of the hipster is:
You shall not look boring.
You want to look cool. You want to be an early adopter. You want to have fun. If you write a blog, you want that your blog post hits the front page of Hacker News.
Don’t worry. If you follow the rules given in this blog post, you have a chance to be called…
A rock star developer.
P.S. Don’t worry about the customer. You can rewrite any application in a couple of weeks. Being wrong is not a big deal. After all, you are not burning your own money. Right?