Agile Zone is brought to you in partnership with:

I am a senior software architect specializing currently in enterprise Java development. I have past experience with JavaScript, python, C and going back in time even FORTRAN and assembly were still not extinct at the start of my career. Currently I work on different customer projects on behalf of EPAM system leading a 8 person agile group. As a hobby independently from my employer I maintain and develop open source projects, like ScriptBasic Classic, ScriptBasic for Java, License3j (google them if interested). Peter is a DZone MVB and is not an employee of DZone and has posted 34 posts at DZone. You can read more from them at their website. View Full User Profile

Cheap Programming Languages

11.22.2013
| 13331 views |
  • submit to reddit

This is an old tweet that recently came into my eyes via a repost. I read it and I was nodding: very true. But on second thought I just started to think about the practice that I see when large companies choose technology.

Recently I was part of a decision to go for JavaScript and some native JS framework on the client instead of GWT. I was busy warning the management that the huge load of JS developers available on moderate price is a guarantee for failure. You can buy just as much JS developer as you want for a low price, but they are the low-quality producing guys. Low price, low quality. You have to hire the JavaScript developers who have higher price tags. (Not for the price tag alone of course.)

If you want acceptable quality you have to pay for it. In case of JS, because the language gives you more freedom the price may even be higher. Partially on price per hour of experts who are really good, and the total number of hours may be more as well. If you do not take that serious you will face the sad truth: the more freedom you have the more trouble you can get into, unless you have self discipline. And self discipline comes at a price tag. Pay nuts and get only the monkeys working for you.

And then I was going on thinking. What technologies did the construction workers use when my house was renovated ten years ago? Was it state of the art? No it was not. Why? Because these people were just not able to handle modern technology. The electrician (one of the cleverer guys, still illiterate, and I mean literally: he could not write or read) fixed tubes on the wall for the wires to run in and boxes for the outlets. Then the bricklayers came and put a cover of mortar. The electrician had to find and dig out the outlets. Bricklayers just did not care the work of the other person. But the technology was prepared for that. This is lego. When you can not adjust the quality of people, you adjust the technology. We do the building of your house from lego. Not the toy type, but the same principles. The toy lego is adjusted to the brain capabilities of a child, the house construction lego is adjusted to the construction workers. Not a big difference.

The same is true for software. Many years ago a German bank IT person was eMailing me questions and explained they considered to replace a few hundred of Perl scripts to their ScriptBasic equivalent. After that the maintenance could be just cheaper. Perl programmers were scarce that time and pricey. ScriptBasic is on the other hand is just BASIC. Everybody knows BASIC just as well as the little girl from Jurassic park knows unix. (This is an extreme example though.)

JavaScript is the dominant language on the client side and bites into the server side as well. PHP is wide spread in the web arena. Why? Because they are the lego types compared to languages like Java, Python, Ruby, Scala, Haskel.

Looking again at the quote we started the article with. Choosing a language because it has cheaper developers is like building your house with Lego so you can hire anyone as a construction worker. Looking at a different angle, and without exaggeration: yes it is exactly. We choose a cheaper language so we can hire cheaper (still just not anyone) as a construction worker. Very true. And that is really, what IT managers really do. Even though they know they will have something built of lego.

Just with a special spice added to it: quality control.

Published at DZone with permission of Peter Verhas, author and DZone MVB. (source)

(Note: Opinions expressed in this article and its replies are the opinions of their respective authors and not those of DZone, Inc.)