Updating the Implementation
Updating the implementation of a product is fun, but it's not a substitute for creating actually new products. Sometimes the reason for updating a project is due to what's called Tech Debt. Other times it's simply a project decided to be necessary by a lead engineer. Either way, it's fine and all, and often times it's enjoyable to experiment with a new language. But it's still not as fun as building something new.
One of the reasons I don't like when people say that they "love to work with modern technology" in the context of programming languages and tools is that I feel they lack the distinction between using something new and creating something new. C++ and Java have been around for a long time, and are still being used to this day to create brand new apps and games. These two languages alone put to rest the notion that something new must be made by something new.
Even with Java, though, there is modernization creep. I saw a thread today boasting about some of Java's upcoming features. Syntactic sugar is definitely useful for reducing file size, but when Java starts modernizing with too much of it, it feels like it's trying to hard to fit in with the younger and cooler kids.
Programming is Nothing but If Statements and Loops
Everything is summed up best by a recent Tweet from John Carmack, in which he recalls his youngest son exclaiming that "programming is nothing but if statements and for loops." The comments under the tweet were pretty hilarious, as was the tweet itself. From a high level, it's true, and that's why the syntactic sugar doesn't really help much in solving new problems and creating new products.
In the end, it doesn't matter how modern a programming language is. It will fade away if it's not actually being used to make new things.
Leave a Comment