$30 off During Our Annual Pro Sale. View details »

Sharing Code With Open Source

Sharing Code With Open Source

Presented on July 10th 2017 at Civic Hall


July 10, 2017

More Decks by Dasmer

Other Decks in Technology



  2. My Background - Before Venmo Graduated from Columbia Engineering Started

    at JP Morgan Left JP Morgan Learned iOS Development + Released 6 apps in the App Store Started as an iOS Engineer at Venmo May 2013 June 2013 August 2013 February 2014
  3. My Background - At Venmo iOS Engineer February 2014 July

    2016 Product Manager January 2016 Strategy Associate Completed the Flatiron School iOS Bootcamp December 2013
  4. My Background - At Venmo

  5. My Background - After Venmo Full-time Student at the Stanford

    Graduate School of Business September 2017 ??? Start a Company / Join an Early Stage Startup
  6. Agenda • What is Open Source? • Venmo’s Open Source

    Projects • How to leverage Venmo in your apps
  7. What is Open Source?

  8. Open Source Definition: denoting software for which the original source

    code is made freely available and may be redistributed and modified
  9. • Most popular open source projects are hosted on Github.com

    • Enables programmers to ◦ Star ◦ Fork ◦ Pull Request • Engineers can track, collaborate on, and see each other’s coding activity
  10. Trending iOS Open Source Projects https://github.com/trending/swift

  11. • It’s free • You don’t have to reinvent the

    wheel • Minimizes room for error • Engineers learn from other people’s code Why use other Open Source projects?
  12. • Incentivizes engineers to write better quality code • Leads

    to better engineering hires Why Contribute to Open Source?
  13. Open Source Code tends to be easier to read •

    Clean • Well Documented Quality Code
  14. Open Source Code tends to be modular • Separation of

    Concerns • Independent • Contained Spaghetti vs Modular Code Quality Code
  15. Open Source Code tends to be more optimized for performance

    Quality Code
  16. Open Source Code tends to be unit tested Quality Code

  17. • Find engineers that are passionate about the work you

    do • Assess skill level by observing their contribution and collaboration styles Better Engineering Hires
  18. Venmo’s Open Source Projects

  19. Questions Venmo asks before open sourcing a project 1. Is

    it general enough for other companies or apps to use? 2. Is its business logic not proprietary (i.e. risk + fraud rules)? 3. Do our team have the time and bandwidth to open source this now? If all of the above are “yes”, we’ll open source it.
  20. Touch ID & Passcode • Secures any app • Used

    in the Venmo App • Adopted by ◦ Tumblr ◦ ZocDoc ◦ Many others • Has more than 45,000+ total downloads github.com/venmo/VENTouchLock
  21. Calculator Keyboard • Add a calculator keyboard to your app

    • Used in Venmo • Has more than 7,000+ total downloads github.com/venmo/VENCalculatorInputView
  22. Look familiar? app

  23. Token Field • Add a multiple recipient field to your

    app • Used in Venmo • Has more than 8,500+ total downloads github.com/venmo/VENTokenField
  24. Other Notable Venmo Open Source Repositories Name URL: http://github.com Watcher,

    Star, and Fork Counts /synx /slather /static DVR /dvr
  25. Open Source Projects the Venmo iPhone App Uses 1. FacebookSDK

    2. FastImageCache 3. FLAnimatedImage 4. GZIP 5. NYTPhotoViewer 6. OnePassword-AppExtension 7. SAMKeychain
  26. How to leverage Venmo in your own apps

  27. 1. Use our open source projects To see them all,

    go to github.com/venmo
  28. Imagine you want to: Charge “Dasmer” $10 with note “delicious

    ” in a public payment. Go to URL: https://venmo.com/dasmer?txn=charge&amount=10.00 &note=delicious%20 &audience=public 2. Use Payment Links iOS or Android user will be redirected to Venmo app with screen:
  29. 3. Sign up for Venmo Purchases 1. Accept Venmo purchases

    in your own apps 2. Let friends split and share their purchases on the Venmo feed 3. Enable your customers to use their Venmo balance to pay for your goods and services
  30. 3. Sign up for Venmo Purchases Demo

  31. 3. Sign up for Venmo Purchases Existing Partners For more

    information, check out venmo.com/business
  32. Summary • What is Open Source? • Venmo’s Open Source

    Projects • How to leverage Venmo in your apps
  33. Open-Ended Group Discussion Follow me on Twitter @dasmersingh