HNHacker News
TopNewBestAskShowJobs

floodfx

267 karma · joined December 17, 2008

Startup junkie, engineer, and tinkerer

- https://donnie.com - https://www.linkedin.com/in/donnieflood - https://github.com/floodfx

donnie at floodx dot com

Currently CEO at ContextBridge (https://contextbridge.ai)

submissionscomments
floodfx··on Delta
Precision feedback for CLI-based coding agents is terrible. We built and open sourced PlanBridge (https://plan.contextbridge.ai) to fix this. It is a CLI that lets your coding agent open a local browser with a rendered plan/spec (or just the last agent message) so you can select and comment directly on the text and iterate with precision.
floodfx··on HTML over WebSockets: real-time SPAs with barely any JavaScript
A few years back I wrote a backend implementation of the LiveView protocol in Typescript (https://liveviewjs.com) and played around with another BunJS-specific implementation (https://hotdogjs.com/). (Also did Java and Go versions but that's another story.)

There isn't an official "protocol" so I had to figure it out by watching the WS traffic and determining how it worked which was fun if not tedious. That said, the more I learned, the more I was impressed by the efficiency and the programming model which felt simpler yet more powerful than SPAs.

I did get to a point where I just got too busy to keep up and over the last couple of years things have changed a bit on the "protocol" side.

But recently (a week ago-ish), I started poking at the old LiveViewJS repo with the help of coding agents. Now that Phoenix is past 1.0 and the JS runtimes (Node, Deno, Bun) have more overlap in terms of APIs and library support, I think it will be more straight forward and frankly easier to get and stay at parity.

floodfx··on I'm going back to writing code by hand
Genuinely curious if you've used "plan mode" (with perhaps a plan feedback tool) to get clarity from your coding agent before unleashing it on a feature like "add a pods view with live updates"?

Getting a plan isn't a panacea but is a better way to limit downstream slop than just vibing without one.

floodfx··on The Old Guard: Confronting America's Gerontocratic Crisis
The Doge had no power.
floodfx··on Agents can now create Cloudflare accounts, buy domains, and deploy
I clicked through the $100k credits link and didn’t see Cloudflare listed as an Atlas partner? (Maybe not updated?)

This looks interesting nonetheless.

floodfx··on Norway Set to Become Latest Country to Ban Social Media for Under 16s
Came here to say something similar. Adults are just as hooked to their addiction feeds as kids.

These are uber-personalized feeds optimized to keep you scrolling to the next item (story / video / post) so companies can show more ads.

"Social media" is a textbook example of a euphemism. We should be calling this what it is: "addiction feeds".

floodfx··on What killed the Florida orange?
Seconded. Interesting read.
floodfx··on ChatGPT Images 2.0
Haha. Underrated comment!
floodfx··on OpenAI Has New Focus (on the IPO)
Some folks have been using the term “promptbaiting” to describe these obvious engagement tactics.
floodfx··on Many SWE-bench-Passing PRs would not be merged
Working on that too. Lmk if you’re up for a chat?
floodfx··on A67z
I salute this artistry
floodfx··on Can you save on LLM tokens using images instead of text?
Why are completion tokens more with image prompts yet the text output was about the same?
floodfx··on Go Primitive in Java, or Go in a Box
Had same expectation and read through half the article before realizing it was not Golang related.
floodfx··on Tour de France confronts a new threat: Are cyclists using tiny motors?
10W for a sustained time perhaps but these are looong climbs. Col de la Loze is 26.4km with an average gradient of 6.5%.
floodfx··on Tour de France confronts a new threat: Are cyclists using tiny motors?
Why is pay off greater in cycling than other sports? Salary of the top riders? Compared to say NBA players, pro cyclist make relatively little. Tadej Pogacar (best and top paid cyclist) makes about $8M (euros) in salary per year. Steph Curry (highest paid) NBA player makes $55M (dollars) in salary per year.
floodfx··on Tour de France confronts a new threat: Are cyclists using tiny motors?
Bikers and their teams are known for removing as much weight as possible from their bikes. Would love to see the math for weight/power/time ratio for a motor like this. Would it be worth it considering you'd have to expend additional watts lugging it around all stage? My guess is probably not. Especially on a mountain stage which is where the tour is really won or lost.
floodfx··on What If We Made Advertising Illegal?
I think a better thing to do would be to outlaw algorithmic feeds where monetization is via advertising. If subscription based that is fine. The incentive for sub based monetization is to keep you long enough to continue subscribing. For ads it is to keep you on as long as possible which trends towards divisive / fear / anger inducing content.
floodfx··on Show HN: Learn where countries are on the world map with Spaced Repetition
Love this! Played Worldle (https://worldle.teuteuf.fr/) for a while and this would have been helpful.

Great application of spaced repetition beyond cards.

floodfx··on The Housing Theory of Everything (2021)
Insightful!

Makes me think a bit about how negative content engages more people. Is this the same with people who don't like change? Not liking change activates people more than people who do like change?

floodfx··on Litdb – type safe SQL for JavaScript/TS
Not as well marketed but this is an awesome Typescript ORM https://joist-orm.io/
floodfx··on Gleam: A Basic Introduction
I like the look of Gleam over Elixir for sure. I’d love to see some example code showing Gleam-based LiveViews but I haven’t been able to find it anywhere. Is it possible? Anyone have some code to point me at?
floodfx··on Show HN: Zanki – AI powered spaced repetition to teach kids to read
Love this! Agree that kids educational content often crosses the line into too flashy and overproduced.

Great idea on the collectible stickers!

This is meant to be used while sitting with the kid as opposed to handing them my phone right?

floodfx··on Show HN: Joist, the Best ORM, Ever?
From the article - Joist provides:

- Bullet-proof N+1 prevention,

- Tracking loaded relation/subgraph state in the type system, and

- Backend reactivity, for declarative cross-entity validation rules and reactive fields.

Wow!

floodfx··on LiveView Is Best with Svelte
There are LiveView backends written in Javascript (http://liveviewjs.com), Go (https://github.com/canopyclimate/golive), Java (https://github.com/floodfx/undead), and Python (https://github.com/ogrodnek/pyview).

Disclaimer: I wrote or helped write the first three.

floodfx··on Dealing with surprising human emotions: desk moves (2017)
Back when I was in an office, we switched desks once a quarter. We randomized the selection order each time and the only rules were you couldn't sit at the same desk or next to the same people. The value was that sitting next to new people created more social connections and created more trust and a change in scenery was refreshing.
floodfx··on JEP draft: String Templates (Final)
I think String Templates are pretty cool. For example it enables "tagged template literal"-like behavior which is super powerful in JS land.

I used it to support a LiveView implementation for Java: https://github.com/floodfx/undead

Sure the syntax isn't "pretty" but understandable and you get used to it like anything else.

floodfx··on Using Turbo Frames and Streams Without Rails
This idea being it will speed up navigation? And by static site you mean not SPA static site but traditional separate pages? Smart!
floodfx··on Sopwith – a classic bi-plane shoot 'em up from 1984 in the browser
Me too! On my Tandy 1000 iirc.
floodfx··on Show HN: Undead – scary fast, bewitching web pages on the JVM with no JavaScript
The link that @helb sent is a good summary from the Phoenix docs but it is sort of hard to "get" just by reading about it. My attempt to be more concise is "a LiveView is a server process that receives events (clicks, form input, etc) from the browser, updates its state on the server, and sends back diffs which are applied to the browser."

You can think about it as a server-rendered HTML page that gets updated via Websocket updates.

That doesn't really do it justice either. I think writing a little bit of code and running a LiveView server is probably the best way to truly grok it.

Like any new paradigm, it takes a bit of a mind shift to see the value.

If you can, try running the Undead example server by downloading the repo and running:

`mvn package exec:exec`

floodfx··on A LiveView Is a Process
Comments like this push people away from Erlang rather than draw them in.
Page 1 of 4Next →