Fun and creative web engineering with Python and Web2py

Enjoy learning programming with Python, building web-apps you publish on the web.
Free tutorial
Rating: 4.3 out of 5 (790 ratings)
32,437 students
English [Auto]

After this course, you will be able to build dyamic apps using the popular Web2py framwork and understand how to do that using the Python Programming language


  • Basic computer skills. Such as surfing the web, saving and opening files.


OBSERVE: For now the course is free on Udemy, since it is under development.

This course is about building web apps by learning web engineering and Python programming at the same time. We will be using a framework called Web2py which was created to make learning programming easy and enjoyable. But Web2py has also become a popular framework because it has turned out to be fast, scalable and that it allows for extreme developer productivity.

My personal love for Web2py grew from the fact that I literally became ten times more productive compared to when I was trying to get my head around another popular but really hard to learn framework called Django. I hope you will feel the same taking this course.

This course uses a heavy mix of videos, short texts to reinforce what you already have seen in the videos and a lot of quizzes to keep your brain attention on where it should be: learning.

I assume you know nothing about programming or building websites, but that you have a hunger to start building stuff online, and you can't wait to get your first app online today.

Many courses take a dictionary approach to teaching programming throwing a book with commands out of context. This course is not one of them. We all know that learning things out of context has a bad smell and doesn't result in competence.

This course is thus built around mini-projects resulting in small apps that we connect to each other. We will focus on the stuff most courses forget, such as engineering principles and writing good code. This means learning to analyse problems, rapid design process, writing automated tests and writing code that is easy to maintain and much much more.

You should take this course if you are interested in getting started with developing apps online. See you in class!

Who this course is for:

  • This course is ment for total beginners up to intermediate programmers wanting to quickly get up to speed building dynamic webs-apps with the Web2py framework

Course content

1 section25 lectures1h 46m total length
  • Overview of the Contacts App
  • Are you ready to start coding?
    1 question
  • Install Google Chrome
  • Do you have Google Chrome installed?
    1 question
  • Creating a Pythonanywhere account
  • Setting up Web2py on Pythonanywere
  • Should you have the same password for Web2py as Pythonanywhere?
    1 question
  • Login to Web2py Admin interface and creating the Contacts web-app
  • What is the Welcome app used for?
    1 question
  • Setting up your personal time machine... version control
  • Does version control give you a history with all the changes?
    1 question
  • Changing the design (View) of our Contacts app
  • What do we use HTML tags for?
    1 question
  • What does the <br/> html tag do?
    1 question
  • Playing with packages and sharing problematic code
  • Does the w2p packages allow for easy code sharing?
    1 question
  • How to model database tables with Web2py
  • Text: repeating the important stuff on modeling tables in Web2py
  • Introducing controllers
  • Text: how URL-s are mapped in Web2py
  • How are URLs mapped in Web2py?
    1 question
  • Printing out values from our database
  • What will a for-loop allow us to do?
    1 question
  • Printing out stuff on a html page (view)
  • Helping a student - our first problem solving
  • Summing values up in a loop
  • Text: How to sum things up
  • Second solving a student's problem video
  • Integers and floats
  • Integer division quizz
    1 question
  • Integer division quizz 2
    1 question
  • Mac ONLY - how to open the python terminal
  • Playing with variables in the python interpreter
  • What happens if you run .title()?
    1 question
  • Understanding lists (called arrays in Python)
  • How do you append a name to a list of names?
    1 question
  • How to count charachers in a string
  • How do you count the number of characters in a string?
    1 question
  • Looping over a list of items in a html-view file
  • Finishing up. Fixing the top-menu and making the app the default app
  • Changing the name of the app to init in Web2py does what?
    1 question


Mika Sjöman
  • 4.3 Instructor Rating
  • 790 Reviews
  • 32,437 Students
  • 1 Course

My background lies with startups, and today I am studying a masters in Systems Science and Leadership. My previous experience lies with building websites, such as language training websites, webpages for non-for-profits, startups, etc. I started programming 20 years ago, and got in touch with Web2py 2.5 years ago. I think Web2py is one of the easiest frameworks out there to build websites with, and definitely way easier to quickly build websites with compared to popular but heavier frameworks such as Django.