HN user

dceddia

3,326 karma

Making video editing faster with Recut https://getrecut.com

Blogging about React and JS at https://daveceddia.com.

Author of Pure React.

dave@daveceddia.com or @dceddia on Twitter

Posts55
Comments780
View on HN
github.com 3mo ago

Toggle macOS battery icon with plug/unplug

dceddia
2pts0
www.hottakes.space 2y ago

The War on Hyperlinks

dceddia
4pts0
aaronfrancis.com 2y ago

Try Hard

dceddia
1pts0
www.hottakes.space 2y ago

The War on Hyperlinks

dceddia
2pts0
twitter.com 3y ago

Windows NT on 600MHz machine opens apps instantly. What happened?

dceddia
752pts667
github.com 3y ago

A free performance tuning class in C++ and Rust

dceddia
3pts0
www.wsj.com 3y ago

Small Businesses Face Big Tax Bills from Research-Deduction Change

dceddia
3pts2
alvyray.com 3y ago

A Pixel Is Not a Little Square (1995) [pdf]

dceddia
74pts69
profiler.firefox.com 3y ago

Firefox Profiler

dceddia
2pts1
alvyray.com 3y ago

A Pixel Is Not A Little Square (1995) [pdf]

dceddia
2pts0
inessential.com 3y ago

Why NetNewsWire is Fast (2020)

dceddia
15pts0
vincent.bernat.ch 3y ago

Self-Hosted Videos with HLS

dceddia
2pts0
getrecut.com 4y ago

Show HN: Recut automatically removes silence from videos – built with Tauri

dceddia
268pts114
pspdfkit.com 4y ago

Approaches to Undo and Redo

dceddia
2pts0
emysound.com 4y ago

How Audio Fingerprinting Works

dceddia
259pts19
developer.x-plane.com 5y ago

Elixir Powers X-Plane Mobile’s MMO Server

dceddia
4pts0
www.jackfranklin.co.uk 5y ago

Comparing Svelte and React

dceddia
4pts1
getrecut.com 5y ago

Show HN: Recut, a native Mac app that automatically removes silence from videos

dceddia
54pts16
daveceddia.com 5y ago

Using State Machines with React to Make a Confirmation Dialog (2020)

dceddia
90pts64
www.forbes.com 5y ago

Vehicle camera system that can detect a single brick at 150 meters

dceddia
46pts38
blog.regehr.org 5y ago

Operant Conditioning by Software Bugs (2012)

dceddia
40pts16
www.forbes.com 5y ago

Vehicle camera system that can detect a single brick at 150 meters

dceddia
2pts1
christiantietze.de 5y ago

Distribute Your App Outside the Mac App Store

dceddia
2pts0
daveceddia.com 5y ago

Visual Guide to References in JavaScript

dceddia
2pts0
daveceddia.com 5y ago

Using State Machines with React to Make a Confirmation Dialog (2020)

dceddia
1pts0
github.com 6y ago

Wekan – a self-hosted alternative to Trello

dceddia
4pts0
www.technologyreview.com 6y ago

A 1959 Essay by Isaac Asimov on Creativity

dceddia
4pts0
www.aopa.org 6y ago

Mooney Aircraft Has Closed

dceddia
2pts0
whimsical.com 6y ago

How Slack Decides to Send a Notification

dceddia
1pts1
github.com 6y ago

fd: A simple, fast, user-friendly alternative to 'find'

dceddia
45pts3

I’m just gonna take this chance to drop a rec for Joe Hudson’s work for anyine interested in learning more about emotions and how to work with them in yourself and others. It’s been super impactful for me. (YouTube/podcast)

On this point in particular (that we’re broadcasting these signals), in one of the AoA courses I took there’s an exercise where you and a partner take turns guessing at the emotion the other person is feeling. You’re just staring into each others’ eyes on zoom, and one person is going “angry. sad. joyful. fear. Angry again.”

When I was the guesser I had no idea if I was even in the ballpark.

But when the other person was guessing my emotions, they were probably 70% accurate with what I was feeling. We discussed afterward and they had the same experience (I had apparently gotten most of them right). It was wild.

Handy is great. It exposes a bunch of open models beyond Whipser too, and though I haven’t tried too many of them, I’ll throw in a rec for the Parakeet model which feels pretty much on par with Whisper for accuracy and is way way faster.

As a solo dev, I’ve found myself spinning up little servers for various things and then just letting them run for months between needing to make changes.

At first (and for admittedly way too long), I used this as a way to try out fun new frameworks - Node+Express for one thing, Phoenix for another, SvelteKit for a third.

I noticed it was a huge pain to dive into these things once every 6 months. I’d forgotten how it worked, and for some of them at least, I could look up docs and examples.

My Node+Express thing was the worst because it was all homegrown. There’s very little convention in that world, and you have to make your own. No docs were coming to save me, and this was in the Before Times, like 3 years ago pre-LLM.

Anyway I ported everything to Rails and it’s wonderful. I know how it works, there’s almost 30 years of examples online and they even mostly still work, and LLMs are great at it too.

Lots of power in a good framework, in a situation that’s a good fit for it!

I resonate with a bunch of this. The idea that what I make is somehow not as good as the “real” version of whatever it is (where “real” is hard to define, but roughly just, always better than what I made).

You mention the emotional neglect and the connection to childhood, and I get the sense you’re interested in figuring it out. It made me think you might like Joe Hudson’s work on YouTube.

I was connected to a VPN and saw the same. Went away once I disconnected.

(Must say I'm not a fan of how, increasingly, taking any steps to preserve privacy is seen as deviant, or justified because bots)

I'd like to experience my brain not thinking about anything at all for once

You can! While you’re alive and everything! I’ve had this experience of few times of it being very quiet, and overall my brain is a lot quieter since then (and I see reports from people who’ve gone further/deeper; I get the sense the path is never-ending).

There’s a ton of resources and people out there that basically point to the same thing in different ways. Meditation is one of the ways but it’s not the only one. Some keyword soup if you want to go searching: jhana states, Jhourney, Art of Accomplishment, Joe Hudson, Zen, Buddhism, awakening, Michael Singer, Loch Kelly

There are varying levels of “woo” in this, and if you’re on the woo-averse side, Joe Hudson’s stuff is a good way in.

Yeah, forgot when I wrote this comment that the thing about keychain was to pass that auth token into a Docker container, which I gave up on (Tauri desktop app needs to compile Rust and link against other stuff, different architecture inside the container blah blah)

More or less what it says in the README:

    fence -t code -- claude --dangerously-skip-permissions
Or wrap it in a function as an alias
    # cat prompt.md | ralph
    function ralph() {
      fence -t code -- \
        claude --verbose --dangerously-skip-permissions --output-format stream-json -p "$@" \
        | jq -r 'select(.type == "assistant") | .message.content[]? | select(.type? == "text") | .text'
    }

The Claude Code client adds system prompts and makes a bunch of calls to analytics/telemetry endpoints so it's certainly feasible for them to tell, if they inspect the content of the requests and do any correlation between those services.

And apparently it's violating the terms of service. Is it fair and above board for them to ban people? idk, it feels pretty blatantly like control for the sake of control, or control for the sake of lock-in, or those analytics/telemetry contain something awfully juicy, because they're already getting the entire prompt. It's their service to run as they wish, but it's not a pro-customer move and I think it's priming people to jump ship if another model takes the lead.

I went down this rabbit hole a bit recently trying to use claude inside fence[0] and it seems that on macOS, claude stores this token inside Keychain. I'm not sure there's a way to expose that to a container... my guess would be no, especially since it seems the container is Linux, and also because keeping the Keychain out of reach of containers seems like it would be paramount. But someone might know better!

0: https://github.com/Use-Tusk/fence

This look nice! I was curious about being allowed to use a Claude Pro/Max subscription vs an API key, since there's been so much buzz about that lately, so I went looking for a solid answer.

Thankfully the official Agent SDK Quickstart guide says that you can: https://platform.claude.com/docs/en/agent-sdk/quickstart

In particular, this bit:

"After installing Claude Code onto your machine, run claude in your terminal and follow the prompts to authenticate. The SDK will use this authentication automatically."

Interesting about the level of detail. I’ve noticed that myself but I haven’t done much to address it yet.

I can imagine some ideas (ask it for more detail, ask it to make a smaller plan and add detail to that) but I’m curious if you have any experience improving those plans.

I concur, also with no benchmarks to share, but I had the experience of rewriting a video editor timeline to use WebGL instead of the 2D canvas I started with and it got much faster. Like being able to draw 10k+ rectangles at 60fps became easy, where with 2D canvas it was stumbling.

So I’m probably in a similar spot - I mostly prompt-and-check, unless it’s a throwaway script or something, and even then I give it a quick glance.

One thing that stands out in your steps and that I’ve noticed myself- yeah, by prompt 10, it starts to suck. If it ever hits “compaction” then that’s beyond the point of return.

I still find myself slipping into this trap sometimes because I’m just in the flow of getting good results (until it nosedives), but the better strategy is to do a small unit of work per session. It keeps the context small and that keeps the model smarter.

“Ralph” is one way to do this. (decent intro here: https://www.aihero.dev/getting-started-with-ralph)

Another way is “Write out what we did to PROGRESS.md” - then start new session - then “Read @PROGRESS.md and do X”

Just playing around with ways to split up the work into smaller tasks basically, and crucially, not doing all of those small tasks in one long chat.

Is it possible for Ghostty to figure out how much memory its child processes (or tabs) are using? If so maybe it would help to surface this number on or near the tab itself, similar to how Chrome started doing this if you hover over a tab. It seems like many of these stem from people misinterpreting the memory number in Activity Monitor, and maybe having memory numbers on the tabs would help avoid that.

In many cases today “gif” is a misnomer anyway and mp4 is a better choice. Not always, not everywhere supports actual video.

But one case I see often: If you’re making a website with an animated gif that’s actually a .gif file, try it as an mp4 - smaller, smoother, proper colors, can still autoplay fine.

That's how it's always been only now you can buy the cert through Azure.

Where can you get an EV cert for $120/year? Last time I checked, all the places were more expensive and then you also had to deal with a hardware token.

Lest we talk past each other: it's true that it used to be sufficient to buy a non-EV cert for around the same money, where it didn't require a hardware token, and that was good enough... but they changed the rules in 2023.

The situation on Windows got remarkably better and cheaper recently-ish with the addition of Azure code signing. Instead of hundreds or thousands for a cert it’s $10/month, if you meet the requirements (I think the business must have existed for some number of years first, and some other things).

If you go this route I highly recommend this article, because navigating through Azure to actually set it up is like getting through a maze. https://melatonin.dev/blog/code-signing-on-windows-with-azur...

I’m coming to see the root is usually some kind of avoidance, always emotional, often subtle. I think this actually is pretty universal but the specifics vary wildly. It’s taken a while to unpack this. For a long time, when I’d about of a task I was avoiding, I’d just get this wave of a feeling of “ughhh” and turn away.

There’s something the feeling is trying to warn me about, and sitting with it can help figure it out and let it go. A lot of my own stuff stems from school I think. The funny thing is it’s often totally illogical. Like a sense of panic comes up - “oh no! Someone will be mad I haven’t started this yet!” - yes well wouldn’t getting it done avoid that outcome? “no but it’s too late! They’ll yell at me when I turn it in!”. My brain associated “doing the task” with “getting in trouble” in a weird way, and that emotional program runs whenever something vaguely similar comes up.

The surface-level fear might cover up a deeper fear underneath too (something like, I won’t be ok, or good enough, or loved anymore).

All this emotional stuff has been a recent focus of mine ever since finding Joe Hudson’s work. There’s a good playlist on procrastination that’s relevant here: https://m.youtube.com/playlist?list=PLrbct081G13-ot5FviKz1bt...

Pre-record your demos 10 months ago

This article reminded me of a talk I gave a couple times that went very smoothly because I pre-recorded the typing parts. Something like this:

- record the screen as you type out all of your code as you would do live

- don't need the audio, just the video

- edit it down to remove typos and pauses

- speed it up to a nice fast typing pace

Now you can drop the video into Keynote or whatever, and Play/Pause the video as you speak.

A crucial part of this is that the video has effectively no pauses. Maybe just a few short ones between sections, to leave time to hit Pause before the next keystrokes appear.

Instead of a 30 minute video that I had to perfectly keep pace with, it was like 5 minutes of rapid typing that I could speak along with and pause when it was time to explain something.

Claude Code 2.0 10 months ago

This kind of stuff is where my anxiety rises a bit. Another example like this is audio code - it compiles and “works” but there could be subtle timing bugs or things that cause pops and clicks that are very hard to track down without tracing through the code and building that whole mental model yourself.

There’s a great sweet spot though around stuff like “make me this CRUD endpoint and a migration and a model with these fields and an admin dashboard”.

I’ve noticed this is true of a lot of markets. I think of it like a triangle: a huge base of newbies, a smaller layer of intermediate folks, and a tiny tip of experts. If you’re trying to do an education-based business it’s a lot easier to try to sell to beginners.

Thanks for your insight! That’s great, seems like it’s been a fun project but not like a REQUIRED ongoing project. My first printer was a cheap i3 clone and it was more in the “never works right” category and I was hoping to avoid going back to something like that experience haha.

Yep this matches my experience pretty well! It’s been a good printer and I haven’t had to do much, and I avoid fiddling and mostly use it as a tool. I’m always eyeing the newer faster printers but I don’t love the cloudiness of Bambu and Prusa’s new stuff seems nice but not quite worth the leap yet. Voron has interested me for a while though.