The longest year of 2019 (#5 of 52)

This post is more than a year old. The information, claims or views in this post may be out of date.

Is it just me, or was January unreasonably long?

Technically speaking I’m writing this post on a Saturday, in that I woke up late and haven’t gone to bed yet. The calendar will tell you this was written on Sunday though – it lies.

The last week was particularly hard on me, as evidenced by my habit tracker.

Every morning, I need to take a fasting blood sugar reading in order to adjust my treatment. I’ve been really good with that since starting the tracking, managing a fasting reading every morning for a straight month – but in the last few days, that became difficult.

Whenever I have a bad week, it seems to throw everything else out of balance. The first thing to go is perspective – I get stuck on a particular problem and don’t really notice things like the passage of time, or that adhering to my habits have become a problem.

In this last week, I can clearly attribute that to something: A poorly managed project – with at least half of the blame falling on me.

In September, I picked up a project that was meant to take two months at the most, but as of end-January we’ve still not managed to go live. The application is a line-of-business app for a major enterprise, and like most major enterprises, timelines can sometimes stretch out a lot further than you might think.

In this case, there’s no one single reason why it’s taking this long. The scope has kept changing, but that’s par for the course when developing an all-new process in a shifting landscape. Feedback has been slow, but it’s impossible to align calendars. Getting it deployed has been a challenge, but there are so many parties involved in simple IT change requests that no single one of them has unduly held up the process.

As it turned out, by mid-January they had managed to finally get our first version out for testing with some of their internal customers. The feedback ended up requiring a whole new set of changes, which was scoped and priced and scheduled for delivery over the last week.

And this is where I hit a brick wall. I’ve worked on this project long enough now to have developed some really negative feelings towards it. The launch has been delayed time and again, the stakeholders and priorities have shifted back and forth, and my main concern remains launching a decent product – which seems further and further away.

But the blame for this one falls squarely on me, for once again trying to handle more than my fair share of work. The time to outsource it was actually mid-January, but after the week I just had I can’t afford to not pull the trigger on this.

Which I’m now doing. It’s a new milestone: I’m outsourcing the first bit of work I feel comfortable with, mostly because it’s starting to drive me insane and just getting a fresh set of eyes on it will already be a big relief.

Looking back on the week, though, I could have caught this one a lot sooner. I got stuck in a negative feedback looped that completely drained my energy:

  • I have this very important thing to do
  • I really don’t want to do this, it’s gotten too difficult
  • But I also can’t do anything until I do this
  • It’s already 1pm, I need to start
  • It’s already 5pm, I’ll have to work this evening
  • It’s 2am, I need to push through to the morning
  • It’s 4am, I can’t do this anymore
  • I woke up late this morning and I have a very important thing to do

Remarkably unproductive, but not the first time I’ve dealt with this feedback loop. Despite my own self-sabotage I’ve managed to get a lot of it done, including a monster VueJS refactor:

But I could have done more, had I been sufficiently motivated to tackle this yet again. I’ve just run out of motivation at this point, and it’s finally forcing me to evolve.

One upside to this: It’s forcing me to think outside the box. My problem has always been that I’m good at figuring out solutions, but bad at letting things take place beyond my control. If I ever want to grow an actual business (and not just grind out code for the rest of my life), I’ll have to learn how to delegate, and this is forcing me into that position now.

This one problem has really shaped most of my week, and it’s drained me far more than is reasonable. I’ve already decided that next week will be better: I’m travelling for work, and spending time out of the house is just what I need right now.

In other news:

My self-imposed Twitter limitation continues to work. I still open up the app several times a day, but most of what I’m getting are SABC News tweets (of which there are few), and I haven’t been tempted to dive back into the burning garbage vortex.

CIT is turning me into a libertarian. I’m a few months away from clocking my first year as a freelancer, but my financial year-end comes up on 28 February, at which point SARS gets to take 28% of my profits for the year. Let’s just say it’s shaped a few of my pointier opinions about taxes.

Ghost in the Shell: ARISE is actually pretty good. After trying to watch it in 2013 and being roundly put off by the Microsoft Surface product placement, I’ve kept away until this week. A more detailed post is in the works, but for now, I have to admit it’s got a whole bunch of merit all on its own.

I’m starting a new business venture! What started out as a semi-serious joke is now materializing into a new business, with a few potential projects lined up. With any luck I’ll be able to share more details by the next weekly update.

… and saying goodbye to my first client. The first customer I ever signed was for a retainer that they ended up not using as much as they thought they would, so cancelling this was really more of a formality at this point. But that’s another milestone I crossed this week: Ending a contract before its due date.

Next week, I’ll be doing my first ever full-time on-site consulting gig focused on the things I actually enjoy doing: Assessing business operations and guiding teams towards improving all of them. I’m already mentally drafting the case study 🙂

51 to go! (#1 of 52)

This post is more than a year old. The information, claims or views in this post may be out of date.

I blinked and missed the first week of 2019 – it’s going to be a pretty short year, at this rate!

At the start of this year’s blogging adventure I figured I’d borrow a strategy from Charl’s personal blog, in which he (generally) does a weekly post to recap what happened during that week.

That’s usually the reason I wrote so little last year: I keep busy with a lot of stuff, so much so that picking one topic to write about causes analysis paralysis. So I end up writing nothing instead, a sub-optimal outcome.

The first week of 2019, for me:

Most of my customers came back online by yesterday, and I’m already planning out my workload for the year. Last year, my strategy was to just take on every piece of work I conceivably could – this year, I’m limiting my billable work and planning to take time off instead.

To that end, I mapped out the 2019 year in several different configurations, until I landed on the one that was optimal for my planning. And actually relatively sad:

The entire 2019 calendar year

That’s my 2019 tracker. It includes all 365 days of the year, marks out weekends (gray), public holidays that result in time off on weekdays (P) and my minimum-acceptable-leave dates (L) – calculated and distributed in such a way that I have sufficient capacity every month to hit my financial targets through billable work.

The sad part is seeing the year laid out like that. 250 weekdays, 104 weekends, 11 public holidays, and that’s 2019 all done!

Where the planning part comes in: If I have a really good quarter, and bring in amounts above target, that means I can “afford” to slow down later in the year and focus that time towards building my own products. It’s a mindset made possible by the insane amount of hours I worked last year, and the resulting cash buffer I built.

I’ll only feel confident once I go through February though. Bare minimum, SARS is going to take a full month’s pay away from me in one shot. Once I sort out my tax predictions for the next fiscal year I’ll actually be in a position to predict things.

Then there’s the minimum-acceptable-leave idea: I have to take time off. It’s an ongoing problem with me, so much so that I’ve sought therapy to help me manage the anxiety involved. I tend to overthink negative outcomes, and then to mitigate those I’ll work myself to death (literally) to compensate.

On top of those handful of [L] days, there’s the weekends (during which I absolutely should not do billable work), and public holidays (the same), meaning that of the 365 days in the year, only 250 (68.5%) should be productive.

It’s a nice plan on paper, for sure. Whether or not I stick to it will be a different story. One of the downsides of being a freelancer is that you’re 100% responsible for the opportunities you create, and sometimes that requires you to put in effort above and beyond what a regular 9-5 will require of you. So we’ll see what happens!

Other stuff of note:

Helderberg Dev Meetup: I’m giving the first talk of the year today (Progressive site enhancement using VueJS), which as of this post I still technically need to prepare for!

Laravel Quickstart: I’ve seen some early interest in the idea, even though I haven’t done much to market out the page yet. I’ll be doing that by outlining my first product, and publishing those details to a good-looking storefront – then there’s something more tangible to talk about in public. This indie-built daily habit tracker (hi Joan!) has already been very useful. Simply by replacing the home tab on my browser, it encourages me to review my habit completion status often!

Makerlog: I’ve signed up (@wogan) for one of these public to-do trackers, and I’ll be using it for Laravel Quickstart work (when I work on it). With any luck, the daily reminders from everyday will nudge me into making at least one update per day here, and progress will be made overall.

On to the next week of 2019!

The first product of the new year!

This post is more than a year old. The information, claims or views in this post may be out of date.

It’s officially game time.

After quitting my job last year (and going through an abyss of existential panic), I landed on something resembling a master plan: For the remainder of 2018 I took on every freelancing opportunity I could manage in order to build up an income buffer. Once that was achieved, the next step would be to reduce the time I allocate to freelancing, and dive into the world of product development.

Phase three, as such, will be to derive 100% of my income from products and SaaS services. It will probably take longer than I think it will, and I already think it’s going to take at least 2 years.

I didn’t have any timeframes in mind, but after the last quarter of 2018 I’m feeling comfortable enough to attempt my first build. I’ve been soaking up knowledge and insight over the last few months – time to start putting it into practice!

I initially decided to go straight for building a SaaS application (and drafted a convincing business case for it), but my thinking was shifted somewhat by an interesting Indie Hackers article.

At first, I’d discarded the notion of selling one-off products: That’s not a path to recurring revenue, which is what I ultimately need. However, there’s a bunch of upsides to going for one-off products.

For one, they’d be easier to build. I can draw up a spec, build, refine, document and release something without the pivoting and scope-creep that’s inevitable in a B2B SaaS application. And they could be a lot smaller and narrower in scope than a typical SaaS.

I don’t have to worry about hosting customer-facing services. While I’ve got no problem doing this (and am busy doing it right now), I definitely want to up my game on cloud providers before going public with a SaaS of any sort.

Once-off purchases of tools that save time are pretty easy to justify. I buy Themeforest themes all the time (I’ve spent thousands by now, I’m sure), simply because the dollar cost of the theme is a lot less than it would cost me, time-wise, to put together something similar.

They can be a foot in the door at other businesses. I’ve seen this (from a distance) several times – a company buys a product, is able to do 90% of what they need, and need help for the remaining 10%, which becomes a consulting opportunity.

They (typically) don’t expire. Stuff like PDFs, email courses, videos and so on technically don’t expire, and they can be sold for as long as they remain relevant. In my case that’s mostly true, though I will need to update the products at least every 3 months to stay current with framework and dependency changes.

With all of that in mind, I’m diving straight into building the first no, I’m kidding. Step one is idea and market validation, for which I’ve used the absolutely god-like to put together a landing page:

The product itself is pretty straightforward: A well-documented starter pack, using framework defaults and idiomatic patterns for common web applications.

Over the next few weeks, I’m going to find ways to send traffic to that page – organic, paid, referral, whatever. If I feel comfortable that I’m going to do at least $500 in sales, that makes it worth my time to take on one of the smaller packages.

I’m intending on delivering high-quality quickstart packages though, so the first one will be an exercise in breaking new ground. The next few will hopefully be easier.

Or, it might turn out that there’s no demand for something like this, in which case I simply park the domain and move on to the next thing. This is idea #1 in a list of around 20, which keeps growing every week.

And of course, I’m going to be as transparent about this process as I dare. For one, it makes this blog a lot easier to maintain (the posts basically write themselves). Mostly though, it’s important to me that other people can learn from my experiences.

That’s one of the motivating factors behind this product: Among other things, I want the documentation to be good enough that it basically teaches people how to build good web apps, on top of giving them a solid foundation to start.

If you’re interested in following along, best thing I can suggest is to either subscribe directly to the blog (sidebar widget, top right) or follow me on Twitter, where these posts are automatically broadcast. And if you’ve got questions, I’d love to hear from you!

The importance of publishing regularly

This post is more than a year old. The information, claims or views in this post may be out of date.

You know the difference between theory and practice, right? How you can know something in theory for years, but never actually apply it? I’m spectacularly guilty of that.

One of the many side-effects of modernized content publishing (under which I’m lumping radio, TV, video, podcasts and comics too) is the rate at which consumers now expect new content.

If you’re just getting started today, and you intend on building any kind of career, constant output really matters.

I’ve known this for years (and have ignored it for those same years), but if you’re planning on being a professional content creator in today’s hyper-connected, hyper-accelerated world, you need to create and share with some frequency.

By “professional” I mean: “earning a living doing this”. Not “professional” as in “the best possible output from the most skilled individuals”, or even “certified or qualified” – those barriers have long since been obliterated.

If your intention is to build a career on this, then quality is almost secondary to constant output. Especially if you have an inner critic that’s harping on at you about how bad your work is.

There’s an excellent example of this on YouTube. One of my favorite creators is a guy by the name of Bill Wurtz, who has a channel filled with short clips in his very unique style. A few months ago, he published a new video – The History Of The Entire World:

Excellent video, extremely information-dense, and enormously painstaking to create. That 19 minutes of footage took him over 11 months to produce (according to an interview he did later), and at many points during the project, he felt like dropping it completely – which I sympathize with!

It’s a solid creative achievement, and I’d always want to see more work like this make its way to the world.

But if you’re trying to build a career as a content creator, a schedule like that is a death sentence. As of today, the video has over 25 million views, which means it’s accumulated a flat average of around 470k views/day. And that’s already slowed down to a crawl:

Public statistics from the YouTube video

Creators on YouTube can earn advertising revenue (with the possible exception of the recent adpocalypse that’s still evolving), and beyond that, popular creators often spin up secondary revenue streams – things like merchandise, club memberships, and Patreon pages.

But all of that starts with views (or reads, listens, downloads, whatever your metric is) – more is better, and consistency is better.

There’s another YouTuber that I’ve recently sort-of started watching – Felix Kjellberg, better known as PewDiePie. He started in April 2010, essentially just recording videos of himself playing games. In the 7+ years since then, SocialBlade reports that he’s uploaded over 3200 videos.

There are only 2555 days in 7 years, meaning that he’s uploaded an average of more than one video per day, every day, for over 7 years.

The man is a Swedish meme machine. I don’t know how he does it, but he does.

That consistency built him an audience, ended up landing him contracts and other opportunities, then turned into a solid (multi-million dollar) career. It took a knock when the Wall Street Journal went after him, but that’s a whole other story on its own. Right now, he’s sitting on 55 million subscribers – possibly 56 million before today is out. Not bad for a kid that used to sell hot dogs!

Fun fact: PewDiePie has 55 million subscribers and can drive upwards of a million views to a new video the day it comes out. The WSJ is the largest newspaper in the United States, with a circulation of only 2.4 million print copies, and 900k digital subscribers.

(No wonder they went after him!)

The videos themselves, if I’m honest, are not great – something that he acknowledges in a very funny and self-deprecating way. They’re mostly just him in front of a webcam, talking into a microphone and browsing the web. The comedic timing is excellent though, and the use of effects is hilariously cheesy.

The most recent uploads are usually around 10 minutes in length (partially to take advantage of YouTube’s advertising distribution algorithm), and probably take a few hours at most to record, edit, and upload. But he does it every single day, and has done it consistently for so long, that this is how the daily movements across his channel look today:

Stats from

His back catalog of 3200+ videos cumulatively gains new views in the millions, every single day. And all of those views are potential ad revenue, new subscribers, or merchandise customers.

This principle applies everywhere in the modern content business. The more content you build up over time, and the more frequently you’re able to do it (even if it’s not your absolute best work on every single publish), the better off you’re going to be in terms of audience size, and the corresponding revenue opportunities.

Constant publishing creates an audience, and constant consumption creates opportunity.

There’ll always be space for the big, heavy, long-running creative projects in the world. Those are the ones that will go on to have enormous cultural impact – a great recent example being American Gods.

The book was originally published in 2001 (that’s sixteen years ago, in case you weren’t already feeling old). It’s getting a television series as of this year, and two ambitious claims have emerged: That this will be a series on the level of Game of Thrones, and that the content in the novel itself could keep the series going for several years without needing much modification.


American Gods took Gaiman several years to write. I think I read somewhere that it was (at least) 5 years. I can’t source that right now, but I could certainly believe that, given the scope of the work.

I’m convinced that American Gods will go on to have a huge cultural impact, win multiple awards (the book already won awards back in 2001), and inspire thousands of new creators.

But not all creative work has to be on the same scale, and there’s just as much place for the people who produce entertainment on a much more regular basis. Especially now that there are so many formats, the cost of entry is lower than its ever been, and you can probably find an audience for even the narrowest of niches.

It’s just down to overcoming your inner critic, and making a start!