Just starred Repo-Roster [1] by nastyox [2]. It’s an exciting project with a lot to offer.
Shout-out supporters in your GitHub README file.
References:
[1]: https://github.com/nastyox/Repo-Roster
[2]: https://github.com/nastyox
Published
All published posts
2493 posts
latest post 2026-05-11
Publishing rhythm
What's New in Kedro 0.16.6
Kedro 0.16.6 [1] is out! Let’s take a look through the release notes
Deployment Docs # [2]
This is really exciting to see more deployment options coming from the kedro team. It really shows the power of the framework. The power of some of these orchestrations options is incredible.
- Argo [3]
- Prefect [4]
- Kubeflow [5]
- Batch [6]
- SageMaker [7]
Most of them hinge on a sweet combination of the kedro cli, docker image, and the pipeline knowing your nodes dependencies.
Argo, Prefect, and Kubeflow have an interesting technique where they translate the pipeline and its dependencies from kedro to their language.
Batch uses the aws cli to submit jobs, one node per job, and listen for them to complete. It will submit all nodes with completed dependencies at once, meaning that we can get some massive parallelization.
I did a quick and dirty test of one of these by simulating the technique in a bash script and saw a 40 hr pipeline finish in about 1 hour. I am excited to get thi...
mkdocs [1] by mkdocs [2] is a game-changer in its space. Excited to see how it evolves.
Project documentation with Markdown.
References:
[1]: https://github.com/mkdocs/mkdocs
[2]: https://github.com/mkdocs
A brain dump of stories
I started making stories as kind of a brain dump a few times per day and
posting them to
[LinkedIn](https://www.linkedin.com/in/waylonwalker/(https://www.linkedin.com/in/waylonwalker/).
Here are the last 11 days of stories.
I store all the stories on my website with the hopes of doing something with
them on my own platform eventually. For now it makes it easy to make these
posts.
cd static/stories
ls | xargs -I {} echo ''
Stories 10-10-2020 - 10-21-2020 # [1]
[2]
[3]
[4]
[5]
[6]
[7]
[8]
[9]
[10]
[11]
[12]
[13]
[14]
[15]
References:
[1]: #stories-10-10-2020---10-21-2020
[2]: https://waylonwalker.com/stories/TIL-kedro-sorts-nodes.png
[3]: https://waylonwalker.com/stories/disable-base-pip.png
[4]: https://waylonwalker.com/stories/discovered-social-cards.png
[5]: https://waylonwalker.com/stories/find-kedro-de1-contributor.png
[6]: https://waylonwalker.com/stories/hacktoberfest-2020-kedro-538-tests-pass.png
[7]: https://waylonwalk...
Check out mmchougule [1] and their project kedro-grpc-server [2].
Kedro gRPC Server is a Kedro plugin that creates a gRPC server for triggering and monitoring pipeline runs using a general-purpose RPC framework gRPC
References:
[1]: https://github.com/mmchougule
[2]: https://github.com/mmchougule/kedro-grpc-server
Check out yetudada [1] and their project kedro-user-testing [2].
Discovery prototypes for user testing
References:
[1]: https://github.com/yetudada
[2]: https://github.com/yetudada/kedro-user-testing
The work on flynt [1] by ikamensh [2].
A tool to automatically convert old string literal formatting to f-strings
References:
[1]: https://github.com/ikamensh/flynt
[2]: https://github.com/ikamensh
charmbracelet [1] has done a fantastic job with glow [2]. Highly recommend taking a look.
Render markdown on the CLI, with pizzazz! 💅🏻
References:
[1]: https://github.com/charmbracelet
[2]: https://github.com/charmbracelet/glow
Check out mytechnotalent [1] and their project Python-For-Kids [2].
A FREE comprehensive online Python development tutorial FOR KIDS utilizing an official BBC micro:bit Development Board going step-by-step into the world of Python for microcontrollers.
References:
[1]: https://github.com/mytechnotalent
[2]: https://github.com/mytechnotalent/Python-For-Kids
I’m impressed by pycon_pybadge_2020 [1] from nnja [2].
Initial code for Microsoft’s PyBadge at PyCon 2020
References:
[1]: https://github.com/nnja/pycon_pybadge_2020
[2]: https://github.com/nnja
Fix git commit author
I was 20 commits into a hackoberfest PR when I suddenly realized they they all had my work email on them instead of my personal email 😱. This is the story of how I corrected my email address on 19 individual commits after already submitting for a PR.
- Change the email for this repo [1]
- Prepare for rebasing [2]
- start the rebase [3]
- 🛠 Fix First wrong Commit [4]
- Fix all commits [5]
- Done [6]
- ReCap [7]
Change the email for this repo # [1]
stop the bleeding
Before anything else set the email correctly!
cd kedro
git config user.name "Waylon Walker"
git config user.email [email protected]
Prepare for rebasing # [2]
First thing is to find how many commits back this mistake goes. I opened up the git [8] log, and saw mine went back 19 commits. I rolled back 20 just to be sure.
$ git log
...
commit a355926b9d7ec4c05659adaa254beefbdb036332
Author: WaylonWalker <[email protected]>
Date: Sat Oct 17 10:28:59 2020 -0500
give name of function inside incorrect parameters erro...
I like muesli’s [1] project duf [2].
Disk Usage/Free Utility - a better ‘df’ alternative
References:
[1]: https://github.com/muesli
[2]: https://github.com/muesli/duf
Designing a "Router" for kedro
nodes_global # [1]
I released a router-like plugin for kedro back in April 2020. This was not the first design, the idea actually came from one of the QB folks who taught me kedro nearly a year before. We were assembling our pipelines with something called nodes_global. It worked fairly well but did have some issues around being set as a global variable.
But…
One thing in particular that it did not lend itself well to was being able to create a packagable pipeline that I could pip install and append into any of my existing pipelines. Something I am still trying to work out, maybe I don’t need this. I think I have it working for our internal pipelines and it seems like the way to go, but we don’t necessarily end up using it.
Also…
With this pattern all of the nodes needed to be importable by the module containing nodes_global. I find that this becomes a big hurdle for new pipelines coming from jupyter to overcome and can be most infuriating when their nodes aren’t getting ran af...
I came across python_training [1] from AnkurDedania [2], and it’s packed with great features and ideas.
Intro to Python
References:
[1]: https://github.com/AnkurDedania/python_training
[2]: https://github.com/AnkurDedania
github [1] has done a fantastic job with renaming [2]. Highly recommend taking a look.
Guidance for changing the default branch name for GitHub repositories
References:
[1]: https://github.com/github
[2]: https://github.com/github/renaming
Reclaim memory usage in Jupyter
Today I ran into an issue where we had a one-off script that just needed to
work, but it was just chewing threw memory like nothing.
It started with a colleague asking me How do I clear the memory in a Jupyter
notebook, these are the steps we took to debug the issue and free up some
memory in their notebook.
How do I clear the memory in a Jupyter notebook?
Pre check the status of memory # [1]
There are a number of ways that you can check the amount of memory on your
system. The easiest is not necessarily my first go to is free… literally
free.
check for free space
$ free -h
total used free shared buffers cached
Mem: 15G 15G 150M 0B 59M 8.7G
Generally my first go to is a bit more graphical, and not available on a stock
stystem, but far more useful…. htop. htop [2] is a
terminal process explorer that shows cpu usage, mem usage, and running
processes.
htop
sudo apt-get install htop # install it from your package repo
htop
[3]
First step throw more swap at it # [4]
Often be...
Strip Trailing Whitespace from Git projects
A common linting error thrown by various linters is for trailing whitespace. I
most often use flake8. I generally have
[pre-commit](https://waylonwalker.com/pre-commit-is-awesome
hooks setup to strip this,
but sometimes I run into situations where I jump into a project without it, and
my editor lights up with errors. A simple fix is to run this one-liner.
One-Liner to strip whitespace # [1]
bash
git grep -I --name-only -z -e '' | xargs -0 sed -i -e 's/[ \t]\+\(\r\?\)$/\1/'
[2]
read more about how pre-commit is awesome [3]
References:
[1]: #one-liner-to-strip-whitespace
[2]: https://waylonwalker.com/pre-commit-is-awesome
[3]: /pre-commit-is-awesome/
tpope [1] has done a fantastic job with vim-sleuth [2]. Highly recommend taking a look.
sleuth.vim: Heuristically set buffer options
References:
[1]: https://github.com/tpope
[2]: https://github.com/tpope/vim-sleuth
actions [1] has done a fantastic job with setup-python [2]. Highly recommend taking a look.
Set up your GitHub Actions workflow with a specific version of Python
References:
[1]: https://github.com/actions
[2]: https://github.com/actions/setup-python
I came across starter-workflows [1] from actions [2], and it’s packed with great features and ideas.
Accelerating new GitHub Actions workflows
References:
[1]: https://github.com/actions/starter-workflows
[2]: https://github.com/actions