markdown-it-pyrs
A Python interface for markdown-it.rs, using Rust for blazingly fast Markdown parsing ā”ļø
PyPI Ā· pypi.org [1]
markdown it py running in rust claims to be 20x faster. Iāll definitely look into this if markdown it py is ever a bottleneck in my performance. At first glance it appears that plugins are written in rust not python, and there is no admonition plugin, so Iāll keep my eye on it for now, but I canāt use it.
Note
This post is a thought [2]. Itās a short note that I make
about someone elseās content online #thoughts
References:
[1]: https://pypi.org/project/markdown-it-pyrs/
[2]: /thoughts/
Published
All published posts
2493 posts
latest post 2026-05-11
Publishing rhythm
[1]
diskcache has a peekitem method that allows you to lookup the expire_time of a cached item without changing it. I recently used this to implement debounce for fastapi [2] background tasks with multiple workers running. since all the workers I care about are on the same machine, but running in different processes diskcache was a great option. All workers have access to the same disk, but not the same variables in memory.
Note
This post is a thought [3]. Itās a short note that I make
about someone elseās content online #thoughts
References:
[1]: /static/https://grantjenks.com/docs/diskcache/api.html#diskcache.Cache.peekitem
[2]: /fastapi/
[3]: /thoughts/
-
Great intro into kustomize. This helped me get started with kustomize.
Note
This post is a thought [1]. Itās a short note that I make
about someone elseās content online #thoughts
References:
[1]: /thoughts/
Iāve been using fastapi [1] more and more lately and one feature I just started
using is background tasks [[ thoughts-333 ]].
Seealso
basic diskcache example <a href="/python-diskcache/" class="wikilink" data-title="How I setup a sqlite cache in python" data-description="When I need to cache some data between runs or share a cache accross multiple processes my go to library in python is . It's built on sqlite with just enough..." data-date="2022-03-29">How I setup a sqlite cache in python</a>
One Background Task per db entry # [2]
I am using it for longer running tasks and I donāt want to give users the
ability to spam these long running tasks with many duplicates running at the
same time. And each fastapi worker will be running in a different process so I
cannot keep track of work in memory, I have to do it in a distributed fashion.
Since they are all running on the same machine with access to the same disk,
diskcache is a good choice
What I need # [3]
- check if a job is running
- automatically expire jobs
Less infrastructure complexity # [4]
My brain first went to thinking I needed another service like redis running
alongside fastapi for this, then it hit me that...
Iām really excited about homelab-diagrams [1], an amazing project by Doomlab7 [2]. Itās worth exploring!
A repository to house diagrams for my homelab [3]
References:
[1]: https://github.com/Doomlab7/homelab-diagrams
[2]: https://github.com/Doomlab7
[3]: /homelab/
learn-pdm [1] by pypeaday [2] is a game-changer in its space. Excited to see how it evolves.
A repository for learning and playing with the pdm package manager/system for python
References:
[1]: https://github.com/pypeaday/learn-pdm
[2]: https://github.com/pypeaday
If youāre into interesting projects, donāt miss out on zmk-config-fourpad [1], created by wyattbubbylee [2].
my fourpad keybord
References:
[1]: https://github.com/wyattbubbylee/zmk-config-fourpad
[2]: https://github.com/wyattbubbylee
kind cluster
kind [1]{.hoverlink} is a very useful tool to quickly standup and
teardown kubernetes clusters. I use it to run clusters locally. Generally
they are short lived clusters for trying, testing, and learning about
kubernetes.
Kind is Kubernetes in Docker, its very fast to get a new cluster up and
running. Other than checking a box in docker desktop it is the easiest way
currently to get a cluster up and running. Iāve used docker desktop for k8s
before I really developed on k8s and it was buggy at the time and sometimes
started and sometimes didnāt, when it didnt I had no idea how to fix it. Iād
suggest kind as the best option to get a cluster up and running locally.
Not Production # [2]
If you are looking for a production ready cluster this is not it. I really
like k3s [3]{.hoverlink}. At the time that I chose k3s it was
the most lightweight option that easily supported multi-node clusters.
Starting a kind cluster # [4]
The first step, and maybe only one that you need is to create ...
Yesterday I realized that I have overlooked the default installation method of
the sealed secrets controller for kubernetes kubeseal [1] this whole time an
jumped straight to the helm section. I spun up a quick kind cluster [2] and
had it up quickly. I canāt say this is any better or worse than helm as I have
never needed to customize the install. According to the docs you can customize
it with [[ kustomize ]] or helm.
# option if you don't have a cluster try with kind
kind create cluster
curl -L https://github.com/bitnami-labs/sealed-secrets/releases/download/v0.27.0/controller.yaml > controller.yaml
kubectl apply -f controller.yaml
References:
[1]: /kubernetes-kubeseal/
[2]: /kind-cluster/
I like rothgarās [1] project bashScheduler [2].
Kubernetes scheduler written in less than 100 lines of bash š¬ š
References:
[1]: https://github.com/rothgar
[2]: https://github.com/rothgar/bashScheduler
Alternatives
A Pro Micro alternative for wireless keyboards. Contribute to joric/nrfmicro development by creating an account on GitHub.
GitHub Ā· github.com [1]
Huge list of micro controllers tried and used in keeb builds.
Note
This post is a thought [2]. Itās a short note that I make
about someone elseās content online #thoughts
References:
[1]: https://github.com/joric/nrfmicro/wiki/Alternatives
[2]: /thoughts/
Iām impressed by nrfmicro [1] from joric [2].
A Pro Micro alternative for wireless keyboards
References:
[1]: https://github.com/joric/nrfmicro
[2]: https://github.com/joric
External Link
X (formerly Twitter) Ā· x.com [1]
Not gonna lie, kinda pumped about this one. I manually did one, jotted down the coordinates, opened the gcode in vim, added markers between setup/teardown and print. then added the wipe, the copy pasted the print+wipe section a bunch of times.
My printer tends to run a bit better on single prints than printing a dozen at once as it has less issues with retract start and stop.
Note
This post is a thought [2]. Itās a short note that I make
about someone elseās content online #thoughts
References:
[1]: https://x.com/_WaylonWalker/status/1807594004453667134
[2]: /thoughts/
-
another great use and demo of the one eyed fighting kirby
Note
This post is a thought [1]. Itās a short note that I make
about someone elseās content online #thoughts
References:
[1]: /thoughts/
[1]
Damn, supply chain vector attacks are wild. Random guy in Primes stream was getting $40k offers to buy their open source project while in university and they have never made anything from it. What a social engineering attack this is. It would be so easy to make it look like a good deal and that the package was going to a good new owner who has real resources to maintain it.
Note
This post is a thought [2]. Itās a short note that I make
about someone elseās content online #thoughts
References:
[1]: /static/https://www.youtube.com/watch?si=6NK4iCu1b1rCDo7a&t=555&v=mmlHQyMOK7Y&feature=youtu.be
[2]: /thoughts/
Found: OverlayKey X
Designed by @yfuku_, a keyboard to place on top of your laptop.
Thomas Baart's Microblog Ā· micro.thomasbaart.nl [1]
This is almost exactly what I have been thinking about building for quite awhile. I am going to give it a good try with a few $$ in filiment some cheap switches a microcontroller and go pretty bare bones, maybe open wiring on the bottom.
Note
This post is a thought [2]. Itās a short note that I make
about someone elseās content online #thoughts
References:
[1]: https://micro.thomasbaart.nl/2024/06/12/overlaykey-x/
[2]: /thoughts/
Queueing ā An interactive study of queueing strategies ā Encore Blog
In this blog, we go on an interactive journey to understand common queueing strategies for handling HTTP requests.
Encore ā Open Source Backend Framework for robust distributed systems Ā· encore.dev [1]
Absolutely sick post. This is top tier animated blog posts. This posts demos how different queuing systems work with fantastic interactive demos.
Note
This post is a thought [2]. Itās a short note that I make
about someone elseās content online #thoughts
References:
[1]: https://encore.dev/blog/queueing
[2]: /thoughts/
-
Supply chain attacks are so big these days engineers definitely need to take these into consideration. Itās wild that such a simple attack vector hit some really big applications. This particular vector is so easy to avoid. You are already hosting web content, just curl the file and self host [1] the script, then you own it. That eliminates this attack vector all together, but doesnāt completely remove supply chain attacks, the js file can still hit external apis internally.
What I see has happened in this case is that the owner of the domain polyfill.io changed. so anyone who directly linked to them got a malware injected script used.
I can only imagine the number of applicatons that are not even being maintained anymore getting hit by this. TLDR, if you are taking something to production, where you are goind to deploy it and let it run, host the js yourself. these cdns are great for prototyping, but tread with caution.
Note
This post is a thought [2]. Itās a short note that I make
about someone elseās content online #thoughts
References:
[1]: /self-host/
[2]: /thoughts/
- YouTube
Enjoy the videos and music you love, upload original content, and share it all with friends, family, and the world on YouTube.
youtube.com [1]
Well spoken prime. Co-pilot is a fantastic tool for templating, boilerplate, or just getting something done that is just outside your knowledge or care to know. Bit if you really want to learn something, you need to use your hands. Reading the solution only gives you the happy path. This does not give you that path that most people would take, and completely misses debugging. If you are very new and learning itās unlikely that you can write large blocks of code without running a test or a script to try it. Taking these shortcuts will hinder your ability to do it yourself.
If I were to devils advocate here, copilot is still not the greatest at the big picture, you still have to drive, and tell it I want to use python, fastapi [2], I want to load settings from .env. taking these shortcuts can help you move quick and get the big picture. This is especially helpful for someone who might know one language or framework and is trying a different one, but at some point you need to do the work and learn if you are going to be effecti...
GitHub - dropbox/pyannotate: Auto-generate PEP-484 annotations
Auto-generate PEP-484 annotations. Contribute to dropbox/pyannotate development by creating an account on GitHub.
GitHub Ā· github.com [1]
pyannotate is a tool that uses runtime types to suggest type annotations to use. Test runners such as pytest can be used to generate the types.
Note
This post is a thought [2]. Itās a short note that I make
about someone elseās content online #thoughts
References:
[1]: https://github.com/dropbox/pyannotate
[2]: /thoughts/