Petar Radošević

Petar Radošević

@petar.dev

dad and husband • loves the craft of building software • mostly builds stuff with #elixirlang • pizzatarian • find my blog on petar.dev.

1K followers232 following347 posts

"Never ask a barber if you need a haircut." Never follow advice from someone at Anthropic or OpenAI how much tokens you should burn.

When we started our first company, Bread & Pepper, we put our head down and focused on the craft. Build beautiful, high quality websites. I was so surprised when I got out of our bubble, at a meetup in Amsterdam, that people actually knew about Bread & Pepper. That it even inspired them.

It happened again this week, for the company that we build next. Gibbon. In passing, somebody told that Gibbon inspired them to go into web development. Our intent was never to be known. We just wanted to create something beautiful and scratch our itch. People sense that. It's inspiring.

@drewr.dev love the things you are doing with ecto_libsql. I was thinking to leverage the new turso library so I get the vector and search support that it has. Were you planning to support the new Turso library at some point? What's your thinking on that?

3rd rewrite of a new agentic system in 48 hours. Frustrating? Yeah, a little. But I'm learning so much. It's a relentless loop: hours on the design, execute fast, hit reality, learn, restart. Each pass I'm making fewer mistakes and building real intuition for how the system I'm building works best.

I created two skills which I always found to be gotcha's when working with #elixirlang and LiveView. Both can have a big impact on user experience. First, LiveView and optimistic updates, making sure that the UI stays responsive, even when there is latency. github.com/wunki/amplif...

Let me know what you think and how we could improve them. PRs or comments are welcome. Let's share best practices so we can use LiveView and all its benefits without compromising on the user experience.

Codex is mind-blowingly good at writing #elixirlang. I can spend hours iterating on system design with it, optimizing for simplicity and observability. Once that clicks, the result is a system that is easy to understand and easy to debug, for both me and Codex.

View full thread

One of #elixirlang’s superpowers is how easy it is to reason about: its functional model keeps complexity in check, built-in observability is excellent, and Tidewave pushes it even further.

With this setup, I built an app in ~ two days that exposes internal knowledge as a bot in Slack and via MCP for ChatGPT and Claude. Every conversation is logged and easy to debug, so you can see exactly which choices were made. All without external libraries.

Codex is mind-blowingly good at writing #elixirlang. I can spend hours iterating on system design with it, optimizing for simplicity and observability. Once that clicks, the result is a system that is easy to understand and easy to debug, for both me and Codex.

For observability, I record and correlate every important session. Through Tidewave, codex can use that context to debug itself. I even have it build custom UIs so I can inspect everything in real time.

If Codex fails on #elixirlang with "failed to open a TCP socket in Mix.Sync.PubSub.subscribe/1, reason: :eperm" try this setting in your ~/.codex/config.toml: [sandbox_workspace_write] network_access = true

My thinking on Finde has evolved and I couldn’t be more excited. The scope is bigger and sharper: a second brain that improves while you sleep, with you driving every decision. While it with blogging, a blog is now just an output of you sharing one of your notebooks. beta.finde.app

beta.finde.appFinde — Your second brain. Continuously improving.Capture in the inbox. AI weaves notes into notebooks, surfaces connections, and queues every change for your approval. Some stays private, some becomes your blog.

Brain fart, record all key strokes and commands in Neovim. Give that to an LLM to analyze. Let it make suggestions to improve your flow.

Pretty happy where I landed with the landing page (pun intended). Blog engine where you connect your Claude or ChatGPT. It reads your blog, looks at your analytics, and suggestions appear live as you chat. Everything goes through a review queue, you never lose your voice. #elixirlang ex.finde.app

Was looking into SvelteKit and got pretty far, pretty quickly in building a prototype of an app. with the help of AI. However, I also got stuck, not understanding what I had actually build. Went back to rebuilding from scratch, making sure I understand each piece of code. There is a lesson here.

And I can't help but wonder; will these "cracked" teams that just started forming, cranking out way more code with AI, grind to a halt in a few months when nobody understands what they built?

Details matter. Email input is active while opening the page. Button starts disabled, as the form becomes valid, the button transitions to being enabled. Only thing I don't like is that the button jumps because of the error message. Build with #elixirlang and LiveView.

Vercel came out with their new domains app and its getting much praise for its snappy UI. Can we build an UI as polished with LiveView? Should be doable no? #elixirlang