MurphyA/hacker-news huggingface dataset:
by reaperducer | 2025-05-30 20:37:57+00:00
Every time I see someone on HN crowing about how great so-called "vibe" coding is, I can't help by think they must be doing the lowest, most basic types of coding.

I don't need AI to help me code. What I need AI to do is help me figure out new coding solutions. But all AI seems able to do is regurgitate things that other people have already done that it's ingested from the internet.

I'll ask AI how to do abc, within xyz parameters, with def available and ghi constraints. I typically get back one of two things:

1. A list of 20 steps to achieve abc that somewhere around the middle has a step that's the equivalent of "Then magic happens" or two to three steps that are entirely unrelated to one other or the project at hand.

2. A list of what should be 20 steps that suddenly ends at step 7, leaving the problem only half done.

Most frustrating is when the "AI" says to use $tool/$library, but $tool/$library is not available on the specified platform, or hasn't been updated since 2011 and no longer works. When I tell the AI this, it always responds with, "You are right, that tool is no longer available. Here's a list of even more broken steps you can take to work around it."

So far, for my coding needs, AI seems only able to regurgitate what's already been done and published by others. That's great, but there are search engines for that. I have novel problems, and until AI can actually live up to the "I" part of its name, it is worthless to me.
by Maxatar | 2025-05-30 20:38:05+00:00
This isn't pedantry, if you're going to talk about how specific tools work then you need to use the actual terminology that the tools themselves use or else you will confuse yourself and anyone you talk to about them. If we were discussing general concepts about thread safety then sure we can be loose about our words, but if we're talking about a specific tool used for a specific programming language then we should make sure we are using the correct terminology, if only to signal that we have the proper domain knowledge to speak about the subject.

>Feel free to mentally rewrite my comment with whatever preferred terminology you feel would get my points across.

If I rewrite your comment to use data race, then your comment is plainly incorrect since the supporting example you give is not a data race but a race condition.

If I rewrite your comment to use race condition, then your comment is also incorrect since TSAN doesn't detect race conditions in general and doesn't claim to, it detects data races.

So what exactly am I supposed to do in order to make sense of your post?

The idea that you'd talk about the pros and cons of a tool like TSAN without knowing the difference between a race condition and a data race is kind of absurd. That you'd claim my clarification of these terms for the sake of better understanding your point is a form of pedantry is sheer hubris.
by adgjlsfhk1 | 2025-05-30 20:38:31+00:00
IMO this is more a sign of complete dysfunction at Intel. They definitely could have made avx512 instructions trigger a switch to p-cores, and honestly probably could have supported them completely (if slightly slowly) by splitting the same way AMD does on Zen4 and Zen5 C cores. The fact that they shipped P cores and E cores that had different assembly sets is what you get when you have separate teams competing with each other rather than working together to make a good product.
by bell-cot | 2025-05-30 20:38:35+00:00
> Sure, one way to appear productive is to actually produce. But that's not the only way.

It depends.

If you're in a "real-world" job - framing houses, stocking shelves, flying airplanes - then actually producing is just about the only way.

At the other end of the spectrum are "bullshit jobs" - where actual productivity is impossible, or could get you into hot water.
by vlovich123 | 2025-05-30 20:39:30+00:00
> Two threads writing a value to the same memory location (even atomically) is usually a data race in the CS/algorithm sense (due to the lack of synchronization), but not the C++ sense

Not only are you incorrect, it’s even worse than you might think. Unsynchronized access to data in c++ is not only a data race, it’s explicitly undefined behavior and the compiler can choose to do whatever in response of an observed data race (which you are promising it isn’t possible by using the language).

You are also misinformed about the efficacy of TSAN. Even in TSAN you have to run it in a loop - if TSAN never observes the specific execution order in a race it’ll remain silent. This isn’t a theoretical problem but a very real one you must deeply understand if you rely on these tools. I recall a bug in libc++ with condition_variable and reproducing it required running the repro case in a tight loop like a hundred times to get even one report. And when you fixed it, how long would you run to have confidence it was actually fixed?

And yes, race conditions are an even broader class of problems that no tool other than formal verification or DST can help with. Hypothesis testing can help mildly but really you want at least DST to probabilistically search the space to find the race conditions (and DST’s main weakness aside from the challenge of searching a combinatorial explosion of states is that it still relies on you to provide test coverage and expectations in the first place that the race condition might violate)
by maxgrinev | 2025-05-30 20:39:32+00:00
Great question! Rate limiting and concurrency are absolutely critical for production API integrations. Here's how Sequor handles these challenges: Rate Limiting:

* Built-in rate limiting controls at the source level (requests per second/minute/hour): each http_request operations refers to an http source defined separately * Automatic backoff and retry logic with delays * There is a option for per-endpoint rate limit configuration since different API calls can have different limits * Because it is at the source level, it works properly even for parallel requests to the same source.

The key idea is that rate limits are handled by the engine - no need to handle it explicitely by the user.

Concurrency is explicit by the user: * Inter-operation parallelism is activated by adding begin_parallel_block and end_parallel_block - between these two operations all the operations are executed at once in parallel * Intra-operation parallelism: many operations have parameters to partition input data and run in parallel on partitions. For example, http_request takes an input table that contains data to be updated via API and you can partition the input table by key columns into specified number of partitions.

Thanks for the Steampipe reference! That's a really interesting approach - exposing APIs as Postgres tables is clever, and I'm definitely going to play with it.
by e-master | 2025-05-30 20:39:34+00:00
A bit of off topic, but recently I started learning F# because my new team at work uses it heavily, and even though I love writing in C# and even though the latest C# features are really nice (especially love patter matching), I wish now C# didn’t have the curly braces and semicolons at all, and used instead indentation based grouping like F# and Python does. That is practically all I wish I had in C#… and discriminated unions, but let’s be honest, what are the chances of that happening? ;)
by const_cast | 2025-05-30 20:39:47+00:00
> but significant whitespace makes for excellent syntax with no downsides.

Biggest downside: copying and pasting code breaks in a lot of apps.

Jira, Teams, and probably some others, eat whitespace for breakfast. So if a coworker gives me a code snippet they have to manually edit it (often not even possible) OR I have to, or it won't even run. And since the whitespace is significant, it can't be auto formatted.

Whereas with C# you can copy the most fucked up snippet, put it in your editor and boom - auto-formatted and compiles.
by achierius | 2025-05-30 20:40:17+00:00
The problem is your timeline: in actuality, the nobility of Western Europe lost their independent armies by the 15th century, solidly by the 16th, and thereafter held on to a military role only through participation (as officers) in the state-run standing armies that developed thereafter. Yet for centuries they held on to power: in France, until the revolution, and in Britain, until well into the 19th century. Great read on the topic: https://projects.panickssery.com/docs/allen-2009-a_theory_of...

"Living off of the rent of their estates" was enough to remain in control of the state for centuries. Only the birth of capitalism and thereafter the industrial revolution allowed for other actors -- the bourgeoisie -- to overtake the aristocrats economically.
by sedatk | 2025-05-30 20:40:19+00:00
Never heard of that syntax but it falls short on several fronts like unnamed or not-needed-to-be-named parameters. It's very easy to be confused by existence or lack of spaces in "help= cmd" too; am I assigning a variable or running a command? Not to mention that if you have an environment variable that clashes with an argument, it can have catastrophic results. I'm glad that it hasn't caught on.

On a similar note, I remember CP/M 3.0 had square bracket syntax for options like `DIR [WIDE] [ATTR=ANY]`. I think that one was probably the most intuitive one, although may not be the easiest to type. But DOS had already caught on with forward slash parameter prefixes which it also got from pre-bracket CP/M.
by UncleEntity | 2025-05-30 20:40:53+00:00
Just a little nitpick but using Py_BuildValue is much better to generate PyObjects from C if you are doing more than one of them instead of populating a list and converting it to a tuple to pass to the python function.

My general rule (when doing the opposite of passing C values to python as part of an extension) is to use the dedicated function, like PyLong_FromLong, when there is a single return and Py_BuildValue (with its format string for automagic conversion) when the function returns a tuple.

Oh, and if you are checking your return values from python (you are, right?) using Py_XDECREF isn't all that good of an idea since it will mask some flawed logic. I pretty much only use it when a PyObject pointer could validly be NULL (like with an optional function argument) and I'm cleaning up right before throwing an exception. Tracking python reference counts is a whole blog post in itself since some functions steal references and others don't and if you get it wrong you can easily crash the interpreter and/or create memory leaks.
Show HN: Hackertuah – I made a Hacker News CLI in Rust
by program247365 | 2025-05-30 20:41:01+00:00
You may have seen this earlier with it's initial release: https://news.ycombinator.com/item?id=42056334

Now new features:

Instant search/filter: Press / or use the command palette to filter stories as you type Command Palette: Press Ctrl+K to access all commands, including search, section switching, and more Options menu for each story (summarize, open, close) Section switching: Top, Ask, Show, Jobs Easy install & run with Cargo

Feedback, comments, feature requests welcome.
by Multiplayer | 2025-05-30 20:41:04+00:00
I think there are a lot of great things about Mercury - I've used them for a few companies and think they are leading the way on an innovative feature set. It's very easy to create unlimited debit cards and limit them in a variety of ways to name just one small feature. Very handy.

That said, they lost a $250,000 incoming wire critical to my business and I couldn't get a hold of anyone until I started tweeting about it a week later and the CEO responded. The money showed up with no explanation, ever. We stopped using them for critical money flows after that.
by meheleventyone | 2025-05-30 20:41:09+00:00
Far from being hard to understand Zionists in this sense is not all Jews but those that support the actions of Israel in the latest conflict because of the impact on the Palestinian civilian population. I agree there is a lot of equivocation in that article though but it mostly seems to be from people that wish to soft-soap the on-going war crimes Israel is committing rather than anyone genuinely being confused by the term. Basically one side is saying 'hey we don't want people that in our eyes support genocide taking part' and the other side is ignoring that and saying 'uWu we just want a Jewish state to exists but don't look at what the only extant state is actually doing'.
by leeroihe | 2025-05-30 20:41:39+00:00
The best heuristic is what people are realizing happened with uncheck "skilled" immigration in places like canada (and soon the U.S.). Everyone was sold that we "need these workers" because nobody was willing to work and that they added to GDP. When in reality, there's now significant evidence that all these new arrivals did was put a net drain on welfare, devalue the labor of endemic citizens (regardless of race - in many cases affecting endemic minorities MORE) and in the end, just reduced cost while degrading companies who did this.

We will wake up in 5 yrs to find we replaced people for a dependence on a handful of companies that serve llms and make inference chips. Its beyond dystopian.
by nucleardog | 2025-05-30 20:41:48+00:00
> I think the "They might 'gotcha' me and then cancel me as a [racist/sexist/bigot/etc]" fear is overblown

Even if someone films you saying something, unless it's something that's offensive to enough people for it getting out to actually impact your life... what are they going to do with it? Real life is not infested by these hyper-politically-correct boogeymen people seem to fear. Nobody really cares.

Don't go around saying stuff that would disgust your grandma/boss/etc in such a way that they'd feel the need to distance themselves from you, and what power does anyone really hold here?

The only way I can really take this as a legitimate worry is someone asking for a space where they can say overtly [racist/sexist/bigoted/etc] things without consequence in which case... yeah, there might be consequences. But then at least be honest and just say "I want to start a racism club." instead of trying to convince us all the boogeyman is real.

And hell, even if someone catches you calling an autistic 5 year old black kid racist names... just start a GiveSendGo and apparently people will just give you almost a million dollars for your trouble.
by d3Xt3r | 2025-05-30 20:41:58+00:00
The author makes a really good point. I always felt that spending time learning the Nix language would be a complete waste of time (for me), which is why I never ventured into using it (although I do use the Lix[1] package manager, which is fantastic).

Meanwhile, I learnt a ton of transferable skills when I forked Bazzite and customised the Containerfile, as well by simply _using_ Bazzite for everyday/productivity stuff, since you end up making heavy use of containers. All of this directly helped me at work, as I used the same concepts to get rid of some of our traditional VMs and switch to OCI containers and related tooling. And the fact that we use Red Hat at work also helped, since the uBlue project uses Fedora. So yeah, both what I've been doing at work and home, have been benefiting each other, which is awesome.

And this is all thanks to me wanting to build the perfect gaming+productivity machine... once again, I find my gaming ventures leading to career growth—just like the time I accidentally learnt MS-DOS because I wanted to play Prince of Persia and Dangerous Dave on my cousin's 286 while he wasn't around.

[1] https://lix.systems/
by hagbard_c | 2025-05-30 20:42:22+00:00
Had free software existed in the 50's this would probably have been the case but nowadays free software is seen as the free (in beer as well as speech) alternative to products from those same companies which like to push all sorts of politicised drivel which the typical American right-winger is outright allergic to. When 'big tech' is in cahoots with the "democratic" party and allows their products to be used to push "democratic" stratagems those products and companies become tainted in the eyes of those who oppose that party and its policies. It is a bit like that Star Wars quote about someone squeezing too hard which makes star systems slip from his grip.
by PaulHoule | 2025-05-30 20:42:34+00:00
No, I appreciate his detail orientation. Wish I’d shown him my talk before I went to NYC.

I find myself irritated by

https://www.fastcompany.com/91324550/kerning-on-pope-francis...

like Italy is hotbed of art and culture and one reason you go to a Catholic Church is to appreciate a beautiful environment. How many things has the church carved in stone and done correctly? Maybe 1000 years from now the tomb will be still like that and it will remind people that we had these terrible machines called ‘computers’ and aren’t we glad they are all gone.
by leeroihe | 2025-05-30 20:44:10+00:00
They want an omnipresent, lobotomized and defeated underclass who only exists to "respond" to the ai to continue to improve it. This is basically what alexander wang from Scale AI explained at a recent talk which was frankly terrifying.

Your UBI will be controlled by the government, you will have even less agency than you currently have and a hyper elite will control the thinking machines. But don't worry, the elite and the government are looking out for your best interest!
by thiht | 2025-05-30 20:45:27+00:00
Having worked at a registrar, these claims always seem suspicious and highly unlikely to me for one good reason: big registrars get thousands (lowballing it) of domain checks every day. There is no way they would buy all the searched domains just to annoy you, it just would not be profitable. I’m also pretty sure front running is an explicit breach of the registry-registrar/ICANN agreements for all TLDs (maybe not for some exotic ccTLDs?) which could cost them their accreditation, sooo… not worth it.

What COULD happen is an insider getting access to the list of looked up domains and selling it or squatting some domains themselves. That would obviously be a reason for termination + legal charges. If I remember well, Namecheap claims they don’t keep a log of the searched domains, but that doesn’t mean it’s not possible for an engineer to intercept it via a backdoor or via internal blind spots (the searched domains could be logged somewhere for some reason).
by achierius | 2025-05-30 20:46:17+00:00
Why do we demand that the price of progress be paid by those people least able to pay? Why is it that the people who work, who produce everything that we rely on to survive, are also the ones who suffer, whose life-plans are upended, whose homes are taken away, whose bodies are mangled -- while the rich, who contribute little other than "management of capital", are fine and dandy?

If someone were to say to you, today, that your career was over, and that the only choice was to go work in a mine -- and moreover, that thanks to the great pressure of unemployed laborers in the same boat as you, safety standards had fallen by the wayside? Would you consider that a "necessary cost" for progress? If not, then what's the bar? When do you consider it acceptable to tell someone, who trained for years and years to do something useful for the community, that due to technological developments on the other side of the continent they need to find a new job, slash their budget, abandon their home, give up plans of having a family?

It's easy to say "they should learn to code" -- wait, but now coding's not the place to be, is it? The rate at which these shifts happen has accelerated, continues to accelerate, and is already well past the ability of people to re-skill mid-career.

We already have enough resources to feed and house every person in the US (and the world, though I admit the logistics there are a bit tougher). If automation actually meant that the broader population -- no, not their hypothetical grandchildren -- would become more prosperous, perhaps it would be something worth celebrating. But as is, growth for the sake of growth, at the cost of suffering that could easily be avoided had we a different economic system, seems hard to justify in my eyes.
by jajko | 2025-05-30 20:46:54+00:00
In my banking megacorp, despite having officially title of senior sw engineer, coding is maybe 10% of my time spent. And its the best, most creative part I actually enjoy. Why would I give up that? No real velocity gained even if all would be 1 click away in flawless production-ready state.

The real cruft of seniority is: processes, knowing right people and their buttons, politics, being there to fix obscure corner case production issues and so on. How can llm help me with that? It can't.

For code sweatshops they may be a blessing, for corporations drowning in regulations and internal abysmal labyrinths of their IT, not so much.
by msamadi | 2025-05-30 20:46:56+00:00
This abstraction layer reminds me of how cloud computing decoupled infrastructure management from developers. Now, agents are doing the same for UI. The shift from "how to do it" to just "what needs to be done" is profound—and could redefine what productivity even means. Curious how this evolves in orgs where tool sprawl has historically been a bottleneck.
by tristor | 2025-05-30 20:47:07+00:00
I used Mercury for a side project / startup, and once I wound it down it was impossible to cancel my account. My account was eventually canceled because I refused to respond to KYC more than a year after I had wound down the company and already filed dissolution paper with the state/IRS. I even had my business attorney reach out to them and no action was taken to shut the account. As I had already transferred the majority of funds out during liquidation, I just let it ride. I think I ended up losing $11 or thereabouts. As easy as it was to set up the account and get started, I would never use/trust Mercury again after my experience.
by abletonlive | 2025-05-30 20:47:25+00:00
Thanks for saying it out loud. I meet a lot of people like you that think the same way as part of my job and they aren't willing to say it out loud.

It's about protecting your work, even if an LLM can do it better.

The only way an LLM can devalue your work is if it can do it better than you. And I don't just mean quality, I mean as a function of cost/quality/time.

Anyway, we can be enemies I don't care - I've been getting rid of roles that aren't useful anymore as much as I can. I do care that it affects them personally but I do want them to be doing something more useful for us all whatever that may be.
by teitoklien | 2025-05-30 20:47:44+00:00
lol, what it’s soon going to lead to is unfortunately the very opposite of what you’re thinking.

Management will cut down your team’s headcount and outsource even more to India ,Vietnam and Philippines.

A CFO looks at balance sheet not operations context, even if you’re idea is better the opposite of what you think is likely going to happen very soon.