New
The latest blog posts to take off on Hacker News. 14,544 posts.
If PHP Were British
PHP, as the result of a spectacular error of judgement, appears to be written in US English. How do we developers ensure the traditions of the British Empire continue to be upheld, even in the digital age?
Quake Engine source review
I happily dove into Quake World source code . Here is what I understood, hopefully it will help someone to swim. This article is in four parts : Architecture section Network section Prediction section Rendition section
Understanding "Prototypes" in JavaScript
For the purposes of this post, I will be talking about JavaScript objects using syntax defined in ECMAScript 5.1. The basic semantics existed in Edition 3, but they were not well exposed. A Whole New Object In JavaScript, objects are pairs of keys and values (in Ruby, this structure
The Sad Reality of Post-Mature Optimization
Thoughts and musings of Dennis Forbes, expert software developer/architect and AI engineer
Free Printed Copies of "Version Control by Example"
The printed copies of Version Control by Example arrived last week. We moved seven tons of books into our fourth-floor office space and all the tenants on the third floor are still alive.
Git: fetch and merge, don’t pull
This is too long and rambling, but to steal a joke from Mark Twain Blaise Pascal I haven’t had time to make it shorter yet. There is some discussion of this post on the git mailing list , but much of it is tangential to the points I’m trying to make here.
Understanding JavaScript function invocation and "this"
Over the years, I've seen a lot of confusion about JavaScript function invocation. In particular, a lot of people have complained that the semantics of this in function invocations is confusing. In my opinion, a lot of this confusion is cleared up by understanding the core function invocation primitive,
How to Level Up as a Developer
How does a good developer become a great developer?
Why Philosophers Should Care About Computational Complexity
Update (August 11, 2011): Thanks to everyone who offered useful feedback! I uploaded a slightly-revised version, adding a “note of humility” to the introduction, correcting the footnot…
Finding memory leaks
Over lunch last week Mikhail Naganov (creator of the DevTools Heap Profiler ) and I were discussing how invaluable it has been to have the ...
Retiring a Great Interview Problem
Interviewing software engineers is hard. Jeff Atwood bemoans how difficult it is to find candidates who can write code. The tech press sporadically publishes “best” interview questions …
Sprite3D.js: a javascript library for 3D positionning
This page is slowly getting outdated. In my spare time, I've been working on a major syntax revision, Firefox compatibility issues and a new version of this page.
Designing command-line interfaces
There are few articles on the design of command-line interfaces (CLIs), even if plenty of articles on designing graphical user interfaces (GUIs) exist. This article is an attempt at presenting some of the most important guidelines for CLI design.
How the Winning Tron Bot Works
[ Update 8/2/2011 : you can play against a dumbed-down Javascript version of the bot here .]