Confessions of a Self Taught Programmer.

confessions-of-a-self-taught-programmer-header

Being a software developer is sometimes a bit like this.

confessions-of-a-self-taught-programmer-1

But on other days I’ve heard it described as being a digital Rockstar, coming in and saving the day once more.

confessions-of-a-self-taught-programmer-2

I remember starting my first development job thinking “haha! They pay me to write code! Madness!”.

Way back when in the days of the 8086, 286, 386, 56k modems and the like. I loved computing, I feel sad for the people who I work with who will never know the pain of trying to make a game to run with 640kb of memory! They will never know the joy of listening to a modem trying to connect to the internet, before getting fried by lightning…

My first programming language was Borland Pascal, I got a copy of the software and tried running the game Snake or Nibbles as it’s also known. Pascal really didn’t have a big impact on me, it was dry and it wasn’t until a few years later that my journey as a Self Taught programmer really kicked off.

confessions-of-a-self-taught-programmer-3

Image from: Programming Jokes -https://www.facebook.com/programmingjokes

It was on an early version of Visual Basic that I started to really start learning. I figured out how to create Windows forms applications. I wired up buttons to a media control so that I could open media files and most importantly open and close the CD draw! This fascinated me, I could make hardware do what I wanted very simply and easily.

If you think you might want to start a career in programming and you find the language you are looking at is horrific, don’t be put off and try a different one. Especially now there are so many to choose from to get the job done.

I found loads of coding examples on Planet Source Code and started creating all kinds of stuff. Spiders for crawling the internet, calculating digits of PI, media applications over and over again. Gaming made me interested in computers, VB made me passionate about software development.

These days there are loads of sites on the internet which give your ideas for projects you can try putting together to increase your experience. As well as massive communities like the Facebook channel Self Taught Programmers https://www.facebook.com/groups/selftaughtprogrammers/?ref=br_rswhich can help you learn.

The more code you see other people have developed the easier it becomes for you to grade how good it is. Even without any kind of formal training, once you get to know enough code you begin to see the easiest way to do things. There is a lot of bad code on the internet and it's only with the experience born from coding over and over again you start to understand what bad code looks like.

Practice every day, build stuff just because you can and you soon learn what good and bad code looks like.

With no professional programming education, I started developing software for what was at the time the largest global website for freelance developers. I went through the ranks to get one of the highest coder rankings. Developing software for server monitoring systems, oil rigs, data processing applications.

Try out freelance sites like Freelancer.com and get some experience on the CV. Even if it just shows a willingness to learn, that can be a great starting point for a career. Someone recently asked is there any value in sololearn, codefight or freebootcamp. Absolutely there is! It shows willing and passion in their own progression as a developer.

About that time in my life, I decided that it was time to get a proper background in development. I contacted the Open University to start a BSc (Hons) degree. For me it was a mixed bag, some of the courses covered things which I had already learned. But some of it was really useful, Concurrency in Complex Software Systems was an absolute boon especially in web development later on. As well as AI which has been something I enjoy to the present day.

The software and techniques you learn in University are almost always out of date versus the real world. If you can afford it University is a great way to up your game and prepare you with foundation knowledge. But in reality, work placements, doing freelance or other real-world work I suspect from experience will serve you better.

In the interim, I moved out to Greece, learned plumbing, building, electrics and then came back from Greece. Think“My Family and Other Animals”only instead of me with animals think of me with broken computer equipment! 

When I arrived back I started looking for work in the rather chilly world of the United Kingdom. I posted my CV on the internet to see what was out there.

I got a tap from a recruiter who said he had a “perfect opportunity” for me in Folkestone. What said recruiter didn’t tell me was they were looking for a web developer. Although I had some experience with ASP.NET my web experience was really limited. SQL Server was non-existent as most of the console applications I had written didn’t need it. They were on ASP.NET 1 and I was up until that point an application developer.

I thought to myself it will be fine, to be honest, it was all a bit of a car crash, at least at first. Lots of terms being thrown at me like “upload this file to the cluster”, with me thinking “what the hell is a cluster?”. Luckily, I had some great work colleagues and because of my past development experience when I knew how to do something I was fast.

I got my game hat on and started learning SQL Server, both through on the job training and reading many books on the subject. Stored Procedures, Table Valued Functions, Cursory Table Expressions (CTE), Cursors, performance analysis, deadlock analysis became my new interests. I consider myself highly experienced in all areas of SQL Server now, despite never doing any courses on the subject. I’ve even got the dubious honour of raising an official bug in SQL Server Replication because Microsoft managed to use different field lengths in different places in their internal code.

If you are a Self Taught Programmer and you have the passion and interest in development, those skills will help you progress no matter what blockers get thrown in your way.

Learning new things is great and I can’t begin to tell you how important it is to have a handle on new stuff that comes along. However, be wary of the “this is the newest greatest framework”, also of anyone who says “this is the greatest language ever”, or even “this technology is dying”. These days depending on the day of the week it seems to be a new framework being released. You only have limited hours and you need to choose your battles.

Keep an eye on what are the most used technologies in the development industry. There is not enough time to learn everything, so either learn it up to a level where you understand it. Or if it’s worth it learn everything there is to know about it.

No matter the level you are at, or the level you aspire to be as a developer. If you have a mind to keep learning and listening, you will go far. Today I learned how to view objects in the Sitecore HTML cache from my colleague Anton, who knows what I will learn tomorrow? No matter what gets thrown in your way fire up the music

https://www.youtube.com/watch?v=VLqPvznkeXA
https://www.youtube.com/watch?v=fSK7yxrtn3U

and develop something awesome its something only you can do. Be Remarkable and Go Beyond.

Whatever your business, be it a regional or global brand, the content you produce plays a vital role in your success. You know that… hence you’re reading this.

A well formulated and executed content strategy not only drives more traffic, at the core, it defines what your business is and helps build a strong connection between you and your audiences.

So let's quickly look at why developing a coherent content strategy is important and how setting clear goals and understanding your audience will elevate your online performance. 

What is a Content Strategy?

It's basic right? Content is at the core of how you define the way your business presents itself and an effective strategy should look to ensure that tone of voice, messaging and the core values are surfaced across all channels, from service or product pages on your website, to blog posts, through social media updates blah blah blah.

But let's keep it simple - your content strategy should be a clear roadmap that connects your marketing activities to your business goals. Align to your customer’s wants and needs and engage them at every interaction point and boom, you're in business. 

Who are my Audience?

You likely start all your projects with this chalked on the wall because your business knows “exactly” who its customers are right? Sounds obvious but we often find its not been done forensically enough (not based on data), is too old (more than 12 months ago - forget it) or its a spin off from some brand work that was legitimately aspirational but doesn’t face the reality of who you your business is actually engaging today.

So start (or circle back) with audience research, building out those personas to understand their ambitions, their lifestyle, their pain points or concerns, and crucially their wants and needs - in your context. 

Do I need to tailor content?

As part of your research find out where your audiences spend their time online and how they interact with content: Some may spend time thoroughly researching a product or service, whereas other audiences may want their content to be quick, snappy or easily digestible in the form of a video, infographic or short blog posts.

 

Ultimately, the key is to produce a strategy that creates the type of content your customers want to see:

  • What are the problems that your product or service will help them solve?

  • Who are they most influenced by?

  • What voices influence their behaviour?

  • What type of content do they consume?

  • Where do they consume content and engage with brands?

Different Content, Different Objectives

 All content is not born equal: When producing your strategy, it is important that the objectives for each individual piece are defined, that these fulfil your marketing objectives and tie to the overarching goals for your business.

There are various content frameworks that exist to aid content development in this way, but one that is popular and effective is Google’s hero, hub and hygiene method: It provides a framework on developing content to achieve different goals and gives guidance on the effort needed to create each type of content.

Hero Content

Hero content is essentially campaign content, it is big splash ideas designed to appeal to a large audience with the aim of telling your brand’s story at scale. 

Ways of measuring hero include the amount of PR mentions or links from authoritative domains plus social interactions and mentions of your brand across all channels. 

Considering the scale of hero campaigns, this content is not regularly produced and is reserved for peak promotional times where it’s important for a business to stand out from their competitors.

Hub Content

Hub content is the stuff that keeps your audience engaged, it expands on the themes of product or service level content, educates users and helps create a connection between themselves and your brand.

Hygiene Content

Hygiene content is the bread and butter of any website, it is the BAU content for products and services, it is SEO focused and targets important keywords at a product, service or guide level.

How do I manage all this?

Content development is only one part of the ongoing work needed when working with an effective content strategy. We call it “feeding the beast” because it really is the fuel in your brand vehicle and once you start you really can’t stop (if it’s delivering results) but that’s where performance measurement comes in.

Your greatest gift in managing the outputs from your hero/hub/hygiene style efforts is to understand If your content is working. To truly deliver results your business must first understand the objectives and goals of each piece of content to effectively measure its success. That as a guiding light from day 1 will let you slow down, speed up, stop or start new content briefs and projects.

Remember - content strategies are not set in stone. They are living breathing things and should adapt and pivot as insights become available and your brand naturally evolves.

If ever you want to chat content and explore new initiatives we’re always here to help.

want to speak to one of our experts?

 
Richard Brisley
Richard Brisley
Tech Lead
Richard is the longest standing member of the Sagittarius team, he works tirelessly to support the development and side-facing team with problem solving and pitches alike. His skills as a .NET programmer and database administrator have been paramount to the success of Sagittarius and our continued success. 

In 2016 and again in 2019 Richard was recognise in the BIMA 100 awards for his outstanding work in Tech, his passion for digital and his contribution to the industry. 

Richard Brisley

Richard Brisley

05 May 2018 - 7 minute read
share this

stay in the know, stay ahead.

Get the latest from the agency, including news, events and expert content.
explore services in the article
find out what we can do for you
read some of our case studies