Isn't that only microsoft exclusive and closed source? Also does compiling it really yield the same speed as C, it is garbage collected isn't it?
scharf_2x40
Yeah that point was not entirely accurate. What I meant was, that a np.array and a list don't work together. Coming from julia and matlab it just does not make sense to me, why I can't use a function written for a list for a np.array even if they basically represent the exaxt same thing.
Julia for example hast linalg as a module but functions work on lists with no problem.
But I took your advice to heart and installed a Linter
Python is strongly typed, but dynamically checked. Working with other languages I just found, that the type errors in python are the hardest to catch and to debug, but maybe I am just more used to othet languages
I see it's use as language to write small scripts, I just don't see much use besides that.
Here is a article talking about the speed of compiled python vs Julia. I don't see why it is better to go to all these extra steps just to end up with something slower. https://www.matecdev.com/posts/julia-python-numba-cython.html
No I mean, Python is definitely the most used language in scientific computing, but yeah, I would use something else if I could.
Julia, R, Matlab, Mathematica and Fortran.
Yeah, ofc every language must have a type system, the problem is, that this is not enforced. I.e 3 == '3' throws no error, when working with dataframes for example this can be a pain in the ass. But yeah, I don't say that nobody should use Python (although the title is a bit dramatic) I just think that there are better alternatives out there.
I mean others don't seem to have the same problem with Python as me, so if it is right for them, I can't really complain, but I would use the following languages for the following tasks
Scientific Computing (my main area): I prefer Julia, it is faster, feels more intuitive and feels like a modern python for scientific computing
Web: there are many great frameworks out there, i am intrigued by phoenix for elixir
Game Developement: Nobody use python in games to distribute for anything heavy I hope, but for scripting I would use Lua
Learning: Python is often the first language, that people learn, and I guess that also explains it's widespread use to some degree. I would teach something less high-level like C as a first language, although I think writing "high-level code" also has a learning curve to it.
Scripting: Fine, I guess python is great for small scripts, although one could also use Ruby
I can see an apolgy letter incoming already
I think FOSSS shouldn't be some kind of religion, if you like Apple, great, go for it. However if you truly value privacy (while beeing better than Microsoft, Apple still collects some of your data) and freedom it certainly won't hurt to try out some alternatives. If you like them better it is a win-win situation, if not switch back.
Things you can do if you are interrested in FOSS, that don't necessary need you to change everything:
- Try some software alternatives for programms you are using (LibreOffice instead of Word, Gimp instead of Photoshop etc.) This lets you search for alternatives.
- Spin up a Linux VM and try it, or try to install linux on an old laptop. -And when you do that, look into KDE Connect as it offers connectivity between devices, that even Apple does not offer in some cases.
- If you are truly into it, you can even contribute to FOSS, to make them as good as Apple products.
I found this, which dives deeper into the impact of inefficient software.
https://eco.kde.org/handbook/#look-to-the-software