2020 Agenda

Steve Thomas
Steve Thomas · 9th Dec

The big picture agenda for 2020.

2020 Agenda

#1. Bootcamp as a service

In 2019 we had very strong demand for our Bootcamp program, where we take inexperienced developers and throw them directly in the deep end, learning the tools and processes we use to build web apps at Coding Labs.

In each of the 3 programs we ran in 2019, our curriculum got a little better and we found ways to improve outcomes for the students.

The program is very much dogfooding our own problem we have in finding and training local Laravel developers.

So how can we multiply our strengths with Bootcamp?

  • Build an e-learning platform for students to access, hosted on the Coding Labs website. Features will include progress tracking, quizzes and an improved curriculum structure.
  • At the start of each week I found myself running through essentially the same spiel when introducing topics. This can move to a pre-recorded video format.
  • By moving the bulk of the course online, we are enabling students to be both self-paced and remote.
  • Participation in Bootcamp will be mandatory for Coding Labs employees. This will reinforce and verify existing knowledge, and underpin a culture of sharing and teamwork.
  • Bootcamp will be a commercial product in whole or in part. We definitely want to maintain our in-house program and we will retain some free spots for students.
  • We will experiment with dedicated courses for backend and frontend. The full stack course then morphs into a combination of the frontend and backend courses.

#2. Component-based service delivery

Through 2019 we found ourselves answering the same questions and writing similar proposals for almost all projects that we pitched for.

Where we can systemise something, we will, and so we are going to build out some tooling to help us gather requirements and price our projects at a component level.

Some example components:

  • admin dashboard
  • product / inventory management
  • SMS notifications
  • user subscriptions
  • payment facilities
  • KPI tracking, graphing
  • Integrate with 3rd party APIs
  • Image and video upload
  • Calendar integration
  • Multi currency
  • Multi-lingual

#3. Streamlined client experience

For our clients, the first obvious truth is that they are normal people, and therefore will have shifting requirements over time and expect varying levels of help and support from us.

Something we can do in 2020 is continue streamlining our service delivery so that we are providing a consistent baseline of support to all clients as a foundation for their unique requirements.

Whiteboard Meetings

The most important whiteboard meeting is the first, where we try and gather the most important needs of both the product owner and the end user.

Once the caffeine kicks in, it is not uncommon for the creative juices to start flowing and the next thing we know we are exploring ideas for world-domination before we even know what a proof-of-concept might entail.

While this is fun, it is not actually productive, so we are going to build more structure into our whiteboard meetings so that we can fallback on an agenda designed to help us in the immediate future rather than the "what if's".

We really enjoyed @marcusamoore's Behavioural Driven Development talk at Laracon AU this year, and will use this process to capture business goals in whiteboard meetings in 2020.

Client Dashboard

We use and love Basecamp, but our biggest gripe with inviting clients onboard is that there is no such thing as "read-only" access, and that is problematic for us.

Fortunately Basecamp has an API, so we can pull out the client data we want and instead have our clients login to the Coding Labs website.

Some of the features will include collaborating through a help desk, viewing a stream of project activity, reviewing progress indicators, key dates, invoice history and more.

Support

Providing a dedicated support service is something we have been formulating in 2019 and have some strong ideas about how it will work for us going forward.

We want to expand our offerings in this space and integrate ongoing support for all apps that we launch in 2020.

#4. Ship two mobile apps

With the recent discovery of NativeScript-Vue (thanks @jessarchercodes!), mobile app development is finally within reach for us mere mortal web app developers.

Our inaugural mobile app for Live Platforms is so damn close to being finished, early January is looking good for shipping to the iOS app store.

We will build at least one more app in 2020, whether for a client or for the members of our coworking office.

#5. Reduce clutter

As I move into perhaps my 3rd of 4th year of my decluttering crusade, i'm starting to get the feeling that decluttering is a continuous process rather than a destination.

I almost fell off my chair when I got a reply from @dhh on this very topic:

Letting go of a mountainous backlog is hard! It projects the illusion of control and responsibility. But it's mostly just an illusion. Set a specific appetite for dealing with legacy issues, start with a blank slate, collect what comes up over the month. Importance bubbles.

With that piece of wisdom in mind, our 2020 decluttering crusade reads as follows:

  1. cleanup and clean out all stale to-do lists
  2. Don't add to-dos for things that can be done right away
  3. don't add to-dos for things we are probably never going to do
  4. require better to-do notes, comments and PR descriptions from everyone

Signing off...

I've read a handful of 2019 reviews already, and have noted a somewhat "meh" feeling about 2019 for many.

This is particularly surprising coming from people I admire and who appear outwardly to be successful and highly respected.

All-in-all, 2019 was a challenging year for me professionally and personally, but the biggest take home is that when I challenge the boundaries of what I consider possible, something good always follows.

Other 2019 recaps:


- Competition is fiercest for realistic goals

2019 Recap

Steve Thomas
Steve Thomas · 9th Dec

A recap of our progress over the course of 2019.

2019 Recap

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.

Without further ado, my 2019 goals:

#1. Structural separation of Live Platforms.

I'm giving this one a big 👍, thanks to two big changes:

  • Moving support from Zoho to Basecamp, which has given the support team a reliable avenue to lodge bug and feature requests, get feedback quickly, and monitor progress over time.
  • Implementing a weekly roster and allocating time per project has improved productivity and focus by providing some constraints

#2. Add a full time designer to our ranks.

While we didn't specifically hire a designer, Jerrell has proven himself increasingly capable when it comes to mockups, iconography and user experience.

We discovered awesome new tools like Figma, and learned plenty of new tricks from some of our design heroes including Steve Schoger and Adam Wathan. (To that end Tailwind UI is going to be a game changer.)

Our workflow now places a high priority on prototyping design ideas as appropriate, and we refer back to mockups during development more than ever before.

Now that we are comfortable with our in-house capability and more opinionated about how design fits into projects as a whole, we can continue to build our design expertise ad-hoc and place very little reliance on 3rd party designers.

#3. Community focus for both Burleigh Space and Coding Labs

Burleigh Space has continued to benefit from incremental adjustments to our policy and fit out and we continue to enjoy strong membership into to the tail end of 2019.

Having said that, from the great heights of our own TV spot on the local news in 2018 🎉, we did not do anything substantial in 2019 to increase our community focus, and we have been really quite lucky that we are organically attracting the types of (tech focused) members we desire the most, without any major effort on our end.

On the Coding Labs side we:

  • 👍 gained brand awareness sporting our new Coding Labs t-shirts all over Burleigh Heads every lunch break
  • 👍took the team to Laracon AU and got a bit unhinged around the table tennis table
  • 👍made some effort to increase our Twitter engagement on tech topics (on top of regular Twitter activities like goading idiots) - even got an in-depth reply from @dhh himself
  • 👍worked with with some very capable external developers including Caleb Porzio, Jess Archer and Josh Freeman
  • 👎Wrote a total of 6 blog posts, 2 of which were 2018 recap / 2019 agenda, none of which were particularly opinionated
  • 👎Did not host any tech events

We also continued collaborations with local universities and TAFE institutes, including providing industry placements for 8 students in our newly established Bootcamp program.

#4. 2 Weeks planning, 6 weeks build

We quickly realised that the cognitive overhead of working in 8-week cycles vs 2 calendar months was silly, so we pivoted to 2 calendar month cycles instead.

We had some mixed results, with the usual suspects of scope creep, emergencies, sign-off delays and unplanned capacity issues all contributing to a bit of chaos throughout the year.

All in all, the fixed start and end dates did quite a lot to ease the feeling of running continuous marathons on projects.

Fixed time, flexible scope is our mantra for 2020.

#5. Dedicated BD and Accounts Management

Whereas last year I was using the term "I" a lot, now I am using "we", because Coding Labs has a management duo for the first in its history.

We have thrown a tonne of ideas around throughout the course of 2019 and have gradually started to etch out our company culture and the process-driven systems that can deliver for us.

The key now is to sustain momentum into 2020 and keep multiplying our strengths.

Results

I score each goal either a zero, half or full point based on the level of success.

#1. Structural separation of Live Platforms ( 1 )

#2. Add a FT designer ( 1 )

#3. Community focus ( 1 )

#4. 2 weeks planning, 6 week builds ( 0.5 )

#5. Dedicated BD and Accounts Management ( 0.5 )

Overall: 80% strike rate

What Didn’t Work

  • One of our projects hit some headwinds during the year and by the end of the year it became obvious that we were not going to be able to see the project through to completion.
  • Another early-stage project was put on pause until 2020 due to some reprioritisation on the client side.
  • Both of these experiences have further underpinned the difficulty we have in balancing staff numbers and experience to whatever projects we are working on at the time.
  • On the staffing side, we hired one and then lost another for a net even result, but the experience differential left us in a tricky position as we become somewhat junior-heavy. A lot of my time was directed toward code reviews, PRs and training, and unsurprisingly according to GitHub, my total contribution for the year is less than in 2018.
  • The consequence of being junior-heavy is that I am that bottleneck a lot of the time, and that is not a fun place to be. The longer a PR awaits a review and merge, the more the author wonders wtf is happening and the harder it is to actually accept.
  • The EU regulatory environment has given us (and lots of other developers) two consecutive sucker punches with GDPR followed closely by Strong Customer Authentication. We lost a couple of months implementing SCA because we really couldn't tackle it without initiating a large refactor of our entire payments system. Not to mention, everyone hated working on it.
  • Despite having a record year in terms of revenue, on the project front we are a bit underdone going into 2020. We need to work harder on recurring revenue streams and focus less on short term activities.

What Worked

  • Despite my gripes about a light project pool going into 2020, we did talk to many prospective clients in 2019 and rightfully redirected many of those in other, more appropriate service providers.
  • Of the clients that we pitched, we started work on one new major project, and got very close to securing 2 or 3 others.
  • Through the act of talking to lots of potential customers, we refined our website and our estimation processes, and got a clearer idea of the types of clients we think we can service best.
  • We ran 3 bootcamps with 8 graduates in total. Of those, we hired 1, 3 are still studying, and at least 2 got jobs in web dev from other local employers with the aid of a Bootcamp certificate in their resume. This has strengthened our internal training program, grown our employee candidate pool, and given us credibility to build on into the future.
  • When looking at the entire calendar year, we smashed 2018 out of the park in terms of revenue.
  • We now have enough mobile app experience in-house to add to our list of services, which has traditionally been a bit of an achilles heel when pitching for projects.
« 1 2 3 4 5