DjangoFlix - Build a Netflix-Like Service in Django & Python
What you'll learn
- Django Proxy Models
- UnitTesting Models & Proxy Models
- Techniques for building the fundamentals of a Netflix-like service (except the actual video streaming)
- Implementing a 5-Star Rating in Django alone
- Generic Foreign Keys & Generic Relations for flexible model relations
- Implementing Tagged Items & Categories for Improved Content Discovery
- Creating the conditions for a machine learning model (the way the data is structured)
- 30 Days of Python (or equivalent python experience)
- Try Django (or equivalent Django experience)
- You know how to implement classes, functions, variables, iterators, and more in Python
This is not a Netflix clone and not even close. Why? Netflix is a complex system of engineer that no one class could ever fully cover. If I told you that you could build a Netflix clone in less than 40 hours, I would be lying to you.
Instead, this is a foundation of what a Netflix-like service could be. This foundation only matters as it serves a roadmap to understanding Django on a whole new level.
Django is the most popular web framework in the world written in Python and for good reason: Django is incredibly simple and incredibly complex.
Models, Views, Forms, User Auth and Templates are fundament to Django. After completing one of my Try Django series, you'll see that creating rich web applications is, well, pretty simple. Models map to database tables. Views essentially handle a url and render templates. Forms help validate data and templates are essentially HTML with a little programming built it.
If the paragraph above is unclear, this course is not for you.
Django's complexity comes with the layers of abstraction you can start to build within your projects. To me, these layers come from Generic Foreign Keys & Proxy Models. The complexity on the surface might be intimating (it was for me) but after you get familiar with them you'll come to find their complexity to be less daunting and potentially, no longer complex.
The goal of this course is to introduce your to a number of concepts you may have never seen before while building the foundation for a service that could potentially grow into Netflix.
Here's some topics we'll cover:
Generic Foreign Keys
Automated Unit Testing
ManyToMany Fields vs Foreign Keys vs Generic Foreign Keys
Through models for ManyToMany
Creating a Rating System (user ratings)
Complex Search Lookups with Q Lookups
Re-usuable model receiver functions
Custom template tag for rending a rating form
and much more
Who this course is for:
- Django Developers looking for a deeper dive into Django Model Capabilities
- Beginner Django Developers needing to better understand Testing in a practical use case.
It all started with an idea. I wanted freedom... badly. Freedom from work, freedom from boredom, and, most of all, the freedom to choose. This simple idea grew to define me; it made me become an entrepreneur.
As I strived to gain freedom, overtime I realized that with everything that you do you can either (1) convince someone, somehow, to do it with you or (2) figure out how to do it yourself.
Due to a lack of financial resources (and probably the ability to convince people to do high quality work for free), I decided to learn. Then learn some more. Then some more. My path of learning website design started a long time ago. And yes, it was out of need not desire. I believed I needed a website for a company that I started. So I learned how to do it. The company died, my skills lived on... and got better and better.
It took me a while after learning web design (html/css) to actually start learning programming (web application, storing "data", user logins, etc). I tinkered with Wordpress, believing it could be a "user" site, but I was mistaken. Sure there are/were hacks for that, but they were hacks/work-arounds and simply not-what-wordpress-was-indended-to-be. Wordpress is for blogs/content. Plain and simple.
I wanted more. I had a web application idea that I thought would change the way restaurants hire their service staff. I tested it with my basic html/css skills, had great initial results, and found a technical (programmer) cofounder as a result. He was awesome. We were featured on CNN. Things looked great.
Until... cash-flow was a no-flow. Business? I think not. More like an avid hobby. We had the idea for a business just no business. Naturally, my partner had to find a means of income so I was left with the idea on its own.
Then, I tried Python. I was hooked. It was so easy. So simple. So elegant.
Then, I tried Django. Even more hooked. Made from python & made for web applications. It powers Instagram & Pinterest (two of the hottest web apps right now?).
Then, I tried Bootstrap. Simple and easy front-end design (html & css) that is super easy to use, mobile-ready, and overall... incredible.
Python, Django, and Bootstrap are truly changing the way the world builds web applications. I believe it's because of the simplicity to learn, the sheer power behind them, and, most of all, the plethora of resources to aid anyone in building their web projects (from packages to tutorials to q&a sites).
I relaunched my original venture with my new found skills. That wasn't enough. It didn't compel me as it once had. I started imagining all the possibilities of all the ideas I've always wanted to implement. Now I could. Which one to start with? There were so many good ideas...
Then another idea, a new & fresh idea, started brewing. I started to believe in the power of learning these skills. What would it mean if other non-technical entrepreneurs could learn? What would it mean if ideas were executed quickly, revenue models proven, all prior to approaching the highly sought-after programmers? What would it mean if entrepreneurs became coders?
And so. Coding for Entrepreneurs was born.
Here are some bio highlights:
Adjunct Professor of Entrepreneurship at the Lloyd Greif Center for Entrepreneurial Studies in the Marshall School of Business at the University of Southern California
Bestselling instructor on Udemy
Funded creator on Kickstarter
Founder of Coding For Entrepreneurs
Cohost of Backer Radio