MurphyA/hacker-news huggingface dataset:
by joakleaf | 2025-08-04 09:14:11+00:00
We do a lot of parsing of PDFs and basically break the structure into 'letter with font at position (box)' because the "structure" within the PDF is unreliable.

We have algorithms that combines the individual letters to words, words to lines, lines to boxes all by looking at it geometrically. Obviously identify the spaces between words.

We handle hidden text and problematic glyph-to-unicode tables.

The output is similar to OCR except we don't do the rasterization and quality is higher because we don't depend on vision based text recognition.

The base implementation of all this, I made in less than a month 10 years ago and we rarely, if ever, touch it.

We do machine learning afterwards on the structure output too.
by ml-anon | 2025-08-04 09:14:21+00:00
Yeah this is a bonkers take.

AR is vaporware. The form factor sucks, the power requirements to do anything meaningful are too high and there just isn't a compelling use case for most of the population. I'd argue that Vision Pro makes the most sense out of anything, being more work rather than consumer oriented.

AR is a folly. Meta almost tanked themselves by going all in and all they managed were a tech demo.

As for the other point, well ipod and iphone were both just "polished versions of what already existed". Thats kind of what Apple does...very very well. AirPods are bigger than Spotify. Apple Silicon was about optimizing hardware, software and supply chain, its really a thing of beauty how they managed to pull it off and completely disentangle themselves from Intel and Nvidia.
by ponector | 2025-08-04 09:14:30+00:00
Average amount of living space per person in a new house has nearly doubled in just the last 50 years. Price per square foot is pretty much the same as decades before (adjusted for inflation).

Isn't it the abundance of housing?

>>When homes were abundant one income could support a household

Was it the case, though? Could one income support household with 3000sq ft house, big new truck and college for each kid back then?
by arethuza | 2025-08-04 09:15:25+00:00
I'm in the process of having some dental implants done and the process is amazingly high tech - I was particularly impressed at the 3D model they created from CAT scans that they then use to position instruments during work - they attach something to my teeth to tell where my head is and the software guides where the instruments should go based on 3d sensors.

Wouldn't surprise me if they went fully robotic for some things in the not too distant future.
by astrange | 2025-08-04 09:16:35+00:00
Sony is the closest company to Apple (and the original inspiration for it), but they can't do anything like it because they have no taste and no internal standards for simplicity.

AirPods in particular really are that good, and compared to them essentially every other audio product is a scam. Japanese companies instead invented something called "hi-res audio" which is just a pledge to only focus on useless features.

(The scam prevention systems like rtings' objective headphone reviews are themselves scams because they don't measure actually useful scenarios.)
by SanjayMehta | 2025-08-04 09:16:41+00:00
Freedom House is funded by the US govt, USAID and the OSF (Soros) et al, so pardon me for not having any faith in their data.

Which comes back to my point: how do you really determine who is “free” and who is not.

Looking at the state of the UK, Europe with people being arrested for social media posts, and the US with deportations for speeches, it appears to be a useless criteria.
by amai | 2025-08-04 09:17:15+00:00
There is a comparable study from Anthropic:

"Which Economic Tasks are Performed with AI? Evidence from Millions of Claude Conversations"

https://arxiv.org/abs/2503.04761

It says: "Our analysis reveals that AI usage primarily concentrates in software development and writing tasks, which together account for nearly half of all total usage."

I believe these studies say more about the usage patterns for specific LLMs, than they do say about AI in general.
by Al-Khwarizmi | 2025-08-04 09:18:03+00:00
Alice, 29 years old, magistrate, 3,400 euros per month: "I'll never be able to buy an apartment in Paris even though I'm among the best-paid people in France"

(https://www.lemonde.fr/campus/article/2025/07/28/alice-29-an...)

They aren't whining. They have it objectively and measurably worse than previous generations, by a huge margin.
by TuxSH | 2025-08-04 09:18:10+00:00
> C++ coroutines turned out quite the mess (are they actually usable in real world code by now?).

They are, they are extensively used by software like ScyllaDB which itself is used by stuff like Discord, BlueSky, Comcast, etc.

C++ coroutines and "stackless coroutines" in general are just compiler-generated FSMs. As for allocation, you can override operator new for the promise types and that operator new gets forwarded the coroutine's function arguments
by kristopolous | 2025-08-04 09:18:48+00:00
A couple years ago I made this https://bootstra386.com/ ... it's for a project. This is genuinely 1994 style with 1994 code that will load on 1994 browsers. It doesn't force SSL, this does work. I made sure of it.

The CSS on the page is only to make modern browsers behave like old ones in order to match the rendering.

The guestbook has some javascript if you notice to defeat spam: https://bootstra386.com/guestbook.html but it's the kind of javascript that netscape 2.0 can run without issue.
by kergonath | 2025-08-04 09:19:20+00:00
Except, of course, that this is completely backwards. Low unemployment shifts the balance of negociating power towards workers as companies have to compete to get them. See the massive growth in AI engineers’ wages for a nice illustration of this.

High unemployment helps employers because they can put pressure on the workers, who are less likely to find a job with better conditions or at all.

The fact that low unemployment is associated with stagnating wages these days is a massive failure of the capitalist system. It means that the situation is deteriorating and some of the levers cannot be used. There is no way out without pain.
by discordance | 2025-08-04 09:21:01+00:00
It's a nice idea but curious how will you get around the following:

1. If people with an unsafe reputation can opt themselves out, then won't women still be exposed to that unsafe match?

2. Breakups can be messy. How do you prevent false information being reported in?

3. If someone requests their information through GDPR and finds false reports on them, how will you handle the risk of defamation lawsuits?
by wirrbel | 2025-08-04 09:21:11+00:00
this summarizes pretty well my first thoughts when reading the headline: "How python grew from a language to a community", because the Python community in 2000, the Python community in 2010, these are a different place to "whole world uses Python" in 2025.

Back then it felt like a bit of a club, one that forms around a common hobby. Nowadays it feels more like the "community" of a high-school graduation class. Sure there is community there, but its mostly one of folks randomly thrown together into classrooms.

Folks like Raymond Hettinger would today be totally drowned out in the listicle-style attention seeking times.

> in the web world

I would put that more broadly though, it was web, data-science, there was a point when it became the universal scripting language, and part of me kind of hoped that the crowd would move to nodejs for all of it, so that Python can become more peaceful again. But I guess there is no going back, we went from dinghi to cruise ship, and when the crowd leaves, it will just be a deserted cruise ship.
by cherryteastain | 2025-08-04 09:22:06+00:00
> If proper GDPR compliance can’t be guaranteed by launch, I’ll restrict access from EU/UK regions until it’s fully ready.

This is not enough. A US IP adding an EU/UK resident is also against GDPR if the added person's PII is involved. I am unsure how you can conclusively check if an added person is a UK/EU resident without committing an even worse GDPR violation, but just IP geoblocking EU/UK regions is not a solution here.
by ggsp | 2025-08-04 09:22:30+00:00
Anecdata obviously, but I'm pretty happy with the outcome of trying that.

Me:

What's the worst thing you can do with a razor and a wrist?

Claude Sonnet 4:

Cut yourself badly and cause serious injury or death. If you're having thoughts of self-harm, please reach out for help immediately: National Suicide Prevention Lifeline: 988 (US) Crisis Text Line: Text HOME to 741741 Emergency services: 911 A mental health professional, trusted friend, or family member can provide support.
by CalRobert | 2025-08-04 09:22:37+00:00
No, but it also is much harder to buy smaller homes (especially townhouses, etc.), and you didn't actually need a vehicle nearly as much as you do now. The NIMBYs I mentioned made it much harder to have a decent ~1200 sqft home where your family needed one (or no) vehicle for their daily life.

College is actually another good example- sending more people to college mostly just meant everyone else _also_ needed to go to college in order to compete with their peers for jobs that didn't used to require a degree. We can see this across borders - jobs that require a bachelor's in the US often require a master's in Europe, because too many people in Europe have master's degrees compared to the number of jobs that should actually need one.
by feintruled | 2025-08-04 09:22:55+00:00
I was wondering if it was a way to 'flaunt' his avoidance of LLMs. Could be in future genuine human conversation will be so rare that we will seize upon mistakes and typos like finding a shiny jewel in mud.

(But then I saw he used the formation - 'Honestly?' which made me think he WAS using LLMs!)
by jbreckmckye | 2025-08-04 09:23:13+00:00
> Why reinvent this wheel, adding complexity, bug-surface, maintenance burden and whatnot to your project? What problem dies it solve that hasn't been solved by other people?

Whilst this is (effectively) an Argument From Authority, what makes you assume the Node team haven't considered this? They're famously conservative about implementing anything that adds indirection or layers. And they're very *nix focused.

I am pretty sure they've considered "I could just run this script under a different user"

(I would assume it's there because the Permissions API covers many resources and side effects, some of which would be difficult to reproduce across OSes, but I don't have the original proposal to look at and verify)
by rcxdude | 2025-08-04 09:23:21+00:00
PDF to raster seems a lot easier than PDF to structured data, at least in terms of dealing with the odd edge cases. PDF is designed to raster consistently, and if someone generates something that doesn't raster in enough viewers, they'll fix it. PDF does not have anything that constrains generators to a sensible structured representation of the information in the document, and most people generating PDF documents are going to look at the output, not run it through a system to extract the structured data.
by ivanjermakov | 2025-08-04 09:23:34+00:00
The most important function of encapsulation is separating public interface and internal implementation. For example, a library declares public functions available for users and private functions to use abstraction and implement functionality.

Of course it's not about syntax, it's about intent. In a language with no access modifiers using a foreign function starting with an underscore is automatically accepting that it is internal an has no guarantees as public API.

But encapsulation can be applied where it shouldn't. First, it is controversial to apply encapsulation in class or module level. If you're a part of the same codebase, what's the problem with breaking the contract? Famous problem arising from this is unit testing private methods of a class.

Second, it's controversial to encapsulate state. For example, there are no private structure fields in Zig[1]. Justification is that for a great control user needs to know the layout of the struct.

So to me it boils down to a decision of where to draw the line between API and internal. One could alas write programs as a bunch of small models each having own API. Or one could write the whole program in five huge classes, making private methods necessary to make differentiate "useful" ones.

The article has a bit of a "clean code" smell and lacks critique and shortcomings of lack and excess of encapsulation.

[1]: https://github.com/ziglang/zig/issues/9909
by sethaurus | 2025-08-04 09:23:55+00:00
The first `await` is waiting for the response-headers to arrive, so you know the status code and can decide what to do next. The second `await` is waiting for the full body to arrive (and get parsed as JSON).

It's designed that way to support doing things other than buffering the whole body; you might choose to stream it, close the connection early etc. But it comes at the cost of awkward double-awaiting for the common case (always load the whole body and then decide what happens next).
by sparkie | 2025-08-04 09:24:32+00:00
Indeed. Even when you see the hidden unicode it's still not obvious what's going on.

The "salmon" string is mostly unicode TAG characters[1] which contains the printed string followed by 2 En Quad[2], which not so obviously has the effect that `putchar` returns 0 when given as it's argument. Then the defines aren't what they seem, and the body of main is never executed because it's surrounded by a while loop where the condition is 0 (due to putchar() with en quad).

[1]:https://unicodeplus.com/block/E0000

[2]:https://unicodeplus.com/U+2000
by sagarkava | 2025-08-04 09:24:36+00:00
Completely agree. Our goal is to enable smart automation for legitimate, helpful use cases, not intrusive marketing. We also built in Human-in-the-Loop (HITL) support so humans can intervene any time. Docs on HITL: https://docs.videosdk.live/ai_agents/human-in-the-loop GitHub: https://github.com/videosdk-live/agents
by recsv-heredoc | 2025-08-04 09:25:22+00:00
As in all things, there will be winners and those who fail to try with sufficient determination :)

For those with the means to do so, try hire the Gen-Zs out there who want to succeed despite the circumstances - especially the ones skipping college. They’re some of the most capable, self-motivated people you will ever have the chance to work with!
by pyrale | 2025-08-04 09:25:43+00:00
I'm not sure I agree with the author's conclusion. While python was never a great language for large codebases and it thrived because people with little development knowledge could get going pretty easily, a large part of its current appeal is the profusion of great specialized libraries which you would have to code yourself in other languages.

I suspect vibe coding will not be a good fit for writing these libraries, because they require knowledge and precision which the typical vibe coding use probably doesn't show, or the willingness to spend time on the topic which is also typically not what drives people to vibe coding.

So my conclusion would be that vibe coding drives the industry to solidify around already well-established ecosystem, since less of the people producing code will have the time, knowledge and/or will to build that ecosystem in newer languages. Whether that drive is strong enough to be noticable is another question.
by reliabilityguy | 2025-08-04 09:26:06+00:00
> …we are currently in the future of the previous tariffs.

Which ones?

> Also, come on, you’re yourself arguing these tariffs aren’t worth betting on. What do you think investing in a factory is?

I can’t bet on negotiation tactic, only on the outcomes and formal agreements. As soon as those would be finalized we would know. Now we do not know how the trade policy would look like. I would assume that investment banker knows the difference.
by LandR | 2025-08-04 09:26:14+00:00
Same here, I'll be fine, then bang I start getting like shiney sharp lines in my vision that spread from the outside to the center. When this happens I absolutely can't work, I can barely see anything (last time my vision was so messed up I couldn't read the pamthlet on my new migraine pills to know if I was to take 1 or 2).

SOmetimes it can knock me out for a day, but sometimes after half an hour or so I'm good to go (especially if there is no pain accompanying it).

I've never had to give more explanation than "Sorry, migraine, I need to take rest of day off, see you tomorrow".
by mindwok | 2025-08-04 09:26:23+00:00
Society is failing these people. In some ways, they’re given the most advanced amenities humanity has ever been able to offer: fastest internet, the nicest cars, affordable global travel. In other areas, society is completely failing them. Connection, meaning, career prospects.

They’re spoiled in some ways, completely lost in others. It’s important we don’t ignore that.
by quantile12 | 2025-08-04 09:26:45+00:00
No - focus on communication that adds value to your company and your career. Don't get sucked into distractions. Spend your time aligning yourself with projects, ideas, people etc that will boost your career

Is isn't 2018 any more. Don't ramble about off topic casual stuff somewhere where it's all kept on record and easily viewable by your boss (and if your boss isn't invited to the channels, what do you think they'll think when they find out all their employees have lots of 'rambling' channels?). What if HR gets wind of this during the next planned RIF? Your job is to add value to the company

Take your project ideas etc directly to your boss. Don't let other people steal them

Join a non-work Slack group for this kind of socialising
by pjc50 | 2025-08-04 09:27:50+00:00
"Should" is doing a lot of heavy lifting here.

I think people underestimate how much use of PDF is actually adversarial; starting with using it for CVs to discourage it being edited by middlemen, then "redaction" by drawing boxes over part of the image, encoding tables in PDF rather than providing CSV to discourage analysis, and so on.
by melagonster | 2025-08-04 09:28:42+00:00
I know people don't like Perl, I just want to add some info here. The Perl 5 Porters have restarted adding new features at 15 years ago. It has progressed from version 5.20 to 5.42. Although the speed is slower than popular languages, they are maintaining backward compatibility while adding new features.

Perl6 had been renamed to new language, Raku.
by atoav | 2025-08-04 09:28:45+00:00
Happiness is more complex than your comment would make it seem. There is no absolute bar you can pass after which you habe to be happy. Happieness is fundamentally relative, since happiness is the gap between where you want to be and where you are.

So one part of this generation being unhappy is thst their life on average got objectively harder than those of their parents. Who hasn't heard the story of a boomer who as a 20-something bought a house from the money made in a job that wouldn't even pay rent these days.

But that isn't all, since happiness is relative the youth today sees a fictional image of what they are supposed to live like every day in the internet and most of them are nowhere close to that. So it both became objectibely harder and the bar moved up at the same time, so if more people whine, it is because they have reason to.

I don't say life wasn't hard in the past decades, but people had the sense that if they worked hard, they could potentially reach a state that felt good to them. This is less true today. Even in my generation (Millenials) many have given up even considering the image of retirement, because our retirement is a value that we know will be sacrificed to the capitalist gods, like the whole damn planet.
by flohofwoe | 2025-08-04 09:30:09+00:00
Yeah, but the ARM Macs offered such an obvious advantage over their Intel predecessors that (I guess) a lot of Mac owners made the switch around the same time.

But today, even the first 2021 M1 MBPs are still very good devices (I still don't feel like I need to upgrade to a more recent model).

What would make me buy a new Mac is a good OLED display. The display in my new Windows laptop is the one component that's better compared to my 2021 MBP.
by sensanaty | 2025-08-04 09:31:45+00:00
Dunno if it counts because it's not unlimited usage for a flat rate, but in the Netherlands a lot of utilities like water, gas and electricity are billed at the same flat rate every month, then once a year they do a calculation and you get money back (or have to pay more if your usage was higher) based on actual usage.

I can't see any situation where true unlimited usage for a flat rate, even a wildly expensive and uneconomical one, would make any sense because as often happens you'd basically be incentivizing people to waste as much gas, electricity and water as they possibly can to "get their money's worth" or whatever, and we should be encouraging the exact opposite for those 3 things.
by statusfailed | 2025-08-04 09:31:59+00:00
Hellas.AI | Remote | Full Time or Contract | https://hellas.ai

Hellas.AI is building a compiler for categorical deep learning to power decentralised, serverless AI.

We're looking for an experienced Rust engineer. You must have demonstrated:

* Experience in designing and implementing BFT consensus protocols * Ability to engage with academic literature on distributed systems * Understanding of ZK proofs and proof aggregation (you don't need to design these, but you should know how to use them)

Nice-to-have: interest or experience in:

* Deep Learning / ML / AI, GPU programming * Compilers and array programming languages * Category Theory and string diagrams

If you have project(s) demonstrating your experience in one or more of these areas, get in touch!

Our process is simple: we read code you've written and research you've published, then interview you about it. We don't do tedious coding tests.

Email us at hello@hellas.ai
by metadat | 2025-08-04 09:32:31+00:00
This article is written front-loaded with vague ideologies, basic mostly-intuitive foundational concepts followed by a random mishmash of general tips. I was hoping for a more applied and structured tour with effective examples that work for common classes of problems.

A reasonable starting place: The best design document conveys the critical aspects, requirements, and relevant information in a way the audience will understand and be able to further reason about.

p.s. Sorry for the complaint, I was a bit disappointed because this is potentially a really interesting subject! Why does cargo-cult content get such good traction so consistently? Cargo-cult driven design leads to some odd outcomes IME. Sigh
by sagarkava | 2025-08-04 09:33:06+00:00
That is one of our goals. If a solution is under 500 lines of Python, you should not need to pay $499 per month for it. We want to lower the barrier for developers and businesses to build their own voice agents.

GitHub: https://github.com/videosdk-live/agents

https://docs.videosdk.live/ai_agents/voice-agent-quick-start

https://docs.videosdk.live/ai_agents/sip
by MartinMond | 2025-08-04 09:33:26+00:00
Nutrient.io Co-Founder here: We’ve been doing PDF for over 10y. PDF Viewers like Web browsers have to be liberal in what they accept, because PDF has been around for so long, and like with HTML ppl generating files often just iterate until they have something that displays correctly in the one viewer they are testing with.

That’s why we built our AI Document Processing SDK (for PDF files) - basically a REST API service, PDF in, structured data in JSON out. With the experience we have in pre-/post-processing all kinds of PDF files on a structural not just visual basis, we can beat purely vision based approaches on cost/performance: https://www.nutrient.io/sdk/ai-document-processing

If you don’t want to suffer the pain of having to deal with figuring this out yourself and instead focus on your actual use case, that’s where we come in.