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.

What HN saysHN commenters list it among favorite programming blogs and cite its StarCraft 2 genetic algorithm post that produced the 7 roach rush.
45HN people shared it
19linked it in comments
54stories submitted
2.0Kstory points
3 years agolast shared
2008people per year2026

Most-shared posts

  1. 1
    Using genetic algorithms to find Starcraft 2 build orders
    6 people · 230 points · first shared 2010 · 77 comments on HN
  2. 2
    Never trust a programmer who says he knows C++
    6 people · 111 points · first shared 2010 · 92 comments on HN
  3. 3
    PNG vs JPEG
    5 people · 7 points · first shared 2008 · 8 comments on HN
  4. 4
    Genetic Algorithms: Evolving Human Faces
    3 people · 10 points · first shared 2009 · 10 comments on HN
  5. 5
    How We Made Our Face Recognizer 25x Faster
    2 people · 59 points · first shared 2008 · 13 comments on HN
  6. 6
    Computational performance — a beginner’s case study
    2 people · 22 points · first shared 2009 · 9 comments on HN
  7. 7
    My 8 hour journey to a single character
    1 people · 176 points · first shared 2009 · 40 comments on HN
  8. 8
    The 37signals Effect
    1 people · 171 points · first shared 2009 · 75 comments on HN
  9. 9
    An almost perfect real-world hack
    1 people · 129 points · first shared 2009 · 27 comments on HN
  10. 10
    Demotivating a (Good) Programmer
    1 people · 105 points · first shared 2008 · 47 comments on HN
  11. 11
    This must already exist
    1 people · 105 points · first shared 2009 · 35 comments on HN
  12. 12
    You can’t beat a good compiler…. right?
    1 people · 104 points · first shared 2010 · 34 comments on HN
  13. 13
    The programmer's wife
    1 people · 100 points · first shared 2009 · 51 comments on HN
  14. 14
    Me vs Backspace: my war against a rogue character
    1 people · 81 points · first shared 2010 · 31 comments on HN
  15. 15
    The 75% answer
    1 people · 75 points · first shared 2009 · 41 comments on HN

What HN people wrote when they linked it

Tanner · 2017-08-09
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-starc…
Jach · 2013-02-01
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/03216… I own the first edition and found it useful.
ganley · 2009-08-27
A few of my favorites that I didn't see people list; note that many of these are sort of combined personal blogs and programming-related (like mine - http://joeganley.com): - http://wilshipley.com - http://lbrandy.com - http://nedbatchelder.com - http://www.teamten.com/lawrence/writings/
SpaceHobo · 2010-10-06
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…
29athrowaway · 2021-01-31
This approach does work, but be mindful that each patch changes things a lot, and there's a lot of maintenance required to keep it working. In StarCraft II, the 7 roach rush was developed using genetic algorithms. http://lbrandy.com/blog/2010/11/using-genetic-algorithms-to-find-starc…
taneq · 2018-04-12
The first thing I thought of was http://lbrandy.com/blog/2010/03/never-trust-a-programmer-who-says-he-k… The better I get at C++, the less of it I actually use.
FrozenVoid · 2017-08-10
You can apply it on higher level like that guy who bruteforced the 7roach rush for Zerg in SC2. http://lbrandy.com/blog/2010/11/using-genetic-algorithms-to-find-starc… Problem is that build orders are just optimizing the opening economy and these unbalanced openings will be just patched out in the future.
rfrank · 2016-11-04
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-starc…
dr_zoidberg · 2016-10-18
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-starc…
merlincorey · 2015-12-01
Yes, even if you send a high quality PNG image to facebook, they will convert it to a low quality JPG. This is especially bad for things with text. See: http://lbrandy.com/blog/2008/10/my-first-and-last-webcomic/
thomasjonas · 2014-09-15
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-face…
bockris · 2011-07-23
Earlier this year one of their other engineers, Louis Brandy, went to Facebook. http://lbrandy.com/blog/2011/01/im-buying-facebook-at-50b/
TeMPOraL · 2011-01-23
They look WAY better on W3C site. For some reason Smashing made a JPEG version of the original PNGs. I'd like to take this opportunity to remind HN that we don't use JPGs for this type of graphics. See: http://lbrandy.com/blog/2008/10/my-first-and-last-webcomic/ ;)
guyr · 2011-01-05
Here is the description from the creator's blog: http://lbrandy.com/blog/2009/04/genetic-algorithms-evolving-human-face…
lbrandy · 2010-10-13
JoachimSchipper · 2010-06-07
This has some caveats that I pointed out at http://lbrandy.com/blog/2010/06/you-cant-beat-a-good-compile/comment-p… still, a nice enough article. EDIT: note that the off-by-one error is MY mistake - it simply isn't there. My point about "restrict" is valid, though.
tialys · 2009-12-07
I don't understand why he has the source as [unknown]. 5 seconds and google brought me to: http://lbrandy.com/blog/page/10/ -- the original post I believe.
cool-RR · 2009-07-28
This article that you linked to from your site: http://lbrandy.com/blog/2009/07/computational-performanc-a-beginners-c… Is really eye opening.

Keyboard shortcuts

/Search
j kNext / previous blog
EnterOpen selected blog
vVisit the blog site
fFollow / unfollow
lSwitch grid / list view
dSwitch dark mode
g hHome
g pTop posts
g tTopics
g fFollowing
g lLiked
g yHistory
g qFAQ
EscBack / close