My name is Thomas Ballard. Welcome to my personal website. I'm an aspiring computer scientist and entrepreneur. My interests also include amateur design, game programming, personal finance, information architecture, music, movies, small business and more—none of which will make an appearance here, probably. But hey, I have other interests and that's healthy, right?
Who is this Thomas Ballard (Introducing... me)By profession, I'm a software engineer/web developer. At night, batma...er, not batman. Rather, a computer programming nerd with a space fascination...
I met my first Apple ][ computer as a thirteen year old in seventh grade and it cured my astronaut dreams. I worked to earn a Franklin Ace 1000 of my own (probably intended as a family computer) in the eighth grade. (Thank you to my mom and dad who saw my interest and despite not knowing if personal computers would yield a career skill, took a risk on an expensive toy!)
I started learning to program using BASIC to write games. Through high-school and college I studied networking (hardware) and user-interface (software) and gained exposure to various operating systems and platforms.
Then the Internet happened and I left college (and my college job) to work for a start up in 1999 helping build a white-label web hosting service that scaled across brands. It was a great experience with people smarter than myself and opened me to topics outside of my academic focus. Meeting and working with entrepreneurs and business majors filled gaps in my study and inspired me; it helped that I'd been running my own side hustle building custom hardware to help pay college costs.
Fast-forward twenty years later and I'm circling back revisiting projects (such as this) to expand their mission. (1) Support mobile (responsively), (2) update based on evolving best practices, and in some cases (3) simply refactor as my skill set evolves with experience. It seems like coding for "mobile first" is easier when you are starting from zero, but many projects have evolved over time to incorporate technology improvements as they mature and gain broader support. In those cases it can be more work to retrofit without breaking the original mission goals. That said, each project I've revisited has been really fun to rediscover and work through--web development has been a pursuit for many years now and rediscovering code from way points along that journey is a joy--even when you wince at some of it.
- On Facebook at https://www.facebook.com/thomas.b.ballard
- On LinkedIn at https://www.linkedin.com/in/thomasballard/
- On GitHub and/or Bitbucket respectively, at
- You might be able to get in touch with me by email at email@example.com
Personal projects and general fiddling aroundSharing an interest and a profession, I'm in a quandary.
- I enjoy prototyping and fiddling with technology. These are that, not production level work I've done as a software engineer.
- Having done this for many years, this is a fraction and is missing favorites such as work done for customers and/or employers.
- Minecraft Portal Calculator - the game Minecraft has been popular with friends and family. I wrote some basic tools to help parse XYZ coordinates and calculate the placement of gates to pair them as well as helping keep track of the points of interest associated with those gates using a game journal.
- Stock Research Tool - An example using localStorage, import/export via JSON, various APIs to stock lookup services, and playing around with Bootstrap and various ESNext features.
- How to Build a Graph using HTML5 Canvas Tag and JSON - Another quick example, this time breaking down one way to plot graphing data.
- Online Time Sheet Calculator - An older utility I wrote to help track and calculate work hours.
- Trello Board - This one is for me/teammates (behind a login). More recent/active TODO and near-term consideration. ("Self or friend, got five/ten minutes? Put some time in here!")
- Github "Gist" -
Experimenting with these, (unclear if they'll play an ongoing role).
For now, here's an example of a "secret" gist: General study (~5-min time-boxed)
And some rambling...
Online Jigsaw Puzzles using Flash: A Cautionary Tale.
Before the Internet, I never liked jigsaw puzzles. They were messy, required work space, and were a pain to clean up after. My family on the other hand, loved them. How to find a compromise a nerd like me could embrace? After all it was the decade of the aughts, we were living in the future! Heck, we could even animate web pages with Macromedia Flash!
Enter a cool little Flash application that creates puzzles from any photo fed it. We fed it some and wrapped the output with additional features to change the backgrounds for better contrast, provide links, labels and verbiage for search engines, banners, and other fodder from the aughts. All that was needed was a few minutes to kill, some basic hand-eye coordination, and a browser that supported the increasingly controversial proprietary technology.
And, for the sci-fi twist...
Browser support for Flash has been in the process of being phased out for some time now. And we're getting very close finally to having little to no remaining support. While there are alternatives, the cost of cutting over content may mean instead that some content will simply disappear as it's not economically feasible to rework.
The lesson may be that once shiny technology, ecosystems, frameworks can have a limited shelf life. Many developers don't yet have the wisdom to recognize this and can become invested before technologies mature. It can be a delicate balance differentiating between leading edge and bleeding edge. For personal projects like this puzzle example its just hurting some poor grandmother's feelings (shameful). But, if your company spent millions of dollars pivoting to shiny, ...oops?! Given the opportunity, making a technology choice which has broad buy-in and support by governing bodies such as the W3C can sometimes offer a hedge against this kind of forced obsolescence.
Over the years it has needed minor revisiting, but what I appreciate about it is just how little has needed to change in order to keep it running over two decades of changes to web technologies. To me this is at least a rudimentary example of how choices during the development investment can have long lasting effects and pay dividends over a very long tail.
Here are some customized variations that use the base game engine, feeding different themes, word lists, etc. While there are more recent examples of web games, consider this was written around twenty years ago and still works (for the most part) without a lot of changes. Hopefully code written today will enjoy the same longevity.
- Play 50 US States List Hangman
- Play Resume Glossary Hangman
- Play Health Insurance Glossary Hangman
- Play Statistics Glossary Hangman
- Play Popular Tourist Vacation Destinations Hangman
- Play Bible Study Hangman
- Play Real Estate Glossary Hangman
- Favorite Artists and Eighties Bands Hangman
- US State Capitals Hangman
Back to top