MurphyA/hacker-news huggingface dataset:
by rbanffy | 2025-04-27 15:05:15+00:00
> your neighbours are waiting for you to blink before destroying your entire society.

The entire way the State was established was an unfortunate choice. Neglecting local politics and disrespecting the rights of the people already occupying the land was obviously going to lead to conflict and long term instability. While it’s impossible to undo the sins of the past, we can at least think of solutions to move forward without causing more harm.
by kvalrani | 2025-04-27 15:06:10+00:00
Unlike Gemini, Rplyr lets you create personal agents with pre-defined prompts to automate repetitive email tasks.

I often repeat the same tasks over email: cleaning up meeting notes, summarizing articles, drafting attendee bios, company profiles, etc. With Rplyr, I can create agents where I define the prompt and template once. Then I just send raw notes, names, or company names to my dedicated agents and get my ideal output back instantly — no need to retype instructions each time.

Longer-term, the goal is for agents to also handle outputs beyond email text, like generating slides, spreadsheets, and running workflows across other tools.

Curious to hear your thoughts
by hagbard_c | 2025-04-27 15:06:38+00:00
Ooglr, Gnurgh and Borrr are three cavemen, each of them setting out on their path towards success.

Ooglr gets himself a club, hunts down a few ratty creatures and thinks "that'll do for today, it is nice weather and I'd rather be oogling the cave girls than chasing those stupid ratty creatures so now that I have enough for tonight I'll stop chasing and start oogling". The next day he chases down a few more ratty creatures, calls it a day once he got himself a few and continued oogling. For some reason those girls did not seem to return his longing gaze, could they not recognise him for the successful hunter-of-ratty-creatures that he was?

Gnurgh sees things differently. He finds himself a good-sized elk shoolder blade and starts digging a pit. When the pit is deep enough he covers it with branches and leaves and waits until his intended target - an aurochs - stumbles into the pit. You see, he scouted out aurochs trails until he found a spot where the ground looked good for digging a pit while the beasts could not avoid the spot where he intended to dig his pit. He also prepared a number of spears to dispatch whatever happened to stumble into his pit as well as some flint knives to cut his prey up into slivers. Did I mention the drying racks he made to dry the meat? Well, now I did. Knowing that meat spoils quite fast he started cutting up the oversized cow and worked through the night and the next night upon which he had himself a supply of meat enough to feed a family through the winter (it was a big aurochs). He had placed one of his drying racks next to his fire pit and found out the meat from that rack was more tasty than that from the racks further away from the fire and made a mental note to repeat that the next time with more racks. All the time Gnurgh was hard at work he was watched by some comely cave girls and before long he did have a family to feed through the winter.

Borrr did not like chasing things with clubs. He did not like digging pits either. He half-heartedly tried to catch himself a fish in the stream but the water was cold and the fish slippery so it got away and was probably laughing at him somewhere. Besides, why would he bother? He could just go to one of Gnurgh's drying racks and pilfer some meat? Then, once sated he'd lie in wait for one of those girls.

Is wealth inequality really inevitable?
by ailun | 2025-04-27 15:06:56+00:00
The person you're replying to is ridiculous and ignorant. But also many of the creators you're talking about are paid by the Chinese government. If they're living in China on an ongoing basis creating content it's almost certain. Even if they're not paid, you have to be careful what you post if you're building a life in China.

That's not to say that they are completely wrong or lying. China is safer than the US in almost every way, for everyone. But racism manifests differently there. I was in the country through the entire Covid pandemic. Ask the African community in Guangzhou how they were treated.
by rbanffy | 2025-04-27 15:07:25+00:00
> Feels like it doesn’t cost much to become a United States level nuclear superpower

Any country attempting to build a military nuclear capability will need to invest in manufacturing fuel from mining to highly enriched forms suitable for weapons. This is not something easy to hide, as Iran found out the hard way a couple times.

OTOH, nobody is going to invade North Korea now.
by throwaway743 | 2025-04-27 15:07:36+00:00
You should definitely go. I haven't been to Chongqing myself, but I spent a month in Beijing, two weeks in Shanghai, and a week in Baotou, and each place offered a completely different experience.

My personal favorite was Beijing. Honestly, it felt like stepping into another world, with a vibe unlike anywhere else I have been, even compared to Shanghai or other East Asian cities like Tokyo. The people were incredibly warm and friendly, the street food was outstanding, the environment felt almost otherworldly, and the historical sites were phenomenal. Getting lost in the hutongs felt like its own adventure, the punk culture was alive and thriving, and the art district was the best I have experienced (even coming from New York City). If you skate, it's a paradise with spots everywhere you turn. Public transportation and taxis were also super affordable, clean, and efficient.

Shanghai was cool too, but it felt much more familiar. At its core, it reminded me of Manhattan, just more intense. The people there also gave off a similar vibe to New Yorkers. If you are into electronics, it's a great place to explore, although I hear Shenzhen is really the true hub for that.

Baotou felt a lot more desolate but also very peaceful. I spent most of my time there on a farm and hiking around the Gobi Desert though.

One thing to be aware of is the air quality in Beijing and Shanghai. On bad days, you would come back with black snot. I was a smoker at the time, which did not help, but even non-smokers experienced it. There always seemed to be random particles or even feathers floating in the air lol.

As someone who skates, I found the police and security surprisingly relaxed. They would usually let you skate for a while before politely asking you to move along. The only unsettling thing I witnessed was a group of officers with SMGs escorting someone out of Tsinghua University.

The saddest thing I saw was the desperate poverty on the outskirts of Beijing. There were large piles of trash, open sewage, and pollution. At one point, a concerned local pulled over and told us to turn around because of violent protests between farmers and the government up ahead. The outskirts of Shanghai showed similar poverty, though without the protests.

That said, aside from the outskirts and days of bad air quality, all three cities were incredibly clean, especially compared to New York.

This was all about 15 years ago, so I imagine a lot has changed since then.

Still, I would absolutely recommend going. If you can, spend time in places that feel unfamiliar, especially Beijing. It's an experience you will never forget.
by JoshTriplett | 2025-04-27 15:07:59+00:00
> I feel like my biggest struggle is simply how hard (tedious?) it is to properly work with generics and some more complex applications of traits. Any time I am working with (especially writing, somehow reading is easier) these, I always take an ungodly amount of time to do anything productive.

> Maybe I overuse generics, maybe I rely on traits too much, maybe I am trying to abstract stuff away too much.

Is this related to the problem where, if you want to put a generic in a data structure (e.g. an implementation of `Write`), you find yourself propagating a generic bound up an entire hierarchy of data structures and functions using those structures?

Asking because one thing that's common amongst Rust developers is a bit of an aversion to using `dyn Trait` types, and using a `Box<dyn Write>` (for instance) in the right place can wildly simplify your program.

> But sometimes, it's just too much effort to do stuff, and it feels like I could be getting away with less.

The next times you find this feeling arising, please feel free to reach out, if you'd like; I would genuinely love to hear about it. You can reach me by DM on the Rust Zulip, or by the email in my profile.

> Another thing is that C, for some weird reason, always feels "lower level" than Rust, and seeing it gives me some sort of weird satisfaction that Rust does not. Maybe it's just a greener grass syndrome, but wanted to mention it nonetheless.

I was originally a C developer, and I can sympathize. I don't tend to crave that "lower level" feeling often, but for me, there was something satisfying about C in the old DOS days, where you could make a pointer to video memory and scribble on it.
by wduquette | 2025-04-27 15:08:40+00:00
OO is absolutely the wrong paradigm for interactive fiction. Writing a text adventure has been my favorite way to experiment with a new language for decades now, and I’ve gone down the OO rabbit hole too many times. For this use case, you want something more like an ECS, so that a single entity can be more than one kind of thing at the same time. Consider a talking robotic vehicle. It is an object in the world: the player can interact with it from the outside. It is a room, with contents: the player can be inside it. It is an NPC: the player can speak with it. Trying to accommodate that in an OO inheritance hierarchy has always tied my code—and brain—in knots. An ECS-like architecture can handle it easily.
by stackskipton | 2025-04-27 15:08:43+00:00
I worked as Ops person for a company that was database per user and that's we did. Every database had table with its current schema. On login, that current schema would be checked, if it was not up to date, RabbitMQ message was sent and database schema updater would update their database. User would get a screen saying "Updating to latest version" and it was just checking every 15 seconds to see if schema field updated. Most of time, it was done in less than 15 seconds.

For more important customers, you could always preemptively run their database schemas updates for them so they didn't see update screen.
by germinalphrase | 2025-04-27 15:08:51+00:00
“‘we happened to become a community and build around the growing desires of our children and our own’ is something you only hear on garden plots, even though on the country side everywhere, people are now third and fourth generation heirs.”

Meanwhile, in the US, small towns across the country are greying and dying out as wealth and opportunity are increasingly concentrated in urban areas.
by wkat4242 | 2025-04-27 15:11:05+00:00
True and I understand the caution considering Oracle is involved which are an awful company to do deal with (and their takeover of Sun was a disaster).

But really, this is a concern for distros. Not for end users. Yet many of the Linux users I speak to are somehow worried about this. Most can't even describe the provisions of the GPL so I don't really know what that's about. Just something they picked up, I guess.
by gruez | 2025-04-27 15:11:06+00:00
>Like l said, I doubt he experientially knows what he’s talking about.

What does that even mean? You can't defund USAID without yourself first going on a trip to Africa to dig a well?

>Or he means what he says and expresses the desire to paint empathy in a bad light and by that continue to dehumanize the other to justify violence.

How did you go from "so much empathy that you actually suicide yourself" to "dehumanize the other to justify violence"? Presumably he's talking about refugees and foreign countries, but there's a pretty wide gulf between putting the interests of your own polity ahead of others, and "dehumanize the other to justify violence".

>Interesting that you talk about “thoughts and prayers“. I am talking about feelings, the foundation of empathy.

I doubt Musk is upset all the people tweeting prayer emojis whenever a natural disaster hits a foreign country, when he's talking about "we've got civilizational suicidal empathy going on".
by 1270018080 | 2025-04-27 15:11:32+00:00
In this context, the “business” is… housing and infrastructure for people to live in and use?

And don’t forget the bigger picture. Businesses are jobs. When a country makes it so hostile for business that most can’t even operate there, that’s wages and tax revenue lost.

The above is how Poland ends up with average apartments 8x the average wage.

I don’t even want to get into the issues with prioritizing cars above people. That’s a whole other topic outside of this.
by yowzadave | 2025-04-27 15:11:45+00:00
This is what I do—it can even be a detailed slack message. I start writing the message with the goal of asking for some guidance, but in the process of carefully outlining the problem and what I’ve already attempted (in order to respect the time of my colleague) I usually arrive at the correct solution. I then delete the email without ever needing to send it.
by qgin | 2025-04-27 15:13:52+00:00
Emergent capabilities have been one of the wildest developments in software. For most traditional programmers you learn quickly and with great pain that the computer only does what you explicitly program it to do, no more, no less, and unintended behavior is a bug (and if you’re lucky, an accidental feature).

But the idea that entire abilities just emerge from scale… I still have a hard time accepting it.
by gus_massa | 2025-04-27 15:13:56+00:00
Assumimg each warhead has 5kg of plutonium and each side launches 3500, that's 35 tones of plutonium.

The estimation is that the sea has 4E9 tones of disolved uranium.

I'd better not try, but there is already a lot of natural radioactive materialas in the sea.

---

Acording to a ramdon Reddit comment https://www.reddit.com/r/askscience/comments/96oprs/comment/... a core of a warhead in your hand gives 0.5S.

That is like 5E6 bananas, that is like 3E3 tones of bananas.

Assuming 3500 warheads on each side, thats line 2E7 tones of bananas.

The anual production of bananas is 8E7 tones of bananas per year. So dropping all the warheads in the see is like dropping 3 months of the banana production.

---

Anyway, most of the radioactivity of bananas is due to potasium, that is very soluble so it goes to the pee that goes to the river that goes to the sea. So it's not necesary to sink the ships, just eat the bananas and wait.

---

Anyway, potasium is very soluble and does not accumulate too much in animals and plants. I'm bot sure about plutonium.
by anthk | 2025-04-27 15:15:06+00:00
Sorry but Inform6, which itself is a distant cousin on methodology against ZIL and ZIL itself to Lisp, it's far better than CL for these kind of games.

The English (and Spanish library -grammar, object and token translations- with INFSP6) it's something else. Among Inform Beginners' Guide, with DM4.pdf you can set anything, even new grammars, or a Tetris, if you want to dwell into low-level Inform6 functions.

Inform6 gives you literal game objects and attributes for free. The most literal OOP language ever. And the generated ZMachine games/ROMs will run from a m68k Amiga to an Iphone.
Show HN: Logchef – Schema-agnostic log viewer for ClickHouse
by mr-karan | 2025-04-27 15:15:40+00:00
Hey HN! I’m Karan, creator of Logchef (https://logchef.app), an open-source log viewer built specifically for exploring logs stored in ClickHouse.

This tool grew directly out of my $day job managing massive log volumes. Like many orgs, we migrated our log workloads to ClickHouse for its performance, but found the ecosystem lacked dedicated UI tooling for actually browsing and analyzing those logs effectively.

We were using Metabase, and while great for general BI, it wasn't designed for log exploration workflows. Common pain points included:

- Clunky Ad-hoc Querying: Writing/modifying raw ClickHouse SQL for quick checks was slow and error-prone, especially during incidents. - Disconnect Between Viz & Raw Logs: Visualizing trends (like error counts) then drilling down to the specific raw logs often required separate, complex queries and wrestling with row limits. The intuitive "slice-and-dice" was missing. - UI Friction: Simple things like selecting precise time ranges ("last 90 minutes"), easily viewing surrounding log context, or dealing with truncated columns added unnecessary friction. Debugging sessions were taking longer than they should. So, over the last 3-4 months, I built Logchef to scratch this itch.

Logchef's Core Ideas:

- Purpose-Built for ClickHouse Logs: Designed from the ground up for the specific task of log exploration on top of ClickHouse, focusing on speed and intuitive workflows. - Schema-Agnostic: Logchef doesn't force OTEL or any other schema. Connect it directly to your existing ClickHouse log tables (it just needs a timestamp column). Bring your own schema! - Focus on Viewing/Querying: Logchef intentionally doesn't handle log collection/ingestion. It complements great tools like Vector, Fluentbit, etc., by focusing purely on the exploration layer once data is in ClickHouse. - Simple Search Syntax: Includes a simple query syntax (e.g., `status=200 and path~"/api/"`) that translates to efficient ClickHouse SQL behind the scenes, integrated with the Monaco editor.

Tech Stack: Go backend, SQLite for metadata, Vue.js + shadcn/ui + Tailwind CSS frontend.

You can try a live public demo here: https://demo.logchef.app (It's pre-populated with sample data using Vector, so you can dive right in. Uses Dex for OIDC auth - creds are on the login page).

What's Next & Getting Involved:

Logchef is already used internally at Zerodha, and I'm driving towards v1.0 this year. The roadmap includes features like Alerting, Live Tail Logs, and Enhanced Dashboarding. It's open source (AGPLv3), and I'd love to get more eyes on it and build a community.

Check out the repo: https://github.com/mr-karan/logchef

I’d love to hear your feedback, whether positive or negative. Please open issues on GitHub with suggestions or bug reports!

Thanks so much, HN!
by tonymet | 2025-04-27 15:15:49+00:00
I agree with this as well ( I wrote a critical comment above). I’ve had the most enjoyment fixing typography & typos (aka copy editing). It feels more like a casual (video) game that way.

Some of my edits to technical articles were well received.

You’re right it’s good to highlight the good and bad, but given the amount of goodwill that was burned , the bad did outweigh the good for me.
by pron | 2025-04-27 15:15:50+00:00
> You messed up writing safe to unsafe interface (and forgot to sanitize your binary afterwards).

That is the definition of a language not being memory-safe. Memory-safety in the language means a guarantee that the resulting program is memory safe, and that you could not mess it up even if you tried.

Taking that to the extreme, it's like saying that a C program isn't memory safe only if you mess up and have UB in your program, something that C program must not have. But C is not a memory safe language precisely because the language doesn't guarantee that. My point is that there's a spectrum here, the goal isn't memory-safety in the language but in the resulting program, and that is usually achieved by some combination of sound guarantees in the language and some care in the code. Of course, languages differ in that balance.
by esafak | 2025-04-27 15:16:00+00:00
The things you're talking about usually don't live in the email, they are mentioned in them. Are you going to reach out to their sources, and somehow edit them there?

Also, having to email rplyr to take action is a bad UX compared with interacting with Gemini and getting live feedback. You'd have to reliably add big value to overcome that. I'm not an ideal user.
by dreghgh | 2025-04-27 15:16:14+00:00
> A full-time career consists of 80,000 hours, or 10,000 workdays, or 2,000 workweeks. How you spend that time is one of the most important moral decisions of your life.

This just seems like a confusion to me. My job is the time I spend getting money to pay for the things I need to live. By definition, the work I do then is of value to someone paying me, but not to me. The rest of my time I spend doing things which I can choose, including things I think are a positive contribution to the world.

I could make sense of arguments such as:

1. You should consume vastly less, so that you spend less time earning money and more time contributing to improving the world.

2. Society should be organised differently so that people have to work less and can contribute as they see best in their increased non-paid-work time.

3. You should spend a lower proportion of your free time doing things that benefit yourself and more doing things which benefit the world.

But "you should spend the time you dedicate to getting food, clothes, energy and shelter to contributing to good causes?" Doesn't really make sense.
by bradly | 2025-04-27 15:16:19+00:00
> why don't we have it more in our lives?

That is up to you. I have it in my life. Lots of others do to. Most of us here are fairly privileged and get to choose how we spend multiple hours each day.

And young kids will emulate their parents. Want your kids to read? Read. Want you kids to go outside? Go outside. Want your kids to make art? Make art.
by spcebar | 2025-04-27 15:16:48+00:00
I had the exact same experience hosting my own text adventure on a Telnet server! Endless bots trying to log into the "press 1 to start, press 2 to load" screen. My secret dream was that a bot would write some weird sequence of commands and accidentally play through my game, though we never got there. Telnet is the lingua franca of insecure IoT devices, so it's not surprising (though sad) that any FTP server will immediately become a juicy target for bots. Wrote a blog post about it here, of anyone's interested. https://benergize.com/2020/09/06/some-people-hate-it-oldscho...
by klibertp | 2025-04-27 15:17:02+00:00
See this demo: https://smap.curry-lang.org/smap.cgi?12 - it's described better. Notice, on the left, a drop-down menu showing "PACKS 3.8 /one-value" -> switch this to "/all-values".

The non-determinism comes from `ndinsert` - you'll notice that both clauses can match the same arguments. Normally in such a situation, the first clause will be selected (in Haskell or Erlang, for example). In logic languages, after the first clause matches, the system asks if you want to continue (in the REPL) or automatically calls the next matching clause (/all-values). Now, the second clause is recursive, which again can match either of the clauses. The system will call both, again, providing multiple answers.

If you replace `main = ...` in the example with

main = ndinsert 42 [1, 2, 3]

and select "/all-values" in the drop down, the result will be:

[1,2,3,42] [1,2,42,3] [1,42,2,3] [42,1,2,3]

You can see that the system does a depth-first search, so it's not random. This nondeterminism bubbles up to other predicates, so things that use `ndinsert` will also offer multiple solutions.