MurphyA/hacker-news huggingface dataset:
by Jtsummers | 2025-05-03 23:33:52+00:00
NSPS was an attempt to push towards something more merit based (still pay band structured, NSPS bands spanned 2-3 GS grades). NSPS was rolled back in 2010 or so because the requirement was that everyone had to be on it by 2009 (early 2010?) and that didn't happen.

There are various *demo (lab, acq, I think some others) that are basically the same as NSPS (in principle) and ostensibly merit based. But they're also capped because of the correspondence to GS grades. Pay can increase much faster, in theory, than under GS but also you can be denied any raise except the general pay increase (below inflation, so a real pay cut even if a nominal pay raise) if your performance is poor.
by FridayoLeary | 2025-05-03 23:34:03+00:00
Another problem you haven't mentioned is the level of union control in the industry. Which is great as far as protecting jobs and salaries for existing controllers but it makes getting a desirable position difficult for a new graduate. From your comment it sounds like they just get dumped with the least desirable location until they've climbed high enough up the totem pole to get a good job.
by throwaway48476 | 2025-05-03 23:34:16+00:00
It takes 1-3 years of facility based training in order to qualify as an ATC for a specific tower. A military enlistment is only 4 years. CCTs would end up doing their entire enlistment at one facility leaving no time to train as a CCT. You'd have to hire another person who's job is 100% CCT, at which point, why not just hire an ATC?
by krick | 2025-05-03 23:34:40+00:00
That's kinda the point. As silly as what you wrote is, it's still a whole level above what ChatGPT can make up. The fact, that it produces human-like text doesn't make it any good, but somewhere there is a manager (and I bet he is not the only one) who just uses it to generate some nonsense announcements and gets paid for his work. Maybe he'll even get a promotion because of how effective he is.
by ToucanLoucan | 2025-05-03 23:35:11+00:00
> I used to agree but these days with Vite things are a lot smoother.

Didn't everybody say the exact same thing about Node, React, jQuery...? There is always a new and shiny frontend JS solution that will make the web dev of old obsolete and everyone loves it because it's new and shiny, and then a fresh crop of devs graduates school, the new shiny solution is now old and boring, and like a developer with untreated ADHD, they set out to fix the situation with a new frontend framework, still written in JavaScript, that will solve it once and for all.

I still build websites now the same as I did when I graduated in 2013. PHP, SQL, and native, boring JavaScript where required. My web apps are snappy and responsive, no loading bars or never-ending-spinning emblems in sight. shrug
by asdefghyk | 2025-05-03 23:35:31+00:00
From the articale ....With its sci-fi antennae bristling left and right, Russian physicist Leon Theremin’s novel invention of 1919 remains the only musical instrument you play without touching anything. “Aerial fingering” was the technique devised by the inventor’s original Lithuanian prodigy, Clara Rockmore, in the 1930s.

......
by spauldo | 2025-05-03 23:35:55+00:00
QModem ran on DOS, so the AT wasn't running UNIX. It's almost certainly being used as a terminal.

I can confirm that they did run Minix OK, although I remember the network support was iffy at best. We never got it to work at any rate. XENIX would have been hard to get your hands on. I think QNX would run on an AT as well, although my memory might be playing tricks on me there.
by Flatcircle | 2025-05-03 23:36:46+00:00
Charlie Munger used to talk about how easy it used to be because there was so much less competition and the competition wasn't that smart. Think by the 70's once they figured out how to accurately price options with the Black-Scholes model things started to ramp up. By that point, Buffett was already a player and had the funds to make moves.
by Demiurge | 2025-05-03 23:37:15+00:00
> Prior to this, getting up and running from a cold-start might’ve required installing or even compiling severall OSS packages, carefully noting path locations, standing up a specialized database… Enough work that a data generalist might not have bothered, or their IT department might not have supported it.

I've been able to "CREATE EXTENSION postgis;" for more than a decade. There have been spatial extensions for PG, MySQL, Oracle, MS SQL Server, and SQLite for a long time. DuckDB doesn't make any material difference in how easy it is to install.
by lmm | 2025-05-03 23:37:18+00:00
> With most web apps having their front-end and back-end developed in concert, there's simply no need for this flexibility

But also no problem with it. There might be some queries expressible in your GraphQL that would have severe performance problems or even bugs, sure, but if your frontend doesn't actually make queries like that, who cares?

> Just have the backend provide the APIs that the front-end actually needs. If those needs change, also change the backend.

Sure, but how are you actually going to do that? You're always going to need some way for the frontend to make requests to the backend that pull in related data, so that you avoid making N+1 backend calls. You're always going to have a bunch of distinct but similar queries that need the same kind of related data, so either you write a generic way to pull in that data or you write the same thing by hand over and over. You can write each endpoint by hand instead of using GraphQL, but it's like writing your own collection datatypes instead of just pulling in an existing library.
by OrsonSmelles | 2025-05-03 23:38:08+00:00
I think having a commitment that strong to a dangerous activity should factor into whether you have kids in the first place. Maybe it doesn't make the answer an automatic "no", but I think one has to really think through one's decision to create a person who will have a disproportionate risk of major trauma in their early life and should have an extremely clear contingency plan for the child's care by someone who is genuinely psychologically and materially prepared for that eventuality. I think that to do less than that would be negligence—it might be a common type of negligence, easily obscured by romanticism about bold endeavors, but it is certainly not taking care.
by Scrutiny6707 | 2025-05-03 23:39:22+00:00
>Working at $dayjob the unit of change is the commit, and every commit is reviewed and signed off by at least 1 peer.

Respectfully, that's the dumbest thing I've ever heard.

Work on your feature until it's done, on a branch. And then when you're ready, have the branch reviewed. Then squash the branch when merging it, so it becomes 1 commit.

Commit and push often, on branches, and squash when merging. Don't review commits, review the PR.

I've had people at various jobs accidentally delete a directory, effectively losing all their progress, sometimes weeks worth of work. I've experienced laptops being stolen.

If I used your system, over the years me and various colleagues would have lost work irretrievably a few times now, potentially sinking a startup due to not hitting a deadline.

I feel your approach shows a very "Nothing bad will ever happen" attitude.

Yes, of course you should have a backup. Most of those don't run every few minutes, though. Or even every few hours.

"Just trust the backup" feels like a really overkill solution for a system that has, as a core feature, pushing to a remote server. And frankly, a way to justify not using the feature.
by philwelch | 2025-05-03 23:40:00+00:00
> The other big problem is Obama changed the hiring test from testing intelligence to testing personality in a bid to increase diversity. There was a lawsuit over this.

It was even worse than that. What they actually did was write up a phony “personality test” and distribute the answer key to applicants who were members of preferred racial organizations.

https://www.tracingwoodgrains.com/p/the-full-story-of-the-fa...
by lmm | 2025-05-03 23:40:07+00:00
How so? You've got all the same debuggability that you'd have with rest - sure you need to look at your requests and responses through your tools rather than directly, but that was already the case unless you're not using HTTPS (which is a bigger problem). Throw up GraphiQL on one of your developer/admin pages and you've got easier exploratory querying than you could ever get with an old-style Rest API.
by int_19h | 2025-05-03 23:40:47+00:00
These are all solvable issues with fairly obvious solutions. For example:

> If main.html includes child/include1.html and child/include1.html has a link src="include2.html" then when the user clicks the link where does it go? If it goes to "include2.html", which by the name was meant to be included, then that page is going to be missing everything else. If it goes to main.html, how does it specify this time, use include2.html, not include1.html?

There are two distinct use cases here: snippet reuse and embeddable self-contained islands. But the latter is already handled by iframes (the behavior being your latter case). So we only need to do the former.
by meristohm | 2025-05-03 23:41:58+00:00
For doing things that are uncomfortable, I've found a habit of cold showers first thing in the morning to be helpful. I've heard this also as "eat the frog (and the rest is easier)", but I'm not that desperate, and we've done enough damage to amphibians.

Dean Spade's Love in a F*cked-up World is also helpful; starting with loving oneself and forgiving missteps/mistakes/failures might help you break through the barriers.
by Balgair | 2025-05-03 23:42:00+00:00
HN's bubble/biases are pretty obvious here and we should expect them. But, as someone that uses code but is not a coder, I'll confirm this.

Nearly none of my coworkers were hired as coders. Yet we all code in some small way or another. As such, 100% of our code is really bad. No, its okay, we know it, it really is bad.

To echo the GP too; I had a friend in grad school that was trying to do some neuroscience experiments and analyze the data. He wanted my help with some matlab code and I said, sure, I'll sit down with you for a six pack. After the 11th nested if-statement, I upped the price to a case.

Like, most of the people I work with do not care at all about the code itself. They care about the result. I know much of HN does care about the code, and I'm not calling you out on it. Your feelings are quite valid! But so are those of myself and my coworkers.

LLMs that can, and very much do, code for us? That is the thing I think HN is really missing out on, understandably so. The power of AIs is not going to be trying to figure out the code base. From what I hear on here, it's bad at this. The power I see in my life is that suddenly, things are possible that we never thought we'd ever be able to do. And most of those things are under 200 lines of code, probably under 15 lines really.

I tend to think of AI as a wheelchair or other mobility aids. For a lot of people I know, AI/LLMs let us get moving at all. The dark ages where we just sat there knowing that we weren't smart enough to do the code we wanted to, to get the results we need? Those days are over! It's so nice!
by waprin | 2025-05-03 23:42:23+00:00
It's one of those things that's like "write one HTML file with zero styling, then you can have multiple different CSS files style the same content completely differently! Separation of Concern!" Sounds perfect in theory but just doesn't always work.

Having one API for web and mobile sounds good but in practice often the different apps have different concerns.

And SEO and page speed were always reasons the server never died.

In fact, the trend is the opposite direction - the server sending the mobile apps their UIs. That way you can roll out new updates, features, and experiments without even deploying a new version.
by ben_w | 2025-05-03 23:42:30+00:00
It's somewhat messier than that. While I am aquatinted with the authoritarian nightmare that was Stalin himself, and with the DDR's Stasi, and think that Marx's vision was *only* an improvement *relative to pre-New Deal era capitalism* and doesn't have much to offer to the modern world[0], there's people in ex-communist countries who yearn for a return to the "good old days" and don't see what the problem was.

(And hunger probably wouldn't be a big thing today: the communist eras most associated with that were fairly early into the process of transitioning away from agrarian and towards industrial societies. Probably would be less choice of food, but there would likely still be enough food, unless they started seeing every failure as a sign of sabotage like Pol Pot did. Which is a thing I'm worried about with Trump, because that failure mode is not limited to just communists).

[0] because the modern world treats women as equals and we have universal education (which was novel for the era Marx wrote in), and trade unions are a thing. This gets most of the benefits without the various different failure modes that come with different kinds of Communism.
by Quinzel | 2025-05-03 23:42:35+00:00
Oh thank you! I had noticed that I had a section of my code that it highlighted with a warning that it didn’t work for iPhone 16.

I’m just trying to get a minimum viable product/prototype together at this stage, so hopefully I can actually pay a programmer (or a few programmers) to make it compatible with as many devices as possible, as well as secure etc. I know as a rookie I absolutely do not have the capacity to build the exact product I’ve got in my mind, but I at least need something tangible to add to my pitch. I appreciate the insight though!
by int_19h | 2025-05-03 23:42:40+00:00
It stands for "markup language", and was inherited from SGML, which had includes. Strictly speaking, so did early HTML (since it was just an SGML subset), it's just that browsers didn't bother implementing it, for the most part. So it's not that it didn't evolve, but rather it devolved.

Nor is this something unique to SGML. XML is also a "markup language", yet XInclude is a thing.
by sensanaty | 2025-05-03 23:45:21+00:00
We still have Vue 2 apps running strong. Our experimental stuff is on Vue 3, which is backwards compatible with Vue 2 for the most part if you avoided mixins (which even in the Vue 2 days was the common advice).

People who say stuff like this have obviously never actually used modern day FE frameworks, because they have all been very stable for a long while. Yes, APIs change, but that's not unique to JS/frontend, and also nothing really forces you to update with them unless you really need some shiny new feature, and at least IME Vue 3 has been nothing but gold since we got on it.
by CuriouslyC | 2025-05-03 23:46:02+00:00
I've been a professional programmer for ~20 years and worked in a variety of languages on a variety of different types of projects, and Typescript with Bun is mostly just fine. It lacks some low level primitives I'd like to have available for certain projects (e.g. Go channels), and the FFI interface isn't as nice as I'd like, but it's basically serviceable for for a very broad range of problems.

You should still know a language like Rust or Zig for systems work, and if you want to work in ML or data management you probably can't escape Python, but Typescript with Bun provides a really compelling development experience for most stuff outside that.
by timschmidt | 2025-05-03 23:46:12+00:00
Not to me they aren't.

I once watched a film of a persistence hunter approaching the prey he'd chased for miles. He spoke to it, approached it calmly, sat with it and caressed it, put it's head on his lap and held it for a minute, petting it like a dog and shushing and whispering to it. And then he cut it's throat, and cried as it died.

That's what living on the farm is like. That's real life, fully and authentically felt. In my opinion, all the living things I eat deserve such respect and reverence for furthering my life.

You can feel differently. Lots of folks do.

> You wouldn’t be saying these things if the aliens came and harvested your children for food.

What if the aliens look like plants? What if they're here already? What if they're your distant cousin?

Funny thing - when you look at single celled organisms like bacteria and yeasts under a microscope, they engage in behaviors which seem shockingly like animal behaviors. They seem to explore their environment, have senses, hunt and eat, reproduce, and notably, they seem to dislike specific stimuli. They really meet every definition I can think of for a being which appears to be conscious, including memory, and we eat them by the billions without even knowing.
by Tadpole9181 | 2025-05-03 23:46:41+00:00
Can someone recommend a self-host alternative for n8n? I'd be fine paying for one of the lower tiers to get access to shared workspaces, so I can work with my small team, but if you want to self-host you have to jump up to the Enterprise version which can easily be 20x more expensive.

This makes it unusable for my purpose.

But in my (limited) research into options like Airflow or Dagster or Windmill, they weren't quite at the same level and it doesn't feel like a significant value-add over writing a simple webhook server.
by tialaramex | 2025-05-03 23:46:56+00:00
> In C++, this could be achieved if all local variables were in fact std::shared_ptr captured by value.

So, in C++ you do actually get to pick what happens and there are plenty of options but for our purposes here all we want is a (mutable) reference capture.

However, experienced C++ programmers would never do this because C++ is all foot guns all the time, so you can express what you meant and it'll blow up and cause chaos because now our reference outlives the thing referred to. Oops.

In Rust we can write what we meant, but instead of the program exploding at runtime the compiler will politely point out that this can't work and why.

And so armed with the knowledge from that, we can (in Rust or with C++ although it's harder to spell in C++) write something that'll actually work.

We could move the captured variable. In Rust we just use the keyword `move`, now the captured variable is gone, moved inside the closure, and so as with the Tcl the same variable (the one moved into this closure) is used each time the closure is called, and if we make another closure that's got a different captured variable.

But we could do the "shared reference" trick, that type is spelled Rc in Rust.
by okanat | 2025-05-03 23:47:30+00:00
It is similar to the lack of a perfect MS Office with full VBA support, or the lack of well-designed CAD software for 21st century or the lack of industry-grade photography software someone can earn a living from, or the lack of reverse-engineering software that has the exact integration and full capabilities of IDA. It is sufficiently hard to get it right, so people who are smart and determined enough to solve PDF editing problem are asking for a return on their investment.

PDFs are final produce of a rendering process. They don't have nice text or image elements you can move around as a unit. The rendering process explodes the source material into thousands of unconnected objects. Fonts are separated into their glyphs so you need to have legal access to a bunch of very expensive fonts to just to write the correct heuristics. You need good algorithms to reverse the layout and even reverse engineer entire documents to rearrange text content. It is stupidly expensive to develop in and hire for this niche. So nobody will release their very expensive heuristics in the wild.

Btw, closed-source alternatives to Acrobat exist. I like Tracker Software's editors a lot. There is also Foxit and Master PDF. The latter two work under Linux but their UI can be janky since they ship their own UI libraries.
by Demiurge | 2025-05-03 23:47:34+00:00
What do you mean by "provisioning a server"? That's a strange requirement. You can install Postgis on a macbook in one command, or actually on all 3 major OS's in one command: "brew install postgis", "apt-get install postgresql-postgis, and "choco install postgis-9.3". Does DuckDB not require a "server" or a "computer"? What does Docker have to do with anything? This is a very confusing train of thought.
by ChrisMarshallNY | 2025-05-03 23:48:32+00:00
> Citroen has been doing it since the 50's with a purely mechanical system.

I remember watching Citroens demonstrating losing a wheel, and continuing to drive, in the early 1970s.

Citroens are cool. Maybe their build quality wasn't so good, or they were too expensive, as I've not seen them on this side of the pond.
by jltsiren | 2025-05-03 23:48:35+00:00
Do you know the motivations of those who hanged Mao portraits, or are you just guessing? I wouldn't know, as I'm not even sure I had seen Warhol's Mao portraits before today. But I've known plenty of people who went to a current or former commmunist country and brought back ironic communist kitsch.
by conradev | 2025-05-03 23:48:51+00:00
I was referring to both the lower memory bandwidth and lower FLOPs. The GPU can just do… more at once? For now. Or is that changing?

I had also assumed that loading a chunk from the cache was not free because I’ve seen cache eviction on my M1, but it’s good to know that it’s no longer as big of a limitation.

also, I’m a big fan of your work! I played around with your ModernBERT CoreML port a bit ago
by achierius | 2025-05-03 23:49:00+00:00
I do think you're broadly right -- the lack of immediate and obvious impact creates a perception that there is no impact. But even your first example -- data breaches -- does have an impact. It might not have happened to you, it might not have happened to me, but people do get their identities stolen, and recovering from that is a nightmare. And nobody is going to 'paper over' John Doe's missing retirement fund or ruined credit score, that harm is permanent.

> this never happened

This is also wrong. Russia has employed cyberwarfare against Ukraine multiple times -- e.g. in 2016 when they took large chunks of the grid for an hour, or more pointedly in 2022 when it was used to disrupt infrastructure and digital operations across the country as part of an invasion. Stuxnet and Triton were also pretty serious -- unlikely to kill millions, but they did have a real effect. If you're bringing this up to explain why people don't care as much as they should, then I agree -- but I would think that it's misguided to suggest that "this has never happened" actually implies that it never will. It took 20 years after the advent of commercial airlines for someone to bomb one, but clearly that is now a major and continuing concern.
by swat535 | 2025-05-03 23:49:27+00:00
I'm a bit conflicted here.. I think we're mixing up the tool with the _intent_ behind it.

To me, this feels less like outsourcing creativity and more like using a writing assistant to shape your thoughts. Kind of like how we all rely on spellcheck or Grammarly now without thinking twice. People were saying the same thing back then too, that tools were "diluting" writing.

I personally don't see the harm. Not everyone is a native English speaker.
by Tadpole9181 | 2025-05-03 23:50:03+00:00
I think you're just looking at this wrong.

The specific words don't matter, so the "AI-powered" may as well be "puppy-powered". The real issue is that while it's fairly easy for SaaS to appeal to an engineering need, it's another matter that they have to convince their non-technical bosses to put down thousands of dollars a month on it.

In this demi-decade, it just happens to be AI-powered that sparkles just the right way to capture the eyes of middle management.

It used to be "no-code" / "low-code". At some point it was "Java-based". In networking, you'll find a lot of "Edge".
by mcv | 2025-05-03 23:50:36+00:00
The Soviets did do by far the majority of the fighting. And dying. Of course that was also a symptom of the brutal and inhuman regime: soldiers were sent into battle in suicidal human wave attacks, sometimes even without a weapon, because Stalin didn't care about their lives.

But they were fighting the brunt of the German military machine, and they did defeat them. It wasn't North Africa or Normandy that broke the Nazis, it was Russia.