-
Peer Review
Peer review can be a useful technique when programming. It ensures that at least one other person has read the code. It can catch dumb bugs and help ensure that the code is not unnecessarily obscure. Several popular programming methodologies use it. (Pair programming has the same benefits.) Peer review has one obvious disadvantage: it…
-
Iron Man
I’ve always liked Iron Man. Tony Stark has a simple comic book story: a smart guy, who doesn’t think very much about what he’s doing, is nearly killed. The experience changes him–but not all that much. He’s a superhero because he’s addicted to action, because he feels the need to justify his survival, and because…
-
Linker relro
gcc, the GNU linker, and the glibc dynamic linker cooperate to implement an idea called read-only relocations, or relro. This permits the linker to designate a part of an executable or (more commonly) a shared library as being read-only after dynamic relocations have been applied. This may be used for read-only global variables which are…
-
Rent Control
My home city, Cambridge, Massachusetts, used to have rent control. It was generally supported in the city, but it was voted out in a statewide referendum in 1994. The statewide referendum was a bit of a crock; only three cities in the state had any form of rent control (Cambridge, Boston, and Brookline). Rent control,…
-
GCC in C++
It is time to start using C++ in gcc. gcc was originally written in C. C++ has now advanced to the point where we can reasonably take advantage of the new features that it provides. The most obvious advantage would be in data structures. gcc implements data structures which are awkward to use for different…