Slide 1

Slide 1 text

1 Let’s start contributing to open-source! Code Mania 110

Slide 2

Slide 2 text

Slide № 5 dtinth Thai Pangsakulyanont (Thai) bemusic / bemuse dtinth / promptpay-qr … taskworld / prescript

Slide 3

Slide 3 text

Slide № 7 dtinth Thai Pangsakulyanont (Thai) AimeTPGM Pankamol Srikaew (Aime) phoomparin Phoomparin Mano (Phoom) chonlatee Chonlatee Jumratsee (Neng)

Slide 4

Slide 4 text

Slide № 8 My open source story

Slide 5

Slide 5 text

Slide № 9 2006

Slide 6

Slide 6 text

Slide № 13 2006

Slide 7

Slide 7 text

Slide № 14 Nowadays, many JavaScript libraries, frameworks, plugins, … Back then…

Slide 8

Slide 8 text

Slide № 16

Slide 9

Slide 9 text

Slide № 17

Slide 10

Slide 10 text

Slide № 18

Slide 11

Slide 11 text

Slide № 19 Date picker?

Slide 12

Slide 12 text

Slide № 21

Slide 13

Slide 13 text

Slide № 22

Slide 14

Slide 14 text

Slide № 23 Create my own

Slide 15

Slide 15 text

Slide № 24

Slide 16

Slide 16 text

Slide № 25 offsetTop offsetLeft offsetHeight

Slide 17

Slide 17 text

Slide № 26

Slide 18

Slide 18 text

Slide № 27

Slide 19

Slide 19 text

Slide № 28

Slide 20

Slide 20 text

Slide № 29 Open source is a way to give back to the community

Slide 21

Slide 21 text

Slide № 30 Open source motivated me to code more

Slide 22

Slide 22 text

Slide № 31 Work with existing open-source software

Slide 23

Slide 23 text

Slide № 32 Image: http://nevikup.blogspot.com/2011/07/smf.html

Slide 24

Slide 24 text

Slide № 34 Simple Machine Forums Heavily modded

Slide 25

Slide 25 text

Slide № 35 Lots of friends and programming experience!

Slide 26

Slide 26 text

Slide № 36 Reading and understanding code

Slide 27

Slide 27 text

Slide № 37 Reading and understanding code Debugging skills

Slide 28

Slide 28 text

Slide № 38 Reading and understanding code Debugging skills Organizing large codebase

Slide 29

Slide 29 text

Slide № 39 Reading and understanding code Debugging skills Organizing large codebase Maintainability

Slide 30

Slide 30 text

Slide № 40 Reading and understanding code Debugging skills Organizing large codebase Maintainability Security best practices

Slide 31

Slide 31 text

Slide № 41 Using and modifying open source software taught me the skills that tutorials could never teach

Slide 32

Slide 32 text

Slide № 42 Programming is more fun!

Slide 33

Slide 33 text

Slide № 43 dtinth / tabe25m

Slide 34

Slide 34 text

Slide № 44 dtinth / atom-aesthetic-ui

Slide 35

Slide 35 text

Slide № 45 But it doesn’t always have to be code!

Slide 36

Slide 36 text

Slide № 46 2014 JavaScript for Automation

Slide 37

Slide 37 text

Slide № 47

Slide 38

Slide 38 text

Slide № 48 JXA-Cookbook / JXA-Cookbook

Slide 39

Slide 39 text

Slide № 49 You don’t need to be an expert

Slide 40

Slide 40 text

Slide № 50 GitHub profile is a high-quality portfolio

Slide 41

Slide 41 text

Slide № 51 Contributing to open source is easier than ever

Slide 42

Slide 42 text

Slide № 52

Slide 43

Slide 43 text

Slide № 53 How to get started?

Slide 44

Slide 44 text

Slide № 54 AimeTPGM Pankamol Srikaew (Aime)

Slide 45

Slide 45 text

First Contribution Contribution 101: Newbie Edition

Slide 46

Slide 46 text

1BOLBNPM4SJLBFX 9 9 ., 9 ., 9C D 9 9 : 9 9 C

Slide 47

Slide 47 text

No content

Slide 48

Slide 48 text

: 9 HC : F F A HC : F F

Slide 49

Slide 49 text

/: GF A 0 CG 9 D C C / D I A A 9 D 0/ I 0

Slide 50

Slide 50 text

No content

Slide 51

Slide 51 text

Contribution Cheatsheet A: , @D C D

Slide 52

Slide 52 text

Contribution Cheatsheet DA A A: A 9C AG

Slide 53

Slide 53 text

Contribution Cheatsheet $cd ~/your/path/to/folder $git clone https://github.com/this-is-you/a-repository.git G DA 9C D C A 9C AG

Slide 54

Slide 54 text

Contribution Cheatsheet $git checkout -b $git add . $git commit -m “a short comment to commit” $git push origin $git checkout master $git merge $git branch -d $git status $git commit -m “a short comment to commit” $git push origin master G DA DC A A C F A D latest Make Pull Request (master + new feature) merge new feature to master latest master refactor new feature create a branch add all untracked files commit changes push changes change branch to master merge branch to master delete a branch check current status commit changes (if any) push to master

Slide 55

Slide 55 text

Contribution Cheatsheet G DA DC A A C F A D $git checkout -b session-review $git add . $git commit -m “add review for sessions” $git push origin session-review $git checkout master $git merge session-review $git branch -d session-review $git status $git commit -m “update sessions’ reviews” $git push origin master latest master session-review merge session-review to master Make Pull Request Example

Slide 56

Slide 56 text

Contribution Cheatsheet G DA 9C D A : ,D @D C

Slide 57

Slide 57 text

Contribution Cheatsheet G DA 9C D A : ,D @D C

Slide 58

Slide 58 text

github.com/Roshanjossey/first-contributions/ blob/master/translations/README.th.md

Slide 59

Slide 59 text

github.com/Roshanjossey/first-contributions/ blob/master/translations/README.th.md

Slide 60

Slide 60 text

github.com/Roshanjossey/first-contributions/ blob/master/translations/README.th.md

Slide 61

Slide 61 text

github.com/Roshanjossey/first-contributions/ blob/master/translations/README.th.md

Slide 62

Slide 62 text

No content

Slide 63

Slide 63 text

– Aime (copied and modified the quote from Thor Ragnarok) I DA 9 C 9CH

Slide 64

Slide 64 text

Slide № 74 Workshop

Slide 65

Slide 65 text

Slide № 75 Repo: ThaiProgrammer / code-mania-110