This week is assignment week. One of the assignments I need to complete is for the course ICTs for Learning Design. This final assignment requires us to design a unit of work (a sequence of learning experiences) for a particular subject that makes effective use of eLearning. The following is the first step in this process.
The process started over a fortnight ago with a post asking where all the innovative IPT (Information Processing and Technology) courses were? Many thanks to @meganrodda for sharing her games design program.
The intent here is to look at the new (2010) Queensland Syllabus for IPT courses and use a unit of work from there as the basis for the assignment. The intent is to try to come up with something right out of left field. Something that avoids all of the common approaches and comes at the question of IPT from a different angle. In the context of this course, one that hits some of the theoretical buttons so desired in the e-learning course. After all, this just has to be a design. I don’t have to implement it, yet.
The idea that is in the back of my head is one I floated briefly in this post. i.e. structure an entire IPT course around a particular open source tool like Moodle or WordPress. Something that has a large community and a plugin architecture that allows fairly simple modification. The students would have to engage with the community, become familiar with the tool, start answering questions/writing documentation for the tool, creating instances of the tool (e.g. managing a Moodle instance for some folk), and finally modifying the tool in someway.
Some detail on IPT
The following are a few choice excerpts from the main IPT syllabus document that I’m hoping might inform my design.
What is it?
Information Processing and Technology is a course of study that provides students with
knowledge, skills, processes and understanding of information technology. It emphasises problem identification and solution rather than the use of specific applications, and is an intellectual discipline that involves a study of information systems, algorithms, software programming, human–computer interaction, and the social and ethical issues associated with the use of information technology.
Some important components
This course should prove especially relevant to students by helping them to engage with the rapid rate of change associated with information technology and to appreciate its advantages and disadvantages….It is therefore important that an approach be employed that enables students to develop higher order processes of analysis, synthesis and evaluation, and that will best equip them to communicate their understanding of the conceptual base integral to information technology.
There are four general objectives that are required to be taught. The following table summarises the four.
|Knowledge and application
declarative knowledge and procedural application
knowledge of the terminology, applications and effects of ICTs, and of the syntax and rules of programming languages and query languages
understanding of applicable concepts, design processes, diagrammatical representations, and social and ethical issues
application of processes and algorithms for the solution of simple and familiar problems.
define and explain information technology terminology, concepts, processes and principles
apply set processes to solve simple or familiar information technology problems
|Analysis and synthesis||deconstruction of a setting to analyse a problem or situation to determine their salient features and their suitability for solution using information technology
utilisation of appropriate design methods and principles
synthesis of solutions to problems or situations that are unfamiliar, significant in scope or complex in nature.
|interpret and analyse problems and situations requiring information technology use
design and develop solutions to unrehearsed or complex information technology problems.
|Evaluation and communication||use of logic and reason in a range of evaluation approaches to make judgments and recommendations
application of metrics and protocols to test solutions, and of prescribed criteria to draw conclusions and make recommendations
evaluation of processes for identified products and solutions
construction of documentation using the information literacy, software or information systems development cycles
presentation of technical ideas, design concepts, solutions and evaluations.
|test processes and solutions, apply prescribed criteria, reasoning or evidence to draw conclusions and make recommendations
construct documentation and present information to convey meaning using communication conventions.
|Attitudes and values||It includes envisioning possible, probable and preferred futures, and taking responsibility for actions and decisions while promoting ethical practices. A course in Information Processing and Technology promotes problem solving skills, teamwork, and communication through the development of products, investigation and the completion of assessment instruments.||appreciate the complex interactions between information technology and individuals, and information technology and society
recognise and value their potential to become productive participants in the development of information technology
develop responsible attitudes towards the use of information technology
appreciate the value of working independently and with others.
55 hours per semester, over 4 semesters giving 220 hours.
165-180 hours comes from 6 core topics
Use of a formal representation system to understand the basics of algorithms, development, sequence, selection etc. Aside: I’m not such a big fan of formal representation systems (e.g. Nassi-Schneidermann etc.)
- Relational information systems
Arghh, they mention DIKW as part of the core. etc. etc.
Interesting: “analyse an existing information system” is one of the listed outcomes. As is “create, document and evaluate a working information system”.
- Software Programming
3GL programming, debugging, testing etc.
- Structured query language
I find it interesting that this is a core topic separate from relational information systems. But basically it’s SQL.
- Social and ethical issues
- Human-computer interaction
There are two topics for additional material (as well as extension material for some of the core topics)
- Intelligent systems.
AI, knowledge-based systems etc. Gees, Prolog and LISP. There is a bit of deja vu from my undergrad CS days in the late 80s here.
- Computer systems.
Everything from processors and von Neuman architecture through to systems administration.
Where appropriate, topics should be investigated through the design–develop–evaluate cycle
The design-develop-evaluate (DDE) cycle is emphasised. Also, learning experiences should:
- provide opportunities for students to achieve the general objectives of the syllabus
- suit the particular needs, abilities, learning styles and interests of the students
- provide opportunities for students to think and work individually and with others in a cooperative way
- be interesting and challenging
The is explicit mention made of progressing from simple to more complex experiences. I find this somewhat contradictory to the ideas behind constructivism etc. Wouldn’t exposing students to complex, authentic experiences from the start be okay, as long as there was fairly significant scaffolding at the start?
And now a list commences of experiences students should have
- Using information technology.
- Solving problems.
- Extended writing.
Some example types are given, with significant detail, including:
- Supervised written assessment
- Extended response.
- Product assessment.
Each student needs to have a verification folio.
Some initial principles
Some misc. principles that I think might be useful in guiding the plan.
A real system for a real audience
One of the example work plans has the students developing a dynamic web application to keep a “travel blog”. This type of assessment is one of the problems I have with IPT (though I remain uncertain about how realistic addressing this problem is within the practical constraints of actually teaching it).
Here are the problems I have with this approach
- You would never do it this way.
Very, very few people would ever write their own travel blog software. They’d get an account on WordPress or some other blogging service. I’m quite sure if you looked through the content/criteria for IPT you would find something suggesting that writing your own travel blog software is inefficient and inappropriate.
- Your friends and family know this.
If a student runs to their friends to show off their travel blog, the friends will ask “Why don’t you just use WordPress?”.
- There are no users of the tool.
Having people using your tool is important.
- There is no community of developers.
The student is often relying on the teacher for advice. There are no other experts around to help.
Creation is the hardest task
Too often algorithm design or programming courses start with students creating algorithms and programs. I’ve never been a fan of this approach. I initially learned how to program by typing in programs from computer magazines, analysing those programs and stealing ideas. i.e I examined working programs first.
And that was in the day when it was quite common to create a brand new, stand alone program. Increasingly over recent years programmers seem more likely to be adding plugins or mods to an existing system. As a result, being able to analyse and become familiar with an existing system is an important skill.
Allowing space for the advanced students
On average, most senior high school students are going to be reasonable computer literate. There will, however, always be the hand full that are streets ahead. I’d like to see a design for IPT that provides a space for these students to learn and experience new things.
Increasing transparency and collaboration
What passes for collaboration in the IPT classes I’ve observed is fairly ad hoc and usually limited to friends helping friends or the smart kid being asked for advice. I’m interested in embedding collaboration more tightly into the class. In part through some of the practices of methodologies like eXtreme Programming (e.g pair programming, story board, standup meetings etc.).
Am also interested in using project management software like Basecamp to manage the workload and tasks. Have students project manage their learning, both individually and as a group. Make their progress transparent.
No or minimal teaching
The above ties into my desire to minimise or totally remove the need for me to be “the teacher”. I guess the ultimate aim would be for my role to be the “lead developer”. The guy with a bit more experience that guides the team members through there tasks with the aim of them not needing any help. I don’t want to be in the situation of having to give “lectures” on SQL, ORM or language syntax. That’s a task to be taken on by the resources that are out on the web. Some of which might be identified by me, but much of it would hopefully be identified by the students.
As mentioned above, I don’t imagine implementing something like this will be easy within the practical requirements and constraints of a school setting. Especially for a novice high school teacher. But you have to dream big. Next to connect this to the students.