RSSAmplifier

Blog

Lewis Codes

Opinions, Advice and Instructions on software engineering

lewis8s.codesRSS feed ↗9 posts

Latest posts

Keeping track of directories using pushd and pop

It can sometimes be hard navigate a number of directories across your filesystem, say you’re working on a personal project at the same time as a $WORK project. Usually, you’d use something like tmux or screen to have a separate workspace for each. This can work in graphical environments, but if you’re only at a tty then you’re stuck with the screen space you have. By using our friend, the stack,…

How to add Kubernetes labels to Loki using FluentBit

How to add add Kubernetes metadata labels to Loki using FluentBit

Find available hardware encoders using Mac’s VideoToolbox framework

The latest Arm Mac devices have built-in hardware encoders for common video codecs such as HEVC (H.265) and H.264, the popular x265 and x264 libraries provide a software implementation but this can be slow. As an example, the tech specs for an M1 MacBook Pro says it can:

31M Taxi Rides in EMR Serverless

What is EMR Serverless?

Homebrew on Apple silicon

Homebrew is the popular package manager for Mac that aims to be a drop-in (ish) replacement for the Linux yum or apt-get package managers. Due to the new M1 being ARM instead of the more common x86_64 Homebrew does not yet officially support the architecture.

Install Ruby on Apple silicon

If you’ve recently bought an Apple silicion device you may been wondering how you can install Ruby. You can install Ruby natively, but some native gems may not have support for ARM64.

Install Arch Linux on a 2015 MacBook Pro

Last year I decided to install the latest Arch Linux ISO onto my 2015 Retina MacBook Pro. While the installation was relatively painless configuring the system utilities and configuring the retina screen was not.

Halve Amplify build time

AWS Amplify is a “development platform for building secure, scalable mobile and web application” but it can also be used to host a static site, like this blog. This blog uses Amplify to build the static site and then push these changes to Cloudfront. Internally Amplify uses CodeBuild, Amazon’s CI/CD platform, to build the site. CodeBuild uses buildspec.yml to decide what to build and how to build.

An Introduction to Python memorisation using functools

In Python you can trade time-complexity for an increase in the memory usage of a Python script. For example, the factorial function is defined recursively f(5) = 5! = 5 * 4 * 3 * 2 * 1, where 1 is the base-case. But, what happens if we remember what 4! is equal to, by definition 5! is simply 5 * memo{4}