David Bolton

David Bolton was a game developer and a past game designer at MicroProse. He now works as an independent developer creating mobile and desktop applications and writes on programming for About.com and News.dice.com

Coding Challenge Wrap-Up: Who Won at Sevens

Posted In Living in Tech
Dice Coding Challenge Winner Badge
This was the contest I thought would never get started. Although the game Sevens is easy to play, getting the bot-runner code to run the compiled bots proved to be harder that I thought. I solved it for C, C++ and C# easily enough: These are all languages that produced a compiled .exe, but for running Java programs it took a bit longer. Then, when I solved that and started running the contest, it turned out that several of the… continue…

An Employee’s Guide to Open Source Contributions

code-thumbnail
Creating your own project or otherwise contributing to open source is the kind of thing that can help you show off your skills to potential employers. Beyond that, many programmers contribute because they enjoy the work involved or use it to develop new skills. But it’s worth bearing in mind that, depending on your company’s attitude, there can be job-related pitfalls. Here are some things to look out for. Some businesses feel that anything created by their employees — even… continue…

How to Write a Game Runner Program

Cards
I wrote the runsevens game runner program to automate the running of the Tournament of Sevens programming challenge, and it was an interesting little project. It’s designed to do the following: Maintain a ladder of players. Run games of Sevens for a number of players by executing standalone exes. Update the ladder with games’ results. That’s a fairly high-level view. Running each game of Sevens also requires shuffling a deck of cards, dealing them to the players and tracking card… continue…

5 Techniques to Increase Your Programming Productivity

Women working at computer
Every programmer has his or her techniques for being more productive and writing more code. Having been on a three month contract where I wrote and debugged 5,000 lines of code in two weeks, I thought I’d share some of mine. Get Into the Zone It’s not always easy to get into the zone and it often takes about an hour to get there. Research suggests that after every interruption, it takes at least 30 minutes to get back into… continue…

How One Line of Code Forced a Full OS Release

Posted In C++/C#, iOS, Working in Tech
iPhone Update
It’s not often that Apple ‘fesses up about a bug, but the release iOS 7.0.6 came about because somehow an extra line of code got added to a function and broke it. Normally a bug would probably not warrant a complete release, but unfortunately this one-liner broke SSL connection verification. This is the code that checks that the connection is talking to the correct destination and uses SSL and TLS to verify it. You can take a look at the… continue…

A Look at Microsoft’s PCL for SQLite

Posted In C++/C#, Working in Tech
SQLiteSpy
Having grown up in a world where the concept was anathema to Microsoft, it seems strange to think of them now on the side of open source. In 2002, for instance, there was public debate about the GPL with Microsoft taking a stand against it. Now, there’s a part of Microsoft that’s pushing out open source, “Building bridges between Microsoft and non-Microsoft technologies.” Now it has to be said that this does not come from sheer altruism. Microsoft has come… continue…

The 5 Best Ways to Contribute to Open Source Projects

Posted In Looking in Tech
Speed Dreams
So you’ve got a bit of programming experience and some spare time available, and the thought of gaining experience, reputation and maybe even a paid job (hey, it worked for Linus Torvalds!) has tempted you to look at open source and maybe dip a toe in. But where to start? Well, first, you could look through open source projects, find something you like and get into it. As for places to go, there are many projects and repositories. First of… continue…

2 Free C Compilers Worth a Look

Posted In C++/C#, Working in Tech
Debugging in Pelles
It’s surprising how important the C programming language remains, as it’s now over 40 years since it was first created. It’s a simple but useful language that gives you a very low level view of memory and how variables are stored. It doesn’t have any high-level libraries for hash maps or lists; ANSI C only gives you arrays and pointers. If you want advanced data structures you have to either write them yourself using pointers or get third party or… continue…

How Shaders Can Render Awesome 3-D Graphics

Mountains Shader
Creating 3-D graphics involves more than just creating objects — you also have to tell the GPU how to best render them. To do that, you use shaders. Shaders are computer programs that are run on graphics processor units (GPUs) when 3-D images are rendered, that rapidly calculate colors, lighting and special effects. Here’s how it works: The Graphics Pipeline Graphics processing units run a pipeline of processing stages with instructions — compiled shader software — and geometry data. The… continue…

Tournament of Sevens: Week 1 Results

Marathon
Though the Tournament of Sevens coding challenge took much longer to get off the ground than expected, I’ve taken steps to sort out the bot bugginess and the contest is now roaring ahead. The first week included 16 viable competitors, out of 19 entries. One obstacle in getting this going was from Eclipse projects. The problem with them is that their source files end up in different places and the IDE is a bit fiddly building and deploying the class… continue…