Work in progress: 82,651 of 181,233 sites checked so far, more every week · updated 2 Nov 2026Missing a blog? Tell us

Top all-time · #730

N

Nathan Marz

Personal blog · nathanmarz.com/blog · on HN as nathanmarzprogrammingsystems

Nathan Marz writes thoughts from the red planet, a personal blog at nathanmarz.com about programming and systems. Since 2010, 87 different Hacker News readers have linked it 122 times, most often “How to beat the CAP theorem”. The last post was in 2021, but the archive is still widely read.

Visit the blog
122mentions?
7recommend?
87HN people?
2010–2025first – last linked?
Links on Hacker News per year · peak 29 in 2010

Sometimes recommended · 7 of 38 sampled comments recommend it?

Why HN links it

HN readers link Nathan Marz's blog for his writing on Storm and its history, distributed systems and the CAP theorem, software engineering principles, and the productivity cost of open offices.

Recommended for · 7 comments
Called great and interesting to read; a good job relating a principle to coding; unique insights; perfect description.

Summarised by Claude from a sample of 38 HN comments that link here. Each comment is marked recommending, critical or neutral (citing without judging); how this works.

The author on HN?

nathanmarz · 2,568 karma · member since 2009

Founder of Red Planet Labs Twitter: @nathanmarz Blog: http://nathanmarz.com [ my public key: https://keybase.io/nathanmarz; my proof: https://keybase.io/nathanmarz/sigs/GQL-L253FL3Kx_QbCQ601_zpXzu9-xWPmKOalUA5Ijc ]

From their public HN profile, which links to this site.

Most-linked posts?

  1. How to beat the CAP theorem
    15 people · 15 mentions · first linked 2011-10-13
  2. Suffering-oriented programming
    14 people · 15 mentions · first linked 2012-02-06
  3. History of Apache Storm and Lessons Learned
    6 people · 6 mentions · first linked 2014-10-06
  4. Specter – Clojure API for immutable programming (2017)
    6 people · 6 mentions · first linked 2017-03-01
  5. The inexplicable rise of open floor plans in tech companies
    5 people · 11 mentions · first linked 2014-02-24
  6. Functional-navigational programming in Clojure with Specter
    4 people · 4 mentions · first linked 2015-09-28
  7. How becoming a pilot made me a better programmer
    3 people · 3 mentions · first linked 2016-07-13
  8. The mathematics behind Hadoop-based systems
    3 people · 3 mentions · first linked 2011-03-28
  9. Mimi Silbert and the Delancey Street Foundation (2010)
    3 people · 3 mentions · first linked 2010-08-07
  10. /blog/introducing-cascalog-a-clojure-based-query-language-for-hado.html
    3 people · 3 mentions · first linked 2010-11-03

What Hacker News says?

  1. ignoramous · 2016-03-23Recommends
    Reminds me of Nathan Marz's great piece about lessons learnt from creating, and maintaining Storm as OSS: http://nathanmarz.com/blog/history-of-apache-storm-and-lesso...

    Comment linking /blog/history-of-apache-storm-and-lessons-learned.html

    on “D'Oh My Zsh – How I unexpectedly built a monster of an open source project”
  2. Submitted Suffering-oriented programming as a story · 301 points

    HN discussion
  3. "Datomic is not an update-in-place system. All data is retained by default." I'm becoming more and more convinced that your canonical data store should be append-only whenever possible (see eg [1][2] for detailed arguments). It's nice to see first class support for this. [1] http://nathanmarz.com/blog/how-to-beat-the-cap-theorem.html [2] http://martinfowler.com/articles/lmax.html EDIT: Just read through the whitepap…

    Comment linking /blog/how-to-beat-the-cap-theorem.html

    on “Rich Hickey's new project: datomic.com”
  4. Submitted The inexplicable rise of open floor plans in tech companies as a story · 252 points

    HN discussion
  5. "One technique for making software more robust is to minimize what your software depends on – the less that can go wrong, the less that will go wrong. Minimizing dependencies is more nuanced than just not depending on System X or System Y, but also includes minimizing dependencies on features of systems you are using." From http://nathanmarz.com/blog/principles-of-software-engineerin...

    Comment linking /blog/principles-of-software-engineering-part-1.html

    on “NIH is cheaper than the wrong dependency”
  6. Submitted The time I hacked my high school as a story · 224 points

    HN discussion
  7. > the reality is that at small startups they simply cannot afford that kind of office space It's funny startups would feel that way yet also believe they must be located in/around San Francisco. If cost was really that big of a concern maybe they should choose to setup shop in a more affordable city (they'd also save money on salaries). But even in San Francisco the additional costs wouldn't be that much. There was…

    Comment linking /blog/the-inexplicable-rise-of-open-floor-plans-in-tech-companies.html

    on “Just Wear Headphones”
  8. Submitted You should blog even if you have no readers as a story · 207 points

    HN discussion
  9. Nathan Marz (of Apache Storm fame) also wrote about this topic recently: "Now, I don't want to comment on the effectiveness of open floor plans for fields other than my own. But for software development, this is the single best way to sabotage the productivity of your entire engineering team ." http://nathanmarz.com/blog/the-inexplicable-rise-of-open-flo...

    Comment linking /blog/the-inexplicable-rise-of-open-floor-plans-in-tech-companies.html

    on “Google got it wrong. The open-office trend is destroying the workplace”
  10. Submitted You should blog even if you have no readers as a story · 198 points

    HN discussion
  11. > I've seen the phrase "all the research" thrown around quite a lot in this thread. Would you mind linking to a few studies you refer to? There's a good New Yorker article[1] from last year that references a number of studies. This blog post[2] links to a couple others and addresses costs/alternatives. Also, "a study of over 40,000 survey responses collected over a decade has found that the benefits for workers are…

    Comment linking /blog/the-inexplicable-rise-of-open-floor-plans-in-tech-companies.html

    on ““Today we moved into our new Facebook building””
  12. Submitted My experience as the first employee of a Y Combinator startup as a story · 192 points

    HN discussion
  13. swah · 2015-03-04Recommends
    I really enjoyed reading about Storm too: http://nathanmarz.com/blog/history-of-apache-storm-and-lesso... This kind of "competition" leads to analysis paralysis though. Its much better when there is a single winner...

    Comment linking /blog/history-of-apache-storm-and-lessons-learned.html

    on “Turning the database inside-out with Apache Samza”
  14. Submitted How to beat the CAP theorem as a story · 183 points

    HN discussion
  15. this reminds me a lot of "How to beat the CAP theorem" http://nathanmarz.com/blog/how-to-beat-the-cap-theorem.html

    Comment linking /blog/how-to-beat-the-cap-theorem.html

    on “Rich Hickey: Deconstructing the Database”
  16. Submitted History of Apache Storm and Lessons Learned as a story · 174 points

    HN discussion
  17. DISCLAIMER: I'm one of PMC member of Apache Storm. Even though Clojure has been Nathan's first-class language, not everyone in contributors and even committers couldn't become native on Clojure. (Though I guess part of committers could feel Clojure as native.) It might not be a problem when Nathan builds most of things in Storm (I'll link his blog post which describes lesson learned from Storm on his perspective htt…

    Comment linking /blog/history-of-apache-storm-and-lessons-learned.html

    on “Storm 2.0”
  18. Submitted Specter – Clojure API for immutable programming (2017) as a story · 152 points

    HN discussion
  19. didibus · 2019-06-02Recommends
    It is interesting to read the history of Storm from the original author (Nathan Marz) himself: http://nathanmarz.com/blog/history-of-apache-storm-and-lesso... Clojure allowed him to build the initial Storm release by himself in only 5 months. > I made all of Storm's APIs in Java, but implemented Storm in Clojure. By keeping Storm's APIs 100% Java, Storm was ensured to have a very large amount of potential users. By…

    Comment linking /blog/history-of-apache-storm-and-lessons-learned.html

    on “Storm 2.0”
  20. Submitted Clojure's missing piece (2017) as a story · 145 points

    HN discussion
  21. 1. First make it possible 2. Then make it beautiful 3. Then make it fast 4. Rinse and repeat Suffering-oriented programming (2012) — http://nathanmarz.com/blog/suffering-oriented-programming.ht...

    Comment linking /blog/suffering-oriented-programming.html

    on “First do it, then do it right, then do it better”
  22. Submitted How to reject a job candidate without being an asshole as a story · 140 points

    HN discussion
  23. Author here. You may also want to check out a more recent post I wrote about blogging that focuses on those "side benefits": http://nathanmarz.com/blog/break-into-silicon-valley-with-a-...

    Comment linking /blog/break-into-silicon-valley-with-a-blog-1.html

    on “You should blog even if you have no readers”
  24. Submitted Leaving Twitter as a story · 138 points

    HN discussion
  25. It's hard to compare Clojure and Scala. Scala is a multi-paradigm programming language with strong OOP support and functional support. It's arguably more verbose than Clojure but looks much more similar to Java. Clojure is a Lisp. Lisp stands aside all other programming languages, first of all, because it supports syntactic abstraction (a.k.a. "code is data"). Hardcode addicts (I'm not one of them) say there are onl…

    Comment linking /blog/introducing-cascalog-a-clojure-based-query-language-for-hado.html

    on “Introducing Drake, a kind of ‘make for data’”
  26. Submitted The limited value of a computer science education as a story · 137 points

    HN discussion
  27. I would store the reservation date and truck length as separate data objects in the batch layer. You would tie them together with the reservation id. It isn't a big deal to do those joins since the batch system is good at that kind of large-scale computation and you've already accepted high latency in the batch layer. I wrote an article about graph schemas on the batch layer here: http://nathanmarz.com/blog/thrift-g…

    Comment linking /blog/thrift-graphs-strong-flexible-schemas-on-hadoop.html

    on “How to beat the CAP theorem”
  28. Submitted How to get a job at a kick-ass startup (for programmers) as a story · 127 points

    HN discussion
  29. > Is it a coincidence that companies who pioneered the open office plan are also some of the most successful in the world? Many companies that have been among "the most successful in the world" got there without open offices. Just because a company does something doesn't mean it was a major factor in its success. We have no way of knowing if Google (or whoever) would have been less successful had they not been such…

    Comment linking /blog/the-inexplicable-rise-of-open-floor-plans-in-tech-companies.html

    on “Google got it wrong. The open-office trend is destroying the workplace”
  30. Submitted Clojure or: How I Learned to Stop Worrying and Love the Parentheses as a story · 121 points

    HN discussion

Search all of HN for nathanmarz.com

Linked by the same people?