HNHacker News
TopNewBestAskShowJobs

phildenhoff

674 karma · joined January 7, 2020

Open to emails: hello@phil.denhoff.ca

github.com/phildenhoff

submissionscomments
phildenhoff··on Canada has one city with good weather and it's too tiny
I would not recommend driving over the Juan de Fuca strait
phildenhoff··on Canada has one city with good weather and it's too tiny
> 90,000 people live in the core, which is about the maximum daytime population of Disneyland. More people live in the greater capital district (400,000), but because Victoria is subject to very particular microclimates, the further you get from the city itself, the worse the weather becomes

True, but outside of the City of Victoria is Saanich, the largest municipality of the 13 that make up the Capital Regional District. Saanich has roughly the same climate and another ~110k.

Also, anecdotally, despite the smaller population, Victoria is a tourist destination and swallows cruise ships worth of passengers with ease. If you want to visit, come visit. You'll find all the amenities you need.

phildenhoff··on Ask HN: What are you working on? (February 2026)
They created a fascinating tool -- I'll be following your progress to see what you build!
phildenhoff··on Every book recommended on the Odd Lots Discord
I agree that it shouldn't mysteriously be a pointer all the time, but using a pointer for the cursor is a preference, not a standard. In native apps (outside the web), the cursor is often not turned into a pointer when hovering clickable content.
phildenhoff··on Qntm's Power Tower Toy
I hope qntm has the chance to traditionally publish Ra and have it edited as well. I enjoyed the book a lot, but felt it needed a solid once over.

Really enjoyed the novel though! Planning to reread it in the spring.

phildenhoff··on Show HN: I created a cross-platform GUI for the JJ VCS (Git compatible)
For those coming to this thread after it was scrubbed, the author unfortunately felt they had to shut the project down after being pressured by their employer. The name is redacted and the website shut down.

For what it's worth, commentary from others on the JJ Discord suggested that this could not be a legally binding requirement as the author is located in California. California has laws that prevent employers from controlling employees inventions outside of work hours when using their own devices: https://codes.findlaw.com/ca/labor-code/lab-sect-2870/

phildenhoff··on Kagi Reaches 50k Users
Why not set it up as your default search engine? That’s what I did. Hard to forget when it’s the default
phildenhoff··on By default, Signal doesn't recall
Are you upset about DRM in general? Or that Signal, by default, prevents Windows from capturing the Signal window when it screenshots the screen every few seconds?

because it sounds like Windows is the problem here, doing this screenshotting at all. And Signal allows you to disable the anti-screenshotting measure

phildenhoff··on Postman for MCP
andes314, can you expand on how you see this as Postman for MCP?
phildenhoff··on The Future Is Niri
Thanks! As soon as I saw Niri I wondered if there was a macOS alternative.

Aerospace has a similar resizing glitch as PaperWM.spoon: resizing one direction ends up looking wonky if you do it fast enough. It’s noticeable at the end of the smooth scrolling demo. That must be a macOS thing…

I may check out PaperWM.spoon at some point but realistically I’ll set up a VM and try out Niri

phildenhoff··on Everything I Was Lied to About Node.js Came True with Elixir
Does Effect prevent workers that have uncaught exceptions from crashing the main thread in Node? Does it reduce the amount of memory workers use?
phildenhoff··on Surgery implants tooth material in eye as scaffolding for lens
Thanks! Your hard work is appreciated.
phildenhoff··on Surgery implants tooth material in eye as scaffolding for lens
The title "For the 1st time in Canada, surgeons put teeth in patients' eyes to restore sight" is much clearer than "Surgery aims to restore sight by implanting a telescopic lens in a tooth".

First, the tooth is put into the eye — used as biocompatible material to hold the lens. Second, the surgery is 60 years old and has something like a 94% success rate after 27 years, so it's hardly fair to say "surgery _aims_ to restore sight". It almost certainly will restore sight. The part that is interesting in this story is that it's an uncommon surgery that is happening only for the first time _in Canada_.

phildenhoff··on Ghost House – software for automatic inbetweens
The website is wacky and the demo video is fascinating. That edge effect? how long it takes to transition? so good
phildenhoff··on Jellyfin: The Free Software Media System
Please don’t take this as criticism of your setup, but why are you trying to stream Blu-ray Disc folders at all? Why not transcode the files?
phildenhoff··on jj: a Git-compatible VCS that is both simple and powerful
If you want to “checkout” some previous commit, jj has your back in three ways

- first, that commit that’s been merged to main is marked as immutable and, unless you add a flag to say “I know this is immutable and I want to mutate it anyway”, you can’t mutate it

- second, as part of your regular workflow, you haven’t actually checked out that historical commit. You created a new, empty commit when you “checked it out” using “jj new old_commit”

- third, you can use jj undo. Or, you can use “jj obs log” to see how a change has evolved over time (read: undo your mass find+replace by reverting to a previous state)

phildenhoff··on Show HN: Polaris, a self-hosted music streaming server in Rust
You don’t want to airplay from an iPhone or Mac? That’s what I do, using Finamp. I guess it’s a client and not a music server.
phildenhoff··on Ask HN: Who wants to be hired? (January 2025)
I build software that doesn't suck. I'm a strong believer in spending a bit more time to create quality software that's genuinely user-friendly and intuitive. In my next role, I'll help build software that makes life better for our users.

  Location: Victoria, BC, Canada (near Vancouver, Canada)
  Remote: Yes
  Willing to relocate: Yes, potentially
  Technologies: Full-stack Typescript and Javascript (Node.js, Deno, React, Svelte), React Native, Python, Rust, Elixir, APIs, fintech, Tauri desktop apps
  Résumé/CV: https://www.linkedin.com/in/phildenhoff (can provide PDF)
  Email: hello@phil.denhoff.ca
I'm a full-stack software engineer and a generalist. I launched my side-project Citadel here on Hacker News at the beginning of last year to great fanfare, and it now has 1k+ stars on GitHub. Previously, I launched a React Native mobile app that offered pet parents 0% bridge financing loans for vet care in just four months, offering folks the ability to afford necessary vet care for the first time.

I've worked on static, server-rendered, and SPA websites, built React Native mobile apps, deployed APIs using Elixir, Python, and Typescript (Node.js + Deno), and recently I've been tinkering with desktop applications using Tauri + Rust.

To see my open-source projects, see my GitHub: https://github.com/phildenhoff

phildenhoff··on Getting to 2M users as a one woman dev team [video]
Yes, and I think you can imagine that the software I’m building is neither an e-reader nor is it a platform to purchase ebooks
phildenhoff··on Getting to 2M users as a one woman dev team [video]
I’m not sure what world other people live in but Amazon has absolutely nothing to do with my reading ebooks. Not how I buy them, not how I read them.

I’ve been building an app specifically to help me manage the ebooks that I own

phildenhoff··on Getting to 2M users as a one woman dev team [video]
Yeah Hardcover seems to have a GraphQL API they use for their UI, which they expose. There’s not a lot of extra polish for third party devs — it feels like “this is the API we use, use it or not, things may break”. On the other hand, StoryGraph does server-side rendering and so it doesn’t have an API already. So adding one would be a decent amount of work
phildenhoff··on Getting to 2M users as a one woman dev team [video]
Solidifying my dislike of Goodreads, I got my “year in books” email from them today and the first thing that loaded, at the top of the email, is an ad. For pillow cases.

Folks, don’t do that

phildenhoff··on Getting to 2M users as a one woman dev team [video]
StoryGraph is an excellent tool and I continue to use it daily.

I’ve also found Hardcover.app, which I quite like. It has an API and a slightly more refined UI, but it’s clearly more than one person working on it.

Of course, if your focus is book clubs, Fable is likely the app for you

phildenhoff··on Ask HN: Those making $500/month on side projects in 2024 – Show and tell
Also, maybe update the "recent issue" to be more recent than 2021! Just subscribed though; I'm looking forward to receiving it wherever I read my emails.
phildenhoff··on Ask HN: Who wants to be hired? (December 2024)
I build software that doesn't suck. I'm a strong believer in spending a bit more time to create quality software that's genuinely user-friendly and intuitive. In my next role, I'll help build software that makes life better for our users.

  Location: Victoria, BC, Canada (near Vancouver, Canada)
  Remote: Yes
  Willing to relocate: Yes, potentially
  Technologies: Full-stack Typescript and Javascript (Node.js, Deno, React, Svelte), React Native, Python, Rust, Elixir, APIs, fintech, Tauri desktop apps
  Résumé/CV: https://www.linkedin.com/in/phildenhoff (can provide PDF)
  Email: hello@phil.denhoff.ca
I'm a full-stack software engineer and a generalist. I launched my side-project Citadel here on Hacker News earlier this year to great fanfare, and it's got 1k+ stars on GitHub. Previously, I launched a React Native mobile app that offered pet parents 0% bridge financing loans for vet care in just four months, offering folks the ability to afford necessary vet care for the first time.

I've worked on static, server-rendered, and SPA websites, built React Native mobile apps, deployed APIs using Elixir, Python, and Typescript (Node.js + Deno), and recently I've been tinkering with desktop applications using Tauri + Rust.

To see my open-source projects, see my GitHub: https://github.com/phildenhoff

phildenhoff··on Show HN: Feels Like Paper
Yeah I’m very interested in this. I’d love to be able to easily create digital representations of handwritten notes, even if that requires me to markup specifically-formatted documents.

I love reading paper (and eink) but I hate losing notes, and I don’t have a good process for importing those notes to my Logseq database.

phildenhoff··on A React Renderer for Gnome JavaScript
On the other hand, while I really enjoyed using Svelte for a side project, I ended up rewriting it back in React. I’ve got years of experience with React and found the Svelte story just wasn’t as refined.

Particularly, I was missing support in Biome and Storybook integration was essentially not there a year ago. I’m not sure what it’s like today! But that’s the joy of bleeding edge tech vs. a tool that’s been a market leader for a decade

phildenhoff··on Direct Sockets API in Chrome 131
Interesting — the Firefox team’s response was very negative, but didn’t (in my reading) address use of the API as being part of an otherwise essentially trusted app (as opposed to being an API available to any website).

In reading their comments, I also felt the API was a bad idea. Especially when technology like Electron or Tauri exist, which can do those TCP or UDP connections. But IWA serves to displace Electron, I guess

phildenhoff··on A near impossible literacy test Louisiana used to suppress the black vote
A solution is available here: https://mrsjcoonan.weebly.com/uploads/2/3/6/2/23625108/liter...

But, my understanding is that the test is purposefully opaque, so that any answer can be considered “wrong”, at the discretion of whoever’s running the test.

phildenhoff··on Steve's Jujutsu Tutorial
Steve, I see you’re in this thread. I was using jj for a while before reading your tutorial and yet still found it quite insightful and helpful. Thanks for your contribution!
← PreviousPage 2 of 5Next →