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

Is Mobile Game Development Worth the Effort?

Flappy Bird
The developers who got into iOS a few months after the App Store was launched had it a lot easier than their brethren today. A few months after the store opened, there were just 10,000 apps available. Today, that many are launched in two weeks. That means more than 1,000 new apps appear each day. That’s a phenomenal figure – and not what anyone with a low marketing budget wants to hear. Another challenge: Roughly one in five players who… continue…

May’s Programming Challenge: Resource Trading

Posted In Living in Tech
Roman Trade Network
In this problem, you are given a 20×20 map that contains 20 trading islands, each occupying a square. Each island is a trading port for gold, iron and wood. The map also contains a few reefs and uninhabited islands. The goal is simply to sail a ship from the top left square (0,0) and eventually end up at the bottom right (19,19) having earned as much as possible. Click here to find Java developer jobs. Your ship can sail to… continue…

PEA: A New Method of Encryption?

Enigma Machine
Irrespective of the algorithm used, most encryption systems take plain text and a pass phrase and then create an encrypted file. Depending on whether it’s symmetric or asymmetric, either the same pass phrase is used for decryption or another one is needed. With PEA (Programmable Encryption Algorithm), I propose an encryption scheme that takes a pass phrase and a plain text file and outputs an encrypted file and a file of decryption instructions. The two files are then separated and… continue…

How Long Does It Take to Learn a New Skill?

Posted In Looking in Tech
BlackJack Program
When employers say they need specific skills, job seekers often reply that an experienced IT professional can learn a new language or technology quickly. But is that really the case? It may be if the skill in question is closely related to your experience, but if you’re looking to pick up a new language from scratch the challenge is much greater. There aren’t many programming languages general purpose enough so that when you learn one you may never need to… continue…

A NoSQL Alternative: Disk Folders

Folder
One of the joys of programming is that there are often many different ways to accomplish the same goal. That comes in handy when you’re not feeling too confident about a given solution. Consider this problem I recently faced. I was choosing between a relational database or NoSQL for a game server I was working on. Whichever I chose would contain a couple dozen tables and would need to support up to 100,000 users. My real-time needs were very modest,… continue…

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…