AstonJ

AstonJ

[Erlang] The BEAM Book (Released under Creative Commons) (Free)

A short and personal history of the book

I, Erik Stenman (Happi), started writing this book back in 2013. At first I was thinking of self publishing the book on my blog, but since English isn’t my native language I felt I needed help by a good editor.

I managed to get a deal with O’Reilly and started converting my outline to their build process. My original plan was for a very long and thorough book, which the editor felt would get few readers. I started cutting my content and tried to write more of a tutorial than a manual. Unfortunately progress was slow and pre-sales was even slower and the publisher cancelled the book in 2015.

I managed to get a new deal with Pragmatic and started converting my content to their build system and rewriting the book according to the more pragmatic style of the new publisher, cutting down the content even further. The series editor also wanted me to fit the book into the Elixir series and I tried to add more Elixir examples. I did not really manage to make it into an Elixir book and also my progress was still slow, which led to another cancellation of the book early 2017.

Now I had three repositories with three different book building systems with three different outlines of the book. In the end I more or less went back to the original longer book outline and the original AsciiDoc build system. I started a new repository in a private Github account and started pulling in content from the three different version.

Then on April 7 2017 I opened the repository to the public to share it with some students. I didn’t think anyone else would notice and I was not planning to release the book for real yet since the repo currently just contains bits and pieces from the different versions of the book.

There was more interest than I had expected though and fortunately also several who where willing to contribute. From now on the book is a collaborative effort to document the Erlang RunTime System Erts, and it is released with a creative commons license (see above).

Watch this space for further news and to see the whole book take shape.

– Erik Stenman aka Happi

Most Liked

gtcode

gtcode

Updates on The BEAM Book today:

HN discussion today, including general comments regarding BEAM vs. modern alternatives:

12
Post #3
juhalehtonen

juhalehtonen

Just got my copy in the mail as well!

The online version of the book has been such a fantastic resource whenever specific questions about the BEAM runtime internals have come up. This physical copy will definitely be on my summer reading list :023:

code-shoily

code-shoily

Got the hard copy, quite good print quality for the price. I am up for a book club on this one if anyone else wants to join. Can’t thank Erik enough to have this gem published.

meraj_enigma

meraj_enigma

Just finished reading this one of a kind book which is a valuable addition to Erlang and BEAM community.
I typed in most of the code from the book in case anyone finds it useful - erlang_playground/theBeamBook at main · imeraj/erlang_playground · GitHub

popoinikov

popoinikov

Fine news. I very much waited for this book. Thank you so much!

Where Next?

Popular in Books Top

PragmaticBookshelf
Kevin Hoffman edited by Kelly Talbot @KellyTalbot Reality is event-sourced; your mind processes sight, sound, taste, smell, and touch to...
New
meraj_enigma
New book from Packt publication that goes into teaching how to write a web framework using Elixir. About this book Elixir’s functional...
New
AstonJ
by Saša Jurić Elixir in Action teaches you to apply the new Elixir programming language to practical problems associated with scalabilit...
New
AstonJ
by Fred Hebert This book intends to be a little guide about how to be the Erlang medic in a time of war. It is first and foremost a col...
New
AstonJ
by Wolfgang Loder Learn and understand Erlang and Elixir and develop a working knowledge of the concepts of functional programming that...
New
AstonJ
By Simon St. Laurent If you’re new to Erlang, its functional style can seem difficult, but with help from this hands-on introduction, y...
New
kokolegorille
by Ulisses Almeida Elixir’s straightforward syntax and this guided tour give you a clean, simple path to learn modern functional program...
New
peerreynders
Don’t forget you can get 35% off the ebook using the code: devtalk.com :023: Note: Check out this thread for help running code in lat...
New
AstonJ
A short and personal history of the book I, Erik Stenman (Happi), started writing this book back in 2013. At first I was thinking of sel...
New
AstonJ
by by Fred Hebert Erlang is the language of choice for programmers who want to write robust, concurrent applications, but its strange ...
New

Other popular topics Top

9mm
I am constructing a JSON object (map) and I need to conditionally set a field. I’m trying to write proper elixir-way code… and I’m at a l...
New
Patoshizzle
After calling mix ecto.create I get this error: 17:00:32.162 [error] GenServer #PID<0.412.0> terminating ** (Postgrex.Error) FATAL...
New
fireproofsocks
I’m working on defining a simple Ecto schema for a table (in PostGres), but I don’t see where I can define a column as NOT NULL. Conside...
New
gshaw
What is the idiomatic way of matching for not nil in Elixir? E.g., First way: defp halt_if_not_signed_in(conn, signed_in_account) when...
New
yawaramin
In the Dialyzer docs ( http://erlang.org/doc/man/dialyzer.html#requesting-or-suppressing-warnings-in-source-files ), there is a way to tu...
New
JorisKok
I have a server on AWS, and was running a load test using artillery. When looking at the Phoenix dashboard I see the Ports going to 100% ...
New
aalberti333
As the title describes, I’m trying to run Enum.map() over a list of key/value pairs, where the value is a map. My data looks like this: ...
New
malloryerik
Hi, this is for people who, like me, have had some friction using .html.heex templates in VSCode. The solution seems to be, in a hyphena...
New
script
If I have a string “1000 cfu/ml” . I want to remove the characters and / and space . So the string is like this "1000" What is the ...
New
Fl4m3Ph03n1x
About me? ( if you have nothing better to do than reading about some random guy in the internet :stuck_out_tongue: ) Hello all, this is ...
New

We're in Beta

About us Mission Statement