TE
TechEcho
Home24h TopNewestBestAskShowJobs
GitHubTwitter
Home

TechEcho

A tech news platform built with Next.js, providing global tech news and discussions.

GitHubTwitter

Home

HomeNewestBestAskShowJobs

Resources

HackerNews APIOriginal HackerNewsNext.js

© 2025 TechEcho. All rights reserved.

Introducing Haskell to a Company

130 pointsby k0t0n0over 6 years ago

14 comments

timwaaghover 6 years ago
I like haskell. It reads like a math proof more than a cooking recipe. very elegant. I&#x27;m a math guy and i&#x27;d love to get back to it in my free time.<p>But i don&#x27;t think i could recommend it for the enterprise. not honestly. I tried to do a professional project in Haskell once. it was a good fit, since it was about parsing and generating configuration. However I was still new to it. the bottom line: it&#x27;s just not that great for newbies. since most people are going to be newbies at it, i could not recommend it at all. sometimes i think the language even goes over my head, and I&#x27;m supposed to be a pretty smart cookie.<p>OP makes &#x27;they are not going to be productive for months&#x27; sound like an obstacle to overcome. But if I tell management the honest story in advance and they will obviously not give me the greenlight.<p>But i suppose it is a language that&#x27;s a reasonably easy sell to management if you hype up the reliability stemming from the type system and skip over the downsides. managers dont know much about programming, but they hate incidents even more than developers. if you are honest, you have to tell them that in practise operational problems become more likely. I mean: ever tried to install ghc on a centos server behind a firewall?<p>If i have to recommend something now it would be python. because it&#x27;s easy and because i started using it for my personal stuff. i know lots of languages and that&#x27;s what i end up coming back to if i need to do stuff quickly.<p>OP doesn&#x27;t even mention the real advantage to introducing Haskell. Few colleagues will end up being good at this, so if a piece of critical software is written in Haskell and you are the only one who is a great Haskell engineer, it increases your negotiating power in the company. people won&#x27;t be able to get around you and it will be hard to deny a request for increased compensation.
评论 #18128654 未加载
评论 #18126673 未加载
评论 #18127028 未加载
评论 #18127059 未加载
评论 #18127092 未加载
godidover 6 years ago
If introducing a functional language was the aim (EDIT: that&#x27;s my reading of the motivation here) then, given the political context described, I can&#x27;t help but feel a better choice would have been F#.<p>It ticks, or half ticks, most of the points in the &quot;Benefits of Using Haskell&quot; section. Whilst also coming armed with C# interop and integration with the .NET ecosystem in which they were already invested.
评论 #18126797 未加载
评论 #18126586 未加载
评论 #18126657 未加载
评论 #18128488 未加载
评论 #18126715 未加载
incadenzaover 6 years ago
If I&#x27;m a manager, and somebody tells me that the development team wont be productive for months, I&#x27;d likely ask for some real metric indicating that Haskell solves &#x2F; eliminates classes of bugs untouched by other statically typed language.<p>At least some figure indicating that a Haskell app is less prone to bugs, etc.<p>Otherwise why not throw Typescript at it?
评论 #18127472 未加载
评论 #18127071 未加载
sv12lover 6 years ago
Please don&#x27;t do it, unless you know you are going to stay there (in the same project) for very long time and you know you can hire&#x2F;retain and train new people in Haskell.<p>I work for a large MNC bank and in my prev stint with a different department, for whatever reason I had to inherit a not-so-trivial Haskell code-base which gave me really hard time. Although it was in BAU mode, maintenance was difficult and hiring was even more difficult, I couldn&#x27;t even get help from other guys from different projects as they are all mostly Java guys, anyway I moved and I know the new manager is trying hard to convince his boses and business for getting fund to migrate it to Java.
评论 #18127346 未加载
评论 #18129938 未加载
评论 #18130899 未加载
Thaxllover 6 years ago
Yep let&#x27;s bring a language into a company where:<p>- it&#x27;s very hard to hire people<p>- lack of libraries<p>- lack of support &#x2F; community<p>- difficult learning curve for the language<p>Where I work some teams are dropping Scala because hiring Scala dev is hard, so imagine Haskell...
评论 #18127012 未加载
评论 #18127026 未加载
评论 #18127642 未加载
评论 #18127141 未加载
评论 #18126995 未加载
tayo42over 6 years ago
Somewhat related. How do you introduce any language?<p>How do you get past writing anything that isn&#x27;t java,c&#x2F;c++ and python without being a cowboy. In my short experience writing with any other language gets a somewhat negative response.
sdinsnover 6 years ago
&quot;How to trick a company into adopting a language that is difficult to hire for and has a small ecosystem&quot;<p>If FP is the goal, then Clojure and F# would be FAR better suited.
评论 #18127049 未加载
评论 #18127024 未加载
winkover 6 years ago
This was an interesting read but the &quot;some people didn&#x27;t like this and thus left&quot; left a sour taste.<p>I&#x27;m a big fan of team decisions for tooling and languages used and I&#x27;d personally have some problems if someone told me we&#x27;d be switching languages next month. Well, unless I already knew the language and&#x2F;or tried and liked it - but that&#x27;s just a random coincidence that I like using and learning a lot of languages.
评论 #18143980 未加载
bojoover 6 years ago
As the OP I am happy to see this post make its way to HN. I hope the contents have helped people&#x2F;teams willing to take something positive from it.
评论 #18129899 未加载
Caillebotteover 6 years ago
Haskell is fantastic. In fact, it is by far my favorite language. Strict types and functional programming come together in a perfect union. Monads are very similar to JavaScript callbacks, actually. After extensive use of the language, I finally decided to give it up for 2 reasons. 1) Stack and package management. Specifically, after building many websites with Haskell&#x27;s &quot;supposedly&quot; production ready framework, Yesod. After an upgrade, every site I made completely broke and there was almost no documentation on any version changes for this framework. Which leads me into complaint 2) Lack of good documentation. I&#x27;m not trying to take sides on the debate of self documenting code, however, when using higher level libraries, it is completely infeasible to rely on reading source code to determine what a function does. Haskell programmers believe that because of such strict typing, the code should speak for itself. Unfortunately, the real side effect of this is you end up coding trying to match up your types instead of focusing on your goal at hand.
thedataangelover 6 years ago
I&#x27;ve done something very similar, albeit with a more bottom-up approach. Pretty much everything he&#x27;s suggesting is good advice.
risto1over 6 years ago
Benefits of using haskell<p>- Reduce programmer cognitive overload<p>I don&#x27;t know how he could honestly say that. Haskell is much more cognitively demanding than other languages from my experience<p>A lot of the benefits he talks about he could get from F# or Ocaml, which are much simpler to learn and use for a team<p>That being said, I think haskell does have unique niche in industry: if the company does something very complex and cognitively demanding and requires the best and the brightest, using haskell can be a way of luring the best and brightest to work there
评论 #18152724 未加载
评论 #18128761 未加载
didipover 6 years ago
&quot;will not be productive for months&quot; is probably going to be instant deal breaker from about 98% managers.<p>Also, another big responsibility is teaching the rest of your coworkers. Classes, hackathons, documentations, etc.
alexandercrohdeover 6 years ago
Absurd.<p>The bulk of being a good-engineer is productivity, by reinventing the minimal amount possible. Highly efficient engineers are very accustomed to their tools (IDE, language, framework, database and DB drivers, webserver, deploy system, logging).<p>Forcing a team of engineers to use a new language, IDE, framework, particularly one that has minimal backing, is something I would consider a &quot;fireable&quot; offense (i.e. costing the company hundreds of thousands of dollars for personal amusement).<p>And also, if you did want to go functional, why not something used by <i>literally any professional company</i>? E.g. Twitter on scala.
评论 #18129418 未加载
评论 #18127430 未加载
评论 #18127490 未加载
评论 #18127553 未加载