Programming languages

It's easy to be impressed by a programming language and start bashing others. Beginners look for those "hello word" tutorials and seasoned developers read blog post or documentations to learn more about them. The choice may start by looking for a language that offers to do the most with less code. Sometimes benchmarks are used to determine which is the fastest, but it is rarely what makes you take a decision. The winner is almost always the language that looks more like the ones you are familiar with.

I stopped following benchmarks that test which web MVC framework is the fastest. When I get a project that require me to print hello world as fast as possible I will get back to them.

web framework benchmark

Web frameworks benchmarks from techempower.com

To my experience, all popular programming language are just fine. They deliver what they promise in one way or another. I learned the basic of many and if you follow the documentation you can build something decent that works. That was my experience with Ruby, Golang, python, .Net and C#, and many more I tested just for fun. The language is a mean to communicate your ideas to the computer. Of course by learning a language you can't help but assimilate some of it's culture too.

However at a larger scale, every language is broken. It doesn't matter if you used scala from the beginning. The same code that used to work fine for your 20 users no longer works for the hundred thousands. At this point your programming language is the least of your worries. You have to learn optimization techniques, caching strategies or you hire experts. A website that caters to 100 people a day using PHP does not necessarily work the same way as a website catering to millions also using PHP.

MySQL is the database you hear the most bad things about. If you are trying to power your small blog then it is perfectly fine. Most people using it on bigger website complain on how they wish they could switch to postgres because it's mo' better. It is true that you find some limitations at some point in MySQL. However, if craigslist and or Facebook can use the same database at a scale bigger than you can imagine, then maybe a broken database itself is not the problem.

The same can be said about PHP, or Ruby. Take this blog for example. It uses very little code which is perfectly suitable for my needs. But the day came where one of my posts made it on the front page of reddit, and that very little code failed miserably. I optimized it right after and it purred through hackernews front page.

My blog is a tiny example. At Facebook, they still codes in PHP but there are a many other layers of optimizations that take place before the code is deployed. The language itself doesn't matter, it is a convenience to help the developers work at a faster pace. At a larger scale, you will have to make some tweaks to do the same things it used to do easily.


Comments

There are no comments added yet.

Let's hear your thoughts

For my eyes only