63 points

None of that is “Python”. You want to learn a language and automatically know everything there is to know using Math?

permalink
report
reply
52 points

A hammer is beginner friendly, but learning to use a hammer doesn’t necessarily mean you’re ready to build a house with it.

permalink
report
reply
45 points

The sea should be marked as C considering that’s what you’ll discover when you get deep into it.

permalink
report
reply
17 points
*

https://en.m.wikipedia.org/wiki/PyPy

Their greatest mistake was not naming it Ouroboros.

permalink
report
parent
reply
10 points

The reason C becomes relevant to Python users isn’t typically because the interpreter is written in C, but because so many important libraries (especially numpy) are implemented in C.

permalink
report
parent
reply
5 points

Oh for sure, and some of those are not ok with swapping the interpreter out 🤣

permalink
report
parent
reply
2 points

Extension modules are implemented in C because the interpreter is written in C. If it were written in another language, folks would write extension modules for that language instead. Also, it would be less relevant if people used portable C bindings like cffi, which are portable to PyPy and other interpreters… but they don’t.

permalink
report
parent
reply
36 points

The mistake was choosing a language, and afterwards searching for a use to the language you just learned.

permalink
report
reply
5 points

Among all of them at least python is the choice generically people learn when they don’t want to learn programming, just want to program stuff as a helper tool to manage data. For those, python is just fine and the learning material around is tailored to for that.

That’s how you trick people into programming. You then see people making scripts that take days to run, but it’s fine, they’re only going to use it twice and are busy enough to be able to wait

permalink
report
parent
reply
5 points

You then see people making scripts that take days to run, but it’s fine, they’re only going to use it twice and are busy enough to be able to wait

Sponsored by “terrible python code by Matt Parker”

permalink
report
parent
reply
22 points

Dynamic typing, special and unique syntax for every language feature, interpreter intrinsics

permalink
report
reply
16 points

Dynamic typing is the source of very amazing errors, see JavaScript.

permalink
report
parent
reply
9 points

I think the problems there are exacerbated a lot by over-eager type coercion and other crappy design decisions inherited from almost 30 years ago

permalink
report
parent
reply
5 points

Yep lua and lisp/scheme are also unityped and not even close to as broken. All are remarkably similar languages, theory-wise.

…also something something Guido not getting tail call elimination and people sending him copies of the wizard book. It’s been a while.

(And, yes, lua does proper tail calls).

permalink
report
parent
reply
5 points

[object Object]

!Reddit moment.!<

permalink
report
parent
reply
7 points

Operator overloads, descriptor protocol, decorators

permalink
report
parent
reply
7 points

Operator overloads are excellent for readable code when used well - I object to their inclusion on this list.

permalink
report
parent
reply
5 points

As long as you don’t have to implement it yourself.

permalink
report
parent
reply
3 points

Honestly, I’ve been using type hints very heavily since they became a thing. I just use IDE completion too much to do without them.

permalink
report
parent
reply

Programmer Humor

!programmer_humor@programming.dev

Create post

Welcome to Programmer Humor!

This is a place where you can post jokes, memes, humor, etc. related to programming!

For sharing awful code theres also Programming Horror.

Rules

  • Keep content in english
  • No advertisements
  • Posts must be related to programming or programmer topics

Community stats

  • 3.4K

    Monthly active users

  • 1K

    Posts

  • 38K

    Comments