MurphyA/hacker-news huggingface dataset:
by jasode | 2025-11-26 17:41:54+00:00
>I'm not messaging all the other sellers and suggesting we all raise prices by 10%,

The way competitors legally message each other to suggest a price increase is via the prices themselves.

E.g. an airline wants to raise the price of a ticket from New York to Los Angeles from $500 to $530 -- and they secretly want the other airlines to follow them and raise their prices too.

1) The airline submits the price increase to the global travel reservation system that all airlines can see. All the other airlines have computers constantly monitoring all the other airlines' ticket prices and can instantly adjust prices in response.

2) The airline that wants the price increase waits to see how the other airlines respond. Either (1) the competitor airlines keeps their lower prices to "take market share" -- or -- (2) they also raise their prices to match which "maintains status quo of market share" but all competitors get to take advantage of charging the higher price

3) If the other airlines don't match the higher price, the airline that "proposed" the higher price then rolls it back to $500. All this can happen within a few hours.

That's the way competitors "collude" to raise prices out in the open. The publicly visible prices are the messaging system. The loophole here is that the changing prices must be visible because the potential passengers buying the tickets need to see them too.

The above scenario has been studied by various papers and the government. The prices simultaneously act as both a "cost to buy" and as a "message to cooperate".

Legal "collusion" via price signals is easier in concentrated industries with few competitors (e.g. airlines). It's harder for fragmented markets or markets with hundreds-to-thousands of competitors. E.g. a barbershop wanting to raise the price of haircuts by $5 isn't going to get the hundred other barbershops to also raise their prices by $5.
by WorldMaker | 2025-11-26 17:42:26+00:00
Even the raw storage for graphs doesn't have just one answer: you could store edge lists or you could store adjacency matrixes. Some algorithms work better with one, some work better with the other. You probably don't want to store both because that can be extra memory overhead as well as a locking problem if you need to atomically update both at once. You probably don't want to automatically flip back and forth between representations because that could cause garbage collector churn if not also long breadth or depth searches, and you may not want to encourage manual conversions between data structures either (to avoid providing a performance footgun to your users). So you probably want the edge list Graph type and the adjacency matrix Graph type to look very different, even though (they are trivially convertible they may be expensive to convert as mentioned), and yeah that's the under-the-hood storage mechanism. From there you get into possible exponential explosion as you start to get into the other higher level distinctions between types of graphs (DAGs versus Trees versus cyclic structures and so forth, and all the variations on what a node can be, if edges can be weighted or labeled, etc).
by shagie | 2025-11-26 17:42:31+00:00
More of the background of the project.

The original register was a custom written C program running in DOS. It was getting harder and harder to find C programmers. The consultancy that had part of the maintenance contract with it was also having that difficulty and between raising the rates and deprioritizing the work items because their senior people (the ones who still knew how to sling C and fit it into computers with 4 MB of memory that you couldn't get replacement parts for anymore) were on other (higher paying) contracts.

So the company I worked at made the decision to switch from that program to a new one. They bought and licensed the full source to a Java POS system (and I've seen the same interface at other big retail companies too) and replace all the hardware in all the stores... ballpark 5000 POS systems.

The professional services consultancy was originally brought in (I recall it being underway when I started at there in 2010). They missed deadlines and updates and I'm sure legal got in there with failure to deliver on contract. I think it was late 2011 that the company pulled the top devs from each team and set us to working on making this ready in all stores by October 2012 (side note: tossing two senior devs from four different teams into a new team results in some challenging personality situations). And that's when we (the devs) flipped the schedule around and instead of March 2013 for the cafeteria and surplus store (because they were the odd ones), we were going to get them in place in March of 2012 so that we could have low risk production environments while we worked out issues (so many race conditions and graphical event issues hanging with old school AWT).

---

... personality clash memory... it was on some point of architecture and code and our voices were getting louder. Bullpen work environment, (a bunch of unsaid backstory here) but the director was in the cube on the other side of the bullpen from us. The director "suggested" that we take our discussion to a meeting room... so we packed up a computer (we needed it to talk about code), all of the POS devices that we needed, put it on a cart, pushed the cart down the hall into a free conference room (there were two conference rooms on that floor - no, this wasn't a building designed for development teams) and set up and went back to loudly discussing. However, we didn't schedule or reserve the room... and the director that kicked us out of the bullpen had reserved the room that we had been kicked into shortly after we got there. "We're still discussing the topic, that will probably be another 5-10 minutes from now... and it will take us another 5 minutes pack the computer back up and take it back to the bullpen. Your cube with extra chairs in it should be available for your meeting and it's quiet there now without our discussions going on."
by QuercusMax | 2025-11-26 17:42:44+00:00
Precisely. I don't assume any documentation is accurate unless I've verified it matches the behavior of the code - and I've run into some doozies in my day.

The worst was a custom-built copy protection scheme that was built by a former (?) software cracker who designed it to be difficult for someone of his skills to reverse engineer. It took me a week tracing through the code to understand what it was actually doing so I could extend it to add more options.
by Joel_Mckay | 2025-11-26 17:42:58+00:00
To be blunt: Moores law is now effectively dead, and chasing the monolithic philosophy with lazy monads will eventually limit your options.

Languages like Julia trivially handle conditional parallelism much more cleanly with the broadcast operator, and transparent remote host process instancing over ssh (still needs a lot of work to reach OTP like cluster functionality.)

Much like Go, library resources ported into the native language quietly moves devs away from the same polyglot issues that hit Python.

Best of luck. =3
by lossolo | 2025-11-26 17:42:58+00:00
> Everyone I know who did try testosterone or steroids thought they were doing it the safe way (HCG, PCT, limited cycle length) but became unable to produce enough endogenous testosterone by their 40s even with SERMs.

Then your sample is either very limited or very weird, because I test my testosterone, and my friends who did multiple cycles in the past (10–15+ years ago, and not huge competition level doses) are also within the normal range.
by devsda | 2025-11-26 17:43:19+00:00
> OP didn’t do such a bad job with IT that the campaign failed lol

Some non-tech people tend to think of IT folks as jack of all trades with the ability to fix their faulty printer all the way to hacking email accounts for fun/profit.

I'm sure few of them would have believed that their IT team could have prevented the scandal by some fast & serious typing on the keyboard a.k.a hacking for regular folks :)
by miningape | 2025-11-26 17:43:42+00:00
I'm currently coding a Gameboy (which kinda has a Z80) emulator and it's so much fun! (I'm in my mid-20s for context)

I've never really worked on such a low level, the closest I've gotten before is bytecode - which while satisfying - just isn't as satisfying as having to imagine the binary moving around the CPU and registers (and busses too).

I'm even finding myself looking at computers in a totally different way, it's a similar feeling to learning a declarative, or functional language (coming from a procedural language) - except with this amazing hardware component too.

Hats off to you though, I'm not sure I'd have had the patience to code under those conditions!
by JohnBooty | 2025-11-26 17:44:06+00:00
This was very insightful. It made me think about how "hacker culture" has changed.

I'm middle-aged. 30 years ago, hacker culture as I experienced it was about making cool stuff. It was also about the identity -- hackers were geeks. Intelligent, and a little (or a lot) different from the rest of society.

Generally speaking, hackers could not avoid writing code. Whether it was shell scripts or HTML or Javascript or full-blown 3D graphics engines. To a large extent, coding became the distinguishing feature of "hackers" in terms of identity.

Nearly anybody could install Linux or build a PC, but writing nontrivial code took a much larger level of commitment.

There are legitimate functional and ethical concerns about AI. But I think a lot of "hackers" are in HUGE amounts of denial about how much of their opposition to AI springs from having their identities threatened.
by echelon | 2025-11-26 17:44:08+00:00
Like your comment? j/k :)

I'm using this incident to draw attention to Rust's panic behavior.

Rust could use additional language features to help us write mostly panic-free* code and statically catch even transitive dependencies that might subject us to unnecessary panics.

We've been talking about it on our team and to other Rust folks, and I think it's worth building a proposal around. Rust should have a way to statically guarantee this never happens. Opt-in at first, but eventually the default.

* with the exception of malloc failures, etc.
by hinkley | 2025-11-26 17:44:26+00:00
You’re conflating “knows the system” with benevolent dictator. It’s not the same. It’s down to whether in a planning or brainstorming session, there is anyone who can say that a plan won’t work or if there’s a better one.

Also it doesn’t have to be singular. You need at least one, in case that person leaves or becomes problematic. That dictator doesn’t always remain benevolent and they can hold a project hostage if they don’t like something that everyone else wants.
by nightshift1 | 2025-11-26 17:44:46+00:00
I tried it yesterday by comparing the specs of a few low-budget desktops for my father. It worked well and saved me a lot of time and the hassle of comparing multiple tabs on a PC.

I am a bit worried about the feature where it calls the shops for inventory checking. That's the whole point of having a website. Now we are going to have expensive AI that calls other AI answering machines and no value will be added. Meanwhile, it will become even more difficult to talk to a human when necessary.
by wkat4242 | 2025-11-26 17:44:48+00:00
It is yes! It's great. What I like about FreeBSD is the decoupling of packages and OS. You can have a stable OS version but still have rolling packages. Somehow most Linux distros can't manage that.

I also like that I don't constantly have to learn new stuff like the new ip commands or systemd. It just works. Oh and ZFS on root as a first class citizen is amazing of course.
Show HN: I built an MCP server to connect AI agents to your DWH
by karakanb | 2025-11-26 17:45:34+00:00
Hi all, this is Burak, I am one of the makers of Bruin CLI (https://github.com/bruin-data/bruin). We built an MCP server that allows you to connect your AI agents to your DWH/query engine and make them interact with your data.

A bit of a back story: we started Bruin as an open-source CLI tool that brings together data ingestion, transformation, quality and governance. You can build data pipelines using SQL and Python, ingest data from many sources, run data quality checks and some more stuff, open-source. The goal has been to build a CLI experience that would make humans productive.

After some time, agents popped up, and when we started using them heavily for our own development stuff, it became quite apparent that we might be able to offer similar capabilities for data engineering tasks. Agents can already use CLI tools, and they have the ability to run shell commands, which meant that they could technically use Bruin CLI as well.

Our initial attempts were around building a simple `AGENTS.md` file with a set of instructions on how to use Bruin. It worked fine to a certain extent; however, it came with its own set of problems, primarily around maintenance. Every new feature/flag meant more docs to sync. It also meant the file needed to be distributed somehow to all the users, which would be a manual process.

We then started looking into MCP servers: while they are great to expose remote capabilities, for a CLI tool, it meant that we would have to expose pretty much every command and subcommand we had as new tools. This meant a lot of maintenance work, a lot of duplication, and a large number of tools which bloat the context.

Eventually, we landed on a middle-ground: expose only documentation navigation, not the commands themselves. In that spirit, we ended up with just 3 tools: - `bruin_get_overview` - `bruin_get_docs_tree` - `bruin_get_doc_content`

The agent uses MCP to fetch docs, understand capabilities, and figure out the correct CLI invocation. Then it just runs the actual Bruin CLI in the shell. This means less manual work for us, and making the new features in the CLI automatically available to everyone else.

You can now use Bruin CLI to connect your AI agents, such as Cursor, Claude Code, Codex, or any other agent that supports MCP servers, into your DWH. Given that all of your DWH metadata is in Bruin, your agent will automatically know about all the business metadata necessary.

Here's a quick video of me demoing the tool: https://www.youtube.com/watch?v=604wuKeTP6U

All of this is fully open-source, and you can run it anywhere.

Bruin MCP works out of the box with: - BigQuery - Snowflake - Databricks - Athena - Clickhouse - Synapse - Redshift - Postgres - DuckDB - MySQL

I would love to hear your thoughts and feedback on it, thanks!

https://github.com/bruin-data/bruin
by lvl155 | 2025-11-26 17:45:38+00:00
I don’t think LLM leader is going to come out of this AI race on top. OpenAI is like Yahoo! in my view. They were there in the beginning and led by default. Someone somewhere will be the Google of this era. It won’t be LLM but the next step. Leaps and bounds better than LLM. I also think we won’t use even 1/100th of the energy needs projected right now.
by JohnBooty | 2025-11-26 17:45:48+00:00
we need to create a culture that values craftmanship and dignifies work done by developers.

I don't think that is at ALL at odds with using AI as a coding assistant!

I am not going to tell you I am a coding god, but I have been doing this for nearly 30 years and I feel I'm pretty competent craftsman.

AI has helped me to be a better craftsman. The big picture ideas are mine, but AI has helped immensely with some details.
by stalfie | 2025-11-26 17:45:55+00:00
I think one major lesson of the history of the internet is that very few people actually care about privacy in a holistic, structural way. People do not want their nudes, browsing history and STD results to be seen by their boss, but that desire for privacy does not translate to guarding their information from Google, their boss, or the government. And frankly this is actually quite rational overall, because Google is in fact very unlikely to leak this information to your boss, and if they did it would more likely to result in a legal payday rather than any direct social cost.

Hacker news obviously suffers from severe selection bias in this regard, but for the general public I doubt even repeated security breaches of vibe coded apps will move the needle much on the perception of LLM coded apps, which means that they will still sell, which means that it doesn't matter. I doubt even most people will pick up the connection. And frankly, most security breaches have no major consequences anyway, in the grand scheme of things. Perhaps the public conscioussness will harden a bit when it comes to uploading nudes to "CheckYourBodyFat", but the truly disastrous stuff like bank access is mostly behind 2FA layers already.
by neom | 2025-11-26 17:46:07+00:00
Is there any good consensus on what the deal is with this drug yet? I don't know how to think about GLP-1. In the headlines it seems like every month it's a miracle cure for something new, yet we don't really understand it? But it seems like just generally...everyone, including me, would benefit from being on it...? The whole thing makes me uneasy but I'm not exactly sure why outside of it seems weird to have one drug that is so good at so much.
by small_scombrus | 2025-11-26 17:46:37+00:00
> You can’t be data driven and also blind to the data

"Tickets closed" is an amazing data driven & blind to the data metric. You can have someone closing an insane number of tickets, looking amazing on the KPIs, but no one's measuring "Tickets reopened" or "Tickets created for the same issue a day later".

It's really easy to set up awful KPIs and lose all sight of what is actually happening while having data to show your bosses
by a4isms | 2025-11-26 17:46:41+00:00
Here I am!

I still enjoy writing code like the code in TFA, but these days people seem a lot less interested in code than organizing their agentic LLMs, so I don't have the same incentive to share whatI find interesting. And it would be terrible marketing, like showing up to audition for a job driving F1... In a Jaguar E-Type.

Elegant and beautiful, but that isn't the game any more.
by pbronez | 2025-11-26 17:46:44+00:00
Yeah, same. I get that people worry about Kagi staying profitable and alive. But honestly the T-shirt thing and the hub align with my understanding of their brand: Hard Way. Kagi takes the hard road that nobody else will. They never cheap out. They keep quality really, really high even when they could drive better margins by lowering their standards to follow the herd.

Now, if the company dies because of genuine financial mismanagement, I will be pissed. I rely on Kagi's search and AI offerings. For now, those core offerings keep getting better even with these side quests. For example, their Ki research assistant just left beta:

https://blog.kagi.com/kagi-assistants
by byko3y | 2025-11-26 17:46:47+00:00
>the things that Rust prevents me from handling safely because of its own limitations rather than them being fundamentally unsafe are quite rare, and even with those, they tend to be things that I would be quite likely to mess up in practice if I tried to do them in a language without the same safety rails.

Any language with GC can handle complex links between object, including mutable object. Like Erlang/Elixir, JS, Go, etc. You message implies runtime-less language, but majority of practically employed languages are runtime-full.
by latexr | 2025-11-26 17:46:53+00:00
Article title is “Reality Check: EU Council Chat Control Vote is Not a Retreat, But a Green Light for Indiscriminate Mass Surveillance and the End of Right to Communicate Anonymously”. Submission title is based on a line from the article that the author used for the Mastodon announcement.

https://digitalcourage.social/@echo_pbreyer/1156171618036261...
by exceptione | 2025-11-26 17:47:12+00:00
What are they denying? You can continue using Xwayland for *most* X applications.

I think they explain your options quite well in this blog post: https://blogs.kde.org/2025/11/26/going-all-in-on-a-wayland-f...

As they say, distro's like "AlmaLinux 9 includes the Plasma X11 session and will be supported until sometime in 2032".
Show HN: Trinity – A self-healing static site generator that fixes its own CSS
by fab_space | 2025-11-26 17:47:23+00:00
"Hi HN, I built this because I got tired of LLMs generating broken layouts. Trinity wraps a standard SSG (Jinja2+Tailwind) with a 'Neural Healer'.

It works like this:

It renders the page in a headless browser (Playwright). It detects visual bugs (overflows, overlapping elements). An LSTM model (trained on 10k+ fixes) suggests specific Tailwind classes to repair the DOM.

It's part of a larger experiment in autonomous coding ('The Sentient Stack'), but this tool is standalone.

Code: https://github.com/fabriziosalmi/trinity Tech stack: Python, Playwright, PyTorch.

Would love your feedback on the healing logic."
by vladms | 2025-11-26 17:47:29+00:00
Each time someone says "we" without asking me I find it at least insulting. With this mindset the next step might be to tell me what I need, without considering my opinion.

Yes, the current system seems flawed, but is the best we came up with and is not fixed either, it is slowly evolving.

Yes, some resources are finite (energy from the sun seems quite plenty though), but don't think we will be ever able to define "fair". I would be glad with "do not destroy something completely and irremediably".
by trinsic2 | 2025-11-26 17:47:36+00:00
Man, there is something true in what he is saying though. Can't you see it? I like the idea of some of this technology. I think its cool you can use natural language to create things. I think there is real potential in using these tools in certain context, but the way in which these tools got introduced, no transparency, how its being used to shape thought, the over-reliance on it and how its use to take away our humanity is a real concern.

If this tech was designed in an open way and not put under paywalls and used to develop models that are being used to take away peoples power, maybe I'd think differently. But right now its being promoted by the worst of the worst, and nobody is talking about that.
by tptacek | 2025-11-26 17:48:27+00:00
The sentence you quote says Realpage used nonpublic information to facilitate the setting of prices, but does not say that the sharing of nonpublic information is itself price setting. You can do lots of things to set prices; the key feature again is a commitment against defection.

I'm not sticking up for Realpage; I don't know enough about how it works.
by aurareturn | 2025-11-26 17:48:34+00:00
OpenAI has branding power, a clear product focused mindset, focused attention, and moves faster than Google and Meta. Nearly 1 billion users in 3 years is no joke.

We're on Hacker News. Y Combinator literally teaches their companies that they can beat incumbents using focus and speed.

My bet is on OpenAI. When they IPO, I can easily see them with $1 trillion in valuation and raise the a record amount of money in an IPO.

If Meta and Google don't see OpenAI and LLMs as an existential threat, they wouldn't invest so much. I think AI has that potential to completely disrupt Google and Meta because it fundamentally changes the way people behave. It's a paradigm shift. It isn't just playing the same game.
by standyro | 2025-11-26 17:48:38+00:00
Slashdot was somewhere between a well curated tech subreddit and Hacker News.

It had its own in-jokes like: This is finally "the year of the Linux Desktop" and Jonathan "CowboyNeal" Pater, the site's moderator who often posted polls and commented.

In the late 2000s, most migrated their Slashdot reflex to Digg - and then eventually the YC-backed Reddit when there was a disastrous rollout of Digg v4 (in 2010)

Reddit then became less of a technology-focused site as it gained popularity, and HN became the defacto "tech news" aggregator with a well rounded comment section that resembled the early days of Slashdot, Digg, and Reddit.