I basically want to make a small personal website that probably won’t get any attention. It will also be somewhat simple. Is Django overkill and I should use Flask or something else or is it okay? I tried learning JS and using ExpressJS but JS overall feels very loosely typed and I don’t like it. I’ve been using Python for over 3 years now.
Sure! I like using larger frameworks anyway because they typically come with a lot of nice features you might miss on the smaller ones. Personal preference.
Once you learn Django, is it easy to get a simple website to get running? How is its performance? I am planning on using templates heavily, is it ok?
You can get a local install of Hello World running in minutes. Same thing for a Docker instance.
It’s performant enough that if you are asking this, it probably doesn’t matter for your use-case.
Yes, that’s how you use Django. Since you asked about performance though, one area where Django’s performance can degrade is if you start trying to add too much logic in the views. Follow the Model, View, Control structure and keep logic in the control layer as much as you can.
All good advice, just remember that the “control” layer in Django is called “view”. So, keep logic in the views and avoid using too much logic in templates.
Sure yeah, it’s not hard really. There is some background you’ll need to learn, like adding a view or working with models, but when you learn it, you’ll be glad you did. Templates are a great reason to use Django.
Performance is great. Of course, the real performance isn’t really with Django itself, but how you use it. For example, if you write expensive database queries, your app will be slower.
Great thanks for your help.
You bet! Good luck!
I find it the easiest to start with if you’re using a DB. You don’t need to write any SQL and everything is in python. And the tutorial + documentation is stellar.