The Essence of Information

People look confused when I tell them about my passion for algorithms and data-structures. Most of them understand what a Programmer is doing, but not what Computer Science is good for. And even if they do, they think it has no practical relevance. Let me show you with a simple example, that applied… More »

Why I Love Programming

Programming has many faces. It is the science of structured thinking. It is the art of eloquent expression. It teaches you to be humble when you look at other peoples’ fascinating work. Most of all, it teaches you a lot about yourself. While the syntax may change, the concepts will not. More »

Tools

For as long as I can think, religious flamewars have infected computer science. Having arguments about technical topics can be healthy, but flamewars are not. I’m sick of it. I’m fed up with people telling me that their work environment is oh-so better, faster and so on. That’s fine, but it doesn’t … More »

Are you a Programmer?

My geography teacher once told the story of her first lecture at University. As an introduction, her professor asked the class to draw a map of Germany without any help and as accurate as possible. To her surprise, she was not able to fill the map with much detail. Even the shape of the country was … More »

On Hard Work

Great people get shaped by their achievements There’s Thomas Edison who developed countless prototypes before selling a single light bulb. The unemployed Joanne K. Rowling writing Harry Potter in a Cafe while caring for her child. Steve Wozniak creating the first personal computer in his spare time… More »

Overkill – Java as a First Programming Language

I recently talked to a student in my neighborhood about his first programming experiences. They started learning Java at school, and it soon turned out to be horrible. A lot of us learned to code in languages like BASIC or Pascal. There was no object orientation, no sophisticated file I/O and almost… More »

Why I Love Text Files

Text files are the single most important way we can communicate with computers. It’s no coincidence that they are also the most vital way to interact with other human beings. What we can achieve with text files is invaluable: Write it once and refer to it whenever you want to get the message across … More »

Running Legacy Code

This short article deals with a severe problem in software development: bit rot. When switching to a new platform (for instance from Windows XP to Windows Vista/7), the programmers need to make sure that old bits of code run flawlessly. There are several ways to achieve this goal that will be discus… More »

« Next