#100DaysOfWeb in Python Transcripts
Chapter: Days 37-40: Introduction to Pyramid framework
Lecture: A spectrum of frameworks
Login or
purchase this course
to watch this video and the rest of the course contents.
0:00
When I think of Python web frameworks I think of them on the spectrum. On one end, we have what are often referred to as micro frameworks.
0:08
The poster boy for micro frameworks is probably Flask. But there are actually ones that are even more simple and, you know, less comes in the box.
0:16
Something, you know, something like Bottle. And then we have for lack of a better term building block frameworks.
0:22
You take these big pieces of your application and you click them together. You want an admin section? You choose the admin thing and you drop it in
0:29
and now you have an admin section. You want, you know, some other forum? Okay, drop in the forum section and now you've got it.
0:35
Right, so there are very different philosophies around building frameworks. The micro frameworks are better suited for people
0:41
who carefully want to pick various libraries and packages that they're using. You want to decide between SQLAlchemy and MongoDB
0:49
or MongoEngine or ODM for talking to MongoDB. Or something else, right? You want to really carefully choose that? Well something like a micro framework
0:57
will let you pick that, 'cause it has none provided and has no guidance on one way or the other. On the other hand, building block frameworks
1:04
like say Django, come with their own ORM. It's kind of fighting against the system if you're not going to use the stuff that it comes with.
1:11
So where you like to land on this spectrum is really how much do you want to pick each individual thing separately and bring it to your project
1:19
or do you want to just take what's provided from the building block frameworks? Here's my assessment where these frameworks live.
1:26
There's not really a science here, it's just a gut feel but you know, I don't know what the science around it would be so here we go.
1:32
Out on this building block end I definitely have Django in mind. Probably not the only one out there like this
1:38
but it certainly is the most popular one of this category. So like I said, you could just flip a switch
1:44
and now you have an admin data table editing section. That just comes with Django. The micro frameworks don't have those kind of things.
1:52
In the micro framework land, we have Bottle. We have Flask. Those are very very simple. And Pyramid, it lives a little bit
1:58
in this Goldilocks range, I guess. It's not quite as simple or unopinionated as Flask or Bottle. But it's definitely closer
2:07
to say Flask than it is to Django. Most of the stuff, you bring. Most of the libraries and capabilities
2:13
you bring to the framework and you start using it. Here's where Pyramid generally fits in the spectrum of frameworks, according to Michael
2:21
and hopefully that will give you a little bit of a feeling on which side of the spectrum that you live on which will help you understand
2:27
maybe which framework you like best.