Agile Times

This has been a trying month. Not only has my class (Agile Software Engineering) had a lot of material to cover, but the nation where I live has been in the grip of a pandemic. Where just going to school and/or looking for work can be a full-time challenge, trying to navigate a society in an indeterminate state of possible shutdown can add extra challenges.

That said, for me, a lot of this month hasn’t changed.

I’ve acquired some Agile Framework education before, but that was always either underemphasized or rushed through so that we could move on to other topics. I do feel as though I learned from this class, and have a firmer grasp of Agile methodologies. But this class covered more than that.

I have also learned some information regarding monetization. Creating games and publishing them for free is fun and educational, but at some point, even developers need to pay their rent. As my job situation doesn’t seem to be getting any better, my best hope might be to try to earn money independently. Learning about different monetization options was definitely useful. I love programming, but I have many other things to learn, and left to my own devices, I might just focus on the programming and forget the rest.

I did some further work on my Capstone, also. I have submitted a Design Plan. I still need to finish a working prototype to submit to my technical advisor, and I think I’m supposed to find a design advisor. This is something to work on in this coming week.

I did create a Kanban chart on Trello for my project. This activity helped me break down the pieces I need to work on and sort them in a reasonable order. Charts like this are often better for a team, but I’ve found in the past that it can be useful in organizing solo projects, also.

I have also given a lot of thought to expanding my existing projects. Some of the games I’ve created for class are cute little games that are great for getting foundational knowledge, but some are also good beginnings to what could be fun and useful endeavors. Going forward, my main focus in this regard needs to be on my capstone, but when I’m not working on that, I can work on my other projects, expanding games, finishing up games that are nearly ready to go live, and coming up with future projects. This could become exciting.

End of an Error?

I won’t say that this past month has been easy. The difficulties are varied, but mostly understandable.

Workload

The workload for this month was intense. In theory, I had to write two video games. In practice, I had to test several frameworks to see which ones would work on my computer without spending too much time chasing down details. Then, I had to learn two frameworks. Then, I had to write two games, one on each framework. Then I had to write three more programs using sensors. As it happens, although the phone I had ten years ago was loaded with sensors, most of those sensors are no longer available in many modern devices, including my gaming tablet and my personal tablet. I therefore had to determine which sensors I could use for my software.

Issues

After creating most of my second game on one platform, I learned that the platform has problems detecting Android hardware sensors, which were part of the specification of that game. I had to learn a new platform and recreate the game on that one. I believe that my experience with the first helped with the second a little, but they are quite different (Unreal Engine and Unity). Also, both platforms had bugs, as did the one I used for my first project (Godot), but Unreal Engine seemed to have the most. All of this, on top of a Pandemic, added extra levels of challenge.

Time Management

Time management was difficult. Ideally, I should spend my time, at least a full “work day” per day, working on my projects. Realistically, I have been searching for jobs, juggling appointments and interviews, and attempting to survive. Also, due to the pandemic, my father was forced to move, for which he required my assistance, as he no longer has an automobile. For this same reason, I take him to his doctor appointments. Still, I think I managed to get a handle on time management. I also managed to prioritize and find a balance.

What I Learned

I learned quite a bit, I believe. I learned three platforms, one language (enough to suffice for now), and worked with making separate tools work together (such as Blender and Python). I also got more ideas about games (and related content) I want to create. I learned some methods of resource conservation, which is important for mobile applications, although I still need practice. Modern computers make for lazy programming. I also learned some testing techniques, although they were difficult to implement in the platforms I used.

What I Achieved

I created three games. I obtained assets that I want to use for my personal projects, when I have time to work on them. I created some basic and skeleton apps that I can use to build larger, more useful apps. I also spent some time on Discord, getting to know people related to my schooling.

Capstone

I believe at this point, based on my experiences this month, that Unity may be my best option. It has the best performance of the platforms I used this month, it supports 3D better than any except, possibly, Unreal Engine. It also has the scripting support I’ll need to implement some of the advanced features I want. I’ve given some thought to how I’ll accomplish parts of the Capstone, but I haven’t actually started writing any of them yet. I’ll need to start working on some of the pieces of the overall project, such as planning an internal scripting “language” and planning details of my options. I also need to start building some of the importable assets, such as meshes and textures.

Capstone Advisor

I have communicated with my Capstone Advisor this month. He happens to be my current professor. We discussed things via Discord, although most of it related to this month’s projects. I did get to know him a bit better, which I believe will smooth our relationship going forward.

Moving Forward

I think I have a better grounding for building some things I need for my advisor, such as some prototypes and details. Hopefully, I’ll have more time in the coming month to work on these details, as this month was a whirlwind.