MurphyA/hacker-news huggingface dataset:
by hnbad | 2025-12-22 16:15:28+00:00
You must believe that US companies are trying to enter and stay in hostile markets out of the sheer kindness of their hearts. Have you considered that not being present in the second biggest market by GDP may actually be a massive liability by creating a massive opportunity for competitors that will be far better adapted to stricter regulatory conditions? You could just as well advise US car manufacturers to stick to building cars like the Cybertruck and ignore markets that consider it unsafe.
by randallsquared | 2025-12-22 16:15:43+00:00
Python was viewed as an alternative to Perl mainly because they were used for the same kinds of scripts. The biggest difference at the time, how-many-ways-to-do-it notwithstanding, was that when a novice saw a Python script of 20-50 lines, they (felt like they) understood it without having to reach for a language reference. Readability at a glance for people who hadn't yet specifically learned the language was huge. "Executable pseudocode" was the operative phrase.
by Tade0 | 2025-12-22 16:15:49+00:00
I think I saw one as a child in the mid 90s - it belonged to an upper-middle class Kuwaiti whose at the time preschooler daughter was approximately as tall as the device, which was laid on the carpeted floor.

At the time there were a lot of private import items in Kuwait - particularly cars - so it's not impossible it was this particular model. I mean, what other TV could boast being the height of a four year old?
by arnvald | 2025-12-22 16:15:56+00:00
Years ago I wrote article on this topic: https://www.notonlycode.org/why-python-has-won/

In short (all below is my opinion): it was popular in academia and got some corporate adoption, so when ML exploded in popularity it was a natural choice as the scripting language for ML tooling. On top of that it’s easy to pick up as a language, and it’s a general purpose language - there are lots of scientific tools like pandas written in it, there are web frameworks, etc.

Perl was too quirky for wide adoption and it stopped developing (Raku/Perl 6 took to long to develop), PHP was focused purely on the web, similarly JS. Ruby could have won, I like it more than Python, but outside of Japan it’s also mostly been associated with web development (because of Rails), it also lacked libraries that Python already had.
by BeetleB | 2025-12-22 16:16:06+00:00
Win what?

Against Perl? Over a decade ago. 10 years ago, the only places that required Perl were either hard engineering (i.e. non-programmer EEs) or those with legacy code bases.

Over everything else? Of course not. You don't do systems level work in Python.

The problems with Python are minor (other than packaging), and not a big enough pain to adopt another language. If you really could benefit from static typing, there are already existing languages that do the job well (C++, Rust, etc).

For the majority (including even some Perl fans), switching to Python was a significantly better experience. If you now show me a language better than Python, it's really only an incremental benefit. Sure, I prefer ML languages like F#, but the vast majority don't.
by fedeb95 | 2025-12-22 16:16:11+00:00
block google tracking and search history (minor downside for a major gain). Disable the youtube homepage. Use services that keep out as much trackers as possible: duckduckgo (you can still use google with !g), an email that's not google, a browser that's not chrome. All this reduces the algorithms power over your choices.

Use social networks in a healthy way: avoid scrolling on the home/main page. Search for the information you want yourself and don't rely on what's handed to you. This works in general, TV, papers, ...
by amarant | 2025-12-22 16:16:20+00:00
Create a folder called "prompts". Create a new file for each prompt you make, name the time after timestamp.
Or just append to prompts.txt

Either way, git will make it trivial to see which prompt belongs with which commit: it'll be in the same diff! You can write a pre-commit hook to always include the prompts in every commit, but I have a feeling most Vibe coders always commit with -a anyway
by troyvit | 2025-12-22 16:16:23+00:00
They can't put you in jail, but they will often happily sell your data to the government so that they can put you in jail [1], and by holding the data they are now open to subpoenas anyway.

Additionally, making surveillance by corporations the norm they've eroded everybody's reasonable expectation of privacy, which is the standard by which U.S. courts judge if surveillance has gone too far. Now that we're all used to this level of corporate surveillance we won't blink when the government does it too.

IOW if corporations weren't hoarding this data governments would have a much harder time securing it.

[1] https://www.nbcnews.com/tech/security/us-government-buys-dat...
by dpark | 2025-12-22 16:17:25+00:00
> If you survey the language landscape now, a language can be much better than Python but never get the chance Python did just because it happened to look a bit better than Perl. Which is absurd to me.

You’re struggling to understand Python’s success because in your head the primary reason Python succeeded was because it happened to be prettier than Perl, and you can’t wrap your head around why that’s enough. But it’s not enough. Python succeeded for many reasons.
by jmclnx | 2025-12-22 16:18:06+00:00
It is a shame for them, but this was predicated by my Father and Uncles in the late sixties when they were talking about a for-profit hospital operating somewhere in far from us. I overheard them talking in the kitchen when I was a kid. I never forgot.

So here we are, yet the idiot US politicians still do not want real health care support for their constituents because they will lose their bribes.

Edit: Now I am wondering if they were talking about Nixon's proposed plan. I had forgotten all about that plan until I saw a comment about it.
by loumf | 2025-12-22 16:18:09+00:00
I have recently gone all in on Python. Before I decided this, I was using Python for projects where I needed Pandas or numpy. I used React/TypeScript/Node for web applications. But, I moved to Django/HTMX.

The main reason is to avoid npm, but also, I wanted something with more built-in defaults (my web apps have simple needs). It has nothing to do with the language -- it's more the ecosystem for me.

I considered Ruby/Rails, but it didn't seem enough better than Python and can't replace the Pandas work I need to do.
by kemayo | 2025-12-22 16:18:19+00:00
It's hardly "inexplicable"... particularly if you're comparing it to Perl, a famously hard to read language.

* Python has clean and readable syntax that a complete beginner can understand -- it's really close to the pseudocode you might use for teaching.

* Python has a good standard library, so you can do a lot before you need to work out how to install more (and, reproducibility concerns aside, `pip install` is really simple once you get there)

* Because it was easy to pick up and easy to use for teaching, it took over some niches like stats in academia / data-analysis, where the people doing the work aren't professional programmers but just need something they can hack together. Once NumPy existed, people had minimal incentive to move away.

(Insert Marge Simpson "I just think it's neat" gif here.)
by gbalduzzi | 2025-12-22 16:18:23+00:00
It's not about being beautiful or ugly, it's about being simple.

Python is simple to read / write and easier to reason about, especially for people that need a programming language to solve a problem but are not software engineers.

The reason it won, especially in data analysis, is because most data analyst are/were not software engineer and Python feels more natural to people.

The indentation is not a big problem when a decent text editor is used
by WorldMaker | 2025-12-22 16:18:25+00:00
In the 1990s, this was called "whispering" and had pockets in BBS/CompuServe/AOL/usenet discussions. Also why I still think of all caps as shouting and can't be convinced otherwise (looking at Microsoft and a few other companies and their designers that keep going through phases insisting all caps is a useful flavor in UI design and not shouting for attention that they don't need).
by evgen | 2025-12-22 16:18:25+00:00
That 'ugly' required indentation and whitespace also made Python easier to read, especially for newbies and casual coders. A standard visual structure and a syntax that is pretty close to executable pseudo-code lowered the barrier to entry for a lot of people and made Python feel 'approachable'. This perception that it was easy to use helped increase the network effects other have noted.
by jader201 | 2025-12-22 16:18:26+00:00
I think I would feel more manipulated re: this distribution of cause of death if I felt like mass media was intending to send the message that homicide and terrorism had higher rates than heart disease or cancer.

I don’t get the impression this is the message they’re intending to deliver. I believe they report on individual stories of homicide and terrorism because it’s more interesting to the public, thus will gain more viewership.

To be clear, I’m not saying mass media isn’t manipulative — in fact, I think they are responsible for much of the misinformation being shared and believed by so many, particularly when it comes to politics.

But if we’re just talking about statistics on the cause of death, I don’t believe they want us to believe homicide/terrorism causes more deaths than heart disease/cancer.
by vintagedave | 2025-12-22 16:18:30+00:00
Ex-product manager of an IDE and language here. Languages, like just about anything, win because of what you can do with them: ie, value. Consider Ruby on Rails: it drove Ruby; the achievement was easily creating fullstack web apps, at just the right time. Consider VB: you could build UI apps. No languages win based on the language itself but what it lets you achieve. Usually, this is in the form of libraries:* ie, functionality that using the language lets you achieve. It's not the language, but where using the language lets you get to.

Python is a nice language, but so are others. I know of three main libraries -- three main "I can get stuff done" -- eras with Python, and I think these drove Python.

1. Beautiful Soup. Early/mid 2000s, web scraping and website / XML / HTML data manipulation were a thing; this library came along and made it easy. I'd heard of Python before on places like Slashdot; it was cool but Perl was more spoken of. Then, in my anecdotal experience, what I suddenly read about was not Perl or Python, but Beautiful Soup.

2. NumPy / SciPy. Python was apparently written with numerical computing in mind, and NumPy in its current form arrived a bit after BS. Early 2000s: stats and data vis folk were using R. By the 2010s, I was hearing about all these people that were not using R, but were using NumPy and SciPy.

3. AI. Until a few years ago, it was all SciPy, then with the current era, everyone is using Python -- for AI.

None of this is the language, per se. People were not 'using Python'; they were (say) using SciPy.

I think Python benefited hugely from having not a single "I can achieve stuff" value proposition, like VB did; it had three consecutively in a row.

These all had roots well before they became well-known. Enthusiasts, initial design, years of work and usage, and 'suddenly' out of nowhere everyone is using it. The common factor there is likely Python's design and community; there would be lower level reasons for Python's success than the things it let users achieve, and those would be, what incentivised or led to Python being used for those libraries (value enablers) in the first place. I can't speak to that; I wasn't there in the Python community in the 90s or 2000s.

[*] Not always: Rust's value is in its memory system and safety. That is not a library but inbuilt, yet that still is something you can do, a goal, value, something you achieve using the language and thus you turn to the language in order to achieve. Rust minus that would need some other reason to be used.
by Joker_vD | 2025-12-22 16:18:42+00:00
> don't believe the "syntax win" scenario. Python is also ugly, due to the required indentation, like yaml.

That's like, your opinion. Python was explicitly designed being easy to learn, borrowing heavily from ABC, which actually experimented with different syntaxes to see what works and what doesn't. The indentations apparently helps a lot with this, along with ':' before the introduction of indented blocks.
by nromiun | 2025-12-22 16:18:47+00:00
Because not many people prioritize syntax design like GvR. Even now if someone releases a new programming language most people will ask what features it has, how fast it is, how fast is the package manager etc. Because these questions are simple yes and no ones. Unlike syntax design choices.

Even if they ask about the syntax design people just dismiss their question with saying "syntax is not important". Python did the opposite, it focused on syntax over everything else. That caught on with beginners and now here we are.

Of course with AI Python got even more popular, but even before ChatGPT was released it was already dominant.
by loloquwowndueo | 2025-12-22 16:19:01+00:00
Indentation is there regardless, and is increasingly enforced by format-checking tooling which is more commonly an out-of-the-box offering for many ecosystems (gofmt).

So why not make it have syntactical meaning since it’s already there in 99% of cases?

It does feel weird at first but honestly it’s not something you’ll think about much after a while.
by simonw | 2025-12-22 16:19:14+00:00
LLMs notoriously don't learn anything - they reset to a blank slate every time you start a new conversation.

If you want them to learn you have to actively set them up to do that. The simplest mechanism is to use a coding agent tool like Claude Code and frequently remind it to make notes for itself, or to look at its own commit history, or to search for examples in the codebase that is available to it.
by lizknope | 2025-12-22 16:19:17+00:00
Nothing against Python but I still use Perl 5 because it works for what I need to do.

The Perl 6 redesign was announced in 2000 and it has been going on for 2 decades? Python is clearly a good programming language but the Perl 6 redesign took so long that many people gave up. Then it was renamed Raku in 2019 I think.
by jurystillout26 | 2025-12-22 16:19:48+00:00
Many people seem to be claiming that "LLMs do what humans do / humans also hallucinate", as if the process of human knowledge is identical to the purely semantic knowledge of LLMs.

No. Human beings have experiential, embodied, temporal knowledge of the world through our senses. That is why we can, say, empirically know something, which is vastly different than semantically or logically knowing something. Yes, human beings also have probabalistic ways of understanding the world and interacting with others. We have many other forms of knowledge as well and the LLM way of interpreting data is by no means the primary way in which we feel confident that something is true or false.

That said, I don't get up in arms about the term "hallucination", although I prefer the term confabulation per neuroscientist Anil Seth. Many clunky metaphors are now mainstream, and as long as the engineers and researchers who study these kinds of things are ok with that, that's the most important thing.

But what I think all these people who dismiss objections to the term as "arguing semantics" are missing is the fundamental point: LLMs have no intent, and they have no way of distinguishing what data is empirically true or not. This is why the framing, not just the semantics, of this piece is flawed. "Hallucinations" is a feature of LLMs that exists at the very conceptual level, not as a design flaw of current models. They have pattern recognition, which gets us very far in terms of knowing things, but people who only rely on such methods of knowing are most often referred to as conspiracy theorists.
by vunderba | 2025-12-22 16:19:49+00:00
Somewhat related but back in my university days, I spent practically all my savings from a summer part-time job to buy a 21" Sony Trinitron CRT. I absolutely loved that thing, but at the end of each year I dreaded having to lug it home and then haul it back to the dorms again.

The elevators often didn’t work and climbing 10 flights of stairs while carrying a 70 lb (31kg) cube was brutal. It’s not often you buy a piece of electronics and get a complimentary workout regimen thrown in.
by theamk | 2025-12-22 16:20:17+00:00
Python wins hands-down in having readable code.

Perl has so many ways to write the same code, no two codebases are the same - it's practically different languages. Back when I was programming Perl, I remember reading my own Perl scripts I wrote few years ago, and being annoyed with how they were doing everything all wrong... because in those few years, my Perl style has changed significantly. And others' scripts were even worse!

Plus, python had all those neat quality-of-life things useful for day-to-day scripting. For example actual function parameters, exceptions (no more "or die" after each open), pretty big stdlib (I _don't_ miss having to configure "cpan" on each new machine), repr() in language core, etc..

And yes, Python got lucky somewhat - there was a need for "Perl but easier to read and friendlier to new users", and Python has filled that need. And now that need is no longer open, so it's harder for newcomers to fill that niche. But that's life in general - Rust filled the niche of "No overheads like C++ but memory safe", Go has filled the niche of "Compiled systems language with GC" etc... And once a language gets popular, network effects kick in.
by tracker1 | 2025-12-22 16:21:35+00:00
I think it depends on the patterns in place and the actual complexity of the problems in practice. Most of my personal experience in Rust has been a few web services (really love Axum) and it hasn't been significantly worse than C# or JS/TS in my experience. That said, I'll often escape hatch with clone over dealing with (a)rc, just to keep my sanity. I can't say I'm the most eloquent with Rust as I don't have the 3 decades of experience I have with JS or nearly as much with C#.

I will say, that for most of the Rust code that I've read, the vast majority of it has been easy enough to read and understand... more than most other languages/platforms. I've seen some truly horrendous C# and Java projects that don't come close to the simplicity of similar tasks in Rust.
by AlanYx | 2025-12-22 16:22:02+00:00
I'm not criticizing the content of this post, but the author is likely wrong about this specific initiative being called "Going Dark".

"Going Dark" has been the umbrella term various worldwide intelligence orgs have been using since the mid-2010s to describe their lack of access to encrypted communications. For example, here's FBI Director James Comey using the term in 2014: https://www.brookings.edu/articles/watch-fbi-director-james-... It's a coordinated broad branding effort by intelligence agencies across the west, but I doubt that this specific EU initiative itself has ever been called "Going Dark" even internally.
by kayo_20211030 | 2025-12-22 16:22:12+00:00
My 2c. And only my recollection. Back in the stone age, there were two that had significant mindshare: perl and python. Of course, there were others, and they had their day in the sun too (e.g. rexx, rebol, etc.). I suspect that python stood out, and developed momentum, because of its availability on, and integration with, Windows where many of today's senior devs were cutting their teeth. Particularly, I'd point out, Mark Hammond's contributions. Suddenly, you had an accessible language with a deep integration with the underlying OS. Perl had that too, if you were using one of the unices, but most eager devs weren't - back then, linux wasn't what it is today. Perl excelled at the traditional file-based (and filelike-based) tasks. It had a good niche in early web development using cgi. But, I think python was just both more accessible in general, and more useful in general than perl - without resorting to C, or C++, or another compiled language.
by thanedar | 2025-12-22 16:22:39+00:00
Made some edits last night. But I think the post still stood up 95%+.

The middle is full of stories of how I failed for years.

I think I can help you, here's how I failed, then succeeded, you can too!

And my book is truly the next step.

If you liked these ~2,000 words, there's 20x more in Positive Politics!

I specifically believe Positive Politics can best utilize the ambitious optimism of e.g. YC founders to solve the world's biggest problems!
by heisenbit | 2025-12-22 16:22:44+00:00
Telecoms by nature are global and one could argue Ericsson and Nokia both have global R&D and manufacturing - with a big and increasing part in China. The main reason for the consolidation in 2008 was imho. the preceeding concentration of telecom service providers putting pressure through their consolidated buying on the equipment providers triggering supplier consolidation.

Diversity thrives in environments with chaos and boundaries. Stable economic conditions, one single buyer with standardized buying rules are not helpful here. The nature of compromises driven by politics instead of facts (and thankfully so as concrete feedback for weapons means war) leads to pseudo differentiated products with poor cost benefit ratios. The recent developments in drone technology out of Ukraine are a testament what could be done with respect to creating a manufacturing ecosystem. Some of these insights are paid for dearly, some others may be of use also in peace times.
by benrutter | 2025-12-22 16:23:07+00:00
I don't know if you can point to a single feature, a lot of what makes a language successful is around context and placement (javascript being a great example of this).

I think there's a few key features for python that have definitely been a big help for it:

It's highly dynamic meaning you can get running with it before understanding every detail (no compile step, no static typing etc).

It may not be the best at everything, but is a decent choice for most things, making a good generic intro language for programming.

It has good interop with low level languages - this is a big deal for data science where a less technical (from a CS perspective) user still needs the performance of a language like C/Fortran/Rust/etc. Python's pattern of "use python as a high level api for libraries in those other languages" (as in numpy, pandas, polars, pytorch etc).

That last one has been a big deal recently, python has become the de-facto language for data science as a result of this.
by chuckhend | 2025-12-22 16:23:10+00:00
IMO, Python rode some of the growth from the data and scientific computing computing. It was lower friction for many people partially due to the amount of blogs, and open source projects that were available. Pandas and Numpy made it quite easy to get up and running with a lot of analytics. pytorch and tensorflow were also there to facilitate this, made people able to get the benefits of the optimized C code but most users did not have to learn C. Eventually FastAPI came out for those looking to build products out of their data, and FastAPI had fantastic documentation and guides, which helped these same folks coming from data/scientific compute build working software. I suppose what I am describing are some of the network effects.
by stevekemp | 2025-12-22 16:23:44+00:00
Honestly I reached a point where I was getting pull-requests which were best characterized as "AI spam", I just archived all of them.

Every single one of my public github repositories is archived and no longer updated.

I have projects I work on, but I keep them to myself. I've just lost interest in wasting time on issues and submissions from people - which is a depressing position to be in, because most of the time people mean well, and over the years I've definitely benefited from contributions of many interested and skilled people.