Technical debt is the consequence of several actions (or inactions) in web application development:
The nasty reality of technical debt, as opposed to financial debt, is that you incur technical debt simply by doing nothing, and the payback tends to grow exponentially the longer you leave it.
Technical debt is a by-product of rapid, continuous technological change; with no foreseeable end in sight.
Fortunately, there is a simple remedy - treat your web presence as an investment in your business and your future, and know that the act of nurturing also gives you the opportunity to multiply the benefits that led you to build a web application in the first place.
Each year I write down a short list of goals, and at the end of the year I rate my performance. I have been doing this privately for many years, and starting in 2019 I am going to move this process into the public domain.
Following from efforts in 2018 to diversify some project work away from our hugely successful, 14 years long project Live Platforms, 2019 will usher in a complete separation of concerns between the two companies as Live Platforms seeks to become a self-sufficient entity.
We will need to spin off project management, VCS and infrastructure accounts, slack etc; hire internally in Live Platforms, replacing skill areas currently covered by Coding Labs personnel; and tighten the commercial terms between the companies.
Design is one of those tricky subjective areas of development, where sometimes a more programming orientated developer can pull off a pretty UI by borrowing from the right example, but other times they spend a bunch of time spinning the wheels, not really knowing why something looks like a monkeys butt.
Whilst we have stumbled across some exceptional resources to "codify" design, ideally you have a dedicated designer at the table who not only can do great design work, but also has a deep understanding of the project and the particular UI and UX concerns.
This frees up the developers to focus on what they are really good at: making things work!
We have tried a number of approaches to filling the design skills gap over the years, often times a client will BYO their own designer, other times we work with freelancers; sometimes a developer left to their own devices hits a home run, other times not - but it has become abundantly clear that the best long term solution is to bring a designer in to our tent permanently.
Adding staff is a pretty expensive exercise, so to accomplish this goal we need to continue the work of broadening our client base, as well as taking responsibility for more design tasks in a project.
I also want to investigate a line of products, such as SaaS apps, eBooks, self-assessment tools, website audits etc; all with the aim of developing revenue streams that are outside of the traditional our time for your money equation.
2018 was a fantastic year for our coworking office, Burleigh Space. After putting in the groundwork in our first year (2017), all of sudden new members were finding us without any advertising spend, we hit 100% capacity on our full-time desks, and the concept of coworking seemed to be well understand by everyone who stepped in the door.
In 2019 we want to continue to build on that strength through deeper connections into the Gold Coast creative and tech scenes, and really cement Burleigh Heads as a technology hub to be reckoned with.
To raise the profile and awareness of Coding Labs, we will:
Following a Xmas holiday read of Basecamp's It Doesn't Have to Be Crazy at Work and a re-read of their excellent workflow post, I am feeling inspired to iterate on our current project planning process.
In 2018, we moved from a continuous sprint cycle all the way out to 3 month milestones, covering a number of epics and smaller tasks.
At times a 3 month window was helpful for productivity and focus, and we did get better at scoping and execution as the year progressed - other times the gap between the planning, build and deployment stages was too long, and inevitably all the pet hates of feature creep, over-ambition, changing priorities and fatigue were accentuated by the longer periods of work without any opportunity for reflection.
It also made it quite difficult to address unscheduled consulting work and led to some interesting conversations around how soon we could start on new projects and features.
On the planning side, we only gave ourselves 1 week to plan the next 3 months which generally meant that some tasks were lacking clarity and project management continued to crop up week-in and week-out, rather than going gracefully in to the background while we knuckled down.
The shiny new blueprint for the 2 & 6 workflow is as follows:
The 2 week review / preview period allows the team and relevant stakeholders to see what was learned from the previous build stage, do any cleanup, engineering or exploration work, and help to formulate and pitch ideas for the upcoming cycle.
The winning ideas will be a mixture of small and large batch items, and each completed idea will be shipped when ready.
It is significant to note that every story in the backlog and every idea sitting in somebody's brain serves only as a potential candidate. The deck is cleared every 8 weeks, and we make a fresh assessment on what is most important in the current moment, without pre-committing on anything.
As we are a small team, we will mostly work together on everything, however as the team grows we will seperate the small and large batch teams, rotating employees at the conclusion of a cycle ad-hoc.
In the first quarter of 2019 I hope to see better defined planning, a higher rate of delivering on what we planned, and improved communication and expectation setting.
Both business development and account management have been areas that have received varying levels of attention (usually not enough) as I have juggled the many balls of small business ownership.
With Jerrell onboard, we now have an opportunity to invest effort consistently in these areas.
On the business development front, we will experiment with building a referral system for complimentary businesses (such as marketing agencies and Wordpress specialists), where they can pass on projects that exceed their own technical capabilities.
We will also investigate some more traditional marketing avenues, without becoming annoying wankers in the process.
Oh and swagger. Loads of swagger!
For our clients, they will get the piece of mind of having a point person to talk to about their infrastructure, as well as having increased opportunities to collaborate with us more than is currently possible.
Well, I think that's a wrap! Who doesn't love finishing on a Tim Ferriss quote?
Doing something unimportant well does not make it important.