Open Source @samvermette

Open Source
Why you should do it and how to release it.
@samvermette
github.com/samvermette
@samvermette
Scratch your own itch
@samvermette
The Cons
@samvermette
Public Ridicule
http://harthur.wordpress.com/2013/01/24/771/
@samvermette
Public Ridicule
https://twitter.com/elliottkember/status/294357889487876096
@samvermette
Support (time)
@samvermette
Support (more time)
@samvermette
The Pros
@samvermette
@samvermette
Reason #1
Learn to write better code.
@samvermette
Reason #2
Stay in touch with new technologies.
@samvermette
Reason #3
Ease (programmers’) lives.
@samvermette
Reason #4
Social Recognition
@samvermette
Cons
Pros
Public Ridicule
Write better code
Support
Learn new technologies
Ease other people’s lives
Social Recognition
@samvermette
Carte-blanche on solving a (programming)
problem through design.
@samvermette
Case 1
Not happy with what’s out there
@samvermette
https://github.com/AFNetworking/AFNetworking
@samvermette
https://github.com/AFNetworking/AFNetworking
@samvermette
https://github.com/RestKit/RestKit/blob/663a7d47cae628988b55d5ddcdb4571536496aa3/README.md
@samvermette
https://github.com/samvermette/SVHTTPRequest
@samvermette
@samvermette
https://github.com/jdg/MBProgressHUD/blob/8c07d2b061b6874390eb315631331fa0709b1636/Demo/Classes/HudDemoViewController.m
@samvermette
[SVProgressHUD show]
@samvermette
[tableView addPullToRefreshWithActionHandler:^{
// prepend data to dataSource, insert cells at top of table view
[tableView.pullToRefreshView stopAnimating];
}];
@samvermette
Case 2
Private stock UI component
@samvermette
@samvermette
for @jpmartineau, with love
https://github.com/samvermette/SVStatusHUD
@samvermette
https://github.com/samvermette/SVPulsingAnnotationView
@samvermette
https://github.com/nfarina/calloutview
@samvermette
Packaging your component
@samvermette
Pick a good name! (with a prefix)
@samvermette
SVProgressHUD
SVPullToRefresh
SVSegmentedControl
SVWebViewController
SVPulsingAnnotationView
SVHTTPRequest
SVGeocoder
SVStatusHUD
@samvermette
Class.h
@samvermette
README.md
@samvermette
https://github.com/gdawg/uiimage-dsp
@samvermette
https://github.com/enormego/EGOTableViewPullRefresh
@samvermette
Overview
Is this what I’m looking for? (code and/or screenshots)
Installation
How do I install this component? Does it have many dependencies?
Usage
How much code will I have to write to use this class?
(Customization)
How flexible is this class?
(Under the Hood)
Is this class built on something solid?
@samvermette
Demo.xcodeproj
@samvermette
LICENSE.txt
http://www.codinghorror.com/blog/2007/04/pick-a-license-any-license.html
@samvermette
And beyond...
@samvermette
Open Source is a Boot Camp
•
Code Design
•
Product Design
•
Introspection
•
Attention to details
@samvermette
github.com/samvermette
@samvermette