MurphyA/hacker-news huggingface dataset:
by Geo_ge | 2025-09-16 06:23:26+00:00
You've got exactly the right idea, except "cross compare" is underselling it :)

Here's a previous thread on this topic[0].

For each (receiver, satellite) pair, you can calculate the TEC along the signal propagation path by comparing the time of flight of two carrier waves (e.g. L1 and L2)[1].

By fusing the data from each line of sight together you can get a rough, real time, 3D (4D) model of the ionosphere. Then, you have a separate problem of identifying ionospheric anomalies in the model and relating them to phenomena like earthquakes.

[0] https://news.ycombinator.com/item?id=42441772 [1] https://news.ycombinator.com/item?id=42471052
by Frieren | 2025-09-16 06:23:31+00:00
> There are no technical hurdles remaining with respect to nuclear waste disposal.

That is very inaccurate. There are still a million problems to solve. nuclear waste is extremely dangerous. Even "normal" trash has been proven dangerous and difficult to get rid of with landfills leaking dangerous materials into ground water.

Accumulating nuclear waste for millennia hopping that nothing goes wrong is far from a proven solution. People cannot trust a solution when all concerns for people safety are disregarded.
by hobofan | 2025-09-16 06:23:45+00:00
Maybe my view is tainted by how Next.js implements/propagates it, but the last ~5 years of React has mostly seen iteration in the form of RSC (React Server Components), which in many projects manifests in chaos and creates a steeper learning curve.

I do think that React in its history has been able to evolve quite meaningfully, and in a good way (lifecycle methods -> hooks), but in the more recent years, less so.
by josteink | 2025-09-16 06:23:50+00:00
> In my hands the 16 pro max looks small. I only care about battery life really and it is really not great

The Max version may have room for a bigger battery, but it needs to drive a bigger screen so it’s a double-edged sword. I’m not sure if you end up ahead or not.

If battery life is an issue you can turn off some the more gimmicky «pro» features like the always on screen.

I have a «regular» 15 pro and I think battery life is good. I haven’t had a single day where overrun out of battery so far.
by jader201 | 2025-09-16 06:25:24+00:00
I’ve got a 27” CRT right next to my 65” LG OLED C9 (which is starting to feel ancient, too).

It sits in a cabinet that currently holds an NES, SNES, N64, GameCube, and PS2.

It doesn’t get a ton of playtime, but when my now 21- and 18-year-old sons were young, I’d play on them quite a bit (they were already retro even then), and as they got older, they would too.

My oldest is particularly fond of the retro consoles and playing on the CRT, so he’ll hop on it when he gets the itch for something retro.

I feel like there’s a charm that will never fade, not only with retro consoles, but also playing them on a CRT.

I’ll never get rid of our CRT.

My oldest son wouldn’t let me, even if I wanted to.
by veltas | 2025-09-16 06:25:36+00:00
I agree, this is the whole point of "Hello world", which is to show the boilerplate required to start a program capable of outputting text, as well as the actual code that outputs that text. It's also the chance to get the build tools setup, people forget that some of the 'boilerplate' is the actions required to build, which often are much more involved for newer tools and frameworks.

You can just say initially e.g. when I learned C++ that "#include <iostream>" can be "mostly ignored for now, but just know iostream stands for Input / Output stream, and this line is necessary to e.g. output with std::cout"; and there are no scars left from this.
by smelendez | 2025-09-16 06:25:44+00:00
Land and rent used to be cheaper, and a lot of people come through the door. The margins on a lot of diner food, like eggs, ground beef, and coffee and fried potatoes, were at least historically fairly high. People in NYC also historically ate out a lot.

I think longtime NYC restaurant owners often love being a community hub, particularly if they’re first generation Americans, so they’re not thinking of how to squeeze the customers or follow the latest fads.

A lot of stereotypical “ethnically owned” businesses in NYC also have their own supply chains. It’s very possible they are or were buying from Greek-American wholesalers who are effectively buying in bulk for diners across the city.

My impression in general is also that people who’ve worked in the NYC food business for a while in general know their preferred vendors to call for any particular thing, from whole chickens to pest control, and that if you tried to compete with them by finding vendors on Yelp or whatever without those relationships you would be at a complete disadvantage.
by Fire-Dragon-DoL | 2025-09-16 06:26:25+00:00
Did anybody actually open a ghost kitchen that served great food or are they just trying to scam?

The problem seems to be the product,so it's essentially a scam. If the product was good,I don't see a problem with a place that's just a kitchen.

The restaurants in north america seems to be all in parking lots anyway,might as well be home instead
by d--b | 2025-09-16 06:26:28+00:00
The problem is that people in power decide who the "bad guys" are.

Authoritarian regimes come up with bogus charges to include political opponents in the "bad guys", painting them as criminals to the rest of the country, and legitimizing their arrests.

These surveillance technologies have two main problems: if you have more data, it's easier to dig dirt on people. And if you don't have data, you can always fake it.

The requirement for it to work though is that you need regular people to believe that political opponents are in fact criminals.

The scary shit is that the US is not too far from being there.
by Frieren | 2025-09-16 06:26:44+00:00
> Long term, software engineering will have to be more tightly regulated like the rest of engineering.

That's for sure. Software is too important for not only the economy but for people's safety that it needs to be regulated. Adding ads to all software is making it fragile and prone to hacking. Bloating it with features to sell stuff instead of doing its primary function is equally bad for everybody. Don't let me start on bad engineering practices.
by nerdsniper | 2025-09-16 06:27:07+00:00
> would the economy tolerate a much more diverse marketplace for connecting cooks, drivers, and customers?

I envision some kind of government-run or mandated exchange where drivers can certify/onboard at any number of uber/lyft clones, and customers can sign up for any number of uber/lyft clones. Any request placed will be sent to the exchange and the cheapest price from a service that the passenger is willing to use is selected.

This would primarily squeeze the margin of uber/lyft. That margin is what competitors can offer up to drivers for higher wages and passengers for lower prices. It's pretty wild to me that Uber/Lyft still manage to capture 25-60% of the "value" of each ride, when the overwhelmingly largest value they provide is derived from network-effect lock-in (essentially rent-seeking).

Maybe drivers could set their minimum wages per mile/estimated time, and passengers could avoid companies with business practices they don't like (inadequate background checks, paying wages too low, sponsors the wrong sports team).

This exchange would have to be enforced with anti-trust or just statute/regulation.
by troupo | 2025-09-16 06:27:17+00:00
Wirth is also from a time when resources were incredibly constrained. So it was a combination of his ideas for what a PL should be: easy to understand, easy to learn, powerful enough to do everything he needed. And the compiler for the language also needed to be the same.

Unfortunately he got kinda stuck in that, and you can see it in all the Oberon flavors: he was clearly fighting against the limitations he imposed, but couldn't break out if them.
by connorjcantrell | 2025-09-16 06:28:23+00:00
I know you’re trolling (appreciate that).. but you’re missing the point entirely.

There’s no value knowing how a vehicle relates to the physical world, however its data may not properly be associated with the vehicle.

For example, your car outputs error code 0101, but the code doesn’t know it’s coming from a 2003 Toyota Tacoma with a recently installed third-party component.

The diagnostic data exists, but without proper association to the specific vehicle’s history and configuration, it can’t be properly interpreted.

For buildings, there are many such cases where valuable data is available, but it lacks the context to understand it from an analytical and controls perspective.
by yokiyoki | 2025-09-16 06:28:44+00:00
I’ve always loved tools that make moments more fun. Recently, I was thinking about creating something playful to break the ice and spark those little memorable moments with a team.

As an introvert, I used to struggle in group settings, but then I learned a few icebreaker tricks — simple ways to get people talking, laughing, and connecting. One that stuck with me was from a college class: the teacher used a random spinner to pick students, and suddenly the whole room was alive with energy. Hands went up, jokes flew around, and it became the most fun and memorable class I ever had.

Now, I use TryRandoms for similar moments — whether in workshops, meetings, or small teams. Random prompts and generators make it effortless to create fun, spontaneous interactions. It’s amazing how something so simple can transform a quiet room into a space full of laughter and connection.

If you’re looking for a way to make icebreakers playful, engaging, and unforgettable, TryRandoms is worth checking out.
by bawolff | 2025-09-16 06:29:36+00:00
I think it does say something about what a language thinks is important.

Java (historically) is famous for going a bit too hard core into overly abstract & verboseobject oriented design patterns - create a factory to get another factory to get a different factory and whatnot. The hello world is where java shows that style of code is what historical java felt was the ideal.
Show HN: Seedream4 – Multi-reference, in/out-painting, 4K export
by dallen97 | 2025-09-16 06:29:50+00:00
Hi HN — I built Seedream4, a browser-based AI image generator & editor. You can generate from text or upload an image and do precise edits (background removal, in/out-painting, style transfer, upscaling) and export PNG/JPG/WebP. There are example prompts you can run right away, and uploads (PNG/JPG/WEBP up to 10MB) support higher-res results including 4K.

Why I got tired of manual masking/retouch steps for marketing and product visuals. I wanted something that combines text-to-image with instruction-based edits so you can keep lighting/perspective intact and iterate fast.

What’s different • Instruction-based edits with local brushes/masks, without wrecking the rest of the scene. • Multi-reference consistency to keep brand colors/character identity coherent across shots. • Export-ready workflow (PNG/JPG/WebP, transparent backgrounds; 1:1, 16:9, 9:16, etc.). • No-signup demo: click an example or upload and try.

How it works (high level) The web app sends your prompt/images to third-party model APIs (e.g. modern image-creation models) via my backend. I provide the UI, masking tools, queues, and credit metering. Per the privacy policy: prompts/images are processed by model providers and not retained longer than needed to deliver results.

Pricing There’s a free tier to try core generation/editing. Paid plans add more credits, 4K export, priority processing; commercial usage rights are included in Pro.

Known limitations / looking for feedback • Text & tiny details still fail on some compositions. • Complex multi-object edits sometimes need an extra mask pass. • Throughput can vary under load. I’d love feedback on UX, failure cases you hit, performance expectations, API/CLI needs, and whether the pricing/credit model feels fair.

Happy to answer anything about the design choices, queues, and the editor’s internals. Thanks for checking it out.
by raverbashing | 2025-09-16 06:30:06+00:00
Except a static class method is just a hand-wavy way of denying reality: that a program has a single entry point that has nothing to do with classes

As much as C++ has a lot of problems, them and other languages (python/ruby/etc) never denied that the procedural world existed, while Java wants to blindfold you and push you through a corridor until you get out of it and into the "perfect (not) OOP world"
by fhd2 | 2025-09-16 06:31:18+00:00
Back in 2005 or so, Java felt like "C++, but we know better" to me. I had no choice but to use it, but boy did they omit some stuff that was actually useful. The boilerplate back then (driven by both the limitations of the language and a surge in architecture astronauts) was absolutely insane. Don't even get me started on anything labelled "Java Enterprise" in the 2000s, bloat, slowness and bugs everywhere. IBM, Oracle and friends were running quite the circus. Creating working, performant software in that environment was a brutal challenge. I think Java, the language, is only partly to blame, but it was limited enough to spawn pretty complex code generators and frameworks.

Took the industy a decade or two to arrive at typed languages that were an actually good subset of C++ features. Java, in my opinion, wasn't one.
by JimDabell | 2025-09-16 06:31:26+00:00
I think the same thing. In theory I would love to use the platform-native approach instead of a framework. In practice it’s an exercise in frustration.

About once a year I give web components another shot and rediscover all the things I hate about them. They are not designed for what web developers consider components and they are full of footguns and bizarre limitations.

Sometimes you will hear this subtly acknowledged as “web components excel at leaf nodes”. What this means in practice is that you shouldn’t use them for things that have contents. They are fine for their original use case, form elements where you don’t want page styles to affect things like the drop-down arrow in the control. But they are a massive disappointment for the typical use case.
by 2muchcoffeeman | 2025-09-16 06:33:08+00:00
I’m a long time Apple user. But I never do anything that locks me into Apple in a way that makes me dependent on Apple. I could move to Linux tomorrow and everything I depend on would be fine. There’s no Apple service I actually need.

I think Google and Android is worse in this way. The backup Android I had years ago forced me to login with my Gmail or I couldn’t use it. My old iPhone happily runs without being logged in. I just lose the cloud features. Whatever.
by Frieren | 2025-09-16 06:33:39+00:00
> programming 101 courses should be taught in as concise and syntax-light a language as possible

100% this. To make Java be the all-language makes it a mess without a defined goal. It is better to start learning with a language better suited for it. And then the learner can specialize and expand to other languages. This also helps to create awareness that different languages have different use cases.
by antris | 2025-09-16 06:34:22+00:00
>How "ugly" a trivial "Hello, World!" does not really matter much and isn't a good indication of anything about the language's ability to handle more than "Hello, World!"

Sure, but for beginner programmers who don't have the discipline down yet, it's unnecessarily hard. I bought a Java programming book as a kid and got stuck because of a typo that produced an error message I couldn't understand. This was the time before StackOverflow and Reddit. In retrospect, this delayed my programming journey by at least a year.

Longer Hello Worlds make frustration and getting stuck like this more likely.
by empiko | 2025-09-16 06:37:01+00:00
IMO adding ads is not going to be that easy. It is relatively easy to implement ads when the user is scrolling through tons of content and the ads are "organically" injected into the stream. But if the user is seeking a specific answer in a chat-like GUI, what will you do exactly? Whatever ad you will show will have to be visually distinguished and the user will just scroll past to get to the "true" answer they want. Sure, you will still get the product in front of some eyes, but I would expect this to be less effective than other social-media based ads.
by tome | 2025-09-16 06:38:12+00:00
> there were also a lot of people saying "well, if you just write your whole application in ReaderT IO, you can get 90% of the effects juice for only 10% of the complexity squeeze"

I think 90% is an overestimate because you don't get any encapsulation. Maybe 50% is a more reasonable number. If you want 99% of the effects juice for 1% of the complexity squeeze, my effect system, Bluefin0[1], as well as the effectful[2] effect system

My recent talk "A History of Effect systems"[3] explains this in more detail, as does the "Why even use an effect system"[4] section of the latest Bluefin documentation.

[1] https://hackage-content.haskell.org/package/bluefin

[2] https://hackage-content.haskell.org/package/effectful

[3] https://www.youtube.com/watch?v=RsTuy1jXQ6Y

[4] https://hackage-content.haskell.org/package/bluefin-0.0.17.0...
by atoav | 2025-09-16 06:38:17+00:00
Complexity is the thing that keeps a certain, very common type of engineer excited. If left to their own devices they will increase the complexity of the solution in such ways that it can just be comfortably managed by themselves (if they have a good run) or just a bit too much so they are struggling all the way (if they have a bad run). The complexity of the problem is more or less irrelevant then.

There are many software products which solve extremely simple problems in very complex ways, sometimes this is called "overengineered". It is what happens, when the simple solution was too boring or when there was a shiny technological hammer and suddenly every problem looked like a nail (think of blockchain products where a simple relational database would have done the trick). This problem exists in hardware as well, but to a much lesser degree, because in hardware every tiny bit you add is cost added to the bill of materials, so hardware engineers have more incentives to keep simple solutions in mind.

To some engineers, them being the only person thar understands the code is a feature, not a bug. That either means they tricked themselves by making the problem appear harder to solve than would be the case (for the own ego), or they tricked others into a co-dependency where the engineer is now needed to understand the solution (for job safety).

One has to admit tho, that some problems are just inherently complex themselves and you have to tackle them at their own level. For example identity managment systems with people from potentially multiple sources where the data shape and quality is out of your control and you still need to reliably create one identity from the data sources. This is a classical: "How hard could it be?"-problem (turns out: very). The solution to that will be complex, because the problems you encounter are. The solution will need to be adaptable because new problems and needs will arise. The solution needs to be maintainable for the same reason. Complex problems + complex requirements = increased complexity in the solution

True mastery in software engineering means the complexity of the solution meets the complexity of the problem, while delivering in all kind of other dimensions like maintainability, legibility, adaptability, security, safety, reliability, ruggedness in changing OS-environments, ease of use, etc.

Many software engineers you will encounter are still in their "write and forget"-stage of their career. They never had to face The Sysamdin that had to deal with their flaming piece of crap software falling apart with every second system update. They have next to no admin experience themselves, that would tell them that good software chugs along for decades in a changing environment.

The problem with complexity in software engineering is that we can just add it. No beancounter breaths down our neck if we add an extra dependency. The problems arising from added complexity are intangible until they aren't, and then it is often too late.

P.S.: I smell chatGPT in some of the phrasing like: "Complexity shouts, “Look at me!”, while simplicity whispers “Did you notice?”."
by liendolucas | 2025-09-16 06:38:27+00:00
I tried the fantastic DroidVNC-NG (KUDOS to the author) app because I wanted to see if I could stream a whole Android phone left at home at all times.

The idea was attempting to switch to PostmarketOS, so if I ever needed to use a banking app I could do it through this phone via a VNC client. You can't.

Banking apps black the login screen. Even if that is ok for 99.9% of users, I know what I'm doing and I do not absolutely have the fucking choice to disable that. The thing I found out is that every time I come up with something that should be doable, either Android or the fucking app or something else prevents me from moving away.

My biggest drag is banking because almost everything else I can leave it out. And I believe I don't have a choice.
by pdntspa | 2025-09-16 06:38:29+00:00
While I think man pages are perfectly fine as documentation, the terminal interface for accessing them is awful (more mysterious keypresses or incantations to memorize if you want to do anything more than scroll), and visually I have always found them very difficult to scan visually, particularly if I wasn't sure of the exact wording for the task I needed, or if I am thinking in a different vocabulary. Plus theres the whole wall-of-text thing that makes me kind of instinctively bounce out.

A lot of them also lack sufficient (or any) examples, which are the things I need to see to learn. Making sense of the their sometimes (and seemingly intentionally) obtuse wording when I'm trying to do something I'm not already familiar with makes them a lot harder to parse than they need to be.

And many of the commands are extremely arbitrary. `cd` (change directory) very well could have been `mf` (move folder). `del` in DOS is `rm` in Linux. `move` vs `mv`, `copy` vs `cp`, etc etc. There's no common orthodoxy. If you are not well versed in the history of this stuff its all gobbledygook.

LLMs have been great in this regard, as they can supply those missing examples and then explain to me exactly what it is doing, oftentimes worded more clearly than the original documentation. And they can help me string together whole sequences.
by akimbostrawman | 2025-09-16 06:38:47+00:00
>At this point Android isn’t meaningfully an open-source platform any more

Google Android as installed on 99% of stock android phones never was open source. AOSP continues to be open source and is not effected by any changes made in the proprietary google android and google play services eco system.

People would do good by stop conflating the two.
by ur-whale | 2025-09-16 06:39:11+00:00
I used to get in the kind of frustrated situations where, like the author, I spent two days reverse-engineering something I had just bought just to get it to do what I thought it obviously would when I bought it.

IOT things like the thing he bought are (were) typically the worst kind of offenders.

I just don't do that anymore. It used to bring me pleasure cracking the nut, and that's not the case any longer.

These days, if it does not do what I need more or less out of the box, I just return it / send it back and research the follow-up buy better.