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

Building a Dungeon Generator in C#

Posted In Programming
Screen Shot 2015-02-17 at 2.57.03 PM
Procedural dungeon generation is a fun exercise for programmers. Despite the crude interface, such games continue to spark interest. A quarter century ago, I wrote a dungeon generator in procedural Pascal; now I’ve taken that old code and converted it to C#. (It’s amazing just how fast it runs on a five-year-old i7 950 PC with 16GB of RAM.) If you want to follow along, you can find my code for the project on SourceForge.  The first part of the… continue…

Are Freelance Developer Sites Worth Your Time?

Posted In Programming
shutterstock_McIek
Many websites allow you to look for freelance programming jobs or Web development work. (Hongkiat.com, for example, offers links to several dozen.) The problem for developers in the European Union and the United States is that competition from rivals in developing countries is crushing fees for everybody, as the latter can often undercut on price. This isn’t a situation unique to software development; look at how globalization has compelled manufacturing jobs to move offshore, for example. Check out the latest… continue…

The State of D in 2015

VisualD
A large company can push a programming language into the proverbial limelight: just look at C#, Java, and Objective-C and Swift. But a few programming languages can punch above their weight without any help from prominent companies or developers. While some of these languages achieved early success only to fall by the wayside (e.g., Delphi), one language that has quietly gained popularity is D, which now ranks 35 in the most recent Tiobe Index. Why D? Inspired by C++, D… continue…

Scripting Languages You May Not Know

Posted In Working in Tech
shutterstock_wrangler
Scripting languages are used in everything from games and Web pages to operating-system shells and general applications, as well as standalone scripts. They allow the harried developer to do his or her job without engaging in the full compile-test-edit lifecycle; with a script, it’s just edit-and-run. Many of these scripting languages are common and open to modification. In a gaming environment such as Skyrim, the developers relied on a scripting language called Papyrus; Microsoft Office depends on Visual Basic for… continue…

Is Microsoft Truly Embracing Open Source?

Posted In C++/C#, Programming
visualstudio
Back in the day, Microsoft viewed open source and Linux as a threat and did its best to retaliate with FUD and patent threats. So it must have been galling to its executives as, over the past 20 years, the bulk of the Internet came to rely on Apache Web servers; while Microsoft now leads in hostnames (according to Netcraft), Apache remains ahead in terms of hosted active sites. And then a funny thing happened: Whether in the name of… continue…

Is C Still Relevant in the 21st Century?

shutterstock_Family Business
Many programming languages have come and gone since Dennis Ritchie devised C in 1972, and yet C has not only survived three major revisions, but continues to thrive. Large chunks of Windows were written in C, along with most of Linux. But aside from this incredible legacy, what keeps C atop the Tiobe Index? The number of jobs on Dice.com for C programmers is not huge, and many of those also include C++ and Objective-C. On Reddit, the C community,… continue…

5 Top Python GUI Frameworks for 2015

pyGUI
As a Python developer, sooner or later you’ll want to write an application with a graphical user interface. Fortunately, there are a lot of options on the tools front: The Python wiki on GUI programming lists over 30 cross-platform frameworks, as well as Pyjamas, a tool for cross-browser Web development based on a port of the Google Web Toolkit. How to choose between all these options for Python GUIs? I started by narrowing it down to those that included all… continue…

Substitute PostgreSQL for Your NoSQL Needs

pking 4th shutterstock
Over the past five years or so, NoSQL databases have enjoyed a spike in popularity compared to relational (i.e., SQL-driven) databases, thanks in large part to industries such as online gaming. A typical NoSQL database can write data 10 or 20 times faster than a relational one, although this speed comes at a price: The data is cached in memory longer before being written to disk, so the data update remains inconsistent longer. As a result, applications that require fast… continue…

Python 3 String-Processing Causing Problems?

Python
Widely known as a general-purpose programming language, Python is excellent at string handling—but a few things have changed between Python 2 and Python 3. This article is a reminder of what Python strings can (still) do for you, as well as a look at what you need to know about Python 3 strings. We discussed some of these Python 3 changes in a previous article. Python 3 relies on Unicode Characters, more specifically UTF-8 as the default source encoding. This… continue…

Here’s Why Apple Rejected Your iOS App

iOS Screen
After six years, do you think the number of submissions to the App Store has stayed level, climbed, or fallen? As demonstrated by this chart of the App Store’s metrics (hat tip to Pocket Gamer), the number of submissions per day continues to rise, likely driven by a combination of new apps and updates of existing apps. (There was also a surge over the summer as developers prepared for the launch of iOS 8, the latest version of Apple’s mobile… continue…