Tomorrow is my last day of class at Hack Reactor before the break starts. I'm absolutely exhausted. There are so many things to do and so many things to learn, that I've decided to list them:
- Contribute to an open source project
- If I can get some time with our instructor, get started working on his project, bound.js
- Do some contract work for a friend of a friend who recently got in touch with me
- Improve my RoboDuel game
- Work through more of the programming language design course at Nathan's University
- Clean up a couple of things on Toshuo
- Meet up with a couple of cool people I've recently met at meetups
I'm especially looking forward to that last one.
I put significantly more effort into Block Merchant than I did into the last game. The programming logic was more difficult; I didn't get it working properly until after thinking of a way of making a grid system. There was actual artwork, however simple involved. I also made made a shiny title screen composed of multiple alpha layers. I definitely learned a decent amount making it, but it wasn't well liked at all by the few people who played it on Kongregate. I got some feedback from them at least, but it is still a bit of a bummer. I think it's possible that the bar for free flash games is higher than it was six months ago. There are so many others such as myself who have followed various tutorials and started making games that the casual gamer's patience for familiar concepts is much less than it used to be.
I see two ways to go from here.
- Make improvements. It still won't make much of any revenue since it's not that novel. It will be much better liked after getting some polish, though. Also, it might be good for me to try to actually make something a bit higher quality.
- Make a new game. I'm thinking of programmable robots that you fight against each other. It would probably have more of a chance of gaining some traction. I'd also learn more from a new project than continued work on an old one.
I didn't get much programming done in November or December. I did pick up a copy of The Land of Lisp, which was awesome. I'm not quite sure it was ideal for a beginner such as myself, seeing as I used nothing but the REPL for two weeks not knowing I had other options and found myself bogged down about 40% of the way through. The author's enthusiasm and ability to make interesting exercises out of so many otherwise dry activities was great. I may return to the book later.
One reason I didn't do so much coding was the fact that all of my acquaintances here in the Beijing hostels seem to have social lives that revolve around drinking at bars. Some of them are great people... but you really don't have much to show for a late night at a bar the next day, except maybe some good memories. For that reason I think it's much better as an occasional event than a regular way of life. Tons of my buddies in Taiwan loved to drink, but the two groups I regularly met up with were centered around either strategy board gaming or outdoor endurance sports. Surprisingly both groups included a lot of computer people and some artistic people as well. Beijing is a big city, though, and I'm sure those people have to be around, with the possible exception of the distance runners.
Another thing that slowed me down is that my Chinese classes got way tougher than they had been before. Our teacher is great, and she's willing to regularly correct our essays, but that means we regularly have to write essays. Even now, I've got all kinds of non-standard Taiwanese phrases and the occasional traditional character popping up in my writing. I guess it's a good thing to have a teacher tell me though. I must have said 綁鞋帶 a five or six times since getting to the mainland instead of 系鞋带, but nobody pointed it out to me since they could all understand me... and that's just one of hundreds if not thousands of phrases I've got a little bit off.
One area in which I made a great deal of progress was drawing. Somehow, and I don't even understand how myself, I went from barely being able to do anything realistic to being able to draw a decent portrait given enough time, or a potted plant in 15 minutes or so. The aspect of this that surprises me most is that absolutely nobody helped me at all with it. I literally just got on google, searched "learn to draw" and took it from there.
Right now, I'm feeling energized. I've had time off from exercising the coding part of my brain and now I've got the desire to go at it again. I'm going to start working on that game like Tetris with a shop.
I've been inspired by Patrick's example, and have decided to share my thoughts and business results as I proceed with this endeavor. Here's the first earnings report:
I recently uploaded my first game to Kongregate, Urban Defense. It was based on the tutorials, and it was an extremely simple side-scrolling shooter game. There are under 5 minutes of game play. It wasn't just what was covered in the tutorials, though. I found some background music to add to it and also coded some wingmen that will join your main ship and help you fight against the alien invaders.
Since I released the game exclusively on Kongregate.com and I used the Kong API, they share half the ad revenue. My portion came out to $2 for the first day. Since the new games always get a bit more traffic, I suspect the lifetime earnings for this game will be under $10. That's not much, but considering I hadn't ever used flash before and I was able to build the game in 3 days, I don't feel too bad about it. In order to make this a self-sustaining enterprise, I figure I need to get about 14,000 plays a day. That would earn me about $20USD/day and cover my living expenses here in China.
I have two ideas for my next project:
1) Maybe I could do a slightly harder game such as a Tetris or Arkanoid clone.
2) Or, I could make further improvements to Urban Defense, such as a more weapons and levels.
I'm kind of on the fence. I might learn faster from making another game, but I could probably make a more enjoyable one by polishing the one I already have.
For the past several years I've been working in the EFL industry, first as a teacher and then later as a manager and part-owner of a school. While it has been rewarding seeing the progress of my students and the results of various curriculum changes, it has also left me unfulfilled in other ways.
From a business standpoint, teaching English to children in a place where the fertility rate is about 1.2 doesn't make much sense. More importantly, TEFL isn't doing much for me personally anymore. I haven't been learning as many new things as I had from previous work and while my Chinese and Taiwanese improved through living in Taiwan, my other thinking skills deteriorated. Sadly, I've mostly forgotten how to speak Japanese and I don't remember any math I learned after the age of 15. It's just not worth letting my brain continue to rot while I earn under 30k/year. I'm out.
So, what does a 32 year-old guy do when faced with no real career or money making abilities? I'm going to learn how to program. I did a bit of tools/sysadmin work way back in the day before graduating and had some aptitude for it at the time. While I bring my 6-years of living in Taiwan to a close, I'm going to start learning some ruby, and Ruby on Rails. I'm drawn to rails mostly by the fast-moving community behind it, but the ruby language itself is also appealing to me. It reminds me of Perl. Hard things are doable and easy things can be done quickly.