OpenAI o3-mini first impressions

Two days ago, OpenAI released their latest model, OpenAI o3-mini, a follow-up to the reasoning models o1 and o1-mini. They were immediately available on chatgpt.com, so I had a chance to put them to work. I had a simple task in mind (writing a Python script that would prompt an LLM to rate a list of words for use in my crossword app, prosettr.com). The first output was good, but when I asked for a few minor tweaks I was presented with a refusal: ...

February 2, 2025 · 2 min · Jerome Marhic

Happy Lunar New Year

This week it’s Lunar New Year, or Têt celebrations in Vietnam. Which means my daughter’s school is off, which means I get approximately 30 seconds of free time per day. Despite that, it was hard to miss the hype regarding the release of Deepseek R1. I didn’t have time to read the paper or anything, but I gave it a quick try at chat.deepseek.com. I still don’t have a good handle on what is a good “reasoning question,” but I came up with a good use case today: coming up with a memorable port number for a service I’m hosting locally. ...

January 27, 2025 · 4 min · Jerome Marhic

RIP my Pixel 4a

On the 7th of January, I received this surprising email from Google: Hi Jerome, We wanted to let you know about an upcoming software update for your Pixel 4a that will affect the overall performance and stability of its battery. Pixel phones, like other smartphones, use rechargeable lithium-ion batteries that, over time, may experience performance, capacity, or runtime degradation. In the coming days, your Pixel 4a will receive an automatic software update to Android 13 that introduces new battery management features to improve the stability of the battery. This update will reduce your battery’s runtime and charging performance. ...

January 22, 2025 · 3 min · Jerome Marhic

January 2025, Second Week Update

Already two weeks into January, it’s time for an update on my projects! I’m really happy with the progress on Prosettr.com, my crossword generation app. It will soon be time to share it with the world (HackerNews…). Yesterday evening, I added login functionality (a choice of email + password or Google sign-in) using Firebase Authentication, as well as a button to load PUZ files. The latter was surprisingly easy to do: I gave ChatGPT o1-mini the PUZ format description and asked it for a loader/writer in Go with my expectations for the input/output, followed by an HTTP handler. Thirty minutes later, here we are with the “Upload PUZ File” in production! ...

January 14, 2025 · 2 min · Jerome Marhic

First week of 2025

2025 is off to a pretty good start! I spent 3 days alone in Phu Quoc to recharge, didn’t do anything except swimming and reading Thistlefoot while drinking coconuts. I used to go regularly when I was single, but now it’s going to be my last trip for a while. Got lucky with the weather as well! Back home, I’ve made some progress on my crossword solver app. I opened a WebSocket to stream the intermediary results (“dead ends”) as the backtracking algorithm progresses; I think it looks cool. In the frontend, I’ve added a history so you can Ctrl-Z, and other minor convenience changes (right-click to toggle between black and white cells, etc). I should define the scope, though; I don’t plan to make it a full-blown “crossword editor.” I think I will just add the ability to export a grid and be done with it. ...

January 6, 2025 · 2 min · Jerome Marhic

And a Happy New Year! (2025)

Looking back, 2024 was a pretty good year across all metrics! Learned new things at work even though it’s my 5th year at the job, been pretty healthy and fit, not been drinking much (was a dry NYE, and will be doing a dry January). So I’m not taking any big resolutions for this year; it should be plenty busy already with the birth of my second kid in a few months. I’ll just try to finish and release my crossword generator application before that, and that will be it. Maybe try to be more smiley and relaxed in general. ...

January 2, 2025 · 3 min · Jerome Marhic

How I use GitHub Copilot

Since the release of ChatGPT more than 2 years ago, I have felt a strong disconnect with the opinions on HackerNews about AI. It really feels like an Anti-AI (especially anti-OpenAI) echo chamber, neverendingly predicting the advent of AI winters, always repeating the same arguments (usually some flavor of “it’s not intelligent”, “what is AGI?”, “how can you trust it?”). Well, given that the generated code compiles, the tests pass and the program works as expected, I’m not sure what there is to complain about. I feel that HN is about as wrong about AI as it was about cryptocurrencies. Eventually, I mostly stopped reading the comments, I just use it as a link aggregator now. ...

December 25, 2024 · 4 min · Jerome Marhic

Merry Christmas!

I took a day off on this Christmas day, and I got inspired to revive this blog by reading Simon Willison’s “approach to running a link blog”. I like his blog to keep updated about the new models’ capabilities and developments in the AI world in general. He makes small experiments to put the models into practice, with a good dose of enthusiasm, and I want to follow a similar approach for this blog: sharing interesting articles I read, and some of my daily programming experiments, while “trying to add something extra”. ...

December 25, 2024 · 2 min · Jerome Marhic

Rate Limit

In this post, we’ll discuss various common ways of handling API rate limits, and I’ll introduce a new tool I’ve been working on called MeterFlow. Most APIs have rate limits, usually counted in requests per minute, but other resources can be limited as well (for instance, the number of characters you can translate with the Google Translate API, or the number of tokens you can generate with some LLM API). When you exceed the rate limit, the API will return a 429 status code, telling you to slow down. There are various ways of dealing with API rate limits in your code. ...

October 26, 2024 · 4 min · Jerome Marhic