Even the fastest web servers become bottlenecks when handling CPU-intensive API work. Slow response times can cripple your service, especially when paired with an API gateway that times out after 29 seconds.
I solved this using a simple middleware that eliminated 504 - Gateway Timeout responses and significantly reduced unnecessary load on my service API.
AI tries to make everything easy… convenient, but life without discomfort is not something to desire. The label ‘PC compatible’ is a reminder of how complex (inconvenient) things can be.
The other day, I was taken back to the “good old days”, and not in a good way. I had assumed that a major hardware provider like Samsung nowadays would ensure a decent user experience during firmware updates, regardless of the operating system. But I was in for a disappointment.
My home server running Linux has been crashing occasionally for a while. But since a reboot would temporarily “fix” it, sometimes for weeks, I never prioritized finding the underlying problem… until now. It feels like a recent kernel update now triggers the crash more often, but I have no data to back this statement up.
Applying retry strategies on API calls to make them more robust often brings its own set of problems. Occasionally, rather than losing an entity-creating call, you end up with multiple, and trust me — duplicates are a pain to clean up.
However, idempotency can neutralise the inconveniences from retries, making the pair a powerful combo. 💪
With this post, I am in deeper waters than usual. What might sound like a recommendation in the following could be a potential disaster in disguise. Be warned.
Personally, I prefer not to know about implementation details about the function I’m calling. Although that was the situation I suddenly found myself in, when a function I call replaced map with pmap.
Here is how I approached the weirdness with exceptions tangled with pmap.
The last couple of years, I’ve been finding stress at work more often than I’d like. Apparently, experiencing problems, having the skill to address it, but not being allowed to, is something that really gets to me.
So much that I don’t even feel like working on side projects, open source and writing posts on my blog.
Until recently, my AI usage has been limited to ChatGPT and a bit of Midjourney. No Copilot, no Claude, no nothing.
The most serious thing I’ve used AI for, was getting ChatGPT to give feedback on paragraphs for new blog posts, and Midjourney to help create featured images for blog posts.
The few times I’ve tried using AI (read ChatGPT) for programming related stuff, I very quickly got frustrated with the lack of quality in the responses. To be fair, I’ve mainly wanted it to create Clojure code, and Clojure’s niche status and very different syntax are likely the main reason. That, and the fact that ChatGPT is the “wrong” tool for the job.
Anyway, I’ve acquired some hardware to build a local AI, including a second-hand Nvidia RTX 3090 with 24Gb vRAM, and I thought I’d document and share my progress so far.
The posts touch a lot of different topics in no particular order. It might be more convenient to browse by tags if you have a topic of specific interest.