MurphyA/hacker-news huggingface dataset:
by imiric | 2025-10-03 22:23:54+00:00
Ugh, you're exhausting.

Look, here's a program:

print "Hello"

Do you see any warts in it? No? Well, my point is that the likelihood of a program developing warts is partly related to its complexity. That's it.

I mentioned Unix tools as an example of this, since they're by far the most reliable tools I use, particularly the simpler ones. I never said that they were "perfectly designed". Don't put words in my mouth.

> By your own logic that's not a wart, that's the way the programs work and they are documented to work like that.

A wart can be documented. I mentioned the case of `POSIXLY_CORRECT` since GNU tools predate the POSIX standard by a few years, so presumably that env var and the change in behavior was introduced when POSIX was first established. I'm not familiar with the detailed history, but that example is beside my point.

> Something might have been a good design originally and become a bad design as the world changed around it.

Again, you're misunderstanding what a wart is. It has nothing to do with bad design, and it doesn't appear on its own over time. It is a deliberate quirk that deviates from the program's original design—whatever that may be—in order to support some functionality without breaking backwards compatibility.

Just because you don't like the design doesn't mean that the software has warts.

Read that again.

Those fancy shells you mention have at least one major drawback: interop between tools only works if structured I/O is supported by each tool, whether that is because they were written from scratch, or because it was tacked on via shims. In practice, this can only be done if the entire ecosystem is maintained by a single organization. And if that strict interface needs to be changed, good luck updating every single tool while maintaining backwards compatibility. Talk about warts...

In contrast, using unstructured text streams as the universal interface means that programs written 40 years ago can interoperate with programs written today, without either author having to add explicit support for it, and without requiring centralized maintenance. Most well-designed programs do support flags like `-0` to indicate a null separator, which has become somewhat of a standard, but otherwise the user is in control of how that interop happens. This freedom is a good thing, and is precisely what makes programs infinitely composable.

In any case, this discussion has veered off from my original point and the article, because you don't like how Unix programs are designed, and misunderstand what warts are. So for that reason, I'm out.
by tison | 2025-10-03 22:24:13+00:00
Rust's Future is somehow like move semantics in C++, where you may leave a Future in an invalid state after it finishes. Besides, Rust adopts a stackless coroutine design, so you need to maintain the state in your struct if you would like to implement a poll-based async structure manually.

These are all common traps. And now cancellations in async Rust are a new complement to state management in async Rust (Futures).

When I'm developing the mea (Make Easy Async) [1] library, I document the cancel safety attribute when it's non-trivial.

Additionally, I recall [2] an instance where a thoughtless async cancellation can disrupt the IO stack.

[1] https://github.com/fast/mea

[2] https://www.reddit.com/r/rust/comments/1gfi5r1/comment/luido...
by arcfour | 2025-10-03 22:24:43+00:00
I don't live in Europe, I will never travel to Europe, I don't plan to ever do business with Europe. I don't care if Europe sentences me to be shot into the sun for GDPR violations, it's not like I'm going to be extradited for it.

And I'm not aware of any law anywhere here that says I can't download a public photo. The use case is clearly valid and benign, the photo is public, there's no way a judge would go for that no matter how you twist the law.
by ozaark | 2025-10-03 22:24:56+00:00
The common recommendation I've seen is to use your network. If it's something you're building then ideally you know what problem you're solving and who has that problem. Then getting those early users you know with that problem involved to test and give feedback, you can then optimize further for that audience and need. From there those users will likely share with those that they know within their own network having the same issue. There's a few books on it like Tribes by Godin (though not everyone agrees of course).

Other than that there are a few places that highlight product launches like product hunt, etc. to gain initial usage. Probably check for niche groups having the issue and reach out organically - no one likes spam.

This is just what I've gathered from others, I'm in the beginning phase of this myself :-)
by cowsandmilk | 2025-10-03 22:25:45+00:00
There definitely is a simplicity in that I don’t actually need to use OpenAPI to generate data structures and can quickly just do a JSON.parse and easily get to the field I want. With SOAP, you either generate a client or do some quite annoying walking of the XML tree. The hurdle for quick and dirty parsing is a lot higher with SOAP.
by sfpotter | 2025-10-03 22:26:18+00:00
Here's an implementation of a doubly-linked list which is perfectly fine on modern hardware: an array of structs where each struct contains a pointer to its next and previous elements in addition to whatever other data is being stored.

Here's a situation where a traditional pointer-based double-linked list is fine: when the payload is very large (e.g., an entire document in some app).
by LargoLasskhyfv | 2025-10-03 22:26:57+00:00
Isn't my experience, when I'm there. At least in Hamburg, Germany. They are electrifying like mad. More and more chargers everywhere, Buses, Scooters, E-Pedelecs, Bikes. Owned or rentals.

Which I'm mostly pleased with, because they are less loud, if not almost silent.

Still going faster than most of them on my good old bicycle, if not using public transport, and even then :-)
by wasmperson | 2025-10-03 22:27:28+00:00
> There are several ways to solve this problem. One way is to avoid using direct references to the particular class of objects at all. Instead, allocate a big array of objects, and refer to them with integer indexes into that array. There are several names that have been used for such arrays and indexes; let's call them arenas and handles.

I thought the term "Arena" referred to linear allocators, but maybe it's not so narrowly defined.

> At one level, this question is not very fair, because an answer to it as stated would be that one simply does not use doubly linked lists. They have been popular in introductory computer science lectures because they are a neat way to explain pointers in a data structure that's easy to draw on a whiteboard, but they are not a good match to modern hardware. The last time I used one was in the nineties. I know the Linux kernel uses them, but that design was also laid down in the nineties; if you were designing a kernel from scratch today, you would probably not do it that way.

The arena data structure you described is inefficient unless it uses a linked list to track empty slots. All general-purpose heap allocators use linked lists in their implementations. Linked lists show up wherever you want pointer stability, low fragmentation, or a way to decouple the storage of objects from their participation in data structures. I struggle to imagine how it would be possible to implement something like Linux without at least one linked list in it.

> Essentially you are bypassing the notion of pointers provided directly by the hardware

Pointers aren't a hardware concept, they're a language concept. Array indices and pointers both rely on indirect addressing, which is the underlying hardware concept. The "handles" strategy in Rust feels like a kludgy approach not because it bypasses the hardware but because Rust's borrow checker isn't actually involved in ensuring safety in that case, just its bounds checking and mandatory initialization (and if all you need is those two things then...).
by dkga | 2025-10-03 22:27:30+00:00
Curious contrast about eating horses. My grandmother used to live in a very humble area of my hometown and I was there often. One day, when I was a kid, there was this agglomeration in the main avenue in that neighborhood: people lynched the butcher because for years he sold everyone horse meat for cow meat, and eating horse is taboo in my region of Brazil. Years later, when I moved to Switzerland I was very surprised when I first saw packaged horse meat for sale in the supermarket right next to cow meat, pork, etc.
by mwkaufma | 2025-10-03 22:27:33+00:00
Anticipating pushback: yes, you can disallow "pointer arithmetic" on handles, and store fingerprints in the "slots" to ensure they still contain the handle's identity to detect user-after-free, but congrats, you've implemented sparse sets, which there are dozen's of C++ implementations of with the same safety guarantees, so it's unclear what rust is bringing in that case (e.g. https://github.com/skypjack/entt/blob/master/src/entt/entity...)
by toss1 | 2025-10-03 22:28:49+00:00
Yes, we can safely assume that, since I was largely ignoring the press piece and directly using only the quotes from the Army Report.

Below are some of the direct quotes from the Army Report quoted in the article.

>> “fundamental security” problems and vulnerabilities,

>> should be treated as a “very high risk

>> “We cannot control who sees what, we cannot see what users are doing, and we cannot verify that the software itself is secure,”

>> “very high risk” because of the “likelihood of an adversary gaining persistent undetectable access,” wrote Gabrielle Chiulli, the Army chief technology officer authorizing official.

>> Any user can potentially access and misuse sensitive”

>> One application revealed 25 high-severity code vulnerabilities. Three additional applications under review each contain over 200 vulnerabilities requiring assessment, according to the document.

>> “Any user can potentially access and misuse sensitive” classified information, the memo states, with no logging to track their actions.

The report on a supposedly secure communications system prototype contains these exact criticisms about 1) fundamental lack of access control for users of classified info at multiple levels, 2) complete lack of logging for any access authorized or unauthorized, and 3) likelihood of an adversary gaining persistent undetectable access.

To anyone with a clue, this is exactly the opposite of what a secure military communications system needs.

For people on a site who supposedly care about software quality to defend such obvious slop is ... surprising. It looks from this collection of quotes that Palantir and Anduril just tossed over some Slack/Discord clone and thought they'd "wow" the Army with the new (presumably to those backwards customers) tech and slap on some security later, and are now finding out their customer is a bit more sophisticated than they expected.

There are very good reasons consumer tech is often unsuited for military use.

(OFC, if the press piece is lying about the direct quotes and numbers from the document, we have an entirely different discussion, but no one here has argued that is the case)
by encoderer | 2025-10-03 22:29:03+00:00
Does a 2 person SaaS count?

We launched Cronitor.io here on HN over 11 years ago and we’re thriving.

The first 6 years were part time, nights and weekends, while we both had kids and full time jobs. In 2020 we quit our jobs (and took a huge pay cut for a while) to go full time on it. Eleven years later I still love building dev tools.
by mattpratt | 2025-10-03 22:29:18+00:00
Caspian Trade | Product Engineer | Full-Time | SF | meetcaspian.com

We're building trade software that actually works.

Our first product is duty drawback. Every year $10B in potential refunds are left unclaimed. Data is unstructured, fragmented and trapped in legacy systems that don't talk to each other. We're helping companies organize and understand their trade data. Leveraging the wedge product, we intend to quickly grow beyond our initial product.

You'll work with a small (5-10), well-funded and experienced team. We have paying customers and are scaling up quickly in an established space. Our engineering culture emphasizes simplicity, autonomy and end-to-end ownership. Node, Typescript, React, PostgresQL

Feel free to reach out to ebeweber@meetcaspian.com
by ErrantX | 2025-10-03 22:29:20+00:00
They use largely the same rails/network (for example Mastercard). The only meaningful difference is on how and when funds are reconciled.

Some payment providers ask up front to simplify the flows as it's not totally trivial to determine what sort of card it is, and also because different fees apply - historically some merchants added specific fees to basket etc. (less so nowadays but the UI convention sticks)
by yjftsjthsd-h | 2025-10-03 22:30:27+00:00
https://www.crowdsupply.com/open-tools/open-printer

> Open Source

> Open Printer will use the Creative Commons BY-NC-SA 4.0 license for all of its files, including electronics and mechanical design files, firmware code, and the bill of materials. We hope that people will be able to repair, upgrade, and contribute improvements to their printers.

It's a nice hope, but they've conveniently banned being able to pay someone else to make parts for you, which will make it harder. Also, not Open Source. (Shared Source is still better than proprietary, but it's not F/OSS.)
by mrsssnake | 2025-10-03 22:30:33+00:00
Selling any parts or upgrades by third parties will be heavily limited by the BY-NC-SA 4.0. You could not build the printer and use it in a small company office.

The non-commercial clause is not only unnecessary (who is going to mass market it?), but license also means firmware is proprietary software, it absolutely is not Open Source. Sad to see even seemingly user approached projects building on foundations they misuse the terms of.
by haunter | 2025-10-03 22:31:14+00:00
>768 GB of DDR5-5200. The 12 memory controllers on the IO die provide a 768-bit memory bus, so the setup provides just under 500 GB/s of theoretical bandwidth

I know it's a server but I'd be so ready to use all of that as RAM disk. Crazy amount at a crazy high speed. Even 1% would be enough just to play around with something.
by ceejayoz | 2025-10-03 22:31:15+00:00
Shuffle a deck of cards, and statistically no one has ever shuffled the same sequence in all of human history.

It is extraordinarily unlikely you will shuffle one particular order of cards. It is 100% likely you will result in a sequence of cards.

Space is full of trillions and trillions and trillions of these. Given the rate of detection, we’ll probably see them come through regularly.
by hocuspocus | 2025-10-03 22:31:41+00:00
Right, basically all EMV cards are ready. You just need one that has some offline tolerance, as there are limits on both the amount and number of consecutive offline transactions. I believe these settings can be updated on the chip, i.e. your bank will tell you to go to an ATM perform any operation to make sure it's up to date.

Payment terminals might be trickier as we've observed during outages that they currently don't fall back to offline transactions. But their software and business rules can obviously be updated.
by rootusrootus | 2025-10-03 22:31:42+00:00
IME the number of times where people have said "this time it's different" and been wrong is a lot higher than the number of times they've said "this time is the same as the last" and been wrong. In fact, it is the increasing prevalence of the idea that "this time it's different" that makes me batten down the hatches and invest somewhere with more stability.
by harmmonica | 2025-10-03 22:32:05+00:00
Do I have this right that there have been no or at least very few pure AI IPO's during this cycle (I can't actually think of a single one)? So it's dissimilar to dotcom in that regard because during that time countless dotcoms went public with sky-high valuations and then failed. A bunch of reputable companies also went or were already public during that time and those saw huge valuation drops so that's more analogous to what could happen in the public market (NVDA, for instance, could pull a Cisco and drop "catastrophically," but survive just fine).

That would cause a lot of pain for those shareholders, but would that be somewhat contained given the public "AI" companies for the most part have strong businesses outside of AI? Or are these market caps at this point so large for some of these AI public companies that anything that happens to them will cause some kind of contagion? And then the follow up is if the private AI companies collapse en masse is that market now also so big that it would cause contagion beyond venture capital and their investors (fully aware that pensions and the such are material investors in VC funds, but they're diversified so even though they'd see those losses maybe the broader market would keep them from taking major hits).

Not giving an opinion here, though my knee jerk is to think we're due for a massive drop, but I've literally been saying that for so long that I'm starting to (stupidly) think this time is different (which typically is when all hell breaks loose of course).
by stonogo | 2025-10-03 22:33:37+00:00
That point would be strong, but this article doesn't make that point, or any other points I can tell. It does really weird things like comparing the annual cost of housing one Texan person to building an entire Californian housing unit, changes which definition of "homelessness" it uses (sometimes mid-sentence), ignores Houston's extremely police-oriented approach to the topic (police can cite you for trespassing if you're at a bus stop and don't produce ID), pretends the Texas cities aren't sweeping encampments (they are, right now, on Nance Street), and just generally plays fast-and-loose with the facts in Texas.
by xp84 | 2025-10-03 22:35:47+00:00
When I was working retail (almost 20 years ago :[ ) we imprinted more often because of a failed magstripe, than a computer outage. In the event the card couldn't be swiped, you could key the number in, but the printer would create an extra-long signature slip instead of the normal kind, and we'd imprint the card onto it, as proof the actual card was there. This was I assume to prevent us from having to pay a higher 'card not present' interchange fee, and in terms of fraud, made it really obvious if someone was doing something shady like typing in card numbers without the card or cardholder being present.
by ozmodiar | 2025-10-03 22:35:59+00:00
Honestly, during the dotcom bubble at least workers were getting paid and jobs were abundant. Things didn't start getting bad for workers until it popped. We're supposed to be in the 'positive' part of the AI bubble and people already seem desperate and out of hope.

Everyone not directly involved seems to want AI to pop. I'm not sure if that says anything about its longevity. Not very fun to have a bubble that feels bad on both sides.
by themafia | 2025-10-03 22:36:47+00:00
> 3 different AI services

Why three? Will you ever be in a position where one will do it for you?

> and most of my team is also paying money for various AI stuff.

And what are they using it for?

> Sounds like a real industry to me.

Sounds like early adopter syndrome to me. We'd have to know more about your business to take this out of the realm of hazy anecdotes.
by tcshit | 2025-10-03 22:37:21+00:00
I’d say he’s correct, people under 60 that uses cash are considered, if not criminal, at least suspicious, like they have something to hide. Or simply wackos. I haven’t used cash for the last 15 years or so. Except for when I had carpenters at home who wanted to get paid in cash (to avoid taxes, so called black money).
by hobofan | 2025-10-03 22:37:41+00:00
I've yet to see any of the typical commercially available graph databases do anything fancy in that regard.

If you dive into the query plans of a graph DB you quickly see that there is nothing special about that. In the end it boils down to the same physical joins on node and vertex tables. The only thing graph DBs offer over your typical RDBMS is nicer syntax (while having worse operational maturity), and with the advent of SQL/PGQ event that advandtage is going away.
by DavidVoid | 2025-10-03 22:37:45+00:00
Swedbank offers debit cards to kids as young as seven [1]. Depending on the kid's age (and what the parents configure), there will be different limits on how much the kid can spend.

Swish is the de facto standard for sending money between individuals [2], and that's what grandparents tend to use to send money to their grandchildren. It's fee-less (for person-to-person transfers use at least) and it connects your bank account with your phone number. So if anyone wants to send you money, they can just open Swish and enter your phone number (or scan a QR code) and send you some. You also have to sign the payment with the BankID app, which is the de facto standard for authentication [3].

And when I write de facto standard I really mean it. 99.9% of Swedish residents age 18-67 have BankID (8.6M users), while Swish has 8.7M private users (93% of which use Swish at least once per month).

[1] https://www.swedbank.se/privat/kort/bankkort/bankkort-master...

[2] https://en.wikipedia.org/wiki/Swish_(payment)

[3] https://en.wikipedia.org/wiki/BankID_(Sweden)
by Dig1t | 2025-10-03 22:38:43+00:00
>Yeah, they obviously do. That's plain bullshit.

Well heck, I see an awful lot of people on the internet trying to argue that they somehow don’t drive wages down for Americans. The number of foreign born people living in the USA is at an all time high, over 5 times larger than what it was in the middle of the last century. Being able to throw cheap labor at a problem is a crutch that keeps people from having to innovate or pay their own countrymen a decent wage. The same argument was used by pro-slavery folks back in the day. “Who will pick the cotton?” was seen as a compelling argument. But when your business is forced to deal with a problem instead of throwing cheap labor at it, you often come up with much better ways to do things and your own fellow citizens share the benefits as well.

>cheap-labor effect on construction probably outweighs this by a good margin

The data shows clearly that immigrants drive up the cost of housing by increasing demand. Americans built our own housing for most of our history, this trend of cheap immigrant labor working most of the construction jobs was not always the case. We could afford to pay construction workers a little bit more and the cost of housing would be more than offset by the reduced housing demand.

>hasn't held up over the long haul

It has absolutely held up, take a trip to any major US city and visit one of its many ethnic enclaves. Many areas of Los Angeles speak exclusively Spanish, you can visit neighborhoods that are indistinguishable from a city in Mexico. The problem is so glaring that the left has switched tactics and hardly even argues that assimilation occurs anymore, rather they argue that “multiculturalism” is the new thing we are supposed to support. Where ethnic enclaves live alongside each other.
by djcapelis | 2025-10-03 22:38:47+00:00
You’ve made the same mistake the poster you’re replying to pointed out. Women in lesbian relationships have a high rate of having experienced domestic violence in their lives, and a study reported this which has then spread around the internet as a meme of sorts. For the vast majority of those same women, the same study reported that the domestic violence they experienced was in a previous relationship, with a man.

So, no.