News for hackers. Stuff that matters.

davidfstr

Re:An update on recent Claude Code quality reports on Thursday April 23, 2026 @02:46PM (#47879856)
Good on Anthropic for giving an update & token refund, given the recent rumors of an inexplicable drop in quality. I applaud the transparency.
Wine for classic Mac OS? Amazing. Well done.
Re:Ask HN: Do you have any evidence that agentic coding works? on Wednesday January 21, 2026 @04:07AM (#46703004)
You should not be using Python types without a type checker in use to enforce them.

With a type checker on, types are fantastic for catching missed cases early.

Re:Is Northern Virginia still the least reliable AWS region? on Tuesday December 23, 2025 @07:43PM (#46371218)
I intentionally avoid using us-east-1 for anything, since I’ve seen so many outages.
> If you didn't know, you can embed JavaScript into an SVG file.

Oh yikes. I did not know.

Re:Stacked Diffs with git rebase —onto on Friday December 05, 2025 @10:03AM (#46162200)
I’ve been meaning to write this article for a long time @flexdinesh . Thanks for taking the time to share this technique for managing stacked diffs using vanilla git rebase!
Re:Designing Software in the Large on Monday August 11, 2025 @08:46PM (#44871120)
I have to take special effort to tamp down on duplication in AI generated code.

For me it's not uncommon for AI to draft an initial solution in X minutes, which I then spend 3*X minutes refactoring. Here's a specific example for a recent feature I coded: https://www.youtube.com/watch?v=E25R2JgQb5c

Re:Ty: A fast Python type checker and language server on Wednesday May 07, 2025 @09:12PM (#43922113)
mypy is compiled using mypyc. It does not run as Python code.
For HTML-in-HTML natively I use iframes and still remember how to use Frames & framesets.
Re:Font with Built-In Syntax Highlighting on Thursday August 15, 2024 @10:20AM (#41256431)
I find it amusing that the motivation for creating a complex font program that supports syntax highlighting internally is the desire to avoid a complex syntax highlighter JavaScript library. The complexity is still there; it's just been moved around.

Edit: Perhaps this is a reminder that custom fonts are a potential attack vector for security-sensitive websites since font rendering runs highly-complex programs, probably in a language that isn't memory safe.

Re:Returns: Brings functional programming to Python land on Tuesday February 20, 2024 @08:48AM (#39441181)
Looks like this library is serious. Most of what I see can be written more succinctly using existing Python functionality:

  1. Maybe -> Optional[T]
  2. Result -> Union[SuccessT, FailureT]
  3. Future, FutureResult -> concurrent.futures.Future[T]
  4. IO ->  don't use this; none of the standard library I/O supports it
I do appreciate the use of "container" as a term instead of "monad".

I also appreciate the typechecker enhancements being put forward by their custom plugins.

Re:Beeper Mini is back on Tuesday December 12, 2023 @08:38AM (#38611892)
WhatsApp is owned by Meta/Facebook
> A better resource today would have to start with some radical choice such as whitelisting, if only to reduce the head-end costs of ingesting material.

> It's tempting to imagine some rules like: no ads, no popups of any kind, government mandated or not, especially no cookie banners, no paywall, but even sites like Wikipedia fail at those criteria today.

This sounds like the approach that the Marginalia (https://search.marginalia.nu/) search engine is taking. My understanding is that its algorithm favors text-heavy sites. And additions to its index are done via GitHub Pull Request so it's effectively using an approve-list (whitelist).

I’ve used 3+ text editors on macOS (BBEdit, Sublime, VS Code, PyCharm), and prefer Sublime for my day-to-day work writing Python/JavaScript web apps, mainly because of fast code navigation and relatively fast typing speed.

BBEdit I still use for multi-file search & replace since I prefer its interface for that. It also has the fastest typing speed.

PyCharm I use exclusively for identifying & removing unused imports in Python.

VS Code I don’t use at all. Relatively slow typing speed. Relatively slow navigation.

I created a smart spreadsheet app for tracking any books, movies, or TV series I'm interested in watching which can automatically run web searches for sources to stream/rent/buy any item on the list (ex: Netflix, Amazon Prime, my local library, my local bookstore).

This way I can focus on what I want to watch and not worry about how I will watch it.

> Servers can also be liability. You need to document, implement and maintaing hardening, have a process for regularly patching os and apps, […], have backup and disaster recovery procedures, regularly test the procedures, […] and so on.

Much of this complexity I eliminate by using the Immutable Server pattern:

Specifically I deploy my app as a Docker container hosted on a virtual machine cluster managed by AWS ElasticBeanstalk. OS upgrades and patches (outside the container) are done by AWS.

If anything goes wrong with a VM I just terminate it and a different fresh VM spins up to take its place.

Re:Ask HN: Is Ruby on Rails still relevant? on Tuesday April 26, 2022 @03:23PM (#31171970)
Personally if I was starting a project in the same space as Rails/Ruby I’d go with Django/Python instead.

I prefer the “explicit is better than implicit” norm in the Python community over the “powerful yet mystifying magic” I find in Rails. (This is personal preference.)

I also appreciate Python source code being easier to manipulate with tools than Ruby, since Ruby did not have a formal grammar the last time I checked. Any tools that did exist appeared to usually include the yacc/bison file from MRI (the main Ruby implementation) as the best approximation of a language definition.

Several of the missing capabilities mentioned here can be done with 3rd party tools.

* BetterSnapTool for window snapping and maximization (although I prefer Moom for better control).

* Afloat to force a particular window to always be on top.

* TinkerTool to mess with various other settings.

Sure, these may not be “built-in” as first party capabilities, but Apple has a history of slowly bringing such capabilities into the OS over time. Flux (for altering screen tint at night time) became standard. So did TextExpander (for auto-expanding abbreviations).

Neat. Reminds me of FileMaker from back in the day, which I believe still exists.

<hot-take> More programmer-focused, less UI/normal-folk focused. </hot-take>

Re:Almost Always Unsigned on Sunday January 02, 2022 @12:22PM (#29770804)
For languages that don't give you a choice of signed vs. unsigned - giving you signed and sometimes arbitrary-precision integers - this debate is irrelevant.

I'll put it in my same mental bucket of "things that I no longer worry about", along with buffer overflows, wild pointers, etc that are eliminated by memory-safe languages.

HN occasionally alerts me to the existence of new tools or trends that I can leverage in business.

For example:

* About 5 years ago I happened to read about the Material Design Lite library on HN which I then used for my then-nascent startup to get our initial website up and running quickly in the Material Design UI language. (And for that purpose it has worked quite well.)

* Emscripten & WASM-related tech has been useful for implementing some of the “secret sauce” at my startup.

* The recent attention given to Cosmopolitan has unlocked a specific technical hurdle (around multi-platform support) for a digital preservation venture I’m planning to start as a side project soon.

Well, if by “open source” you mean broadly any software available whose code is viewable on the internet, you’re essentially advocating for no projects that use “nonstandard” licenses to exist.

That seems like a waste if there would be otherwise be projects around with a nonstandard license that was acceptable to a subset of users.

For example the CPython interpreter (the official interpreter for the Python language) does not use a standard license. Would you not want Python to exist?

If you suppress any knee jerk reaction you might have against religious associations in the preamble, the actual restrictions in the “Permitted Uses” section seem fairly reasonable to me, if not with more moral restrictions than usual:

https://github.com/katharostech/ldtk-rs/blob/master/LICENSE....

Most OSes have a license restricting use in nuclear power plants. This license adds similar restrictions like “cannot use in adtech”. :)

No license is going to satisfy everyone in all contexts.

For example I cannot use GPL at work (based on my own rules as team lead) but am open to it in personal projects.

And other folks would consider having something NOT GPL licensed to be suspect.

It is not possible to provide a uniform license that will be acceptable to all in all circumstances.

Older »