programming is fun + an intro to free software

32
1 15/07/11 MES College Of Engineering, Kuttippuram Welcome!

Upload: ershad-kunnakkadan

Post on 18-May-2015

729 views

Category:

Education


1 download

DESCRIPTION

This presentation was presented at MES College of Engineering on July 15 2011. The presentation was started with an SMS trigger from audience to add more fun :)

TRANSCRIPT

Page 1: Programming is fun + An intro to free software

1

15/07/11 MES College Of Engineering, Kuttippuram

Welcome!

Page 2: Programming is fun + An intro to free software

15/07/11 MES College Of Engineering, Kuttippuram2

A question!

What's the block diagram of a computer?!

Page 3: Programming is fun + An intro to free software

15/07/11 MES College Of Engineering, Kuttippuram3

Input Process Output

?

Page 4: Programming is fun + An intro to free software

15/07/11 MES College Of Engineering, Kuttippuram4

No!

Page 5: Programming is fun + An intro to free software

15/07/11 MES College Of Engineering, Kuttippuram5

Input Fun! Output

Yes, It's fun to code! Let's see how!

!

It is..

Page 6: Programming is fun + An intro to free software

15/07/11 MES College Of Engineering, Kuttippuram6

What do we need?

Page 7: Programming is fun + An intro to free software

15/07/11 MES College Of Engineering, Kuttippuram7

What do we need?

✔ An email ID – Everyone has one!

What do we need?

Page 8: Programming is fun + An intro to free software

15/07/11 MES College Of Engineering, Kuttippuram8

What do we need?

✔ An email ID – Everyone has one!✔ Your favorite programming language!

What do we need?

Page 9: Programming is fun + An intro to free software

15/07/11 MES College Of Engineering, Kuttippuram9

✔ An email ID – Everyone has one!✔ Your favorite programming language!✔ A Text editor or a good IDE

What do we need?

Page 10: Programming is fun + An intro to free software

15/07/11 MES College Of Engineering, Kuttippuram10

✔ An email ID – Everyone has one!✔ Your favorite programming language!✔ A Text editor or a good IDE✔ Understanding about a Version Control

System

What do we need?

Page 11: Programming is fun + An intro to free software

15/07/11 MES College Of Engineering, Kuttippuram11

✔ An email ID – Everyone has one!✔ Your favorite programming language!✔ A Text editor or a good IDE✔ Understanding about a Version Control

System✔ A scripting language – To get things done

quickly

What do we need?

Page 12: Programming is fun + An intro to free software

15/07/11 MES College Of Engineering, Kuttippuram12

✔ An email ID – Everyone has one!✔ Your favorite programming language!✔ A Text editor or a good IDE✔ Understanding about a Version Control

System✔ A scripting language – To get things done

quickly✔ A ready mind!

What do we need?

Page 13: Programming is fun + An intro to free software

15/07/11 MES College Of Engineering, Kuttippuram13

Because,– Smart developers prefer email to IM– They are busy, as you are– More easy to manage / save and index

Why email and not IM?

For easiness, use an email client, like– Thunderbird - Easy to use and manage– Mutt - If you love terminal. More powerful!

Why email and not IM?

Page 14: Programming is fun + An intro to free software

15/07/11 MES College Of Engineering, Kuttippuram14

Believe me, Language doesn't matter!

Best Programming Language

Best Programming Language

Page 15: Programming is fun + An intro to free software

15/07/11 MES College Of Engineering, Kuttippuram15

Big No!

Should I wait to learn completely?

Page 16: Programming is fun + An intro to free software

15/07/11 MES College Of Engineering, Kuttippuram16

Why email and not IM?

Languages for quick start

– Easy to learn– Rapid development– Beautiful code– Documentations:

• http://docs.python.org/tutorial/• http://diveintopython.org• http://learnpythonthehardway.org

Python

Page 17: Programming is fun + An intro to free software

15/07/11 MES College Of Engineering, Kuttippuram17

Why email and not IM?

Some projects written in python

– Deluge, A BitTorrent client– Yum, Fedora's package manager– SMC's Language processing tools– Bazaar, Version Control System– Django, Web framework– PiTiVi, A video editor– Ubuntu Software centre– Gwibber– Google, Youtube and other big companies use

python– Goolge App Engine

Page 18: Programming is fun + An intro to free software

15/07/11 MES College Of Engineering, Kuttippuram18

Why email and not IM?

Languages for quick start

– We've already started learning languages– Powerful and fast– Lots of projects to get involved– Documentations:

• Think in C++: http://is.gd/P2tZOn• C Programming Language : K & R

C / C++

Page 19: Programming is fun + An intro to free software

15/07/11 MES College Of Engineering, Kuttippuram19

Why email and not IM?

Some projects written in C/C++

– Linux Kernel– Git, Version Control System– Gimp– Mysql– Apache and many other server software– GNOME– KDE– Webkit, Layout engine to render web pages– Blender, 3D Animation software

Page 20: Programming is fun + An intro to free software

15/07/11 MES College Of Engineering, Kuttippuram20

✔ Revision control✔ Easy collaboration ✔ Most of the open source projects use a certain

version control system, such as git, svn, bzr or cvs

✔ Github – Social coding

Why Version Control Systems?

Page 21: Programming is fun + An intro to free software

15/07/11 MES College Of Engineering, Kuttippuram21

Use Modify Upload/Share

How to get involved?

Peer review

Page 22: Programming is fun + An intro to free software

15/07/11 MES College Of Engineering, Kuttippuram22

Why Free Software?

– Student friendly– More opportunities– Good community, Good people– Motivation from like minded people– Mutual learning– Interesting projects– And of course, lots of fun :)

Page 23: Programming is fun + An intro to free software

15/07/11 MES College Of Engineering, Kuttippuram23

Lots of projects!

Page 24: Programming is fun + An intro to free software

15/07/11 MES College Of Engineering, Kuttippuram24

http://smc.org.in

http://silpa.org.in

SMC and Silpa

Page 25: Programming is fun + An intro to free software

15/07/11 MES College Of Engineering, Kuttippuram25

Hands on!

✔ diff and patch ✔ cscope✔ Downloading source (Geany)✔ Configuring ✔ Installing deps✔ Compiling✔ Installing✔ Modiying✔ Recompiling

Page 26: Programming is fun + An intro to free software

15/07/11 MES College Of Engineering, Kuttippuram26

What we should do

Get involved!

Page 27: Programming is fun + An intro to free software

15/07/11 MES College Of Engineering, Kuttippuram27

What we should do

Get involved!Have a blog towrite what you

feel

Page 28: Programming is fun + An intro to free software

15/07/11 MES College Of Engineering, Kuttippuram28

What we should do

Get involved!Have a blog towrite what you

feelRead good books

Page 29: Programming is fun + An intro to free software

15/07/11 MES College Of Engineering, Kuttippuram29

What we should do

Get involved!Have a blog towrite what you

feelRead good books

Share!

Page 30: Programming is fun + An intro to free software

15/07/11 MES College Of Engineering, Kuttippuram30

What we should do

Get involved!Have a blog towrite what you

feelRead good books

Share!Let's build it together,For fun and to learn!

Page 31: Programming is fun + An intro to free software

15/07/11 MES College Of Engineering, Kuttippuram31

?

Questions

Page 32: Programming is fun + An intro to free software

15/07/11 MES College Of Engineering, Kuttippuram32

Thank you!

Ershad K | [email protected] | ershadk.wordpress.com | github.com/ershad