Topics /

Software Engineering

The most popular blog posts about software engineering on Hacker News. 21,835 posts.

Any year
12604

Covariance and Contravariance

Subtypes and supertypes are a common part of modern programming. Covariance and contravariance tell us where subtypes are accepted and where supertypes are accepted in place of the original type. This shows up frequently in most of the programming most of us do, but many developers are unaware of the concepts beyond a…

12612

Self-Enforcing Protocols

There are several ways two people can divide a piece of cake in half. One way is to find someone impartial to do it for them. This works, but it requires another person. Another way is for one person to divide the piece, and the other person to complain (to the police, a judge, or his parents) if he doesn’t think it’s…

12615

FogBugz goes dark

Today I got an email titled ‘Your Manuscript Account Balance’ which said: Your Manuscript account is now in arrears in the amount of $31.25. Use this link to specify a credit card for y…

12618

Ideas for Game Clones to Code (2012)

So you know a little bit about programming (perhaps you've read the free book, "Invent Your Own Computer Games with Python" , a free programming book for beginners whose author shamelessly plugs at every chance) but you want to get better at coding. You can't seem to find any open source projects that are at your…

12619

Hotpatching a C Function on x86

In this post I’m going to do a silly, but interesting, exercise that should never be done in any program that actually matters. I’m going write a program that changes one of its function definitions while it’s actively running and using that function. Unlike last time , this won’t involve shared libraries, but it will…