DEV Community


Discussion on: What made you switch your main programming language?

bousquetn profile image
Nicolas Bousquet

Before even going to university and while in it I learned lot of languages. On my own or on courses. I did things like games, a very basic 3D rendering engine, some graphical tool to morph images...

Now I work in Java and I would say that in a sence, yes I work in the language my employer pay me for. I want to create things and to create interresting things. When I already worked a lot on that during the day, searched the internet already to read how to better solve my employer problem, I don't have the will to do that on my own for a pet project.

In the past few years I got the opportunity to be the technical leader and architect of a new key product for the company. The business domain is interresting, the technical problems to solve too. The scalability and performance requirement a challenge. Our first client ask for 6000 TPS. If the product is a success it will be deployed worldwide and I would not be surprised if it would be used one day at 100K tps on quite a few farms.

Learning a new language is fun and I pushed for scala, I used clojure a bit for myself but the problem of the language is that they are barely used. Scala a bit more with big data and in the finance sector but that's about it.

I want to create, I want to take challenges. A great developper can be a great developper in any language and he can learn and help colleagues in any language. But the interresting projects, are where they are.

I don't want to pick a random language or technology and be happy because it can do CRUD in a few lines of codes. PHP does it in one line and the performance and scalability is far from bad. When you need something scalable and complex, likely that you can't afford most of the more exotic choices.

They either miss the performance, the libraries or the workforce and basically that's part of why they are not more used.

This is a chiken and egg problem and I would love to switch to scala or why not haskell but this isn't that easy.

I'll push for it but the project has to be great first. The technology behind come second. And well with Java8 we start to have something decent. Not great as a language with many quirks and limitations but it is a robust tool.