MurphyA/hacker-news huggingface dataset:
by rcarmo | 2025-05-06 09:28:35+00:00
Yeah, but you have to have some actual storage for it, and that may not be feasible across all nodes in the right amounts.

Also, replicated volumes are great for configuration, but "big" volume data typically lives on a NAS or similar, and you do need to get stuff off the replicated volumes for backup, so things like replicated block storage do need to expose a normal filesystem interface as well (tacking on an SMB container to a volume just to be able to back it up is just weird).
by davnicwil | 2025-05-06 09:28:45+00:00
Fractal complexity.

It's not only that solutions decay, though that's true, but also that the search for improvement itself becomes recursive.

When you identify something can be improved, and fix it, your own fix and every individual step of it now become the new thing that can be improved. After the most fleeting of pauses to step back and appreciate your work, this becomes your new default.

Indeed I often look back at my own solutions and judge them more harshly than I would ever judge anyone else's. Why? Because as the article says, I know much more about how it works. Cracks increase surface area by a lot. I know about a lot of the cracks.

I wrote a blog post [0] about this mindset getting in the way of what you care about in product development which you might enjoy, if you enjoyed this article.

[0] https://davnicwil.com/just-build-the-product/
by charcircuit | 2025-05-06 09:30:19+00:00
>A child is, pretty much by definition, incapable of fully caring for themselves.

This is disrespectful to the intelligence of children.

>we're punishing you with going hungry until he wises up

Not giving people free things is not a punishment.

>as a society, have the means to ensure that no child ever has to go hungry.

Giving away free food is not the only way to achieve that.

>Every decision that leads to hungry children is offensive

I disagree as there may be times where it is fine. This statement to me is equivalent to saying that we shouldn't make children feel sadness or pain. These are just parts of living. People will naturally experience them and later move on.

>punish adults by starving their children

Schools do not starve children. While yes schools prohihit people from leaving, school only last for a part of the day before they are released, and parents can pickup a child at any time. In order to starve someone you need to block access to food for a very long period of time.
by GardenLetter27 | 2025-05-06 09:30:20+00:00
Yeah, but the main thing is I didn't publish the script, or try to develop it into a more generic tool with more features (automatic synchronisation, etc.) - that is where things become overwhelming.

Like I have published a FOSS tool from some scripts I had for managing VPNs, and there I get constant issues around new providers / updates and it not working in people's specific environments (which I can't test).

The LLMs make it viable to write quick throw-away scripts with almost no time investment, and as such you feel no pressure to share or improve them.
by makeitdouble | 2025-05-06 09:32:10+00:00
I'm imagining coding with some random "i" being a different completely undistinguishable character from the English "i". Or people writing your name and not matching in their DB because their local "i" is not your "i".

It's a potential issue already depending on your script, and CJK also has this funny full English alphabet but all in double-width characters that makes it PITA for people who can't distinguish the two. But having it on a character as common as "i" would feel specially hellish to me.
by alexisread | 2025-05-06 09:32:14+00:00
Playing devil's advocate here, but is that simply validation that stuff you've written is actually useful? This could be seen as a proxy for self worth, which if something is useful, helps stave off that nagging anxiety in the back of your head? The question here is, is that a useful driver to build new things, or do we let things go? That's kinda similar to the article's premise.

(takes one to know one here)
by bonoboTP | 2025-05-06 09:32:58+00:00
This is quite hard to grapple with fresh out of school, where you worked mainly on pristine implementations of eternal algorithms, proven to be optimal in multiple ways, elegantly crafting each loop and feeling accomplished by expressing the algo with even higher clarity, reading and idealizing Knuth etc.

Then you see the real world and you think it must be because people are stupid, the bosses are pointy-haired, they don't understand, they don't value elegance, they are greedy, they etc. etc. But once you spend enough time on your own projects, and they evolve and change over the years, they turn more and more into a mess, you rewrite, you prioritize, you abandon, you revive, and you notice that it goes much deeper than simply laziness. Real solutions depend on context, one caching algo is good when one medium is x times faster than another, but not when it's only y times faster. It makes sense to show a progress bar when downloading a file if the usual internet speed is X but not when it's Y. Over years and decades the context can shift, and even those things can change that were only silent assumptions of yours when you made the "perfect" program as a young'un, looking down on all the existing "messy" solutions that do a bunch of unnecessary cruft. It's an endless cycle...
by jeroenhd | 2025-05-06 09:35:01+00:00
It does (U+0131 = Latin Small Letter Dotless I, U+0069 = Latin Small Letter I).

The problem is that uppercasing the dotted i outputs a different character depending on your current locale. Using case-insensitive equality checks also break this way (I==i, except in a Turkish locale, so `QUIT ilike quit` is false).
by lelanthran | 2025-05-06 09:35:40+00:00
> I have many ideas that I want to build, but I'd have to learn new languages,

Why? Why, specifically, do you "have to learn new languages"?

So, sure, I can see that, for some product, you might need to learn a new tech (say ... some specific AWS/GCP/Azure service), or perhaps a new configuration language (YAML, TOML, whatever).

And, sure, for some ideas (for example a mobile phone app) you're forced into that specific ecosystem.

Other than the mobile exception above, why do you need to learn a new language to build your idea? There is nothing stopping you from implementing your idea in (for example) Python. Or Javascript. Or Java, C#, C++, etc.

A programming-language-barrier absolutely does not stop you building your idea.

You gotta make the call - are you interested in building $IDEA, or are you interested in learning $NEWLANG?
by bArray | 2025-05-06 09:35:52+00:00
I would expand on this - there are a surprising number of times where a relatively small amount of money would make a large difference to one or multiple people.

Most people I know who have ended up in debt for example didn't not have the money to pay the debt entirely, they were just short for one month by a small amount. It's not long till it spirals completely out of control with interest, repayment penalties, etc, and that interest keeps adding up.

A family member that is the sole income earner for a household had their car break down. They had no additional income to fix it, no additional income to get another car and failing to get to work would spiral out their financial situation. That day I gave them an old car and told them to keep it. They used it for a month, eventually got the other car fixed and sold the car I gave to them.
by 0xdeafbeef | 2025-05-06 09:38:26+00:00
#include <vector> #include <iostream>

int main() { std::vector<int> vec = {1, 2, 3}; vec.reserve(3); std::cout << "Initial capacity: " << vec.capacity() << std::endl; std::cout << "Initial data address: " << (void*)vec.data() << std::endl; int* ptr = vec.data(); std::cout << "Pointer before push_back: " << (void*)ptr << std::endl; std::cout << "Value via pointer before push_back: " << *ptr << std::endl; std::cout << "\nPushing back 4...\n" << std::endl; vec.push_back(4); std::cout << "New capacity: " << vec.capacity() << std::endl; std::cout << "New data address: " << (void*)vec.data() << std::endl; std::cout << "\nAttempting to access data via the old pointer..." << std::endl; std::cout << "Old pointer value: " << (void*)ptr << std::endl; int value = *ptr; std::cout << "Read from dangling pointer (UB): " << value << std::endl; return 0; }

./a.out Initial capacity: 3 Initial data address: 0x517d2b0 Pointer before push_back: 0x517d2b0 Value via pointer before push_back: 1

Pushing back 4...

New capacity: 6 New data address: 0x517d6e0

Attempting to access data via the old pointer... Old pointer value: 0x517d2b0 Read from dangling pointer (UB): 20861
by maxnoe | 2025-05-06 09:38:36+00:00
HTML + CSS is only half of the equation. The renderer is also important. So you need a layout engine that turns the HTML+CSS into something you can view.

Most of the time, this is one of the browser engines, but there are many more things.

There is e.g. weasyprint to produce PDFs from HTML and CSS, which would be the closest alternative to LaTeX taking HTML+CSS as input.

For simple documents, it's a much cleaner alternative, I used it to autogenerate documents in a python backend.
by bonoboTP | 2025-05-06 09:40:11+00:00
Math can be greasy and messy. Definitions can be clumsy in a way that makes stating theorems cumbersome, the axioms may be unintuitive, proofs can be ugly, they can even contain bugs in published form. There can be annoying inconsistencies like optional constant factors in Fourier, or JPL quaternions.

Yes, prototypical school stuff like Pythagoras are "eternal" but a lot of math is designed, and can be ergonomic or not. Better notation can suggest solutions to unsolved problems. Clumsy axioms can hide elegant structure.
by Gigamegs | 2025-05-06 09:40:19+00:00
Doxmyip

1. What is it and what does it do?

Doxmyip is a simple IP address browser for Windows.

1.2. Features

- Supports the free IP2location Lite database (DB15 binary file) with millions of updated IP addresses.

- Supports sorting of the view with 2 different orders (up and down) and to reset it.

- Supports infinite scroll. Navigate millions of IP addresses with the right scrollbar.

- Supports a filter with 4 different subnet masks (255.255.255.255, 255.255.255.0, 255.255.0.0,255.0.0.0).

- Supports a filter with a country code.

- Supports searching for an ip address.

- Supports a sticky navigation bar.

- Asynchronous database query with JS.

- faster search with the free optimized IP2Location php library (winner of the IP2Location php library optimization contest 2016).

- NEW! Map of ip locations.

web+git: https://tetramatrix.github.io/doxmyipwindowstool/
by eknkc | 2025-05-06 09:40:51+00:00
Haha yep. I'm Turkish and been using US layout keyboards my entire life. Therefore, I do not use the Turkish characters online. I use S for Ş. G for Ğ and it just works, nobody ever complained.

One word is to get bored that's causing issues.

sık - to bore sik - to fuck

So if I write "sikildim" to say "I got bored", it actually becomes "I got fucked".

One way around it to capitalize. SIKILDIM is "I got bored" but now you are yelling. Typing "sıkıldım" is a hassle on a US keyboard though.
by taurath | 2025-05-06 09:41:00+00:00
If you’ve ever considered going on disability, or needed to, you’d be very quickly enlightened. It’s hard. You have to have documentation, you will get denied. Even then the benefits are pretty shit. It’s not a thing that you can just accidently get. There’s a lot of people who are just disabled.

What happens if the parents who should be responsible, aren’t?
by asah | 2025-05-06 09:42:15+00:00
I hear you!

one thing: given that gmail is free includes forwarding and all-but-unlimited storage, I work around these limitations with a (free) new gmail account that I use for notion etc.

(this issue also affects Advanced Protection gmail users, who are often blocked from various integrations... the workaround is to create a gmail account for those and setup bi-directional filtering/forwarding...)
by alembiq | 2025-05-06 09:42:19+00:00
Location: Prague, Czech republic

Remote: CET timezone preferred

Willing to relocate: depends

Technolologies: QA, Leadership, DevOps

Resume/CV: https://www.linkedin.com/in/karelochman/

Email: karel@ochman.info

I've consistently combined hands-on technical work with leadership to drive meaningful change. Although my formal leadership roles span the past eight years, I've been influencing teams and improving products far longer—because true product evolution demands more than passive participation; it requires initiative, ownership, and vision. My background in development, DevOps, testing, and quality has allowed me to deliver strategic and tactical improvements while keeping my hands on the work. I manage Linux servers and adjust code when needed, staying closely connected to current technologies and practices. This blend of experience and engagement has helped me lead happier, more efficient teams and deliver results that matter.
by viraptor | 2025-05-06 09:43:11+00:00
> it sounds like your dad was maybe capable of paying but wanted to freeload.

But it went a step further. He didn't want to pay either way, so the poster was in exactly the same situation as the poor kids.

If we're scared to help people who need help, because there's a small chance that someone else may benefit as well, we've lost as a society. Just raise the taxes and give it to every kid.
by RhysU | 2025-05-06 09:43:18+00:00
> What has happened at a large scale more recently is that bad actors actively feed people factually wrong stories and those are increasingly the only stories they get.

Powerful actors spreading incorrect information to serve their own ends is nothing new. Remember when the consensus was that the Earth was the center of the solar system? And when Galileo was prosecuted for spreading misinformation? That was about 400 years ago.

"Misinformation" implies "It is inconvenient for someone to hold the perspective because it threatens my power". Otherwise, we just call such notions wrong, incorrect, lies, falsehoods, invalid, etc.

"Misinformation" is just as dangerous as "well informed". What we now collectively know as a species was not infrequently once wrong according to some powerful historical consensus.
by rob74 | 2025-05-06 09:44:02+00:00
Yes - the problem is that "i" and "I" are standard ASCII characters, while the dotted I and the dotless i are not. Creating special "Turkish I" and "Turkish i" characters would have been an alternative, but would have had its own issues (e.g. documents where only some "i"s are Turkish and the rest "regular" because different people edited it with different software/settings).
by rcxdude | 2025-05-06 09:44:02+00:00
You can do both, especially given the latter pays dividends. People moan about the US's domination on the world stage because it obviously benefits you, collectively, as a country, substantially. The US gets tremendously wealthy off the power and influence it buys with the way it acts on the world stage (as well as unparalleled safety and security). Which is why it grates and/or is mystifying when you complain about that state of affairs. How you distribute the wealth internally is also mystifying, but for different reasons, and largely unrelated to how you get that wealth in the first place.
by orphea | 2025-05-06 09:44:25+00:00
The problem was that Emine's cell phone was not localized properly for Turkish and did not have the letter <ı>; when it displayed Ramazan's message, it replaced the <ı>s with <i>s.

Does it make sense? Could the phone arbitrarily replace characters? Or could it more likely that the guy typed dotted i's?
by kajecounterhack | 2025-05-06 09:44:59+00:00
> That's exactly what I'm saying would happen. We already have it with Uber Black.

But I'm saying we _don't_ have that for Waymo, and it's very unlikely to happen, for many reasons. A big reason is simply that managing a fleet in heterogeneous fashion as you're describing (different cleaning schedules for the cars) doesn't really make sense IRL. It's a purely imagined scenario on your part.

> Incorrect.

Pray tell how I can pay for a cleaner car when there's only one option, car or no car?

> No, I'm not assuming that.

Then please explain how cars would get dirtier as the service scales up? If today is already seeing the cars at full utilization, barring a cost-cutting measure that determined that cleaning less frequently would be a significant cost savings (which is a big assumption on your part), then we should be seeing roughly how clean the cars will be into perpetuity.

> Again, Uber Black.

Uber Black achieves higher standards for cleaning by farming that out to the people renting out their personal vehicles. The drivers are incentivized to clean the cars more (than UberX drivers) to get more expensive fares.

But again, fleet management companies already do this for _all_ their cars. So for Waymo this is moot.
by tmtvl | 2025-05-06 09:45:55+00:00
Is it? That's weird, I can't find the code for Latin Small Letter Dotted I. There is a Cyrillic dotted I, but that one doesn't have the dot in capitalised form.

What sebstefan is asking for is a Unicode character which is the non-capitalised form of Latin Capital Letter I With Dot Above (U+0130) which always gets capitalised to U+0130 and which U+0130 gets downcased to.
by mufasachan | 2025-05-06 09:46:56+00:00
Same experience, my workflow is to run the container from a podman run command, check it runs correctly, podlet to create a base container file, edit the container file (notably with volume and networks in other quadet file) and done (theorically).

I believe the podman-compose project is still actively maintened and could be a nice alternative for docker-compose. But the podman's interface with systemd is so enjoyable.
by rmonvfer | 2025-05-06 09:47:08+00:00
I very much relate to this feeling (and I haven’t finished the rust book either!). In my case, I do use AI a lot (especially o3 and Sonnet 3.7), not to write code but to help me understand things that would’ve taken me a week, in a matter of hours (the conversational aspect is a game changer for me).
by tsimionescu | 2025-05-06 09:47:21+00:00
Your point that phone numbers and mailing addresses work in much the same way is true - but I don't think these have ever been quite as directly tied to identity as email is on the web.

Traditionally, for anything that's even slightly important, either your physical presence ultimately acted as your identity, or significant legal liability protected the non-physical identity (that is, if a court sends an important letter to you at some address, someone else who moved in to that address faces significant legal penalties if they open that letter).
by elevatortrim | 2025-05-06 09:48:53+00:00
Not sure about this. For this to work, one of these would need to happen:

1. Have two "i" characters on Turkish keyboards, one to use when writing in English, one in Turkish. Sounds difficult to get used to. Always need to be conscious about whether writing an "English i", or a "Turkish i".

2. "i" key is interpreted as English "i" when in English locale, as a special unicode character when in Turkish locale. This would be a nightmare as you would then always have to be conscious of your locale. Writing in English? Switch to English locale. Writing code? Switch to English locale. Writing a Turkish string literal in code? Switch to Turkish, then switch back. It would need to be a constant switching between back and forth even though both are Latin alphabet.
by mettamage | 2025-05-06 09:49:02+00:00
Read the HN guidelines. I didn't downvote you, as I am giving you the benefit of the doubt, but it reads as a sarcastic snarky comment [1].

It's bread, butter and cheese. Not dry bread and cheese. I didn't eat that as a kid though, I hated cheese when I was young.

The quality of the bread varies, depending on the views of the household. The way I grew up everyone favored white bread but me. I always ate brown bread.

Nowadays, I come to the US quite often and it frustrates me that there's almost no supermarket that sells a good loaf of bread. A lot of bread has added sugar and I don't even want to know what other stuff they add to it. I'm not a fan of the bakeries either as the bread they make tastes alright, but not for $8. So whenever I'm in the US, I make my own bread, because even after a first try, it was better [2] (by an American baker. It's not that they can't - it's just that affordable nice bread is not a pervasive thing in the US).

And if you genuinely think it's dry bread and cheese. You're wrong, I know what dry bread tastes like. Done well, it's called toast.

My school lunch was bread with butter and a fried egg.

[1] https://news.ycombinator.com/newsguidelines.html

[2] https://www.youtube.com/watch?v=HdoP33KPYtY&ab_channel=Brian...
by ndepoel | 2025-05-06 09:49:16+00:00
Ahh yes, been there, done that.

Several years ago we had issues with certification of our game on PS4 because the capitalization on Sony's Turkish translation for "wireless controller" was wrong. The problem being that Turkish dotless I. What was the cause? Some years prior we had had issues with internal system strings (read: stringified enums) breaking on certain international PC's because they were being upper/lowercased using locale-specific capitalization rules. As a quick fix, the choice was made then to change the culture info to invariant globally across the entire game. This of course meant that all strings were now being upper/lowercased according to English rules, including user-facing UI strings. Hence Turkish strings mixing up dotted and dotless I's in several places. The solution? We just pre-uppercased that one "wireless controller" term in our localization sheet, because that was the only bit of text Sony cared about. An ugly fix and we really should have gone through the code to properly separate system strings from UI texts, but it got the job done.
by rollcat | 2025-05-06 09:49:34+00:00
YMMV, no warranty, IMHO, etc. Disclaimer: I haven't used k8s in a long while, mostly because I don't really have a good use case for it.

You'd need to slightly rethink rollbacks, express them in terms of always rolling forward. K8s supports snapshots directly (you'd need a CSI driver; https://github.com/topolvm/topolvm, https://github.com/openebs/zfs-localpv, or similar). Restores happen by creating a new PVC (dataSource from a VolumeSnapshot). So in case rollout to version N+1 fails, instead of a rollback to N you'd roll forward to N+2 (which itself would be a copy of N, but referencing the new PVC/PV). You'd still have to script that sequence of actions somehow - perhaps back to Ansible for that? Considering there might be some YAML parsing and templating involved.

Of course this looks (and likely is) much more complicated, so if your use case doesn't justify k8s in the first place, I'd stick to what already works ;)
by vidarh | 2025-05-06 09:49:51+00:00
> As I said, he cared more about ideology. Early returns significantly improve imperative code. They are not necessary in fully functional languages, where you can easily juggle with blocks of logic, but Oberon is not such a language.

His views on it are as much or little ideology as your views on it are. They are rooted in a view of design you clearly don't share. That's fine.

With respect to early returns, I disagree with him too, but I understead why he dislikes them - they do affect reasoning about a piece of code, and Wirth cared deeply about the ability to reason about the code more than about convenience.

You may not agree with that choice, but it's an entirely valid choice.

> It was basically: "my way or you're expelled because I'm the emeritus professor here".

That's extreme hyperbole, and just suggests you haven't read much of ETHZ's research output, which is full of dissertations and papers doing things Wirth didn't want in the standard Oberon. Including plenty of works he was the adviser for.

And given that Oberon-07 wasn't released until nearly a decade after he retired, it's also nonsense.