MurphyA/hacker-news huggingface dataset:
by Elena-Chen | 2025-04-02 13:00:43+00:00
This video shows the excellent performance of the fully automatic medium-speed paper cup machine (120 - 150 PCS/Min): Efficient production: Stable output of 120 - 150 paper cups per minute, suitable for coffee cups, cold drink cups and other specifications; Intelligent control: Adopt PLC system and photoelectric detection technology to achieve automatic counting, fault alarm and shutdown protection, reducing manual intervention; Stable and durable: Ultrasonic bonding technology ensures the sealing of the cup mouth, modular molds support fast mold change, and improve production flexibility ; Professional service: Provide equipment debugging, technical training and after-sales support to help you quickly start production! Suitable for paper cup factories, catering packaging companies and environmentally friendly product manufacturers, click to learn how to up grade your production line!
by yx827ha | 2025-04-02 13:00:54+00:00
Just to add some more context. Zig cc is a wrapper around clang. It can handle cross compiling to specific glibc versions. See https://andrewkelley.me/post/zig-cc-powerful-drop-in-replace... I imagine it would help with the glibc problems they are taking about. Glibc tries to provide a backwards compatible abi.
by cjs_ac | 2025-04-02 13:01:05+00:00
This startup has its staff working 12-15 hour days to use AI to write the code for an AI system that gets people to pay up on their debts. Collecting debts involves dealing with people who are in difficult, exceptional situations: I have no faith that they are willing to properly engage with any of the detail. I have absolutely no doubt that this company will leave a long trail of suicides behind it.
Ask HN: What do you use to monitor website security (vulns, uptime, etc.)?
by lukejkwarren | 2025-04-02 13:01:36+00:00
I recently built [PenZen](https://penzen.app). It scans websites for real vulnerabilities (not just SSL checks) using OWASP Zap under the hood and sends prioritized alerts with AI-powered remediation suggestions.

I made it because I was tired of tools that alert me about issues I don't understand or can’t do anything about. Curious: What are you using to monitor website security?

And more importantly: What actually makes you trust a report or take action on it?
by codeptualize | 2025-04-02 13:01:40+00:00
I kinda agree but the article does not do a great job at defending the position. Who cares about docs?

Vibe coding, or just letting AI take the wheel will work in some situations. It allows non coders to do things they couldn't before and that's great. Just like spreadsheets, no code tools, and integrations tools like Zapier, this will fill a bunch of gaps and push the threshold where you need to get software devs involved.

But as with all these solutions there is that threshold were the complexity, error margin gets, and scale go beyond workable and then you need to unfuck that situation and enforcing correctness. And I think this will result in plenty "oops my data is gone" types of problems.

If you know upfront that your project will get complex and/or needs to scale you might be best off skipping the vibe coding and just getting it right, but for prototypes, small internal tools, process "glue", why not.

It's not a replacement of software engineering as a whole (yet), it's just another tool in the toolbox and imo that's great. Can I use it, no.. I have tried and it just doesn't work at all for bigger more complex projects.
by itishappy | 2025-04-02 13:02:12+00:00
Got a source on El Salvador's position? The article states the MS-13 claims come from the US and are unsubstantiated:

> The allegations about his affiliation with MS-13 stem from a 2019 arrest outside a Maryland Home Depot store, where he and other young men were looking for work, according to the complaint.

They also claim he had legal protections from being deported specifically to El Salvador:

> An immigration judge denied Abrego Garcia’s asylum request in October 2019 but granted him protection from being deported back to El Salvador.

> In its court filing on Monday, the Trump administration said ICE “was aware of his protection from removal to El Salvador,” but still deported Abrego Garcia “because of an administrative error.”

This is the part that concerns the US. Also the part where this is all being paid for by American tax dollars.
by carlsverre | 2025-04-02 13:03:07+00:00
Glad you enjoyed Graft! The system your describing sounds very cool! It's actually quite similar to SQLSync. The best description of how SQLSync represents and replays intentions (SQLSync calls them mutations) is this talk I did at WasmCon 2023: https://www.youtube.com/watch?v=oLYda9jmNpk
by prisenco | 2025-04-02 13:03:07+00:00
I've not run into anyone who says AI is useless. I'm highly critical of AI as an "everything machine", won't let it code for me and believe AGI is a pipe dream... and I still have incorporated it into my workflow as a rubber duck, idea soundboard and documentation search engine.

On the other hand I've run into way too many people (dozens in person, hundreds online) who are overselling AI, most with a direct financial interest as their motivation.

It's not true that the sides are at all balanced unless you create an extreme "anti-AI" side that doesn't exist.
by infecto | 2025-04-02 13:03:08+00:00
Just asking a question like proves the point. Bluntly yes those discussions are fine. With the huge polarization in politics, regardless of side it devolves into an endless low-signal comments that add nothing new of value. There is no added value in any comments that would crop up from a post like this. It is also why anything related to Israel vs Gaza get auto flagged. People like to project it’s because of secret operations to remove all negative publicity but generally it’s more mundane, folks don’t want to rehash the same arguments over and over.
by meowface | 2025-04-02 13:03:14+00:00
It was coined by Andrej Karpathy two months ago, which is partly why it spread like wildfire. Karpathy is far from some random grifter or memer.

https://x.com/karpathy/status/1886192184808149383

>There's a new kind of coding I call "vibe coding", where you fully give in to the vibes, embrace exponentials, and forget that the code even exists. It's possible because the LLMs (e.g. Cursor Composer w Sonnet) are getting too good. Also I just talk to Composer with SuperWhisper so I barely even touch the keyboard. I ask for the dumbest things like "decrease the padding on the sidebar by half" because I'm too lazy to find it. I "Accept All" always, I don't read the diffs anymore. When I get error messages I just copy paste them in with no comment, usually that fixes it. The code grows beyond my usual comprehension, I'd have to really read through it for a while. Sometimes the LLMs can't fix a bug so I just work around it or ask for random changes until it goes away. It's not too bad for throwaway weekend projects, but still quite amusing. I'm building a project or webapp, but it's not really coding - I just see stuff, say stuff, run stuff, and copy paste stuff, and it mostly works.
by yen223 | 2025-04-02 13:03:18+00:00
The cool thing with software engineering is that we can drive the costs of building the same project repetitively down to zero. We don't have to write Postgres from scratch each time we spin up a CRUD app, we can just install it.

I think that's why estimation in software engineering is difficult. The predictable repetitive portion of the project takes up no time - all that's left are the novel unknown parts.
by coldpie | 2025-04-02 13:04:19+00:00
The vast, vast majority of companies using AI are on the same level as the people distributing malware to mine crypto on other peoples' machines. They're exploiting resources that aren't theirs to get rich quick from stupid investors & market hype. We all suffer so they can get a couple bucks. Thanks, AI & braindead investors. This bubble can't pop soon enough, and I hope it takes a whole lot of terrible people down with it.
by 9rx | 2025-04-02 13:04:21+00:00
Early in my career, when I was young and naive, I used to spend an inordinate amount of time coming up with the perfect estimate. I could pretty well get it dead on nearly all the time, at the cost of wasting a stupid amount of time to determine it.

I soon noticed that it only ever lead to "okay, thanks" from whomever made the requested and that was the end of it. So now I just pick a random number. I still get "okay, thanks" and nothing changed.

Nobody really cares. It turns out it is just something people ask when they are uncomfortable with silence, but can't think of anything else to say.
by ninetyninenine | 2025-04-02 13:04:44+00:00
Being true by definition is just assigning something to be true by assumption.

Who makes a definition? Are definitions intrinsic to reality? No. Definitions are made up concepts from language which is also another arbitrary made up thing. When something is defined to be an axiom the human is making something up and arbitrarily assigning truth to that concept.

> I believe this definition don't make sense in the general case considering the number of vectors that can introduce errors into software.

You’re making up a definition here. Which is the same as an axiom.

Your question is what verifies the verifier? But that question is endless because what verifies the verifier of the verifier? It’s like what proves the axiom? And what proves the proof of the axiom?

The verifier defines the universe of what is correct and what is incorrect. It is the axiom. It is an assumption at its core. You can pretty it up by calling it a more advanced thing like “definition” but in the end it is the exact same thing as assuming and making up a fact that something is true without any proof.
by hnlmorg | 2025-04-02 13:04:52+00:00
Yes, the original anecdote was simplistic. Most “anecdata” is.

However your response that their social anxiety wasn’t a result of their upbringing, and then expanding that with the evidence being your own anecdote, is far more simplistic and somewhat uncharitable too.

You might be correct but you might also not. However you know less about the situation that the commenter (obviously) so I don’t really see how you can confidently assert anything about their condition.

And that is why I responded the way I had. It’s not saying you are definitively wrong; just that you know far too little about the specifics to make assertions.
by HelloMcFly | 2025-04-02 13:05:32+00:00
> I don't. I want to be able to draw my own conclusion as to the effect of what happened might be.

That's fair BUT do you see how this is a decision that a) won't always have a clear line of demarcation and b) reflects an internal mental model of news that likely isn't universal?

For example: let's say someone reads a news article that titled "Trump Won't Rule out Military Intervention in Greenland" (god help us, a real story). Maybe you get all the "what" you need from the headline. I would argue though that omitting contextual information about "Why does he want Greenland?" is irresponsible and bad journalism. Many others might argue that in a duty to inform readers, they should collect statements from people who understand international relations to discuss implications of such a stance.

Another example: insurance rates are rising for coastal properties in Florida. That's the "what", but there is no honest, legitimate exploration of the topic if the journalist doesn't explore "why", because the "why" of this story if also a "what" of the many contributing factors. Since that "what" will necessarily include climate-related topics, it is now considered "political" by many. And in this instance, exploring "what effect" this is likely to have on homeowners, renters, and businesses seems a core element of the phenomenon.
by btbuildem | 2025-04-02 13:05:40+00:00
> I'm explicitly not talking about coding. This is easy to learn [...] I'm talking about things surrounding the code

I have terrible news for the author: LLMs are quite good at the things that surround the code. The danger here isn't that someone will one-shot a working application; that's silly. The practical consequences are that you can now synthesize and rapidly iterate on technical design documentation, then transform it into architecture documents, and quickly into actual (contradiction in terms here) project-specific boilerplate.

As a senior or principal, if you don't keep up with this, you'll wash out.
by dartos | 2025-04-02 13:05:52+00:00
I think it’s like any other tool. Some people get better mileage out of it than others.

There are even very skilled and accomplished engineers that don’t even use language servers.

Not programming, but even some legendary Disney animators still draw out their key frames by hand… on paper… in pen.

Build with what you build best with.

Personally, they help with little refactors and occasionally a quick, difficult to google, question, usually about syntax.
by aaronrobinson | 2025-04-02 13:07:50+00:00
I’m an old school coder. I haven’t vibed. I’m guessing the “who is going to maintain this” could only be another tool similar to what built it. I can’t imagine trying to get my head around that much code in a timeframe acceptable to someone demanding product. So are we headed to a place where everything is written and maintained this way or a lucrative future of having to get these things to work properly.
by compsciphd | 2025-04-02 13:08:01+00:00
there are so many american jews who have a "legal english name" and a "jewish hebrew one". Sometimes they are similar (i.e. the anglification of the hebrew name, Yehoshua -> Joshua, Daveed (though generally just written David) -> David, Moshe -> Moses, Avraham -> Abraham, with varying degrees of closeness. And sometimes they are not really related at all (perhaps just by similar phonemes, but not by real meaning).

Therefore, to me it feels a strange hill to die on. Even if one had to have their "legal name" be pronounced X, I'm not sure what exactly changes. 1) how you want to refer to yourself will still be how you refer to yourself 2) If the characters are pronounced differently in Japan than elsewhere, won't regular Japanese people already "mispronounce it". (my only guess is that there's some form of characvter mapping going on with different pronounciations for the different character sets?)
by Aachen | 2025-04-02 13:09:10+00:00
I like it! The spec could be more accessibly written, but it's somewhat understandable in casual reading. Perhaps it would benefit from a diagram like json's famous one

One thing I didn't understand is this example on the homepage:

> password "${ENV:ANONPASS}"

The spec doesn't seem to mention any ${}. Is this for the program to manage rather than the parser of the config going out to fetch an env var? If so, I find this a bit out of scope to show; at least, it confused me about whether that's built-in/supported syntax or if it's just a literal with syntax intended for a different program

Depending on how set in stone this is, another complaint I might have is that you still have the trailing comma issue from JSON, except it's not a comma but a backslash (reverse solidus, as the spec calls it—my mobile keyboard didn't even know that word). Maybe starting a list of arguments with [ could allow one to use any number of lines for the values, until a ] is encountered?
by carlsverre | 2025-04-02 13:09:18+00:00
Thank you! And I agree haha. I love writing SQLite VFS's.

In SQLSync, the major issue was precisely what you describe: pulling in the full snapshot to replay. This is the main driver behind the "partial" aspect of the Graft design. It means that clients only need to pull the portion of the incoming snapshot that they don't already have and that overlap with the read/write set of their transactions. So yes, to answer your question once SQLSync is powered by Graft, it will frequently be able to avoid downloading all state in order to reset and replay.

Note that if a client is ok with relaxing to snapshot isolation (in particular this means clients may experience Write Skew[1]), and the r/w set of their local transaction does not intersect the snapshot changeset, Graft is able to perform an automatic merge.

[1]: https://jepsen.io/consistency/phenomena/a5b
by jqpabc123 | 2025-04-02 13:10:15+00:00
Pointers and manual memory management are essential features for developing operating systems, libraries and embedded hardware. These should ideally be subjected to extensive testing and debugging prior to release.

For most other applications; particularly those exposed to public networks, these are foot guns that should be used sparingly if at all. The risks often outweigh the rewards --- and programmers have provided decades of proof.

Google understood this when they created Go. It's not a full solution but it does try to mitigate the problem.
by theoreticalmal | 2025-04-02 13:11:19+00:00
I disagree. Who decides the relevant use cases for a given product? How does one handle the unforeseen use cases and advertise those?

In my opinion, ads should be much more limited to brief, factual information to satisfy the “learn about new technology” piece.

“This message is to inform you of a new product, X, made by company Y, intended to do A and B without the side effect of C.”
by debugnik | 2025-04-02 13:11:31+00:00
The build system is exactly the same as C#, MSBuild with its .NET SDK, and syntax and community are entirely subjective; F# has the least weirdo community I've personally seen for an FP language. Weak arguments to say the least.

I'll give you the chicken-and-egg hiring problem and it being second-class to the .NET team, though; I'd add poor IDE support by modern standards, only Rider feels right. I love F# but I've moved on for these reasons.
by RajT88 | 2025-04-02 13:11:41+00:00
Nobody has mentioned the less geeky but still excellent remake of The Saint.

A film that started a life long love affair of phones with keyboards (hacking scenes with one of the original Nokia 9000 phones, which I have owned the 9290 and e90). It featured some of the same smirking jokey presence that Kilmer was known for, but with more action and political intrigue.
by PaulHoule | 2025-04-02 13:12:23+00:00
"Nerds vs Jocks" is a trope that bugs me to no end because my experience in school and afterwards is that jocks are better than average. I never got bullied by a jock, in fact, when people tried to ambush me at my dorm I ducked into the room of the captain of the rugby team and that was the last time anybody tried to ambush me at my dorm.
by carlsverre | 2025-04-02 13:12:38+00:00
This is a great point. Solutions like Graft which involve syncing data to the edge work poorly when the dataset size is too large and not partitioned enough to be consistency partial.

This is why Graft isn't just focused on client sync. By expanding the focus to serverless functions and the edge, Graft is able to run the exact same workload on the exact same snapshot (which it can validate trivially due to its consistency guarantees) anywhere. This means that a client's workload can be trivially moved to the edge where there may be more resources, a better network connection, or existing cached state.
by donatj | 2025-04-02 13:12:40+00:00
My first job I worked was for a small agency. I was kind of a young go getter and was able to very quickly pump out bad (in hindsight) yet mostly functional code very quickly.

Sales people figured out they could come to me specifically for estimates because they would be shorter than other developers estimates and more likely to get the sale. I was young and dumb and didn't connect that often times I wouldn't be the one developing the project. The other developers got angry with me after they caught on to why they were getting impossible timelines.

I started multiplying my personal estimates by three. The sales people were less than pleased and eventually started going elsewhere for their estimates as greener developers were hired.
by bob1029 | 2025-04-02 13:12:49+00:00
> Where do the features come from, feature engineering? That's the method that failed the bitter lesson.

That would be the whole point of genetic programming. You don't have to do feature engineering at all.

Genetic programming is a more robust interpretation of the bitter lesson than transformer architecture and DNNs. You have less clever tricks you need to apply to get the job done. It is more about unmitigated raw compute than anything out there.

In my experiments, there are absolutely zero transformation, feature engineering, normalization, tokenization, etc. It is literally:

1. Copy input byte sequence to program data region

2. Execute program

3. Copy output byte sequence from program data region

Half of this problem is about how you search for the programs. The other half is about how you measure them. There isn't much other problem to worry about other than how many CPUs you have on hand.
by jerf | 2025-04-02 13:13:14+00:00
To be a "good" web crawler, you have to go beyond "not bad coding". If you just write the natural "fetch page, fetch next page, retry if it fails" loop, notably, missing any sort of wait between fetches, so that you fetch as quickly as possible, you are already a pest. You don't even need multiple threads or machines to be a pest; a single machine on a home connection fetching pages as quickly as it can be already be a pest to a website with heavy backend computation or DB demands. Do an equally naive "run on a couple dozen threads" upgrade to your code and you expand the blast radius of your pestilence out to even more web sites.

Being a truly good web crawler takes a lot of work, and being a polite web crawler takes yet more different work.

And then, of course, you add the bad coding practices on top of it, ignoring robots.txt or using robots.txt as a list of URLs to scrape (which can be either deliberate or accidental), hammering the same pages over and over, preferentially "retrying" the very pages that are timing out because you found the page that locks the DB for 30 seconds in a hard query that even the website owners themselves didn't know was possible until you showed them by taking down the rest of their site in the process... it just goes downhill from there. Being "not bad" is already not good enough and there's plenty of "bad" out there.
by sota_pop | 2025-04-02 13:13:23+00:00
I liken ‘vibe coding’ to Low/No-code platforms. It’s an attempt to achieve the same results with the added constraints of less precise control over what you’re ACTUALLY building. It is an abstraction over the code you’re writing (or not writing). Its ability to help or hinder probably depends on the level of precision the application you’re building (or you personally) demands from the software you write.
by yodon | 2025-04-02 13:13:47+00:00
Fun for the dad, but odds are good the original version would have been even more fun for the kid, and longer lasting. If you've never seen what a young kid can do with a suitably sized Kettcar (kettlecar) or Berg pedal go kart, you have missed out on some amazing vehicle dynamics. The designers got the weight distribution and steering dynamics exactly right. The things are a blast.