Revising a full-blown application platform in cycles of three to six months in the aim of improving responsiveness and usability it ain’t exactly easy: most of the time a complete overhaul of the user journey means a tsunami will hit code base turning it upside down and questions arise at every step. Questions bring doubts. Doubts, in turn, carry uncertainty. Yet, we are doing it. We're literally in the middle of another odissey in the waves of methods changing, schema expasions, processes reshaping.
The Herogami crew is currenly cruising a development milestone we called Turboedit which is bringing even more speed and ease of use to the simple act of, well, editing stuff like cards, projects and other entities. Turboedit will also extend drag'n'drop capabilities outside the kanban: our users will be able to drag everything along, even reordering projects to they likings.
Touching a code base and introducing changes has a name, it’s called refactoring. And it’s brutal!
This morning I read a poem, its title is Invictus, which resounded with the feelings of going through such a hard task. But first, a little digression. I am born italian and speak english kinda like native ‘coz I’ve lived across US and US for a while. Possibly, the most lonely phase of my life, yet the most interesting and compelling. I had a cottage in a small english town, Colchester, I was actually renting the thing from a landlady that was spending her workweek in Nottingham and coming back for the weekends. Monday to friday life was good, saturday and sundays I had her around. Nothing bad about it apart from the smell of pot she was having with her friends. Every damn saturday night! I am not a weed person. I don’t like substances. Hence, I did not like my host. But that’s a different story, anyway. The thing is: I am born italian but I speak english and I am fascinated by the english cultural world and state of mind. Therefore, I happen to read english poets, from time to time.
Enough for my ramblings, back to the poem, Invictus. The most quotes passage of the poem is “I am the master of my fate, I am the captain of my soul”. In case you wonder, that’s the exact feeling software developers experience when refactoring a very large code base like the one of Herogami.
You touch something knowing you’re not going to break it, you’re going it to change it. Herogami has a solid foundation, the code is pretty tough. But of course it has some assumptions. And it works on those assumptions.
When you modify an identifier in a div or another HTML element, when you add a field to the database, when you enter a new method in the code that expands a feature, you know things are going to get stormy. Think regressions. Think that they’re everywhere.
Therefore, every time I touch a piece of code, I think of the Invictus poem.
I am the captain of my soul.
Code is poetry, someone said. It’s true: well written code is poetry. And I am the captain of my soul.