Design Your Own Open Source Project (PyCon Philippines)

Design Your Own Open Source Project (PyCon Philippines)

My (first) closing keynote for the inaugural PyCon Philippines held at the University of the Philippines in Diliman on June 30th, 2012.

Getting into open source can be intimidating. It's not something that you can just wake up in the morning and start doing if you've never done it before. From a high level, let's "design" our first open source project, complete with quick methodologies, tips, tricks and some extra bits specifically for those in attendance.

A60068bce2e73de3a37ca9d2dbe36092?s=128

Bryan Veloso

June 30, 2012
Tweet

Transcript

  1. design your own Open source Project A Closing Keynote for

    the Inaugural PyCon Philippines • June 30, 2012 Presented by Bryan Veloso.
  2. @bryanveloso for the benefit of those who like to sit

    in the back row, i’ve refrained from putting anything important here. (lol, military time.) it’s 17:15.
  3. @bryanveloso for the benefit of those who like to sit

    in the back row, i’ve refrained from putting anything important here. current status: sitting
  4. @bryanveloso current status: sitting http://flickr.com/photos/peterjlambert/97671748/

  5. @bryanveloso for the benefit of those who like to sit

    in the back row, i’ve refrained from putting anything important here. desired status: beer
  6. @bryanveloso desired status: beer http://flickr.com/photos/thebbp/3777373967/

  7. @bryanveloso desired status: beer http://flickr.com/photos/jdlmdry/6789345226/

  8. @bryanveloso for the benefit of those who like to sit

    in the back row, i’ve refrained from putting anything important here. desired status: cola? there are students in the house!
  9. @bryanveloso for the benefit of those who like to sit

    in the back row, i’ve refrained from putting anything important here. design let’s begin, shall we?
  10. @bryanveloso for the benefit of those who like to sit

    in the back row, i’ve refrained from putting anything important here.
  11. @bryanveloso for the benefit of those who like to sit

    in the back row, i’ve refrained from putting anything important here. so, why bother?
  12. @bryanveloso for the benefit of those who like to sit

    in the back row, i’ve refrained from putting anything important here. because  ryan  gosling loves  open  source...
  13. @bryanveloso for the benefit of those who like to sit

    in the back row, i’ve refrained from putting anything important here. wat.
  14. @bryanveloso for the benefit of those who like to sit

    in the back row, i’ve refrained from putting anything important here. collaboration.
  15. @bryanveloso for the benefit of those who like to sit

    in the back row, i’ve refrained from putting anything important here. validation.
  16. @bryanveloso feelings of awesome. feelings of awesome. http://flickr.com/photos/headlouse/1484615917/

  17. @bryanveloso for the benefit of those who like to sit

    in the back row, i’ve refrained from putting anything important here. your new portfolio. hi @pydanny!
  18. @bryanveloso for the benefit of those who like to sit

    in the back row, i’ve refrained from putting anything important here. but wait. my company doesn’t DO open source.
  19. @bryanveloso for the benefit of those who like to sit

    in the back row, i’ve refrained from putting anything important here.
  20. @bryanveloso for the benefit of those who like to sit

    in the back row, i’ve refrained from putting anything important here. the  higher  ups got  you  down?
  21. @bryanveloso for the benefit of those who like to sit

    in the back row, i’ve refrained from putting anything important here.
  22. @bryanveloso for the benefit of those who like to sit

    in the back row, i’ve refrained from putting anything important here. let me fix this for you.
  23. @bryanveloso for the benefit of those who like to sit

    in the back row, i’ve refrained from putting anything important here. If you do it right, open sourcing code is great advertising for you and your company. At GitHub we like to talk publicly about libraries and systems we've written that are still closed but destined to become open source. —Tom Preston-Werner “
  24. @bryanveloso for the benefit of those who like to sit

    in the back row, i’ve refrained from putting anything important here. If your code is popular enough to attract outside contributions, you will have created a force multiplier that helps you get more work done faster and cheaper. More users means more use cases being explored which means more robust code. —Tom Preston-Werner “
  25. @bryanveloso for the benefit of those who like to sit

    in the back row, i’ve refrained from putting anything important here. it’s the right thing to do. http://tom.preston-werner.com/2011/11/22/open-source-everything.html
  26. @bryanveloso for the benefit of those who like to sit

    in the back row, i’ve refrained from putting anything important here. designing the documentation. the promotion. the purpose.
  27. @bryanveloso for the benefit of those who like to sit

    in the back row, i’ve refrained from putting anything important here. designing the documentation. the promotion. the purpose.
  28. @bryanveloso for the benefit of those who like to sit

    in the back row, i’ve refrained from putting anything important here. design low-level.
  29. @bryanveloso for the benefit of those who like to sit

    in the back row, i’ve refrained from putting anything important here. python, obviously.
  30. @bryanveloso for the benefit of those who like to sit

    in the back row, i’ve refrained from putting anything important here. design high-level.
  31. @bryanveloso for the benefit of those who like to sit

    in the back row, i’ve refrained from putting anything important here. fix your problems first.
  32. @bryanveloso can you support this? http://www.flickr.com/photos/dannyboyster/167005223/

  33. @bryanveloso exit strategies? http://flickr.com/photos/think4d/4908754598/

  34. @bryanveloso for the benefit of those who like to sit

    in the back row, i’ve refrained from putting anything important here. design methodologies.
  35. @bryanveloso for the benefit of those who like to sit

    in the back row, i’ve refrained from putting anything important here. contribution model? pull requests? patches? no really, pull requests.
  36. @bryanveloso for the benefit of those who like to sit

    in the back row, i’ve refrained from putting anything important here. test driven?
  37. @bryanveloso for the benefit of those who like to sit

    in the back row, i’ve refrained from putting anything important here. language: en eature: Addition In order to avoid silly mistakes As a math idiot I want to be told the sum of two numbers Scenario Outline: Add two numbers Given I have entered <input_1> into the c And I have entered <input_2> into the cal When I press <button> Then the result should be <output> on the behavior driven?
  38. @bryanveloso beer driven? http://flickr.com/photos/thebbp/3777373967/

  39. @bryanveloso for the benefit of those who like to sit

    in the back row, i’ve refrained from putting anything important here. beercola driven?
  40. @bryanveloso for the benefit of those who like to sit

    in the back row, i’ve refrained from putting anything important here. licenses? http://www.codinghorror.com/blog/2007/04/pick-a-license-any-license.html
  41. @bryanveloso for the benefit of those who like to sit

    in the back row, i’ve refrained from putting anything important here. where should i host it? simplest. question. ever.
  42. @bryanveloso for the benefit of those who like to sit

    in the back row, i’ve refrained from putting anything important here. test? use travis-ci.org. test shouldn’t be a question, you should be testing. this automates it.
  43. @bryanveloso for the benefit of those who like to sit

    in the back row, i’ve refrained from putting anything important here. the documentation. the promotion. the purpose. designing
  44. @bryanveloso for the benefit of those who like to sit

    in the back row, i’ve refrained from putting anything important here. python = epic docs.
  45. @bryanveloso for the benefit of those who like to sit

    in the back row, i’ve refrained from putting anything important here. READMEs.
  46. @bryanveloso for the benefit of those who like to sit

    in the back row, i’ve refrained from putting anything important here. "" This is the "example" module. The example module supplies one function, factorial(). >>> factorial(5) 120 """ def factorial(n): """Return the factorial of n, an exact integer >= 0. >>> [factorial(n) for n in range(6)] [1, 1, 2, 6, 24, 120] >>> factorial(30) use docstrings.
  47. @bryanveloso for the benefit of those who like to sit

    in the back row, i’ve refrained from putting anything important here. sphinx.pocoo.org
  48. @bryanveloso for the benefit of those who like to sit

    in the back row, i’ve refrained from putting anything important here. readthedocs.com
  49. @bryanveloso for the benefit of those who like to sit

    in the back row, i’ve refrained from putting anything important here. design some examples.
  50. @bryanveloso for the benefit of those who like to sit

    in the back row, i’ve refrained from putting anything important here. docs.djangoproject.com
  51. @bryanveloso for the benefit of those who like to sit

    in the back row, i’ve refrained from putting anything important here. flask.pocoo.org/docs/
  52. @bryanveloso for the benefit of those who like to sit

    in the back row, i’ve refrained from putting anything important here. the documentation. the promotion. the purpose. designing
  53. @bryanveloso for the benefit of those who like to sit

    in the back row, i’ve refrained from putting anything important here. seriously, READMEs.
  54. @bryanveloso for the benefit of those who like to sit

    in the back row, i’ve refrained from putting anything important here. seriously, EPIC DOCS.
  55. @bryanveloso for the benefit of those who like to sit

    in the back row, i’ve refrained from putting anything important here. make a minisite. buy a domain name, link it to your documentation.
  56. @bryanveloso for the benefit of those who like to sit

    in the back row, i’ve refrained from putting anything important here. or recruit a designer! but not me. sorry. :(
  57. @bryanveloso for the benefit of those who like to sit

    in the back row, i’ve refrained from putting anything important here. so, about designers... uh oh.
  58. @bryanveloso we can work together. http://flickr.com/photos/benheine/6349627927/

  59. @bryanveloso respect what we do. because we definitely envy what

    you can do. http://flickr.com/photos/radicalccs/3080624143/
  60. @bryanveloso for the benefit of those who like to sit

    in the back row, i’ve refrained from putting anything important here. but how? “i’ll trade you development knowldge for design knowledge.”
  61. @bryanveloso for the benefit of those who like to sit

    in the back row, i’ve refrained from putting anything important here. your  client,      boss  or  spouse you
  62. @bryanveloso for the benefit of those who like to sit

    in the back row, i’ve refrained from putting anything important here. finally. students.
  63. @bryanveloso for the benefit of those who like to sit

    in the back row, i’ve refrained from putting anything important here. words of motivation.
  64. @bryanveloso for the benefit of those who like to sit

    in the back row, i’ve refrained from putting anything important here. get involved now. your youth is in your favor.
  65. @bryanveloso for the benefit of those who like to sit

    in the back row, i’ve refrained from putting anything important here. github.com/edu
  66. @bryanveloso for the benefit of those who like to sit

    in the back row, i’ve refrained from putting anything important here.
  67. @bryanveloso always keep the bar high. http://flickr.com/photos/boston_public_library/6323438713/

  68. @bryanveloso for the benefit of those who like to sit

    in the back row, i’ve refrained from putting anything important here. design now go make the web... you can do it! i believe in you!
  69. @bryanveloso for the benefit of those who like to sit

    in the back row, i’ve refrained from putting anything important here.
  70. @bryanveloso for the benefit of those who like to sit

    in the back row, i’ve refrained from putting anything important here. design do we still have time?
  71. @bryanveloso for the benefit of those who like to sit

    in the back row, i’ve refrained from putting anything important here. hi, i’m bryan.
  72. @bryanveloso for the benefit of those who like to sit

    in the back row, i’ve refrained from putting anything important here. designer/developer.
  73. @bryanveloso for the benefit of those who like to sit

    in the back row, i’ve refrained from putting anything important here. i maintain this.
  74. @bryanveloso for the benefit of those who like to sit

    in the back row, i’ve refrained from putting anything important here. 100% filipino.
  75. @bryanveloso for the benefit of those who like to sit

    in the back row, i’ve refrained from putting anything important here. i know zero tagalog.
  76. @bryanveloso for the benefit of those who like to sit

    in the back row, i’ve refrained from putting anything important here.
  77. @bryanveloso for the benefit of those who like to sit

    in the back row, i’ve refrained from putting anything important here. facebook.com/bryanveloso twitter.com/bryanveloso github.com/bryanveloso twitch.tv/vlogalonstar and if you’re into gaming...
  78. @bryanveloso for the benefit of those who like to sit

    in the back row, i’ve refrained from putting anything important here. it’s been an honor.
  79. @bryanveloso for the benefit of those who like to sit

    in the back row, i’ve refrained from putting anything important here. design thank you! you can find the slides at: http://speakerdeck.com/u/bryan/