Implementing “nested inline markup” in reStructuredText and Sphinx Background: Sphinx is a famous documentation generator used by a lot of Open Source communities. It uses reStructuredText(hereafter referred to as rST) as markup language by default. Unlike Markdow...
One Supply Chain Attack to Rule Them All I successfully exploited a critical misconfiguration vulnerability in GitHub’s actions/runner images repository. Posing a risk if improperly configured, self-hosted runners acted as the entry…
Do Repeat Yourself One of the first things we teach aspiring software engineers is the principle Don't Repeat Yourself. While this is a very useful rule of thumb, it doesn't apply in every case. In this post we will discuss when it does not.
HOWTO: Change your behavior For the purposes of this article, it’s important to distinguish between the short term and the long term when it comes to behavior.
WebSockets for dummies | The Sloth Blog A simple write up on what is WebSocket protocol and how does it work. WebSocket protocol enables two way real-time communication between a client and a server over a TCP connection. One well known example where WebSockets are beneficial is a chat applicat...
When am I There comes a point at which continuing with your startup is just falling prey to the sunk cost fallacy. That point is about 4 years in.
Code Reviews Let me tell you a story. I worked with a client in the early days of my career. It was a social media sentiment analysis platform when Twitter was still
Between Art and Algorithms I was more of a humanities person in high school. Didn’t do great in math and informatics, loved history and philosophy. So most people were surprised when I…
Chat is poor UX for most users. Large Language Models (LLMs) like ChatGPT have rapidly become commonplace tools. They’re the most transparent AI application I can think of, users know they’re interacting with an AI. Despite that, I see chat as a complex and difficult user experience for...
In search of a Search Engine, beyond Elasticsearch: Introducing Zinc Prabhat Sharma's blog on AWS, Cloud, ML, AI and technology
Unfork with ArgoCD Post provides strategies for customizing third-party software in Kubernetes without maintaining a fork, focusing on ArgoCD integration and management techniques
A tech lead self-assessment - Nick Scialli I created the following tech lead self-assessment to give myself an honest grade of where I stand.
HttpClient: Dynamically Add HttpMessageHandlers .NET, .NET Core, ASP.NET, ASP.NET Core, Visual Studio, Jaliya Udagedara
GitHub - every-day-things/citadel: Manage your ebook library without frustrations. Calibre compatible. Manage your ebook library without frustrations. Calibre compatible. - GitHub - every-day-things/citadel: Manage your ebook library without frustrations. Calibre compatible.
Implementing Caching using Decorator Pattern in ASP.NET WEB API In this post I will teach how to implement caching using decorator pattern in ASP.NET Web API. All with live working demo.
We're building a better PostHog community by closing our public Slack - PostHog One of the great things about being open source is that we’ve grown a vibrant community around the project. Since launch we’ve accepted code from over…
Keep Your Email out of Recipients’ Spam Folders Spam is a common problem for email users and administrators. Spam messages can clutter your inbox,...
School Mgmt App | Microservices With .NET Aspire & Blazor SSR | Part 5 Let's build a microservices app, orchestrated with .NET Aspire and using Blazor SSR on the front end. #dotnet JOIN as a member to gain access to the source c...
How one line of code caused a $60 million loss 60,000 people lost full phone service, half of AT&T's network was down, and 500 airline flights were delayed
Towards Modern Development of Cloud Applications | Proceedings of the 19th Workshop on Hot Topics in Operating Systems ABSTRACT
#!/usr/bin/env docker run #!/usr/bin/env docker run. GitHub Gist: instantly share code, notes, and snippets.
Dependency Injection via Primary Constructors #dotnet #aspnetcore Here's how we can use primary constructors in c# 12 for dependency injection in an #aspnetcore app. Join this channel to get source code access and other per...
Your washing machine could be sending 3.7 GB of data a day — LG washing machine owner disconnected his device from Wi-Fi after noticing excessive outgoing daily data traffic The owner was puzzled why a clothes washer would need so much data.
Building a fully local LLM voice assistant to control my smart home I’ve had my days with Siri and Google Assistant. While they have the ability to control your devices, they cannot be customized and inherently rely on cloud services. In hopes of learning something new and having something cool I could use in my life, I d...
Wayland really breaks things… Just for now? – Ximions Blog This post is in part a response to an aspect of Nate’s post “Does Wayland really break everything?“, but also my reflection on discussing Wayland protocol additions, a unique pleasure that I have been involved with for the past months1.
Publishing ESLint rules to npm using pnpm monorepo Walkthrough on how to publish ESLint rules to npm using pnpm monorepo so that they can be reused in multiple projects
Exploring Podman: A More Secure Docker Alternative | Better Stack Community This article explore Podman's features and benefits, comparing it to Docker and describing a step-by-step migration guide
Compressing Text into Images (This is, I think, a silly idea. But sometimes the silliest things lead to unexpected results.) The text of Shakespeare's Romeo and Juliet is about 146,000 characters long. Thanks to the English language, each character can be represented by a single byte...
The Slow Frontier of Genetic Choice Neither you nor I have consented to the genes we inherited. Our general makeup was dictated to us. I had no say whatever in my allergies, my short stature, my baldness, my tone deafness, nor in my general optimistic bent, … Continue reading →
Storing WebAuthn challenge values without a database in Elixir A database solution felt heavyweight. A stateless token solution compromised on security.
FreeBSD Desktop – Part 29 – Configuration – Audio Improvements I recently added some improvements to my audio configs and settings on FreeBSD desktop. Each of these ideas is nothing special or groundbreaking – but they all improve usability of daily Free…
A Beautifully Productive Terminal Experience I highlight the benefits of using the command line for developers and suggest a combination of iTerm 2, Zsh, Prezto, Tmux, and Tmuxinator for a productive setup. I also discuss the features and advantages of each tool, as well as how they can be combined ...
ArchiveBox is Super Cool Have you ever used archive.org’s Internet Wayback Machine? It’s a free tool that’s been archiving the web since 1996. So, if you want to see what Google looked like in 1999, they’ve got it. Internet Archive capture of Google from April 22, 199...
Listening with LLM Overview This is the first part of many posts I am writing to consolidate learnings on how to finetune Large Language Models (LLMs) to process audio, with the eventual goal of being able to build and host a LLM able to describe human voices.
LukeW | The More Features You Add... As Dave Fore once said: "features are the currency of software development and marketing." Spend time in any software company and you'll begin to echo that sent...
A Cloudflare Workers primer: hello world The vast majority of my software development experience has been centered around client-side software. The few times I've needed a server-side component for a hobby project, I've historically provisioned a linux virtual machine somewhere and ran whatever ...