Published

All published posts

2587 posts latest post 2026-08-10 simple view
Publishing rhythm
Jul 2026 | 15 posts

Large Refactor At The Command Line

As projects grow patterns that worked early on break and we need to change things to make the project easier to work with, and more welcoming to new developers. git # [2] Before you start mucking up a project with wild commands at the terminal check that you have a super clean git status. We may make some mistakes and need a way to undo 100’s files and git makes it really easy if you start with a clean history. git status If we are ready to begin work we should see a response like this. On branch main nothing to commit, working tree clean It would also be wise to do this inside of a branch. The minute you try to do something wild in your working branch someone will walk by and ask you to do a five-minute task, but your deep in refactoring and haven’t left yourself a clean way back. git branch my-big-refactor grepr # [3] Time for the meat of this refactor replacing text across our project. I often will pop this bash function into my terminal session and tweak it as needed. This...
4 min read

Ipython-Config

I use my ipython terminal daily. It’s my go to way of running python most of the time. After you use it for a little bit you will probably want to setup a bit of your own configuration. install ipython # [1] Activate your virtual environment [2] of choice and pip install it. Any time you are running your project in a virtual environment, you will need to install ipython inside it to access those packages from ipython. pip install ipython You are using a virtual environment right? Virtual environments like venv or conda can save you a ton of pain down the road. profile_default # [3] When you install ipython you start out with no config at all. Runnign ipython profile create will start a new profile called profile_default that contains all of the default configuration. ipython profile create This command will create a directory ~/.ipython/profile_default multiple configurations # [4] You can run multiple configurations by naming them with ipython profile create [profile_name...
2 min read

Custom Ipython Prompt

I’ve grown tired of the standard ipython prompt as it doesn’t do much to give me any useful information. The default one gives out a line number that only seems to add anxiety as I am working on a simple problem and see that number grow to several hundred. I start to question my ability 🤦‍♂️. Configuration # [1] If you already have an ipython config you can move on otherwise check out this post on creating an ipython config. Ipython-Config [2] The Dream Prompt # [3] I want something similar to the starship prompt I am using in the shell. I want to be able to quickly see my python version, environment name, and git [4] branch. - python version - active environment - git branch [5] This is my zsh prompt I am using for inspiration Basic Prompt # [6] This is mostly boilerplate that I found from various google searches, but this gets me a basic green chevron as my prompt. from IPython.terminal.prompts import Prompts, Token class MyPrompt(Prompts): def in_prompt_tokens(self...
3 min read
I’m impressed by vim-tmux-runner [1] from christoomey [2]. Vim and tmux, sittin’ in a tree… References: [1]: https://github.com/christoomey/vim-tmux-runner [2]: https://github.com/christoomey
I like fkromer’s [1] project awesome-kedro [2]. No description available. References: [1]: https://github.com/fkromer [2]: https://github.com/fkromer/awesome-kedro
Just starred machfiles [1] by ChristianChiarulli [2]. It’s an exciting project with a lot to offer. The dotfiles you see in all my videos References: [1]: https://github.com/ChristianChiarulli/machfiles [2]: https://github.com/ChristianChiarulli
Check out LunarVim [1] and their project LunarVim [2]. 🌙 LunarVim is an IDE layer for Neovim. Completely free and community driven. References: [1]: https://github.com/LunarVim [2]: https://github.com/LunarVim/LunarVim
Looking for inspiration? joelhooks-com [1] by joelhooks [2]. playing with static pages References: [1]: https://github.com/joelhooks/joelhooks-com [2]: https://github.com/joelhooks

Automating my Post Starter

One thing we all dread is mundane work of getting started, and all the hoops it takes to get going. This year I want to post more often and I am taking some steps towards making it easier for myself to just get started. When I start a new post I need to cd into my blog directory, start neovim in a markdown file with a clever name, copy some frontmatter boilerplate, update the post date, add tags, a description, and a cover. Todo List for starting a post # [1] - frontmatter template - Title - slug - tags - date - cover - description - create markdown file - open in neovim Lets Automate this # [2] This aint no proper cli # [3] hot and fast As with many thing running behind the scenes on this site, I am the one and only user, I have limited time, so this is going to be a bit hot and fast. Let’s create a file called new-post. start the script new-post #!python # new-post 👆 Works on my machine If this were something that had more users than me I would probably use some...

Windowing Python Lists

In python data science we often will reach for pandas a bit more than necessary. While pandas can save us so much there are times where there are alternatives that are much simpler. The itertoolsandmore-itertools` are full of cases of this. This post is a walkthrough of me solving a problem with more-itertools rather than reaching for a for loop, or pandas. I am working on a one-line-link expander for my blog. I ended up doing it, just by modifying the markdown with python. I first split the post into lines with content.split('\n'), then look to see if the line appears to be just a link. One more safety net that I wanted to add was to check if there was whitespace around the line, this could not simply be done in a list comprehension by itself. I need just a bit of knowledge of the surrounding lines, enter more-itertools. simplified rendering function # [1] I have a function that will check to see if the line should be expanded, then render the correct template. Fist step is to ...
1 min read
WaylonWalker [1] has done a fantastic job with devtainer [2]. Highly recommend taking a look. 🐳 (dotfiles) My personal development docker container base image References: [1]: https://github.com/WaylonWalker [2]: https://github.com/WaylonWalker/devtainer
WaylonWalker [1] has done a fantastic job with WaylonWalker [2]. Highly recommend taking a look. Learning in public References: [1]: https://github.com/WaylonWalker [2]: https://github.com/WaylonWalker/WaylonWalker
Check out aoc [1] by ThePrimeagen [2]. It’s a well-crafted project with great potential. 2020 References: [1]: https://github.com/ThePrimeagen/aoc [2]: https://github.com/ThePrimeagen
Check out ZaxR [1] and their project bulwark [2]. Bulwark is a package for convenient property-based testing of pandas dataframes. References: [1]: https://github.com/ZaxR [2]: https://github.com/ZaxR/bulwark
mariokostelac [1] has done a fantastic job with sagemaker-setup [2]. Highly recommend taking a look. Useful scripts for making AWS SageMaker better References: [1]: https://github.com/mariokostelac [2]: https://github.com/mariokostelac/sagemaker-setup
I like pypeaday’s [1] project aoc-2020 [2]. Advent of Code 2020 References: [1]: https://github.com/pypeaday [2]: https://github.com/pypeaday/aoc-2020
I’m really excited about auto-editor [1], an amazing project by WyattBlue [2]. It’s worth exploring! Auto-Editor: Efficient media analysis and rendering References: [1]: https://github.com/WyattBlue/auto-editor [2]: https://github.com/WyattBlue

Adding Audio to my blog posts

This is episode 1 of the Waylon Walker Audio experience, posts from waylonwalker.com [1]{.hoverlink} in audio form. So I have had this idea for awhile to add audio to my blog posts. The idea partly comes from the aws blog, if you have ever been on their blog you will have noticed that they have a voiced by amazon polly section. What to Expect # [2] Honestly I don’t know this is all new to me and I dont have much to go off of. For now its a test that may or may not work out. I will say that the time that I have available for clean audio is a bit limited so expect these to come out in batches as I get time to go back and record. What Not to Expect # [3] One thing that makes the aws blog really hard to listen to is the robotic voice, I definitely don’t want that. This will be voiced by a real human, Me. At the same time written text doesn’t translate directly to audio well so don’t necessarily expect the audio to be word for word. Code blocks # [4] There are a lot of code block...
Check out yetudada [1] and their project yetudada [2]. No description available. References: [1]: https://github.com/yetudada [2]: https://github.com/yetudada/yetudada
I’m impressed by quickpython [1] from timothycrosley [2]. A retro interactive coding environment powered by Python and nostalgia References: [1]: https://github.com/timothycrosley/quickpython [2]: https://github.com/timothycrosley