- Using a Notion Database to Generate a Dynamic Links Page on My Blog
September 28,
2024
My workflow for adding links I save in Notion to my blog.
- How to get Free Maps on a Garmin Watch with a Mac Computer
September 15,
2024
How to add free maps to your Garmin watch when you have a mac computer using https://extract.bbbike.org/ and OpenMTP.
- Beautiful Reporting with Quarto Lighting Talk at PyCascades Seattle 2024
September 11,
2024
My lighting talk "Beautiful Reporting with Quarto" at PyCascades Seattle 2024.
- Managing Data Science Projects with uv
August 28,
2024
How I use uv to manage a Python data science project. uv can replace pyenv, poetry, and pipx.
- Using nushell with kubectl
August 3,
2024
How to use nushell with kubectl
- Using DuckDB to Query Kobo Data
June 23,
2024
How to use DuckDB to query books, highlights, and annotations from a Kobo eReader.
- Replacing pip with uv for Python projects
April 21,
2024
uv is "an extremely fast Python package installer and resolver, written in Rust" from https://astral.sh. Recently, I have started using uv in my day-to-day Python workflows. After a few weeks of usage I am sold! uv will be my go-to package manager for Python projects moving forward. It is MUCH faster than pip and I really like the new workflow it provides me with `uv pip compile` and `uv pip sync`.
- My requirements.txt workflow for a new Python project
January 9,
2024
My workflow for using a requirements.txt file in a new Python project.
- How to use 1Password for Secrets in ~/.bashrc or ~/.zshrc (UPDATE)
November 28,
2023
An update on how I managed my secretes in the terminal with 1Password.
- Automatic Homelab HTTPS with Caddy and Cloudflare
November 19,
2023
Caddy and Cloudflare make it easy to get TLS certificates for your homelab. In this blog post I will walk you through how to set up Caddy and Cloudflare for automated TLS!
Tags:
linux homelab infrastructure command line tls
Read more
- How to use 1Password for Secrets in ~/.bashrc or ~/.zshrc
November 3,
2023
An update on how I managed my secretes in the terminal with 1Password..
- How to Fix renv Numpy Issues
October 12,
2023
Reticulate is an R library that lets you execute Python code from within R. Recently, I attempted to use reticulate to access numpy from Python. Numpy was installed, but I kept getting an error message.
- How to use pyenv with reticulate
July 13,
2023
The reticulate package allows you to execute Python code from R. If you use pyenv to install Python the default options will not work with reticulate.
- How to Send and Execute Code from The Editor to Terminal in VS Code
June 11,
2023
VS Code has a built in feature that allows you to send code directly from the editor to the terminal. By default, it is not assigned to any shortcut. You can assign it to a shortcut by adding the following to your `keybindings.json` file.
- How to Get Basic Info About Your Linux Server
April 15,
2023
I always forget these commands... so here is my list of helpful commands to get information about your server.
- How to learn Kubernetes
April 14,
2023
Over the past year I have dedicated a lot of time to learning Kubernetes. Here are the resources I have found most helpful!
- Do Everything with Pydantic - Lightning Talk PyCascades 2023
March 19,
2023
My lighting talk "Do Everything with Pydantic" for PyCascades 2023 in Vancouver.
- kubectl exec Into a Pod Without Knowing the Pod Name
February 13,
2023
I always forget how to exec into a pod in Kubernetes without knowing the pod name. This is a quick reminder for myself.
- How to Set Linux User Passwords Without Interaction
January 9,
2023
I often want to create new users in Linux for testing. Creating new users without interaction can be challenging to automate because the `passwd` command provides no way for you to pass in a plain text password. It will prompt you for a password which is OK for interactive sessions but not suitable for automation (e.g. creating new users in Pulumi).
- How to do a Full Code Review on GitHub
October 27,
2022
GitHub has a friendly UI for performing code reviews. However, it only allows you to leave comments on the changed code. It does not allow you to leave comments or suggestions on existing code.
- The Best Way to Install Jupyter Lab (it's Pipx)
October 23,
2022
Installing and managing your Python environment can be tricky. After many years of experimentation, here is my advice on the best way to install Jupyter Lab (and notebook).
- Using Jinja2 Templates with Pulumi
July 14,
2022
Over the last few months, I have spent a lot of time working on AWS. I often need to spin up EC2 instances, databases, or other assets for testing. Doing this by hand can become burdensome. You need to click through the AWS CLI and keep track of everything you have created. This sounds like a perfect use case for infrastructure as code. Enter Pulumi!
- How to create a FastAPI Web App with authentication
April 14,
2022
How to create a FastAPI web app with authentication.
- How to create a FastAPI Web App with MongoDB and Beanie
March 18,
2022
A working example of a web app that uses FastAPI, MongoDB, and Beanie.
- The Ultimate Data Science Setup for Mac (2022 update)
February 15,
2022
You may think I am crazy, but I really enjoy setting up my computer. I am the kind of person who likes to wipe their computer clean every so often and start fresh with a clean slate. This blog post is an update to an earlier blog post from 2020. A lot has changed since then, so here is a look at my current setup.
- How to learn R
January 31,
2022
As a data scientist one of the most common questions I get from colleagues and clients is how to get started on learning R. There is a plethora of great options out there today. Some of which are paid, and some of which are free.
- The Ultimate Data Science Setup for Mac (2020)
June 8,
2020
One of the funnest (and most frustrating) parts of data science is the vast array of tools available to us. It can be overwhelming where to start. Every now and then I like to completely wipe my computer clean, and then reinstall everything from scratch. This helps clean up my computer, and make sure everything is running smoothly.
- Is UFC Judging Fair?
May 31,
2020
When a UFC match ends with a knock-out or submission there is never any doubt who the better fighter was. But only 54% of fights end with a knock-out or submission. The other 45% of fights go to the judges score cards.
- How to Open GitHub.com Repo from the Command Line
February 8,
2020
During my Masters of Data Science I was often working on many GitHub repos at the same time. Most of our homework was graded on GitHub.com, so it was important to ensure that after pushing my local repo to GitHub.com that everything rendered correctly.
- How to Open Jupyter Notebooks with a Double Click (Mac OS)
January 31,
2020
Jupyter Notebooks are an awesome tool. The standard way to open a Jupyter Notebook is from the command line.
- How to Deploy a Containerized Python Dash App to Heroku
November 15,
2019
I love using Plotly to build interactive visualizations. The syntax is very similar across R and Python, and plots looks great.
Tags:
viz python dashboards data science
Read more
- Cycle Touring the BC Coast
August 31,
2019
With a few spare days between finishing work and starting a masters program at UBC I was keen to experience some adventure before going back to school. Since moving to Vancouver 1 year ago, I had been imagining some of the cycle touring trips I may do. BC's West coast holds so many potential options.
- Cycling Across Canada
August 22,
2019
During my first year of university my friend Cory and I began to plan a cycling trip across Canada. I don't exactly remember where the idea came from, but it quickly developed from a dream to something that could actually happen. We decided to raise money for the B.C. Cancer Foundation, as both of our families have been effected by cancer. We raised over $15,000 from friends, families, and local businesses. The experiences of fundraising, and the completion of the actual cycling trip have been two of the most rewarding experiences of my life.
- The Best Great Lake Surfing Videos
July 17,
2019
Here are a handful of videos that inspired me to get out there, buy a surfboard and surf the Great Lakes.
- Cycling Portugal
January 1,
2018
While studying abroad in Istanbul I took my semester break to travel to Portugal and cycle from Lisbon to Faro. The goal of the trip was to really enjoy the nature. I wanted it to be slow paced and relaxing. I wanted to take many stops, and enjoy all the sights and sounds. When I cycled across Canada there was no stopping to smell the roses. We were really determined to get across the country in 50 days, so we missed a lot of cool sights along the way for the sake of time.
- Cycling from Kingston to Toronto
June 27,
2015
After 4 years of school at Queen's University I was at last done. I wrote my final exam, packed my things, and the next morning departed on a bike ride from Kingston to Toronto with my friend Sam I have known since our first year together at Queen's. The trip was more or less a spur of the moment adventure. We planned the idea several weeks before leaving, and only came up with a rough estimate of where we would be each day.
- Running Across PEI
September 9,
2012
The summer of 2013 I and my friends Cory Babiak, Taylor Jenkins, and Jose Pauig ran across PEI. Jose followed us on a bike for support; Cory Taylor and myself all ran. We raised over $7000 for Project Jumpstart, a charity that helps Canadian Kids who cannot afford to play sports get in the game. The run itself was over 6 marathons in six days. It ended up being an extremely challenging task, much harder on the body than cycling. By the end we were running and walking the trail, and moving at a snails pace, but we did finish in our goal of 280 km in six days!