Building Data-Driven Web Apps with Pyramid and SQLAlchemy Transcripts
Chapter: Welcome to the course
Lecture: What is fullstack development?
Login or
purchase this course
to watch this video and the rest of the course contents.
0:00
In this course, you're going to learn
0:01
what's sometimes referred to as full-stack web development.
0:05
Now, we don't spend that much time
0:07
on the JavaScript side of things
0:09
but everything else we do spend a fair amount of time on.
0:11
So, what the heck is full-stack anyway?
0:14
Let's look at all the pieces involved
0:16
in a typical web application interaction. We have a browser
0:20
we have our server running out on some cloud hosting
0:23
we have usually a virtual machine
0:25
or set of virtual machines in the background
0:27
and our database we're working with.
0:29
So, a request is going to come in.
0:30
It's going to magically find it's way
0:33
through the internet to our server.
0:34
Our server is going to do some processing
0:37
talk to the database, and so on.
0:40
Where's the full-stack part come in?
0:41
Well, let's look at the technologies involved here.
0:45
On the server side
0:47
there are a bunch of different technologies
0:48
you need to learn.
0:50
We're going to learn Python.
0:51
Well, we're going to use Python at least
0:53
and we'll probably learn little bits of it along the way
0:55
but we're going to focus on using Python
0:58
along with Pyramid
1:00
the web framework that we're going to work with.
1:02
The dynamic HTML templates
1:05
in this case Chameleon.
1:07
The data access layer SQLAlchemy.
1:10
In order to deploy and configure our servers
1:12
we're going to need to know a little bit of Linux.
1:14
Learn that.
1:15
We're going to use Nginx and uWSGI.
1:18
These are two cooperating web servers
1:20
that we're going to with to run our Python code in Pyramid.
1:24
Then we're going to talk to the database.
1:26
Well, what do you need to know for that?
1:27
Well, maybe this is Postgres or MongoDB.
1:31
For the course, we're actually going to use SQLite
1:33
and also a little bit of touch of MongoDB at the end
1:36
but it's easier to switch to something like Postgres.
1:39
You many need to know the query language to get to that
1:43
like SQL, or MongoDB's query syntax
1:46
it's like a JSON type thing.
1:48
We're not going to actually focus much on the query syntax
1:52
because we're going to use SQLAlchemy
1:53
which lets us sort of abstract that away
1:56
but you would more or less need to know that in practice.
1:59
You also need to know how to migrate or manage your database
2:03
over time as it's structure changes.
2:05
Look at all these technologies just on the server side.
2:08
That's a lot to learn
2:09
and this whole stack of technologies put together
2:13
is part of what's called full-stack
2:14
but there's more to it.
2:16
Over here on the browser side
2:18
we have HTML and CSS we have to deliver
2:21
to the browser, right?
2:22
That's ultimately the goal
2:23
is to show stuff on the screen for the web browser.
2:27
HTML and CSS, we're going to do some work with that.
2:29
You typically don't want to do the design from scratch
2:32
so you'll pick a front-end framework like Bootstrap.
2:35
Maybe you're even writing some rich JavaScript apps
2:37
with say, Vue.js.
2:39
Those are grayed out, because like I said
2:41
we're not doing much with JavaScript
2:42
but these are the technologies that you might put
2:45
into play for a full-stack web application.
2:49
The web can be a little bit daunting.
2:50
We're going to go through most of these technologies.
2:53
All of the white highlighted ones in this course
2:56
and you'll have concrete small examples for each one.
3:00
In the end, we'll have it all put together in a full-stack
3:03
Python-based web app using Pyramid
3:06
SQLAlchemy, and Bootstrap.