Live data from Hacker News

Why I Vibe in Go, Not Rust or Python

lifelog.my

11–20 of 34 posts

Re: Why I Vibe in Go, Not Rust or Python

#11
post #2

Last night I built a website from scratch. Not a landing page. A full blog with three-domain routing, animated video covers, an audio player with playlists, dark mode, RSS feeds, social cards, and a sticky sidebar with a lightbox. Seven commits. Zero test failures. One binary. The site you've read the article on. Built in one session. In Go. I work with an AI that writes most of the code. The question everyone asks i…

You also have AI write your HN comments.

Re: Why I Vibe in Go, Not Rust or Python

#14
post #2

Last night I built a website from scratch. Not a landing page. A full blog with three-domain routing, animated video covers, an audio player with playlists, dark mode, RSS feeds, social cards, and a sticky sidebar with a lightbox. Seven commits. Zero test failures. One binary. The site you've read the article on. Built in one session. In Go. I work with an AI that writes most of the code. The question everyone asks i…

Why use an obscure language like Golang when you can use Java? It is just as capable and boring as Golang but has an order of magnitude or two more available libraries, training data, and runtime support.

Obscure? That is just false

Re: Why I Vibe in Go, Not Rust or Python

#15
post #2

Last night I built a website from scratch. Not a landing page. A full blog with three-domain routing, animated video covers, an audio player with playlists, dark mode, RSS feeds, social cards, and a sticky sidebar with a lightbox. Seven commits. Zero test failures. One binary. The site you've read the article on. Built in one session. In Go. I work with an AI that writes most of the code. The question everyone asks i…

You also have AI write your HN comments.

Here's why!

Re: Why I Vibe in Go, Not Rust or Python

#17
> Mypy exists. Mypy is optional. Optional means it’s not there. I’ve never seen a Python project where mypy covers 100% of the code with strict mode. I’ve seen hundreds where it covers the 20% someone added last quarter. The other 80% is Any, all the way down.

This is your project, is it not? Can you not simply tell the agent to cover 100% of the code?

Notably, types in TypeScript are also optional, but LLMs don't seem to have any problem generating fully type-safe code without `any` (though you do need to gently nudge them on occasion, or run a linter that forbids it). I don't see why they'd choke so hard on Mypy.

Re: Why I Vibe in Go, Not Rust or Python

#19
It depends on the use case. Go seems like a dream... until you have to work with dataframes or do any kind of ML work. Then it's a nightmare.

Go's ecosystem is especially weak in ML, stats, and any kind of scientific computation. I mean, do you really want Claude to implement standard battle-tested ML algorithms in Go from scratch? You'd be burning tokens and still get a worse result than if you'd just used Python.

I use Go to write CLI tools, but for ML work I'd rather have Claude generate Python.

The suitability of language hinges not only on its language design, but its ecosystem as well.

Re: Why I Vibe in Go, Not Rust or Python

#20

Earlier quoted context omitted.

Why use an obscure language like Golang when you can use Java? It is just as capable and boring as Golang but has an order of magnitude or two more available libraries, training data, and runtime support.

Obscure? That is just false

If you've only had exposure to one corner of the software industry then it's very easy to develop blinders. Not saying that this is what parent is guilty of but as somebody who has regrettably had this particular problem in the (thankfully distant) past I feel compelled to point out that this type of ignorance is sometimes just a side effect of one's circumstances.

As an example PHP still powers something like 75% of web sites and I've never once used it professionally. If I didn't know better I might think it dead.

Post reply on HN