October Development Progress

This is the first of my weekly reviews. I’m starting this to help keep track of what I’m doing and and to set forward goals.

The past two weeks have been a mix of new and old projects, including business-oriented project planning web applications, a World of Warcraft data sync, and two game development projects.

Asana Features

I use Asana to manage my teams tasks. Asana is very simple and flexible, but is missing some features we need to keep track of our sprints and better organize our tasks and Kanban board.

Sprint Reporting

One of these missing features is a burndown chart based off of effort estimation. I’ve been building out our own burndown chart in an Electron app using Google Charts to display the statistics and feeding in the task data from Asana using their API. At this time I’ve got the chart but also a break out of the effort we’ve committed and the effort we’ve knocked out.

This has already proven to be really helpful, as we now have an easy way to track our progress and see the sum of effort completed at the end of the week.

Asana Bot

Asana supports custom fields, but doesn’t allow us to make them required. Requiring the effort estimation for a new task would be ideal. In addition there are a few other events where I would want additional info provided, such as when a task is labeled as blocked, a due date is passed, or a new task is added to the sprint.

To solve these problems, I’m building out a Slack chat bot using the Botkit framework. So far I’ve been learning the ropes of what the chat bot can do and building out the groundwork.

Creating a “Hello World” chat bot is really simple with Botkit. The framework even has a tick event, which I may end up using for time oriented events.

I’m looking forward to writing out the contextual conversations. I want the bot experience to be intuitive and easy. I also want to avoid prompting team members for more information when it’s been supplied, so there’s a set a conventions we’ll need to adopt for blockers and other events.

SDL Android App

I continued working on porting a simple dot-clicker game to Android. It was somewhat easy to port over to the basic SDL library, but I didn’t have PNG support, so my art assets didn’t have transparency.

SDL on Android requires the NDK. My understanding is still fuzzy, but I believe the build process compiles my C++ files into objects and then this is injected into the Android app using the NDK.

I’m not too familiar with Gradle or the Android build process. In the past I’ve used Maven and the build process was just clicking the build button. However, this time around I needed to edit Android.mk files to include the necessary C libraries.

At first I wasn’t able to get my code to build, and it turned out not all the files for the SDL_image library copied over. Once this was fixed, it was a breeze.

The next step for this app is to start finding a fun factor. The game is so simple right now it’s not really a game. You  touch a dot and it explodes into more dots. I have some ideas I can play with to add some tension, like making a rule where certain colored dots should not be touched.

Code Cleanup and Documentation

I spent some time to revisit an old Java Spring app I created that taps into the Blizzard WoW API. I call it the Wishlist app. In addition, I also added comments and documentation to my on-going C++ websocket server.

I’ll have to post about those another time, as I’ve run out of time for this one.