Jean-François Pérusse
jfperusse.ca
Jean-François Pérusse
@jfperusse.ca
Programmeur en jeux vidéo, recherche en IA générative, contributeur sur Codea https://codea.io/
Wow, compression really made a mess out of my video 🤣 Trust me, it doesn't jitter like that!
January 27, 2026 at 5:43 AM
11/11 I really don't regret building this app. It's been quite an adventure, both fun and frustrating. But I learned so much!

And I now have a platform to experiment.

Separated planning and execution modes (different toolsets), list of tasks, Ralph Wiggum algorithm, and so much more!
January 27, 2026 at 3:16 AM
10/11 The cost was also a concern. After a few days, it was over 100$. That's when I started optimizing the context, summarizing when it's too big. I added details about tokens used and a cost estimate.

Here's ChatGPT's representation of the quadratic growth of an LLM conversation cost over time.
January 27, 2026 at 3:16 AM
9/11 I did rely on Antigravity from time to time to help with the stability issues or more important refactoring such as trying to reduce the context used (e.g. summarization). But most of the development was done from within the app, often "on-the-go", which is exactly what I was dreaming of.
January 27, 2026 at 3:16 AM
8/11 But the app often had major stability issues. It's not Pythonista's fault though. For having worked on the objc API for Codea, I know how impossible it is to prevent crashes when used incorrectly.

Add this to Python threading, and you've got yourself a recipe for a nightmare.
January 27, 2026 at 3:16 AM
7/11 I then asked it to give itself tools to be able to run a project, take a screenshot, preview taps, perform taps, read the logs, and so on...

Here it is running a calculator app, doing a very important calculation, stopping the project, and detailing the results.

(sorry!)
January 27, 2026 at 3:16 AM
6/11 While not perfect, when it works, the results are much better than overwriting files.

Here's when it added the ability to attach images and send them as inlineData to Gemini for its vision capabilities.

With a single prompt, it made attachments clickable to open a fullscreen overlay.
January 27, 2026 at 3:16 AM
5/11 It did markdown rendering, show its thinking process, add user confirmation buttons, add better tools to work on files and run unit tests (this made a huge difference!), etc.

One great thing I found is the apply_patch tool documented by OpenAI (developers.openai.com/cookbook/exa...).
January 27, 2026 at 3:16 AM
4/11 A few minutes later, I was asking Gemini to create a calculator directly from my Pythonista app.

It called tools, it created files. It wasn't perfect, but I was already starting to see that this was all going to work.

I did a few more iterations with Gemini, then switched to the app.
January 27, 2026 at 3:16 AM
3/11 While iterating on the app to get to that goal, I was surprised of Gemini's suggestion... to use OpenAI 😅

However, I let it know I had "better" in mind and that we should use the Gemini API.

Seems like it was "happy" with that answer 🤣
January 27, 2026 at 3:16 AM
2/11 It started with Gemini prompts. Questioning the feasibility, describing the idea, and getting an initial skeleton of the app.

It wasn't much yet, but I knew I shouldn't try and get everything built at once. I wanted to get to a point where the app would be able to build itself from prompts.
January 27, 2026 at 3:16 AM
Je sais que ce n'était qu'un exemple, mais pour le coût des "tokens" (ou jetons) en IA générative, on parle plus de, par exemple, 2.50$ pour 1 million de jetons (GPT 4o), et non de 100$ pour 1000 jetons (ouch! 🤑) (source: openai.com/api/pricing/)
January 29, 2025 at 3:30 PM
Absolument! Dès que j'ai quelques lignes triviales à écrire, j'y vais pour un bon commentaire qui me donne automatiquement ce que je veux. Pratique aussi pour générer des requêtes SQL, expressions régulières, respecter un standard établi, etc. Il faut juste bien vérifier ce qui est généré ;)
November 20, 2024 at 9:29 PM