How do you build great software?

5f2da528927a2ec9ba4fec2069cbc958?s=47 Kyle Neath
October 10, 2012

How do you build great software?

A bit of a rambling talk I gave at Brooklyn Beta about the importance of your surroundings. Covering GitHub's approach to software development and the importance of the tools you use.

5f2da528927a2ec9ba4fec2069cbc958?s=128

Kyle Neath

October 10, 2012
Tweet

Transcript

  1.  B

  2. William Morris If you want a golden rule that will

    t everything, this is it: Have nothing in your houses that you do not know to be useful or believe to be beautiful.
  3. I’m Kyle Neath On the interwebs @kneath

  4. I’m ≅ Designer

  5. I work at GitHub A better way to make software

  6. urbancase.com

  7. None
  8. I <3 engineering beautiful software

  9. Software is a force for change in our world

  10. Affect a change?

  11. Affect a Change.

  12. How do you build great software?

  13. Conway’s Law Organizations which design systems ... are constrained to

    produce designs which are copies of the communication structures of these organizations
  14. What if you could build the best software company in

    the world?
  15. What if you could build the best software company in

    the world?
  16. Let’s try.

  17.       Traits of a great

    software company
  18. Bootstrapped to profitability Predictable revenue stream No funding until 100

    employees
  19. Our customers were our friends We became extremely customer focused

  20. We used GitHub to build GitHub We became extremely product

    focused
  21. We hired slowly and carefully We became extremely company focused

  22. None
  23. We are driven by autonomy, mastery, and purpose

  24. An open source company optimized for happiness

  25. No managers No deadlines No top-down roadmap No core hours

    No mandatory meetings
  26. “That’s cool and all when you’re a small company, but

    eventually you’re going to need management and structure” Everybody Ever
  27. 2009 201

  28. 2010 201

  29. 2011 201

  30. NOW October 10, 2012

  31. 123 hubbernauts I guess we’re a big company after all

  32. None
  33. None
  34. Build the best software possible and allow people to pay

    for it GitHub’s driving principle
  35. Favor leadership over management

  36. Favor goals over deadlines

  37. Favor a shared vision over roadmaps

  38. Favor sustainable pace over hourly commitments

  39. Favor tangible work over meetings

  40. Favor building new tools over using existing shitty ones

  41. William Morris If you want a golden rule that will

    t everything, this is it: Have nothing in your houses that you do not know to be useful or believe to be beautiful.
  42. None
  43. None
  44. None
  45. None
  46. None
  47. None
  48. None
  49. None
  50. None
  51. None
  52. None
  53. None
  54. None
  55. None
  56. None
  57. None
  58. None
  59. Knyle’s Law Organizations will design software that is a copy

    of the software they surround themselves with.
  60. Your surroundings = your company + your software

  61.  Traits of a great organization

  62. Remote by default

  63. Do real work

  64. Open by default

  65. Encourage serendipitous interaction

  66. Always be classy

  67. Create a better future

  68. No matter what, love your work

  69. We can create a better future by creating better companies

  70.  B