Are you 100% sure that your code works?

During private pilot flight training every student must complete a cross-country flight at night over a distance of at least 100 nautical miles total. A student of mine came to this point in his training and we planned a cross-country Read More …

A quick introduction to PHP anonymous functions

If you haven’t used the anonymous functions introduced in PHP 5.3 you are missing out on a powerful tool. In this simple example we are given an array of names to display. But some of the names are not capitalized Read More …

Understanding PHP DateTime

Handling the date and time in a program is not as straightforward as it may seem. Months can have a different number of days, and leap years add a day depending on the year. Then there are leap seconds from Read More …

Debriefing after a software project

In aviation, especially flight training, it is important to debrief after a flight is complete. The debriefing is an opportunity to talk about the things that went wrong and ways to make the next flight go more smoothly. When I am Read More …

You don’t need to include() files in PHP

Autoloading was introduced in PHP 5 to give developers a simple way to include classes from other files without having to worry about putting include statements everywhere. Take a look at this simple application below. include_once() is used to include Read More …

Bookware Passphrase

Last week I explained how Diceware passphrases work, and why they come with a built-in weakness. The weakness is that it takes a lot of words to build a secure passphrase. I decided to try to come up with a Read More …

Rolling the Dice with Password Selection

One day you will decide to change your password. When you do it is likely that you will be tempted to choose a word that means something to you. This might be the name of your cat or the street Read More …

Software Process Checklists

Developers need more checklists. As a flight instructor I became accustomed to using checklists in a particular way, and I have begun carrying their benefits into my work with software. Recently, the company I work for began transitioning to a Read More …