December 31, 2005

36 Classic Software Engineering Mistakes

Steve McConnel: Classic Mistakes Enumerated. From 1996. Not much has changed in 10 years...

Posted by guenter at 05:35 PM | Comments (0)

December 30, 2005

Bad Day

As you may have noticed I had a kinda bad day yesterday and as a result of that was maybe a bit too harsh on Microsoft. I certainly don't want my blog to be a Microsoft bashing place. Although they work hard like no one else to give me plenty of reason to bash them ;-)

There are a few more notes that I'd like to add to my ranting on Microsoft's C++ iostreams bug. It seems that, ironically, the memory leak in VC++ 2005 is caused by the same bug that cost me four or five days of debugging. Now, those who have worked with Visual C++ know that the Microsoft C/C++ (debug) runtime library has a useful memory leak detection feature built in. While it doesn't tell you where the memory leak originates from, it nevertheless gives you a hint that there maybe something wrong with your memory management. Now, Microsoft (in a state of hubris?) decided to disable this leak detection feature for all memory allocations made from within the C++ standard library. Hadn't they done that, they could have easily found that bug during testing. Also, I have to ask why using a tool like Purify or BoundsChecker isn't standard practice in Microsoft's QA for the runtime libraries...

Posted by guenter at 07:32 AM | Comments (3)

December 29, 2005

Link Of The Day

www.khaaan.com (requires Flash).

Posted by guenter at 01:59 PM | Comments (0)

Seven Habits of Highly Effective Programmers

And the last entry for today: Seven Habits of Highly Effective Programmers (via Arno's Software Development Weblog).

Now back to working on the C++ Portable Components 1.0 release...

Posted by guenter at 09:19 AM | Comments (0)

Four Lost Days...

Speaking of Microsoft, I recently spent four whole days hunting down a memory leak in the C++ Portable Components caused by a bug in Microsoft's C++ iostreams implementation. Aargh.

And as if that wasn't enough, they managed to introduce new bugs in Visual Studio 2005. For starters, try this:

#include <sstream>

int main(int argc, char** argv)
{
    for (int i = 0; i < 1000000; ++i)
    {
        std::stringstream s;
    }
}

and watch the memory usage of this simple program go through the roof. At least, in the meantime they have acknowledged that there is a bug.

I am tired of hearing how many zillion dollars MS is investing into R&D to improve software quality when they cannot even get the most basic things right. Instead they are doing bullshit like this.

Thank you, I feel better now.

Posted by guenter at 08:51 AM | Comments (5)

The History of the Arial Font

Here is an article that tells the history of the Arial font — the Helvetica ripoff that Microsoft bundles with Windows and every product for the Mac. Oh this is so typical for Microsoft's "second class is good enough" attitude in everything they do...

Posted by guenter at 08:40 AM | Comments (4)

December 28, 2005

C++ Portable Components 0.96.1

A new release of the C++ Portable Components is available.
The focus of this release is mainly bugfixes and performance improvements - no major new features have been added. Also included is support for building with Microsoft Visual Studio 2005 and sample code for using the Net library.
Enjoy!

Posted by guenter at 07:54 PM | Comments (0)

December 24, 2005

Merry Christmas!

Maria and I wish you a merry and peaceful christmas.

Posted by guenter at 03:09 PM | Comments (0)

December 22, 2005

Google Zeitgeist for 2005

The Google Zeitgeist for 2005 is out. Froogle is definitely dominated by the iPod. And I still don't have one...

Posted by guenter at 08:37 AM | Comments (0)

December 20, 2005

Applied Informatics Website in German

The Applied Informatics web site is now also available in German.

Posted by guenter at 09:08 AM | Comments (0)

December 16, 2005

20 Years of Computing

This christmas I am going to celebrate my first 20 years of owning a computer. Christmas 1985 I got my first computer, a Philips VG-8020. A few weeks later I also got a tape recorder for it, so I could actually permanently store my first attempts at programming. I also got a Competition Pro joystick, which was the non-plus-ultra back then ;-)

vg8020.jpg msx.gif
Photo courtesy of Boris Jakubaschk, www.homecomputermuseum.de

The VG-8020, however, was not the first computer that I ever worked with. A few months earlier my dad borrowed a Commodore 64 from a friend. I used that C-64 to test my first BASIC programs that I wrote earlier, using pen and paper.

msxbooks.jpg turbo30.jpg

My first activities with the computer were typing in the sample programs that could be found in its user manual, writing my first own programs (which later included lots of different games), and, to a lesser degree, playing games. Back then I only had two games - Boulder Dash and 737 Flight Simulator.

Two years later I sold the computer and replaced it with a Philips VG-8235, which featured an integrated 3.5 inch floppy disk drive. A new level of comfort. This was also the beginning of the age of goto-less programming for me, thanks to Turbo Pascal 3.0, which I got for that computer. I still have the original box.

In 1991 I bought a Macintosh LC. Originally it had an Apple black-and-white monitor attached, which looked cool and had an absolutely sharp image. Unfortunately, the monitor stopped working after a few years of intensive use. The Mac LC, though, is still working.

With the Mac LC, my career as a C and C++ programmer started. I used the excellent THINK C, which had an IDE including a comfortable source-level debugger. I also did my first commercial project (an embeddable database engine which ran on Sun OS) with it.

Today the Mac LC sits in my office (as shown in the picture), however, monitor, keyboard and mouse are connected to the Mac mini next to it.


Posted by guenter at 09:05 AM | Comments (0)

December 07, 2005

Aardvark'd

Last week I received my Aardvark'd DVD from Fog Creek Software. It's a nice piece of work, although it did not really threw me off my feet (although that may be because my health was not the best when I saw the movie — see my previous post).

For all who do not know what this movie is about: last summer four students had an internship at Fog Creek where they developed and brought to market a complete product. This film documents the whole project and gives some insights into the life at Fog Creek. Also appearing besides the Fog Creek guys are Paul Graham and Dan Bricklin.

Posted by guenter at 06:22 PM | Comments (1)

Unplanned Vacation

I got the flu really bad last week and this has kept me out of the office for a whole week now. I'm slowly starting to feel better, but I am still not in the shape to return to work with full power. In the meantime, work is piling up all around me...

Posted by guenter at 11:58 AM | Comments (0)