Sie sind auf Seite 1von 3

Linuxication 2012 - Workshop Syllabus

Day1: Event: Basics of Linux


08:30 AM - 10:00 AM preparation for the event. 10:00 AM A pep talk by Anirudh Tomer (MIT Alumnus & currently working at TIBCO Software, Pune) to motivate the students & attract them towards Linux. 1.1 What is linux and why is it different ? 1.2 Is it really virus free and secure than windows ? 1.3 do they use it in companies ? 1.4 can everything that we do on windows be done on linux as well. 1.5 career opportunities as a Linux developer. 10:45 AM 2. How Linux looks: 2.1 Separate the students in two class rooms. 2.2 Introduce them with the GUI of Linux & workspaces. 2.3 Tell them about the day's schedule.

From here onwards 2 guys will be there on the stage explaining the fundas and 9 volunteers in the room for helping out the students. 11:00 3. Installation on laptops: 1.5hrs + CD distribution on the spot. 3.1 Divide the students into groups. ***FIRST CHECK THE AVAILABLE PARTITIONS USING WINDOWS ONLY*** 3.2 Help them in Installing linux on their machines. Tell them about different distros available. 3.3 If they don't have a free partition partition then create it on the spot using Windows Disk Management or Gparted. 3.4 While installing, explain to them issues like what is primary partition, extended partition, mount point, swap space, boot loader (grub,lilo etc.) give just an overview depending upon how much interested they are. Installing Linux on Virtual Machine is the last option. 3.5 Introduce them with the concept of root user. 3.6 How to safely uninstall Linux. 12:30/12:45 Lunch: As soon as the installation gets over for a group/participant free them/him/her for lunch. 1:30 4. Introduction to working of Linux.

4.1 Applications: office, torrent(transmission), browsers, vlc & totem, wine, ubuntu software center, synaptic package manager, update-manager. Show them games like Sudoku,Minesweeper and chess. Using pen drives, CD's and accessing windows partitions . 4.2 Networking & File system: Bluetooth, Wireless and DSL connections, ad hoc connections, connecting mobile with PC to use net via GPRS. Explain the file hierarchy of linux keeping it simple yet interesting. 4.3 Customization: Everything in System->Preferences and System>adminstration sections. Also how to change theme, setting screen savers. 4.4 Introduction with Linux File System: I mean the purpose of /tmp /home etc. How is it different from windows file system. 4.5 Introduction to Terminal: cat, ls, mkdir,vi,gedit,df,du,man,grep,watch,ps (atleast these many),root user concept, locate command to locate files (don't tell them abt find command) make sure you do sudo updatedb before that to update the database that locate use, installing utilities via terminal (aptitude's apt-get), terminal configuration. At last Cowsay and fortune. Show them the 6 tty terminals and 7th X Window (that's what we use). 4.6 How to use manual pages for everything in linux and forums where they can get help. Also tell them about the site for ubuntu's official documentation. Before ending show them a virus file and how windows ( in virtual box ) and host linux treat it. (Praise for Linux ;)) 3:00 5. Quiz and prizes 30 mins some questions we discussed are as follows. 1> print a particular file who path is not known. ans: cat $(locate filename) 2> create your own set of randomly moving images for the background. ans: lies the folder /usr/share/backgrounds/ 3> find the editors present in ur machine. ans: man -k editor Please think of more questions which are better than the above ones. 3:45 6. Tomorrow's plan.

Day2: Open source development workshop under Linux


8:30 - 10:00 preparation for the event. 10:00 AM 1. Inauguration: Toshish Jawale (MIT Alumnus & currently working at Amdocs India, Pune) 30 mins 1.1 why linux programming is different and interesting 1.2 significance of gcc,gdb, eclipse,emacs editor,lamp 1.3 how can u contribute to open source 10:45 AM 2. introduction to gcc, g++,manual pages for programming,linking libraries. 1 hr 2.1 hello world in C. using options like -o,-g etc with gcc. explain why "gcc ./a.out" and not "gcc a.out". 2.2 hello world in C++ with the concept of namespaces explained properly. 2.3 using manual pages for searching what u need for programming. How manual is divided into sections. Installing posix manual and how to download libraries.

2.4 Static and dynamic libraries...linking static libraries using -l option 2.5 How to Include header files using -I option 2.6 Significance of time, pmap and objdump commands in short. 11:45 AM 3. SEGFAULT and debugging 1hr 3.1 Write a small code to show them why SEGFAULT comes. 3.2 show the process area of a running code. 3.3 Using GNU debugger for debugging programs in detail

12:45 Lunch 1:30 4. Introduction to installing utilities using TAR files 15 mins 4.1 why do u need TAR files 4.2 where can u get them 4.3 how to extract them and install utilities. 5. Introduction to Bash Scripting. 15mins 5.1 need for scripts (equivalent of batch files) 5.2 Practical example of a bash script (demo) 6. Concept of make files and creating a simple make file for a small mini project. 30 mins 6.1 what are make files. 6.2 how to create you own make file.

1:45

2:00

2:30

7. changing the source code of open source software and introduction to source change 7.1 demo of changing the source code of an open source software(galculator). A very simple change like changing the name of a menu item. THE ROLE GOOGLE SEARCH PLAYS IN Development. Some famous forums for programming problems like stackoverflow or linuxquestions etc. 3:00 8. Quiz 45 mins 1> Give them a simple code having segfault and asking them to debug it. 2> Difference between Makefile & Script. 3> A simple TAR file installation