AngularJS with Gulp Tutorial

In this video I’m going to show you how to make a Hello World app using AngularJS using Gulp to deploy and test locally. There are loads of tutorials explaining how to make a basic Hello World app but I find most of them don’t focus on the file structure or folders of the app and therefore aren’t helpful when it comes to building apps in a commercial environment. Hopefully this video will explain it a bit better.

In this tutorial I’m going to use Angular, Gulp and Browsersync and npm.

How to use Angular CLI and get Angular2 set up in SECONDS Tutorial

I’ve been teaching myself Angular2 and how to use the next version of the Angular framework. I think this software is going to be really popular in the foreseeable future and that most apps, whether mobile or desktop, will be hybrid apps rather than native. It’s just so much more efficient to build software suited to multiple platforms, but I’m sure native developers would argue you just can’t build a seamless user experience that way. Either way, we shall see what the future holds! In the meantime, I’ll be focused on learning this hybrid technology.

In this video I talk about the obstacles of getting started with Angular2 – as it’s quite a lot of work to set up compared to Angular1 – and how you can shortcut this process using Angular CLI (Beta version).

My Top 5 Linux Dev Tools for the Full-stack: Atom, Node JS, Vagrant, Virtualbox, and Oh my Zsh

Having recently switched from Windows to Linux, I thought it best to showcase the top Linux dev tools that I use day-to-day in my dev environment. Here’s a video demonstration of my set-up. If there’s anything you use that’s missing, let me know in the comments! I’d love to learn more about Linux.

switching from windows to linux

Switching from Windows to Linux

Four weeks ago I started working on a new project for a client.

The first task was to load up a Vagrant box to run their platform locally on my machine.

So I cloned the Git repo and ran ‘vagrant up’.

Immediately I was presented with errors… Tons of nasty, confusing errors.

It turns out that the Vagrant box was using the Ansible provisioner, which isn’t well supported on Windows.

I look for a solution, none of them are ideal.

I can either run the Ansible provisioner in a separate VM (in which case I practically need to re-write the Vagrant setup) or I can spend hours hacking away inside the ugly Windows Command Prompt window to do some black magic hackery and get Ansible working with Cygwin…

And I thought Vagrant was meant to make coding easier!

I ask around to see if anyone else has had the same issue. It turns out not a single member of the team is using Windows.

They all use either Linux or Mac OS (mostly Linux).

That’s when I decided it was time for me to make the switch away from Windows and give Linux a try.

Read more

My experience with Dell Support (Dell Hell 2.0)

As a software engineer, the most important tool you will ever need for your job is your computer.

In January 2015 I decided it was time to get a new laptop.

I was currently using an Acer Aspire V3-571 which lasted me a good year (which was impressive considering it only cost about £500) but eventually it started to slow down and became difficult to work with.

I decided it was time to invest in a professional grade laptop with good support. I wanted something that was lightweight, powerful and reliable.

I spent a considerable amount of time researching the different products on the market and finally landed on the Dell XPS 15. Here’s why:

Read more

Attitude vs Experience: What’s more important for developers?

When I was looking for my first software development job, I kept hearing the same thing: “you don’t have enough commercial experience for this role”…

I kept persisting and eventually I got a job at a startup, where I worked for two years.

When I decided to go freelance I was surprised that, after having two years experience as a developer (which in my eyes is a like a century in the fast-changing technology world), I was still hearing the same thing: “you don’t have enough experience for this role…”

But I kept on trying. I worked on my own projects. I published them online. I kept reading and learning new things…

After a few months I got my first freelance contract working with Python.
Read more

How to Build a WebSocket Multi-Client Chat using Ionic and Node.JS


I first started learning how to code at age 12 when I taught myself how to make basic Windows batch scripts. It wasn’t long after that when the easy-to-use GUI drawing feature of Visual Basic 6 had me hooked on programming for good.

I graduated onto making proper network connected applications shortly thereafter. I was obsessed with making client-server programs that could talk to each other over TCP. I spent many of my younger years hacking away at the VB6 WinSock API. First learning how to make one client talk to a server, then figuring out how to make the server handle multiple clients at once and so on…

More recently I was tasked with making a real-time scoreboard for a company I’m currently contracting for. It involved an AngularJS front-end with a WebSocket client and a Node.JS server that would accept connections and broadcast the latest scores from a text file.

To be honest, before taking on this challenge, my Node.JS/Angular experience was sparse at best. But I saw the challenge as an opportunity and quickly learned what I needed to get the job done.

I was amazed at how quickly you can make a multi-threaded network application using Node.JS and the standard JavaScript WebSocket library. In a few minutes you can do something that used to take hours to figure out.

I was so amazed I thought I would make a tutorial explaining how to create a multi threaded chat client and server using Ionic and Node.JS.

Read more

10 Productivity Hacks for Developers

How can you be a more productive developer? That’s the million dollar question.

As a professional developer, one of the most difficult challenges you are faced with is being able to stay focused on tedious lines of code for hours at a time. Whether you’re programming professionally or just fun, you probably have goals you want to achieve, and staying focused is key to achieving them.

I always had trouble staying focused, so over the years I figured out a number of techniques or hacks that have since helped me become a lot more productive.

Although I haven’t found a way (yet) to meticulously measure this – my guess is that, when implemented, these hacks increase my productivity by 100-200%.

Read more

How to ask questions on Stack Overflow (and get answers)

A lot of people ask me questions when something isn’t working.

While I’m more than happy to help where I can, the questions I tend to get don’t outline enough information for me to be able to answer them. But more importantly, I might not be the best-suited developer to help.

Which is why every programmer should learn how to ask questions properly on Stack Overflow — to get the answers that they’re looking for.

Read more

How to Get a Software Developer Job in London

Are you currently looking for a software developer job in London? The scene is booming at the moment, but I still encounter people who have trouble when looking for new roles. So I thought it worthwhile to pass on some of the things I’ve learned whilst navigating this exciting job market.

Whether you’re looking to move from permanent to contract work, or just trying to land your first developer role, there are some things you need to know about getting a programming job in London.

Note: I’ve written this guide with the London job-market in mind, but the principles and methods I’m sharing with you here can be employed regardless of where you live.

How to get a software developer job in London


Read more