MurphyA/hacker-news huggingface dataset:
by MonkeyClub | 2025-05-28 07:58:48+00:00
> using a notebook is antiquated and we have better tools

Although I would agree that we have more modern tools, I'm not sure they're better along every dimension: pen and paper is better for memory retention than typing. Also, while YMMV, oen and paper works wonders for brainstorming for me.

Though admittedly search is easier with digital tools.
by HenryBemis | 2025-05-28 08:00:04+00:00
It's not you, it's definitely me. I cannot tell if there is irony or a 'straight-faced' comment that you wrote.

Either way, like always, time will tell. We (humans) almost never 'get it right the first time'. And perhaps EVs have been around for quite a while now, it's still 'a while'. So I wouldn't be surprised if the lobby for "7PPD" (or whatever replacement) convinces us that "7PDD" is the best and even makes fish taste better, only to find out that it causes terminal cancer (see smoking, sugar, etc.)
by ikrima | 2025-05-28 08:00:36+00:00
I love this insanely insightful crystalization for me. I see you got a degree in IR and you used the word axiom so I'd refract back to you: reformulate stupidity as ignorance and assume a continuous conserved action exists between < stupidity-ignorance-malice | danger > so that your observable is a danger measure-metric.

Basically the reason ignorance is so danger is that it aliases between harmless stupidity and extreme evil, but it fails to trigger our collective species evil detection pattern coding which results in an unbelievable cascade evil failure mode.

In a sense, religion is a meta-epistemic solution to the binding problem of our collective subconscious.

I think if you apply the epistemic quantum mechanics to different logic modalities, you get some interesting insights!
by ben_w | 2025-05-28 08:01:35+00:00
Closer to the opposite, it happens more when we do care about the distinction.

[Edit: Just realised the "you" in your comment can either be the poster or the police, with very different consequences.]

The rules are something that looks like a credible threat.

Both these, at the time of the conviction, did look credible.

The second was only overturned because enough people argued well enough that it wasn't credible and shouldn't have ever been seen as credible. The rules were then changed to emphasise the arguments people had made so this didn't happen again.
by olex | 2025-05-28 08:01:44+00:00
Some EVs (Teslas are ones I know of) have software that occasionally lightly applies the brakes to keep them clean.

Also, on EVs with LFP batteries the brakes do get used a bit more, because a full and/or cold pack usually can only take very limited power from regenerative braking. Depending on the implementation in the vehicle, brakes are either applied automatically to still allow for one-pedal-driving (aka. "brake blending", making the difference unnoticeable to the driver), or throttle-pedal regen is simply capped and the driver has to use the brake pedal when they notice that regen power is not sufficient.
by implements | 2025-05-28 08:02:43+00:00
There’s an interesting blog post about how a far simpler machine generates its video signal, if people are curious about the signals involved:

http://blog.tynemouthsoftware.co.uk/2023/10/how-the-zx80-gen...

“The CPU then only produces a TV picture when BASIC is waiting for input (or paused). At other times it does not bother to produce a video picture, so the CPU can run the program at full speed.”
by fnord123 | 2025-05-28 08:03:22+00:00
RFC3339.

ISO 8601 allows for 2 or 6 digit years. Truncating to 2 is just incorrect, and 6 digits is absurd. And you can read the RFC without paying ISO - and you can discuss the RFC with people who have also read it instead of relying on people using the Wikipedia page to interpret and explain ISO 8601.

I have a scheduling service at work and I keep getting requests for implementing ISO 8601 timestamps but I ignore them. RFC3339 is the way forward.
by coldblues | 2025-05-28 08:05:53+00:00
Finally someone had the guts to say it. I see the same arguments again and again that writing in a notebook makes you remember things better and think more thoroughly, but who exactly was tested here? Were people with an extensive and deeply personal Zettelkasten note taking system added as participants in the studies? What was their note taking process? Most people severely underutilize or even misuse their digital tools. Just take a look at people who use Notion ;)

I iterate faster, have more freedom and information is displayed and manipulated in a more ergonomic way to me on a computer, in such a way that it creates a symbiotic relationship. I severely doubt physical notetaking and brainstorming could ever compare
by creer | 2025-05-28 08:08:26+00:00
"Public domain" is not the same as "published". In practice hardly any of these patents get freed (and at any rate not by placing them in the public domain.) They do expire.

At any rate again, in large groups like this, there is a conflict on patents. Patents are used as weapons against other large groups on one hand (equal to equal) and smaller wannabes on the other (swatting flies). The result is that day to day, there is little incentive to patent or publish anything. It's not a core objective. Now and then a promising product direction is identified and then real effort is put in papering it up. But that's only as a weapon against the others - certainly not for the advancement of mankind. The rest of the knowledge and experience dies with the brains that carry it (although occasionally they find the time to write a book.)

Finally, few "completed" technologies get abandoned outright, first they get spun off or sold to some other business. Even the patent stash - if there is one - is worth some money. What does get abandonned without any publication is mountains of smaller projects in engineering or research or manufacturing groups - which have other day to day concerns and are busy and have no issue with just shelving hundreds of smaller projects and turning attention to the next hundreds of smaller projects.

Do NOT count on patents to solve the problem of engineering and science waste.
by tauoverpi | 2025-05-28 08:08:53+00:00
It _does_ matter as those edge cases would be the difference between a working product and something that's trivial to topple over with `"; find . -exec shred -f {} \;` if your agent is used for the backend. There's also a lot of boring problems to solve backend wise (migration, failure mitigation, suitable performance, etc) that need to be considered for a site with significant traffic even for "basic functionality" (a service that's down cannot serve it's users).

The frontend of HN doesn't need to be complex and I'd even argue that it's better for being simple as it's then easier to parse, takes less effort from the client to render, certainly less battery on mobile, and so on. Web applications don't _need_ to be more complex than the problem at hand where the frontend itself is just enough of to display content in a comfortable enough format for human consumption.

Unrelated to the topic but related to the thread: if you edit a message then please keep the original message around to keep context for others that read this thread if that edit would change how the message was interpreted at the time of the reply. Non-functional edits (e.g spelling corrections) are fine without notice.
by Ekaros | 2025-05-28 08:09:02+00:00
I think most reasonable explanation is likely very much increased torque and rather poor traction control leading to common slipping. Which directly wears tires.

Hybrid vehicles generally have less torque so they have less this type of wear. Unless driven purposefully aggressively.

Clear solution would be to limit acceleration of vehicles and mandate traction control that limits this type of wear.
by ho_schi | 2025-05-28 08:09:59+00:00
I'm also into team note taking.

Work In Progress

Endless printer paper or doted A4 paper (I love it). It is is the planing area of my brain. Some specific notes are kept for long term and re-used, which is seldom - this can (should) moved into a moleskin. Probably I should use the moleskin more? I need a pen or pencil, on paper to plan.

Long Term Storage

I don't use it to think. Mostly digital, Markdown. Stored on my filesystem, Git or IMAP. Avoiding all weird and soon defunct commercial things.
Show HN: SafeInfluencer – scan influencer's past activity for brand safety
by tetek | 2025-05-28 08:12:11+00:00
Hi!

My co-founder and I have built a tool designed specifically for marketing agencies that work with micro-influencers.

Running campaigns with dozens of micro-influencers can be time consuming, especially when manually scanning their past content. We've automated that process.

With our tool, you can select Instagram influencers and analyze their past posts for key metrics such as hate speech, nudity, political content, past brand partnerships, and more.

Within a few hours, you’ll receive a detailed, client-ready report that helps you make better-informed decisions and protect your campaigns.
by tanelpoder | 2025-05-28 08:13:48+00:00
I'll see if I have a chance to run such a test on AWS in coming days (and would need to keep running it for much longer than just 5 seconds shown in the blog).

If you care about WAL write/commit latency, you could provision a small-ish EBS io2 Block Express device (with provisioned IOPS) just for your WAL files and the rest of your data can still reside on cheaper EBS storage. And you might not even need to hugely overprovision your WAL device IOPS (as databases can batch commit writes for multiple transactions).

But the main point is that once your WAL files are on a completely separate blockdevice from all the other datafile I/O, they won't suffer from various read & write IO bursts that can happen during regular database activity. On Oracle databases, I put controlfiles to these separate devices too, as they are on the critical path during redo log switches...
by srhtftw | 2025-05-28 08:13:52+00:00
If we're going to have laws like these, then people who publish their content should have all the rights and responsibilities big players do. Everyone's content should be protected by laws, DRM and encryption.

Organizations profiting from theft and exploitation should be prosecuted as the pirates and criminals they are. If they want to profit from content, let them license it and pay with real money instead of likes and upvotes.

People need to stop impoverishing themselves and their communities by giving away all their personal details. They need to stop giving away what is precious to them to the likes of google, meta and X. If that means a decline of media subsidized by advertising and AI, so be it.

So I hope your prediction is correct. I would love to see stupid laws like these lead us to a world of small community networks protected by encryption and rights laws.
by PennRobotics | 2025-05-28 08:14:00+00:00
I've been chipping away at recreating source for a dumped FreeRTOS binary for about a year using Ghidra and Trace32. (Disclosure: I work on Trace32.)

I wanted to implement something like https://github.com/neuviemeporte/mzretools (the tool for reversing F15SE, a DOS game) but I would need to port all of that tooling to an Arm cross-compiler and accept it will never produce a 1:1 binary in my case. (There's evidence the original was built with IAR which I will not be buying solely for a hobby project.)

Ghidra (especially after using BSim to load all of the NXP demos and some TI library code for adjacent ICs) is extremely useful at getting the entire structure: library functions, data types, tasks, queues, I2C/USB comm, pin setup, data locations, etc. You can re-code the flash part easily, but SRAM/stack is all zeros. The code that fills SRAM uses pointer math and some loops and is generally unreadable on its own. I tried the Ghidra simulator, but it didn't work out of the box on Arm microcontroller code.

Trace32 makes it easy to load the raw binary into an Arm simulator and step through all the way to the IDLE task, but there's no high-level listing. You just have to detect if you're in a loop and look at the loop address in Ghidra to see what holds you back. Without a simulation model (which I do not have---at least not outside of work) you have to manually jump past a few spots where the board waits for an acceptable status flag from a clock source, etc., and then manually call SysTick_Handler once, but the SRAM is eventually filled with appropriate data. Once you have a stack, you can start picking out which FreeRTOS macro parameters were set and figuring out the size and type of vendor-created structures which then streamlines further Ghidra analysis. Beyond that, you can't use RTOS awareness without symbols, so unless you write a script to import these from Ghidra, a more insightful view of the binary remains out of reach.

The analysis has been a LOT of looking back and forth between the simulator (which shows a hex address and machine code) and the Ghidra decompilation listing; it is a bit like getting Don Quixote verbally read to you, one letter at a time. Anytime there's a I2C_Master_Transmit(), you need to comb through datasheets for DSP settings and the various I2C-linked chip registers. It's a USB product (with multiple endpoints) so I use Wireshark and Python to check the decompiled USB application code and identify valid packet data that are never sent by the vendor software.

DWARF can be imported and exported in Trace32, so exporting symbols created in Ghidra as DWARF would vastly simplify my workflow (as would having a real model of the NXP chip and/or dumping the bootloader binary and secrets from a production device).

I'll definitely check out this project, as well as ghidra2dwarf linked by nneonneo.
by h4ck_th3_pl4n3t | 2025-05-28 08:14:07+00:00
Kind of funny that you think the open web still exists.

I mean, even Microsoft gave up and just went with Chromium, and they got the definition of almost infinite resources at their disposal.

Effectively if your website doesn't run in Chrome and Safari, it won't be seen by 99% of the market.
by rtpg | 2025-05-28 08:14:28+00:00
You could have a `list[int | str]` but then you need to check the type of the elements in the list on usage to see if they are `int` or `str` (if you are actually trying to put the elements into a place that requires an `int` or requires a `str` but wouldn't accept an `int | str`...).

If your code doesn't do that then your program isn't well typed according to Python's typing semantics... I think.

So you can have lists of multiple types, but then you get consequences from that in needing type guards.

Of course you still have stuff like `tuple[int, int, int, str]` to get more of the way there. Maybe one day we'll get `FixedList[int, int, int, str]`....
by cladopa | 2025-05-28 08:14:42+00:00
I use A4 sheets of paper, pens with different colours and fluorescent markers. Nothing beats that for me (and I have a iPad Pro with stylus) and I use emacs with org mode too.

I use an automatic scanner to store the important papers as documentation. Now you can even send those to gemini or google cloud to digitalise it for cheap.

At any given time I have four sheets of paper over my desk that I can see in parallel, but I could have 8 or 10 for complex problems with areas equivalent to engineering or architectural blueprints.

Having said that, I can draw and paint very well as I was interested since childhood and had formal training. Probably is not for everyone, but it is for me.
by avinassh | 2025-05-28 08:15:56+00:00
I want to ask developers here who keep and maintain notebooks: How exactly do you take notes? What things do you write down? And how does it help you, or how has it made you a better developer?

OP's post also references a similar post [0], but I am curious to hear from the people here.

[0] - https://hamatti.org/posts/how-i-take-work-notes-as-a-develop...
by antirez | 2025-05-28 08:16:00+00:00
As the person that wrote such documentation, I respectfully disagree, I understand you point but I want to tell you why I believe the way it is, is better for Redis. Redis is a system that is 99% backward compatible across all versions combinations: Redis 2 was released more than 10 years ago, and this is a very hard to find case where things are not perfectly backward compatible, but still in a case where the Redis 2 semantic was so odd to be avoided in most tasks. Now, in a system like that, to have man pages that tell you the differences among versions is much better than versioned documents where you would require to diff yourself among the different pages. In a single document you know all the behavioral history of a particular command, that often is just: "always as it used to be", plus features that are backward compatible entering newer versions.
by formerly_proven | 2025-05-28 08:16:52+00:00
The brake dust from low-noise train brakes smells so incredibly nasty (burning ABS, pretty much) but the operators and OEMs claim it’s <<safe>>. Bonus points for the Bombardier bi-level coaches, where the AC air intake is right above the wheelsets and takes a healthy gulp of that brake dust and smell and distributes it to the passengers inside (because the smell is just as pungent inside as outside a few seconds after coming to a stop I doubt the filters, if any, are doing much). Frankly I’d not commute with it.
by proxynoproxy | 2025-05-28 08:17:03+00:00
Haha, no. Like in sui where the validators halted and froze? Or Solana where dishonest stalkers rigged the delegated staking auction and stole from other stakers?

What you are repeating is the same PoS nonsense. Get out of here. Eth drove off a cliff when it went PoS. It’s going to zero vs Bitcoin, like every other PoS (or alt) coin. It’s all just PoS cartels. Meanwhile, many people have their “edge” BitAxe earning Bitcoin.

nb: PoS can never really be fairly distributed. It’s printed out of nothing to enrich the founders. The billionaires were dumping Sol on retail last cycle. It can never escape this. Eth was “premined”.
by CamouflagedKiwi | 2025-05-28 08:17:42+00:00
I do think the 'run all tests on CI' part is not that fine, it bites a lot earlier than the others do. Git is totally fine for a few hundred engineers and 100ish services (assuming nobody does anything really bad to it, but then it fails for 10 engineers anyway), but running all tests rapidly becomes an issue even with tens of engineers.

That is mitigated a lot by a really good caching system (and even more by full remote build execution) but most times you basically end up needing a 'big iron' build system to get that, at which point it should be able to run the changed subset of tests accurately for you anyway.
by hnbad | 2025-05-28 08:19:17+00:00
Because the alternative would have been VBScript (if Microsoft had won at the time).

JS was a compromise. It had to be sent out the door quick, it needed to look sufficiently like Java to not upset Sun who were trying to establish Java as the universal platform at the time while not being feature complete enough to be perceived as a competitor rather than a supplement. And it had to be standardized ASAP to pre-empt Microsoft's Embrace Extend Extinguish strategy (which was well on its way with JScript). That's also why it's an ECMA standard rather than ISO despite Netscape not having been based in Switzerland - ECMA simply offered the shortest timeline to publishing a standard.

I think what's more amazing isn't just how we managed to build the bulk of user interfaces in JavaScript but how we Node.js managed to succeed with ECMAScript 3. Node.js was born into a world without strict mode and without even built-in support for JSON: https://codelucky.com/javascript-es5/ - and yeah, ECMAScript 3 was succeeded by ECMAScript 5 not 4 because it took vendors 10 years to agree on how the language should evolve in the 21st century - not only did we build the modern web on JavaScript, we built a lot of the modern web on the version of JavaScript as it was in 1999! Even AJAX wasn't standardized until 2006 when Web 2.0 was already in full swing.
by ookdatnog | 2025-05-28 08:19:38+00:00
As I understand it (also neither a mathematician nor French), it's a parody on a certain type of math paper, I'm guessing in abstract algebra, where the author does nothing but present a theory that is a "generalization" of some other theories, with no concern whether this generalization is helpful in any context.

So you get a "mustard watch", a thing which behaves simultaneously as a watch and as a mustard container, and finding a situation where that would be useful is an exercise for the reader.
by chasil | 2025-05-28 08:20:03+00:00
As I understand it, the surface of a neutron star is an iron shell.

"Current models indicate that matter at the surface of a neutron star is composed of ordinary atomic nuclei crushed into a solid lattice with a sea of electrons flowing through the gaps between them. It is possible that the nuclei at the surface are iron, due to iron's high binding energy per nucleon. It is also possible that heavy elements, such as iron, simply sink beneath the surface, leaving only light nuclei like helium and hydrogen. If the surface temperature exceeds 10^6 kelvins (as in the case of a young pulsar), the surface should be fluid instead of the solid phase that might exist in cooler neutron stars (temperature <10^6 kelvins)."

https://en.m.wikipedia.org/wiki/Neutron_star
by CamouflagedKiwi | 2025-05-28 08:20:28+00:00
That's an optimistic take on what happens in the polyrepo setup. A common alternative (I suspect by far the more common one) is that changes are made to the common area but not propagated to downstream repos, which all end up pinned to different versions of the common repo and struggle to update once they get ~years out of date.
by Y_Y | 2025-05-28 08:21:12+00:00
I believe two-digit years haven't been allowed for a while:

> ISO 8601:2000 allowed truncation (by agreement), where leading components of a date or time are omitted. Notably, this allowed two-digit years to be used as well as the ambiguous formats YY-MM-DD and YYMMDD. This provision was removed in ISO 8601:2004.

(That's from https://en.wikipedia.org/wiki/ISO_8601 - I don't have the standards handy, ironically.)

Honestly I'm happy with either the RFC or ISO, but it seems like most normies haven't heard of RFCs so ISO is my default.
by nneonneo | 2025-05-28 08:22:35+00:00
Eh, using GDB directly is a lot more convenient for me. Integrations with pwntools, good scripting support, and familiarity are big reasons I keep using GDB. Plus the last few times I’ve tried to use Ghidra’s debugger I ran into weird issues with the debugger freezing or otherwise refusing to update the program state properly; after chasing down and trying to fix some of them I concluded that it wasn’t a sane use of my time.
by rtpg | 2025-05-28 08:22:42+00:00
In code where you really want to have these guarantees you turn on errors lke "no implicit any" in mypy and tighten the restrictions on the files you care about.

You still have the "garbage in/garbage out" problem on the boundaries but at the very least you can improve confidence. And if you're hardcore... turn that on all over, turn off explicit Any, write wrappers around all of your untyped dependencies etc etc. You can get what you want, just might be a lot of work
by tialaramex | 2025-05-28 08:22:50+00:00
Humans really like having a figurehead, a living symbol of their country. A monarch provides this living symbol without giving them any apparent democratic legitimacy - it's obvious that the King wasn't chosen by the people, he's just luck of the draw and so if he tried to seize power that's obviously illegitimate.

In contrast, an elected President has democratic legitimacy and we see over, and over, and over what happens is that a President takes the opportunity to try to seize power. It used to happen that I'd explain this and then Americans, who apparently don't study history, would object that obviously this would never happen with their President ...