Why are most software projects using a lot of different programming languages (e.g. SQL, Ruby, JavaScript, HTML, CSS)? Couldn’t we just use a single one? Wouldn’t that simplify everything? The issue is only partly a language issue. Doing everything (UI, business logic, data access) in C++, as I have often done for embedded projects doesn’t necessarily improve… Read More


When software developers write automated tests for their software, the quality increases, the design improves and the project becomes more manageable. The development also becomes more fun! In this presentation (slides below) you will learn how to write automated tests for embedded software. You will see a live demonstration of writing an automated test for… Read More


I gave another presentation at the Test Driven Developers meetup group on Unit Testing in JavaScript using MVC and QUnit (slides below). Sample source code can be downloaded here. Looking forward to our next event on June 23rd, a TDD Coding Dojo hosted by Olve Maudal. Unit Testing in JavaScript with MVC and QUnit View… Read More


Yesterday I gave the first presentation for the Test Driven Developers meetup group with an Introduction to Automated Testing (slides below). There were 16 enthusiastic participants and we had a very interactive and profitable night. Looking forward to our next event on June 14th on Unit tests for your JavaScript application with MVC and QUnit.… Read More


We used to have several automated performance tests on one of our larger development projects. But we got a lot of false negatives: the tests were failing only occasionally meaning the problem was in the environment, not in the software itself. While we try to ensure that the server is undisturbed during a performance test… Read More


We often use the term technical debt when referring to code  that development have currently postponed but will eventually have to complete at some point in the future. Examples can be a polished installer, a refactoring of the data access layer, an optimization of important queries, improved modularization, and known bugs. When doing agile development… Read More


What is the right price for an agile project? A traditional fixed price contract needs to be based on a detailed requirement specification. And that doesn’t make sense for an agile project, where the ongoing establishment of requirements during the project is an important benefit. Most commercial agile projects, therefor, is based on a time… Read More


As a human being you get value out of every heartbeat. Nutrients are transported out to every hungry cell in your body and at the same time waste products are returned providing feedback to regulation mechanisms. To increase the value provided by the heartbeat, the body can increase the frequency: with a more rapid pulse,… Read More


Small companies, like ZeaLake and BestBrains, need a good and simple tool to manage contact information of customers, suppliers and acquaintances. Those tools are also called CRM systems. You can find big and expensive CRM systems supposedly suitable for big companies. And there are also quite a few smaller CRM systems that targets small and… Read More