←back to thread

312 points chmaynard | 1 comments | | HN request time: 0s | source
Show context
umvi ◴[] No.45058768[source]
I used to love Python, back when it was basically just an alternative to perl for scripting. Now it strikes fear into my heart when I encounter something largish written in Python because it usually means "super slow bloated researchy untyped ai/math code that's a nightmare to work with"
replies(13): >>45059009 #>>45059022 #>>45059024 #>>45059052 #>>45059135 #>>45059210 #>>45059388 #>>45059545 #>>45059897 #>>45060324 #>>45060738 #>>45060792 #>>45060836 #
b33j0r ◴[] No.45059052[source]
There are two types of people who use python: those who understand statistics and those who write python.

I’m happy that python basically took over the role once filled by matlab, and I’m happy that it became the leader in AI dev instead of something worse (probably Java if gpt2 had hit 5-10 years earlier).

But you’re right. It’s not fun anymore. It feels more like a pseudolanguage for expressing tensors now, because of the influx.

I’m exaggerating only in feigned outrage. In my actions, I’ve been coding in rust, go, and zig ever since ChatGPT came out.

I think that moment made me value python less. When I think about why, it’s because python became less challenging, and the problem space shrank.

It’s been fun to go back to low-level and remember how computers actually work.

replies(2): >>45060086 #>>45063177 #
WD-42 ◴[] No.45060086[source]
I feel so similar. I love python, I’ve spent most of my career writing it. It’s done well for me. But damn is it just not fun anymore. Runtime errors are not fun anymore. Runtimes are not fun. Virtualenvs are not fun anymore even though uv is trying. Typeless loosy goosy code that passes dictionaries all over the place is just not fun. Rust ruined it for me. Or maybe I’m just bored.
replies(1): >>45060629 #
morningsam ◴[] No.45060629{3}[source]
>Typeless loosy goosy code that passes dictionaries all over the place is just not fun.

mypy --strict in CI & don't let dict[str, Any] pass review if the keys are constants, insist on a dataclass or at least a TypedDict.

replies(1): >>45062053 #
instig007 ◴[] No.45062053{4}[source]
> & don't let dict[str, Any] pass review

good luck with justifying that before your manager (reacting to complaints within your team, claiming you being a bottleneck).

replies(1): >>45062366 #
1. wiredfool ◴[] No.45062366{5}[source]
So just make it a dict[str, str] and json encode the payload.