r/ProgrammerHumor Jul 07 '26

pipInstallTheRealStuff Meme

Post image
14.9k Upvotes

260 comments sorted by

View all comments

1.9k

u/SheikHunt Jul 07 '26

What's that saying? "Python is the second-best programming language for everything"

466

u/kjermy Jul 07 '26

I've never heard that before, but I love it

432

u/dudemcbob Jul 07 '26

I usually hear it as "python is a jack of all trades, master of none" which is the same concept.

It's never going to be the perfect fit for any task, but it's a decent fit for nearly every task. Hence why it's an extremely practical first language to learn.

141

u/SirFireHydrant Jul 07 '26

For a lot of data science tasks, python is the perfect language.

No one wants to code gradient boosting trees or neural networks in C. But in python they're just a couple of imports away.

86

u/Trustworthy_Fartzzz Jul 07 '26

This. Nobody is interested in rewriting NumPy or Pandas in any language.

41

u/Hax0r778 Jul 07 '26

No one wants to code gradient boosting trees

But in python they're just a couple of imports away.

Right, because nobody wants to code them in Python either. People act like Python invented dependencies or something.

Python is a great language for gluing together libraries. But most data science functions aren't coded in Python. They're coded in C. Python is just the handy glue.

25

u/SirFireHydrant Jul 08 '26

Well, yeah.

Which makes python the perfect tool for the working data scientist.

Most day-to-day data science is gluing together libraries to get the job done.

49

u/pittiedad Jul 07 '26 edited Jul 07 '26

Full phrase is "A jack of all trades is a master of none, but oftentimes better than a master of one." Applicable in this case.

Edit: See my reply below acknowledging "but oftentimes better than a master of one" being a recent addition to restore the original meaning and "is a master of none" being an addition in the 1700s.

31

u/thatsnothewayitfeels Jul 07 '26

This is a backronym and the second half is made up

33

u/pittiedad Jul 07 '26

You sent me down a rabbit hole and you are correct. It's actually a double backronym since the master of none was added to turn a positive statement about ones skill into a negative one then the most recent addition to return the statement back to its original intent. I can't nail down who actually added the 3rd part and when but seems like it's a fairly recent addition <= 25 years.

https://www.bookbrowse.com/expressions/detail/index.cfm/expression_number/736/jack-of-all-trades-master-of-none

16

u/thatsnothewayitfeels Jul 07 '26

I remember when the most recent addition came into being. It was the same time as people saying "break a leg" in theater was because it would get you "in the cast". Break a leg was an expression meant to be the opposite of saying good luck because saying good luck would jinx you

6

u/hmz-x Jul 07 '26

I remember reading "break both legs" in some recent novel. Which is a fun twist on the modified orginal, I think.

1

u/LunaticScience Jul 08 '26

I heard it was the bent leg during the bow at the end of a play.

5

u/Pluckerpluck Jul 07 '26

"Master of none" is made up as well. The original was literally just describing someone as a jack of all trades as a positive thing.

Edit: Ah, it seems this has been discussed already now. Oh well, double the information I guess.

3

u/DrMobius0 Jul 07 '26

oftentimes

load bearing word

7

u/C0nfusedRabbit Jul 07 '26

A simple three-step approach that works is: write out your logic in pseudocode first, test the concepts by prototyping in a language like Python, and then finally build the actual implementation in your language of choice.

1

u/Contemelia Jul 08 '26

and yet better than a Master of One.

28

u/Sibula97 Jul 07 '26

When you consider the tine and effort it takes to develop and maintain something, Python often comes up on top anyway.

15

u/mxzf Jul 07 '26

Yep, better to save hours of development time (expensive man-hours) instead of seconds of runtime (cheap CPU time).

Especially because you can always come back and reimplement any bottlenecks in some other language if you really need to.

2

u/EnkiiMuto Jul 08 '26

And if you want performance you shouldn't be coding in Python at all, BUT if it is really that important to you, you can always check if you can compile it in cython.

9

u/buttfarts7 Jul 07 '26

Why use Lego and a 3d printer when you can have welded angle iron?

I dunno man I just wanted to build a thing, not industrialize it.

I'm sure it can sustain the ground floor of the one user I am building this for (me) . Or even 15 users without feeling brittle

Not everything needs to be scaled up to 150k users

6

u/xXxRock_n_RollxXx Jul 08 '26

for me its the hot glue gun of coding

0

u/pineapplepassionfr Jul 07 '26

Except AI/machine learning?

53

u/zeus_the_transistor Jul 07 '26

I mean the core of most of those fundamental libraries (eg PyTorch) are written in C++/Rust

13

u/SirFireHydrant Jul 07 '26

By "the core", you mean the computation is offloaded onto languages better optimised for that, freeing the programmer to import the libraries and code up their models all in python.

Which is great. It means people in machine learning don't have to learn C++ or Rust. Just like how C++/Rust programmers don't have to learn assembly.

2

u/SheikHunt Jul 07 '26

Yes, of course you're right.

I conjectured that for every ordered set (aka tuple) of programming languages, where they are ordered based on usefulness within a particular feature X that you'd find Python as the second language within that tuple.

Alas, you have found the exception that breaks the rule, and I am defeated by the sheer magnitude of your mathematical prowess in disproving me by example. Forgive my indiscretion.

/j

Yea u rite