Categories
programming
15 posts
-
Convenient auto-command for vim.pack.update
Read article →Neovim 0.12's new built-in package management is a breath of fresh air, but the default confirmation buffer is a bit bare-bones when it comes to quick interactions. If you're like me and want to just hit a key to sync everything up instead of using the code action
caand selecting update on each package... -
Finding Nerd Fonts in Neovim
Read article →I have been writing quite a few presentations in presenterm and was repeatedly going over to the nerd font website to search for the icon that I wanted to pick copying it, then pasting it in neovim. Surely... there is a better way.
-
Two useful aliases for use with JJ
Read article →Everyone will have the
jj tugalias defined in their list of aliases in their jj config. I would like to share two that I think are quite nifty and useful! -
Updating Treesitter's Config to use Main
Read article →If you woke up to the news that treesitter has set their default branch to
mainfrom the now frozenmasterthen you may wish to know how to now configure your plugins that depend on it in neovim. Here's how I did it in my local dotfiles. -
Speed up Python Github Actions
Read article →If you want to speed up your CI builds you can use this setup on your GitHub actions. Doing this from the previous method cut my build times from 2 minutes to 1 minute.
-
Treesitter Highlights for Jenkinsfile
Read article →Ever wanted syntax in neovim for
Jenkinsfiles? Let's create an autocommand to do just that! -
Python Logging
Read article →Just a very quick post/memo to myself about an awesome way to configure logging in python based on an excellent Github repo I stumbled across via a YouTube video.
-
2023 - A Tech Year in Review
Read article →2023 gave me the ability to experience a lot of different tools, languages, and technologies, many did not make the cut long-term but I would like to put together a list of the core tooling that I use day to day with an example or two along the way.
-
SQLAlchemy, OnUpdate & Datetime UTCNOW deprecation in 3.12
Read article →This is a quick post about migrating your
utcnow()tonow(tz=UTC)in SQLAlchemy for youronupdatefunction argument to your SQL Models. -
Connecting to Internal VPC Through Bastion in One Hop
Read article →If you've ever wanted to load up your local database IDE to view a database that sits inside an internal VPC. You may be a bit puzzled on how to do it considering most tools like DBeaver, DataGrip, TablePlus allow you to connect via SSH, but that SSH connection is always to a bastion instance. How does one connect directly?
-
Git Signing and Authentication with SSH
Read article →This is a quick guide to set up git with SSH ed25519 keys not only for authenticating with GitHub or GitLab but also for signing commits without the need to install GPG/PGP which has some serious criticisms / flaws that has led me to move into a world without it. The new world isn't as straightforward as the old so I thought I'd just throw together a quick guide to help you out.
-
Big Uploads and Checksum Validation
Read article →Ever wanted to upload big files without storing them in memory as they are being written with FastAPI?
-
Mocking the Post Method on an Async HTTPX Post Request
Read article →A quick snippet for mocking HTTP requests with an the async httpx context manager.
async with httpx.AsyncClient() as client: signup_response = await client.post( f"https://{AUTH0_DOMAIN}/api/v2/users", data=signup_request_body, headers=signup_request_headers, timeout=30, ) -
Tmux in Linux and Mac With Wezterm
Read article →After struggling to get
tmuxto run seamlessly between Mac (on ARM i.e. M1/M2) and linux due to the fact thatbrewinstalls packages to/opt/homebrew/bin/and it isn't on the path before the shell loads, I have finally worked out how to get tmux to launch/attach to existing sessions when launching a new terminal both in linux and on MacOS. -
Testing in the Terminal
Read article →Find yourself running a
pytestcommand repeatedly trying to work out what a problem is and getting sick of clicking back on the terminal window where the output is and pressing arrow up to re-run the test? Or even running tests in an IDE and sick of re-running the test time after time with your mouse?