What is a "Sprint"?
What is a “Sprint”?
We’re testing a software development model called Agile. Some of you may be familiar with it but for those who aren’t, a quick summary is below:
https://www.youtube.com/watch?v=502ILHjX9EE
Our recent “2-Week Plan” is derived from this model, in which collections of work are broken down into “sprints”. Last time was Sprint 1, this next one coming up will be Sprint 2, etc.
We’ve experimented with this before to some degree, and I’ve made some adjustments this time around to keep things more sustainable but also to force more structure and discipline into the work that is committed to. Although it wasn’t designed for teams as small as ours, there is enough that we can take from it to be useful.
I’ll spare you further details, other than to say that breaking down our work in this way not only helps us put definition to individual features and requests, but it also helps us strategize on longer term objectives.
Updates on IC Dev Sprint 1 are below:
Planned Work
This is the work that was committed to.
-
Updates on the game’s progress, so that players are aware of dev activity.
-
This new format is proving useful already, and I intend to provide you with bi-weekly forum updates.
-
I’d like to consider doing a more casual live session “IC-Radio” style, but monthly instead of the weekly sessions we were doing before. This would also help stimulate community engagement generally.
-
-
Set up daily backups, so that we have better rollback options after crashes.
-
We’ve got daily backups ready again, and I’ve tested and verified our recovery process.
-
I’ve logged future work to look into dedicated database hosting.
- This will decouple the db from the web server, which will allow even shorter rollbacks, help us scale, amongst other benefits and further improvements to disaster preparedness.
-
-
Set up server monitoring and alerts, so that problems can be identified and resolved before they become critical.
-
We now have alerts across several server metrics that will send me an email if anything starts to look dicey.
-
There is follow up work to analyze current performance bottlenecks and test high-load simulations so that we can more proactively optimize code and/or add more server resources.
-
-
Get development environments to be as close to production as possible, so that development and bug fixes can happen more efficiently and with less risk.
- I de-prioritized this work for now, as it ended up becoming more about optimization than stabilization. It’s still very important, but didn’t align with this sprint’s focus and goals.
Unplanned Work
This is for work that was either related to but separate from the planned work, or was unplanned altogether.
-
I’ve added https://status.imperialconflict.com/ which uses a 3rd party service to monitor and report our server status.
-
I’ve logged future work for the following:
-
research further stabilization improvements.
-
create a more useful maintenance page to replace server errors for planned downtime.
-
investigate a bug where people join and end up without a family.
-
-
I fixed a server error from protection mode check on the attacking empire, which could cause some triggers to fail.
-
I fixed a bug that prevented you from connecting your account to Patreon.
-
I logged future work from private discussions with players about messaging, moderation, and toxicity.
-
I logged future work from private discussions with players about impersonation issues with anonymous play.
-
I spent some time helping a returning player with questions about leadership and inactivity.
Sprint 2 details will be posted soon. As always, feedback is welcome.