let's contribute

Post on 08-Sep-2014

217 Views

Category:

Software

3 Downloads

Preview:

Click to see full reader

DESCRIPTION

Contribute to Opensource - A tutorial on what to do and how to do for beginners.

TRANSCRIPT

Let's ContributeANOOP THOMAS MATHEW

@atmb4uCTO @ Profoundis Labs

(one day workshop)

FOSSMeet 2014NIT, Calicut

➢Who Am I

➢Quick Hands Up!➢ project contributors ?➢ git users ?➢ coders – python/C/C++/javascript/java ?

Welcome!

Contributing to Communitywe need to be producers; not just consumers!

Group of 5

Contribution Options

Documentation

Contribution Options

Bug Reports

Contribution Options

Review

Contribution Options

Feature Requests

Contribution Options

Feature Requests

Contribution Options

Development

Contribution Options

Project Design

Contribution Options

Release Management

Contribution Options

Maintaining

Contribution Options

Testing

Contribution Options

Tutorials and Code Samples

Contribution Options

Translations

philosophical methodologies of open source

We are gonna play a

GAME !

philosophical methodologies of open source no more boring!

We are gonna play a

GAME !

we'll create a calculator

Rules

●Name your Team

Rules

●Create personal github account.

Rules

●Choose your comfortable language

Rules

●Learn git

Rules

●Document everything you write

Rules

●write Tests for everything you write

Rules

●Each one of you should be involved

Rules

●Commit each change

Rules

●push to the repo allocated to you

Rules

●It must be extensibleelse might have to redo it!

Rules

●one task will be given every 15 mins

Learn some git

try.github.io

Quick Referencegit initgit statusgit add <filename>git commit -m “Message”git remote add origin <url>git remote -vgit push origin mastergit pull origin mastergit mergegit rm <filename>

SimpleCalculatorAddSubtractDivideMultiply

Task #1

SimpleCalculatorAddSubtractDivideMultiply

Review #1

Documented?Test cases added?Committed?Pushed?Who is idle in team?

➢log➢pow(x,y)➢mod

Task #2

●Coding Style – GNU C/ Python PEP8●Testing Frameworks●Tickets/Issues/Bugs

INTERMISSION

➢sin➢cos➢undo feature

Task #3

➢tan➢add History to the calcuator

Task #4

Conversion➢hex➢binary➢decimal

Task #5

Polynomial Solver

x2+x+1 = 0

Task #6

➢Polynomial Solver➢ any second degree polynomial

➢Expression Evaluator➢Paranthesis

Task #7

➢Polynomial Solver

➢Any nth degree polynomial

Task #8

Good News EveryOne! Let's review some code

AskMeAnything

Break

Development Process

➢ pick any open source project

➢ pick one which you use or want to use➢ any of it you find interesting

Development Process

➢ clone code

➢ find location from the website➢ use git or other version control system

Development Process

➢ install it from source code

Development Process

➢ get it running; use it

➢ Might need some external libraries.➢ Look at README, INSTALL

or Installation Guide

Development Process

➢ translate project to mother tonguetransifex.com

Development Process

➢ read documentation

Development Process

➢ write documentation

Development Process

➢ write tests

Development Process

➢ browse bug tracker/issues/tickets

Development Process

➢ subscribe to mailing list; chat over IRC

Development Process

➢ discuss with the community

Development Process

➢ find priorities for the community; talk.

Development Process

➢ find tickets to work on

tickets tagged: 'low hanging fruit', 'easy pickings'

Development Process

Let's make the world a better place!

https://leanpub.com/opensourcebook/

A Code Explorer's Guide to Open Source Jungle

reach me at

999 53 44 675@atmb4u

atm@profoundis.com

This is the end.

or is this the begining?

Your Choice !Ideas

● talk to people – group on every week● use time more effectively● find opportunities to contribute● let other's see your code

Thank You

@atmb4u

Feedback @ bit.do/quickfeedback

top related