Welcome to the Web Developer Bootcamp with Flask and Python. In this course, you'll learn how to build and deploy dynamic websites using Python, Flask, Mongo
Welcome to the Web Developer Bootcamp with Flask and Python. In this course, you'll learn how to build and deploy dynamic websites using Python, Flask, Mongo
If you want to share your projects online and become a full stack web developer, you're in the right place. I will teach you the latest and most popular technologies, including Python 3.10, Flask
I won't teach you jQuery or Bootstrap since those are old technologies. Instead, I focus on giving you a solid HTML and CSS foundation, so that you can be truly independent, and build anything you want.
I'll help you write many real-world projects that test your skills and build your understanding. By the end of the course, you'll be able to design and code any feature on any website.
This course beats attending any live bootcamp or workshop because I've put hundreds of hours into planning, recording, and editing. Plus you get lifetime access, and I provide outstanding support—I answer dozens of questions every day.
Why learn Flask?
Flask is a microframework for web development, written in Python.
It's lightweight and simple, so you can start using it straight away. As you go through the course and learn more about it, you'll realize it's also really powerful.
Flask provides everything we need for building websites: a good way to organize our apps, helpers for user authentication, a large selection of plugins and extensions to do dozens of other things, and much more.
What you'll learn.
Here's an overview of what you'll learn in this course:
A super-strong HTML 5 and CSS 3 foundation
How to plan your software projects and make them successful
Design websites using design software like Figma
Semantic HTML, and how to code in HTML like a professional
Build backend applications with Flask and Python
Make your HTML websites dynamic with Flask and Jinja2
Become a CSS professional: learn about flex, grid, CSS animations, and much more
Store and retrieve data with MongoDB on the Cloud
Deploy your web applications (using both free and paid solutions)
Implement user authentication on your Python and Flask websites
Much, much more.
But most importantly, learn to code from a professional software developer, and like a professional software developer
I won't cover JavaScript in detail, but that's because you just don't need it. With Later on, you can always learn JavaScript for extra functionality. Trying to learn JavaScript and Python together leads to problems, and everything becomes a bit more difficult than it has to be.
If you already know a little bit about programming (with Python or any other language), you're ready to start this course. Also, I've included a complete Python Refresher section to help you get up to speed with Python if you don't know it well already.
Other students are loving the course.
"Jose is a Master of the Art of Programming. This course is truly underrated. He goes straight to the point, yet flesh out all the Gotchas. Introduces current best practices in Web dev. An easy 5 for this course. " - Olayemi Akinsanya
"Great course, learned loads, really great for OOP and for web development. Really fun, can't wait to start my own projects now. " - Joshua Shallow
"A well organized and very useful course. Thank you, Jose. " - Leonid Bushman
Feel free to look through the preview videos of this course to see if it's a good fit for you.
Remember I offer a 30-day money-back guarantee, so you can join me for an entire month, risk-free, and decide whether to keep going or not.
I'll see you on the inside.
Jose Salvatierra
This is a short introductory video to this section. I'm really excited to guide you through this Python refresher course!
This lecture has a link to all the Python code we'll write in this section. Use it to check your code as you write it, or to refresh your memory!
Let's look at variables in Python. Variables are just names for values, which we can reuse and reset.
Python is a dynamic typed language, which means variables don't need be constrained to a specific type.
In this lecture we look at three essential data structures in Python: lists, tuples, and sets.
A list is an ordered collection of items.
A tuple is an immutable ordered collection of items.
A set is an unordered collection of unique items.
In this fascinating video, we look at advanced set operations: calculating items which are in two sets, or items which are in one set but not another.
This video explores how to create programs which can change depending on some input. For example, we might ask the user if they want to continue or not.
This makes use of boolean comparisons, such as:
1 == 1 (which is True)
5 > 5 (which is False)
The boolean comparisons we have available in Python are many:
==
!=
>, <, <=, >=
is
is not
in
not in
Loops allow us to repeat things over and over. This video explores two different types of loop in Python: for loop and while loop.
List comprehension is a relatively unique thing to Python.
It allows us to succinctly use a for loop inside a list to generate values. These values then end up in the list.
For example, [x for x in range(10)] generates a list [0, 1, 2, 3, 4, 5, 6, 7, 8, 9].
Dictionaries are an extremely useful thing in Python.
They are akin to sets, but instead of being a set of unique values, they are a set of unique keys, and each has a value associated with it.
In this video, let's look at methods in Python by creating some examples. Creating methods is simple, you just need the one keyword: def.
*args and **kwargs are truly fascinatingly confusing. For eons, they have annoyed Python learners.
To this I say no more!
They're just a way of passing arguments.
Objects are the natural progression from dictionaries. Instead of just holding data, objects hold another special type of data: methods.
A method is a function which operates on the object calling it. Thus, an object can use its own values to calculate outputs of methods. Very cool.
In many instances, we don't want our methods to be solely referencing the object which calls them. Sometimes, we want to reference the class of the object. Other times, we don't need either the object or the class.
@classmethod and @staticmethod are two decorators (looking at that shortly!) which extend the capabilities of methods.
Classes in Python can also inherit from one another. This essentially means that a class contains all of the properties and methods of the class it inherits from—but with the added bonus that it can have more.
Not only we can pass values from one method to another, but we can also pass functions.
This is not used very often, but it can sometimes yield very powerful methods in very few lines of code.
One of the most confusing aspects of Python for learners is the concept of decorators.
These are things we can place on top of function definitions which allow us to extend the function by executing code before and after the function.
They are extremely powerful when used well!
In this video we look at advanced decorators in Python, which is decorators that take arguments.
This amplifies the decorator's usefulness, although also makes them slightly more contrived.
OpenCourser helps millions of learners each year. People visit us to learn workspace skills, ace their exams, and nurture their curiosity.
Our extensive catalog contains over 50,000 courses and twice as many books. Browse by search, by topic, or even by career interests. We'll match you to the right resources quickly.
Find this site helpful? Tell a friend about us.
We're supported by our community of learners. When you purchase or subscribe to courses and programs or purchase books, we may earn a commission from our partners.
Your purchases help us maintain our catalog and keep our servers humming without ads.
Thank you for supporting OpenCourser.