We need to focus on these 3 areas:

  1. open-source ecosystem that exist in the current world.
  2. To get qualitative and quantitative contributions from the student to the FOSS ecosystem and projects by his creative and innovative ideas
  3. To strengthen the technical capabilities of the student

FOSS is not only a technical solution for a problem of society, It is a way of collaborative way of approaching and solving problems . A path for innovative ideas in technology and society by working together and sharing knowledge.

Some of the topics to be covered:

  1. A brief introduction to Free and Opensource software philosophy and history so far. Practical aspects of FOSS: making money and running busines
  2. The community based FOSS development process: The book 'Producing OSS'(http://producingoss.com/) can be a good reference for this. Students should be introduced to the foss ecosystem, such as
    1. Developer communities
    2. Mailing lists
    3. IRC
    4. Wiki
    5. Version control
    6. Bug tracking
    7. Non technical issue resolution
    8. Getting people to work in a project
    9. 'Assigning' work or getting the work done
    10. Legal aspects- various licenses and compatibilities and compliance

All these above areas should be introduced with the help of case studies and students should work with communities to get to know the "Producing of OSS"

Student should know the technical aspects of the above items too. For eg: installing a version control system and its use, Managing a wiki, Running a mailing list, Hands own experience with a bug tracking system

A practical evaluation based on the involvement in a foss project will be good

  1. Technical capability strengthening
    1. System administration
    2. network administration
    3. Website maintenance & design
    4. Database management
    5. Shell scripting+ intro to programming languages like python, C/C++
  2. Exposure to the FOSS usage in society
    1. e-governance, library management, public websites, disaster management
    2. language computing, l10n, i18n

At the end of the course, the following should be the expectations

  1. student know the foss ecosystem and its philosophical and technical aspects
  2. Student is capable for leading a foss project or working with a foss project
  3. Student know the foss development workflow
  4. Student is capable of designing +implementing + deploying +maintaining a FOSS based solution for the society for solving a problem