Course Length: Approximately 8 weeks.
AS92005- Develop a digital technologies outcome.
This course can be completed as a standalone course but it is HIGHLY RECOMMENDED that students have completed the Python Unit and passed the assessment first. The suggested learning is by no means comprehensive and you should feel free to replace or add additional resources as part of your teaching and learning program.
Software requirements:
Visual Studio Code: https://code.visualstudio.com/
Python: https://www.python.org/downloads/
Git: https://git-scm.com/downloads
SQlite Studio: https://sqlitestudio.pl/
Suggested Timetable:
2 weeks to gain foundational knowledge of SQL and Database Design in the "Understand" section. It's best you set checkpoints of learning for each of the sections to help keep your students on track. You could ask them to submit screenshots of their progress or their test scores. All sections have OPTIONS! So either let the kids choose or choose for them but you do not need to expect them to do them all (unless they are superhuman)
2 weeks on the Apply completing the scaffolded project. This includes completeing Task#4, Task#5 and Task#6. By then they should have made a very basic SQL/Python program with the help of the videos and you and the internet. This is the minimum they should have completed before attempting the Assesment Episode.
4 weeks to complete the "Do" assessment with minimal help from you, the teacher.
Special Note for Extension Kids:
The extension exercise for this is to use HTML/CSS as the front end for a basic database using the Flask Framework. If you have a superstar, point them at the bottom of the page after they can demonstrate an understanding of SQL and see if the can turn their basic Python Application into a Web Application.
What is SQL and why should I care about learning it?
Like it or not, Data is everywhere. From your Instagram feed to the supermarket shelves, without data and data management software, it would all fall apart. Databases hold all this data and, in order to manipulate it, we need a language to help us to "talk" to the database. That language is called SQL and it still sits in the top 10 programming languages in the world despite being invented in 1970!
In this course, you'll learn to create and manipulate databases with a mix of SQL and Python.
Another great step by step written tutorial from Grok.
This contains explanations, in-browser code practice, quizzes and challenges.
This is free for all students in NZ and, better still, teachers can create classes and track their students progress through their own dashboard.
Try this simple SQL game to test your skills. Use SQL to solve the puzzles. The game is in German, so use the menu to change language to English. The option is shown in the pic to the above.
This is challenging SQL Murder Mystery game to really challenge your skills. Use SQL to solve the murder. Don't forget to check out the ERD (Entity Relationship Diagram) so you can work out the proper queries to solve the puzzle.
Data design and "common sense" data normalization is a huge topic. These two videos explain it fairly well and show you how to design an "Entity Relationship Diagram" easily in Lucid Charts (part of google docs). This will be important to ensure 'data integrity'.
Some of this stuff is a bit hard to get your head around right now. But watch it all the same. You will have the chance to put it in practice in task 4.
Please check the document and ensure that students have a good grasp of database design. Look for correct data types, use of foriegn keys where applicable and the relationships between tables are correct. Answers are at the end of the doc.
In the following three tasks, you will need to submit proof of completing the task to your teacher. Each one can be submitted through your teacher's chosen method.
Teachers: Create three "Assignments" to collect the following three pieces of evidence.
Task 5: A video or screenshot of the final program
Task 6: A link to your students github repos
Task 7: A link to a github repo with a complete database application in it.
Complete the Python Database Tutorial
Beginner focussed intro lesson for using SQL with Python.
Work through this to understand how to query your sqlite database file with Python and output the results of the queries.
In this tutorial you will:
Create a table in SQLite Studio with the correct data types
Enter data into the database with SQLite Studio
Write and test SQL Queries on your data
Write Python Code to interface with your database and output the data
Submit a short video of your code to your teacher
Learn how to use Git and Github in VSCode
This is an essential software engineering skill. Trusted by more than 4 million developers, github is the best place to keep your code safe. It can be really confusing and some tutorials tell you about branching and merging and forking and pull requests and it just puts the beginners off.
In this tutorial we'll use a simple process called "Master-Commit" where you'll stage, commit and sync changes straight to your main repository. If all goes well, thats all you'll need to do!
Welcome to the world of github!
Submit a link to your github repo to your teacher
This video explains the task and quickly shows you how to put together all the knowledge that you should already have to complete a simple Python Database application.
This include setting up folders, designing and creating a database, creating a useful main menu and breaking your program up into functions.
Make sure you have working simple example similar to the the one in the tutorial before you attempt the assessment.
Submit a link to your github repo to your teacher
Beginner focussed introductory lesson to the Flask Web Framework.
Work through this and make sure you are able to make a basic Flask App using VSCode, Python, Flask and HTML/CSS
By the end of the tutorial you will have made a working Web Application with Python code that serves HTML to your web browser and sends it simple data.
This is a critical first step to understanding how it all goes together to make a data focussed web applications.
Follow along and PLEASE USE HEADPHONES! Google captions don't work very well with Scottish accents...