Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Asking questions for the benefit of your future self - Growing with the Plone community

David Bain,

In this talk I trace my history of learning in the Plone community from mailing lists and IRC to stackoverflow and the online forum. The goal of this talk is to provide a "template" for newbies who want to confidently engage with the Plone community. The underlying principles can be applied to engaging with any tech community and will help anyone who wants to benefit from and contribute to open source communities.

  • Login to see the comments

  • Be the first to like this

Asking questions for the benefit of your future self - Growing with the Plone community

  1. 1. Asking questions for the benefit of your future self Growing with the Plone community
  2. 2. How I met Plone A friend introduced me to the Zope ecosystem and I eventually discovered Plone along the way 2 World Pilot There was no mask (or guitar) Super powers
  3. 3. 3 Frameworks can be... Unexpected WeirdFun
  4. 4. This talk is about a framework 4 It's about Plone but not really
  5. 5. A repeatable approach to learning 5 first Definition Asking second Answering third Keeping Notes last Through the lens of my Plone experience Help you survive the weird and unexpected David Bain (pigeonflight) VERY briefly
  6. 6. Introducing AQsFus? A Definition First Made up name for this talk Asking Questions for the benefit of your future self
  7. 7. The hardest parts of learning a new technology or framework are... 7
  8. 8. ~45%Developers surveyed at 8 Getting started with new tooling and build / deploy processes
  9. 9. ~42%Developers surveyed at 9 Wrapping your head around a new way of completing old familiar tasks
  10. 10. ~1%Developers surveyed at 10 I never have to learn new technologies
  11. 11. 11 AQsFuS: Framework Learning Planning Problem solving Benefit yourself and others
  12. 12. 12 AQsFuS: Framework Components Answering 2 Keeping Notes 3 Asking 1
  13. 13. Good questioning Second Asking Questions
  14. 14. 14 Avoid asking horrible revealing questions Questions that demostrate no attempt to grasp the context or model
  15. 15. 15 Help!!!! I want to make nice website Plone Fictional Newbie i am trying to get Plone to make my website. Where do I go in photoshop to publish a news item? My employer needs me to do this… I saw something on the web that did Plone Jandreas Aung This question makes no sense. Please do not post messages while drunk!!! J Sample Fictional horrible revealing question I do not understand the model or context
  16. 16. 16 Structuring a good question What you tried 2 State Issue 1 Clear Title 0
  17. 17. 17 UI for editing individual member data.. almost :( Person not so newbiew I'm working on a hack to edit individual member data. The principle seems sound but I seem to be missing something….. Actual Question (plone-users list circa 2003) basically I've hacked the "personalize script" and "personalize_form" from the above files I've created too new files "personalize_proxy" and "personalize_form_proxy" …. State the issue What you tried Title with Optional emoji
  18. 18. 18 UI for editing individual member data.. almost :( Actual Response (plone-users list circa 2003) Person in response I have some code for this that will allow you to edit arbitrary user memberdata. actually i put together some code from an email to the CMF mailing list, a recipe from zopelabs and some personal magic. ;) I just haven't had a chance to post it anywhere. em, let's see , in the meantime i'll see about emailing you this offline later today. J 🎉
  19. 19. 19 Types of questions ● How might I ● Work in Progress Style ● Help me Plan This is not a comprehensive list
  20. 20. 20 Persistent Login Person not so newbiew How can I create a persistent login for my users. Similar to some of the more popular forum products which allow users to choose to stay logged in for a day, a week, a month, forever etc.. Once the access the site using the same computer they remain logged in. This is purely for convenience (I wouldn't recommend this if you're interested in security) How might I Question (plone-users list circa 2004) State the issue In this case you haven't tried anything Clear title
  21. 21. 21 UI for editing individual member data.. almost :( Person not so newbiew I'm working on a hack to edit individual member data. … Work in Progress Question (plone-users list circa 2003) State the issue In this case you haven't tried anything
  22. 22. 22 Is Rapido a dead end? Person not so newbiew I have two sites that are using a "product" built on rapido. I've stopped building new things with it as I don't know what the situation is with rapido at this point. Is it a dead end? Help me plan Question (plone community discourse circa 2019)Person in response I believe it is. There is a security problem with it and it's stopped being developed. I've switched to using themefragments... J
  23. 23. 23 Good Titles ● A good summary ● To enhance understanding
  24. 24. 24 Titles I've used ● Looking for a newsletter solution ● Docker and Plone for add-on development ● Is Diazo a dead end ● Is Rapido a dead end ● Sort by order position in parent for collections
  25. 25. 25 Where to ask ● This has changed over time
  26. 26. Structured Answers Third Answering Questions
  27. 27. 27 My thoughts on Answering ● Make it easy for your future self
  28. 28. 28 Why do we have plonecli and bobtemplates.plone? Person not so newbiew I still didn't grasp why do we have two packages that are intended to do the same thing. Did we have a discussion about plonecli here in the forums? Title with Optional emoji Actual Question Plone community discourse circa 2018)
  29. 29. You futue self will love you Last Keeping Notes
  30. 30. Keeping notes 30 ● Keep a Blog ● Share in the Forums Your future self likes these things Share what you're learning
  31. 31. 31
  32. 32. You know, for your future self! After Last Review
  33. 33. Let’s review the ideas 1. Avoid Revealing Questions 2. Structure your questions using (Title, Issue, What you tried) 3. Good Titles 4. Include code as code (not screenshots) 5. Share what you're learning 6. Your future self loves notes 33
  34. 34. A few more Takeaways 1. Think long term (you don't want to always need the answer in the next 5 minutes) 2. Sometimes the community moves 3. Spend time formulating your question a. Clearly state your problem b. Show that you're trying and have tried c. Share what you've tried d. Come back and share progress 4. If only for rubber duck debugging 34
  35. 35. I'm about to ________ Stop me if that's a bad idea 35 Hopefully You'll point out a better Idea too
  36. 36. 36 Thanks! Any questions? You can find me at @username &