MurphyA/hacker-news huggingface dataset:
by chrismorgan | 2025-08-21 06:30:56+00:00
> unicode scalars, which most languages index strings in

Very few do. Of moderately popular languages, Python is the only one I can think of. Well, Python strings are actually sequences of code points rather than scalars, which is a huge mistake, but provided your strings came from valid Unicode that doesn’t matter.

Languages like Rust and Swift make it fairly easy to access your string by UTF-8 or by scalar.

Languages like Java and JavaScript index by UTF-16 code unit and make anything else at least moderately painful.

> This is somewhat of an unfortunate tech debt thing as I understand, and it was made this way mostly because of JavaScript, which doesn’t work with UTF-8 natively. But this means you need to be extra careful with the indexes in most languages.

I’m confused here. You established indexing is by UTF-8 code unit, then said it’s because of JavaScript which… doesn’t do UTF-8 so well? If it were indexed by UTF-16 code unit, I’d agree, that’s bad tech debt; but that’s not the case here.

Bluesky made the decision to go all in on UTF-8 here <https://docs.bsky.app/docs/advanced-guides/post-richtext#tex...>—after all, the strings are being stored and transferred in UTF-8, and UTF-8 is increasingly the tool of choice, and UTF-16 is increasingly reviled, almost nothing new has chosen it for twenty years, and nothing major has chosen it for ten years, it’s all strictly legacy. Hugely popular legacy, sure, but legacy.
by jillesvangurp | 2025-08-21 06:31:32+00:00
I have the pixel 6. It's still fine. This looks like a very incremental update to me as have the previous few editions. Same with the OS. I can barely tell apart Android versions these days. And since most of the value is software based, there isn't much practical difference between different generations of Pixel phones.

My pixel 6 has the same 48 megapixel sensor in the camera as they still appear to be using. It seems camera sensors plateaued about 4-5 years ago. It's a great sensor; the raw images are pretty amazing given the form factor (tiny sensor and lens). And I expect it still is. People confuse the AI capabilities (removing subjects, adding missing detail, etc.) with simple operations to make the photo 'pop'. Boosting the contrast, saturating all the colors, applying some aggressive smoothing (noise) and sharpening, etc. Doing that manually on the raw files yields very similar results. It's good and convenient. But most of that is just the sensor being awesome and some tasteful defaults for these edits. Adding optical zoom is impressive. The digital/AI zoom is not something I'd use. They still seem to use different sensors for the different cameras; which is something Apple stopped doing with recent iphones. So, you have to choose between the right lens with lots of noise or the right sensor with the wrong focal range.

The AI stuff is interesting as a gimmick but not something I use a lot. It seems to be the main differentiator for Google these days but I just don't see that being worth hundreds of dollars. It's a bit of an artificial differentiator and a race to the bottom. The advantages tend to be a bit hand wavy and other phone manufacturers of course copy them.

I might go for the 10a when it comes out in six months or so. My Pixel 6 won't be getting major updates anymore and the battery is starting to deteriorate. The difference between a 500 euro phone and a > 1000 euro one are not worth it for me. And with the 9a at least it even had a slightly bigger battery.
by wiether | 2025-08-21 06:31:35+00:00
I agree that using them as a VPS provider is a mistake.

If you don't use the E(lasticity) of EC2, you're burning cash.

For prod workloads, if you can go from 1 to 10 instances during an average day, that's interesting. If you have 3 instances running 24/7/365, go somewhere else.

For dev workloads, being able to spin instances in a matter of seconds is a bliss. I installed the wrong version of a package on my instance? I just terminate it, wait for the auto-scaling group to pop a fresh new one a start again. No need to waste my time trying to clean my mess on the previous instance.

You speak about Step Functions as an efficient and cost effective service from AWS, and I must admit that it's one that I avoid as much as I can... Given the absolute mess that it is to setup/maintain, and that you completely lock yourself in AWS with this, I never pick it to do anything. I'd rather have a containerized workflow engine running on ECS, even though I miss on the few nice features that SF offers within AWS.

The approach I try to have is:

- business logic should be cloud agnostic

- infra should swallow all the provider's pills it needs to be as efficient as possible
by chewz | 2025-08-21 06:32:29+00:00
Zed isn’t just a text editor. It is the only working platform for code assistants.

Neither Google nor Claude nor anyone can’t at the moment get right basic operations like file edits. Zed is flawless in co-operating with most LLM models. And not just that - also switching models during conversation and more.

I am at Zed Pro at $20 but when Zed offers $200 Max plan I will sign up right away.
by hodgehog11 | 2025-08-21 06:32:55+00:00
As someone who has students that work in deep learning, I can say that it is unwise to approach deep learning in the same way as traditional ML. Most classical methods are strongly mathematically motivated and have excellent theory to accompany them. Deep learning is still alchemy; it is a matter of experience, trying things out and getting a feel for how the pieces fit together in a modular format. Once you are experienced with the common building blocks, you can develop an intuition for how they might be improved.

I would start with training a basic MLP on tabular data. Then switch to CNNs: LeNet, VGG, then ResNet. Understand each of the new blocks that are incorporated into each architecture and how they improve stability and training efficiency. There are good PyTorch tutorials for these. Use these as a playground to understand what each of the training knobs do. Look at how their implicit biases induce double descent; this should give you confidence that overfitting is rarely an issue anymore. Give finetuning a try by taking a pretrained ResNet on ImageNet, adding layers to the start and end, and training only these to adapt the model to another image dataset. This should demonstrate the power of finetuning and why pretrained models are so powerful.

Next, briefly consider a tutorial on LSTMs, recognizing the exploding and vanishing gradient problems and the traditional challenges with sequential data.

Then move to transformers. Work with language first, starting from Andrej Karpathy's excellent YouTube tutorials. Train the model in full for a bit, then see about using an existing GPT2 checkpoint. Try adapting NanoGPT to a mathematical dataset as an exercise. Then take a look at llm.c to see how to really improve performance.

Finally, take a look at ViT and DETR. Use pretrained models and finetune them on smaller datasets again.

By this point, you should have a good grounding to start reading much of the surrounding literature and understand them. You should also understand that models are never built from scratch anymore, and every model is a collection of individual pieces built elsewhere for a particular purpose.
by hvb2 | 2025-08-21 06:32:57+00:00
That general incompetency you're referring to there can also be worded as

For years they didn't build unneeded complexity. And it sounds like for many more years to come. So they're just efficient. Any developer will have had to make things configurable afterwards, that's fine, just evolution of code.

Hard coding also means that it's less likely to break. No customer (in Denmark) can influence this, so why make it configurable?

Over time this does become a problem when source code is lost/companies go under.
by bruce511 | 2025-08-21 06:33:03+00:00
There's absolutely no reason to hard-code the value. That's just bad programming.

However you can't expect programmers to predict all possible future compatibility.

In my country VAT has a current rate. That rate can, and has, changed. But we have one rate. Some goods are exempt, but products have a VAT yes/no field.

Perhaps in the future the system will change. One possible change is that VAT attracts different % for different products. I'm not predicting that, or coding for it now. VAT rules could change to anything- I can't code against that.
by instig007 | 2025-08-21 06:33:14+00:00
> This would have been a fair point had Scala 3 supported Python's packages

It supports the entirety of JDK-compatible packages and FFI/JNI bindings, which is a fair point of the comparison. Not sure why you have to frame it around the idea of necessarily having to improve Python, as the JDK infra and tooling have been around for ages, available to be picked by the devs.
by japanuspus | 2025-08-21 06:33:28+00:00
Seems an overly pessimistic take. TFA specifically mentions per-cell temperature monitoring, and I would assume there is also per-cell voltage monitors.

As long as the controller is made sufficiently conservative, there is no fundamental problem: you limit the current according to the cell that heats the fastest and shut down once one cell is near depletion.

Maybe they have even gone a more aggressive route and build a balancing circuit that can route significant current around a low-capacity cell. Or maybe just charging logic to keep as many cells as possible in the 20-80 regime if they will be limited by low-capacity members anyway. There are so many options here.
by foresto | 2025-08-21 06:33:50+00:00
If it collects information from someone, and they don't want it to, then it is spying.

I am deeply disappointed in how often I encounter social pressure, condescending comments, license terms, dark patterns, confidentiality assurances, anonymization claims, and linguistic gymnastics trying to either convince me otherwise or publicly discredit me for pointing it out. No amount of those things will change the fact that it is spyware, but they do make the world an even worse place than the spyware itself does, and they do make clear that the people behind them are hostile actors.

No, we will not stop calling it what it is.
by solatic | 2025-08-21 06:34:08+00:00
Again, you are dealing with low-level primitives. You can provision an EC2 VM with multiple GPUs at high cost and use it to host nginx. That is not a correct configuration. There are much cheaper ways available to you. It's ridiculous to imply that AWS shouldn't send you a higher bill because you didn't use the GPUs or that AWS shouldn't offer instances with GPUs because they are more expensive. You, the user, are responsible for building a correct configuration with the low-level primitives that have been made available to you! If it's too much then feel free to move up the stack and host your workloads on a PaaS instead.
by Svip | 2025-08-21 06:34:32+00:00
The real problem is actually less the exact rate of 25%, but rather that most of the systems only assume one rate. Denmark was the first country to introduce a general VAT in 1967, and whilst the rate has changed (last in 1992 to 25%), the number of rates have not. So lowering the general VAT rate would likely be possible in a 1-3 year time frame (depending on unknown factors), but lowering the general VAT rate would be a significant loss on state finances (thus not interesting to politicians) (and as someone else pointed out, it mostly favours high spenders, which is also politically dicey).

However, introducing a split rate would definitely require a time frame of at least 4 years, and no politician are willing to wait that long for a politician win.
by quanto | 2025-08-21 06:34:43+00:00
> The latest education report from the Organisation for Economic Co-operation and Development (OECD) raised alarm in Denmark when it found 24% of Danish 15-year-olds cannot understand a simple text, up four percentage points in a decade.

So, in 2015, 20% of 15-yo could not understand a simple text. Isn't that unbelievably high?
by deathanatos | 2025-08-21 06:35:45+00:00
Even a trained cashier cannot scan as fast as a trained cashier on these systems; they're slow by design. I got reasonably fast (but not cashier fast) on Safeway's and hit a wall: I kept running into false positive "unidentified item in bagging area", followed by clerk overrides. I eventually figured out that you can't place the item into the bagging area until the computer has processed it — there's a delay between the "beep" of the barcode scanner recognizing a barcode and the computer adding the item to the tab & then announcing the purchase, and you cannot hit the scale prior to that or it gets out of sync with you.

Also the only place truly training cashiers, AFAICT, is Aldi's.
by JimDabell | 2025-08-21 06:35:50+00:00
There’s a fairly direct route to solving this with email. The problem that needs to be solved is that knowledge of an email address is the only thing needed to send to it. Introducing recipient consent as an additional requirement solves spam and phishing.

The first email a sender sends to a recipient has an attachment that serves as a request to email them for a specific purpose (e.g. human:human, mailing list, transactional). This email is not delivered to their inbox immediately, but to a separate “friend request” style queue. When the recipient approves, the sender receives a Biscuit token [0] and the email is delivered to the inbox.

Subsequent emails are sent by attenuating a one-time-use token from the master token, which is included in a header. Because they have verifiable authorisation, this can skip all existing spam heuristics because the receiving mail system knows for certain the recipient authorised this sender.

Biscuits can also be attenuated to reduce scope. Want the hotel you are staying at to only be able to send you email for the next 30 days? No problem. Mailing list providers can reject tokens that are scoped to transactional email. A sender can reduce blast radius of compromises by attenuating new tokens to give to third-party providers.

Authorised senders who spam can have all their historical emails quarantined at once and their ability to send in the future removed. Recipients can see who gave spammers their email address.

People who send mail are incentivised to implement this because it improves delivery rates by bypassing all existing spam filters, including IP reputation. “Ask for a token and you’ll never hit a spam filter again” is something a lot of people would jump at the chance for. No need for providers like Mailchimp, you could go back to sending mail directly from your own servers.

Recipients are incentivised to implement this because it will cut down on spam and phishing significantly.

This can be implemented independently of the other side because the fallback situation is the status quo – the initial email just has an attachment that goes ignored, and subsequent emails are sent without tokens and are subject to existing spam filters.

It’s possible for spammers to send lots of unsolicited contact requests, however separating things out into a spam-free inbox and a “this new person wants permission to email you” queue makes it far more manageable than the current ocean of potential spam in an overflowing inbox. Determining “is this new contact legitimate?” a handful of times is much easier than determining “is this email legitimate?” thousands of times more often.

What you’re essentially doing with this is bootstrapping a social graph on top of email. You can then add a bunch of other nice things on top of that, like public key cryptography, but the actual diff between current email and this system is surprisingly thin.

[0] https://www.biscuitsec.org
by kqr | 2025-08-21 06:35:54+00:00
Hmm. You say "tax break" but I could argue split VAT results in the opposite: a hike in consumption tax. The base VAT rate can be set higher if the VAT on desirable consumption is lower. I.e. it's not that rich people pay less tax for books -- it's that rich people pay more tax for non-books!
by hiAndrewQuinn | 2025-08-21 06:38:01+00:00
The longer you have to take to decide between Option A and Option B, the less overwhelmingly obvious the chasm between A and B is to you.

If you're already in college and you still have no idea what you'd like to do as a young person in your life, I would - and did - take that as strong evidence that I should just focus on executing and follow life's default goals for a while. They've been selected by competitive pressures I couldn't hope to reproduce with my own brain, so they're probably pretty good vehicles to midwit enlightenment.

You already know what these are: Finish high school, and college if possible; get a day job and try to focus on being good at it instead of angry at it. Get your own place. Find a life partner. Have some kids. Rise up the ranks at your day job if you're cut out for it, but there's no shame in just holding down the fort if you aren't. Etc, etc. It works well! You don't have to pretend to be special, you can just focus on being good.
by jama211 | 2025-08-21 06:38:36+00:00
Well, considering I also made the point that computers range (very roughly, work with me here) from $500 - $3500 depending on how upmarket they are, and phones range from $100 - $1500 depending on how upmarket they are, I can’t make an argument for why they’re more expensive, because they’re not.

I can list a _few_ EXAMPLE reasons for why they cost what they cost though, even if that’s higher than you expect them to cost, but this list is by no means exhaustive so don’t attempt to break them apart detail by detail. Just get the essence of my opinion from these. There’s incredible engineering and design challenges in the competitive market of smart phones, typically making electronics smaller (such as the motherboard) makes them more expensive, not less. Their cameras on phones are FAR better than any on laptops, and my phone has 4 lenses where my laptop has 1. Camera lenses and sensors at the higher end are _expensive_ in a way a laptop keyboard component or other example is not. Phones support many features computers do not (like in the Ferrari example, Toyota corollas don’t have race mode), qi charging, 5G modem, touch screen (some laptops have this but many computers don’t), etc to name a few. Phones these days also tend to be waterproof in a way computers aren’t, another design challenge. The screens need to be way tougher to survive breakage, etc, etc, there’s just so many things that you have to design for in phones that you don’t for computers.

I hope that gives you some idea, and as a side note, it worries me slightly that some of these weren’t at least a little obvious to you. Or maybe they were, and you just wanted to hear my take, and I shouldn’t assume things so uncharitably. Either way, hope that helps.
by com2kid | 2025-08-21 06:38:42+00:00
Google's phones are a minor bit player in the market. They have an estimated 4% of US market share. OnePlus was kicking their butts until OnePlus decided to destroy their entire value prop and also laid off their much beloved software team.

But if you want a mid priced phone, go ahead and buy one. A CMF 2 pro has 6 years of security updates, it costs $279.

> 80% of them have never made a video intentionally.

I find that hard to believe. Nearly everyone I know uses their phone cameras heavily. Maybe the stat is true in some strange sense, but 80% of high end premium phone buyers? People paying an extra $200 just for a telephoto lens are never using the camera? The high end is all about camera performance.

> I had a cemetery of working phones and broken laptops all through past decades. I used laptops for longer than 3 years but I also didn't put them through the pressure a student would and could usually replace parts.

I have everything from a Motorola Q9m to an unreleased Windows Mobile 7 (not phone 7!) to an army of LG, Motorola, and Nexus devices.

Phone hardware is generally shite. Or in the case of my OnePlus, their updates added so much of their own shit to a once pure OS, that I could barely use the phone anymore due to running out of RAM. Great job OnePlus, great job.
by arghwhat | 2025-08-21 06:39:49+00:00
Note that while you have 25% VAT on things, actual VAT accounting is fully dynamic and banking and accounting systems handle this just fine.

On the incoming side, bills can come from other countries with an entirely arbitrary VAT value, so there the VAT value is recorded from the bill.

On the VAT refund side, arbitrary values are used even for Danish VAT, as companies can get full, fixed fraction or even entirely variable fraction if VAT refunded. For example, a company dinner can only be partially VAT refunded as you had private benefit of food, and VAT refund of an asset like a van is the set by the ratio of intended company vs private usage.

On the outgoing side, most banking and accounting systems would be prepared for other EU countries.

There's definitely going to be something hardcoded somewhere (including over 9000 times in the tax systems themselves), but the point is that VAT is already a dynamic size.
by Cordiali | 2025-08-21 06:40:22+00:00
Regarding the second one, variations of that, to help or protect strangers/travellers, seems to have been relatively common across a variety of historical cultures.

Tangentially, it also reminds me of a woman's grave that was found in Denmark I think. I can't remember how old the grave was, but something like 3-4000 years. They were able to use isotope analysis of her teeth, hair, stomach contents, etc. to trace her movements.

She was from the area, but in the last year of her life, she'd travelled down to around Switzerland and back. There was a documentary about it, I'll see if I can find it...
by jve | 2025-08-21 06:40:54+00:00
Cycles is not the only variable in play here:

- Depth of Discharge - how often you go from full to low battery? Going twice from 80->30 (which accounts to a single cycle) is much better than single 100->0 cycle

- Thermal management - what are cell temperatures when battery is being charged? Maybe it is charged in direct sunlight? This will kill battery pretty fast. At what temperatures are the cells when driving the ebike?

- Ebike/scooter probably being charged to 100% more often than necessary.

- Did you leave your battery at winter completely discharged or fully charged in your garage? Bad.

TLDR: Info I gathered about reading how to take care of Lithium NMC batteries which are so widespread.
by stephen_g | 2025-08-21 06:41:09+00:00
I've noticed at supermarkets here that of the dozens of times those 'you haven't scanned something' warnings have come up, only one time the item hadn't actually scanned when I thought it had. Every other time has been a false positive for me. They're pretty dodgy, the workers always seem pretty frustrated with it as they go around clearing them for people (sometimes a handful of people waiting, falsely accused by the machines)...
by binaryturtle | 2025-08-21 06:41:10+00:00
I'm on an older system here, and both Cloudflare and Anubis entirely block me out of sites. Once you start blocking actual users out of your sites, it simply has gone too far. At least provide an alternative method to enter your site (e.g. via login) that's not hampered by erroneous human checks. Same for the captchas where you help train AIs by choosing out of a set of tiny/ noisy pictures. I often struggle for 5 to 10 minutes to get past that nonsense. I heard bots have less trouble.

Basically we're already past the point where the web is made for actual humans, now it's made for bots.