Hi,
 I am attaching a single HTML file that contains the draft report for
FSUG meeting held on 3/4/2009. I am sorry that I couldn't file it
earlier since I was a little busy. I am posting the draft here since
this meeting was a very important one. I will file a complete report
once I am able to fix a broken FSUG ODF template. The draft lacks a lot
of information like participants list, authour's notes and a lot of
other formalities. Meanwhile, please bear with me.

Regards,
Gokul Das
Title: FSUG-TVM MEETING 3/April/2009

FSUG-TVM MEETING 3/April/2009

The meeting was completely dedicated to preparing syllabus for computer science subject for classes from 1 to 8 of two leading schools of the state. Christ Nagar School has approached us to develop a comprehensive curriculum for the subject. Amritha Vidyalaya has also expressed a keen interest in the venture. Our aim will of course be to deliver a course that comprehensively covers the all around development of computer awareness of students. In this regard, the following points were covered in today's meeting. They are as follows: Procedure for preparing syllabus The first idea proposed for preparing syllabus was by Prasad about classifying topics. The broad categories of topics identified were
  • Skill development exercises: This is meant for lower primary (1 to 4) classes aimed at improving basic skills required to operate a computer. This includes typing skills ad coordination of mouse. More details are explained in section for lower primary
  • Internet: How to use internet and its different services. This may also include skills for searching keywords effectively
  • Office suite: How to use different office productivity tools like word processors, database managers, spreadsheets, presentations etc
  • Programming: Thorough basics in programming. More details are included in section for programming. This may be for higher classes
  • Hardware: Elementary ideas about hardware - including i/o devices, processor, memory, cards, networks etc
  • Operating systems: Concepts about operating system. It should be as platform neutral as possible. More details in section about platforms and tools
  • Security: Concepts in computer security - including security against malwares, intrusion, data confidentiality, personal security on the web etc
  • Dos and Don'ts: Basic precautions to be taken, and best practices in operating computers - eg: how to switch on or off systems, ventilation, de-fragmentation etc
  • Theoretical concepts: Basic computing theory for higher classes. eg: Boolean algebra and basic circuits (if needed)
The first task will be to decide which topics are to be covered in each class and how much of it should be covered. For this, we can use the present curriculum of these schools, making transition as simple as possible. For this purpose, action has already been initiated to study the syllabus for various subjects in school. Also, our effort won't try to make sudden experimental changes to the present scheme. The next significant suggestion comes from Nikhil and Vimal. It basically deals with our inexperience in developing such a curriculum. They suggest that we take the help of accomplished syllabus developers and school teachers. The ideas are as follows:
  • Teachers meet/Brain storm: We should prepare a bare-bone syllabus and then arrange a brainstorming session with teachers. There we should be able to hear the teachers' suggestions and then raise any questions that we have. If one session is found to be inadequate, multiple follow-up session may be arranged till our concepts are finalized.
  • Syllabus experts: We should actively seek out help from accomplished syllabus drafters. One name that came up was V.K Sasidharan. He has agreed to help us. I request Vimal chettan to provide more details.
The third suggestion with respect to syllabus preparation is to take an 'evaluate and evolve' approach. Once the syllabus is developed and launched, we should evaluate classes to gauge the teachers' approach and students' response. This should allow us to identify any shortcomings of the syllabus and correct it for subsequent years. Handling lower primary classes (1 to 4) An important point that came up several times during the meeting was about the approach to be taken in handling lower classes. It is important here, not to do anything fancy with syllabus- which may end up destroying students' interest in the subject even before they start learning. In other words, we must try to avoid too much syllabus complexity for lower class students. The classes should be as informal as possible so that the students' interest in the subject can be slowly built up. However, from the part of syllabus drafters and teachers, there should be a definite aim at improving the computer skills of these students. Activities should be planned in such a way the students feel like they are having a fun activity and not studying. At the same time these activities should improve their skills. This is the first section described in 'syllabus categories'. Examples of such activities may include:
  • Typing exercises using TuxType or similar programs
  • Mouse coordination exercise using various games
  • Educational exercises using GCompriz suite etc.
On suggestion that came up from many- was to avoid formal text book based education for students. Instead, there must be a teaching-guide for teachers. However, this brings up a practical problem of setting examinations -which may be difficult without textbooks. This will be described in details in section for 'Tests and questionnaires'. Relation to other subjects One of our biggest challenges will be in making sure that our syllabus matches the complexity level of other subjects. Computer Science need knowledge from other fields of study -and our job will be to ensure that students get to study computer science concepts which are related to concepts in other subjects of the same grade. It is important to ensure that we don't put topics in our syllabus which are either too simple or too hard for the particular grade. This job is right now under progress with Prasad chettan agreeing to do the cross references in subjects. Programming Fundamentals No field of computer studies will be complete without the knowledge of programming. Our aim will be to start programming concepts in std 4 or 5 and slowly increase its complexity. However, this meeting found many flaws in traditional approaches of teaching programming, including:
  • Use of Java: Though a widely used language, it has severe limitations as a elementary study language. It has too many constructs which are too hard to understand for beginners. Students often end up using these construct without any idea what they mean.
  • Use of BASIC: Though a better learner's language, it is too outdated for any practical use today. It uses construct which are rarely used today- including GOTO and line numbering, and it lacks many features widely used today- like OOPs. Learning it may prove to be an effort wasting exercise for many.
  • Lack of focus: Most programming courses focus too much on language syntax rather than programming logic. Knowledge of syntaxes is not of much use without idea of concepts which are to be implemented. Also, language syntaxes vary widely from one language to another- while programming logic can be easily ported from one language to another.
  • No introduction to GUI programming: School level programming is often restricted to CLIs with students often lacking the idea that GUI applications are also programmed. Besides, GUI programmings is far less monotonous than CLI programming.
Therefore, this meeting came up with the following conclusions about the programming fundamentals syllabus:
  • Use of Python language: Python language is easy to learn and may help students concentrate more on logic than syntax. The number of mandatory constructs are far fewer in number compared to other languages, and unlike BASIC, it is still used widely. It also allows us to teach students about different programming methodologies like functional programming and OOPs using a single language. Additionally, as Nikhil sir and Shyam chettan points out, it teaches students indentation - something not even many professionals do today.
  • Our basic aim will be to give students, thorough basics in programming logic rather than how to write it in one language. Ideally, they should be able to implement their ideas in any language of their choice.
  • Visual programming and programming aids: To achieve the goal just described above, we should use visual programming tools for lower classes. That may include tools like Alice, Squeak and Scratch. Scratch received special attention at the meeting. I request Nikhil sir to provide more details.
  • GUI programming: Along with CLI, basics of GUI programming should be taught.
  • Boolean Logic: Elementary boolean logic should be taught to higher classes - since they are necessary for good programming
  • HTML and markup: Though this doesn't come under programming, elementary knowledge about markup languages- especially HTML may be helpful for students in the future. Today, markup is as important as programming
Tests and questionnaire Creation of a syllabus must not concentrate just on teaching- but should take into account assignment questions and examination patterns. This would require well prepared text books, teaching and examination guides etc. Each study portion should include : i) questionnaires, ii) assignments and iii) possible examination questions. However, this contradicts our earlier decision to avoid text books for lower classes. This creates a dilemma - which may be solved only at the opinion of the teachers. Nikhil sir suggests that we raise this question at the first teachers' meet. Text books The preparation of text book material has started and is progressing at its dedicated wiki. I request every member to take a look at it and suggest changes and if possible, contribute. We are already evaluating some textbooks under Creative Commons License (Share Alike, Non- Commercial). Some of them have excellent content, and we plan to use them if possible -modified or otherwise. One such book series chosen, belongs to Sri Sri Sri Ravi Sankar School. A request will be made to them to allows us to use their book under a different license- since non commercial publishing may be hard. Teaching aid and training Our syllabus may not work as we intend if the teachers don't grasp our concepts. For this, short term teachers' training programs may be necessary. In due course, we will also have to develop adequate teaching guides and teaching aids so that the syllabus can achieve the intended target. Platforms and Tools Since the schools requested us to develop a GNU/Linux based syllabus, our consensus is to use GNU/Linux as primary platform and tools associated with it. However, we believe that students should be proficient enough to use any tool or platform they face. So, we won't restrict ourselves to use of FOSS tools alone. We have to teach students some common proprietary tools which vary a lot from their FOSS counterparts. The following tools have been initially identified for our use:
  • OS: Edubuntu platform
  • GCompriz
  • Programming: Alice, Squeak, Scratch
We have to identify more (user friendly) tools for our use. I request all members to express their ideas Prasad Chettan suggests that GNU/Linux and Windows be taught intermittently, so that students won't face problems in using either of them. FOSS & proprietary philosophies Though our group is more biased towards FOSS ideology, that idea cannot be directly introduced to students. The consensus that was reached, was to use FOSS tools primarily without introducing the ideology at lower classes. Towards the higher classes, the two viewpoints can be introduced to students with merits and demerits of each. If our work progresses as well as we hope, at the end, students should have developed a liking for free software- without being fanatically opposed to proprietary tools or becoming completely unable to use them.

Attachment: signature.asc
Description: This is a digitally signed message part

Reply via email to