MurphyA/hacker-news huggingface dataset:
by kyleee | 2025-05-13 15:55:10+00:00
“ The thing for me, though, is I find writing a task for a junior engineer to understand to be harder than just doing the task myself.”

I have been thinking about this angle a lot lately and realizing how much of a skill it is to write up the components and description of a task thoroughly and accurately. I’m thinking people who struggle with this skill are having a tougher time using LLMs effectively.
Show HN: Bydantic – Pydantic-style bitfields for Python
by khusmann | 2025-05-13 15:55:29+00:00
Hi HN! I’d like to share Bydantic, a Python library for declaratively defining bitfields using Python type hints and dataclass-like field types. It automatically handles serialization and deserialization, so you can focus on structure, not boilerplate.

I built Bydantic while reverse-engineering the Bluetooth protocol used by a family of inexpensive HT radios [1]. The protocol was messy and complex, and I quickly got tired of writing ad hoc parsing and packing code. What I really wanted was something like Pydantic—but for binary data. So I made this!

Finding the right balance between expressiveness and type safety was a big challenge, especially with the limits of Python’s type hinting system. But I’m really happy with how it turned out.

It’s implemented in pure Python and so should work on MicroPython, though I haven’t tested that yet.

I’d love to hear if this might be useful in your own projects—or if there are features you wish it had. Thanks for taking a look!

[1] https://kylehusmann.com/benlink
by StopDisinfo910 | 2025-05-13 15:55:38+00:00
> The stress comes from people who are bad at what they do and are trying to make it someone else's problem.

People who are currently bad what they do have their own work struggle, go home to their issue, have their hobbies and ambitions.

I think the article strikes a very good point when it says you don't want to be remembered as that guy but I would go even further in that it's not only about your reputation. When you are that guy, you are actually making everybody life slightly worse including your own.

I think there is more value in acting and being remembered as someone who can lift up rather than as someone who is distant and self-interested. It's not that you should always be mindlessly helpful but you can be assertive, give honest feedback, help people realise when they should take responsibility and define directions without being a pushover or exploited. In my experience, that's how you make people actually want to work with you. These are obviously hard skills to develop (at least they were and still are to me) but they are how so valuable.

To go back to your conclusion, for me it's more about "How do I convince the people I want to work with to work with me?" than about cutting people. After all, you will probably be the sole constant in all the work environments you will be a part of in your life so you are the biggest factor into making them work for you.
by jasonthorsness | 2025-05-13 15:55:52+00:00
> "one objective is to reduce layers of management"

This seems a common theme: even in a company like Microsoft that takes pains to emphasize and support the IC track in addition to management there is a tendency towards creating layers that end up reducing agility.

Maybe it's just an excuse though. I am surprised they announced the 3% rather than just accomplishing it with attrition and slowing hiring. Maybe it looks smart to stockholders so they want the attention.
by Ajedi32 | 2025-05-13 15:55:56+00:00
I interpreted that statement as "this is available in API level 19 and up", not "this was introduced on the same date that we originally released API level 19", but it looks like you're correct: https://www.youtube.com/watch?v=zxHVeXbK1P4 That's way older than I was expecting.
by tecleandor | 2025-05-13 15:56:03+00:00
Yeah, I'm not saying that you're in the wrong, I'm saying that they might want to access further than the new `ACTION_OPEN_DOCUMENT_TREE` API call allows. For example, the Downloads folder (you can only open individual files with ACTION_OPEN_DOCUMENT, not the whole folder). And that can be reached with the `MANAGE_EXTERNAL_STORAGE` (all files) API. Is that OK? Well, it's not intrinsically bad, but it clashes with Google's Android hardening directives.

Not very familiar with the NextCloud client, as I haven't used it much, but in the case of Syncthing (and this is totally guessing from what I remember from reading the forums back when the Android 11 upgrade happened): I don't think they don't want to put the work to switch to the new API, I think they want to access places they won't be able to access with the new API, so that's why they won't change the calls.
by AftHurrahWinch | 2025-05-13 15:56:10+00:00
That is a factually inaccurate description of the role of federal agencies under Chevron deference. Chevron deference was a legal doctrine that required courts to defer to reasonable agency interpretations of ambiguous statutes, not a mechanism that allowed career civil servants to unilaterally create criminal laws. Federal agencies could only issue regulations within the authority explicitly delegated by Congress, and these regulations were subject to judicial review, public notice-and-comment periods, and Congressional oversight.
by taylodl | 2025-05-13 15:56:15+00:00
No it won't, for one simple and old-fashioned reason: software companies aren't going to take on the legal liability. Period end. Full stop.

What's happening is doctors are already being "replaced", really augmented, by physician assistants. The physician assistants in turn will be using AI to help drive toward a diagnosis for which the doctor will have to assess and sign-off on.
by simonw | 2025-05-13 15:56:18+00:00
I've had great results against PDFs from recent vision models. Gemini, OpenAI and Claude can all accept PDFs directly now and treat them as image input.

For longer PDFs I've found that breaking them up into images per page and treating each page separately works well - feeing a thousand page PDF to even a long context model like Gemini 2.5 Pro or Flash still isn't reliable enough that I trust it.

As always though, the big challenge of using vision LLMs for OCR (or audio transcription) tasks is the risk of accidental instruction following - even more so if there's a risk of deliberately malicious instructions in the documents you are processing.
by svat | 2025-05-13 15:56:23+00:00
One thing I wish someone would write is something like the browser's developer tools ("inspect elements") for PDF — it would be great to be able to "view source" a PDF's content streams (the BT … ET operators that enclose text, each Tj operator for setting down text in the currently chosen font, etc), to see how every “pixel” of the PDF is being specified/generated. I know this goes against the current trend / state-of-the-art of using vision models to basically “see” the PDF like a human and “read” the text, but it would be really nice to be able to actually understand what a PDF file contains.

There are a few tools that allow inspecting a PDF's contents (https://news.ycombinator.com/item?id=41379101) but they stop at the level of the PDF's objects, so entire content streams are single objects. For example, to use one of the PDFs mentioned in this post, the file https://bfi.uchicago.edu/wp-content/uploads/2022/06/BFI_WP_2... has, corresponding to page number 6 (PDF page 8), a content stream that starts like (some newlines added by me):

0 g 0 G 0 g 0 G BT /F19 10.9091 Tf 88.936 709.041 Td [(Subsequen)28(t)-374(to)-373(the)-373(p)-28(erio)-28(d)-373(analyzed)-373(in)-374(our)-373(study)83(,)-383(Bridge's)-373(paren)27(t)-373(compan)28(y)-373(Ne)-1(wGlob)-27(e)-374(reduced)]TJ -16.936 -21.922 Td [(the)-438(n)28(um)28(b)-28(er)-437(of)-438(priv)56(ate)-438(sc)28(ho)-28(ols)-438(op)-27(erated)-438(b)28(y)-438(Bridge)-437(from)-438(405)-437(to)-438(112,)-464(and)-437(launc)28(hed)-438(a)-437(new)-438(mo)-28(del)]TJ 0 -21.923 Td

and it would be really cool to be able to see the above “source” and the rendered PDF side-by-side, hover over one to see the corresponding region of the other, etc, the way we can do for a HTML page.
by kmeisthax | 2025-05-13 15:57:09+00:00
You're broadly right, but I would argue that the "anti-populist infrastructure" is specifically responsible for electoral fetishism.

The thing to remember is that in the 1950s and 60s the US government was basically running a censorship regime and had manufactured an anti-Communist consensus. They had to do this because democratic politics back then meant political parties actually listening to their constituents. In other words, America had populist infrastructure, which the state had to carefully commandeer to maintain the illusion of a unified society willing to fight a Cold War against a country which, at least on paper, was promising a better America than America.

This broke in the 70s, when the Vietnam War pitted young Boomers against old[0]. A lot of the civic institutions that were powering democracy in that era got torn apart along age lines, and fell apart completely. Politics turned from something you made with your voice to something you purchased with your vote. This is how we got the Carter / Reagan neoliberal consensus of "free trade and open borders for me but not for thee". The state was free to dictate this new public policy to its citizens because the citizenry were too busy fighting to mount an effective opposition to it.

[0] Recall that "Baby Boomer" is actually two generations of people, both because the baby boom was so long and because America's access to birth control was on par with that of a third world country. There's a never-ending wellspring of parental abandonment in that generation.
by videogreg93 | 2025-05-13 15:57:30+00:00
Not being a rock star but showing potential is great. But there are some people who are allegedly always busy, in over their head, etc. And these are the type of people I agree that should be avoided. I've found that more often than not these people are always wasting time in meetings, chatting it up, only to complain about lack of time 1 hour later.

I'm not saying don't socialize and just work ; you just need to balance the two.
by WorldMaker | 2025-05-13 15:57:36+00:00
To my understanding: iMUSE had the benefit of being something of the peak of the Programmer-Musician. The lead developers on iMUSE were also the musicians in one way or another. In the 80s/early 90s a lot of music was added to games by directly programming it into the game ROM, there was a great need at that time for programmers who were also musically literate to design the music in games. Several of the LucasArts composers directly straddled this line of entering the industry at the time when a lot of music was hardcoded into software as source code and watching the industry shift around them to being able to bring in "real" musicians without programming backgrounds. Some of them retired or pseudo-retired in that shift, others fought to be seen as "real" musicians and had great careers even after the shift. (They were all real musicians to me, as a player and fan.)

Today we're starting to see the growth of the Musician-Programmer. Modern DAWs and middleware like FMOD and Wwise allow a lot of the dynamicism and layering for the musicians willing to learn it, dabble in just enough technical knowledge to be dangerous (as a good thing).

There's probably always going to be an interesting Venn diagram intersection of Musician and Programmer. They are related mathematically and historically. Most of the earliest versions of punch cards were for looms (weaving), then for music, with computers being the third application. The tools and processes change over time, but the relationships remain.
by wahern | 2025-05-13 15:58:07+00:00
> This works. But both gcc and clang warn about the enum being anonymous... even though that's exactly what I wanted to do. And this cannot be silenced with #pragma since it's a macro, so the warning occurs at the location where the macro is invoked.

You can use _Pragma instead of #pragma. E.g.

#define C(x) ( \ _Pragma("clang diagnostic push") \ _Pragma("clang diagnostic ignored \"-Wvisibility\"") \ (x) + 0*sizeof(void (*)(enum { tmp = (int)(x) })) \ _Pragma("clang diagnostic pop") \ )

EDIT: Alas, GCC is a little pickier about where _Pragma is allowed so you may need to use a statement expression. Also, it seems GCC 14 doesn't have a -W switch that will disable the anonymous enum warning.
by WesolyKubeczek | 2025-05-13 15:58:24+00:00
> Messages are all the same - there are no "lite messages" such as emoji reactions - so any message must contain enough content to justify being a full-fledged message, or it won't be sent at all. (Sometimes an "emoji reaction" is felt to be enough content to justify a full-fledged message, which is sent.)

Haven't you heard about the abomination which is Office365? They recently bolted emoji reactions onto email!
by HelloMcFly | 2025-05-13 15:58:26+00:00
Chevron was never a partisan “Democratic” trick, it was a 1984 Supreme Court precedent that applied to every administration for forty years. It simply said that when a statute is ambiguous, courts should accept a reasonable agency reading unless Congress says otherwise (Congress always had the power). That is ordinary separation‑of‑powers.

When the Court overturned Chevron, it did not “return law‑making to Congress” as some claim, it didn't give Congress any more power than it already had. It instead shifted final interpretive power from expert agencies to federal judges. Congress still writes broad statutes and still relies on agencies to fill in technical details only now those rules are more vulnerable to litigation and inherently more fragile.

Comparing that process to Elon Musk’s influence misses the mark. Agencies are public, transparent, and (at least theoretically) answerable to elected branches; Musk is a private supplier whose market dominance lets him set terms with little democratic oversight. One is statutory delegation, the other is private leverage with clear and obvious conflicts of interest.

Treating them as equivalent flattens important distinctions and obscures the real accountability gaps in each scenario.
by westurner | 2025-05-13 15:58:52+00:00
Ford hired George Washington Carver. They heated soybeans to develop a bioplastic.

Soybean car > History, Internet video (of Rollins with a fireman's , Car ingredients: https://en.wikipedia.org/wiki/Soybean_car#Car_ingredients :

> The exact ingredients of the plastic are not known since there were no records kept of the plastic itself. Speculation is that it was a combination of soybeans, wheat, hemp, flax and ramie. Lowell Overly, the person who had the most influence in creating the car, says it was "...soybean fiber in a phenolic resin with formaldehyde used in the impregnation." [16]

What are the binders for aerospace -grade hemp plastic these days? I don't think that formaldehyde is required anymore.

Hempitecture has salt-treated fire retardant hemp batting home insulation product which competes with fiberglass and cellulose batting and fill, and cork.

FWIU treated polyurethane foam (like old seat cushions) absorbs oil (OleoSponge),

Kestrel has a modern vehicle made of hemp plastic.

Name of the 75% hemp aircraft made by Hempearth scientist from Canada doing engineering in the US:

Radar (ROC curve in ML, too) and these days Infrared signatures for hemp vehicles and crafts:

Hemp plastic would have been an advantage in WWII if:

These days many major auto manufacturers use hemp parts in production automobiles for its durability, cost, and sustainability in terms of carbon cost for example.

Hemp bast fiber competes with graphene in ultracapacitor anode applications, and IDK why not normal capacitors and batteries too. Hemp anodes are possibly more sustainable than graphene anodes (in supercapacitors and solid state batteries) due to the environmental and health hazards of graphene production and the relative costs of production.

YouTube has videos of hemp batteries; batteries made of hemp. https://www.youtube.com/results?sp=mAEA&search_query=hemp+ba...

Dimensional Hemp Wood lumber is real, and it is a formaldehye-free sustainable binder FWIU.

So - and this is what Kestrel and Hempearth are going for - it's probably possible to make closer to 100% of a vehicle or an aircraft with biocomposites inspecific or even hemp-only.
by lo_zamoyski | 2025-05-13 15:58:53+00:00
What it shows is managerial insecurity. Despite the obsession with monitoring "productivity", managers really haven't the faintest idea of what they're doing.

A healthy relationship is one in which managers don't monitor and don't micromanage and don't rely on Jira or commit logs to lazily monitor employees. A manager isn't there to lord over employees. He is there to support employees and help them do their jobs. But to do that, you need to know what they're doing.

Talk to them. Listen. Hold 1-on-1s on a regular basis. Assume they're doing their jobs instead of defaulting to a defensive and adversarial posture. If you treat employees like adversaries, they'll behave like adversaries. Grant them reasonable trust and they will take initiative and view the relationship as one that is cooperative. They will be less likely to want to risk losing the reasonable trust they have been gratuitously given; if you default to suspicion, then employees have little to lose. You already think poorly of them, so who cares.

If someone is genuinely slacking or not well-suited, that will come out sooner or later. 1-on-1s, individually and taken in aggregate, will give the manager an idea of what is really happening, especially if the manager is competent and knowledgeable of the domain, which he should be. 360 EOY reviews can also help here, not as an adversarial tactic, but as a way to share feedback. A competent manager can read the tea leaves.
by 3036e4 | 2025-05-13 15:59:11+00:00
I was referring to the APIs required by screen itself to run. If screen is anything like any software I know anything about a fair amount of limited developer time has to be wasted on keeping up with random third-party stuff changing/breaking. Even if that is not the case, if we get more stable software in general that would mean maintainers of free software could take on more projects each, meaning there would be a higher probability that someone could be around to fix bugs in screen.
by AtlasBarfed | 2025-05-13 15:59:15+00:00
Luckily for mechanics, the shortage of actual blue collar Hands-On labor is so small, that good mechanics actually can charge more.

The issue is that you have to be able to distinguish a good mechanic from a bad mechanic cuz they all get to charge a lot because of the shortage. Same thing for plumbing, electrical, HVAC, etc etc etc

But I understand your point.
by whatshisface | 2025-05-13 15:59:25+00:00
Here is an incomplete list of things that it's impossible to research in industry:

1. Astronomy.

2. Physics.

3. Geophysics concerning the parts of the Earth deeper than the crust.

4. Biology aside from medicine.

5. Chemistry aside from industrial chemistry.

6. Theoretical computer science.

7. Mathematics.

I'm not blaming you for not knowing this, but I am holding my head in my hands - how can people not know about astronomers? They've been a part of our culture and the prestige of civilization for thousands of years.
by redleader55 | 2025-05-13 15:59:36+00:00
Carmack is a very smart guy and I agree with the sentiment behind his post, but he's a software guy. Unfortunately for all of us hardware has bugs, sometimes bugs so bad that you need to drop 30-40% of your performance to mitigate them - see Spectre, Meltdown and friends.

I don't want the crap Intel has been producing for the last 20 years, I want the ARM, RiscV and AMD CPUs from 5 years in the future. I don't want a GPU by Nvidia that comes with buggy drivers and opaque firmware updates, I want the open source GPU that someone is bound to make in the next decade. I'm happy 10gb switches are becoming a thing in the home, I don't want the 100 mb hubs from the early 2000s.
by vineyardmike | 2025-05-13 15:59:53+00:00
Nobody wants to work anymore /s

People can be paid better, given better hours, more flexibility, more responsibilities, less responsibilities, better benefits, etc.

If lots of people don’t want to do a job, and that job has trouble keeping quality employees, it’s the job that’s broken, not the people.

Plenty of people were treated great when WFH, but it’s not a universal truth that everyone was.
by Retric | 2025-05-13 16:00:03+00:00
> If a slow program has the features I need and a fast program doesn't, the slow program is going to be "higher quality" in my mind.

That’s irrelevant here, the fully featured product can also be fast. The overwhelming majority of software is slow because the company simply doesn’t care about efficiency. Google actively penalized slow websites and many companies still didn’t make it a priority.
by grahac | 2025-05-13 16:00:07+00:00
Hitting the vibe ceiling is real. I know a bunch of non-devs who come to me asking for help after vibe coding and hitting the ceiling. Usually the best thing to do is to just re-start.

(Also hitting the vibe ceiling happens with developers too- best way to get around it is to revert all changes and start the feature over).
by ijk | 2025-05-13 16:00:14+00:00
Other than, say, the GPS on your phone, the internet that you're posting on, or anything like that--you want to know what government-funded basic science has done to benefit you lately, not any of these decade-long timeline projects that are best funded by institutions with long time horizons, such as governments. Yes, we must have results that are brought to market this quarter, so the government-funded research justifies itself in the free market.
by thewebguyd | 2025-05-13 16:00:30+00:00
At least Windows now makes the UAC dialog distinct from the rest of the OS and any other Window. macOS (and most linux DEs too) just look like any other application dialog, easily spoofed.

UAC on Windows opens up on the secure desktop, which is isolated in protected memory and not accessible to other processes. It's also visually distinct, hiding all other UI elements, and nothing else can present the actual secure desktop, only UAC can. Granted, I've seen some fairly convincing looking fake prompts (that regular users would fall for) but to me they were still obviously fake, and they were unable to hide all UI elements like UAC does.

The secure desktop for UAC is also supposed to help prevent cursor offsets and other attacks (replacing the system cursor with fake one that shows as if it's over the "no" button but is actually going to click on "yes").

macOS could really use something like that for it's prompts, and I don't know why any other OS hasn't implemented something like UAC's secure desktop.