Python for Decision Makers and Business Leaders Transcripts
Chapter: What is Python?
Lecture: Python is a full spectrum language
Login or
purchase this course
to watch this video and the rest of the course contents.
0:00
We've already seen the incredible growth of Python. We've seen how popular it is. But you have to ask yourself, why?
0:08
Yeah, I talked about data scientists moving into Python and then actually bringing a whole nother group of not just data scientists
0:14
but all the computational folks in all sorts of sciences and other disciplines such as economics. But that's a result. That's not why it's so popular.
0:26
That's other people coming along and finding it valuable. I've been thinking a lot about this. And the reason I believe Python is so popular
0:33
is it fills a pretty unique space in the realm of software development in programming languages. I've been a professional C++ developer
0:42
Javascript developer, .NET developer, in Python developer and also worked with other languages more on the side.
0:50
And as I go through these different languages I found a special and that it's what I'm calling a full spectrum language. Let me define that for you.
0:58
There are some programming languages that are really easy to get started with they're extremely productive for doing simple things.
1:07
At the very, very low end, we have things like the blocky Sketch programming languages they use to teach kids how to programme
1:14
some of these visual programming languages. But we also have things maybe like Visual Basic you know Visual Basic, it's kind of, can go pretty far
1:23
but it's really easy to get started with. But nobody would ever want to build an operating system with the Visual Basic.
1:31
So there are upper bounds what you might build with it they would never build YouTube or Instagram with Visual Basic.
1:37
There's these languages that are easy to get started with. They're very appealing to people that are not really wanting to be full on programmers
1:45
they just need to do a little bit of programming to get their job done. You know, the computational side things like MATLAB definitely fill this role
1:52
like I'm not a programmer but I need to make this stuff work so I need to visualize this graph or whatever
1:58
so I'm going to do this little bit of programming in MATLAB and make that happen. Again, MATLAB, you can't build YouTube you can't build desktop apps.
2:06
Right, you can just build simple visualization and analysis programs. On the other end of the spectrum
2:12
there are languages that are hard right from the beginning. They're meant to build huge professional applications
2:19
like C++ and C, or say, building Windows or Linux or Java or .NET, which are meant for building enterprise scale applications.
2:30
But how do you get started? You get started by addressing all of the complexity and all the structures put into those languages
2:37
from the beginning, just to do the simple things as well. How do you get started in C#? Well, you have a namespace, you have a class
2:46
and you have all these qualifiers and all kinds of stuff just to get the thing off the ground and going and it's built that way 'cause it's meant for
2:54
high end large scale software development but there's not like a simple cut down version of it. Python on the other hand, is all about starting simple
3:04
but for whatever reason, it's really well designed or its evolved this way. There's not really a strong upper bound or a strong lower bound.
3:12
You've already seen two full Python programs. The first one was at Hello, World thing where we passed the name that was three lines.
3:19
And even if you're not a programmer I suspect those probably made a lot of sense to you. There's not a bunch of craziness
3:25
and we haven't even talked about compiling and linking and all that weirdness. The other one was the Flask web app. And that was five lines.
3:33
There's probably one or two lines it was a little funky that you have to do in there but it was pretty simple.
3:38
Right, so you can get started incredibly easy as a scientist, as an economist I can look at this language and say
3:44
actually, those five lines right there that's understandable, and that solves my problem incredibly, that, that is what I need.
3:51
And you don't have to learn all this computer science stuff to get started. And yet, you don't grow out of Python, not usually anyway
3:59
there's a few cases where maybe but just generally, you don't grow out of Python. Python can scale up to build incredibly
4:06
huge applications and infrastructures. Much of the machine learning is done in Python. YouTube is written in Python
4:13
and it gets millions of requests per second millions of requests per second and it's implemented in Python.
4:20
Instagram, there's all these different things that are built in Python and these are large scale, serious applications maybe outside of the web space.
4:29
JPMorgan Chase has 35 million lines of Python running a lot of their internal important banking systems and software. So you don't grow out of Python
4:39
the same way you do some of these simple languages. And yet, it's easy to get started. And that's very appealing for a huge range of folks.
4:46
You have all the cool computer science techniques and infrastructure that you need to write real programs but you get to opt into it as you need.
4:55
That's what a full spectrum languages in my definition and Python is a standout among all of them for it.