I made a web-based version of Sawayama Solitaire(opens in new tab)
Curated river of news
Latest posts from blogs I follow
I’ve always been very focused on building and maintaining large web applications and systems, as such I feel like I skipped over some of the basics early on in my career. Due to this and my curiosity as to how ...
Python is 32 years old language, yet it still doesn't have proper, true parallelism/concurrency. This is going to change soon, thanks to introduction of a "Per-Interpreter GIL" (Global Interpreter Lock) which will land in Python 3.12. While release of Python ...
Introduction In the 27th post of the series, we will be looking into random number generation in golang. We will be exploring how to create a random number, gen
I recently came across an issue where a web page would “hang”. The page was loaded and everything visible, but all javascript functionality such as click handlers were un-responsive. That was until the page had finished loading a minute later ...
For a web side project to go from "working on desktop" to "live in the cloud", one decision that needs to be made is where to host everything. One option is Microsoft Azure. Lots of corporate sites use it. Is ...
Python is known to come with "batteries included", thanks to its very extensive standard library, which includes many modules and functions that you would not expect to be there. However, there are many more "essential" Python libraries out there that ...
Django has some built in ways to test your application. There's also pytest-django and other plugins that help with testing. Carlton Gibson and Will Vincent from the Django Chat Podcast join the show to discuss how to get started testing ...
An exploration of the problems and possible futures of flooding the web with generative AI content
Sometimes you have a test order issue CI that you want to debug locally, and to do that you need to only run the tests that knapsack runs in the relevant shard, in the right order. Here’s how to do ...
Not only is tmux my favorite way of managing my workspace, but I can honestly say it's the one piece of software that has had the biggest impact on the way I write code
Mastodon won't be the next Twitter, and it's not because of Bluesky. The ideals and execution won't scale.
Ever seen a code base where understanding a simple method meant jumping through tangled class hierarchies? We all have! And while “Favor composition over inheritance!” is almost as old as object-oriented programming, strictly avoiding all types of subclassing leads to ...
Shareable, browser-based documents that can compile and run code
When it comes to synthetic testing, engineers often rely on 3rd party platforms such as Datadog or New Relic that provide this type of monitoring. If you're running your applications and services on Kubernetes though, you can spin up synthetic ...
Classifiers are one bit of Python project metadata that predates PyPI. Classifiers are weird. They were around in setuptools days, and are still here with pyproject.toml. What are they? Why do we need them? Do we need them?Which classifiers should ...
Running live demos can be stressful. You know what you want to say and show. You prepare the CLI commands you want to run to best showcase what you've built, but then you waste time typing long commands; you make ...
Should we think of open source components the same way we think of physical parts for manufactured goods? There are problems with supply chain analogy when applied to software. Thomas Depierre discusses some of those issues in this episode. Links:I ...
I’ve had an idea for a bit and wanted to try it out. There’s no reason why it wouldn’t work but I can certainly think of a few reasons why would woudn’t want to do this. Bad Reasons Active Directory ...
Throughout my years as a sysadmin, I have needed to synchronize user information and HR data. In a previous job at a university, I developed a script to synchronize Oracle user information with AD data. I have written this script ...
Introduction In this 26th part of the series, we will be covering the basics of using regular expressions in golang. This article will cover the basic operation
While Python is not a pure functional programming language, you still can do a lot of functional programming in it. In fact, just one function - `reduce` - can do most of it and in this article I will show ...
How to make it easier to launch command line utilities and GUI applications installed with flatpak
Judging a book by its cover is a great idea. Until content makes a comeback.
Refactoring with effortless consistency.
Anthony Sottile and Brian discuss changes that would be cool for pytest, even unrealistic changes. These are changes we'd make to pytest if we didn't ahve to care about backwards compatibilty.Anthony's list:The import systemMulti-process support out of the boxAsync supportChanges ...
Github Project Code
Nowadays, Alpine Linux is one of the most popular options for container base images. Many people (maybe including you) use it for anything and everything. Some people use it because of its small size, some because of habit and some, ...
“How do we improve JavaScript usage, teach progressive enhancement and reconcile the community?”
This post is satire. It may also not make too much sense. Today I’ve seen this picture on my LinkedIn wall: And it triggered me badly. There are people in my network who are highly sensitive to the divine nature ...
TL;DR One of my most-frequently searched dev tasks over the course of my career thus far has been the “how do I find what process is on a port” to “how do I kill a given process” wombo-combo — there’s ...
John and Nick are back to discuss switching to a new plugin manager for Neovim.
John Christopher and I sit down and do a code review together.
Decoding EC2 instance type names to understand which is best for you. With free infographic.
There's a lot of "magic" that happens behind the scenes to make whole Kubernetes work. One of those is resource management and resource allocation done by Linux cgroups. In this article we will take a deep dive into what cgroups ...
Before I even get into the impetus for this blog post, if you came from a search engine and you just want the code, here’s a demo. Pleasure doing business with you. Introduction In a client’s project recently, I found ...
Do you ever feel like you’re at the mercy of your home appliances, instead of the other way around? I certainly did when the central AC compressor in our rented house decided to call it quits. Replacing it would have ...
This Is That Dreaded Blog Post That Was Foretold Every blog poster fears that one day this post will be upon them — that painfully self-important and -unaware “Why I’m Leaving ${city}” post. I’m gonna try to do this right; ...
I recently saw an online acquaintance of mine share a Controversial Opinion™ that I found challenging: If you do not have formal training in design you are not a designer. Right off the bat — L take, and I’m trying ...
“There have been a number of criticisms levied at the React project over the years, some of them handled and some of them still wavering in the wind.”
Django + HTMX Chat application Introduction In this article, we will be creating a Django project, which will be a chat-room kind of application. The user needs
Have you ever written a long chain of if/else statements or a huge match/case block, with all statements just matching against a list of values, and wondered how could you make it more concise and readable? If so, then _dictionary ...
Contents Introduction Number systems A certain symmetry and patterns Numbers and Data Types in C Transforming numbers from decimal to other number systems (binary, hexadecimal, etc.) Bitwise operations Bitwise AND Bitwise OR Bitwise XOR Bitwise NOT Left Shift Right Shift ...
An archive of my high school desktop designs, circa 2009