Web App Dev

Produce a full-stack web application in Python's Flask framework. While this is difficult and complex, it'll be a rewarding challenge.

This section of Gilmour Academy's Computer Science Department's GitBook is also the official documentation of the Flaskinni open-source project. If you would like to skip the background information about web applications, you can proceed straight to 4: Install Flaskinni.

Why web development?

Web Development is my favorite area of Computer Science to study. Programming at the hub of all information gives you a bird’s eye view of how business operations fit together. If an organization has mobile apps, websites, and some sort of critical information for their business, then web developers are the people holding systems together. There's so much happening in this field, too. In fact, we've got to be careful that all this cool tech doesn't overwhelm you.

Pro-level challenge

Want to jump in with both feet and go hard on the research? See if you can get your head around the growing change from REST API to GraphQL. What are those and why is there a change happening? Don't sweat it if YouTube videos and articles go right over your head. It's good to start dabbling and exposing yourself to top-level discussion.

Acceptable Level of Abstraction

Little kids like to keep asking, “Why?”

A thread of inquiry can always get more detailed. It never stops. You can keep digging deeper. Sooner or later we just accept the idea of something and stop asking questions. For example, I know hardly any of the electrical engineering involved to build a stick of RAM but I would still claim I know what RAM is. I’ve just accepted that there’s a thing called RAM and it works like so and I’m okay not knowing any more details than that for right now.

We are going to narrow our focus to building a Python Flask app using templates and a pre-built starting point. We can build really cool things but it means that we’re going to brush over big concepts that are totally worth studying. Sometimes it’s hard to feel like you understand something if you can’t take the time to closely examine all of the pieces and principles involved. Write down questions, don’t stifle your curiosity, but be patient as we setup lots of abstract ideas that we won’t be able to satisfactorily investigate for a while. TLDR: Be patient and keep a running list of concepts and questions to research later.

Resources

Extra Resources for the Try-Hards:

Last updated