Your SlideShare is downloading. ×
The story and tech of Read the Docs
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×

Introducing the official SlideShare app

Stunning, full-screen experience for iPhone and Android

Text the download link to your phone

Standard text messaging rates apply

The story and tech of Read the Docs

1,168
views

Published on

Published in: Technology

0 Comments
3 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
1,168
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
14
Comments
0
Likes
3
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • DB -> Django Template -> Sphinx Config -> Jinja Template \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • Transcript

    • 1. The story and tech of Read the Docs Eric Holscher http://ericholscher.com Djangocon 2011
    • 2. What this talk is» Talk about the history of Read the Docs» Technology Involved» Interesting outcomes of openness» Lessons learned
    • 3. Who am I» I come from Django» Work at Urban Airship» Like automating systems
    • 4. Why I’m here» Feedback» Ideas» Hopefully you’ll learn something too!» Shameless self-promotion
    • 5. The story
    • 6. 2010 Django Dash
    • 7. Charles LeiferBobby Grace (Design) Me
    • 8. Doc Hosting Sucks» packages.python.org» Github Pages» Your own janky cronjobs
    • 9. `
    • 10. Sphinx» Standard documentation tool for python» Uses reStructured Text
    • 11. Had a workable site in 48 hours
    • 12. Fully Open Source
    • 13. Fully Open Source» github.com/rtfd/readthedocs.org» github.com/ericholscher/chef-django-example» ericholscher.com/tag/chef-series/
    • 14. Officially Hosted» Celery» Fabric» Nose, py.test» Virtualenv, Pip» Django CMS» Django Grapelli/Floppyforms/Sentry» mod_wsgi (woo!)
    • 15. DEMO
    • 16. What makes it tick
    • 17. Features
    • 18. Git, Hg, Bzr, Svn
    • 19. Post commit hooks
    • 20. Custom Theme
    • 21. Full-text search
    • 22. Tags & Branches = Versions
    • 23. PDF Generation
    • 24. Virtualenvs
    • 25. rtfd.org
    • 26. Tech
    • 27. Subdomains
    • 28. CNAME Support
    • 29. Cname Support» Request for docs.fabfile.org» docs.fabfile.org -> fabric.readthedocs.org» In middleware, resolve CNAME and determine docs to serve.» Cache it.
    • 30. Architecture +-----------+ | | +-----| Varnish |------+ | +-----------+ | | | +---------+ +---------++-------------+ | | | | +--------------+| |-----| Nginx | | Nginx |----| || File | +---------+ +---------+ | File || System | | | | System |+-------------+ +---------+ +--------+ +---------+ +--------------+ | | | | | | | | | | | +---------|Gunicorn |--|Postgres|--|Gunicorn |--------+ | | +---------+ +--------+ +---------+ | | | | | | | | +------------------+ | | | | | +---------------------| Build Server |-------------------+ | | +------------------+
    • 31. Haystack & Solr
    • 32. Chef
    • 33. Nagios & Munin
    • 34. Upstart
    • 35. REST API
    • 36. CoffeeScript
    • 37. CLI
    • 38. Open Source Outcomes
    • 39. Patches
    • 40. Known architecture information
    • 41. Slow Loris
    • 42. Trust
    • 43. People Writing Docs
    • 44. Lessons
    • 45. Think about your URLs. Really hard.
    • 46. Lay your project out sanely
    • 47. Write tests!
    • 48. Build around a standard tool
    • 49. Passing data through systems is hard
    • 50. Serving static files is annoying
    • 51. Log. Everything.
    • 52. Promote (Hi!)
    • 53. Find a designer!
    • 54. Follow the Unix Philosophy
    • 55. Have a mission
    • 56. Thanks
    • 57. Revsys
    • 58. PSF
    • 59. Mozilla
    • 60. Divio
    • 61. Pyladies
    • 62. Questions?» readthedocs.org / rtfd.org» #readthedocs on Freenode» github.com/rtfd/readthedocs.org» eric@ericholscher.com