10 Years of Python Libraries

10 Years of Python Libraries

A presentation at PiterPy 2015 about 10 Years of Python Libraries.

181de1fb11dffe39774f3e2e23cda3b6?s=128

Armin Ronacher

March 20, 2015
Tweet

Transcript

  1. 10 Years of Python Libraries Armin “@mitsuhiko” Ronacher

  2. Who am I? { }

  3. Armin Ronacher Advisor and System Architect at Splash Damage /

    Fireteam Partner at Getsentry lucumr.pocoo.org/talks
  4. None
  5. Where I come from { }

  6. Hermagor Carinthia; Austria ( )

  7. Population: 6952

  8. Computer Scientists: 0

  9. The Internet to the rescue

  10. h 2003 Discovered Python

  11. 9 2004 ubuntuusers.de

  12. n 2005 Pocoo!

  13. D 2005 WTF is CGI?

  14. h 2006 Colubrid GPL Licensed!

  15. h 2007 Licensing

  16. 9 2009 Flask

  17. h 20?? Many, many more

  18. n Now Open Source Consulting

  19. How to Succeed { }

  20. you can only build what you use

  21. you can only build what you understand

  22. you can only build what you love

  23. be critical

  24. restrict your API

  25. license it well

  26. The Thing with Using { }

  27. chicken and egg situation:

  28. not enough to use it after building;

  29. how do you use something that does not exist?

  30. Iteration

  31. M ockups

  32. Use the Repl

  33. Learn to Throw Away

  34. Systems > Solutions

  35. one trick pony

  36. Understanding { }

  37. this is the trickiest part

  38. especially if you build something new

  39. Data Flow Transformation &

  40. context matters

  41. w Love what you build { }

  42. how do you know you found love?

  43. enjoy using it? :) do you …

  44. what if you found new love?

  45. admit mistakes

  46. give it someone else

  47. being critical { }

  48. it's normal to learn

  49. you might hate what you did a year ago

  50. second system syndrome careful though:

  51. Restrict your API { }

  52. APIs are Contracts __________________

  53. Contracts Expensive are

  54. maintenance complicates

  55. it's okay to keep things private

  56. you can make them public later on

  57. license it well { }

  58. consider the consequences

  59. licenses are forever

  60. API Design Goals { }

  61. stateless

  62. layered

  63. consistent

  64. small

  65. abstraction leakage

  66. documentation thou shall write

  67. ?