Don’t Get Attached to Programming Languages
mikecavaliere.com
mikecavaliere.com
Use the right tool for the job and all that, but there is nothing wrong with still being attached to something else. I've learned a lot more about programming in general by being attached to a specific language and bringing that experience to other languages than I ever would have by worrying about zip lining in costa rica while writing crap code lacking concepts I hadn't had the chance to realize yet. And to me thats perfectly fine.
So basically, don't get attached to programming languages, unless you really want to, then it's cool. But really, go get a girlfriend. Unless you want to write code forever, which is still cool. But go bungee jumping in New Zealand..
What a waste of 5 minutes.
Unfortunately, he makes that point while simultaneously showing contempt and patronizing the people who enjoy ego-based arguments to ego-based bragging about life experiences.
Everything else seems to come and go, especially scripting languages. Right now I like Python but I'm not holding my breath.
If someone wants to say don't be attached because you will be biased. I say we all have bias. Just DONT use you bias to blast other languages.
I can't tell you how many times Python people jump on a comment whenever I mention I prefer R to Python for statistics to tell me how wrong I am and how bad R is.
Live and let live and have a warm place for specific languages and dread for others (I am trying to get over my bias against javascript).
It is indeed. Does that mean that I'm free to argue about this stuff for hours on end?
"What's your favorite programming language?"
"Describe three things you would change about that language."
And as a bonus question if they aren't faltering, for each improvement they list, I'll ask: "Can you think of a programming language that does that thing correctly?"
I find that programmers I respect/admire can all answer these questions enthusiastically and without hesitation. As with all interview questions though, you do need to worry about false positives and negatives.
I know personally that as I specialize in a language or a framework, I get better and better at seeing problems in terms of that language or frameworks idioms and happy paths.
I love learning new languages. Each new language usually adds a couple of new ways of thinking about things, and buries some of my older tools deeper in my toolbox.
I guess I'm just saying there's more to it than aesthetics or attachment. I think there's a practical mind-inertia.
My ability to do my job depends on the programming languages used. Many things that I can do in Haskell or Clojure would take far too long to do in Java. And as I get older and leadership is expected of me, I need to know what's out there and what the most capable tools are (and what tools are exciting to the best programmers). I'm not so attached to any language that I believe in "one language to rule them all", because there obviously isn't such a thing, but PL is a choice of very high impact.
I would say, "don't get so attached to programming languages that you use the wrong tool or reject new ideas too early".
For example, Haskell is optimized for highly productive individuals who don't mind learning new concepts. It empowers the individual. Java (at least, with the modern enterprise culture) is optimized for teams of hundreds of mediocre programmers who are individually replaceable and insignificant. Career management requires picking work environments, and tool choices carry a lot of signal (if not perfect) about how a company views and manages technology.
The OP smells like that attitude of "I don't know it, so let's call it unimportant and talk about roller coasters in Spain."
"Haskell is optimized for highly productive individuals"
"Java is optimized for teams of hundreds of mediocre programmers who are individually replaceable and insignificant"