MurphyA/hacker-news huggingface dataset:
by cnst | 2025-08-11 12:35:51+00:00
The actual best-practice for batteries is 50% when unused, and the 20% to 80% range when used.

They already don't provide 50% at all, even though my laptop has been kept connected to mains for 1 year straight. All I get is a range of 76% to 80% or so, with a battery life that keeps diminishing for no reason.

But, in reality, they don't even provide the 20% to 80% range, either, because it still charges to 100% on each disconnect, however brief it may be.

I've had multiple batteries completely fail within just a few years after being topped up to 100% all the time.

I also have a ThinkPad with a 15-year-old battery that's still working just fine (1 hour runtime is not that bad for such an old battery), because it's been kept at the 50% most of the time when I don't need to use it on the go. If it was kept at 100%, I'm pretty sure it wouldn't last 2 minutes now.
by CharlieDigital | 2025-08-11 12:37:18+00:00
One of my favorite quotes coming out of the Svelte team with respect to runes[0]:

> Like every other framework, we’ve come to the realisation that Knockout was right all along. > > Svelte 5’s reactivity is powered by signals, which are essentially what Knockout was doing in 2010.

(Knockout was fantastic and easy to adopt because it felt like it "closed the loop" with events and simply made them more ergonomic to use)

The problem is actually React hooks which has created a paradigm that inverts this and is now the most dominant model. This inversion of the model of how reactivity works is the root cause of most of the pain and complexity with React.

[0] https://svelte.dev/blog/runes#Signal-boost
by burntsushi | 2025-08-11 12:37:31+00:00
IDK what "encoded your string to bytes naively" means personally. There is only one way to correctly UTF-8 encode a sequence of Unicode scalar values.

In any case, no, this works because UTF-8 is self synchronizing. As long as both your needle and your haystack are valid UTF-8, the byte offsets returned by the search will always fall on a valid codepoint boundary.

In terms of getting "combining characters wrong," this is a reference to different Unicode normalization forms.

To be more precise... Consider a needle and a haystack, represented by a sequence of Unicode scalar values (typically represented by a sequence of unsigned 32-bit integers). Now encode them to UTF-8 (a sequence of unsigned 8-bit integers) and run a byte level search as shown by the OP here. That will behave as if you've executed the search on the sequence of Unicode scalar values.

So semantically, a "substring search" is a "sequence of Unicode scalar values search." At the semantic level, this may or may not be what you want. For example, if you always want `office` to find substrings like `oﬃce` in your haystack, then this byte level search will not do what you want.

The standard approach for performing a substring search that accounts for normalization forms is to convert both the needle and haystack to the same normal form and then execute a byte level search.

(One small caveat is when the needle is an empty string. If you want to enforce correct UTF-8 boundaries, you'll need to handle that specially.)
by michaelcampbell | 2025-08-11 12:37:58+00:00
> Do people actually believe that having to commute is a benefit?

Everything is subjective here. I don't love commuting, but I'm remote now and there are days I kind of miss it. I got a lot more podcasting listening in when I did which I really do miss, and I enjoyed getting out of the house, on a schedule, and seeing my city and area.

As for BEING in the office, yes I also miss that. I miss the friendships with people from other parts of the org that I made; I miss the getting together at lunch and talking about both work and non-work stuff; I miss the pinball machines that one enthusiast set up.

THAT SAID, I abhor the _requirement_ to be in an office; it's a top down, heavy handed, hamfisted attempt at trying to force something that IMO can only come naturally, under the guise of "CuLtUrE!", and unless forced to I won't consider any job that requires it. (NB: This, too, is a tradeoff - if it's close to my house and I've got some latitude as to what time to make it there so I can have some freedom to avoid the heaviest of traffic, sure.)

This is just another example of the "open office" concept. When that came out everyone hated it except for the C-suite that didn't have to do it, under the mistaken idea that it forces "collaboration, which is good", when the reality was that the "good" part was emergent, holistic, and natural, and any forcing function kills it. But of course we also know that it was nothing but a cost-savings issue, and the "collaboration" argument was a gaslight retcon of the highest order. Open offices actually worked when PART of the office was open, allowing collaboration _as needed_ and driven by the teams/groups that wanted to do it, not by management. RTO is exactly the same.
by jibal | 2025-08-11 12:38:23+00:00
> The GP is factually wrong. There's plenty of empirical evidence to indicate that language influences thought, and that syntax is therefore important.

I never said anything to the contrary. I specifically stated that syntax was not an important consideration in the design of Pony language. That does not imply the numerous strawmen that you and others attacked here. As Tainnor correctly and honestly noted:

"it's a valid argument when somebody is speaking in absolutes, but I haven't seen GGP do that. There's a difference between saying "all syntax is completely arbitrary" and "syntax is not the point" - the latter suggests to me that if you stay within certain reasonable bounds (e.g. not be whitespace or malbolge), whether you use significant whitespace of braces, the language looks more like Pascal or like C, etc. are of minor importance in the grand scheme of things. Which is something you may disagree with, but it's a much more reasonable point that anything you can just counter with "but whitspace!"."
by falcor84 | 2025-08-11 12:38:46+00:00
It is not just not obvious to me, but goes entirely against my mental model.

Staying with your example of music or book authors - a musician or author might choose which distribution platforms they work with, but they don't have the ability to tell a particular shop to not resell their record/book, let alone to tell a particular "consumer" not to listen to it / read it.
by tripzilch | 2025-08-11 12:39:05+00:00
If I had learned to read utf8 bytes instead of Latin alphabet, this would be trivial. In fact give me a (paid) week to study utf8 for reading and I am sure I could do it. (yes I already know how utf8 works)

And the token/strawberry thing is a non-excuse. They just can't count. I can count the number of syllables in a word, regardless of how it's spelled, that's also not based on letters. Or if you want a sub-letter equivalent, I could also count the number of serifs, dots or curves in a word.

It's really not so much that the strawberry thing is a "gotcha", or easily explained by "they see tokens instead", because the same reasoning errors happen all the time in LLMs also in places where "it's because of tokens" can't possibly be the explanation. It's just that the strawberry thing is one of the easiest ways to show it just can't reason reliably.
by sleepless02 | 2025-08-11 12:40:15+00:00
Launched the open alpha of Mechasm an AI-powered test automation tool

A few months ago I set out to solve a problem I kept running into as a developer and working with QA teams. Writing and maintaining automated tests takes too long, breaks too often, and requires too much setup.

I wanted to see if I could remove most of that friction. The idea was simple. Instead of writing Selenium, Cypress or Playwright code, what if you could just describe your test in plain English and have it run in the cloud without installing anything.

That became Mechasm. You can type something like: "Go to the login page, sign in with x and y, and check if the dashboard loads" and it will generate the test for you, run it on real browsers in the cloud, adapt automatically to UI changes, capture video recordings of the runs, and give you execution logs.

It is now in open alpha and free to try. I am looking for feedback from developers, QAs, and product people who want to spend less time wrestling with test frameworks and more time focusing on what actually matters—validating the product works for users.

If that sounds interesting you can try it here https://mechasm.ai
by burntsushi | 2025-08-11 12:41:13+00:00
ripgrep always deals with UTF-8. When it sees a different encoding, like UTF-16, ripgrep first transcodes to UTF-8 and then searches.

This is absolutely in part because of all of the byte oriented optimizations that are baked into ripgrep (and its regex engine). Note that I said a part. Making ripgrep (and its regex engine) work on things other than a sequence of bytes is far more difficult than just porting a bunch of SIMD algorithms. There are also many optimizations and architectural constraints in the code based on the alphabet size. That is, with 8-bit integers, its alphabet size is 256. With 16-bit integers, the alphabet size is 65,536.
by apexalpha | 2025-08-11 12:41:16+00:00
I fundamentally disagree with this, and especially people who need the website should not follow your advice.

Sometimes in life you just have to do stuff, even if you hate it.

These things also have a tendency to become easier the more you do it, so advising people to just not do it seems horrible advice.

Not showing up to a funeral of someone you were close to just because of your own discomfort is plain weird.
by immibis | 2025-08-11 12:41:47+00:00
Their side isn't the one trying to ban things. If you want to ban something you have to prove it's harmful. If you don't want to ban something you just have to call out that the other side has to prove it's harmful before they can ban it. It's like how you don't have to prove your innocence against a criminal conviction, merely provoke reasonable doubt (in theory).
by balibou | 2025-08-11 12:41:51+00:00
Thanks! That exact “back from vacation” stress was my main trigger for building this.

Gmail and Outlook support are definitely the next big step — the main challenge is figuring out the best way to process everything while keeping privacy intact.

If you use Gmail/Outlook heavily, I’d love to hear: - What kind of “important” criteria you’d want it to detect automatically - Any edge cases where a tool like this might get it wrong

That input will help me shape the integration roadmap.
by eitally | 2025-08-11 12:42:22+00:00
I recently had a similarly unfriendly experience in my inlaws' new Lexus, which has an accompanying mobile app for vehicle management and some advanced setup features. How did we learn about this almost completely required app & mobile setup process? If you start driving with Google Maps via Android Auto it will terminate the AA interface after a few minute and replace it with a nag screen about setting up the Lexus mobile software. There is no alternative but to comply.
by al_borland | 2025-08-11 12:42:36+00:00
Apple had a server, Xserve, along with a server version of OS X. When Xserve and OS X Server were discontinued, they moved the server functions to an app that could be installed from the App Store. It was discontinued a few years ago.

The masses don’t seem to want to play sys admin on the weekend. A full functioned home server could also cut into their subscription service revenue from people needing more iCloud storage. They seem to be investing heavily in pushing subscriptions to offset slowing hardware sales.

Even with Apple had their own server software, a lot of people who were willing to run a server would setup their own. I ran a Mac mini server for a long time. I dabbled with Apple’s software, but tended to use other 3rd party option that got more love.
by lbensaad | 2025-08-11 12:43:05+00:00
Thanks for your interest and for the question. This fact was not known to old scholars. it was discovered just in 1991. How this function?: When God sent messengers, like Abraham, Moses, Jesus peace be upon all of them, He gave them miracles so that people can believe them. Those miracles performed by Moses and Jesus for example can not be examined now because they are meant for that time, even the Gospel of Jesus for example is lost because God did not want it for this era.

However, when God sent the Quran, he stated in it that it is the final and eternal Message to humanity and that He will preserve.

Now how can humans believe the Quran is from God, and that it was not changed like the Torah and the Gospel. God mentioned that the Quran itself is a miracle. Humans cannot produce it. Any Arabic speaking person knows that. But for non Arabic speaking people, I believe that God has put many scientific and mathematical miracles in the Quran so all people of all ages can verify it.

One of these miracles is these checksums like the ones explained above. An illiterate man such as the prophet Mohamed, peace be upon him, nor the people of that time can produce something like this, they even did not know about its existing.

There is even Digital Watermark/Signature in the Quran that clearly proofs that author of the Quran is God. I will explain in a separate article when I have time.
by incomingpain | 2025-08-11 12:43:29+00:00
Was the auth page straight up down? So http down? If so, something like PRTG can tell you when that's down.

If it's a page up, but backend down in some way. Now that's a big question of what the code is doing.

If perhaps auth is easy as a post request with creds and it returns with a success of some kind. Could be trivial to setup using python requests.
by MaxikCZ | 2025-08-11 12:44:14+00:00
Your comment will get donvoted to invisibility anyways (or mayhaps even flagged), but I have to ask: what are you trying to accomplish with comments such this? Just shitting at it because it isnt as good as youd like yet? You want the best of tomorrow today, and will only be rambling about how its not good enough yesterday?
by eitally | 2025-08-11 12:45:05+00:00
I posted this above, but in new Lexus RX models at least, the Lexus vehicle management software trumps the AA interface so you're forced to setup their mobile app if you want to use AA (for things like navigation).

On a related note, the Bluetooth stack in my F150 doesn't work very well with phone calls. I can place calls fine, but receiving calls will not route them through vehicle audio. I have to turn on speaker phone to participate. It's a known problem "won't fix" from Ford, regardless of the fact that they've sold millions of these trucks (mine is a 2017 and has never worked).
by kasabali | 2025-08-11 12:46:07+00:00
It's their modus operandi and it haven't changed, believe or not.

> it is definitely our intention to gently push the distributions in the same direction so that they stop supporting deviating solutions for these things where there's really no point at all in doing so. [1]

> Distros may deviate from this by patching this downstream, but by shipping this as secure default I do hope to gently push everybody in the same direction.

> start pushing people gently to define GPT partition type UUIDs for missing archs > Let's generate a single gcc `#warning` message asking people to define partition type UUIDs for their architectures if they are missing. [3]

[1] https://lists.freedesktop.org/archives/systemd-devel/2010-Se...

[2] https://lists.freedesktop.org/archives/systemd-devel/2011-Ma...

[3] https://github.com/systemd/systemd/commit/d42e4fa258701ff5e0...
by dataflow | 2025-08-11 12:46:59+00:00
> I look forward to comments telling me how wrong I am.

Okay, I'll try to explain.

The job of a parser is to perform the opposite of stringification as precisely as possible. That string source is not always a human typing on a keyboard.

If your stringifier doesn't output scientific notation, then you reject scientific notation because it's invalid data, plain and simple. It's completely irrelevant that to a human it still looks like it could be some number. It's like picking up the wrong baby at the hospital. It might be lovely and all, but it wasn't what you were supposed to get, and that matters. It's a sign that someone screwed up, potentially badly, and your job is to hunt down where the bug was and how to address it, not just roll with whatever came your way and win some competition on how long you can ignore problems.

If you want to parse natural language then sure, it makes sense. That's what flags and different functions are good for. It doesn't mean that has to be the default. As far as programming languages go, the default assumption is that your Parse() is parsing whatever your ToString() produced on the same type.
by an0malous | 2025-08-11 12:47:18+00:00
This is the best show I’ve seen since Game of Thrones. It’s so unique and mind expanding.

The problem with the modern data driven approach to TV production is that it optimizes for the shows that are just good enough to get people to keep their subscriptions, and the truly visionary stuff gets cancelled.

The best shows always take a while to build up popularity because they’re so new that people aren’t willing to give them a chance at first. Breaking Bad and Mad Men didn’t become popular until season 2 or 3. TV execs have no vision anymore, it’s all run by hill climbing algorithms that look for the nearest maximum now.

The golden age of TV is behind us now. It’s just yet another example of enshittification.
by fxwin | 2025-08-11 12:47:59+00:00
The page only talks about adopting PQC for key agreement for SSH connections, not encryption in general so the overhead would be rather minimal here. Also from the FAQ:

"Quantum computers don't exist yet, why go to all this trouble?"

Because of the "store now, decrypt later" attack mentioned above. Traffic sent today is at risk of decryption unless post-quantum key agreement is used.

"I don't believe we'll ever get quantum computers. This is a waste of time"

Some people consider the task of scaling existing quantum computers up to the point where they can tackle cryptographic problems to be practically insurmountable. This is a possibilty. However, it appears that most of the barriers to a cryptographically-relevant quantum computer are engineering challenges rather than underlying physics. If we're right about quantum computers being practical, then we will have protected vast quantities of user data. If we're wrong about it, then all we'll have done is moved to cryptographic algorithms with stronger mathematical underpinnings.

Not sure if I'd take the cited paper (while fun to read) too seriously to inform my opinion the risks of using quantum-insecure encryption rather than as a cynical take on hype and window dressing in QC research.
by somenameforme | 2025-08-11 12:48:18+00:00
It wasn't niche. In the US cocaine was available just about everywhere - pharmacies, grocery stores, mail order, being used (in high quantities) in dozens of beverages, and so on. [1] By the time of its effective prohibition it was seen by many as the largest health crisis in existence.

I suspect the numbers you're citing are subject to a large number of biases - different demand/utilization in different areas, considering mass without purity, poor recording keeping and/or off the book deals, and so on.

[1] - https://pubmed.ncbi.nlm.nih.gov/8473543/
by balibou | 2025-08-11 12:48:43+00:00
Yes — VIP senders, direct mentions, and deadlines/invites are great signals. The current playground already does a bit of deadline/invite detection (based on text patterns), but VIPs and explicit @mentions are definitely on my short list for the real integrations.

Do you think you’d want to configure those “important” rules yourself, or would you prefer the AI to just learn your habits over time?
by mike_hearn | 2025-08-11 12:48:46+00:00
I'm really not a PyTorch expert so this is most likely a newbie error, but could someone explain to me the code in Figure 7?

The code circled as "4 x emb_dim" doesn't seem to apply a 4x multiplier anywhere. Actually, the layer definitions of fc1 and fc2 in the SwiGLU variant appear to be identical to the code in the regular feed forward block. What is making the two layers in the second code snippet different sizes to fc1 in the first?
by cnst | 2025-08-11 12:50:11+00:00
They're not the same, they're completely different:

> Additionally, all the post-quantum algorithms implemented by OpenSSH are "hybrids" that combine a post-quantum algorithm with a classical algorithm. For example mlkem768x25519-sha256 combines ML-KEM, a post-quantum key agreement scheme, with ECDH/x25519, a classical key agreement algorithm that was formerly OpenSSH's preferred default. This ensures that the combined, hybrid algorithm is no worse than the previous best classical algorithm, even if the post-quantum algorithm turns out to be completely broken by future cryptanalysis.

The 256 one is actually newer than the 512 one, too:

> OpenSSH versions 9.0 and greater support sntrup761x25519-sha512 and versions 9.9 and greater support mlkem768x25519-sha256.
by kingstnap | 2025-08-11 12:50:22+00:00
OpenAI has docs about how it works.

https://platform.openai.com/docs/guides/prompt-caching

It's fairly simple actually. Each machine stores the KV cache in blocks of 128 tokens.

That's stored in a prefix tree like structure. Probably with some sort of LRU eviction policy.

If you ask a machine to generate it does so starting from the longest matching sequence in the cache.

They route between racks using a hash of the prefix.

Therefore the system prompt, being frequently used and at the beginning of the context, will always be in the prefix cache.
by jerieljan | 2025-08-11 12:51:05+00:00
I've tried the CLI app. A few warnings to those who'll want to do the same:

- The app didn't have any updates since July 2024, then got a handful of commits last June and no recent commits ever since.

- I've tried to calibrate with it and managed to discharge but failed to charge back up. It's not a big deal since I could force it back with a `battery charging on`.

- There's also [some issues](https://github.com/actuallymentor/battery/issues/322) reported which [I've also experienced](https://github.com/actuallymentor/battery/issues/301) on my end.

So it works, but it has some complications to keep in mind. Apparently [someone forked it](https://github.com/js4jiang5/BatteryOptimizer_for_MAC) and aimed to fix some of the issues, but the fork is err, opinionated and may or may not be ideal.