Recent submissions

Comment · 21 days ago
I think you may be missing a key point here. These communities spring up, at least in part, because a group of people all want X to exist and building X alone isn't really feasible. This necessity of collaboration can be a major driver of community-building, especially for people who are very technically competent but not particularly outgoing.

If an AI-generated version of X already exists, at least some of the people who might have joined the "let's build X together" community aren't going to sign up anymore. Some of them may feel discouraged because AI got there first, while some may simply feel like the AI version is good enough for their purposes.

You may be right that new and different communities will spring up around AI-generated projects. I'd argue something is still lost, even if something new is gained in the process. I think there's something special about communities of people who are passionate enough to do truly hard things that require dedicating large amounts of time and effort. While AI can help people accomplish far more than they otherwise would've, reducing the amount of human effort and attention that goes into any given task is almost inherent in any AI use.

Comment · 29 days ago
Looks like it - they both take the same "don't ship a browser, rely on the OS's built-in browser engine" approach. Unfortunately that approach seems to be great on Windows, okay on Mac, and barely workable on Linux.

Tauri has been trying to dig itself out of that hole for a while by adding CEF support. It looks like they've got that running in the Tauri 3.0 alpha, but I think they may still have some issues with Wayland.

Comment · 3 months ago
This is the big pain-point for me with self-hosted budgeting software.

The corporate players in the space can jump through the security hoops and integrate with Plaid, but if I wanted to automatically pull my own data into the single-user budgeting tool I host entirely on my own network I need to pass the same security checks as a full-on fintech startup.

Currently I enter transactions manually, but manually reviewing multiple credit card and bank statements is a chore and I don't keep up with it as much as I should. To make things worse, since I ideally want a live view of my budget and not a post-statement-issuance monthly review, I'm constantly checking over transactions I've already entered when their ordering changes in my credit card company's app.

The closest thing to a potential solution involves extracting my Monarch Money session key from my browser and pulling data from their GraphQL endpoints with the help of an unofficial Python SDK. That doesn't solve the "relying on a subscription service" problem, but it would at least let me get my data into the custom budgeting tool I built that actually meets my needs.

Comment · 3 months ago
Yeah, I'm pretty sure Keychron has legitimately published the source for their QMK branches.

The real issue is that people buying a keyboard that advertises QMK support reasonably expect that they can install the upstream generic QMK, but Keychron actually maintains a bunch of "playground" branches on their fork of the QMK repository that each function as their own version of QMK.

I've been using a Q6 Pro as my primary keyboard for a while and I like it overall, but I was very disappointed when I decided to roll up my sleeves and compile QMK myself. My board launched with a build from the "bluetooth_playground" branch, which hasn't been updated for 2 years now and is now 6000 commits behind the main QMK project. There's now a separate "wireless_playground" branch which has been updated more recently and has an entry for my keyboard, but the link on the product page still goes to "bluetooth_playground" and even "wireless_playground" is 3000 commits behind the main QMK project.

Keychron boards without special functionality seem to get added to upstream QMK just fine, but a lot of us owners of bluetooth-enabled Keychron boards would really appreciate it if they provided an official way to flash normal QMK and just forgo the wireless features.

Comment · 3 months ago
This doesn't seem to be relevant to the comment you replied to. They didn't mention anything about paying less to pharmaceutical companies, they argued that the administrative overhead of providing the insurance itself is lower.

As I read it, your argument seems to be that American healthcare must be more expensive than similar-quality healthcare elsewhere because we're paying higher pharmaceutical prices to fund research. If we accept that premise, shouldn't that mean that: 1. The "medicine" portion of costs increases, causing the total cost to increase 2. Administrative effort, and therefore absolute cost, remains the same (we're paying X% more for drugs, not thinking X% harder about whether a given drug is needed by a given patient) 3. Administrative overhead as a percentage of total cost should be lower given a similar efficiency level, because higher drug prices inflated the divisor (total cost) while having no effect on the dividend (administrative costs)

Comment · 7 months ago
This is extra rough because Codex defaults to letting the model be MUCH more autonomous than Claude Code. The first time I tried it out, it ended up running a test suite without permission which wiped out some data I was using for local testing during development. I still haven't been able to find a straight answer on how to get Codex to prompt for everything like Claude Code does - asking Codex gets me answers that don't actually work.
Comment · 1 year ago
Honestly I think React DX kinda sucks, at least in some areas. Performance is one of the worst (`useMemo` and `componentShouldUpdate` are way to easy to ignore, constant re-renders are the norm and writing performant React code requires conscious effort to avoid footguns) but it's also just less self-explanatory than the alternatives I've tried.

I started doing web dev before reactivity frameworks were a thing, and I found Vue to be the most intuitive of the frameworks available when I first needed reactivity. To me, Vue feels like HTML with superpowers while React feels like a whole new way of thinking about webapps. I'm honestly a bit surprised that the article doesn't mention Vue, since Vue is (and has been for a while) the most popular "not React or Angular" framework option. Newer versions of Vue even support the "disappearing framework" feature Svelte was built for, which I'm excited to take advantage of when my biggest work project finally moves to Vue 3.

Comment · 1 year ago
It's been interesting seeing several comments like this in the comments, since Laravel's docs may be one of the most highly-praised aspects of the framework. I suspect the divide may be that newer developers get everything they need explained in the docs in clear language, but the more advanced stuff requires some digging.

I use Laravel personally, and I've definitely seen both sides of this myself. For basic "happy-path" API reference, the docs are great. If I really need to understand how the framework is doing something, I pretty much always end up diving into the code. Unfortunately the heavy use of Facades can sometimes make it annoying to find the underlying code.

Comment · 1 year ago
I disagree, at least in this specific context. With Laravel Cloud you build a standard Laravel application which can be deployed anywhere, then use the service to handle DevOps for you. Because it doesn't include any unique services of its own, you can always decide to hire a DevOps team and run all the required services yourself.

You're totally correct in scenarios where you need to build your project around the service, but this service is specifically a DevOps shortcut with no lock-in.

Should your Fortune 500 company use this? Maybe not. Should a one-man dev shop use this? Quite possibly - you pay for the convenience, but it frees up more time to improve your application.

Comment · 1 year ago
This is true, if you're billing your hypothesis as a hypothesis. The problem is that prominent Republicans billed their "election was stolen" hypothesis as a fact, claimed to have boatloads of evidence in order to convince the public, and then never published that evidence.

In the aftermath of this clearly deceptive behavior, they've maintained the support of Republican voters who still believe the lie despite none of the evidence ever being released.

It's one thing to claim something is true and that you have evidence, then release the evidence and find out that it's insufficient to win in court. It's another thing entirely to make a claim, say you have overwhelming evidence to support it, and never release any evidence at all. In the former case, maybe you got overzealous or maybe you were dealing with an unsympathetic judge. In the latter, the only rational way to interpret the situation is that you were intentionally misleading your audience.

Comment · 1 year ago
It's well established that adults who read incorrect information frequently don't find out it was wrong and become more skeptical of the source. Some people operate that way, but it's a small minority unfortunately.

In particular, it's been shown that people with dogmatic beliefs strengthen those beliefs when shown evidence to the contrary rather than questioning them.

Comment · 1 year ago
Moderated media leans left. At least some of the reason it ends up that way is that many of the people who violate incredibly reasonable rules are conservative. Certain groups of hard-right people will say some incredibly bigoted shit that's absolutely out of line and makes it impossible to have a civilized conversation, then they complain about getting banned and drag a bunch of moderately-more-reasonable people with them when they leave. Once those people leave, normal everyday non-asshole conservatives realize the platform has less conservative content and leave in search of spaces that they feel respect their viewpoints more. In some cases entire topic-groups get banned (/r/the_donald is a good example) for legitimate reasons that frequently involve a small extremely-active group of members, and the rest of the members will also leave the platform because all they see is that a group they were part of got banned.

People who lean to the left tend to believe that it's bad to do some of the things that get you justifiably banned (such as intentionally using language that demeans people based on immutable traits). Because of this, it's much easier for them to avoid being deplatformed.

Comment · 1 year ago
Assuming that random factors like "it rained" or "voters got in car accidents and couldn't make it to the polls" aren't a significant factor, there's always a 100% probability of one specific candidate winning since everyone has made up their minds before the day of the election. What polls do is not telling you the real-world probability, it's telling you the likelihood of a given outcome given known data.

Polls always need to be skewed in some way to be accurate, since not everybody will vote. You can't just get a random distribution of the population's preference and assume the more-preferred candidate will win. Polls can never be truly accurate because people will lie about which candidate they're voting for and whether they're planning to vote, and sometimes people who genuinely intended to vote never make it to the polls. There are a huge number of variables to consider when trying to predict the outcome of the election, but it's important enough that it's still worth trying.

Comment · 2 years ago
Serious question - what do you think will happen to AI that currently relies on human reporters if everyone switches to getting their news from AI and the reporters lose their jobs?

Morals aside, AI will run into serious problems in 10-20 years when the world has rearranged itself around AI content. With less non-AI content available and no reliable way to differentiate AI vs non-AI content, there will no longer be a dataset to train against.

Individual humans summarizing the news can reduce revenue for news organizations slightly, but AI summarizing every news article is a problem on a whole different scale. Basically the same as the difference between getting a mosquito bite and being stabbed in your carotid artery - both are just blood loss, but one is a minor annoyance and the other is fatal.

Comment · 2 years ago
I'll confess - I have a project that uses Heroku's managed Postgres and my preferred upgrade method is to set the maintenance window to the middle of the night, create a backup, and be awake at 1am to make sure that nothing is broken after they force the upgrade. Their auto-upgrade process hasn't failed me so far, but there's no way to manually trigger it.

Live from the official Hacker News API

A modern reader for Hacker News · SvelteKit + Skeleton