D
DodgyCoder
dodgycoder.net · Personal blog · on HN since 2011
DodgyCoder is a blog on software development and other topics, with programmer interviews, coding lore, and programming jokes.
What HN saysHN links it for classic programming stories, such as game developers' memory ballast trick, Yoda conditions, and interviews with well-known programmers.
27HN people shared it
17linked it in comments
64stories submitted
1.2Kstory points
8 months agolast shared
2011people per year2026
Most-shared posts
- 1Coding tricks of game developers11 people · 245 points · first shared 2012 · 65 comments on HN
- 2Q&A With Nine Great Programmers5 people · 84 points · first shared 2012 · 21 comments on HN
- 3Google's fiber leeching caper3 people · 167 points · first shared 2013 · 100 comments on HN
- 4Old school developers - achieving a lot with little3 people · 82 points · first shared 2012 · 40 comments on HN
- 5"Yoda Conditions", "Pokémon Exception Handling" and other programming classics3 people · 21 points · first shared 2011 · 5 comments on HN
- 6Bill Atkinson, developer of MacPaint, on the art of developing software2 people · 12 points · first shared 2024 · 1 comments on HN
- 7The "Bucket Bumping" problem of airline tickets, and how to minimise your fare2 people · 3 points · first shared 2026 · 1 comments on HN
- 8The Great AI Arbitrage: making a killing before your client wises up2 people · 2 points · first shared 2026 · discussion on HN
- 9Taking control of a 36 year old NASA spacecraft using GNU radio1 people · 116 points · first shared 2015 · 7 comments on HN
- 10Why was .NET called .NET?1 people · 92 points · first shared 2012 · 72 comments on HN
- 11Why do Programmers get paid less than Project Managers or Business Analysts?1 people · 73 points · first shared 2011 · 71 comments on HN
- 12The "Spanish Theory" of software project management1 people · 71 points · first shared 2012 · 51 comments on HN
- 13Programming Trends on StackOverflow1 people · 58 points · first shared 2013 · 58 comments on HN
- 14The decline of PCs and the rise of smartphones and tablets was predicted in 19931 people · 53 points · first shared 2012 · 69 comments on HN
- 15Coding tricks of game developers1 people · 7 points · first shared 2012 · discussion on HN
What HN people wrote when they linked it
damian2000 · 2026-01-15
https://www.dodgycoder.net/ - a blog about software development (and other interesting things to me)
pjmlp · 2022-06-30
> These days I live in NetBeans. It does everything I want, very cleanly simply and efficiently. It’s the nicest environment I’ve ever lived in.
https://www.dodgycoder.net/2012/09/q-with-nine-great-programmers.html
It wasn't XEmacs, but rahter the genesis of Emacs itself (I got that wrong).
https://www.youtube.com/watch?v=IT__Nrr3PNI&t=1642s
https://en.wikipedia.org/wiki/Gosling_Emacs
Got to love all the St. Thomas requests on developer forums.
DandyDev · 2018-02-25
Obligatory link to this classic blog post explaining heisenbug and many other classic programming puns: http://www.dodgycoder.net/2011/11/yoda-conditions-pokemon-exception.ht…
ryangittins · 2015-07-16
Hah, this is great! It reminds me of the classic
static char buffer[1024*1024*2];
story from a few years back.
http://www.dodgycoder.net/2012/02/coding-tricks-of-game-developers.htm…
michaelx386 · 2015-07-13
I love this ballast file idea. It reminds me of a programming story by Noel Llopis[0] where a game developer was working with a strict memory limit and placed static char buffer[1024 * 1024 * 2]; in the code as an insurance policy[1]:
[0] http://gamesfromwithin.com
[1] http://www.dodgycoder.net/2012/02/coding-tricks-of-game-developers.htm…
thefreeman · 2014-05-21
Just a follow up to your 95 percentile rule, there is a famous story of Google exploiting this (in the early days before they were flush with money) in order to transfer their data to a new data center on the opposite coast. http://www.dodgycoder.net/2013/02/googles-fiber-leeching-caper.html
bobdvb · 2013-07-08
Another copy here: http://www.dodgycoder.net/2012/09/q-with-nine-great-programmers.html
imperio59 · 2013-02-19
Some of my personal favorites:
http://www.dodgycoder.net/2011/11/yoda-conditions-pokemon-exception.ht…
"Pokemon exception catching" (Gotta catch 'em all!)
And in OOP, Spaghetti with meatballs.
http://en.wikipedia.org/wiki/Spaghetti_code#Spaghetti_with_meatballs
SethTro · 2021-03-25
Same idea as this game development legend
https://www.dodgycoder.net/2012/02/coding-tricks-of-game-developers.ht…
> he had put aside those two megabytes of memory early in the development cycle. He knew from experience that it was always impossible to cut content down to memory budgets, and that many projects had come close to failing because of it. So now, as a regular practice, he always put aside a nice block of memory to free up when it's really needed.
puzzle · 2018-07-17
I wasn't around at the time, but I suspect it's mainly because the first datacenters were on the West Coast. See e.g. the story at http://www.dodgycoder.net/2013/02/googles-fiber-leeching-caper.html
dahart · 2018-02-07
Oh yeah, this is very common in game development, and I'm pretty sure in other embedded dev too. There's a famous story about a game programmer who saved an entire production when it started crashing something like two weeks before shipping by commenting one line of code. Turned out the line of code was a malloc (of like a megabyte) that he'd added a year earlier, in anticipation of the game running out of memory. My details are probably wrong, but I'm pretty sure I've seen this story linked on HN.
I was in game dev for a decade, and I saw this happen where I worked, the studio technical director adopted the practice of saving some space, because we always started running out of memory near the deadline as artists threw in all their content.
*edit: http://www.dodgycoder.net/2012/02/coding-tricks-of-game-developers.htm…
douche · 2016-05-11
They need a char-sized number, and memory used to be a tightly-budgeted commodity.
Reminds me of this story of a game developer who magically got their game under the limit at the 11th hour
http://www.dodgycoder.net/2012/02/coding-tricks-of-game-developers.htm…
smcl · 2015-03-03
This hooks nicely back into the world of software development, and the anecdote about the senior game dev deleting a secret static 1MB buffer when their team hit their memory ceiling - http://www.dodgycoder.net/2012/02/coding-tricks-of-game-developers.htm…
GotAnyMegadeth · 2015-01-09
These seem to come from here [0] which has more and some other general tips.
[0] http://www.dodgycoder.net/2012/02/coding-tricks-of-game-developers.htm…
hasenj · 2012-09-23
This article was posted here a while ago:
http://www.dodgycoder.net/2012/07/old-school-developers-achieving-lot.…
It mentions that Ken Thompson "starts his projects by designing the data structures and then works bottom up".
Adapting this approach solved several problems I was having during development.
pagekalisedown · 2012-04-09
3: I've rarely seen "Yoda conditions" [1] in the wild. I think it's because most compilers will output a warning when doing an assignment inside an if statement.
[1] http://www.dodgycoder.net/2011/11/yoda-conditions-pokemon-exception.ht…
dalke · 2015-06-01
Umm, we have lots of lore in this field. "The Graphing Calculator Story" at Apple, "The Story of Mel", the entire site folklore.org, stories about Gates and the early days of Microsoft, the "IBM visiting Gary Kildall" story, the Ariane V exception, Grace Hopper and the moth stuck in a relay (and her nanosecond wire), the "Steve Jobs at Xerox" story, Stallman's description of why he started the GNU project, Torvald's first posting about Linux, the Torvalds/Tannenbaum exchange, the rumors about the CIA wanting popcount on the Cray and about the backdoor in DES, "Better is Worse", "Reflections on Trusting Trust", "Always mount a scratch monkey", anecdote collections like http://www.dodgycoder.net/2012/02/coding-tricks-of-game-developers.htm… .
http://www.filfre.net/ is going through the history of ludic games, including discussion of the lore associated with specific games. There are stories about IBM's "Black Team" ("more than one programmer was reduced to tears while having his code evaluated by the Black Team.") Tracy Kidder's "The Soul of a New Machine". Robert X. Cringely's "Accidental Empires: How the Boys of Silicon Valley Make Their Millions, Battle Foreign Competition, and Still Can't Get a Date" shouldn't be read as a history book but a collection of lore about Silicon Valley.
Also, I picked "engineers" and "plumbers" to show real-world examples of non-universal elements. "Architect" is another non-universal.
Regarding naval architects, there's Bushnell's Turtle,…