When Starting Out Tinkering With Webdev - is Flask or Django better?

If you want to start tinkering with webdev and have decided on using Python as your backend language of choice, you are often stuck with choosing a framework. There is lots of options, and usually confusion ensues. Even worse - you can be struck by analysis paralysis and get discouraged.

Let’s solve that! In Python, there are two great frameworks which you can easily choose from, without having to learn everything about webdev first. Choosing which one is better for you to get started with your current project.

Keeping it lean - Flask

If you don’t need a database right away, and prefer everything to be straightforward - you can’t go wrong with Flask. It’s a very well documented framework which does not impose a complicated structure on you or makes you deal with every single aspect of a production-grade webapp.

With it, you can jump right in, write simple functions which will process requests and get a neat development server without having to do any heavy lifting. The template system is neat-o and it just works.

Choose Flask if you are just getting started with a very simple app you want to try out. Just take a look at the starting page and start tinkering.

Data and structure - Django

Django is something like the “Ruby on Rails” of Python. It’s a very solid framework, which makes a lot of choices for you and makes it simple to start building an app which has users, authentication, data about stuff in a database and a great admin backend.

If you just wanted to make a simple app writing “Hello World” into your browser, this one would feel a bit overwhelming. But it’s really great if you want to build something centered around data and don’t feel like getting hung up on the details yet.

Jump to the excellent tutorial and start coding your app without second thoughts!