RSSAmplifier

Blog

Tim Etler

Personal Blog

timetler.comRSS feed ↗10 posts

Latest posts

DelegateStream: a Higher-Order Transform for Sequentially Injecting Streams Within Streams

Streaming Parallel Recursive AI Swarms Here’s a fun demo: 50 LLM agents streaming recursively and in parallel to summarize the entire Star Wars franchise in order, in 30 seconds. Normally this would be a 5½ minutes blocking operation, but with stream injection, you can stream different parts of the response simultaneously. In this contrived example, I built a franchise series summary agent swarm…

Unlocking Rich UI Component Rendering in AI Responses

LLMs have enabled us to solve a new class of problems with more flexibility than ever. But language models are inherently text-based, which has led to AI interfaces being heavily text dominated. As someone who has been creating web technology experiences my entire life, I’m not satisfied with so much UI being replaced with text. At Vetted , we have been building a shopping research assistant, and…

Do What AI Can't Do: How to Protect Your Role as a Developer

Using AI in your development workflow can be a double edged sword. If you’re using AI to do your thinking for you, you’re self sabotaging your skills. Over reliance on AI will lead to your skills atrophying if you stop learning. If you’re just passing tasks along to an AI, you’re adding very little value, and it’s very likely it will replace you. If you don’t want to be replaced by AI, you’ll need…

The future of AI will be dominated by the companies that pick the right abstractions today.

The Internet today isn’t fundamentally that different from the Internet of the 90s. The hardware is faster and more reliable, but the core principals have not changed on a foundational level. TCP/IP is more or less the same. HTTP is basically the same. HTML has hardly changed at all. JavaScript has evolved greatly, but we still target old engines with cross-compilation and polyfills. There was no…

The Philosophical Programmer

The Pragmatic Programmer (Andrew Hunt/David Thomas, 1999) has withstood the test of time as essential reading for developers early in their careers. Its practical advice and actionable pragmas work well when your primary job is shipping features and business logic. The patterns and advice it provides offer immediately applicable actions that developers can integrate into their development process.…

Conducting Better AI-proof Programming Interviews

The Broken State of Programming Interviews Programming interviews have long focused on trivia or common tutorial style questions that reward candidates who are good at memorization and interviewing practice, but not necessarily job performance. These types of questions are inefficient at assessing a candidate’s actual job abilities because they’re not evaluating realistic work scenarios. Rote…

The Role of UI in the AI Age

As AI has progressed I’ve been thinking about the role of UI in a landscape increasingly dominated by chat apps. I never liked the idea that plain chat would be the future of interfaces. Typing is slow and I don’t like talking to my phone. Rich UI still communicates information more efficiently than language in most cases and I shouldn’t need to solve a mini prompt engineering problem for every AI…

Prototyping the Right Way with AI

Starting from a higher abstraction Prototyping is often misunderstood, commonly executed poorly, and in many cases approached backwards. When asked to build a prototype, most engineers instinctively dive in at the implementation level and try to make a fully functional test of the solution they want to try. They end up making something akin to a mechanical prototype where you make an unrefined…

Building Favitimer

Somewhat recently Google came out with a cool new search feature that lets you start a timer via a search . I really liked this workflow since it let me really quickly set up a timer from the browser by using the chrome “tab to search” functionality. I’d just open a new tab, type in “google.com”, hit tab, type “x minute timer”, hit enter, and boom, instant timer. I could get a timer set up in…

The space character you didn't know about

You probably know about   , which stands for non-breaking space. The problem with the non-breaking space character is that the browser will avoid wrapping the line on those characters. If you have a list such as foo, bar, buzz , that entire sequence will be treated as one word, which means it might display like this: Hello foo, bar, buzz when you want to display it like this: Hello…