Tom Spencer
  • about
  • blog
  • hire me
  • My Home Office

    FEB 27, 2021

    Although 2020 was the year that remote working was forced upon many, I've been enjoying the flexibility of home working for a number of years. Here's my current home office setup.


  • It's 2020: let's build a node.js app with TypeScript

    MAY 22, 2020 — JAVASCRIPT, NODEJS, TYPESCRIPT

    It's 2020. You want to build a node.js app, and you've heard great things about TypeScript. Let this post act as your guide through the forest of compilers and specifications as you navigate to the promised land: a strongly-typed node.js codebase.


  • End of Year Review 2018-19

    MAY 4, 2019 — FREELANCE

    It's that time of the year when I take the time to look back on how my business has performed.


  • VSCode + TypeScript + Prettier = Happy Developer

    DEC 7, 2018 — NODEJS, TOOLING, TYPESCRIPT, VSCODE

    I've recently found myself becoming more dependant on TypeScript for type safety and autocompletion, and Prettier to format my code consistently. In this post I'll discuss how to set up prettier to work with a TypeScript codebase in VSCode.


  • Adding click-to-copy buttons to a Hugo powered blog

    SEP 14, 2018 — JAVASCRIPT

    Writing code snippets in Hugo is simple and elegant, using a combination of markdown code fences and Hugo's support for syntax highlighting. Recently I've been looking to add a button to automatically copy a code snippet to the clipboard, and I've documented my solution in this post.


  • Deploying a Hugo-powered site to Netlify with source code syntax highlighting

    AUG 3, 2018 — WRITING

    Hugo makes it really easy to add syntax highlighting to your code snippets. In this post I'll discuss how to enable this feature, and how to configure Netlify to build your site with nicely highlighted code.


  • End of Year Review 2017-18

    MAR 31, 2018 — FREELANCE

    My financial year ends today, and so I thought I'd take a moment to review the company's progress over the past year.


  • Migrating to Hugo

    MAR 23, 2018 — THOUGHTS

    I've recently decided to take the plunge and migrate my site to Hugo.


  • A guide to installing Cordova on Windows 10

    MAY 30, 2017 — CORDOVA, MOBILE

    This is the second part of a guide to installing the Cordova framework, and deals with installation on Windows 10.


  • A guide to installing Cordova on your Mac

    MAY 29, 2017 — CORDOVA, MOBILE

    Cordova is a popular framework for building hybrid mobile applications. This post provides a complete guide on how to install it on a Mac running OS X or macOS, so you can deploy a Cordova-based app to your iOS or Android device.


  • Running a node.js app in a low-memory environment

    OCT 1, 2016 — HEROKU, JAVASCRIPT, NODEJS

    Running a node.js app in a low-memory environment requires some additional work to ensure that the v8 garbage collector is aware of the memory ceiling. This post outlines an approach to achieve this.


  • Building a simple message queue with Redis

    FEB 24, 2016 — NODEJS, REDIS

    This post explores how a simple message queue can be built to support delayed messages, using Redis.


  • Creating a demo page for your npm module

    DEC 17, 2015 — JAVASCRIPT, NODEJS, NPM

    So, you've created a super-awesome npm module, and you want to share it with the world. How do you create a demo page?


  • Setting up a Docker-based MEAN development environment

    JUL 25, 2015 — DOCKER, JAVASCRIPT, MONGODB, NODE

    A workflow for using Docker to separate your development environment for each project.


  • An Alternative to npm Private Modules

    MAY 20, 2015 — JAVASCRIPT, NODE

    In this article, I'm going to show you how you can replicate npm private hosting using GitHub or Bitbucket, and access these modules from your deployment server and/or Heroku.


  • Freelancing: Taking the Plunge

    JAN 24, 2015 — FREELANCE

    Is working full-time in a permanent job becoming a drag? Have you thought about freelancing instead? There's no time like the present.


  • Short ID Generation in JavaScript

    NOV 16, 2014 — JAVASCRIPT

    A 'short' or 'hash' ID is a seemingly random sets of characters, popularised by services which need unique but readable (and typeable) URLs.


  • No REST for the whippet

    SEP 16, 2014 — APIS, TALKS

    Over the past few days I have had the pleasure of standing up and talking about RESTful APIs.


  • Pattern Libraries

    JUL 8, 2014 — CSS, FRONT-END, HTML

    I've recently been working on a web app from the ground up. Bootstrap 3 was a good choice to get started - it is super easy to get a site up and running without having to worry too much about styling. In essence, it allowed me to build out some of the requirements with a wireframe-y front-end.


  • Angular Boilerplate

    MAY 15, 2014 — JAVASCRIPT, TOOLING

    It's important in this era of web application development to have a strong toolset at your disposal. Growing complexity with 'fat' client apps can lead to a maintenance nightmare if not properly planned and thought out.


  • Mongoose Validations

    APR 23, 2014 — BACK-END, DATABASES, JAVASCRIPT, MONGODB, MONGOOSE

    Some thoughts on validating data according to a Mongoose Schema.


  • Using Mongoose

    APR 21, 2014 — BACK-END, DATABASES, MONGODB, MONGOOSE

    I've been learning about MongoDB recently, and here are a few thoughts on my findings.


  • Learning Angular

    APR 7, 2014 — ANGULARJS, FRONT-END, JAVASCRIPT

    The last week has been an intense period of training. I've taken up the offer of a project to be built using AngularJS, and so my head has been down in tutorials, books and online docs. Here are some of the resources I found useful.


  • Becoming Angular

    MAR 31, 2014 — ANGULARJS, FRONT-END, JAVASCRIPT

    During my time at Mubaloo I was a vocal supporter of Backbone.js. But recently there has been lots of noise around AngularJS.


  • Self Employment

    MAR 25, 2014 — THOUGHTS

    While I was away, I had a lot of time to think about the future. The past 8 years building web apps have been a lot of fun - challenging, sure, but fun too. Rather quickly, I came to the conclusion that I wanted to return to doing the job I love.


  • A New Beginning

    MAR 18, 2014 — THOUGHTS


home


© 2021. Tom Spencer. Some Rights Reserved.
Powered by Hugo & Goa.