Month: January 2010

  • Version Scripts

    I recently spent some time sorting through linker version script issues, so I’m going to document what I discovered. Linker symbol versioning was invented at Sun. The Solaris linker lets you use a version script when you create a shared library. This script assigns versions to specific named symbols, and defines a version hierarchy. When…

  • AOL Time Warner

    The merger between AOL and Time Warner, the biggest merger in U.S. history, happened ten years ago. It is now generally considered to have been the worst merger of all time. Hindsight is 20/20, but I clearly remember that when I first read it I thought it was a joke. I was working in Silicon…

  • Climate Change

    Enough about programming for a moment. Here are some questions I have about climate change 1. Temperature measurements clearly show that the Arctic regions are warming up. Atmosphere measurements clearly show that the amount of carbon dioxide in the air is increasing. The physics showing that increasing carbon dioxide in the atmosphere can lead to…

  • Cargo Cult Programming

    I recently encountered a nice example of cargo cult programming. In bug 10980 Robert Wohlrab helpfully built a large number of Debian packages with the gold linker and reported errors about unknown options. These were options supported by the GNU linker but not by gold. (I’ve now added all the options to gold). Among the…

  • Generics

    The goal of generics in a programming language is to save programmer time. Generics permit you to write code that works with multiple types only once. They also permit one programmer to write generic algorithms which you can use with your program’s types. This kind of thing is attractive to anybody who has written a…