backend1css2deployment2frontend4graphql1javascript10linux3networking2react4rust1testing1tooling6

Using React Hooks with Class Components

November 05, 2019
7 minute read
0 claps
javascript, react, frontend

Writing custom hooks is fun and they're a great way of creating reusable chunks of logic which can be easily used across multiple components. The only downside to them is that they only work with functional components. If you have a codebase which…

Have you used React Object Components?

August 14, 2019
9 minute read
0 claps
javascript, react

With the release of React Hooks I have seen a lot of posts comparing class components to functional components. Functional components are nothing new in React, however it was not possible before version 16.8.0 to create a stateful component with…

Ownership with Rust

July 15, 2019
8 minute read
0 claps
rust

I've recently started learning the Rust programming language, I'm still very much a novice but thought it would be beneficial to attempt to explain some of its features here.Ownership is one of the key features of Rust. Unlike other languages, Rust…

Tools for big code changes

June 10, 2019
3 minute read
0 claps
tooling

In my team at work we currently have five apps which have been written in React. These apps were all sharing components held in a single repository. As the number of apps and components is increasing, we decided it would be a better idea to separate…

Updating state in React with hooks

May 12, 2019
6 minute read
0 claps
javascript, react, frontend

Very often when writing an application in React you will need to update some state from a child component. With components written as ES6 classes, the usual method was to pass a function down to the children as a prop bound to the context of the…

GraphQL server with MongoDB and Koa

April 07, 2019
12 minute read
0 claps
javascript, backend, graphql

One of the things I've enjoyed most about using Gatsby is learning to use GraphQL. I've just started creating an app which needs to save calendar events to a database so I thought it would be cool to see if I could create a GraphQL server instead of…

Goodbye Windows!

March 31, 2019
5 minute read
0 claps
linux

I've always used Windows computers, I used them at work before I started doing what I do now, I used them at home for making music and editing photos and they're what I learned to code on. When I interviewed for my first job as a UI developer I sat a…

Bash tips

March 13, 2019
5 minute read
0 claps
linux

This post is as much for myself as it is for anyone else and I will update it whenever I come across anything that I find that is worth including. The below are all of the cool little bash commands for linux/unix that I have stumbled across…

Behind the scenes

March 10, 2019
10 minute read
0 claps
deployment, networking, tooling, linux

I want to try to write blog posts about things that I know now that I would have liked to have known before I knew what I now know (or TTIKNTIWHLTHKBIKWINK for short). One of those things is how to get a website onto the internet once you have…

CSS in JS (part 2)

March 03, 2019
7 minute read
0 claps
javascript, css, tooling, react, frontend

In my last blog post I wrote about how I had started using Emotion instead of Sass. Initially I was using Emotion's framework-agnostic package, but I have now switched to using the version which they created specifically for use with React because it…

CSS in JS

February 20, 2019
4 minute read
0 claps
javascript, css, tooling, frontend

I've looked at CSS in JS libraries before but there always seemed be trade-offs which have made them appear less attractive than Sass or even plain CSS. However, I have recently been playing around with Emotion and I'm pretty impressed so I thought I…

IP addresses

February 17, 2019
6 minute read
0 claps
networking

As a web developer it is presumably beneficial to have a basic understanding of how the internet works! This isn't something I've known a great deal about, I've always just taken it for granted so I've decided to write some posts to further my own…

Promises, promises

February 05, 2019
8 minute read
0 claps
javascript

Unlike a lot of other languages, JavaScript is single-threaded which means it can only process one command at a time. We often need to get data from other sources, be it from a database, server or the user and I'm sure you can imagine how bad our…

Creating a VS Code extension

January 30, 2019
13 minute read
0 claps
javascript, tooling, testing

Where I work we have become quite particular about making our code line up vertically in the import sections and when declaring some objects, so that it looks nice and neat! My colleague commented that it would be nice if there was an extension for…

Semantic versioning with NPM

January 22, 2019
5 minute read
0 claps
javascript, tooling, deployment

When you release code it's a really good idea to assign a version number to it. This gives users a useful reference number they can send to you if things aren't working as expected (making it easier to track down bugs), gives you a safe point you can…

Using closures

January 20, 2019
3 minute read
0 claps
javascript

When I was learning about closures in JavaScript for the first time I saw a lot of examples like this:Now, it was pretty clear to me what was happening; the outer function (which is an Immediately Invoked Function Expression or IIFE for short…