| 1. | | Your Code is My Hell (avdi.org) |
| 287 points by joshuacc on Aug 22, 2011 | 79 comments |
|
| 2. | | Why every programmer should have a Tiddlywiki (eriwen.com) |
| 243 points by caustic on Aug 22, 2011 | 136 comments |
|
| 3. | | Ask HN: What is your preferred Python stack for high traffic webservices? |
| 233 points by bigethan on Aug 22, 2011 | 67 comments |
|
| 4. | | Goodbye, shitty "Car extends Vehicle" object-orientation tutorial (canonical.org) |
| 232 points by sebkomianos on Aug 22, 2011 | 128 comments |
|
| 5. | | Best algorithms book I ever read (eriwen.com) |
| 208 points by slashams on Aug 22, 2011 | 42 comments |
|
| 6. | | This is CoffeeScript (thoughtbot.com) |
| 184 points by franze on Aug 22, 2011 | 89 comments |
|
| 7. | | Notch's 48-hour game: Prelude of the Chambered (amazonaws.com) |
| 180 points by Raphael on Aug 22, 2011 | 45 comments |
|
| 8. | | Vidyard (YC S11) Is A YouTube For Businesses (techcrunch.com) |
| 158 points by notintokyo on Aug 22, 2011 | 75 comments |
|
| 9. | | How to Improve the quality of your software: find an old computer (jacquesmattheij.com) |
| 151 points by VeXocide on Aug 22, 2011 | 87 comments |
|
| 10. | | Making Wrong Code Look Wrong (joelonsoftware.com) |
| 125 points by ColinWright on Aug 22, 2011 | 86 comments |
|
| 11. | | Recurly.js library released for secure, customizable checkout forms (recurly.com) |
| 124 points by danburkhart on Aug 22, 2011 | 36 comments |
|
| 12. | | Continuous Integration Failure? Use USB Missiles (papercut.com) |
| 118 points by chopsueyar on Aug 22, 2011 | 30 comments |
|
| 13. | | Do not upgrade to PHP 5.3.7 due to a bug in crypt() (php.net) |
| 108 points by there on Aug 22, 2011 | 34 comments |
|
| 14. | | Why Google+ Gets a “+1″ for Browser Security (barracudalabs.com) |
| 107 points by _b8r0 on Aug 22, 2011 | 26 comments |
|
| 15. | | The curious case of DuckDuckGo (hacksandthoughts.posterous.com) |
| 103 points by sbashyal on Aug 22, 2011 | 98 comments |
|
| 16. | | Fox’s 8-Day Delay on Hulu Triggers Piracy Surge (torrentfreak.com) |
| 98 points by chaostheory on Aug 22, 2011 | 104 comments |
|
| 17. | | Thoughts on Picplum Automatic Photo Prints (paulstamatiou.com) |
| 93 points by PStamatiou on Aug 22, 2011 | 43 comments |
|
| 18. | | 1 year on, Hipmunk (YC S10) hits 1 million flight + hotel searches a month (xconomy.com) |
| 91 points by waderoush on Aug 22, 2011 | 54 comments |
|
| 19. | | Cause of ALS is found, Northwestern team says (chicagotribune.com) |
| 86 points by nurik on Aug 22, 2011 | 23 comments |
|
| 20. | | Web Surfing Helps at Work, Study Says (wsj.com) |
| 86 points by tilt on Aug 22, 2011 | 14 comments |
|
| 21. | | How To Ask Questions The Smart Way (catb.org) |
| 79 points by tokenadult on Aug 22, 2011 | 29 comments |
|
| 22. | | Parse Releases Their REST API (parse.com) |
| 76 points by tyler on Aug 22, 2011 | 32 comments |
|
| 23. | | Don't Fear the Internet: Basic HTML & CSS for non-Web Designers (dontfeartheinternet.com) |
| 71 points by joshuacc on Aug 22, 2011 | 20 comments |
|
| 24. | | Crockford on JavaScript (yuiblog.com) |
| 70 points by inshane on Aug 22, 2011 | 17 comments |
|
| |
|
|
| 26. | | Proxino (YC S11): Automated Error Reporting For Your Client-Side JavaScript (techcrunch.com) |
| 69 points by schlichtm on Aug 22, 2011 | 21 comments |
|
| 27. | | Hiring – Easy as Pie (steveblank.com) |
| 68 points by sramam on Aug 22, 2011 | 24 comments |
|
| |
|
|
| 29. | | Is Randal L Schwartz notable enough for Wikipedia? (wikipedia.org) |
| 65 points by russellallen on Aug 22, 2011 | 68 comments |
|
| 30. | | Touchdroid - Android for the HP Touchpad (rootzwiki.com) |
| 60 points by tilt on Aug 22, 2011 | 20 comments |
|
|
| More |
The game is a Zelda-inspired, first person, 2.5D dungeon crawler written in Java.
__Modus operandi:__
1) He first built a robust engine, very powerful from a game developing standpoint. Building the various types of blocks (walls/grounds/objects) and entities (player/ennemies/bullets/boulders) needed remarkably little code afterwards.
2) He used Paint.NET as a level editor, and color-coded the blocks and entities. He used the alpha channel to identify the switches, the doors, the ladders and the ennemies (from 255 downwards). Doors and switches are automatically linked by id. This allows to put all the level design logic on the map.
3) The most important: short iterations. He spent more time play testing the game than writing it, systematically retesting the old stuff when he introduced a new feature, or even after changing a detail.
4) He's sharp, knows his tools, edits the code very fast and makes few mistakes. He also has a lot of experience, which allowed him to make good initial decisions that facilitated the development process.
__The platform:__
Java+Eclipse turns out to be an excellent platform for writing games.
While it doesn't have a REPL, its debugger allows to patch the code while it is running, offering a very dynamic environment, especially to tweak the gameplay. It felt very lightweight. I wonder if the other JVM languages have similar debugging facilities.
The simplicity of the language makes the code easy to read and modify (provided you have a sound initial code base). Once you get used to it, the boilerplate becomes transparent (like the parentheses in Lisp).
The refactoring abilities of Eclipse are excellent.
The speed of the JVM allows to write fast low level code, and its object system make it straightforward to organise the high level logic.
__Some tricks/hacks:__
All textures are drawn in 4 shades of gray, then colored when they are loaded. It allows to reuse the wall textures for all levels, and to differentiate the bosses from the normal ennemies, at no cost, etc.
His playsound function creates a new thread every time it is run.
If I counted properly, there is at most one level of inheritance, even where more would have made sense from an orthodox OO design standpoint. There's some code duplication, but he only duplicated robust, well tested code.
The low resolution and limited palette allows the rudimentary graphics to look good (old school). The animations have only two frames.
.
.
On a side note: Did someone save fist few hours of the stream, when he wrote the 3D engine? I couldn't watch the process, and his Livestream account has been deleted.