The Road to Running Haskell at Facebook Scale [video]
youtube.com
youtube.com
If anyone is looking for a starting-point: I stumbled upon a great book: http://haskellbook.com/ It's still early-access, but the biggest part is done and it's already at 1000+ pages.
(I'm not affiliated with this project in any way)
BTW, the stackage project have resolved a big problem (Cabel hell) in Haskell ecosystem, and I start to use haskell again.
That would be great - do you have any writing about your experience anywhere?
Someone a few days ago made a comment that Haskell posts on HN frequently get many upvotes but fewer comments, and that this symptom is indicative of lots of people who are following the language but haven't had a chance to dive in. I think hearing more success stories about putting it into prod would go a long way towards allaying fears from earlier days. Seems like the HN community would benefit from hearing your story.
https://www.fpcomplete.com/business/blog/utilizing-haskell-f...
There's also a more in depth version on the commercial haskell mailing list (I can't find it from work I'm afraid).
Feel free to fire any more questions at me :-)
https://groups.google.com/forum/#!searchin/commercialhaskell...
Ultimately, we can use lots of different languages in different roles. People have been shipping Haskell code in production for years. The runtime and compiler have been up to snuff for some time, and honestly the build tools were not in any worse of a place than Go's are right now.
The decision if something is production-ready for your shop is a matter of your personal (and/or organizational) commitment to that technical platform. You do not need the blessing of a big company to use a tool. Perpetuating this idea only makes it harder for people to try new tools. And so long as Haskell continues to be flexible and easy to extend, it'll still be useful to academia (hence the 100+ language extensions still available).
However, I think the comment touches on a truth: public perception matters in language decisions. A tool which is perceived to only be useful to academics and tinkerers often times won't make it onto the short list, even when it merits being there. Seeing that Facebook can use this tool effectively at scale might mitigate the early adoption risk that many feel, and let them concentrate on evaluating Haskell for how it fits the problem. Without the validation of seeing it used for large, real-world systems, it might never make it that far.
At one point, I found myself writing a heap profiler, since the tools available where inadequate. If your company doesn't have the ability or will to fix issues deep within the runtime of the shiny new system you're using, I'd be cautious about using a shiny new tool in production. I'm not necessarily saying "Don't do it", but you do need to think long and hard about how you'd handle a tricky bug in your tool.
And if it's a leverage factor for a small time, the math is almost always in favor of the more pointed tool.