◀ ▶

Open Source Your Code For Fame and Fortune A TweenDeck Presentation by John Polacek

--> Get the code on Github <-- Follow @johnpolacek Press → to go forward, and ← to go back Or scroll down ▾

If you don’t already have

a GitHub account, get one. And start posting stuff.

Why? Sharpen Your Skills The world is watching Gain Confidence “Do I have the coding chops?” Opportunities Good Job → Great Job → Best Job

(and get to go to conferences) But mainly…

Will people say I suck? Yes.

Learning in the Open Can be intimidating, but… Makes you write better code Makes you learn faster

Take me for example… Started as an illustrator

(no coding experience) Then a Flash dev

(then Flash refugee) And then I started

doing open source

Scrollorama

My 1st big hit

(also one of my first plugins) Responsivator, stacktable.js

& BigVideo.js

(Spawned from my work projects) etc.

SuperScrollorama, Scrolldeck, Tweendeck, What The Heck Is Responsive Web Design?, ControlDeck.js, Extra Strength Responsive Grids, Match The Letter, Passwords for the Manly Man, Channel of Awesome…

I don’t consider myself Hot Snot But I am also not Cold Booger I am just like you guys, and...

The secrets to open source coding success Learn in public Have a thick skin Keep it fun

From GitHub Zero To Hero

Starting From Zero Find a project to contribute to (can be intimidating/disappointing) Start your own project (My reco) Keep It Simple Break big ideas into chunks Pluginize! Break off pieces of code from other projects Thou Shalt SHIP! Don’t try to be perfect. You will never be perfect. Don’t overthink it. SHIP!

An Example How about this very presentation right here? Open sourced live during Techweek Chicago.

How To Publish Your GitHub Project First, make your awesome project. Then, from inside your project directory: git init Initialized empty Git repository in /open-source-for-fame-and-fortune git add . git commit -m 'initial commit' [master (root-commit) 3df470a] initial commit [master (root-commit) 492b680] initial commit 57 files changed, 7481 insertions(+) create mode 100644 .gitignore create mode 100644 README.md Now, go to GitHub and make a new repository for your project Once your project has been created, copy the GitHub repository url. Then push. git remote add origin 'git@github.com:johnpolacek/open-source-for-fame-and-fortune.git' git push origin master Counting objects: 72, done. Delta compression using up to 4 threads. Compressing objects: 100% (66/66), done. Writing objects: 100% (72/72), 2.36 MiB, done. Total 72 (delta 7), reused 0 (delta 0) To git@github.com:johnpolacek/open-source-for-fame-and-fortune.git * [new branch] master -> master Last, make a project page using GitHub pages git checkout -b gh-pages Switched to a new branch 'gh-pages' git push origin gh-pages Counting objects: 72, done... Keep your project page and master branch in sync as you commit changes. The easy way: git add . git commit -m 'some awesome changes' git push origin master git checkout gh-pages git rebase master git push origin gh-pages

Project Page Tips Keep your master and

gh-pages branch identical

(easier that way) Make your project page interesting

(beautiful design, fun demos) Have documentation

(at least an easy example, along with well-commented code)

Open Source

Opens Doors Exposure Opportunities Meeting Great People More Exciting Projects

Action Items Join Github Publish a Project Talk about it! Extra Credit: Write a tutorial. Do a talk. Make a Codepen.

Show your stuff. See what happens.