My journey into web development all started with my passion for creating things, learning skills, and messing about on bikes.

Whether BMX, flatland, trials, Mountain Biking or jumping, I loved learning tricks and improving, and it started at a young age:

While at university in Bristol doing Chemistry I become interested in bike photography and wanting to learn how to emulate the amazing photos I’d see in magazines like Dirt, RideBMX and MBUK:

Good bike photography is a challenging technical discipline with fast movement, the art of which is finding a good angle to turn a dynamic sport into an appealing still image.

I also really enjoyed the technical aspect of photography, learning about shutter speed, aperture, the use of off-camera flash with radio-controlled remote triggers, and spent hours experimenting and learning about lighting.

I also liked the speed of iteration and improvement that digital photography gave me.

During this time I was lucky enough to have my photos printed in magazines and used by bike companies:

This slideshow requires JavaScript.

I also became interested in graphic design, illustration and generally creating things with computers.

Building my first websites

As my photography improved I wanted somewhere to show my work, so set about building myself a website.

I had no idea what I was doing, or the best way to go about things, but ended up taking websites I liked, copying the source code and changing the underlying HTML to see what would happen.

It took a long time to work out how things worked, with a lot of reverse engineering, and a lot of wrong assumptions about how things worked.

This was in 2002 and the reference resources or tutorials online weren’t very accessible for beginners, especially without a good foundation of the underlying concepts to make sense of the information I could find.

Learning and creating was a slow process.

Like most developers I look back on my early sites and wonder what on earth I was doing, but they were important steps in my learning and as I often say to our students you sometimes learn best by doing something wrong and seeing the consequences. This leads to a lesson you’ll always remember.

One of the first sites I built for someone else was for a local skatepark, and I wanted to make the site seem like it was made out of paper, with a paper texture and hand drawn-style font everywhere. This was only really possible using images for the entire page and due to the texture the image files were huge!

Needless to say the website loaded extremely slowly, especially in the days of 56k modems. For those who are too young to have experienced dialup internet; that’s 56 kilobits per second. At that speed an 8 MB JPEG from a modern digital camera would take 20 minutes to load!

It was also terrible from an accessibility point of view. Most of the text was within the images, with screen readers and other accessibility software having a hard time making any sense of the site.

Updates were also labour intensive, with any text changes requiring re-exporting all the graphics. Links were added onto the image using the <map> tag, a very early-days-of-the-web way of making parts of an image clickable, and, again, really not accessible.

This is a job?

At the end of my degree I didn’t really fancy being a chemist, so wondered if I could get a job doing what I was really enjoying doing; making graphics and building websites.

I’d never really heard about “web design” or “web designers” (what the job was called back in the day) and no one at school had ever talked about such a career. Unsurprising, since this was the early days of the web when not many homes had internet.

It turned out that this was a job people were doing!

Getting my start in tech

As most aspiring junior developers will tell you, getting that first job is really hard without experience and you can’t get experience without that first job.

I tried sending some of my sample work round to various Bristol agencies but received little response.

Eventually I got a job at a cartoon stock library company who were doing a lot of business through their website in 2006. My role involved mainly doing image editing with PhotoShop and making merchandise, but I also got to work on the company’s eCommerce website.

I was given a book on ASP VB Script, the server access credentials and told to get on with it.

It was a tough start and there wasn’t really anyone who could help me. I had to work a lot of things out by myself.

It was a great experience!

I learnt a lot about what not to do by regularly breaking the site or building things which were hard to understand and maintain. My bug fixing skills developed as well as thinking of different ways to continue moving forward when I’d hit a brick wall and didn’t know what to try next.

I also learnt a lot about better working processes; the importance of backups, how to test things, how to safely put things live that required code and database changes at the same time. This was all practice that drove better efficiency in building and maintaining things, and ensuring that the business critical website wouldn’t break!

During my role I moved the site over from using Microsoft Access as its database software (a terrible choice for a high traffic site) to MySQL. I taught myself PHP, which I was using for my own projects out of work and managed to sell my boss on converting the site from ASP VB. This was a big improvement in both performance and in modernising our codebase.

Going freelance

Eventually I had enough freelance projects outside of my day job that I decided to take the leap to working freelance.

This was a both a liberating and a stressful time!

Again I was on my own, there was no one to ask for help and no guarantee of regular income.

And, again, it was a great experience! It taught me a lot about dealing with clients, running projects, quoting, invoicing and running a business.

Digital Agencies

In 2009, after a few years of working freelance, I wanted more regular work and to work with others in a company, so took a job in a digital agency.

Over the next 5 years I worked in senior developer, technical lead and technical director roles in digital agencies doing interesting and varied work for our clients. There was never a dull day and I enjoyed both building things myself, and helping grow, train and support a team of developers to create websites, apps and software at all sorts of scales.

My personal development during this period of my career involved learning a lot about how to help clients with technical and organisational change; how to help them change the way they or their business worked.

Can anyone just, like, start a company?

During this period I met Pete New, who at the time worked as a technical recruiter. He helped me build my team at the agency I was working at, and we became friends.

At that time it seemed that everyone I knew was talking about the technical skills shortage; that there weren’t enough developers, that it was very hard to hire them, deliver projects and grow tech businesses in Bristol.

From talking to other technical directors and business founders, as well as people in various tech and education organisations across the UK, it seemed that everyone was seeing this problem, but no one seemed to be doing anything about it.

It seemed like a great opportunity to do something about it, by starting a training company to help people get into web development careers. But the idea of starting a viable company ourselves seemed like utter fantasy!

We put together a business plan, which at the time seemed to make sense, and set to work.

Running a successful Bootcamp

4 years later we’ve trained over 80 web developers, helped them get their first jobs and helped build an amazing community of Develop Me graduates in Bristol, who are now all on their own journeys of growth and personal improvement.

Things have now gone full circle as Pete and I started our own agency business Lunar, a web development agency (or dev house), doing client work and hiring some of our bootcamp’s fantastic graduates.

My day-to-day gives me the opportunity to do all the things I love; teaching and supporting people in their growth, using my technical knowledge to help clients solve their problems, and managing the more technical side of hosting and server administration.

Not an easy journey, lots of self doubt

My journey of teaching myself to code, entering a career that I had no formal training in and eventually starting a business in that industry hasn’t been easy, and there has been a lot of self doubt at times. But that is a subject for another article.