> I've seen buggy pre-1.0 libraries used for critical production softwareNot "critical" as in "if it goes down it's really annoying", but "critical" as in "checks and stores passwords" or "moves money from one bank account to another". simply because it was a wrapper library written in a functional language, as opposed to a more stable library written in an imperative language.
I do think if you're using a niche language in an industrial capacity, you need to know how to work with libraries outside the language. Admittedly this is easier for some languages than others. But I've run into candidates who wanted to interview in clojure but who didn't know how to call into pre-provided java libraries.
A lot of technically minded people do not have the self-awareness to answer that question honestly even to themselves.
Whereas Gooby "just works" once it compiles?
"Fun" for programmers means satisfaction and achievement in my experience.
Anyway I'd be very skeptical of a unix dev who doesn't use c, just like I'd be skeptical of a webdev who doesn't use javascript/typescript. In part due to the reasons laid out in the article, but also that there is a big difference between a polyglot and a native, a polyglot may be able to make themselves understood, but a native understanding the culture, won't waste time designing something others in the culture have no context to understand, since they don't. First they would do research starting from a cultural touchstone
We live in a corporate culture where small shops have been psyoped by big tech to throw away their senior devs. Losing a senior is a tragedy that regularly blocks progress for years, this practice has become so normalized that nobody noticed the wider software industry has been stagnate for 2 decades. (part of that psyop were those tiktok ads)
So I had the initial call with the hiring person, and she posed a sort of dilemma: essentially, do you want to work with Haskell so you can ship frequently, or so you can create beautiful and elegant code that you can reason about?
And I said "both." The purity and power of Haskell appeals to me for deep, almost spiritual reasons, but I have encountered friction in my ability to be as effective with it as Python or Rust or TypeScript. Perhaps that's a personal deficiency, in which case I'd like to address it and be a better engineer. Perhaps it's a weakness of the language, in which case perhaps I can address it and move the world ahead in some small way.
She was not satisfied with that answer. I got the feeling that Haskell was a quirky choice, t3h penguin of doom holding a spork. All that really mattered at the end of the day was shipping, because after all, that was what paid people's salaries.
So I decided they were not a serious company.
But yeah, I tend to blame the same underlying phenomenon identified here: that ZIRP enabled companies to make the same mistakes that, previously, only a senior engineer could make. And I think ZIRP also contributed to a lot of title inflation, ensuring that senior engineers could make mistakes that, previously, only a junior engineer would make. Combine the two and we have companies picking languages based on vibes.
I love how recognizable Millennials can be online
Going out of your way to use functional languages at work seems a bit like deliberately using a fountain pen and purposefully writing all business communication in a handwritten beautiful cursive style - it's kind of a cute affectation rather than actually of benefit