Rainy Sundays

Rich Gwilliam's digital shed

Vue

A different breed of creature entirely from frameworks like jQuery - which in its day was also a revolutionary scrap of code - Vue and its ilk completely re-think how web applications are built and served. I've been using it as of about 2020, and it finds a way to wriggle into most projects just by virtue of being so damn useful.

There's a point, when building for Vue, when a developer realizes exactly what Reactivity can do. They realize that their entire page will completely recalculate automatically whenever it needs to - and they stop in awe of how game-changing it is. The content of your page, and all its sub-components can be completely changed by flipping a variable from "page_name_1" to "page_name_2". Instead of scripting for change events and repopulating their page manually, everything just... works. It's elegant, it's efficient, and it's genuinely a fresh breath of air.

There's some traps, of course. Because reactivity is essentially low level black magic there are a couple of... kinks in how it can, and can't be used. For example, if your sub-sub-sub component is being passed a variable down right from the top... it needs to send its requests to change that variable all the way back up, and not change it directly, or all hell breaks loose.

What I particularly like about it though is that it's the most effective workflow I've ever seen for managing CSS bloat. SASS slipped into the template file allows for sandboxed page-specific styles when they're needed without polluting the main stylesheets.

That reduces regression because you aren't going to accidentally annihilate another page's flow by tweaking the styles; and once a page is retired, its specific styles go with it. Forget Tailwind's dubious ideology of "you're never going to avoid polluting the markup so lean into it", the build server takes your SASS, minifies it and files it exactly where it's meant to go.

The payoff for all this is that old dragon caching, or rather in this case, that files are built to production files instead of working directly from your dev source. While it's nowhere near as obnoxious as Magento, you can easily spend a significant chunk of the day chasing out an error only to find your build server stopped while you weren't looking.

Not me though. I never make mistakes like that.

I've been using Vue since Jun 2020 (5 years).

Engagements using Vue

Senior Web Developer

Vivedia

Jun 2020 - Jul 2021

At Vivedia I worked on high-volume API systems providing on-demand streaming video to customers. As a personal project, I updated internal systems to greatly improve the efficiency of services supporting the vital ops team.

  • PHP
  • Laravel
  • Vue
  • Agile
  • API development
  • DataTables
  • Ops Development
  • Git
  • Jira
  • Project planning
  • CICD

Senior Web Developer

GoSea Marine

Jun 2021 - Jan 2022

  • API development
  • Vue
  • Typescript
  • Javascript
  • CSS
  • Git
  • High capacity systems
  • Jira
  • CICD

Full-stack Developer / Devops Engineer

Hidden

Jul 2022 - Jul 2023

At Hidden, I filled the role of an API Developer as well as a Devops Engineer. I updated and expanded existing legacy code to run on AWS Lambda functions for increased efficiency, and created Jenkins build servers for the Unity development team.

  • HTML
  • Vue
  • CSS
  • Javascript
  • Typescript
  • LAMP Stack Admin
  • Linux
  • Agile
  • Ops Development
  • Git
  • PHP
  • Amazon EC2
  • Amazon S3 Buckets
  • Amazon Lambda Functions
  • AWS Suite
  • Amazon API Gateway
  • Amazon Cloudflare
  • Postman
  • API development
  • High capacity systems
  • Stable Diffusion
  • Figma
  • FTP
  • Git
  • Phinx
  • Database Migrations
  • Jira
  • Project planning
  • CICD
  • Jenkins
  • Technical writing
  • Generative AI

Contract Senior Full-stack Developer

Polygon

Jul 2024 - Nov 2024

Maintenance and upgrade of a legacy native PHP 5.6 API with massive data sets to provide new functionality for clients both inside and outside the company.

  • PHP
  • HTML
  • CSS
  • Javascript
  • API development
  • Postman
  • Vue
  • Apache
  • Database Migrations
  • Agile
  • Git
  • SQL
  • NPM
  • Jira
  • CICD

Contract Senior Full-stack Developer

STS Commercial

Feb 2025 - Aug 2025

Development of high-precision bespoke analytics and diagnostic modules on a Laravel base to surface opportunities and weaknesses in extremely high-volume, fast moving Fintech data and fine-tune performance for emerging markets. Innovative and intuitive modelling of data, completely revolutionizing how stakeholders analyse performance.

  • Laravel
  • Javascript
  • CSS
  • HTML
  • PHP
  • API development
  • Vue
  • Database Migrations
  • Linux
  • Git
  • Docker
  • SQL
  • Figma
  • LAMP Stack Admin
  • BASH
  • NPM
  • NodeJS
  • Postman
  • High capacity systems
  • Ops Development
  • Jira
  • MAMP stack admin
  • Technical writing