I have seen a LinkedIn post last night and it prompted a lot of thoughts I wanted to share. It’s not specific to this exact post, I have been hearing & reading a lot of different versions of the same idea.

For those who doesn’t want to click to an external link, here is the content of the post:

Django Developer says Python is king. Node.js Developer says Javascript is the future. Android Developer swears by Kotlin. Java Developer stands by Java. iOS Developer loves Swift. But, ‘Software Engineers’ know and understand: Languages come and go, and trends change, but the core concepts of coding will always stay the same. Master the fundamentals, and you’ll adapt to any language.

I think that our job is kind of special in a way, there are a massive number of ways to make it more fun. (Probably) no employer will ask you to find the operating system you like most, find yourself a cooler desktop environment or ask you to find cool new modal editors. But you can do all that and a thousan more to make things more fun and they (probably) won’t be against it as well (as long as you resolve enough tasks in the sprint, so remember to do that :p).

I love it when I see a fellow engineer being passionate about something. It could be a programming language, a framework, or even an operating system. Because when I listen to a person like that, I get to ask a lot of “why"s. I learn why they love what they love. I compare it to my own workflow. I compare it to the things I love. When I see a fellow engineer saying s/he absolutely loves something, I see an opportunity to make things more fun.

Putting all the fun aside, I love to see passionate people. Whether it’s their favorite programming language, an idea, or even a football team :). I truly believe that passions are the essence of humans, and I hope we keep that passion alive in the software engineering world.

Of course, there are many tools for different requirements. Each has its trade-offs, and you need to pick the right tool for the right job, and yeah the fundamentals, learning to learn and all that. But man, just let the guy love Kotlin :) Probably Kotlin lovers won’t try to write an operating system kernel with it. (And if they do, I’ll share my thoughts about when to put our passions aside :p)

By the way, I tried developing without a REPL last week, and it sucked. When I think the days I wrote Java… no REPL… Oh… I love Clojure.