A
Alvaro Videla
videlalvaro.github.io · Personal blog · on HN since 2013
Alvaro Videla, a developer who works with Erlang and RabbitMQ, writes about distributed systems, programming history and number theory.
What HN saysHN links it for a distributed systems post arguing against reading piles of papers, and a post on a handwritten Knuth note with Erlang-like notation.
16HN people shared it
3linked it in comments
29stories submitted
570story points
10 years agolast shared
2013people per year2026
Most-shared posts
- 1What We Talk About When We Talk About Distributed Systems6 people · 207 points · first shared 2015 · 30 comments on HN
- 2Harmful Gotos, Premature Optimizations, and Programming Myths6 people · 169 points · first shared 2015 · 73 comments on HN
- 3Java ThreadLocalRandom Explained2 people · 6 points · first shared 2016 · discussion on HN
- 4A Programmer's Role2 people · 1 points · first shared 2014 · discussion on HN
- 5Donald Knuth used an Erlang-like notation1 people · 149 points · first shared 2016 · 93 comments on HN
- 6Why you should learn Erlang1 people · 15 points · first shared 2014 · discussion on HN
- 7Folding Erlang Records1 people · 4 points · first shared 2015 · discussion on HN
- 8The Power Algorithm1 people · 3 points · first shared 2014 · discussion on HN
- 9Readings in Number Theory and Computing1 people · 3 points · first shared 2014 · discussion on HN
- 10Using Elixir to write RabbitMQ plugins1 people · 2 points · first shared 2013 · discussion on HN
- 11Testing Java Libraries from ScalaCheck1 people · 2 points · first shared 2016 · discussion on HN
- 12Failure modes in distributed systems1 people · 2 points · first shared 2013 · discussion on HN
- 13Things I learnt last year1 people · 2 points · first shared 2014 · discussion on HN
- 14On the speed of Algorithms and Faster Hardware1 people · 1 points · first shared 2014 · discussion on HN
- 15Shift-And Algorithm Visualization1 people · 1 points · first shared 2014 · discussion on HN
What HN people wrote when they linked it
davidw · 2016-05-13
> But I’ve come to thinking that recommending a ton of theoretical papers is often precisely the wrong way to go about learning distributed systems theory (unless you are in a PhD program). Papers are usually deep, usually complex, and require both serious study, and usually significant experience to glean their important contributions and to place them in context. What good is requiring that level of expertise of engineers?
Bingo! We need some "O'Reilly style" distributed systems material. Most of us are not going to be designing new algorithms, but plugging in various pieces. Having a generic understanding of those pieces and where they work well, and when to actually go to the research are kind of missing right now in that world.
Some other links that people might find interesting:
http://videlalvaro.github.io/2015/12/learning-about-distributed-system…
http://book.mixu.net/distsys/single-page.html
http://dancres.github.io/Pages/
louthy · 2014-05-03
I'm a relative newbie when it comes to Haskell; I've found it's best to just get stuck in - pick a project and just go for it. Especially if you're doing real-world stuff, because you'll just get sick to your back teeth of yet another fibonacci tutorial. Once you get stuck-in you'll find yourself on the Hackage docs site a lot, click on the Source link on the top right of every page, you'll find gold in there.
A real world thing I did this week (which unfortunately is proprietary so I can't share), was a distributed configuration system for our cluster. It uses the RabbitMQ library[1][2] and Acid-state library[3] to have a per-node config-DB and uses RabbitMQ's guarantees for delivery of updates to the nodes. Messages are serialised using Aeson[4], the Haskell JSON library. I implemented a vector-clock versioning system on top of the Acid-state store to allow the clients to do conflict resolution. It really was a joy to write (around 350 lines of code). The C# client less so, 1000s of lines of boilerplate.
I think there's something really impressive about haskell; I tend to have significantly more trust in the code I write because mostly I know the edge cases don't exist. 9 times out of 10 if your code compiles it will work. Although be prepared for the compiler to hate you when you first start. The beatings are worth it though.
There's some basic code samples in the links:
[1] https://github.com/hreinhardt/amqp
[2]…
dang · 2016-09-24
Anybody know whose handwritten note appears at the top? The URL includes "Knuth" and "Baker" and the initials at the top look like "CLB".
(Also, we changed the URL from http://videlalvaro.github.io/2014/09/a-programmers-role.html to the original source, in keeping with the HN guidelines, which call for original sources. In this case the submitted article does add glosses, but not enough to be more substantive than the original. Historical material is particularly welcome on HN, especially when it hasn't appeared before, and this piece doesn't seem to have.)