Rick Hurst Web Developer in Bristol, UK


Author: Rick Hurst

What is a Full Stack web developer?

TL;DR It’s just a convenient term to describe a web developer who does both front and back-end, and maybe some other things .

I label myself as a Freelance Full-stack Web Developer (or Fullstack, for those who like to join two words together into non-existent ones) , but what does that actually mean?

Web developers who write HTML, CSS and (maybe) JavaScript, but don’t do any server-side code (e.g. PHP, Python, Rails etc.) might call themselves “Front-end” developers. Web developers who only do server-side code, and never do any HTML, CSS or (browser-based) JavaScript might refer to themselves as “Back-end” developers.

Therefore someone (like me) who does both Front-end and Back-end code might refer to themselves as a Full-Stack developer.

But there’s usually more to getting a website or web app built and up on the internet than just writing code.

There’s (sometimes) provisioning servers, installing web server software, installing database software and other dependencies. There’s setting up development, staging and live versions of websites, setting up domain records for websites and mail servers and installing SSL certificates. That might be the job of a sysadmin and/or DevOps specialist, but some web developers might take on that part of the job, either by choice or by necessity.

Most web apps need a database, and this database might need designing, optimising and maintaining. That’s a job for a DBA if you are lucky to have one, but i’ve only worked for one company who had a dedicated DBA, so that job usually also falls to a developer.

There’s often plenty more roles that make up the stack – testers, technical project managers, UX, Designers, and in some companies there will be dedicated individuals or teams for all of these roles, but for a small agency or freelancer, often these are taken on by a full-stack web developer.

Now just like Front-end and Back-end are made-up terms, so is Full-Stack. For me it’s just a convenient way of saying that i’m not just a front-end developer, or not just a back-end developer, I do both, and some other things.

Jack of all trades, master of none?

Hey! I resemble that remark! Actually I prefer to say “Jack of all trades, master of some“. I’d like to get better at all of the various roles that make up my workload, but people dedicated to a particular role exclusively will inevitably master skills in that area that I probably won’t.

But there’s more parts to the stack, can you do all those too?

A heated discussion on a local web dev forum had people extrapolating “the stack” to include hardware and low-level operating system code (and maybe beyond?) at one end. I neither do that stuff, or consider it as part of the web-development stack.

At the other end people were adding in any role that could possibly related to the development of a website or web app – account handlers, financial directors, accountants, HR, office manager. Although as a freelancer I have to take on some of those roles myself, I don’t consider them to be part of the web-development stack!

Minimal campervan conversion – what actually constitutes a campervan?

Minimal campervan

A year on from saying goodbye to our last campervan, we are really missing vanlife, so making plans for the next one. Our last van came to us fully converted as a 4-berth camper with pop-top roof, cooker, fridge, rock and roll bed, table wardrobe, cupboards etc., but this time we are planning a full DIY conversion ourselves, on a more modern van.

Being the master of unfinished projects, I don’t want to spend months and months converting it before we get to use it, so the idea is a phased approach, starting from the bare minimum, then adding to it over time.

So what actually constitutes a campervan? It will be a van, a short wheelbase panel van of some kind – we need to be able to park it on our crowded streets and drive it as a family car. Obviously, we want to be able to camp in it – sleep, cook and have somewhere to sit comfortably inside.

In theory, all you need then is to use it like a “tin tent” – chuck some camping gear and airbeds in the back and you have a campervan, but the basic DVLA criteria to be able to officially reclassify a panel van as a motorhome in the UK include:-

  • A fixed bed
  • Cooker
  • Side Window
  • Fixed table
  • Sink and tap

My first campervan didn’t meet these criteria, it was a very minimal conversion – a fold-down single bed made from an ikea futon frame, a freestanding gas cooker from a caravan bungeed to the rear of the passenger seat, and some rugs and stuff. At a push you could sleep 3 people – one on the bed, one on the floor and one across the engine bay diagonally, but only one of these options was remotely comfortable. That van was more of a hippy ex-student road-trip bus, not a family campervan.

I’ve also read that some campsites and festivals won’t accept a van unless it appears to be a camper van – nominally for safety regulations, but probably also to stop people just turning up in hired vans or builder’s vans with an airbed in the back and binbags taped over the windows.

So there’s some “official” criteria we need to meet eventually, if we want to reclassify it as a motorhome but there are also some minumum requirements of our own, to enjoy it as a family campervan. We want to be able to sleep three people comfortably – two adults and a taller-by-the-day teenager. This will be the biggest challenge until such a time we fit a pop-top to gain an extra double bed. I have some ideas, which may or may-not work, but there’s always awnings/ pop-up tents if we can’t all sleep comfortably inside straight away.

We need to cook, so I plan to build a unit to house our existing camping gas cooker, to keep it secure and to be able to store the gas bottle securely underneath. We can survive without a sink initally – even with the sink and tap in our last camper, we tended to wash up on a table using a washing up bowl.

We also need to be able to sit comfortably inside – many of our UK trips have been rainy and cold, so whatever bed arrangement I build needs to be able to be reconfigured during the day to allow us to sit around in a mobile living-room.

I’ll certainly want a leisure battery to keep interior lights, music and phones/ laptops running away from electric hook-up for a weekend. I have a plan for that, which i’ll cover in another blog post.

How to live in a van and travel – new book from Vandogtraveller

How to live in a van and travel book

I was lucky enough to be sent an advanced copy of Mike Hudson’s (AKA Vandogtraveller) new book How to live in a van and travel”. I’ve been a fan of the vandogtraveller blog since the early days, and bought a copy of his previous book “from van to home”.

Though I have no current plans to live in van (or indeed, currently, a van to live in), i’m very interested in ideas for nomadic/remote working – the original subject for this blog. I did actually live and travel in a van for six months in my early 20’s, with a vague plan to “travel europe” and, like Mike, started off with a few grand in savings, and no fixed timescale. Aside from busking, I had no other income stream – this was in the mid-nineties when the internet was in it’s early days, and the term “digital nomad” was (probably) yet to be invented, so I needed to live as cheaply as possible to make the savings last.

So, like many people I suspect, I initially skipped straight to the “Making money on the road” chapter to see if I could pick up any tips. I then went back and read through from the start. He covers pretty much everything, other then details on conversion (covered in “From van to home”).

Thoroughly recommended, and inspiring – Mike tells me that a hard copy version will be available after the ebook, which I will happily buy to add to my coffee table/ toilet reading library!

Deploying and maintaining a website using git

I’ve kind of used git to deploy/ manage php/ static websites for a while now, but in a very luddite way – basically sshing into the webserver, cloning a repo into my site root directory, then hiding the .git folder in the Apache config.

After recently starting a new job and inheriting some web sites and web apps and starting to take the whole “devops” thing more seriously, I was pleased to see a better technique in place than the one i’ve been using.

The basic premise is this – a repo is set up on the web server as a remote outside of the web root, but configured so that the checkout working directory is another directory. The advantage of this is that there is no need to ssh into the webserver to update the code, as a post-update hook can be used to checkout the updated files.

In addition to this, we usually use tools such as gulp to process scss and minify and js, so the post-update hook can also be used to process these on the server after checkout.

Going into more detail, here is the config of the remote git repo on the webserver, this could be somewhere like /var/sites/mysite_git

repositoryformatversion = 0
filemode = true
bare = false
logallrefupdates = true
worktree = /var/sites/mysite
denycurrentbranch = ignore

and in hooks/post-update on the remote, something like:-

git checkout -f
cd /var/sites/mysite
gulp build

Taking a break

Camper Van Things is taking a break for a while. It’s been fun, but Rocky has moved onto new adventures with a new owner, and therefore our current camper van adventure has come to an end. I’m not sure whether the content from this blog will be rolled back into my personal blog, or whether it will continue down the line if/when we get another van. So long for now!

Where is Rocky?

From reading this neglected blog you’d be forgiven for thinking that Rocky has been abandoned for the last couple of years in a warehouse, but happily this isn’t the case.

While stashed away a couple of winters ago, he got a bit of TLC, including a fresh coat of paint using the roller method. This worked out really well – highly recommended if you want to spruce up an old vehicle on a budget.

VW T25 rustoleum roller paintjob

VW T25 rustoleum roller paintjob -front

Rocky hasn’t been abroad for a couple of summers but has been on numerous festival and camping adventures in the UK, and has proved to be a great mountain bike hauler over the last couple of years – there’s nothing like a mobile changing room, fridge and coffee/cooking facilities after a day mountain biking!

VW T25 at lakefest

VW T25 mtb hauler

Mechanically he is going well, since tracking down a boost leak he has been taking advantage of the legendary TDI torque. He’s been through two MOT’s – some welding and an overhaul of the front end including new spring and bushings.

VW T25 TDI vag-com

The interior got some love as well, the locker door under the rear seat had virtually disintegrated, so I made a new one from a pine shelf using the original fittings.

VW T25 devon locker door

But there’s a new kid on the block – a 2006 VW Touran. Having had Rocky as our only vehicle for over a year, we needed something a bit more modern for a runaround/ long motorway trips, and while it’s not exactly a campervan, it’s big enough to be used as a microcamper/ weekender. It’s also a great T25 parts hauler!

VW Touran parts hauler

We don’t want to be running two vehicles, especially with the very limited parking availability where we live, so a painful decision had to be made, and reluctantly Rocky will soon be up for sale. I’m sure there will be another campervan (or other portable home on wheels) in our lives, so hopefully it’s not the end of this blog – watch this space…

VW Touran parts hauler

Using Vagrant for local LAMP development

I’ve always used a local version of Apache for php dev, either the version provided with OSX, or using something like XAMPP or MAMP. On a recent freelance contract I was introduced to using Vagrant to spin up a tailored virtual machine with specific versions of php, mysql and any other relevant dependencies.

Vagrant will download a base virtual machine, and then run a provisioning script to install dependencies. Vagrant also sets up file sharing from your host machine, and port forwarding so you edit locally in your normal editor, and view locally via a web browser as if you were running a local apache instance.

The advantage of this is that once you are up and running, the Vagrant configuration can be stored in the GIT repo, so that other developers can quickly start developing using exactly the same dev environment.

A typical Vagrantfile looks like this:-

Vagrant.configure(2) do |config|
config.vm.box = "hashicorp/precise32"
# Mentioning the SSH Username/Password:
config.ssh.username = "vagrant"
config.ssh.password = "vagrant"
# Begin Configuring
config.vm.define "lamp" do|lamp|
lamp.vm.hostname = "lamp" # Setting up hostname
lamp.vm.network "private_network", ip: "" # Setting up machine's IP Address
lamp.vm.synced_folder "siteroot", "/var/www", owner: "root", group: "root"
#lamp.vm.provision :shell, path: "provision.sh" # Provisioning with script.sh
# End Configuring
config.vm.network "forwarded_port", guest: 80, host: 8080, auto_correct: true

Running “vagrant up” in a directory with this file would spin up an ubuntu VM, serving files from the “siteroot” directory. It would also attempt to run provision.sh on the VM, which can be used to install php/mysql etc.

The getting started guide on the Vagrant site is the best way to get up and running if your are interested.

You can take a man out of a camper van but…

Rocky T25/T3/Vanagon

It’s sad I know, but while visiting the warehouse where Rocky is laid up for a while, I got nostalgic for my second home, and spent a while sat inside, working on my laptop, listening to some music, and had some lunch!

I also removed the bike rack, bumpers, grilles etc. ready to attack the bodywork with an angle grinder (flap disc only – nothing too drastic!)

Microcampers, teardrop trailers and compact caravans.

2cv towing teardrop

Our VW camper is already pretty small, but will sleep four adults, and will fit in a regular parking space, but it is (for us) a second vehicle, and being a vintage vehicle, currently off the road again for some body work tidying and preventative maintenance. It therefore can be an expensive hobby, and we often discuss how we might be better off with something that could be used as a reliable family car and run-around as well as a campervan, or towed behind a small family car.

I recently went on a surf/skate trip down in Cornwall, and with Rocky off the road, found myself back in a tent. I think once you’ve experienced the relative comfort of living and sleeping in a campervan, a tent feels quite a step down! It didn’t help that I was in a tiny pop up tent, on a deflating airbed, trying to cook on a tiny picnic stove, which I struggled to keep upright.

Teardrop trailers and compact caravans such as the Eriba puck or slightly larger Pan Familia would be one solution – small and light enough to tow behind a small family car. The advantage of a caravan is that once pitched up, you can leave everything set-up and still have use of the tow car. Unfortunately, we live in a city, and have no off-street parking, so unless we paid for somewhere to store it, a trailer or caravan wouldn’t be ideal for us.

An estate car or small van is easily converted to a micro-camper with the addition of a mattress of some sort and window coverings for privacy, but a small car takes a bit more ingenuity.

After doing some research, I was amazed to see how common car-campers seem to be. Basically as long as at least one bed can be squeezed in some how, a can be used as a microcamper. If you google for “microcamper” or “car camper” on image search, you’d be surprised at the lengths people, worldwide, are going to to make their cars into DIY mini-campers.

Popular base vehicles for microcampers seem to be the Renault Kangoo and Citroen Berlingo – small, economical family cars, with an “estate” car rear end, making them like a small cargo van with the seats folded down. All manner of gadgets and conversions seem to be available, to cram in a double bed. Cooking activities usually take place to the rear of the vehicle, rather than inside – probably a sensible idea! These vehicles, or at least the van versions are the modern-day equivalent of the 2cv/ Dyane based vans – I actually wrote about an Acadiane microcamper (van version of the Citroen Dyane), a while back.

It’s not just DIY eccentrics building microcampers either – established motorhome converters are offering one and two-berth campers based on the Kangoo and Berlingo (at fairly hefty prices!). Even luxury brands such as BMW’s mini are getting in on the action, advertising the mini as a camper, using different set-ups such as a roof tent, a teardrop trailer and a single bed crammed into the interior of the clubman model.

We have a 1998 Vw “new” beetle, which we’ve done plenty of tent camping in, before we got our current camper. I started working out if there was any possible way of sleeping comfortably inside, without having to modify or remove the seating. Just for a single person, obviously – a surf-trip overnighter rather then a serious live-in vehcle. With the rear seats folded down, there isn’t enough room to stretch out, so I’ve set myself the challenge of coming up with a solution.

Anyone who has owned a new beetle will be aware how deep the dash is – space that can be taken advantage of, and also, despite being a small vehicle there is a surprising amount of headroom in the centre of the vehicle, due to the curved profile of the roof.

I recently spotted a “tent cot” on a campsite, and was also looking at a tiny hiking tent, both offering minimal headroom, just the basics in shelter from the elements – so I started studying the roof void of the beetle, and realised there could be a way to fit a full length bed in after all.

Watch this space!

Olivewood developments – Chil-LED Cold Storage Area Light

Chil-LED cold storage area light

I co-founded Olivewood Technology back in May 2007, when I decided to make the jump to freelancing. I had been developing an EDI web app for a small distribution company, and my co-founder and I decided that we should from a company to market and develop this app.

Seven years on, the app, known as “Supply Portal” is alive and well and is now a mission-critical app for the original company, and installed for another distributor, but it still needs some work to make it suitable as something “off the shelf” that people would buy without requiring modifications to fit their workflow.

In the meantime my co-founder became an expert in LED lighting, and identified a gap in the market – an LED light specifically designed for Cold Storage Areas. Vast amounts of energy are consumed extracting heat from cold storage warehouses, only for the lighting to pump heat back in. Switching to LED lights is an obvious move – apart from the reduced energy needed to run them, they also run cooler than legacy lighting systems.However, high power LED’s still produce significant amounts of heat, and this usually ends up as warm air at the top of the warehouse, resulting in a reduced area of useable storage space higher up in the warehouse and higher energy bills needed to remove that heat from the warehouse..

Chil-LED was designed to extract the heat from the LED chip and transfer it outside of the Cold Store, using a patented system of thermal heat pipes fed through a conduit to heatsinks in the void above the warehouse ceiling.

Chil-LED cold storage area light product development

So this is the main focus for Olivewood moving forward, we still build software, but we are now a technology company, we have developed the Chil-LED light and how now gone to market – exciting times!

For more information on chil-LED see the Chil-LED website

For more information on Olivewood Technology, see the Olivewood Website