Skip to content
HomeVideosBooksBlogs
AllTop postsTopics
Podcasts
HistoryListsWatch laterLiked videosFollowing

The videos, books, blogs and podcasts Hacker News keeps recommending, all in one place.

VideosBooksBlogsPodcastsAboutPrivacySettings

Data from Hacker News, HackerTube, HackerBooks, HackerBlogs and Open Library. Credits · Not affiliated with Y Combinator.

HomeVideosBooksBlogsPodcasts
Ctrl K
    L

    Louis Brandy

    lbrandy.com · Personal blog · on HN since 2008

    Louis Brandy writes about programming, C++, performance, and genetic algorithms, including a StarCraft 2 build-order optimizer.

    Visit blogHN submissions
    ProgrammingSystems & PerformanceGames
    What HN says

    HN commenters list it among favorite programming blogs and cite its StarCraft 2 genetic algorithm post that produced the 7 roach rush.

    Stats for nerds
    45HN people shared it
    54linked in comments
    2Kstory points
    Jan 2021last shared
    2009people per year2021

    Top posts on HN

    1. 1
      Using genetic algorithms to find Starcraft 2 build orders
      6 people · 230 points · first shared 2010 · 77 comments on HN
    2. 2
      My 8 hour journey to a single character
      1 person · 176 points · first shared 2009 · 40 comments on HN
    3. 3
      The 37signals Effect
      1 person · 171 points · first shared 2009 · 75 comments on HN
    4. 4
      An almost perfect real-world hack
      1 person · 129 points · first shared 2009 · 27 comments on HN
    5. 5
      Never trust a programmer who says he knows C++
      6 people · 111 points · first shared 2010 · 92 comments on HN
    6. 6
      This must already exist
      1 person · 105 points · first shared 2009 · 35 comments on HN
    7. 7
      Demotivating a (Good) Programmer
      1 person · 105 points · first shared 2008 · 47 comments on HN
    8. 8
      You can’t beat a good compiler…. right?
      1 person · 104 points · first shared 2010 · 34 comments on HN
    9. 9
      The programmer's wife
      1 person · 100 points · first shared 2009 · 51 comments on HN
    10. 10
      Me vs Backspace: my war against a rogue character
      1 person · 81 points · first shared 2010 · 31 comments on HN

    What HN people wrote when they linked it

    • SpaceHoboOct 2010

      Before I explain my answer, the reader must understand that I'm a pretty satisfied Python programmer now who wouldn't go back. But in terms of actually bringing happiness to me in one brilliant burst of energy, there's only one language in my history that achieved this:

      Perl.

      Oh sure I detest Perl, now. It provides you with too many ways to make code that fails to express the problem clearly to another programmer, and I'm long past believing that code can survive having only a single mind contemplate it. But it came at a perfect moment for me.

      I had spent my childhood dreaming of science fiction futures and tinkering with electronics and computers and always feeling like I was missing some last little a-ha that could make it click and put all the facts in my head together toward acts of creation. I hung out on BBSes with cocky BBS software authors and hackers and really wanted to be part of that crowd. I figured I would take a course at some point and they'd lead me by the nose and by some sort of socratic process I'd suddenly snap and be just like these folks.

      So at this point C was being poo-poo'd in favor of C++, and C++ was rapidly on the rise as the premier industry OOP language par excellence. So I tried to learn it. I enrolled in a CS program that taught C++, and made some small progress, but not enough to work on the projects I found interesting. I raced ahead in the assignments and read ahead in the book and found myself in an inevitable slide down the…

    • JachFeb 2013

      There is nothing good in there! Run away! :P There are reasons companies like Google et al. strictly enforce their developers to use only a subset of C++, or to use it as an "augmented C". There's also this fun problem as you learn and use it: http://lbrandy.com/blog/wp-content/uploads/2010/03/c++.png

      http://yosefk.com/c++fqa/index.html isn't a book, but the author shares your disgust for C++ and it's fairly detailed. As he says somewhere, he knows C++ better than it deserves to be known. I also don't like C++ as much as C (and I'd like to replace ever having to use either of them with Rust, hence Rust is my language-of-the-year to learn for 2013), and I found the FQA immensely useful for understanding the craziness and defectiveness of C++.

      I'd also recommend http://www.amazon.com/The-Standard-Library-Tutorial-Reference/dp/0321623215/ I own the first edition and found it useful.

    • rfrankNov 2016

      When I was playing SC2 frequently a few years ago, someone made a program that used genetic algorithms to construct build orders [1]. It would produce a build that technically worked, but in a lot of cases they weren't very viable.

      I tried to make a blink stalker rush that'd be the rough equivalent of the build shown in the post liked above, just with the Protoss race in the game. The program would tell me to do things like make two extractors but put fewer than necessary probes on them, pull probes to extractors after X trips or at X time (can't remember which), things like that.

      1. http://lbrandy.com/blog/2010/11/using-genetic-algorithms-to-find-starcraft-2-build-orders/

    • dr_zoidbergOct 2016

      Yes, but even well designed games (from a gameplay pov) can have unexpectedly powerfull builds, like what happened with Starcraft 2 and the genetic-algorithm build order[0]. So simulating builds/gameplays can give you another edge at detecting strange/powerful scenarios.

      I also think you should rely on player feedback and community to spot this kind of things, but that could become time consuming if you're a lone developer.

      [0] http://lbrandy.com/blog/2010/11/using-genetic-algorithms-to-find-starcraft-2-build-orders/

    • TannerAug 2017

      I love the story of the Seven Roach Rush. To quote the linked article, "The most interesting part of this build, however, is how counter-intuitive it is. It violates several well-known (and well-adhered-to) heuristics used by Starcraft players when creating builds."

      I'm fairly certain that this application of machine learning will present some surprising strategies.

      http://lbrandy.com/blog/2010/11/using-genetic-algorithms-to-find-starcraft-2-build-orders/

    • thomasjonasSep 2014

      Berlin based design studio OnFormative did a similar project using Google Maps as source material: http://www.onformative.com/lab/googlefaces/

      Very nice to see more projects where algorithms and art come together. This post also reminded me a bit of this project where a face detection algorithm and a psuedo-genetic algorithm are combined to create faces out of noise: http://lbrandy.com/blog/2009/04/genetic-algorithms-evolving-human-faces/

    Related

    Amit Pateltheory.stanford.edu/~amitp28 people

    Introduction to A* (1997)

    Amit Patel
    Personal · last shared 2025
    Computer, Enhance!computerenhance.com72 people

    Turns are better than radians

    Computer, Enhance!
    Personal · last shared 2026
    Scirra Blogscirra.com46 people

    Bitcoin's UK future looks bleak

    Scirra Blog
    Company · last shared 2021
    Philippe Gaultiergaultier.github.io23 people

    You've just inherited a legacy C++ codebase, now what?

    Philippe Gaultier
    Personal · last shared 2026
    Notchnotch.tumblr.com102 people

    I'm Leaving Mojang

    Notch
    Personal · last shared 2021
    Daniel Lemirelemire.me500 people

    Xor Filters: Faster and Smaller Than Bloom Filters

    Daniel Lemire
    Personal · last shared 2026
    Modular Blogmodular.com172 people

    Understanding SIMD: Infinite complexity of trivial problems

    Modular Blog
    Company · last shared 2026
    LessWronglesswrong.com2.4k people

    The Best Textbooks on Every Subject

    LessWrong
    Publication · last shared 2026