Matthew Warner

You Sank My . . .

battleship_illustrationFrom the I Am Secretly A Geek Department, today I launched an online player-versus-computer Battleship game I programmed myself. Click here to play.

I know what you’re thinking. Why the hell did I so horribly violate my available time to build something like this? The damage is worse than you think. I wrote over 2000 lines of code in HTML, PHP, Javascript, JQuery, and CSS, and I expended enough hours to have written most of a novel. And it’s not like I’m opting for a career as a game designer or that I expect to make any money from the endeavor.

It began a couple years ago. I had a great time making the Haunted House Adventure, a puzzle game set in my home, and wanted to try something else. Deena one night suggested we play a pencil-and-paper version of Battleship to amuse ourselves, and that’s when I wondered if the experience could be duplicated online.

I gave up on a player-versus-player version after a couple months. While I had a member-management system in place and dreams of turning it into a Facebook app, there were two fundamental problems. First, it wasn’t completely hack-proof. How could I safeguard private user data and prevent people from cheating? Second, people would get bored playing online Battleship as a turned-based game unless they were both online at the same time.

So, I put it down until this year, when the idea came up of programming an artificial intelligence to play against. From there, I learned things like the value of using flowcharts to work out boolean logic before ever laying down a single line of code.

I don’t have a good answer to the question posed above. Why spend time on something like this? Sure, it has collateral benefit to Deena Warner Design in that I’ve sharpened my object-oriented-programming skills. But this wasn’t “writing” unless you consider programming to be writing.

Well, I don’t like leaving things undone, for one. But it was also fun. Why spend time on any creative project in which creation is the only point?

The pleasure of making something for the making’s sake is an attitude I hope to cultivate in anything I build, whether it’s writing-related or not.