"Everyone Gains": The Pretty Lie of Economics
Home-grown SDB in our sanctuary of candor
Home-grown SDB in our sanctuary of candor
You've got a slow-running PostgreSQL query, so you run ANALYZE, but what if ANALYZE can't fix it?
Search images with text and existing images using Postgres.
Solid Cache is a relatively new cache framework that’s available as a Ruby gem for Ruby on Rails. In the next major version of Rails, version 8, it’s becoming the default cache backend.
When you show up every day. When you don't stop when others stop, you become unstoppable. Keep this in mind the next time you want to quit.
🎥 Video Version Available! You can watch the video version of this project on YouTube as given at the Tech Lancaster Meetup in July Sometimes, all you need is duct tape. As a software guy, hardware hacking has long appealed to me. Unt…
When talking about scalability in the context of software, it is always about being able to handle more: users, data, network traffic, etcetera.
The edge, in cloud computing, is deploying servers in multiple physical locations to serve users that are also distributed geographically. A service that uses edges will serve (say) users in the US with servers in North America, and Indonesian users with serve…
After nearly a decade out of WordPress, I visited WordCamp US and met with several hosts. TLDR: the state of WordPress hosting is stale.
I use a lot of nerdy tools (linux, nix, river), some tools also have a steep learning curve (vim, dvorak). I also type on a 32 split keyboard I made myself. A lot of developers would say I am wasting time, using tools that have no use or slow me down, and I sh…
Someone on Twitter asked what if Khairul Aming wanted to set up his own website for his sambal? For those who may not know, his product has gained fame and typically sells out quickly once he opens orders. At present, he utilizes Shopee. From a business standp…
I don't have a degree, but I have worked in tech two plus decades and I can tell you it's interesting as all get out to watch the status economy begining it's downward spiral. Imagine spending the first twenty five years of your life striving to become the kin…
Microvans are the future - we just don't know it yet.
In this post, we explore the limits of single-node Postgres and what optimizations can extend its usefulness as a primary application database before requiring more advanced scaling solutions. Monolithic ecommerce app on RDS PostgreSQL Let's use a real-worl…
I grew up relatively poor. I was fortunate enough to have a roof over my head, clean water, electricity, a computer, internet, and cable tv. But food was often harder to come by. This may seem like a contradiction, but when your mom has left to marry her uncle…
Let’s say your app is consuming rich text content from an API. That content is returned via a get request and returns a response that is a plain-text string of HTML content. How would you dis…
A look at how I redesigned my website.
This blog post describes getting Docker up and running inside an Azure Windows Virtual Machine. This might sound like a simple task, but trust me, there are some surprises on the way that took me a day or so to figure out. Background As a trainer for developer…
Iconic media player. Contribute to WinampDesktop/winamp development by creating an account on GitHub.
Open and free custom maps for your website and apps, based on OpenStreetMap.
In this post, I share how to enable testing GitHub webhooks locally using HTTPS with the self-signed ASP.NET Core developer certificate.
In this article, I will mention the differences between Promise and Observable. They have different uses cases and behaviors. Read more…
This post explores streaming data asynchronously from Blazor based on async streamed JSON and NDJSON.
The post discusses optimizing array iteration in programming by caching the array’s length for performance improvements. This method yields a 1.021x performance boost, particularly beneficial…
Tune Llama3 405B on AMD MI300x (our journey) - Felafax Blog - Powered by Obsidian Publish.
In my previous post, I laid the ground to build upon; now is the time to start 'for real'. I heard a lot of Vue.js. Additionally, a friend who transitioned from developer to manager told me good things about Vue, which further piqued my interest. I decided t…
Learn why 7 direct reports is ideal for managers. Discover how team autonomy, and project complexity shape the best span of control in tech and engineering
📦 #Platypush 1.3.0 is out!This release turns procedures into first-class citizens.Procedures are the bread-and-butter of Platypush customizations. They allow you to specify some custom logic that c...
Watch your clock
Each of these products solved some problem in my life and took a long time to figure out.
Tech blog on cyber security, android security, android development, mobile security, sast, offensive security, oscp walkthrough, reverse engineering.
Recommendations and commercialization of a product face challenges that come from non-platform controlled data sources.
Spot and fix race conditions in Python, FastAPI, and PostgreSQL to prevent data corruption and security issues
Limiting API key exposure for dynamic DNS clients.
The people who create software generally refer to themselves as software engineers, and yet if they graduate from university, it is typically with a degree in computer science. That has always felt a little strange to me, because science and engineering are tw…
Implementing Next.js-style PPR in a normal React SSR app
Ever needed a database for your LLM project that:
AdaptKeyBERT: Stumbling Through Two Years of Keyword Extraction Quick links (in case you want to skip my ramblings): PyPI Package GitHub Repository Alright, gather ‘round, word enthusiasts and syntax sorcerers! 🧙♂️📚 Remember that time you tried to explain m…
As software developers, we are uniquely positioned to create something and give it a life of its own. So why are so many of us content to clock in and sell our time, 19th century factory style?
Intro Last week I was catching up with one of my best mates after a long while. He is a well-recognised industry expert who also runs a successful cybersecurity consultancy. Though we had a lot of other things to catch up on, inevitably, our conversation led t…
Here's a story about how Laravel/Rails might fix the "pipeline problem:" by hiring new grads to build the awesome tools we've always wanted.
I had to clean up a messy git branch. Revert commits helped.
The standard try-catch-throw approach to error handling in TypeScript is not type-safe, making it difficult to explicitly handle different kinds of errors in business logic. This might be okay in smal
Web components won't take web development by storm, or show us the One True Way to build websites. What they will do is let us collectively build a rich ecosystem of dynamic components that work with any web stack.
A little automation overcomes Google's questionable UX design.
In the wake of Agile’s success and the benefits it offers organizations to help them achieve faster delivery, happier customers, and more engaged teams, “Collaboration” has become…
Fork maintenance — keeping your changes in sync with the latest updates from the original project — can quickly become a mess. Trust me. Over the years, my work did sometimes involve maintaining forks of various open-source projects. That’s not the case with m…
It feels like every single web service wants to use OAuth to get user data, and for good reason too. The alternatives include requiring users to create access tokens manually (yikes) and asking users to input their usernames/passwords to impersonate them (giga…
Embark on an existential journey through the digital landscape, exploring the impermanence of online communities and reimagining how we can design more meaningful, fluid, and purpose-driven information pathways for the future.
It’s all about the vibes, man.
If you have a distributed system one of the main worries you probably have is scalability. Well, what is the principal threat to scalability in such systems is the conflict between transactions that are used to guarantee correct results in concurrent operation…
When thinking of LLM evals especially in the context of RAGs, it occurred to me that there are two kinds of distinct responses people get from LLMs: informational and instructional.
In the next couple of decades, we will be able to do things that would have seemed like magic to our grandparents.