MurphyA/hacker-news huggingface dataset:
by tomhow | 2025-05-18 09:13:13+00:00
The problem is we can’t have two closely-related threads (i.e., threads where there is significant subject/discussion overlap) active at once.

When that happens it just gets confusing, because it’s hard for people know which thread to comment in, if the comment they want to make is somewhere in the overlap. And then whichever one they choose to comment in, people who only see the other thread won’t see that comment. Then sometimes, anticipating this, people will copy and paste their comment in both threads (which happened in this case). But then each one gets different replies.

So each thread ends up being incomplete and duplicated all at once, and it all becomes a big confusing mess.

The fact that these two articles were by the same author, had the same title, were published just a week apart and could easily have been published as one, longer article, says to me that merging the threads was the right thing to do.

The other option would have been to bury the second thread and consider another thread about that second article a few months later, but that didn’t seem like the best option, given how much the two articles are so related and continuous.

Edit: Just thought I'd add that a major factor in deciding to merge the threads was this opening to the second part by the author:

The first article in this series provided an overview of Home Assistant, its community, and its capabilities. It was deliberately short on descriptions of interesting things that can be done with Home Assistant, though — the reasons why one might actually want to use this program. In this closing article, we'll look at how Home Assistant was used to solve some real problems.

To me it makes all the difference that the first part is introductory/high-level whilst the second part goes deeper into usage-scenarios. We'd treat it differently if each part went deeply into different aspects on the project.
by labe-me | 2025-05-18 09:13:54+00:00
They say this:

Commercial Use: Unless otherwise expressly authorized herein or in the Site, you agree not to display, distribute, license, perform, publish, reproduce, duplicate, copy, create derivative works from, modify, sell, resell, exploit, transfer or upload for any commercial purposes, any portion of the Site, use of the Site, or access to the Site. The buying, exchanging, selling and/or promotion (commercial or otherwise) of upvotes, comments, submissions, accounts (or any aspect of your account or any other account), karma, and/or content is strictly prohibited, constitutes a material breach of these Terms of Use, and could result in legal liability.
by fxtentacle | 2025-05-18 09:14:11+00:00
I very much like this. What you have effectively demonstrated is that startups based purely on LLM prompts have no technical moat. But they are also a lot of successful software companies where their core product is not too difficult to clone. With myspace around, the founding idea for Facebook also wasn’t exactly new.

That means what you have really proven here is that distribution and polishing are the crucial ingredients for a successful startup.
by justindownes | 2025-05-18 09:14:28+00:00
Typically today’s tech unicorns would employ thousands of staff across sprawling corporate campuses in order to power a global comms juggernaut, however one messaging platform stands in stark contrast. Telegram, the encrypted messaging service founded by the Durov brothers, has achieved what many consider impossible: a $30 billion valuation with just 30 employees and no human resources department. This remarkable efficiency ratio—$1 billion per employee—has made the Dubai-based company one of the most fascinating case studies in contemporary business.
by StopDisinfo910 | 2025-05-18 09:14:57+00:00
> A single rocket heading your way is not the massive salvo of missiles

The article actually talks about moving a whole army on dozens of large rockets preferably near your enemy capital city. The discussion never was about a single rocket which logistically has very little capacity.

> This has happened before

This hasn’t happen before. That’s in 1995, after the end of the Cold War in a peaceful era with a rocket from a country which doesn’t host ICBM.

This incident has very little in common with what is being discussed and yet it still nearly gave way to retaliation. That’s actually nicely making my point about how out of touch what is being proposed is.
by Lio | 2025-05-18 09:16:41+00:00
I know you’re joking but there’s a simpler way to get the same effect.

There are people who attach a pool noodle to the back of their bike sticking out straight into the road less than proper passing distance.

They are highly visible and the idea is that drivers avoid them because they don’t know if they will damage their car or not.

In the case of a case of a close pass the pool noodle just bends out of the way.

The was also a laser product that projected a line onto the ground around the cyclist. I don’t think it worked very well though.
by adrian_b | 2025-05-18 09:17:03+00:00
There are no similarities between Cortex-M7 and Cortex-A7 from the POV of obsolescence.

Cortex-M7 belongs to the biggest-size class of ARM-based microcontrollers. There is one newer replacement for it, Cortex-M85, but for now Cortex-M7 is not completely obsolete, because it is available in various configurations from much more vendors and at lower prices than Cortex-M85.

Cortex-M7 and its successor Cortex-M85 have similar die sizes and instructions-per-clock performance with the Cortex-R8x and Cortex-A5xx cores (Cortex-M5x, Cortex-R5x and Cortex-A3x are smaller and slower cores), but while the Cortex-M8x and Cortex-R8x cores have short instruction pipelines, suitable for maximum clock frequencies around 1 GHz, the Cortex-A5xx cores have longer instruction pipelines, suitable for maximum clock frequencies around 2 GHz (allowing greater throughput, but also greater worst-case latency).

Unlike Cortex-M7, Cortex-A7 is really completely obsolete. It has been succeeded by Cortex-A53, then by Cortex-A55, then by Cortex-A510, then by Cortex-A520.

For now, Cortex-A55 is the most frequently used among this class of cores and both Cortex-A7 and Cortex-A53 are truly completely obsolete.

Even Cortex-A55 should have been obsolete by now, but the inertia in embedded computers is great, so it will remain for some time the choice for cheap embedded computers where the price of the complete computer must be well under $50 (above that price Cortex-A7x or Intel Atom cores become preferable).
by anthk | 2025-05-18 09:17:03+00:00
I have an old GL 2.1 netbook which still works and renders the game perfectly fine minus the GL 3.3 FX's which are kinda like the framebuffer FX's in the N64, mappable to current day shaders. Without GL 3.3 shader effects, menus are unreadable and you loss some translucid effects. If they did a GL 2.1 backport it would be great.
by montebicyclelo | 2025-05-18 09:19:34+00:00
> The results we obtained in Section 7 imply that, at least on simple datasets like TinyStories and Wikipedia, LLM predictions contain much quantifiable structure insofar that they often can be described in terms of our simple statistical rules

> we find that for 79% and 68% of LLM next-token distributions on TinyStories and Wikipedia, respectively, their top-1 predictions agree with those provided by our N-gram rulesets

Two prediction methods may have completely different mechanisms, but agree sometimes, because they are both predicting the same thing.

Seems a fairly large proportion of language can be predicted by a simpler model.. But it's the remaining percent that's the difficult part; which simple `n-gram` models are bad at, and transformers are really good at.
by david-gpu | 2025-05-18 09:21:56+00:00
Taking the lane (vehicular cycling) often works well in slow-moving traffic, but it breaks down in when there is a large speed differential between the cyclist and car traffic. Effectively, you are in the way and drivers won't expect you to be there.

For these faster roads it is necessary to have dedicated cycling infrastructure, including Dutch-style safe intersections. Otherwise only risk-tolerant or desperate people will cycle.
by ChrisMarshallNY | 2025-05-18 09:23:33+00:00
It was a joke.

It wasn’t trains, the whole way. I took the LIRR to JFK Airport, and the Narita Express, from Narita Airport (13-hour flight, in between).

There’s a big timezone jump. You go back, 24 hours, then forward ten or eleven hours, so your watch tells you that you are arriving before you left (but you are still dog-tired).

If you are being precise, your watch might tell you that the whole trip actually took a couple of hours.

Once they started doing direct to Haneda, then you really did arrive “before” you left.
by james_d_elliott | 2025-05-18 09:24:29+00:00
I am one of the maintainers of Authelia. Authelia is an Open Source, Apache 2.0 licensed project written in go and react. You can read more about Authelia on the website or on Github.

Authelia is now OpenID Certified™ to the Basic OP / Implicit OP / Hybrid OP / Form Post OP / Config OP profiles of the OpenID Connect™ protocol. This is exciting news for myself one of the Authelia maintainers, for the Authelia community, and those considering using Authelia.

You can view the official OpenID Certified™ statuses of projects on the OpenID Foundations website in the Certified OpenID Providers & Profiles and the Certified OpenID Providers for Logout Profiles sections.

The certification we've obtained are a subset of the intended certifications we intend to work towards both in OpenID Connect 1.0 and other areas. Our focus will be on certifications or specifications that improve security, privacy, and usability.
by anthk | 2025-05-18 09:25:19+00:00
Bleem it's an emulator; it emulates the architecture, is not a virtualizer. 233 MHZ to emulate the 33 MHZ PSX seems reasonable, Windows 95/98 take up a good chunk of the CPU themselves. But, you forgot something.

The PSX "GPU" just worked with integers and that's it. Any decent compiler such as GCC and flags like -ffast-math would emulate the both dead simple MIPS CPU and the fixed point GPU where no floats are used at all while taking tons of shortcuts. MMX? Ahem, MPEG decoding from videos. If you did things right you could even bypass the BIOS decodings and just call the OS MPEG decoding DLL's (as PPSSPP does with FFMPEG) and drop the emulation CPU usage to a halt and let your media player framework do the work for you.
by kubb | 2025-05-18 09:25:33+00:00
I agree that fast iteration and the „easy to get something working” factor is a huge asset in Python, which contributed to its growth. A whole lot of things were done right from that point of view.

An additional asset was the friendliness of the language to non-programmers, and features enabling libraries that are similarly friendly.

Python is also unnecessarily slow - 50x slower than Java, 20x slower than Common Lisp and 10x slower than JavaScript. It’s iterative development is worse than Common Lisp’s.

I’d say that the biggest factor is simply that American higher education adopted Python as the introductory learning language.
by muzani | 2025-05-18 09:25:36+00:00
$5/month is sort of the worst spot. I'd pay $1/month for some things (budgeting tools) and $20/month for say, chatgpt. And I paid $5 lifetime (life being ~5 years) for a resume tool once.

These days AI will probably build most of the things you'd charge a tiny fee for. $5/month is kind of the rate of a battle pass for a MMO, not quite a "small tool".
by johnisgood | 2025-05-18 09:28:33+00:00
> Rust projects are easier to hack on and contribute to.

You can say that about any languages that you yourself know, or other people know. There are beautiful codebases in many other languages, and awful ones in the same languages.

If your Rust codebase has a lot of unwraps and lifetime annotations (among other things), I will probably not find it a joy to contribute to it, at all.
by Lio | 2025-05-18 09:30:39+00:00
> Tell that to cyclists used to navigating mandatory bike infrastructure full of terribly broken up surface.

We’ve had paved, off-road bike lanes where I live since the 80s.

They’re not mandatory but they are highly used and to my knowledge have required almost no maintenance in all that time.

There’s no scaring or resurfacing visible.

The wear and tear on tarmac is directly related to the weight of the vehicles that use it.

The benefits of bike lanes are massive compared to the cost.
by prmoustache | 2025-05-18 09:30:47+00:00
I don't know, I used to like some anime and mangas when I was 14 in the mid 90's.

Nowadays it seems everyone is interested by "anime style" of content but all I see is terrible in term of quality. It seems quantity increased so much in the last 30 years it only made quality stuff more invisible and we are inundated with animelike trash.
by pjmlp | 2025-05-18 09:32:07+00:00
A magic also available in Turbo BASIC.

Ironically Borland gave up competing against Microsoft on BASIC tooling, while Microsoft gave up competing against Borland on Pascal tooling (Quick Pascal).

Both products where short lived, Microsoft killed Quick Pascal quite quickly, while Borland sold Turbo BASIC, which became Power BASIC.
by danhor | 2025-05-18 09:35:04+00:00
RISC-V is even worse: The Cortex-M series have standardized interrupt handling and are built so you can avoid writing any assembly for the startup code.

Meanwhile the RISC-V spec only defines very basic interrupt functionality, with most MCU vendors adding different external interrupt controllers or changing their cores to more closely follow the faster Cortex-M style, where the core itself handles stashing/unstashing registers, exit of interrupt handler on ret, vectoring for external interrupts, ... .

The low knowledge/priority of embedded of RISC-V can be seen in how long it took to specify an extension tha only includes multiplication, not division.

Especially for smaller MCUs the debug situation is unfortunate: In ARM-World you can use any CMSIS-DAP debug probe to debug different MCUs over SWD. RISC-V MCUs either have JTAG or a custom pin-reduced variant (as 4 pins for debugging is quite a lot) which is usually only supported by very few debug probes.

RISC-V just standardizes a whole lot less (and not sensibly for small embedded) than ARM.
by metalman | 2025-05-18 09:35:35+00:00
It's not surprising that they have failed.When these scheams were anounced it went against everything I know about mechanical efficiency and the imense amount of energy used by the large compressors and gas seperating equipment reqired, transportation and infrastructure are also very large. Details have been scarce on exactly how the plants would work, which was troubling as the whole exercise is dependent on very specific technical details, and of course on the name plate information on the equipment, which with a pencil and paper will give a very good idea if it will work. Unfortunately there is still obfusication of just how bad the fail is.It looks like they are admitting that it consumed twice as much CO² as they captured, but I think that it's twice that, not counting infrastructure or grid losses, snd now decomishioning costs, so ball park at 10% and thats that. Still amazed it ever got started.
by kabiroberai | 2025-05-18 09:35:45+00:00
I’m also one of the maintainers of Theos :)

When you use Theos outside macOS, you have to install a toolchain and SDK. The toolchain is built from LLVM + cctools, and is in fact very similar to the one we use in xtool (I maintain both.) The SDK is hosted on GitHub and I could’ve decided to use this instead of getting the user to supply a copy of Xcode, but the copyright status is iffy; there’s an argument to be made in light of Google v. Oracle but I didn’t want to take any chances.
by tauoverpi | 2025-05-18 09:36:14+00:00
This is incredible, what's the license of the work? A derivative of this (using a forth-like with only recursion) would be perfect for the current game project where I'm lacking a visual representation of spells (both written and animated). Mystical provides the missing piece of the puzzle of how users could write their own spells in a structured way within the game and still feel as if it's part of the game world with the same kind of thinking as in regular programming.
by touisteur | 2025-05-18 09:37:32+00:00
Which would be a problem with connexions through Paris, where (being a symbol or symptom or French centralism) most big train stations are terminus from one direction. Montparnasse, Gare de Lyon, Austerlitz, Gare de l'Est and Gare du Nord are connected via the subway network (or you can walk a 5 minutes stroll between the last two) but you can still get a connection 'through' Paris when buying tickets.
by int_19h | 2025-05-18 09:37:34+00:00
The counter-example to this is C#. Barely younger than Java (by 5 years), and starting its life as mostly a Java clone with a sprinkle of Delphi, it evolved much faster and made many changes which "make things look better" without breaking things. Source-level compatibility goes pretty much all the way back to 1.0, as well.
by boomlinde | 2025-05-18 09:37:47+00:00
> Tagged unions would be, except they aren't first class in C.

For the originally stated example, 'declare a variable, set it to 5 (number), and then set it to the "hello" (string)', a plain union is just fine.

> The best analogy here would probably be OCaml polymorphic variants

It would be, except OCaml is not C.

> It is not, though, because - unlike JavaScript - the fact that everything is a reference to object

Evidently, references and pointers are not the same thing, hence it is an implementation detail whether references correspond to pointers.

> and each object has a unique identity

Which doesn't necessarily have anything to do with their address. It's an opaque value guaranteed to be unique for an object for the duration of its lifetime.

Meanwhile, C pointer values aren't necessarily unique for different objects. For example, a pointer to a struct with one or more fields shares value with a pointer to its first field. It's only once you factor in type that pointers uniquely identify a particular object, so they don't exactly correspond to Python's object identity.
by AStonesThrow | 2025-05-18 09:39:32+00:00
The trouble is that Israel-Palestine is a proxy war with spiritual implications.

Israel is composed of people who just went through a legitimate holocaust and genocide themselves. Therefore it seems logical to most people that they'd be ready and willing to exact vengeance in the measure it was dished out to them. Furthermore, their Tanakh (our Old Testament) details the battles between the Children of Israel and their neighbors, which were murderous, atrocious, and genocidal on both sides. Why should modern warfare be any different?

Conversely, Palestine is composed of an amalgam of pan-Arabic people and, correct me if I'm wrong, no particularly deep roots in terms of common ethnic descent, or claim to such land or territory, since it was British until recently. Therefore, the Palestinians are a stand-in for all the Arab world, and by proxy, we're fighting all those Arab terrorists by targeting Palestine, and vice versa. Now the Arab world is nakedly genocidal against the Jews. They really make no bones about their desire to wipe Israel from the face of the Earth. By proxy they did a pretty good job during WWII -- the Third Reich, being the enemy of their enemy, was greatly pleasing to the Arab world.

So the Middle East has two little Davids fighting each other on behalf of their respective Goliaths. Israel's campaign has finally ramped up to the point where the rest of the world cries injustice and genocide and enough. But Israel has vowed "never again [to us]" while living under very real and existential threat that the entire Arab world would very much do it again to them, if they had half the chance.

So if the West puts the brakes on Israel, then we're letting the other Goliath's David win, and nobody around here wants that.
by DaSHacka | 2025-05-18 09:41:10+00:00
Wow, how pathetically obnoxious.

I was going to purchase a Home Assistant Yellow for my homelab, glad to know I need to minimize my interaction with the project before I pulled the trigger.

Will be sure to inform others using the project about this too, they deserve to know its a risk to rely on a project with such hostile core contributors.

Truly "Open Source" in name only (OSINO?)
by micvbang | 2025-05-18 09:42:55+00:00
I got tired of the pricing and/or complexity of running message queues/event brokers, so decided to play around with implementing my own. It utilizes S3 as the source of truth, which makes it orders of magnitude easier to manage and cheaper to run. There's an ongoing blog series on the implementation: https://github.com/micvbang/simple-event-broker
by tux3 | 2025-05-18 09:43:40+00:00
I think this is intended as educational material, not a list of things to fix.

The locks are here by necessity, it is not so easy at all to get rid of them. And even in special cases where it is possible, the complexity you have to introduce is not to be taken lightly...

If even a tenth of these disapppeared, it would be incredible, in a very surprising way.
by int_19h | 2025-05-18 09:43:45+00:00
I don't think that's accurate. Java at the time you're describing was already JIT-compiled (HotSpot debuted in 1999), which made it drastically faster than any plain bytecode interpreter. OTOH Python was - and remains - notoriously slow because, despite being compiled to bytecode, said bytecode is extremely high level and many opcodes in it represent potential numerous dict lookups etc.
by Tika2234 | 2025-05-18 09:44:00+00:00
European standards are lower when it comes to piloting. The plane itself is higher standard, the piloting is lower. They are the one with mental health problem even though USA is world famous for going postal. Ryanair? You pay what you get for. Most Europeans fly Airbus which is mostly automatic in design. Boeing in America is different. You can see that reduce the pilot skillset for automation comfort. But wherever you fly each regions have their pros and cons. That is why we need C919 to be successful to reduce Airbus and Boeing dominance.
by reustle | 2025-05-18 09:44:06+00:00
The water.noaa.gov redesign (the last 2-3 years) is considerably less usable on mobile. The old site was old, sure, but they were too interested in making it look and feel new, that they didn't prioritize the basic functionality.

I'm sure the team is well-intentioned, but it should have been done more thoughtfully.
by Aeyxen | 2025-05-18 09:46:13+00:00
Many variants of this debate play out in real-world systems: data pipelines, game engines, and large-scale web infra. The only universal law is that local code clarity must never be optimized at the expense of global throughput or maintainability. Pushing ifs up absolutely unlocks performance when you're dealing with a hot loop—early bailouts mean less work per iteration, and in my experience, that's often the difference between a scalable system and a bottleneck. But the real win is batch processing (pushing fors down): it's the only way you get cache locality, vectorization, and real-world performance on modern hardware. No amount of OOP purity or DRY dogma can change the physics of memory bandwidth or the nature of branch misprediction.