Getting Started
I built this app as my Portfolio Project for ALX.
Mistake 1
The minimum requirement was to be in teams of 3. This obviously allowed us to have a backend developer, a frontend developer and then perhaps a member who is strong in either one, both or a UI/IX designer.
I was on my own
Mistake 2
I knew that my CSS, and HTML were not the greatest so I spent 3 weeks watching videos on how to build responsive web apps on Pluralsight.
Result: I did not have enough time to finish my project
Mistake 3
When I finally made peace with my poor UI design skills, I began to focus on the Flask app itself.
I had 2 weeks left by this time.
To catch up, I watched so many videos on Youtube before even applying any of the knowledge. Where I struggled, I struggled in silence, and did not seek help.
Mistake 4
Now things got a bit technical. I used SQLite3 as my database and everything was running so smoothly. I only had one issue, everytime I made a mistake, I had to drop all tables and start again.
(I did not use Migrate).
I also ran into an issue on the day of my presentation. I had finally managed to deploy my web app but then I did not take into account that SQLite is great during development but not for production. On Heroku, it makes your app slow and is a file based database hence becomes buggy with Heroku.
Lessons
No developer is an island. Most of the times, being in a team gives you the opportunity to learn from others. At the same time, working alone also helps you realise your weaknesses so you know what you can and can not do.
Flask is an easy to use Python Framework but more support exists for Django than Flask.
SQLite is great if you are just playing around in your local machine and learning how to use and query databases. It is definitely not going to be as great when you have to deploy your app.
Learn, build, test, debug, and repeat the cycle. When you think you know it all, learn even more. I realised that throughout the projects I have built so far, I am only excited by testing code. Watching a program break just expected is my favourite thing about being a developer. The frontend of any project does not excite me at all.
Learn the basics before you learn the Frameworks. Bootstrap? Do you know CSS? Flask? How is your Python?
Lastly, hop onto my web app and help me by finding different ways it can be broken.
Top comments (1)
Nice article. Thank you for sharing your experiences with Flask. Do you have a link to the code that you wrote?