Curated river of news
Reader
Latest posts from blogs I follow
Recipes and Tricks for Effective Structural Pattern Matching in Python(opens in new tab)
The `match`/`case` syntax that got introduced to Python in 3.10 looks like basic `switch` statement which we all know from other languages - in Python however - it's much more than just an alternative `if` syntax. So, let's explore advanced ...
Time, Clocks, and the Ordering of Events in a Distributed System(opens in new tab)
Django + HTMX CRUD application(opens in new tab)
Introduction Gone are the days of writing Ajax requests with javascript, just add a few parameters to the HTML content tags and you will be ready for sending re
Recursive Optional Dependencies in Python(opens in new tab)
One of my (slowly evaporating) reasons why I like putting packaging metadata into an executable setup.py is the ability to have optional dependencies that are combinations of others. As of pip 21.2, this is possible without running code.
Golang: Anonymous Functions(opens in new tab)
Introduction We have looked at the defer keyword in golang in the part of the series, in this section, we will understand how we can use anonymous functions in
It's Time to Say Goodbye to These Python Libraries(opens in new tab)
With every Python release, there are new modules being added and new and better ways of doing things get introduced. We all get used to using the good old Python libraries, but it's time say goodbye to `os.path`, `random`, `pytz`, ...
Deploying Django Project with Railway Nixpacks(opens in new tab)
Introduction We have seen how to deploy a Django application on railway app in the of the . We deployed the django project using the Heroku Buildpacks under the
Why We Sleep - Summary, Review & Thoughts(opens in new tab)
We spend 1/3rd of our life sleeping. But why do we sleep? We don't live in a sleep loss epidemic?
Joining Ought(opens in new tab)
A new role at an AI research lab working on tools for open-ended reasoning
Configure Neovim in Lua(opens in new tab)
Introduction It has been a while since I have written a Vim article. Finally, I got some ideas after configuring my Neovim setup for Lua. I recently migrated to
Advanced Features of Kubernetes' Horizontal Pod Autoscaler(opens in new tab)
Scaling application on Kubernetes using _Horizontal Pod Autoscaler (HPA)_ based on their CPU or memory usage is pretty simple. There are however many more features of HPA that you can use to customize scaling behaviour of your applications using external/custom ...
Body margin 8px(opens in new tab)
191: Running your own site for fun and absolutely no profit whatsoever - Brian Wisti(opens in new tab)
Having a personal site is a great playground for learning tons of skills. Brian Wisti discusses the benefits of running a his own blog over the years.Links:Random GeekeryJamstackEleventyNetlifyPlausible AnalyticspytestBeautiful Souppyinvoke - Invoke!rsyncInternet Archive : archive.orgRichStatamicjamstack.orgA static site generator should be ...
July 2022(opens in new tab)
Golang: Defer(opens in new tab)
Introduction In this part of the series, we will be taking a look at the keyword in golang. The defer keyword is used for delaying the function call in a partic
The gray areas of HWB color(opens in new tab)
Golang: String Manipulation(opens in new tab)
Introduction In the 15th post of the Series, we will be looking into the details of the String manipulation and performing types of operations in Golang. We wil
190: Testing PyPy - Carl Friedrich Bolz-Tereick(opens in new tab)
PyPy is a fast, compliant alternative implementation of Python. cPython is implemented in C. PyPy is implemented in Python. What does that mean? And how do you test something as huge as an alternative implementation of Python?Special Guest: Carl Friedrich ...
“Don’t Mock What You Don’t Own” in 5 Minutes(opens in new tab)
A common issue when writing tests for real-world software is how to deal with third-party dependencies. Let’s examine an old, but counter-intuitive principle.
Golang: Mutable and Immutable Data Types(opens in new tab)
Introduction In this 14th Post of the 100 days of GOlang, we will be understanding about the mutable and immutable data types in Golang. Firstly, we will unders
Data and System Visualization Tools That Will Boost Your Productivity(opens in new tab)
As files, datasets and configurations grow, it gets increasingly difficult to navigate them. There are however many tools out there, that can help you to be more productive when dealing with large JSON and YAML files, complicated regular expressions, confusing ...
189: attrs and dataclasses - Hynek Schlawack(opens in new tab)
In Python, before dataclasses, we had attrs. Before attrs, it wasn't pretty.The story of attrs and dataclasses is actually intertwined. They've built on each other. And in the middle of it all, Hynek.Hynek joins the show today to discuss some ...
Stop Messing with Kubernetes Finalizers(opens in new tab)
We've all been there - it's frustrating seeing deletion of Kubernetes resource getting stuck, hang or take a very long time. You might have _"solved"_ this using the terrible advice of removing finalizers or running `kubectl delete ... --force --grace-period=0` ...
The Block-Paved Path to Structured Data(opens in new tab)
How block-based interfaces can help us create more structured data on the web
Django Project with PostgreSQL Deployment on Railway App(opens in new tab)
Introduction We have already seen the process of deployment of a Django app on Heroku, now we can move to another platform which is . This allows a faster and m
Automate All the Boring Kubernetes Operations with Python(opens in new tab)
In this article we take look at how you can leverage Kubernetes Python Client library to automate whatever annoying Kubernetes task you might be dealing with, whether it's creating/patching resources, watching events, accessing containers or anything else.
188: Python's Rich, Textual, and Textualize - Innovating the CLI(opens in new tab)
Will McGugan has brought a lot of color to CLIs within Python due to Rich. Then Textual started rethinking full command line applications, including layout with CSS. And now Textualize, a new startup, is bringing CLI apps to the web.Links:richrich-clitextualTextualize.ioRich ...
PSA: Cannot open Credentials Manager(opens in new tab)
I blew several INCREDIBLY frustrating hours trying to troubleshoot issues installing Google Workspace Sync and Microsoft Office 365 on multiple Windows 10 workstations today. Searching for “failed to create profile” errors when setting up a Google Workspace Sync user for ...
Daily Notes Pages(opens in new tab)
Daily notes as a frictionless default input for personal knowledge management systems
End-to-End Monitoring with Grafana Cloud with Minimal Effort(opens in new tab)
Monitoring is usually at the end of a checklist when building an application, yet it's crucial for making sure that it's running smoothly and that any problems are found and resolved quickly. Building complete monitoring - including aggregated logging, metrics, ...
4 integers are enough to write a Snake Game(opens in new tab)
… actually you can use only 2, but this will make your life a little more miserable. Contents Introduction The code The memory layout map vars shape The game loop The function that moves the snake: The function that displays ...
Goodbye, Google Analytics - Why and How You Should Leave The Platform(opens in new tab)
With the recent events relating to _Google Analytics_ platform, it's becoming very clear that the time has come for many of us to migrate from Google Analytics to different platforms. In this article we will go over both the _"Why?"_, ...
A blog that is a single executable binary(opens in new tab)
Contents Introduction The code Running the sample blog Adding a new blog post to the sample blog How everything works The model and a neat pre-processor trick The server Conclusions Discussion Introduction Recently, while browsing lobste.rs, I had the chance ...
Python f-strings Are More Powerful Than You Might Think(opens in new tab)
Formatted string literals - also called _f-strings_ - have been around since Python 3.6, so we all know what they are and how to use them. There are however some facts and handy features of f-string that you might not ...
A Picture Worth a Thousand Programmes(opens in new tab)
Bringing visual explanations and embodied knowledge to programming tools
I've promised myself never to use gradle(opens in new tab)
The current article won’t be an exhaustive technical analysis of Gradle but more like a spontaneous rant. Firstly, the time I am willing to allocate to learning a build tool will always be strictly limited. Secondly, I try to be ...
Optimising Largest Contentful Paint(opens in new tab)
Let’s look at some more technical and non-obvious aspects of optimising Largest Contentful Paint
Ultimate CI Pipeline for All of Your Python Projects(opens in new tab)
Every project can benefit from a robust continuous integration pipeline that builds your application, runs tests, lints code, verifies code quality, runs vulnerability analysis and more. However, building such pipeline takes a significant amount of time, which doesn't really provide ...
Hash, displace, and compress: Perfect hashing with Java(opens in new tab)
This article explains a straightforward approach for generating Perfect Hash Functions, and using them in tandem with a Map implementation called ReadOnlyMap. It assumes the reader is already familiar with concepts like hash functions and hash tables. If you want ...
On implementing Bloom Filters in C(opens in new tab)
This article assumes the reader is already familiar with the C programming language and some basic concepts concerning hash functions. The target audience (as is often the case on my blog) is undergrad CS students or seasoned developers who, just ...
Optimizing Memory Usage in Python Applications(opens in new tab)
When it comes to performance optimization, people usually focus only on speed and CPU usage. Rarely is anyone concerned with memory consumption, well, until they run out of RAM. There are many reasons to try to limit memory usage, not ...