Hacker News new | ask | show | jobs
by dasil003 3654 days ago
I understand your pet peeve, really I do, but if you look at the contrapositive statement I think you will find it hard to argue:

People who are just looking to get into software engineering for the money are unlikely to learn Haskell.

They will almost certainly learn Java, PHP, Ruby, Node or maybe even Go, but not Haskell. And looking around SV these days, there is a huge number of people around that are only in it for the money.

Not that that is a panacea... my instinct is you might end up with a very strong technical team, but one that might be more likely to miss the forest for the trees when it comes to building a successful business.

2 comments

There are many attempts to justify the practical use of Haskell. However why does the Haskell community not have just proven the superiority of Haskell by an impressing showcase of working equivalents of Eclipse, Open Office, full-blown browsers, 3D games, and things like that?

AFAIK there is _nothing_ comparable in the Haskell world!

I know things like Leksah and FP-Complete's online editor but these things are far from being comparable to power IDEs like Eclipse. Haskell, as it is today, is a nice language for study purposes and academic use but it is barely used in the industry. Haskell is by far not so practical as the Haskell community wants it to be.

People have no right to complain without suggesting solutions. So do I. My suggestion: The Haskell community should develop languages based on Haskell which are much more practical, and which use all the nice power features of Haskell - the purity of functional programming for instance. Haskell is too cool to be wasted for academic use. It could be a very nice backend for really practical languages. The first promising attempts are there - IDRIS for instance.

It kind of seems like you're grinding an axe that has nothing to do with my comment. But FWIW, I agree, but I also respect that Haskell is not designed to be a "successful" industry language. I'd love better tooling for it, but I also don't think it's a do-or-die kind of situation. Haskell has a fairly stable critical mass and a slow and steady upwards trajectory.
> They will almost certainly learn Java, PHP, Ruby, Node or maybe even Go, but not Haskell. And looking around SV these days, there is a huge number of people around that are only in it for the money.

I think you're confusing orthogonal issues. Only writing code because it pays the bills really says nothing about how smart or motivated a person is. Is there a rule somewhere that dumb people can't enjoy programming and learn Haskell? On the other hand I know a few very smart people who only write code because it pays their bills.

I'm not confusing anything, I just disagree with you.

It's not about smart vs dumb, it's about intrinsic versus extrinsic motivation. Being smart is an advantage, but it is meaningless without a massive amount of practice. There's nothing about programming that a 100 IQ person can't become competent at it.

Programming is first and foremost, an exercise in frustration. It is exacting and unforgiving in a way that few human activities are. It's somewhat unnatural. In order to excel at it I believe you need to feel an intrinsic thrill when solving a problem that surpasses all the frustration leading up that point, and you need to seek this out over and over and over.

Note that this says nothing about whether you only work for money, or even what brought you to the field. However, if you do not feel this thrill, then you will naturally gravitate towards a job where you can execute rote incantations again and again without having to face new problems. I'm sure there are people who love programming and persist in it despite being terrible at it, but I guarantee you they are far outnumbered by the hordes of wannabe tech millionaires flooding into the Bay Area as we speak, completely oblivious to how much they will actually hate and subsequently suck at programming—and those people ain't learning Haskell.

> Programming is first and foremost, an exercise in frustration. It is exacting and unforgiving in a way that few human activities are. It's somewhat unnatural. In order to excel at it I believe you need to feel an intrinsic thrill when solving a problem that surpasses all the frustration leading up that point, and you need to seek this out over and over and over.

This is more than two tweets long. How is it supposed to become the viral quote it deserves to be?

> Only writing code because it pays the bills really says nothing about how smart or motivated a person is.

No, but actually bothering to learn something that isn't what is being shoveled through most major outlets is at least somewhat correlated with motivation.

After further thought, it seems like having a reputation as difficult to hire for and a reputation for attracting smart people would be two very good reasons for people "only in it for money" to learn Haskell.
Not sure why you were downvoted here, I agree with you on this. The only thing is that there aren't a lot of Haskell jobs out there, and that is a far stronger signal to people looking to jump into the software industry than the nuanced opinions of industry veterans in forums like HN.
That is part of why these kinds of signals aren't stable over time.
> Is there a rule somewhere that dumb people can't enjoy programming and learn Haskell?

No, there's no such rule. Can you possibly imagine that there might be any factors at play that affect the observed intelligence of Haskell programmers besides "a rule"?