News for hackers. Stuff that matters.
Re:Because It's Not Fun Enough: why languages fail by jillesvangurp on Monday August 10, 2026 @08:53AM (#49242982)
There's more to a language than the syntax. The libraries, tools, and the ecosystem of developers, documentation, support, etc. are much more important. There are quite a few academic languages that are interesting to people that never really gain much traction because the people behind them just never commit to proper ecosystem building.

Switching languages is a big time commitment. Or at least it used to be. I find myself more open to that now that I can hit the ground running with AI coding tools in most languages. But still, it's a time investment to learn a language, its idioms, its way of doing things, all the tools, libraries, and frameworks, etc. It's not something you do an in afternoon. And certainly not mid project.

The languages that people gravitate to are the ones that look like they are safe, future proof bets. If you are going to spend all this energy learning one, you want to know it's a good investment. Successful languages have lots of users, decent tools, good libraries, etc. Or at least they look like there are serious people behind them. Many people make these bets early in their careers and then stick to them as well. I meet a fair share of people my age that are still sticking to Java. Because that's what they learned when they were in their twenties. I'm 51 now.

Rust is a good example of a language that's hard to learn but managed to get off the ground because of the solid people behind it. It wasn't just an academic exercise: Mozilla was trying to solve a real problem and they managed to get a nice community behind the language and it grew from there. This is not something that happens a lot. People create new languages all the time. But many stay very niche and the projects around them tend to go stale very quickly if they fail to attract a community of users.

Re:Because It's Not Fun Enough: why languages fail by nylonstrung on Monday August 10, 2026 @10:42AM (#49244356)
I'd argue Rust is one of the most "unfun" languages in terms of syntax but it's offset by the crates ecosystem and cargo toolchain being easily the most pleasant within systems programming

No matter if C or C++ was more "fun", CMake is not and I think the the "fun" parts of coding are worse with Rust but the particularly unpleasant ones are relatively good. In that sense Rust's success might be due to it being more or a "pain pill" than a "vitamin"

Michael Hashimoto has made comments to the effect that Zig is attractive to him relative to Rust simply because it's more enjoyable to write but I think there's very few people for whom that could outweigh the lack of ecosystem

Re:Because It's Not Fun Enough: why languages fail by ch4s3 on Monday August 10, 2026 @10:49AM (#49244451)
Agreed, rust is SUPER not fun IMHO but I use it a lot via FFI for things I wouldn't do in Elixir which I prefer to write/read. The broad array of well built tools on cargo is just so hard to compete with, and cargo as a tool beats any language tooling for any language with similar breadth. The JVM has every tool imaginable but I'd rather built it myself than tangle with JVM tooling.
Re:Because It's Not Fun Enough: why languages fail by asa400 on Tuesday August 11, 2026 @11:18AM (#49259738)
I'm fluent in Rust and I find it quite enjoyable to read and write, more so than almost any other language I know. But, that's a subjective opinion, I wouldn't expect others to feel the same.

Rust probably has more to learn and is indeed probably _more difficult to learn_ than Zig in that it's simply a bigger language (which is quantifiable, even if only approximately) but difficultly of learning vs. enjoyment of reading/writing/speaking are different questions.

It's a bit like saying German is unfun to read and write. To who? To Germans?

Re:Because It's Not Fun Enough: why languages fail by CodesInChaos on Monday August 10, 2026 @09:53AM (#49243690)
Even if you only consider the language itself, semantics, especially the type system, are more important than syntax.
Re:Because It's Not Fun Enough: why languages fail by jillesvangurp on Monday August 10, 2026 @11:23AM (#49244910)
Many people don't really understand the languages they learn until well after they are done mastering them. And some never really pick the deep detail there is to semantics and type theory.

If it is done right, the language might feel nice to use or elegant but users might not articulate why that is. That can be a key selling point. And of course there are a lot of languages where the type system was a bit of an afterthought that got popular anyway. Javascript and other dynamically typed languages comes to mind. Rust kind of sits on the other end of the spectrum. And it has a deserved reputation for being a bit hard to learn because of it.

Re:Because It's Not Fun Enough: why languages fail by inigyou on Monday August 10, 2026 @10:32AM (#49244236)
Arguable. Both are really important. We all know the most run-down-looking restaurants have the best food, but we still go to the ones that look clean and tidy anyway.
[dead]
Re:Because It's Not Fun Enough: why languages fail by citelao on Monday August 10, 2026 @09:05AM (#49243105)
I think the more appropriate analogy is there's more to a drill than the drill. When you buy a Milwaukee drill, because it shares a battery with other Milwaukee parts, it's easier to buy more Milwaukee tools.

So it helps to choose a drill brand with the ecosystem you like, not just one that's a serviceable drill.

(Or you could argue that a language's ecosystem is part of the dang language. Which I agree with).

Re:Because It's Not Fun Enough: why languages fail by giancarlostoro on Monday August 10, 2026 @09:20AM (#49243277)
I still attribute a rich OOTB standard library for Go’s success. You have an OOTB production capable web HTTP server baked into the standard library since practically day 1?
Re:Because It's Not Fun Enough: why languages fail by purplemoonx on Monday August 10, 2026 @09:23AM (#49243300)
Have you never heard of Node.js where they got the idea from
Re:Because It's Not Fun Enough: why languages fail by giancarlostoro on Monday August 10, 2026 @11:45AM (#49245193)
They were made roughly around the same time to be fair, but Go's standard library was richer at the time I thought? Even so, JavaScript hate it or love it (I both hate and love it) is massive by virtue of being the primary scripting language for front-end web. I am fully aware of its backend capabilities, but Go gave us: C-like syntax, natively compiled, and a rich OOTB standard library that Google uses in production. Even YouTube adopted Go early on and made Vitess which was a "middle-man" for MySQL which helped YouTube with their back-end starting in 2010, it would help with query routing and sharding, connection pooling, query safety and even optimizing queries before they got to MySQL, as well as row-level caching.

Honestly I'm not trying to downplay Node, I respect Node for what it was and is, but Go punched above its weight early on too.

I think the industry was starved for a back-end language that was simple, compiled natively (removing a lot of environmental setup overhead) and was production ready out of the box.

Re:Because It's Not Fun Enough: why languages fail by purplemoonx on Monday August 10, 2026 @11:55AM (#49245365)
Node.js came way before Go. If you fact-check with AI, it will say "Go was invented in 2009" but anyone who has been around knows it's more like ~2013.

Node.js was 90% of the inspiration for Go to exist in the first place.

Swift also would have never came about if it wasn't for people doing iOS way better in JavaScript.

SwiftUI is basically React conceptually

Re:Because It's Not Fun Enough: why languages fail by giancarlostoro on Monday August 10, 2026 @12:25PM (#49245863)
Technically 2007, but Go 1.0 was in 2009 when the Windows compiler was finally released, Go from 2007 till 2009 was Linux / Unix first. I don't recall when Mac came, but I would not be surprised if very quickly given that GCC worked just fine on Mac at the time.

The Go community made Go work on Windows leading up to 2009, the core maintainers of Go did not make the Windows build themselves, they didn't care about Windows being a target. I say this to emphasize how quickly popular it became that it built up a community that wanted it to build for Windows, and they did.

2013 is when the rest of the world was starting to catch on to Go I suppose, Docker came out in 2013, but I distinctly remember learning Go on Windows in 2009 and building web apps, without any third party packages.

Re:Because It's Not Fun Enough: why languages fail by purplemoonx on Monday August 10, 2026 @12:33PM (#49246015)
Haha, try 2013. You were not around then ;)

Go 1.0 was released in 2013 (I don't even think the "official date" of March 28, 2012 is correct, or at least, nobody had heard of it).

Apple doing Swift and Google doing Go was basically in response to Node.js

> but I distinctly remember learning Go on Windows in 2009 and building web apps

Very highly doubt it

Re:Because It's Not Fun Enough: why languages fail by Jtsummers on Monday August 10, 2026 @02:12PM (#49247470)
> Go 1.0 was released in 2013 (I don't even think the "official date" of March 28, 2012 is correct, or at least, nobody had heard of it).

This is a strange and ahistorical take. Go was heavily discussed in 2009 after it was first announced by Google. It didn't go four years between public announcement in 2009 and people finally learning of it in 2013.

Major themes of discussion in 2009: Does it have generics and if not, why not? How does it compare to Erlang? And why did they reuse the name from this language Go! we all just heard about five minutes ago? https://news.ycombinator.com/item?id=936544 - from the day after the language was publicly revealed.

The first two topics (generics and how it compares to Erlang) are still discussed today, though the former is now mostly complaining that it has generics instead of complaining that it doesn't have generics.

Re:Because It's Not Fun Enough: why languages fail by purplemoonx on Tuesday August 11, 2026 @12:20AM (#49253339)
Your comment reveals you were not around then.

Go was absolutely not mainstream in 200 fucking 9. When Flash dominated the web and everyone did Wordpress for websites. Nobody (at large) did Go before they did Node.

You are pointing to extremely early design discussions you absolute twat. Get real. Anyone who was active in their career in ~2013 knows that's exactly when Go came out.

I am from San Francisco and lived here my whole life - and it wasn't the epicenter of tech then (2013) but Mountain View sure as fuck was, and it's like 45m away and I would fucking know if Go was written in 2009 and it wasn't.

You're a liar. Go away

Re:Because It's Not Fun Enough: why languages fail by giancarlostoro on Monday August 10, 2026 @12:38PM (#49246112)
I mixed up when Go had its first release for windows and 1.0 but that somehow means I wasn't around for that? Thanks for knowing about my life more than I do somehow? My memory is not what it used to be but that doesn't invalidate my personal experiences in 2009.

I started college in 2011 and I was telling the professors about it before it was popular, Vitess was in 2010, used in production by YouTube. JavaScript predates NodeJS even so.

I did use Linux in 2009 so I could be misremembering when it was ported, after all this was over a decade and some change ago.

Edit:

https://go.dev/blog/1year

My overall argument still stands, in production at YouTube by 2010, by 2013 we already had Docker in the works, when you say it "just came out" but many people were eyeballing Go and waiting for it to be fully on Windows.

So 2010 they were talking about the Windows port, guess I blended the years a bit, everything before my college years is all smashed together for me.

Re:Because It's Not Fun Enough: why languages fail by purplemoonx on Monday August 10, 2026 @12:48PM (#49246256)
In 2010 I was doing Flash/AS3 (professionally) and Wordpress sites, but yeah, maybe.

I don't doubt it has a searchable history back to 2010.

Re:Because It's Not Fun Enough: why languages fail by giancarlostoro on Monday August 10, 2026 @12:53PM (#49246360)
Anyway, my memory is pretty bad, the early 2010s are a blurb and sometimes I mix up 2009 with the early 2010s. I love JavaScript and hate it, because I know how quirky it is and can be, I'm glad something like Go and Node came along, we were all stuck with Java or C# (which arguably became a lot better in recent years). Now we've got many more options.
Re:Because It's Not Fun Enough: why languages fail by purplemoonx on Monday August 10, 2026 @09:07AM (#49243126)
Fair points, but those preferences seem more grounded in reality than the abstract reasons people say they love a language beyond its interface
Re:Because It's Not Fun Enough: why languages fail by oblio on Monday August 10, 2026 @09:23AM (#49243308)
Libraries and frameworks and package management absolutely matter. They're not some abstract thing, they could be the difference between something being done in 6 months or in 2 years.

Why do you think people put up with Spring?

Re:Because It's Not Fun Enough: why languages fail by purplemoonx on Monday August 10, 2026 @10:02AM (#49243819)
1000% that's why I said "Fair points"

I consider npm to be part of "the interface of JavaScript" and to your point it's one of the strongest reasons beyond performance to use Node over some other dynamic language like Ruby or PHP.

Python earned its keep mainly because of its library ecosystem (again to your point) but also due to its simple, teachable syntax.

My point is that Python is not used because it's highly performant - it's basically the slowest language there is. But because people like the syntax and the library ecosystem (AKA the interface to the language)

Re:Because It's Not Fun Enough: why languages fail by zaphar on Monday August 10, 2026 @09:11AM (#49243160)
Comparing a languages syntax to a saw blade is a bad analogy. A saw is a complete tool. Syntax is more like the teeth on the saw blade. The quality of the saw is not just about the teeth. It's also about the size and spacing of those teeth, the strength of the blade those teeth are on, the shape of the saw blade itself, the hardness of the metal, as well as the shape of the handle.

If you are just building a table then hopefully you are not trying to do the whole thing with a keyhole saw.

Re:Because It's Not Fun Enough: why languages fail by benj111 on Monday August 10, 2026 @09:21AM (#49243281)
So 2 languages are the same if they have the same syntax but 1 is interpreted, and not safe, whereas the other is compiled and safe?

Where one has a large library and runs on many platforms, and the other doesn't?

Where one behaves like PHP with respect to equality, and the other doesn't?

The closer metaphor is the handle. A saw handle may be ergonomic, that doesn't mean the quality of the blade is good, or even suitable for what you're trying to cut.

Re:Because It's Not Fun Enough: why languages fail by purplemoonx on Monday August 10, 2026 @10:06AM (#49243877)
> compiled vs interpreted

Best rebuttal here - yeah didn't think of that obvious one!

I had a larger point about language idealism / putting code on a pedestal vs getting the job done but yeah, this crowd can't handle that lmao

Re:Because It's Not Fun Enough: why languages fail by wduquette on Monday August 10, 2026 @01:47PM (#49247166)
The ecosystem makes it feasible to use the language or not. For my personal projects, I won't use a language that doesn't provide some kind of straightforward cross-platform GUI toolkit (nearly) out of the box—which narrows the field enormously.

But it's the syntax and semantics what determine whether I'd want to use the language to begin with, and how maintainable the resulting code is.

Re:Because It's Not Fun Enough: why languages fail by m463 on Monday August 10, 2026 @10:24PM (#49252622)
I liked perl, and later python.

Python was harder to write - it was less expressive to me than perl, which could say stuff like "unless <bleh>" while python would require "if not <bleh>"

it was more regular, more compact and was visually easier to read

but it was the python standard library that kept me going back, because I could solve lots of problems without reinventing the wheel, or becoming a sysadmin to install a package my lowly script required.