🎉 Celebrating 25 Years of GameDev.net! 🎉

Not many can claim 25 years on the Internet! Join us in celebrating this milestone. Learn more about our history, and thank you for being a part of our community!

Documentation Is Your Friend

Published May 02, 2020
Advertisement

Today I took the time to catch up on documentation. As an electrician, you live or die by it. In the Navy one of my many duties included updating it. I know it is hard work, but I also know that you or someone will always thank yourself for doing that work. Part of what decides how long a piece of software's lifecycle lasts is how well designed it is. The other part is how well documented it is. These directly effect how much time it takes to fix bugs and extend functionality. I am a one man development team (at least for the moment) so it would be a very bad idea to bog myself down by not having proper documentation, yet this is exactly what I foolishly did, and I believe that was the biggest reason I got stuck. Pounding out these UML diagrams was liberating. First, it made me appreciate just how large this project has grown - it is well beyond the scope of the v1 alpha build. Second, it lets me data dump most of this out of my brain safely. Up until now this is what I was carrying around in my skull. It had noticeable effects on my productivity. It is a bad idea to work like that, and I won't be making this much progress following emergent design without documentation again. It is just too much of a mental burden. Besides, at some point I was going to have to stop working on this anyway and it might be years before I come back to look at some of this code again, by which point I might have no idea what I was thinking at the time.

So moral of the story, documentation is your friend. This is one of 6 UML diagrams I drafted today - all were developed using lucidcharts, I am beginning to think their service is as important as GitHub after today. PDF versions of these are now in the Github repo under the /Documentation/UML directory so the documentation is now inducted into version control as well.

Valkyrie.App.Model Heirarchy
1 likes 0 comments

Comments

Nobody has left a comment. You can be the first!
You must log in to join the conversation.
Don't have a GameDev.net account? Sign up!
Profile
Author
Advertisement
Advertisement