Python growth

stackoverflow.blog/2017/09/14/python-growing-quickly/

Python is the fastest-growing programming language thanks to its widespread use in data science and machine learning.

Do you like Python? What are you using it for? What are your gripes with Python?

I'd love to see type annotations catch on. They let you find errors earlier and also allow code completion tools to make better suggestions.

Im a beginner, where should I start practising? In an IDE or Emacs? also im a nub at emacs.

emacs because you'll look cooler

Why not Vim? Does that make me kewl?

PyCharm if you want an IDE.
VSCode if you want a meme.js text editor because it has a proper debugger.

>less than 3% combined

> no switch
> GIL
> CPython is slow
> Whitespace issue
> shit logo
> fragmented community
> dozens of implementations
> incompatible lists
> inconsistent naming schemes
> function names with underscore prefixes (disgusting)

It's shit.

Give Atom a try. It has some really nice plugins for python and general productivity.

VSCode gonna be irrelevant in a few years. Unlike other text editors. How do I debug things written in a text editor though?

In academia, python is easy to use since it will generally just work on Linux and Mac, which most computational labs will be using.

no because Vim is basically notepad tier. Besides Emacs has org mode which blasts Vim out of the water for any kind of writing. Also you can play tetris on Emacs

In VSCode you click on the line to place a breakpoint.

>> no switch
Just use a dict

My French school switched from teaching us C and C++ to Python this year.

Because they are stupid.
MATLAB already have free similar implementations like Scilab (with XCos) and Octave with 98% of compatibility and good plugins. There's dozens of books with heavily documented stuff...

BUT NOOO... Let's rewrite everything into scratch using a meme language because retarded teen faggots fall into market.

>no switch
Fair.
>GIL
It's what made Python incredibly popular as a glue language because GIL meant that writing extensions is incredibly easy.
>CPython
pypy is extremely compatible today and also reasonably fast
>Whitespace issue
Not an issue. Do you not indent your code anyway?
>fragmented community
Anyone still using Python 2 is an idiot.
>dozens of implementations
Only two are relevant. There's hundreds of C compilers but I don't see anyone complaining.
>incompatible lists
What?
>inconsistent naming schemes
Fair.
>function names with underscore prefixes (disgusting)
Better than public/private/protected.

Intelij IDEA CE (which is free) with a python plugin

lul ours too.

Python is shit, its libraries are a clusterfuck, full of 0days

>full of 0days
For example?

Look into vault 7

Matlab is fucking amazing, but it is ludicrously expensive for operational budgets thst aren't university or big business. Octave isn't a good enough sub for professionals. Python fills the gap nicely bring free to use and easy to fit into ready made research roles.

I see that there's leaked Python scripts, not that there are vulnerabilities in Python libraries.
There's vulnerable libraries written in every language.

Sup Forums is too stupid to fall for the machine learning meme.

I'm stuck with python.

I can't get past the intermediate level. I can't get into modules like tensorflow. Anyone got any decent tutorials on tensorflow?

you might want to consider taking a quick break from python. get slightly familiar with another language, think how that language handles things just to take a little break, and then come back to it?

>Python is the fastest-growing programming language
WRONG

142%*0.36 is a lot smaller than 27%*10
If I make my own language and then get five other people to use it over the course of a year that doesn't make it the fastest-growing language even though it has 500% more users.

r for the motherfucking win, this is now an r thread.
how can i learn both if i have minimal programming experience?

there should be a reasonable cutoff, but typescript is definitely way past that. python is the fourth fastest growing language

Depends on how you look at it. Python is still fastest-growing when comparing absolute values.

Professional Python developer here. Honestly go for emacs dude its fucking great

PyCharm or VSCode

I hate python because it can do both functional and OOP but fails to fully implement either. Multiple inheritance is dumb and the lack of traditional data types make it difficult to develop robust programs with it. Also it's fucking slow but that's usually not a problem.

Vim + vim-slime + iPython

>I'd love to see type annotations catch on. They let you find errors earlier and also allow code completion tools to make better suggestions.
Or you could use a language with a real static type system and do it properly.

What said. Python is not a good language.

>fragmented community
The python community is by far the worst thing about it. Don't post your code anywhere unless you want to get attacked for being un-"pythonic."

You can now run emacs in vim so your argument is invalid.

>Better than public/private/protected.
into the trash it goes

>Better than public/private/protected.

Python doesn't even have true encapsulation. The underscores ultimately do nothing. There is no comparison to be made here.

Conda. It just werks, and you just get to work instead of fuffing about with shit.

Agreed. Pythonistas are cancer. However, no other language has the same "just workiness". The genius of it, is that it takes all the awesome power of C with memory handling and pointers and prepackages it for you in things like iterators and generators. Just using those two makes your code much faster with zero idea of optimization.

Plus, packages like scipy and numpy are really good. I think as soon as things like DGE and EdgeR for RNAseq get ported to python, it will be an unstoppable juggernaut.

I started learning it lately (already know a few other languages) because some open-sores software I use is written in it. All the libraries are nice. Whitespace to denote blocks is fucking retarded though. It's supposed to discourage excessive nesting, but that's up to the programmer, and even with 3 levels, it looks like shit. Maybe I'm using it wrong, but OOP turns into a mess of self. self. self. self. self. after a while.

I wouldn't want to use it for a large project. I can see things just turning into a mess as far as readability.

What is really nice about it is for playing around. No main method, no importing, no semicolon termination, just code and go. It's been my go to lately when I just want to try small ideas out.

I remember overhearing someone mention they're in the process of learning Go. Is it worth?

yes. it replaced python in some of my scripting

If I wanted to get into machine learning and AI though, I should learn python right?

>self. self. self. self. self
This, I fucking hate that self self bullshit.
Whitespace is shit too. Does Ruby has similar science libraries support? If it does, then python would have to go out. (But it won't, python is an alternative to many languages it would hardly be dropped)