07 September 2020
Notes on a personal software development cycle
I'm now taking and enjoying a MOOC that combines lectures and coding projects. I find these to be engaging learning experiences, providing good mental exercise. There's nothing like the sensation of "gee, I've now made this work". That said, I've watched myself do this many times, and observe some patterns. When approaching what appears to be a complex problem, I'll first tend to procrastinate, waiting for just "the right" combination of alert and undistracted time for concentration. Sometimes, I'll get to the point of first digesting the problem statement and contemplating its possible solution, and will then initiate another procrastination cycle. Eventually, I'll get into coding the project, and will become engrossed in populating the needed modules. I'll get to the point of a test run, and will try to deconstruct errors via inspection and by inserting debugging print statements. Sometimes, discussion forums will offer useful insight or pointers. I'll itch to complete the process. Finally, I'll (at least usually) get a set of working pieces together and obtain the desired result. It feels like a satisfying milestone, even as I'm aware that the MOOC authors have crafted the materials with the expectation that their students should be able to reach this point. I'll reflect on renewed appreciation of the fact that such resources are available. Thanks, 2020 Internet!