
Stuff Goes Bad: Erlang in Anger - mononcqc
http://engineering.heroku.com/blogs/2014-09-17-erlang-in-anger
======
davidw
For those who don't know, this is by the author of:

[http://learnyousomeerlang.com/](http://learnyousomeerlang.com/)

Which has the same clear, detailed and very approachable writing style.

Erlang really needed a book like this that goes into some of what happens with
real, non-toy applications. Hopefully he'll continue to add to it!

For what it's worth, LYSE is one of the few paper books I've purchased in
recent years - it's really good, and very clearly a labor of love.

~~~
qohen
_Hopefully he 'll continue to add to it!_

The PDF has a version # in the file name -- text.v1.0.1.pdf -- so your hope
may well not be in vain :-)

~~~
mononcqc
This should have been updated to text.v1.0.2.pdf roughly 8 hours ago. I fixed
issues with the running header, page numbering, and a few content issues
pointed out to me.

------
rdtsc
Great work!

BTW Fred is also the author of Learn You Some Erlang For Great Good:

[http://learnyousomeerlang.com/](http://learnyousomeerlang.com/)

As he put it, a lot of these tips and tricks end up preserved in local company
folk tradition and eventually get lost. This way the whole community gets to
benefit. Many thanks, Fred!

Some of these things I've seen on Erlang's mailing list. Some saw in Erlang
Factory talks, some are mentioned on #erlang channel. But having them in one
place is quite nice.

Some more detailed things I like:

* There are a good number of Erlang resources targeting beginners. This one targets advanced users as well.

* Focused on maintenance and debugging. A successful product will always have that aspect. It is often overlooked.

* Nice semantic layout of chapters -- explanation of how things work, then hands-on sections/example sessions, then exercises and open ended questions for further thinking and discussing.

------
chollida1
Wow, great book. Worth reading alone for chapters 7-9 which deal with
debugging running process.

I hope they get fleshed out a bit more.

I wish more technical books would dive into the inner workings of the language
like this. [https://realworldocaml.org/](https://realworldocaml.org/) was the
only other book I've read in the past few years that has done this.

I might be the exception in the book buying crowd but I don't want a book to
teach me the syntax, I want to know how to debug my process, what tools are
available and which ones the experts use.

------
tieTYT
For those that want to get started, I've been reading the Erlang Thesis^1.
It's a really good read. I recommend it even if you don't plan on learning
Erlang because it will teach you why it's difficult to build reliable systems
when processes can share mutable state.

1:
[http://www.erlang.org/download/armstrong_thesis_2003.pdf](http://www.erlang.org/download/armstrong_thesis_2003.pdf)

------
rorydh
For anyone who's interested in Erlang (or functional programming in general)
but thinks it looks a bit daunting, check out Elixir.

It's a new language which has just turned 1.0, has Ruby/Python like syntax and
runs on the Erlang OTP VM (kind of like how clojure runs on the JVM). This
gives you all of the amazing concurrent power which has helped the Heroku guys
here.

Check it out!: [http://elixir-lang.org/](http://elixir-lang.org/)

~~~
mononcqc
For anyone who's interested in Elixir (or functional programming in general)
but thinks it looks a bit daunting, check out Erlang.

It's a stable production language which has just turned 17.3, has extensive
resources, and runs on its own VM (kind of like how Java runs on the JVM).
This gives you all of the amazing concurrent power which has helped the Heroku
guys here.

Check it out!: [http://erlang.org/](http://erlang.org/)

~~~
jlouis
I love a good troll :)

I'd say: evaluate both and pick what suits you.

~~~
MCRed
But be aware that all of Erlang's libraries and support ecosystem are
available to you when you use Elixir.

But all of Elixir's support and ecosystem are available to you from Erlang,
only if you install elixir.

------
MetaCosm
Wow -- I consider this "The Missing Manual" for Erlang production developers.
A lot of this you learn over time -- as you work on production systems, but
this will cut down the pain significantly.

Nice to see another boon to the community come from Fred.

------
jflatow
Wow, Fred has been providing a massive service to the community. It's great to
see someone continually producing high quality, open source, technical prose
(for Erlang).

------
hackerboos
Joe Armstrong approves:

[https://twitter.com/joeerl/status/512575633122021377](https://twitter.com/joeerl/status/512575633122021377)

------
chillericed
This is awesome, I can't wait for this to go into print, so I can pay you for
your work! But in the meantime, many thanks for writing this.

~~~
mononcqc
It is pretty much never going to be printed. The book has to remain available
for free and never for profit according to the deal I've taken internally with
Heroku to work on it.

The only way it gets printed is if Heroku decides it feels like allocating
time and resources getting this printed by working with a publisher, which is
way outside our usual line of work there.

I don't see the incentive for the corporation to do this, financially or
otherwise.

~~~
evgen
Any chance it could be made available in HTML format? Converting to epub is
much easier that way...

~~~
mononcqc
I tried tools like pandoc and they promptly choked on the latex. Every code
sample that had an _ was problematic, and that issue likely didn't come alone.

~~~
FraaJad
is it possible to put the source files on gitub (i ask because the book is CC
licensed. I understand if you are not keen on that idea.), so that i can take
a gander at converting it using pandoc?

~~~
mononcqc
I'll possibly do it. I have to think.

The issues I can see with putting the source itself open is receiving pull
reqs, which quickly turn into an issue of copyrights and form-waiving and all
kind of stuff I'm not comfortable running around with.

I have a friend who's currently playing with making the conversion work with
far more determination than I have, though.

------
user_name2
A great testimonial

------
eddd
Can i buy mobi version somewhere?

~~~
mononcqc
Nope. Not for sale. Always for free.

I will be looking into whether it's possible to do decent conversions from
LaTeX -> [epub, mobi] later this week, and then figure out how to make that
available, _if_ it goes well.

~~~
FraaJad
pandoc: [http://johnmacfarlane.net/pandoc/](http://johnmacfarlane.net/pandoc/)

See example: [https://github.com/karlseguin/the-little-redis-
book](https://github.com/karlseguin/the-little-redis-book) [The little Redis
book, written entirely using pandoc]

~~~
mononcqc
Pandoc exploded on the first code sample with an underscore it met. Too bad.

------
darkof
Like! :)

------
tilt_error
Impressing.

