Evidence is abundant if you look for it. FB, Microsoft, and Standard Chartered all have active internal haskell projects.
Evidence is abundant if you look for it. FB, Microsoft, and Standard Chartered all have active internal haskell projects.
Sad in the cases where it was a well done project. Frustrating when it was bursting at the seams.
Haskell advocate quits? Blame them for selfishly using a toy language (they're gone anyways - who is gonna disagree?), and save the day by spending a long time reimplementing an MVP subset of what they already did. Congrats - you're a hero! The end product has less functionality, but at least you didn't have to do something actually hard like learn Haskell and work with Someone Else's Code.
I've seen this happen multiple times. For shame - and yes people did get promotions for it. Pathetic.
But people act like Haskell can create a mess that is beyond what other languages can create. To the point where it isn't true that you can just..fix it by not complaining.
I agree that that is not accurate. I suspect it is more a reaction to the seeming claim that it is immune to that. For my part, my claim was meant to be that it needs an advocate. That is all.
I do not know why they other languages have in built advocacy across the board. Python, in particular, is seeing a ton of good will in ways I just don't understand.
But did the business need all of that functionality? Rewriting a subset of an application that is far more maintainable and cost effective in the long run can be a huge win. I am currently rebuilding an application full of intractable bugs and proprietary DSLs that was implemented in Salesforce with lots of bells and whistles that nobody wants or needs to be a simple Golang/Mysql app hosted on AWS. Yes, it is a tiny subset of the current functionality. But it solves the business case and will save millions of dollars per year in Salesforce fees while simultaneously making the user experience an order of magnitude simpler and allowing faster onboarding.
Engineers allowed to run free can often times spend an inordinate amount of time building things out that no one really asked for. Your Haskell backend was probably a thing of pure beauty from a programmers point of view. But an expensive liability to the business.
It was needed enough that the rewrite (which was slow) had to delay release and the legacy software had to be kept alive well past its sunset date (and plenty of people jetted by then.) Because the business had to keep the lights on!
The missing functionality at least was said to be missed by the business folks who made use of it. "If only we had feature X" definitely was said.
There wasn't anything too beautiful about the Haskell. It was mostly systems work. But incrementally evolving and improving would've definitely be cheaper long term than a rewrite .. but it does require people to learn Haskell, which seems to be a nonstarter for many. If people don't wanna, they don't wanna.
If you wanna have a supported component in some new language, you need higher-level commitment to keeping a reasonable size bench of developers who know that language at various skill levels. Of course unless you're a rather big company, maintaining hiring and training pipelines for multiple languages can be quite inefficient.
Outside leadership doesn't embrace Haskell (they don't know it), so they see it as a threat instead of as something to value. So then the Haskellers bleed (either due to the culture clash or due to the leadership intentionally hiring against Haskell. I saw a VPE literally say that "wanting to work in Haskell" as a motivation is a "red flag"!) and now you have a Haskell project but no Haskellers.
It wasn't Haskell's fault. But it'll take the blame by the boneheads.
Conversely, I may have just been unlucky. Would love to see studies and data.
Having an advocate for a program is a predictor. That advocate doesn't have to be a developer.
And note that I am not anti these languages. Just acking that there is plenty of experience on both isles.
The Haskell OGs of Don Stewart, Roman Leshchinsky, Neil Mitchell, Lennart Augustsson and more left Standard Chartered. Haskell is now more widely used in Standard Chartered than it was when they were there!
Source: Used to work there.
"A lot of companies use this <non mainstream language> in internal projects but since it's internal, we can't show you".
It reminds me of "I have a girlfriend but she goes to another school".
https://www.reddit.com/r/haskell/comments/phooqo/haskell_rol... https://www.reddit.com/r/haskell/comments/oee437/job_ad_seni... https://www.reddit.com/r/haskell/comments/nug8mw/haskell_job... https://www.reddit.com/r/haskell/comments/nn11sm/haskell_job... https://www.reddit.com/r/haskell/comments/n642ve/haskell_dev...
https://www.reddit.com/r/haskell/comments/8io3uk/job_work_on...
For the last 5 years I have 7 developers that have been working on internal applications in Haskell for an enterprise company that I am not able to show you due to legal reasons. We have a small open source library or two out there, but they are not even remotely representative of how deep our development iceberg really is.
I have zero problems with the technical capabilities of functional programming languages, but it's simply not a smart decision to use them in for profit businesses writing CRUD apps. It simply doesn't make economic sense. When you get to scale and need to write <insert specific modular service that does this one thing really well> then it starts to make more sense.
Heh. My pickup truck has more torque than my Ferrari, but my ferrari goes to 60 much quicker. "Power" requires context, especially when it comes to programming languages.
Whether you can find people to work on hard problems easily seems completely orthogonal to the language used in the same way that its also very hard to find top Java/C++ etc developers capable of handling non trivial work but we don't throw our hands up and say "Welp we'll just have to write it in python then because this problem is too hard".