Hello Mr. Bau
The questions raised by you in the previous email have helped me form a rough outline on how would I go about doing the project. Here is what I have in mind after the brainstorming.
Taking into account that Pencil Code is targeted at a young audience from a learning point of view, I’d like to implement the project consisting of short fun challenges....
Step1 | Step2 | Step3 | Step4 | Step5 | |
Choose 1 or more tables or if lesser tables in database, then get all tables. | SELECT | * or getColumnList(step1) | FROM | getColumnList(Step3) | OPTIONAL: WHERE FULL JOIN INNER JOIN GROUP BY |
UPDATE | getTableList(step1) | SET | getColumnList(Step3) | WHERE | |
DELETE | FROM | getTableList(step1) | WHERE | getColumnList(Step4) | |
INSERT | INTO | getTableList(step1) | (*) | VALUES | |
ALTER | TABLE | getTableList(step1) | ADD DROP ALTER MODIFY | ||
CREATE | TABLE | table_name | (*) |
Hey Vidhun,
I like this idea of having exercises.
This could be integrated with the three modules(basic, advanced, query based)to make the whole process of learning complete.
Basically, after student has gained enough confidence in a particular module, he can choose to do exercises, which will be based on a similar lines that you mentioned.
Also, we'll have two options. We'll have a set of exercises already made and there'll be a features by which teachers can create exercises. Your thoughts, David?
Rhythm
Sent from my phone, sorry for typos
This will help them learn about databases and get going with DBs as well.
The whole system will be divided into sections, like beginner, intermediate and advanced, and each section will contain sub sections like insertion, deletion, comparison operators etc which will teach the concept( by telling about the steps and a small detail). After that, there will be an exercise which will contain an incomplete code and the student will have to complete the code (this happens in codecademy.com 's exercises) to pass the exercise. If he requires hint, it will be there.
What are your view about this?
Amulya
Some things that teachers might want to do with a database tool, for example:
Data collection and analysis, e.g, in a science class. Check out isense (linked below) - they have activities which are good - like collecting data over time (maybe collaboratively with your class), and then having a tools that automatically show and graph the data.
But then the issue with isense is that it's a pretty closed system. You'd want students to be able to program against the data, which is where the starting point of the discussion is here so far. (But some teachers may actually teach databases without any programming at all!)
Another activity teachers might do is bring in an outside data source, for example from a spreadsheet, and have students work with it.
Another activity might be part of a programming class - there students might want to persist their data, for example, a high score list in a game, using a simple database.
As we get more complex, we might want to combine a tool that helps students collect data and join it with data from the web. For example, students could collect data using their phones into a database, and join it with weather or climate data from a public source.
This is a step back to look at the big picture. Its important to think about the preprogramming experience. What can you do with a database before and as you just barely start to program?