Writing the docs

Mikko Ohtamaa
Mikko OhtamaaHacker at opensourcehacker.com
Writing the docs
                       Mikko Ohtamaa PLOG / 2013
                              Sorrento, Italy

Friday, April 5, 13
Agenda
                      The culture of good
                        documentation

                 Documenting Python code

             Documentation tools in Plone




Friday, April 5, 13
Mikko Ohtamaa            gk
                                                 nr
                                                io
                                               kw
                                             o
                                            or
                                           Lo
                                           f


                      moo9000       opensourcehacker.com


                      Open Source
                                    103323677227728078543
                        Hacker

Friday, April 5, 13
Am I a bad person If I
                           don’t write
                        documentation?


Friday, April 5, 13
YES.




Friday, April 5, 13
Peer-driven culture vs.
                      product-driven culture
Friday, April 5, 13
http://blog.gerv.net/2013/03/why-the-smart-people-leav/
Friday, April 5, 13
Arch of Doom
                         &
                    i ty        Outsourcing
                 lar ess
               pu in          companies start     “German breakfast time”
             Po app          using your product
               h




                                                                               e
                                                                            Tim

           Story begins with happy peers


Friday, April 5, 13
“No gaps, no questions
                            needed”
                        documentation is
                        necessary for the
                         project to scale

Friday, April 5, 13
Don’t worry ☠
Friday, April 5, 13
How to doc Python

                      README.rst (PyPi, Github, .egg)
                      Sphinx
                      Autodoc
                      readthedocs.org, pythonhosted.org
                      Well-commented unit tests


Friday, April 5, 13
developer.plone.org

                      ( like stateful readthedocs.org with buildout )

                                      ( like a boss )


Friday, April 5, 13
Consumers of Plone
                        the project are
                          developers
Friday, April 5, 13
d.p.org ingredients

                      Body of knowledge
                      Tutorials
                      External package documentation
                      Graveyard of old documentation


                                                       bil ity
                                       sco vera
                                   Di
Friday, April 5, 13
[ developer.plone.org
                             demo ]


Friday, April 5, 13
Fix your workflow
           Write code        Write code ~ write docs

           Write tests             Write tests

           Write docs


Friday, April 5, 13
Low-hanging fruits

         For every blog post you
         write link it

         For every
         stackoverflow.com                 d.p.org
         question you make link
         it

         For every IRC answer
         you receive write it                        ust
         down                                tio n m
                                     nfo rma   uts ide
                                   I      st o head
                                      exi ur
                                        yo
Friday, April 5, 13
[ Github inline edit
                            demo ]


Friday, April 5, 13
Share your slides
                             slideshare.net
                       Link in developer.plone.org




Friday, April 5, 13
Top-of-the-shelf bottles
                      Theming tutorial
                      Development
                      friendliness out of
                      the box
                      Making Plone itself
                      more dev friendly

Friday, April 5, 13
moo9000


                                Open Source Hacker


                               opensourcehacker.com


                               103323677227728078543

                      Kiitos
Friday, April 5, 13
1 of 21

Recommended

Arquitetura QueFilme by
Arquitetura QueFilmeArquitetura QueFilme
Arquitetura QueFilmevcr2
219 views23 slides
CVS:você não usa, mas deveria by
CVS:você não usa, mas deveriaCVS:você não usa, mas deveria
CVS:você não usa, mas deveriaFelipe de Morais
406 views106 slides
OSMC2010 Open NMS Kickstart by
OSMC2010 Open NMS KickstartOSMC2010 Open NMS Kickstart
OSMC2010 Open NMS KickstartRonny
1.2K views58 slides
Future Proof Web Design by
Future Proof Web DesignFuture Proof Web Design
Future Proof Web Designberbercarpet
677 views80 slides
Writing testable code by
Writing testable codeWriting testable code
Writing testable codeAlvaro Videla
8.4K views57 slides
Debugging Android - GDG Munich by
Debugging Android - GDG MunichDebugging Android - GDG Munich
Debugging Android - GDG MunichEnrique López Mañas
630 views14 slides

More Related Content

Viewers also liked

HTTP demystified for web developers by
HTTP demystified for web developersHTTP demystified for web developers
HTTP demystified for web developersPeter Hilton
1K views27 slides
From legacy to DDD - 5 starting steps by
From legacy to DDD - 5 starting stepsFrom legacy to DDD - 5 starting steps
From legacy to DDD - 5 starting stepsAndrzej Krzywda
1.6K views9 slides
Tom and jef’s awesome modellathon by
Tom and jef’s awesome modellathonTom and jef’s awesome modellathon
Tom and jef’s awesome modellathonTom Janssens
1.5K views14 slides
Documentation avoidance for developers by
Documentation avoidance for developersDocumentation avoidance for developers
Documentation avoidance for developersPeter Hilton
1.5K views72 slides
Selling ddd by
Selling dddSelling ddd
Selling dddTom Janssens
3.4K views34 slides
How to write maintainable code by
How to write maintainable codeHow to write maintainable code
How to write maintainable codePeter Hilton
2.1K views53 slides

Viewers also liked(20)

HTTP demystified for web developers by Peter Hilton
HTTP demystified for web developersHTTP demystified for web developers
HTTP demystified for web developers
Peter Hilton1K views
From legacy to DDD - 5 starting steps by Andrzej Krzywda
From legacy to DDD - 5 starting stepsFrom legacy to DDD - 5 starting steps
From legacy to DDD - 5 starting steps
Andrzej Krzywda1.6K views
Tom and jef’s awesome modellathon by Tom Janssens
Tom and jef’s awesome modellathonTom and jef’s awesome modellathon
Tom and jef’s awesome modellathon
Tom Janssens1.5K views
Documentation avoidance for developers by Peter Hilton
Documentation avoidance for developersDocumentation avoidance for developers
Documentation avoidance for developers
Peter Hilton1.5K views
How to write maintainable code by Peter Hilton
How to write maintainable codeHow to write maintainable code
How to write maintainable code
Peter Hilton2.1K views
Death to project documentation with eXtreme Programming by Alex Fernandez
Death to project documentation with eXtreme ProgrammingDeath to project documentation with eXtreme Programming
Death to project documentation with eXtreme Programming
Alex Fernandez2.2K views
Domain-Driven Design in legacy application by Cyrille Martraire
Domain-Driven Design in legacy applicationDomain-Driven Design in legacy application
Domain-Driven Design in legacy application
Cyrille Martraire2.9K views
From legacy to DDD (slides for the screencast) by Andrzej Krzywda
From legacy to DDD (slides for the screencast)From legacy to DDD (slides for the screencast)
From legacy to DDD (slides for the screencast)
Andrzej Krzywda780 views
Simplifying your design with higher-order functions by Samir Talwar
Simplifying your design with higher-order functionsSimplifying your design with higher-order functions
Simplifying your design with higher-order functions
Samir Talwar5.8K views
Evolving legacy to microservices and ddd by Marcos Vinícius
Evolving legacy to microservices and dddEvolving legacy to microservices and ddd
Evolving legacy to microservices and ddd
Marcos Vinícius372 views
How to write good comments by Peter Hilton
How to write good commentsHow to write good comments
How to write good comments
Peter Hilton16.1K views
I T.A.K.E. talk: "When DDD meets FP, good things happen" by Cyrille Martraire
I T.A.K.E. talk: "When DDD meets FP, good things happen"I T.A.K.E. talk: "When DDD meets FP, good things happen"
I T.A.K.E. talk: "When DDD meets FP, good things happen"
Cyrille Martraire8.3K views
Living Documentation (NCrafts Paris 2015, DDDx London 2015, BDX.io 2015, Code... by Cyrille Martraire
Living Documentation (NCrafts Paris 2015, DDDx London 2015, BDX.io 2015, Code...Living Documentation (NCrafts Paris 2015, DDDx London 2015, BDX.io 2015, Code...
Living Documentation (NCrafts Paris 2015, DDDx London 2015, BDX.io 2015, Code...
Cyrille Martraire1.8K views
How to name things: the hardest problem in programming by Peter Hilton
How to name things: the hardest problem in programmingHow to name things: the hardest problem in programming
How to name things: the hardest problem in programming
Peter Hilton155.9K views
DATA SCIENCE IS CATALYZING BUSINESS AND INNOVATION by Elvis Muyanja
DATA SCIENCE IS CATALYZING BUSINESS AND INNOVATION DATA SCIENCE IS CATALYZING BUSINESS AND INNOVATION
DATA SCIENCE IS CATALYZING BUSINESS AND INNOVATION
Elvis Muyanja1.6K views
DDD patterns that were not in the book by Cyrille Martraire
DDD patterns that were not in the bookDDD patterns that were not in the book
DDD patterns that were not in the book
Cyrille Martraire5.3K views
How to Become a Thought Leader in Your Niche by Leslie Samuel
How to Become a Thought Leader in Your NicheHow to Become a Thought Leader in Your Niche
How to Become a Thought Leader in Your Niche
Leslie Samuel1.6M views

Similar to Writing the docs

CakePHP the yum & yuck by
CakePHP the yum & yuckCakePHP the yum & yuck
CakePHP the yum & yuckmarkstory
4.6K views44 slides
Python Ecosystem for Beginners - PyCon Uruguay 2013 by
Python Ecosystem for Beginners - PyCon Uruguay 2013Python Ecosystem for Beginners - PyCon Uruguay 2013
Python Ecosystem for Beginners - PyCon Uruguay 2013Hannes Hapke
2.1K views76 slides
Redesigning UBC Library by
Redesigning UBC LibraryRedesigning UBC Library
Redesigning UBC Libraryjtcchan
859 views65 slides
Intravert atx meetup_condensed by
Intravert atx meetup_condensedIntravert atx meetup_condensed
Intravert atx meetup_condensedzznate
952 views54 slides
CPANci: Continuous Integration for CPAN by
CPANci: Continuous Integration for CPANCPANci: Continuous Integration for CPAN
CPANci: Continuous Integration for CPANMike Friedman
2.5K views135 slides
Specking Interactors with PHPSpec and YOLO (DDD) at PHPConference Argentina 2013 by
Specking Interactors with PHPSpec and YOLO (DDD) at PHPConference Argentina 2013Specking Interactors with PHPSpec and YOLO (DDD) at PHPConference Argentina 2013
Specking Interactors with PHPSpec and YOLO (DDD) at PHPConference Argentina 2013cordoval
1.6K views58 slides

Similar to Writing the docs(20)

CakePHP the yum & yuck by markstory
CakePHP the yum & yuckCakePHP the yum & yuck
CakePHP the yum & yuck
markstory4.6K views
Python Ecosystem for Beginners - PyCon Uruguay 2013 by Hannes Hapke
Python Ecosystem for Beginners - PyCon Uruguay 2013Python Ecosystem for Beginners - PyCon Uruguay 2013
Python Ecosystem for Beginners - PyCon Uruguay 2013
Hannes Hapke2.1K views
Redesigning UBC Library by jtcchan
Redesigning UBC LibraryRedesigning UBC Library
Redesigning UBC Library
jtcchan859 views
Intravert atx meetup_condensed by zznate
Intravert atx meetup_condensedIntravert atx meetup_condensed
Intravert atx meetup_condensed
zznate952 views
CPANci: Continuous Integration for CPAN by Mike Friedman
CPANci: Continuous Integration for CPANCPANci: Continuous Integration for CPAN
CPANci: Continuous Integration for CPAN
Mike Friedman2.5K views
Specking Interactors with PHPSpec and YOLO (DDD) at PHPConference Argentina 2013 by cordoval
Specking Interactors with PHPSpec and YOLO (DDD) at PHPConference Argentina 2013Specking Interactors with PHPSpec and YOLO (DDD) at PHPConference Argentina 2013
Specking Interactors with PHPSpec and YOLO (DDD) at PHPConference Argentina 2013
cordoval1.6K views
Speed geek presentation by Aaron Maurer
Speed geek presentationSpeed geek presentation
Speed geek presentation
Aaron Maurer566 views
People Like You Working With People Like Me by oonie chase
People Like You Working With People Like MePeople Like You Working With People Like Me
People Like You Working With People Like Me
oonie chase1.3K views
Test Driven Infrastructure Development by Puppet
Test Driven Infrastructure DevelopmentTest Driven Infrastructure Development
Test Driven Infrastructure Development
Puppet1.4K views
Test driven infrastructure development by Tomas Doran
Test driven infrastructure developmentTest driven infrastructure development
Test driven infrastructure development
Tomas Doran1.2K views
The State of Puppet by Puppet
The State of PuppetThe State of Puppet
The State of Puppet
Puppet10.6K views
Presentatie Ggz-delfland april '13 over E-health & GGZ by Vincent Everts
Presentatie Ggz-delfland april '13 over E-health & GGZPresentatie Ggz-delfland april '13 over E-health & GGZ
Presentatie Ggz-delfland april '13 over E-health & GGZ
Vincent Everts760 views
What Mr. Spock would possibly say about modern unit testing: pragmatic and em... by Yaroslav Yermilov
What Mr. Spock would possibly say about modern unit testing: pragmatic and em...What Mr. Spock would possibly say about modern unit testing: pragmatic and em...
What Mr. Spock would possibly say about modern unit testing: pragmatic and em...
Piccolo coding dojo (milano xpug 2013-04-11) by Andrea Francia
Piccolo coding dojo (milano xpug 2013-04-11)Piccolo coding dojo (milano xpug 2013-04-11)
Piccolo coding dojo (milano xpug 2013-04-11)
Andrea Francia1.2K views
Keeping your users happy with testable apps - Greg Shackles by Xamarin
Keeping your users happy with testable apps - Greg ShacklesKeeping your users happy with testable apps - Greg Shackles
Keeping your users happy with testable apps - Greg Shackles
Xamarin970 views
Design and Evolution of cyber-dojo by Jon Jagger
Design and Evolution of cyber-dojoDesign and Evolution of cyber-dojo
Design and Evolution of cyber-dojo
Jon Jagger2.6K views

More from Mikko Ohtamaa

Websauna - introduction to the best Python web framework by
Websauna - introduction to the best Python web frameworkWebsauna - introduction to the best Python web framework
Websauna - introduction to the best Python web frameworkMikko Ohtamaa
2.2K views27 slides
Operations Security - SF Bitcoin Hackday March 2015 by
Operations Security - SF Bitcoin Hackday March 2015Operations Security - SF Bitcoin Hackday March 2015
Operations Security - SF Bitcoin Hackday March 2015Mikko Ohtamaa
1.1K views25 slides
Operations security - SyPy Dec 2014 (Sydney Python users) by
Operations security - SyPy Dec 2014 (Sydney Python users)Operations security - SyPy Dec 2014 (Sydney Python users)
Operations security - SyPy Dec 2014 (Sydney Python users)Mikko Ohtamaa
950 views23 slides
Operations security (OPSEC) by
Operations security (OPSEC)Operations security (OPSEC)
Operations security (OPSEC)Mikko Ohtamaa
1.5K views28 slides
Plone, battle-scarred community with battle tanks by
Plone, battle-scarred community with battle tanksPlone, battle-scarred community with battle tanks
Plone, battle-scarred community with battle tanksMikko Ohtamaa
1.4K views27 slides
World Plone Day 2013 by
World Plone Day 2013World Plone Day 2013
World Plone Day 2013Mikko Ohtamaa
1.2K views26 slides

More from Mikko Ohtamaa(19)

Websauna - introduction to the best Python web framework by Mikko Ohtamaa
Websauna - introduction to the best Python web frameworkWebsauna - introduction to the best Python web framework
Websauna - introduction to the best Python web framework
Mikko Ohtamaa2.2K views
Operations Security - SF Bitcoin Hackday March 2015 by Mikko Ohtamaa
Operations Security - SF Bitcoin Hackday March 2015Operations Security - SF Bitcoin Hackday March 2015
Operations Security - SF Bitcoin Hackday March 2015
Mikko Ohtamaa1.1K views
Operations security - SyPy Dec 2014 (Sydney Python users) by Mikko Ohtamaa
Operations security - SyPy Dec 2014 (Sydney Python users)Operations security - SyPy Dec 2014 (Sydney Python users)
Operations security - SyPy Dec 2014 (Sydney Python users)
Mikko Ohtamaa950 views
Operations security (OPSEC) by Mikko Ohtamaa
Operations security (OPSEC)Operations security (OPSEC)
Operations security (OPSEC)
Mikko Ohtamaa1.5K views
Plone, battle-scarred community with battle tanks by Mikko Ohtamaa
Plone, battle-scarred community with battle tanksPlone, battle-scarred community with battle tanks
Plone, battle-scarred community with battle tanks
Mikko Ohtamaa1.4K views
Solving problems one Plone package at a time by Mikko Ohtamaa
Solving problems one Plone package at a timeSolving problems one Plone package at a time
Solving problems one Plone package at a time
Mikko Ohtamaa482 views
Saving Plone from Plone agony by Mikko Ohtamaa
Saving Plone from Plone agonySaving Plone from Plone agony
Saving Plone from Plone agony
Mikko Ohtamaa1.3K views
Beautiful Maintainable ModularJavascript Codebase with RequireJS - HelsinkiJ... by Mikko Ohtamaa
 Beautiful Maintainable ModularJavascript Codebase with RequireJS - HelsinkiJ... Beautiful Maintainable ModularJavascript Codebase with RequireJS - HelsinkiJ...
Beautiful Maintainable ModularJavascript Codebase with RequireJS - HelsinkiJ...
Mikko Ohtamaa3.6K views
VVV validation and linting tool by Mikko Ohtamaa
VVV validation and linting toolVVV validation and linting tool
VVV validation and linting tool
Mikko Ohtamaa956 views
Plone IDE - the future of Plone development by Mikko Ohtamaa
Plone IDE - the future of Plone developmentPlone IDE - the future of Plone development
Plone IDE - the future of Plone development
Mikko Ohtamaa1.2K views
Javascript - How to avoid the bad parts by Mikko Ohtamaa
Javascript - How to avoid the bad partsJavascript - How to avoid the bad parts
Javascript - How to avoid the bad parts
Mikko Ohtamaa2.5K views
The Easy Way - Plone Conference 2011 by Mikko Ohtamaa
The Easy Way - Plone Conference 2011The Easy Way - Plone Conference 2011
The Easy Way - Plone Conference 2011
Mikko Ohtamaa837 views
Mobile Landscape 2011 by Mikko Ohtamaa
Mobile Landscape 2011Mobile Landscape 2011
Mobile Landscape 2011
Mikko Ohtamaa1.8K views
Mobiilimarkkinoinnin mahdollisuudet nyt by Mikko Ohtamaa
Mobiilimarkkinoinnin mahdollisuudet nytMobiilimarkkinoinnin mahdollisuudet nyt
Mobiilimarkkinoinnin mahdollisuudet nyt
Mikko Ohtamaa438 views
The World Outside Plone by Mikko Ohtamaa
The World Outside PloneThe World Outside Plone
The World Outside Plone
Mikko Ohtamaa1.3K views
Building HTML based mobile phone applications by Mikko Ohtamaa
Building HTML based mobile phone applicationsBuilding HTML based mobile phone applications
Building HTML based mobile phone applications
Mikko Ohtamaa4.1K views

Recently uploaded

The Research Portal of Catalonia: Growing more (information) & more (services) by
The Research Portal of Catalonia: Growing more (information) & more (services)The Research Portal of Catalonia: Growing more (information) & more (services)
The Research Portal of Catalonia: Growing more (information) & more (services)CSUC - Consorci de Serveis Universitaris de Catalunya
79 views25 slides
Lilypad @ Labweek, Istanbul, 2023.pdf by
Lilypad @ Labweek, Istanbul, 2023.pdfLilypad @ Labweek, Istanbul, 2023.pdf
Lilypad @ Labweek, Istanbul, 2023.pdfAlly339821
9 views45 slides
Kyo - Functional Scala 2023.pdf by
Kyo - Functional Scala 2023.pdfKyo - Functional Scala 2023.pdf
Kyo - Functional Scala 2023.pdfFlavio W. Brasil
298 views92 slides
GDG Cloud Southlake 28 Brad Taylor and Shawn Augenstein Old Problems in the N... by
GDG Cloud Southlake 28 Brad Taylor and Shawn Augenstein Old Problems in the N...GDG Cloud Southlake 28 Brad Taylor and Shawn Augenstein Old Problems in the N...
GDG Cloud Southlake 28 Brad Taylor and Shawn Augenstein Old Problems in the N...James Anderson
66 views32 slides
Transcript: The Details of Description Techniques tips and tangents on altern... by
Transcript: The Details of Description Techniques tips and tangents on altern...Transcript: The Details of Description Techniques tips and tangents on altern...
Transcript: The Details of Description Techniques tips and tangents on altern...BookNet Canada
135 views15 slides
TouchLog: Finger Micro Gesture Recognition Using Photo-Reflective Sensors by
TouchLog: Finger Micro Gesture Recognition  Using Photo-Reflective SensorsTouchLog: Finger Micro Gesture Recognition  Using Photo-Reflective Sensors
TouchLog: Finger Micro Gesture Recognition Using Photo-Reflective Sensorssugiuralab
19 views15 slides

Recently uploaded(20)

Lilypad @ Labweek, Istanbul, 2023.pdf by Ally339821
Lilypad @ Labweek, Istanbul, 2023.pdfLilypad @ Labweek, Istanbul, 2023.pdf
Lilypad @ Labweek, Istanbul, 2023.pdf
Ally3398219 views
GDG Cloud Southlake 28 Brad Taylor and Shawn Augenstein Old Problems in the N... by James Anderson
GDG Cloud Southlake 28 Brad Taylor and Shawn Augenstein Old Problems in the N...GDG Cloud Southlake 28 Brad Taylor and Shawn Augenstein Old Problems in the N...
GDG Cloud Southlake 28 Brad Taylor and Shawn Augenstein Old Problems in the N...
James Anderson66 views
Transcript: The Details of Description Techniques tips and tangents on altern... by BookNet Canada
Transcript: The Details of Description Techniques tips and tangents on altern...Transcript: The Details of Description Techniques tips and tangents on altern...
Transcript: The Details of Description Techniques tips and tangents on altern...
BookNet Canada135 views
TouchLog: Finger Micro Gesture Recognition Using Photo-Reflective Sensors by sugiuralab
TouchLog: Finger Micro Gesture Recognition  Using Photo-Reflective SensorsTouchLog: Finger Micro Gesture Recognition  Using Photo-Reflective Sensors
TouchLog: Finger Micro Gesture Recognition Using Photo-Reflective Sensors
sugiuralab19 views
iSAQB Software Architecture Gathering 2023: How Process Orchestration Increas... by Bernd Ruecker
iSAQB Software Architecture Gathering 2023: How Process Orchestration Increas...iSAQB Software Architecture Gathering 2023: How Process Orchestration Increas...
iSAQB Software Architecture Gathering 2023: How Process Orchestration Increas...
Bernd Ruecker33 views
Web Dev - 1 PPT.pdf by gdsczhcet
Web Dev - 1 PPT.pdfWeb Dev - 1 PPT.pdf
Web Dev - 1 PPT.pdf
gdsczhcet60 views
SAP Automation Using Bar Code and FIORI.pdf by Virendra Rai, PMP
SAP Automation Using Bar Code and FIORI.pdfSAP Automation Using Bar Code and FIORI.pdf
SAP Automation Using Bar Code and FIORI.pdf
Automating a World-Class Technology Conference; Behind the Scenes of CiscoLive by Network Automation Forum
Automating a World-Class Technology Conference; Behind the Scenes of CiscoLiveAutomating a World-Class Technology Conference; Behind the Scenes of CiscoLive
Automating a World-Class Technology Conference; Behind the Scenes of CiscoLive
Attacking IoT Devices from a Web Perspective - Linux Day by Simone Onofri
Attacking IoT Devices from a Web Perspective - Linux Day Attacking IoT Devices from a Web Perspective - Linux Day
Attacking IoT Devices from a Web Perspective - Linux Day
Simone Onofri15 views
Black and White Modern Science Presentation.pptx by maryamkhalid2916
Black and White Modern Science Presentation.pptxBlack and White Modern Science Presentation.pptx
Black and White Modern Science Presentation.pptx
maryamkhalid291616 views
Igniting Next Level Productivity with AI-Infused Data Integration Workflows by Safe Software
Igniting Next Level Productivity with AI-Infused Data Integration Workflows Igniting Next Level Productivity with AI-Infused Data Integration Workflows
Igniting Next Level Productivity with AI-Infused Data Integration Workflows
Safe Software257 views
Data-centric AI and the convergence of data and model engineering: opportunit... by Paolo Missier
Data-centric AI and the convergence of data and model engineering:opportunit...Data-centric AI and the convergence of data and model engineering:opportunit...
Data-centric AI and the convergence of data and model engineering: opportunit...
Paolo Missier39 views
1st parposal presentation.pptx by i238212
1st parposal presentation.pptx1st parposal presentation.pptx
1st parposal presentation.pptx
i2382129 views

Writing the docs

  • 1. Writing the docs Mikko Ohtamaa PLOG / 2013 Sorrento, Italy Friday, April 5, 13
  • 2. Agenda The culture of good documentation Documenting Python code Documentation tools in Plone Friday, April 5, 13
  • 3. Mikko Ohtamaa gk nr io kw o or Lo f moo9000 opensourcehacker.com Open Source 103323677227728078543 Hacker Friday, April 5, 13
  • 4. Am I a bad person If I don’t write documentation? Friday, April 5, 13
  • 6. Peer-driven culture vs. product-driven culture Friday, April 5, 13
  • 8. Arch of Doom & i ty Outsourcing lar ess pu in companies start “German breakfast time” Po app using your product h e Tim Story begins with happy peers Friday, April 5, 13
  • 9. “No gaps, no questions needed” documentation is necessary for the project to scale Friday, April 5, 13
  • 11. How to doc Python README.rst (PyPi, Github, .egg) Sphinx Autodoc readthedocs.org, pythonhosted.org Well-commented unit tests Friday, April 5, 13
  • 12. developer.plone.org ( like stateful readthedocs.org with buildout ) ( like a boss ) Friday, April 5, 13
  • 13. Consumers of Plone the project are developers Friday, April 5, 13
  • 14. d.p.org ingredients Body of knowledge Tutorials External package documentation Graveyard of old documentation bil ity sco vera Di Friday, April 5, 13
  • 15. [ developer.plone.org demo ] Friday, April 5, 13
  • 16. Fix your workflow Write code Write code ~ write docs Write tests Write tests Write docs Friday, April 5, 13
  • 17. Low-hanging fruits For every blog post you write link it For every stackoverflow.com d.p.org question you make link it For every IRC answer you receive write it ust down tio n m nfo rma uts ide I st o head exi ur yo Friday, April 5, 13
  • 18. [ Github inline edit demo ] Friday, April 5, 13
  • 19. Share your slides slideshare.net Link in developer.plone.org Friday, April 5, 13
  • 20. Top-of-the-shelf bottles Theming tutorial Development friendliness out of the box Making Plone itself more dev friendly Friday, April 5, 13
  • 21. moo9000 Open Source Hacker opensourcehacker.com 103323677227728078543 Kiitos Friday, April 5, 13