Strictly typed languages are much easier to debug though IMO. Python and JS will let you do extremely weird stuff that’s hard to pick out in debugging, where in a C-based language it would just give you a compiler error
That’s the old “chainsaws are dangerous so let’s use a nail file to chop off the tree” argument.
Not at all. It's "axes (C) and chainsaws (Python) are both dangerous and let's not BS ourselves about that."
If you have a high standard for static correctness then you use Rust or Haskell, not C or Python. C is MUCH more dangerous than Python, as the thousands of "use after free" and "buffer overflow" security vulnerabilities show.
Are you building large systems in python alone. Someone doing some voodoo shit in python would be picked up by the commit hooks or in a code review at the very least.
Yeah I primarily use it for data and database shit. It's much faster to write and run something quick that manipulates a lot of data quickly.
It's also incredibly nice due the fact that almost EVERYTHING has an API for Python. So you can gather data from many sources all in one place, easy to write, quick to run.
Edit: To add on to this, it's also easy to manipulate data types since it's easy to cast data to other types. JSON is super easy to use, etc. Using other languages you have to really mess around with getting the data type you want. Python just makes it easier.
Yes and it is also very good at doing gigantic matrix multiplies spread over multiple computers in a cluster. I think that's actually what's meant by "good at data."
People always bring this up as if it is relevant. I don't see how it is relevant to the people trying to do the matrix multiply whether it is implemented in C or Python. A (sane) C programmer would call out to BLAS/LAPACK just as a Python programmer calls out to Numpy.
true. Any automation in python becomes so much clearer than a bunch of shell scripts all over the place. Not against shell scripts. Don't want to start a war)
Scripting is one of the purposes, but really not the biggest one IMO. It is interpreted, dynamically typed language, opposite to eg. complied, statically typed languages like C.
Nick: do they machine learning folks mostly write C or Python?
I’m not asking what language their runtime is implemented in. I’m asking what language the programmers program in.
With respect to web apps. Let me list a few startups that were written in Python at the time they got famous (before being refactored into dozens of microservices written in a hodgepodge of languages).
Youtube. Reddit. Instagram, D-wave. To name a few.
Have you built an app that succeeded to that extent?
If not, what is your evidence that Python cannot be used for web apps given that clear evidence of success?
Depends on what you meant by machine learning folks. They program the logic in C, you don’t see back propagations for MLP nor need to write the bagging logic for random forest.
Calling a library does not mean you engineered it.
And having business success does not mean they have chosen the right language for web development. Nor it has anything to do with maintainability. They will be successful even if they have chosen Java, C# or other languages, because of their brillient ideas, not because they are using Python.
Most data scientist know Python. A smaller percentage know C.
This is also true (though to a lesser degree) for machine learning programmers. More work in Python than C.
Calling libraries to solve problems does make you an engineer. Solving the problem is the defining characteristic of engineers. C programmers call a lot of libraries too.
Business success is the ultimate result of technical success. Am I saying they would have failed in another language? No. But you implied that they should have failed in Python. They didn’t.
Python solves the problems that dynamic businesses need to solve. That’s really all there is to it. You have a distaste for it and therefore you want to make a fact-free claim that it’s the wrong tool. But reality and evidence are against you.
Yeah, dumb people making useless products like YouTube, Reddit, Dropbox and Instagram. I guess your startups have had more success with "real" programming languages.
172
u/oddmerlin373 May 27 '22
Honestly I prefer to call it a scripting language because that’s what it’s good at