MurphyA/hacker-news huggingface dataset:
by danenania | 2025-04-17 17:14:03+00:00
OpenRouter charges a bit extra on credits, and adds some latency with the extra hop, so I decided to keep the OpenAI calls direct by default.

I hear you though that it's a bit of extra hassle to need two accounts, and you're right that it could just use OpenRouter only. The OpenRouter OpenAI endpoints are included as built-in models in Plandex (and can be used via \set-model or a custom model pack - https://docs.plandex.ai/models/model-settings).

I'm also working on allowing direct model provider access in general so that OpenRouter can be optional.

Maybe a quick onboard flow to choose preferred models/providers would be helpful when starting out (OpenRouter only, OpenRouter + OpenAI, direct providers only, etc.).
by simonw | 2025-04-17 17:14:39+00:00
Not exactly - ChatGPT has two ways it can run Python code. It can use Pyodide and run it directly in the user's browser (for Canvas), and it can also run Python code on one of their servers in a Jupyter environment in a locked-down Kubernetes container (their "Code Interpreter" tool).

To my knowledge they don't yet have a run-Python-in-WASM-on-the-server implementation.
by CPLX | 2025-04-17 17:15:14+00:00
> Look at the hundreds of millions wasted on the Windows / IE monopoly trial

The fact that we actually were enforcing antitrust at the time absolutely prevented MS from getting a strangehold on the consumer internet as it was taking off. It's the reason you're posting on this forum in the first place, as it was essential to the success of tech startups in the first dot-com era.

Then we stopped enforcing antitrust laws, and after about 10 years or so the new market leaders had developed the stifling set of monopolies we're all dealing with today.

Breaking up Google (which seems inevitable, this is the third distinct recent case where they've been proven to be a monopoly) is likely to be good for literally everyone, including even Google shareholders.
by IshKebab | 2025-04-17 17:15:35+00:00
It's definitely not as simple as you're suggesting. PDF viewers are not vector graphics editors so they'd have to implement the whole intersection algorithms, and even though PDFs don't reflow they can still have text so now you need to figure out if you delete "is" from "this is hard" you need to calculate where "hard" is.

Definitely doable but hardly straight forward.
by mrguyorama | 2025-04-17 17:16:20+00:00
>What have we done to people?

Uh, we monetized attention? Like, most of the people on this very board did this.

When you monetize something like that, of course it sets off an arms race and puts pressure on everyone's resources of attention.

The attention economy needs to be eradicated.

A newspaper of yesteryear couldn't print infinite ads. They had roughly a set number of pages, mostly down to the economics of printing itself, and had to find the most valuable advertising to fill that space with.

In the modern day, you can create more space. No longer do you have to curate advertising to ensure it is getting everyone reasonable value, because instead of having a competitive market, everyone just created digital heroin.

Imagine how awful the world would be if literally any shithead with a few dollars could slap a sign down on your front lawn that completely blocked your view and there was nothing you could do about it.

Don't imagine, because that's the very world software developers have built
by ltbarcly3 | 2025-04-17 17:16:32+00:00
You are calling me a racist and saying I'm somehow responsible for attacks on chinese people 100 years before I was born. It's so lazy and straw-man, you don't seem able to honestly engage with what I'm saying.

What I'm saying is that if you can show that it is very likely that 99% of the people from Alabama are dumb (this is not true but for the sake of argument), and Bob is from Alabama, there's approximately a 99% chance that Bob is dumb if you don't know anything else about Bob to improve your estimate. This is just true, and it's obvious, and if you read what I said it's exactly how I framed it (he's very likely or almost certainly lying). This isn't because of class, or race, or age, or whether they are trans or whatever else.

One more time:

People come to the border or get caught in the US without a visa. If they say "I'm in danger" about 85% of them are allowed to stay in the US while their claim is processed. Of those people who stay, only 10% end up being approved. 10% are denied, and 80% don't show up for the interview, get arrested for something else, self deport, etc. So best case, if you trust our judges, half are not credible. Since the 20% that show up probably, on average, have the best cases it's a fairly safe bet that the 80% who don't show up wouldn't break 50/50, maybe more like 80/20. So 74% would be found not credible (10% who are denied with interview, and 80% of the 80% who don't show up), 26% credible. That's a pretty overwhelming majority who are not making an honest claim. But again, if we just go with the numbers we know, it's 50/50, half are lying (or if you prefer "making an incredible claim they are unable to support with plausible evidence").
by dceddia | 2025-04-17 17:16:40+00:00
I wonder how much of this is that code is less explicit than written language in some ways.

With English, the meaning of a sentence is mostly self-contained. The words have inherent meaning, and if they’re not enough on their own, usually the surrounding sentences give enough context to infer the meaning.

Usually you don’t have to go looking back 4 chapters or look in another book to figure out the implications of the words you’re reading. When you DO need to do that (maybe reading a research paper for instance), the connected knowledge is all at the same level of abstraction.

But with code, despite it being very explicit at the token level, the “meaning” is all over the map, and depends a lot on the unwritten mental models the person was envisioning when they wrote it. Function names might be incorrect in subtle or not-so-subtle ways, and side effects and order of execution in one area could affect something in a whole other part of the system (not to mention across the network, but that seems like a separate case to worry about). There’s implicit assumptions about timing and such. I don’t know how we’d represent all this other than having extensive and accurate comments everywhere, or maybe some kind of execution graph, but it seems like an important challenge to tackle if we want LLMs to get better at reasoning about larger code bases.
by sfn42 | 2025-04-17 17:18:22+00:00
When I was young I went to school to become a chemical process technician. This was a very attractive education for women because it allowed them to work in factories and oil rigs without getting their hands dirty. It's mostly just sitting in control rooms and such, taking walks to make sure things are running smoothly.

The companies hiring had gender quotas to meet, so this was one field where they filled a lot of their quota. Our class was exactly 50% men, 50% women. I worked my ass off, we were graded 1-6 where 6 is best and I had all 6es except one 5 in one class.

Everyone applied for apprenticeships to Statoil (now Equinor) and from our class they hired one guy with literally perfect grades, and nearly all the girls. Over 80% of the girls were accepted, girls with a grade average of 4.2 compared to my 5.9 got the job. I didn't and neither did any of the other guys in the class except one.
by SamuelAdams | 2025-04-17 17:18:50+00:00
> But when the Kentucky AG’s office was preparing to post their brief against TikTok, whoever was in charge of doing the redaction simply covered the relevant text with black rectangles. Even though you can’t see the text while reading the PDF, you can just use your cursor to select each black section, copy it, and then paste it into another file to read the hidden text. It is great fun to do this — try it yourself! Or just read our version of the brief in which we have done this for you.

I feel like there needs to be more education about redaction and obfuscation tools, namely this black box tool and blurring. It is usually possible to reverse blurring. Not redacting information properly is just embarrassing.
by kridsdale1 | 2025-04-17 17:18:52+00:00
I am a data point of resuscitation of fertility. Confirmed to be shooting blanks after years of juice, and decided to see if I could reactivate by following the broscience (and all the pubmed papers) on the topic.

An aggressive protocol of HCG and HMG (analogues for FSH and LH in the pituitary) reactivated the testes to get back to spermatogenesis and T production after about 5 years of complete dormancy. It took about 4 months of daily needles and well-timed marital conception-attempts. The son I fathered as a result is anecdotally very strong and a voracious eater. My urologist said it sounded like I knew everything I needed to do and was satisfied to let me self-treat.
by text0404 | 2025-04-17 17:19:07+00:00
> extensive programs of race consciousness

Programs which were largely created by both academics employed in educational institutions and by the paying students who wanted to learn about more than Western history and culture.

Where's the outrage when history classes center almost entirely on Western, white narratives? Or when English classes focus overwhelmingly on white authors? Why does concern about "race consciousness" only seem to surface in the face of efforts to include perspectives outside of white culture?
by momojo | 2025-04-17 17:19:39+00:00
From the badly redacted Kentucky AG PDF:

> As the U.S. Surgeon General recently explained, children’s and parents’ attempts to resist social media is an unfair fight: “You have some of the best designers and product developers in the world who have designed these products to make sure people are maximizing the amount of time they spend on these platforms. And if we tell a child, use the force of your willpower to control how much time you’re spending, you’re pitting a child against the world’s greatest product designers."

This struck a chord. I struggle with addictive tendencies and I've been having to re-teach myself that stumbling is not always because "I didn't try hard enough" but because I live in a world thats optimizing for retention/subscriptions/etc...
by olyjohn | 2025-04-17 17:19:45+00:00
Tech companies have set back technology by decades already.

We can't to any P2P shit on the internet, instead everything goes through a middle man who will take your money or flood you with ads.

We have bandwidth limitations on every connection, even though bandwidth is cheaper than it's ever been.

The only universal communications system is still... Regular-ass phone calls and e-mail, which is like 100+ and 50 years old respectively. Everything else is proprietary and doesn't work with other systems.

We have to launch tens of thousands of satellites and beam data into outer fucking space in order to get internet to people.

Most of the "internet" all runs in 1 of 3 cloud providers.

We are forced to use Chrome on Windows, or use a Phone to browse the web or deal with endless captchas and having to prove that we are humans.

Search engines are all fucked and barely work. Everything is full of junk and trash. Now we need that chip production to run massive data centers to train some AI on how to sift through all the trash.

I don't know who else to blame but the tech industry itself.
by dcchambers | 2025-04-17 17:20:01+00:00
Infinite-scroll content (especially mindless VIDEO content) was NOT a thing when we were kids. And we also had to sit down at a desk and browse the internet on a computer.

Having 24/7 access to infinite amounts of brainless content in your pocket is not something we ever had to contend with. This is uncharted territory. And it's terrifying.
by zamadatix | 2025-04-17 17:20:20+00:00
Yes, I'm agreeing with your (core) point through and through - the nuance came into play with the way you tried to argue the point. It sorta made sense if you already saw things the same way, otherwise it came across as completely ignoring the context GP provided to demand GP consider context without further example of why their context was incomplete. At the end of the day, a part saying "and this is why it's actually different in that context" is still unanswered and you're just telling them to ignore that.

The same is true of the second call. If we dismiss the need to explain why this case is different as just disingenuous what-aboutism to be ignored the argument is left as "if one takes this as problematic then it's clear how it'll be problematic to counter". There's still no persuasion of why it's differently problematic if you don't already see reasons why yourself, just the assertion it is if one thinks enough (which could be asserted about anything true or false).

I think the biggest things that make this problem unique from the media context GP provided are:

- The individualized and targeted nature of the algorithmic feed being a different type of influence concern than content for mass or group consumption.

- The above individualized nature leading into much stronger "echo chamber" polarization, especially when combined with the endless and always on nature of the feeds.

- The content itself is delivered in many more technological layers of dark patterns than traditional mass/group media ever carried.

The only argument I hear a lot which I exclude from my list is the quality/type of content. I think, if you remove the above problems, the content would really not be as different from typical content as we'd like to think. I know others disagree and say it's the short nature itself which is harmful but I don't think that's actually a new unique argument to why people are worried about this latest media trend.
by anal_reactor | 2025-04-17 17:20:50+00:00
As a man who will never rape a woman, I care a little about the possibility of a random stranger having a small possibility of being raped, but I care much more about myself getting potentially unjustly accused of sexual abuse and suffering consequences. If engaging in any interaction with a woman will get me an acquaintance at best and ruin my career at worst, then this sounds like a very bad deal.
by cryptopian | 2025-04-17 17:21:12+00:00
It's said that the most disruptive technologies are the ones that change the way we communicate.

I'll admit, a lot of the reason for me being reticent of jumping into the AI game is an increasing amount of distrust towards the current state of the tech industry. Social media giants rose up, made everybody excited about the opportunities to communicate with anyone (which are perfectly valid, I was on board too) and years later, we come to realise the addictions, the fractured information landscape and the surveillance. Now a bunch of companies from the same part of the world come along asking for billions to change the world again and I'm just exhausted by the whole conversation.
by sodality2 | 2025-04-17 17:21:15+00:00
Jonathan Haidt has written and published huge amounts of posts, papers, and an entire book targeting social media and technology as a whole (not shying away from American-owned media, if anything, specifically targeting them). Literally yesterday, he published the same format of post against Snapchat [0]. Why does reading a single post targeting one social media destroy any credibility at all?

[0]: https://www.afterbabel.com/p/industrial-scale-snapchat
by gen220 | 2025-04-17 17:22:34+00:00
I too feel this urge. It's a difficult path to go down, and an even more difficult path to lead others down.

Mainly because the destination is an alternate economy where "companies" are smaller, returns are not concentrated to "founders" or investors or even shareholders, and so on.

The tech industry has become "evil" because it has put on social blinders while pursuing profits. To give up that path and choose another path is to choose more prosperity for "we" and less prosperity for "me". It's not a difficult choice in the abstract, but it's a very difficult for people with (oftentimes spurious, but still) bills to pay.

There are vanishingly-few ways to ethically draw a six figure salary (inflation-adjusted for 2016 dollars) out of this economy. Giving up that illusion is going to be really difficult (perhaps impossible) for the people in our industry who were drawn here by that promise and have grown comfortable with the terms of the bargain.
by olyjohn | 2025-04-17 17:23:13+00:00
"Java was designed by James Gosling at Sun Microsystems. It was released in May 1995 as a core component of Sun's Java platform."

https://en.wikipedia.org/wiki/Java_(programming_language)

Oracle did what they always do, buy shit out and then milk people for money. That's all they do with it, and why nobody actually uses Oracle's JDK anymore.
by rich_sasha | 2025-04-17 17:23:18+00:00
Companies self-regulating around safety is even worse than banks self-regulating before 2008. At least the investment banks at that point were public companies and had to do a ton of disclosures. OpenAI doesn't have to.

If we want AI "safety", whatever that means, we need regulators and enforcement. Without it, I'll assume it's decoration.
by Xelynega | 2025-04-17 17:23:29+00:00
If you're authenticating the exact same way you would to an HTTP api(put an API key in the config), why does MCP need to exist instead of just plugging in the API key + link to openapi specs in an "Agent API Config"?

I was responding to you saying that the security model is different because servers can be treated as client applications for the security model, but that doesn't make sense for third party servers that you aren't hosting and just sending/receiving data from.

From the client PoV, booking.com could return malicious information to my prompt telling it to do unauthorized things with my computer(e.x. upload banking cookies to a remote endpoint). This doesn't sound secure, and just saying "it's part of the client" doesn't change that.
by QuantumGood | 2025-04-17 17:24:02+00:00
It certainly depends on what you optimize for. For example, about 1/3 of the 320 American Nobel Prizes in science have gone to immigrants.

Currently, US universities license around 3,000 patents, 3,200 copyrights and 1,600 other licenses to startups and companies. They spin out over 1,100 science-based startups yearly, creating countless products and tens of thousands of jobs.

This university/government partnership became the model other countries try to copy post WWII, though the current administration has walked away from it.

The genius of the US system was indirect cost reimbursement. The government not only paid researchers' salaries but also funded their facilities and administration costs. This was the secret sauce that built world-class university labs that attracted scientists globally, causing other countries to worry about "brain drain" to the decentralized, collaborative US ecosystem combining massive government funding for university research with private industry scaling the solutions.

Meanwhile, Britain tried a centralized approach with government labs, achieving breakthroughs but lacking the scale, integration and capital to compete in the post-war world.
by mrguyorama | 2025-04-17 17:24:11+00:00
Except google doesn't consider this a problem.

Just like modern casino slot machines aren't actually fun despite being made by the exact same companies as very fun arcade and home video games, it's just more efficient/profitable to optimize for the easily addicted.

A casino makes most of it's money from addicts, so why waste any effort/money on making actual "good" anything when they can just press harder on the addiction buttons. Everything in a video slot machine is optimized around pressing the very specific dopamine buttons in a gambling addicts brain, to the point that it is WORSE for those who are less prone to gambling addiction.

In the exact same way, google doesn't care if you watch shorts, you are less profitable than the user who spends all day doomscrolling. So the content isn't optimized for you explicitly because the optimizations that make it more addictive for problem users, and therefore more profitable, are diametrically opposed to making "good" media.

The creative mind behind Spongebob wanted to finish after one season. "It's done, it's good, I like it as art". But Nickelodeon couldn't let that happen because it was a cash cow. So it's gone for like 8 slop filled seasons, that everyone recognizes as "worse" than the first season.

But "Good" has never been as profitable as "Addicting", so any market where you can sell something "Addicting" will be completely filled by addicting slop.
by kmoser | 2025-04-17 17:24:39+00:00
The illustrations are definitely the secret sauce that makes this so engaging and informative. I'd also like to see links to where I can learn more about particular topics online. For example:

> Or maybe you’ve wondered why we call it a Gaussian blur?

Nowhere is Carl Friedrich Gauss mentioned, which is unfortunate. This should really link to the Wikipedia entry for https://en.wikipedia.org/wiki/Gaussian_blur.
by zamadatix | 2025-04-17 17:24:58+00:00
Websites can't autoplay audio anymore (which is actually really annoying in a few use cases) precisely because of abuse.

I don't think it'll be problematic though because a site can already choose to show you images a lot more bothersome than a bright light (I say this as I type on a 1600 nit HDR monitor) already and that's not a particularly common problem to worry about either. Same for videos, which already HDR support in browsers.
by kazinator | 2025-04-17 17:25:04+00:00
You also have to go through gymnastics of syntax to write a shell program that anyone could reliably use on any data, with any file names.

$ txr This is the TXR Lisp interactive listener of TXR 299. Quit with :quit or Ctrl-D on an empty line. Ctrl-X ? for cheatsheet. Poke a few holes in TXR with a fork before heating in the microwave. 1> (flow (glob "/proc/*") (take 10)) ("/proc/1" "/proc/10" "/proc/101" "/proc/102" "/proc/103" "/proc/104" "/proc/107" "/proc/1074" "/proc/1086" "/proc/11") 2> (flow (glob "/proc/*") (take 10) (map (op trim-left "/proc/"))) ("1" "10" "101" "102" "103" "104" "107" "1074" "1086" "11") 3> (flow (glob "/proc/*") (take 10) (map (op trim-left "/proc/")) (sort @1 : toint)) ("1" "10" "11" "101" "102" "103" "104" "107" "1074" "1086") 4> (flow (glob "/proc/*") (take 10) (map (op trim-left "/proc/")) (sort @1 greater toint)) ("1086" "1074" "107" "104" "103" "102" "101" "11" "10" "1")

How about we parse digit sequences out of the path names and combine them with the originals, then sort on those digit sequences turned into integers:

5> (defun get-nums (str) (flow str (tok #/\d+/) (map toint))) get-nums 6> (flow (glob "/proc/*") (take 20) (csort @1 greater get-nums)) ("/proc/11170" "/proc/11169" "/proc/1222" "/proc/1199" "/proc/1198" "/proc/1194" "/proc/1133" "/proc/1104" "/proc/1086" "/proc/1074" "/proc/117" "/proc/107" "/proc/104" "/proc/103" "/proc/102" "/proc/101" "/proc/12" "/proc/11" "/proc/10" "/proc/1")

csort is caching sort: it caches the result of the key function through which the elements are projected to form the argument of the comparison. In other words, so we don't wastefully call get-nums multiple times for the same path.