Top all-time · #2257
The Erlangelist
Personal blog · theerlangelist.comprogrammingsystems
The Erlangelist is a personal blog at theerlangelist.com about programming and systems. Since 2012, 36 different Hacker News readers have linked it 56 times, most often “The Erlangelist”. The last post was in 2020, but the archive is still widely read.
Most-linked posts?
- The Erlangelist4 people · 4 mentions · first linked 2016-05-31
- To spawn, or not to spawn? (2017)3 people · 5 mentions · first linked 2018-09-22
- The Erlangelist – To spawn, or not to spawn?3 people · 4 mentions · first linked 2017-07-14
- /3 people · 3 mentions · first linked 2020-02-08
- Reducing the maximum latency of a bound buffer in Erlang3 people · 3 mentions · first linked 2016-12-19
- Why Elixir (2014)3 people · 3 mentions · first linked 2016-07-11
- Why Elixir?3 people · 3 mentions · first linked 2014-01-21
- Phoenix is modular2 people · 3 mentions · first linked 2016-03-11
- Why Elixir (2014)2 people · 3 mentions · first linked 2019-01-15
- Operating Systems via Development2 people · 2 mentions · first linked 2020-06-24
What Hacker News says?
Very good articles about Elixir and Erlang https://www.theerlangelist.com/
Comment linking /
on “Ask HN: What are good solo developer blogs that you enjoy reading?”Submitted Reducing the maximum latency of a bound buffer in Erlang as a story · 165 points
HN discussionIn Elixir, |> does not flip arguments. It lets you chain together multiple functions by inserting the result of the previous function as the first argument of the following function. Here's an example from http://www.theerlangelist.com/2014/01/why-elixir.html The following code computes the sum of squares of all positive numbers of a list: list |> Enum.filter(&(&1 > 0)) |> Enum.map(&(&1 * &1)) |> Enum.reduce(0, &(&1…
Comment linking /2014/01/why-elixir.html
on “Streem – a new programming language from Matz”Submitted Why Elixir (2014) as a story · 150 points
HN discussion> Performance comes second. I want to state that performance is too generalize here. BEAM VM also have a goal of low latency which can be consider as performance. I'm not entirely sure if GO is aiming for that or not. I would never do any numerical stuff on BEAM though, it's very slow. This article is a bit dated but is interesting between Go and Erlang: https://www.theerlangelist.com/article/reducing_maximum_late...
Comment linking /article/reducing_maximum_latency
on “Achieving 100k connections per second with Elixir”Submitted Why Elixir (2014) as a story · 124 points
HN discussionIt is possible to start external processes from BEAM and interact with them. I've blogged a bit about it at http://theerlangelist.com/article/outside_elixir You can also write NIFs (native implemented functions) which run in BEAM process (see http://andrealeopardi.com/posts/using-c-from-elixir-with-nif... ). The latter option should be the last resort though, because it can violate safety guarantees of BEAM, in part…
Comment linking /article/outside_elixir
on “Comparing Elixir and Go”Submitted The Erlangelist – Low Latency in Phoenix as a story · 5 points
HN discussionJulia Evans' blog is one of my favorites! It was a big inspiration for starting my own blog ( https://andythemoron.com ). I also love High Scalability and Dan Luu's blog which have been mentioned in other comments. I "follow" several which are mostly defunct, but in terms of blogs that still feature active updates: Evan Klitze's blog: lots of topics around Linux, C++, etc. https://eklitzke.org/ Sutter's Mill: lots o…
Comment linking /
on “Ask HN: What programming blogs do you follow?”Submitted Operating Systems via Development as a story · 3 points
HN discussionThe functional core can return a symbolic description of actions to take, which the shell executes, a bit like a simple interpreter. This is a good example: https://www.theerlangelist.com/article/spawn_or_not (Note the context is Elixir, so it’s talking about lightweight processes, not OS processes. It explains how to keep that stateful / effectful code very simple, and have all the real logic be pure functional cod…
Comment linking /article/spawn_or_not
on “Functional core, imperative shell (2012)”Submitted To spawn, or not to spawn? (2017) as a story · 2 points
HN discussion> functional-Ruby. It is not. I understand why people from Ruby really what it to be "like a Ruby", but it is a completely different language. People confuse this by not understanding the erlang runtime and end up writing really poor code. This should be one of first articles new people to elixir should read. http://theerlangelist.com/article/spawn_or_not
Comment linking /article/spawn_or_not
on “Elixir School”Submitted The Erlangelist – To spawn, or not to spawn? as a story · 2 points
HN discussionProgramming languages, being technologies, are subject to the Lindy effect ( https://en.wikipedia.org/wiki/Lindy_effect ). This means that the younger a language is, the lower its life expectancy. This is why the neomania in JavaScript framework land is so chaotic. Even if a better framework emerges and takes off in popularity over a few months, it's unlikely to last in the mainstream for another year. When I'm choo…
Comment linking /
on “Why the Elixir language has great potential”Submitted (2014) the Erlangelist – Why Elixir as a story · 2 points
HN discussionEDIT: Paste this hacky snippet into your browser's console to save all of the links into your clipboard: (() => { let result = [...document.querySelectorAll('td a')] .map((link) => link && !link.href.includes('ycombinator') && !link.href.includes('javascript:void') ? link.href : '' ) .filter(Boolean); result = [...new Set(result)]; result.sort(); copy(result.join('\n\n')); })(); Just to help, here's a compiled-list…
Comment linking /
on “Ask HN: Great Blogs by Programmers”Submitted Reducing the maximum latency of a bound buffer as a story · 2 points
HN discussionIf you're interested in Erlang/Elixir, https://www.theerlangelist.com/
Comment linking /
on “Ask HN: Great Blogs by Programmers”Submitted Phoenix is modular as a story · 2 points
HN discussionOr you could just step over Node, and grab on to Elixir[1] Why Elixir - http://www.theerlangelist.com/2014/01/why-elixir.html [1] http://elixir-lang.org/
Comment linking /2014/01/why-elixir.html
on “Node.js, a popular tool for building modern internet services, has split in two”Submitted CONCURRENCY IN a LONG POLLING COMET SERVER as a story · 2 points
HN discussion> ..but things like macros in Ecto.... Well, The whole language itself is built on macros. The following series of articles certainly helped me stop worrying and love the macros.. https://www.theerlangelist.com/article/macros_1 Some interesting insights from the article: "Elixir itself is heavily powered by macros. Many constructs, such as defmodule, def, if, unless, and even defmacro[1] are actually macros...." [1]…
Comment linking /article/macros_1
on “Embedding Python in Elixir, it's fine”Submitted Announcing Elixir in Action as a story · 2 points
HN discussionI've only dabbled with both, but the reasons often given is that (apart from surface syntax) the advantages of Elixir over erlang is a powerful macro system, a more cohesive standard library (with some nice things like the pipeline operator), and some very nice tooling (mix is great). With all that being said, erlang is a great language as well, so just pick whatever you like the most. Here is a short article that o…
Comment linking /article/why_elixir
on “Elixir 1.3.1 released”Submitted Immutable programming, OO style (in Elixir) as a story · 2 points
HN discussionAlong the same lines, Saša Jurić wrong Erlang before picking up Elixir, and wrote about that here: https://www.theerlangelist.com/article/why_elixir Also, Devin Torres, author of Poolboy, wrote https://devinus.io/the-excitement-of-elixir/ and https://devinus.io/elixir-its-not-about-syntax/
Comment linking /article/why_elixir
on “Elixir v1.8 released”Submitted Working with immutable data as a story · 2 points
HN discussionI'm quite sure that would be a grossly inefficient approach. Sending a message is expensive in Erlang, less so than in other languages, but it's still very large compared to a few math operations. It's a common mistake to use processes to represent objects [1]. The recent article from Discord [2] also mentioned "Sending messages between Erlang processes was not as cheap as we expected, and the reduction cost — Erlan…
Comment linking /article/spawn_or_not
on “Yanni – An artificial neural network for Erlang”Submitted Concurrency in a long polling (Erlang) comet server as a story · 2 points
HN discussion