Rookie Mistakes

I was listening to a security podcast and someone of considerable industry experience said (of something they just did):

“That’s a rookie mistake”.

No, it’s not.

It’s just a “mistake”.

To say it’s a “rookie” mistake is being disingenuous to rookies, particularly when the experienced person is still making that same mistake.

So, by virtual of a fact it is an easy mistake for someone of experience to make, that makes it just a plain old “easy” mistake.

Cost is not universal (when Pluralsight becomes expensive)

Pluralsight is a great learning resource for anyone in IT or looking to learn something IT related. I’ve had an annual subscription for a few years, and now I have a second account for my development staff.

What gets me though is the cost, and right now I’m walking a very fine line between value and expense.

One one hand it’s a highly valuable resource with wide ranging, quality material. On the other hand, I (and my developers) struggle to find time to use it.

It can also be argued it’s reasonably priced for the volume of material offered – USD$35/month or $299/year. With enough time you can gain expert knowledge on almost any topic.

But… the value of a US Dollar isn’t universal.
At the moment in Australia USD$1 is about AUD$1.39.
In India it’s about INR 71.

For me, an annual subscription actually costs AUD$416. Right now I’m self-employed and this year I’m projecting about $75,000 income (including tax and superannuation). That leaves me with about $54,000 in the pocket.
So all up the subscription is about 0.77% of my cleared income, out of my pocket. Still not looking too bad given the value it provides (if I have time to use it), though it is starting to hurt.
But the point is: An actual $416 doesn’t look as shiny as the $299 sticker price on the site.

Let’s look at a greater contrast of price inequality.
USD$299 comes out to about INR 21,229 in India.
To put that in perspective a well paid mid-senior developer might get INR 22,000 per month salary.
In other words, in India an annual Pluralsight subscription can cost a developer one month’s salary.
Suddenly that convenient 300-minus-1 price isn’t looking so shiny.

The point is, cost is not universal, and that’s something we can easily forget.
Different countries. Different stations in life. Different situations and costs of living – the value of a dollar varies widely.

While I still believe the quality of content on Pluralsight is high, I am constantly looking for a other services with competitive offerings and a better price point.
I work hard for my money. Only a mug would give away more than they need to.

Enough, Amazon!

As a consumer, I’ve used Amazon to purchase most of my books on Kindle, pretty much since Kindle first came to Australia. And in the last couple of years I’ve started buying Audible books too.
As good as Kindle is, it also frustrates me when having a library with hundreds of books that I can’t adequately manually organise and tag my collection.
There are collections, but they’re not enough when you want to organise books via multiple attributes or for different scenarios (or even half-way replicate the organisation of a bookshelf).

Amazon also doesn’t seem to know what I’ve already bought when I’m logged in to the site and browsing books. The amount of time I spend checking if I’ve already [inevitably] bought a book it’s checking… the experience is frustrating.

I’ve also used AWS as a software developer.
The documentation and help is poorly written, not suited for “generalist” developers, and often out of date. Examples pretty much don’t exist.
The console UI is hard to understand and has no aesthetic or UX thought.
Pricing is a fucking nightmare to try and figure out.
And after they bought Cloud9 they turned an intuitive experience into something I couldn’t figure out and gave up on (thankfully I can still use the original UI… for now).
Which means AWS lost at least 3 new annual users.

But what prompted this post is an Audible email I received today:

My first impression is the ugly exclamation at the start of the subject. This is the 3rd or 4th time I’ve received this email with that subject exclamation, and each time my first reaction is “SPAM” and I question its legitimacy.

I’ve been deleting the emails until now, but tonight decided to unsubscribe. And it’s giving my attention to do that, that only I realised they’re coming to my business email, not my personal email which is actually registered for Audible.
I have, however, used my business email with AWS.

So it now seems Amazon wants to spam AWS customs with advertising for consumer services.

“Brooklyn Nine-Nine”

I have my favourite TV shows, though most of them are waaaaaay in the past. I do watch a lot of TV now – as I work – but most of it is just a distraction.

However, one show does shine for me, and I have to admit, it is a surprise: “Brooklyn Nine-Nine“. I’m watching it on Netflix (one of the few U.S. TV shows I can watch in Australia).

Episodes are short. They’re not cringeworthy. I often chuckle (sometimes I even laugh). The characters – and actors – are good. And there is also actual character development.

So, yeah, I recommend it.

The dirty secret of unbeatable software development delivery estimates

There’s only one answer that can’t be beaten if you’re ever asked to estimate a software development delivery date:


That’s it:  there is no end date.
Because software development never ends. There’s nothing finite about it.

Oh! But you want the initial project’s delivery date?

Sometime in the future, depending on how well we work together.

That’s the only honest answer you can get.

‘A’ Level Software Development Leads

‘A’-level software development leads aren’t the people who write the best code.

That’s an ‘A’-level senior software developer.

No, the best development lead is someone who can take mediocre or junior developers and have them perform at a level that takes minimal effort, produces easy results and makes everyone look good.

How do you do that?

  • Automation: Automate everything you can, whether is through programmatic scripts or documented procedures and processes.
  • Documentation: Documentation is king. It’s how developers know those procedures and processes, and how to find solutions to problems that have come before. It’s hated by those who have to write it but loved by those who need it. But it’s not enough just to write – you have to write the documentation well (it’s usability for words).
  • Time and effort: It takes both to do the work to automate and document. It takes both to learn the people you need to lead and manage.
  • Mentoring: Everyone – everyone – needs at least one mentor to help them learn, understand and grow. If you can mentor those you lead then you’re not a leader.
  • Dedication: If you’re not dedicated to the task then you will never get the most out of those you lead.
  • Understand, acceptance, patience, empathy and reflection: These are not things you do, but they are things you need within yourself to be a leader. These allow you to grow as a leader and allow you to get inside the mind of those you are leading.

There are no shortcuts to either leadership or the ‘A’-level. If you’re not prepared to commit completely you will never be an ‘A’-level leader.


(The astute may notice something seems missing from this is: anything to do with coding and technical understanding. Those aren’t required by an ‘A’-level software development leader. They are required, but in the same way as reading and writing and breathing are required. Which is to say, they are not even worth mentioning.)

The State of Websites as We End 2018

In a word: fucked.

Have you noticed that just about every website you visit nowadays shows a popup that either asks for your location or wants to push notifications at you?

Or you see an article in the Google suggestions feed only to find it’s behind a paywall?

That’s on top of the 5 million ads embedded in the page or popping over what you’re reading because you moved your mouse or it hit a timer.

I long for the 1990s when the worst you had to worry about was a page visitor counter and/or a subtle “guestbook” icon at the bottom of a page, and good old <blink> and <marquee> text just sitting there quietly doing its thing.

Hey recruiters. Networking. NET-WORK-ING!

Stop freaking spamming me on LinkedIn because your keyword search said: “I look like a good match”.
I’m NOT!
I’m a consultant and business owner. Look at my full profile! I’m not at all interested in the permanent full-time programmer positions that you think “I’m a good fit for”.
I’m so sick of this crap!

Either figure out how to do your job of actually connecting with people or go back to serving coffee at Starbucks or McDonald’s or whatever minimum-wage job you were in before you decided to become a database-keyword-searching monkey.
Because day-on-day that’s all you sell yourself to be. That’s all I see in the messages from you.

I struggle to have ANY respect for people in the recruitment industry today. You’re doing yourselves a disservice in every interaction.

I’m a business owner, and employer, ramping up and wanting to employ more people in the coming years – and I won’t be going to any of you.

Instead, I’ll continue to develop my own networks – through the “old-fashioned” way of actually talking to people.
At least I know I’ll find people who are an actual fit for me, not just a keyword match.

Where is the recruiter help?

Where are the recruiters who help their network “advance” a career? Or shift across disciplines?

No one stays in the same role forever. Especially in the tech sector.

I had to leave “employed” life to break free from being “just a programmer”, and still, I continue to get pinged for what I consider mid-level programming roles.
I’ve been programming for 20 years. I’m not interested. Was a recruiter ever going to ask what else I want to do?
(Well, sorry, too late. I’ve done it already, on my own. In the last 12 months I’ve now architected a business web-application platform, co-run a business and lead/manage/mentor overseas staff.)

If you’re a recruiter and want to stand out, help people move “up” or “sideways”, not just into the next dead-end, same-old-same-old job.

But then, that would require “cultivating” a network, getting to know people and staying in touch.