~ 6 min read

Four Years In Four Minutes

A summary of four years of exploration and development time in a four minute read.

After over fifteen years of consulting, I’d certainly seen my share of enterprise development work. After leaving my last consulting firm, I was ready to try something new.

My goals after leaving: 1. take a bit of time off, and 2. come up with something fundamentally product based, not service - especially not something based on a $/hour model.

Sounds simple, right?

The first - taking a bit of time off - is something that I’m still struggling with, honestly. This uncomfortable feeling that I need to be doing something. All the time. If I don’t, then something… bad… will happen. It’s transparently an artifact of over three decades of worry, and while I won’t go into details, suffice to say it’s a thing and move on. I did take a break for a bit, and I still try to leaven in down time. The pandemic has, of course, made all of this much, much more challenging. What is down time when you barely leave the house? A lot to unpack.

The second, coming up with something product focused? Here are some of the things I’ve explored, roughly in order.

Mobile game #1 (~3 months)

This was my first pivot away from enterprise development. I used libGDX to build a prototype of a game based on a (pure royalty based) license. This was a pretty simple affair, but I found out very quickly that the game… just wasn’t fun. Learned a lot about how low level game dev worked, however.

Mobile game #2 (~3 three months)

The idea for this was a simple prediction market game. Players would guess A or B outcomes, and win points if they were right. The front-end for this was done in Unity, which forced me to learn the (then current) Unity UI system. The back-end was done with Spring Boot.

This game was fun in the moment - for example, at parties people loved reading out the questions and polling their friends - but had essentially zero return players. Basically, nobody played if I wasn’t standing right there, watching.

Video Job Board (~3 months)

The idea for this was to build a site where employers could post a video version of their job posting. A brief, human version of the JD from the manager, along with a few Q&As about the job. The idea was to skip a lot of the back-and-forth in interviewing.

Recruiters loved it. Hiring managers (the ones that would actually be in the interviews) absolutely hated the idea of being put online in a video. Also huge legal review & liability problems - people saying horrible or even illegal things f2f to a potential employee is one thing, a video makes it public.

Interestingly, I was able to build a very robust, fully-functional job board and get the videos working quickly using a combination of WordPress, a commercial job board plugin, and Vimeo. It looked great and was very easy to assemble.

PC game #1 (~15 months)

BlazeSky - Asteroids the RPG concept. Built in Unity, published on Steam. Very happy with how it went technically overall. Tons of things I always wanted to do - full voice acting, localized in eight languages, rich quest system, great visuals with complex lighting…

The game was launched during the late summer of the pandemic. This meant no f2f launch - instead of showing it off at a small booth at PAX in Seattle, it was a purely digital launch. Not good.

Did… ok… by indie gaming standards, which means that it worked out to nowhere near minimum wage… but hey, it’s a dream project! Or something.

JavaFX Automatic Updates/Crash Reporting/Analytics (~3 months)

Decided to try building regular, old fashioned desktop software. Looked at doing it with JavaFX. Was surprised to realize that missing out on crash reporting, analytics and updates (like that available from Unity/Steam) was a real bummer.

Built a complete working prototype for automatic updates - including publishing a related Maven plugin and JavaFX template project, as well as a Spring Boot backend w/Amazon S3 integration.

Unfortunately, the usage levels for JavaFX are so low it’s hard to make a real business case. For example, while the Java community on Reddit has roughly 228k members (and Learn Java just over 100k members!), the JavaFX community has… 3.4k members.

So. That’s roughly two and a half years worth of effort scattered over a roughly four year period. The bulk of the remaining time was what I’ll call the personal equivalent of basic research - learning how to use the tools, learning art, visuals & lighting, new languages, and of course 3D… everything. A lot of time, frankly, was lost due to the generalized stress of the actions of the last administration and the obvious stresses of a global pandemic.

Ironically enough, right now I’m back to working on some ideas involving simple web applications - ideally, something that can be launched and tested very quickly. Anything I can do to cut the timeline for a basic MVP from, say, three months to four week would be fantastic. One reason I’ve shied away from web apps for the last few years is just how… miserable… modern JavaScript development has become. I just found a framework called HTMX that is an absolute joy to work with - so, back to doing a bit of basic research to figure things out, and then on to the next thing. If I can build a really nice, pretty front-end using Spring Boot and Thymeleaf but skip the React/Angular/npm etc toolchains? Fantastic.

One nice thing? Web apps, especially anything that has an opportunity for a subscription - are comparatively easy to market (and do research on) using keyword search volumes and ad rates provided by Google. That kind of data is very hard to get in the necessary granularity for gaming.

Anecdotally I’ve heard that a typical angel or VC investment firm expects only 1 in 10 investments to be successful. If you count gaming as a single venture (and ignore everything I’ve done before), I’m only three in, and gaming is still a WIP.

So, all of that and back to web development and keyword research.

Onward and upward.