Every time someone does a survey of "What does the Drupal project need?", Documentation comes out as one of the top results, even though we have a large amount of Community Documentation and a comprehensive developer reference with topic pages. One key problem is that for Drupal newcomers, the sheer amount of documentation is overwhelming, and what we have is somewhat lacking in organization, so they don't know where to start in order to learn how to use Drupal.
To mitigate this problem, the Documentation Working Group is proposing to create a new Drupal 8 User Guide, with funding (hopefully) from a Community Cultivation Grant from the Drupal Association.
We're posting the entire proposal below.... We'd love to hear from you between now and June 19, at which point we'll apply for grant funding. Please let us know:
- What do you think of the idea?
- Do you have any suggestions?
- Are you interested in being part of the team that develops the initial manual?
Note: June 19 has passed, and this post is now closed to comments. Thanks for all of the suggestions and offers to help! We'll be in touch!
This post contains a follow up to the proposal here as well as some information about how we're planning to proceed with this project based on all the excellent feedback we received: https://groups.drupal.org/node/472728
If you are interested in being part of the initial team, we have a few more questions for you, which you can either answer here or send privately to me or to any member of the Documentation Working Group:
- How much time do you have (July-September 2015)?
- Would you need funding, or will your employer sponsor at least part of your time?
- Are you interested in participating as a writer or editor (see proposal)?
- Can you provide a technical writing sample? (such as a link to a Drupal.org page that you wrote or extensively revised, or a technical blog post you wrote)
Here is the summary of the proposal; the complete text is attached as a PDF document:
The Drupal 8 User Manual provides quality documentation in multiple languages, aimed at helping “Newcomers” or “Learners” to become “Skilled” site builders or site administrators. It is a concise guide to building and administering a typical Drupal site. Therefore, it does not cover everything in Core, but also is not limited to Core modules and references contributed tools like Drush. The manual is written in AsciiDoc: a popular open-source, GPL-licensed, plain-text-with-markdown format. It can be displayed on *.drupal.org or within a Drupal 8 site, and it can be downloaded in PDF and other e-book formats.
The initial version is written and edited by a small group of people, for which funding is required. Ongoing maintenance (for example, for future releases) and further development are done by volunteers through issues and patches to ensure a review process. The Documentation Working Group provides volunteer maintainers for the tool chain and reviewers/committers for the ongoing maintenance.
| Attachment | Size |
|---|---|
| ProposalDrupal8UserManual.pdf | 220.35 KB |

Comments
Great Idea
This is a great idea. I hope you can find the funding.
One small suggestion - I know it's aimed at Newcomers or Beginners. But Drupal changes over time. Whatever is developed needs maintenance. I've been frustrated by outdated documentation.
I have some time - mostly in August and would be happy to help. (Maybe 30 - 40 hours). I'm retired so no need for funding.
Although I have 15 years experience working with Instructors at a College, I'm not confident in my technical writing skills. I think my editing skills would be a bit more beneficial. But let me know what I could do to help.
Grant
Maintenance, indeed!
Yes, you are right: it will need ongoing maintenance. The text of the proposal (which I've posted below in a comment just now) includes some discussion of that.
Thanks for volunteering too -- we'll be in touch.
Drupal programmer - http://poplarware.com
Drupal author - http://shop.oreilly.com/product/0636920034612.do
Drupal contributor - https://www.drupal.org/u/jhodgdon
yay
I'm excited to read the proposal and follow the work of the group, even help if I can. Super kudos ++ all that even without knowing all the deets yet.
More of the proposal
Here is some more of the text of the proposal; there are several Appendix sections in the PDF if you want even more details.
Main Idea and Requirements
Motivation
Quality documentation in multiple languages has been identified as a key need for the Drupal community. Another key need is for documentation that would help a “Newcomer” or “Learner” persona make the transition to “Skilled”.
This proposal would result in a concise Drupal 8 user manual, owned by the Drupal project and licensed consistently with other Drupal documentation, which would serve as a learning tool and could be translated into any language.
Requirements - Content
The proposed outline for the guide is in Appendix A.
Requirements - Functionality and Technical
The proposed manual:
Is exportable to PDF as a complete book, and possibly to other e-book formats. Ideally, it should also be displayable (in multi-page HTML format) within a Drupal 8 site and on a *.drupal.org site.
Stores its source in a Git repository (limited commit access and editorial control).
Platform/Technology
There are several options for the technology that could be used to create this manual and satisfy the technical requirements. The proposed solution is to write the manual using AsciiDoc (http://www.methods.co.nz/asciidoc/index.html), which is an open-source, GPL-licensed, plain-text-with-markdown format that is easy to edit and learn, and is used by major players in the commercial technical documentation industry, such as O’Reilly.
Once the source is written in AsciiDoc, it can be processed to various output formats, such as PDF, HTML, and many e-reader formats. It can also be displayed in a Drupal site, using the “AsciiDoc in Drupal” module (which is currently a sandbox project for Drupal 7: https://www.drupal.org/sandbox/jhodgdon/2265553). PDF and e-book document readers generally have search capabilities, and Asciidoc includes capabilities for automatically generating an index and table of contents (from notations in the source), and cross-references between sections. Editing can be done using any plain-text editor; the AsciiDoc in Drupal module also has a visual editor that can be used from a Drupal site, with preview capability.
The source for the manual itself would be maintained in a drupal.org project git repository.
The AsciiDoc in Drupal module would also need to be promoted to Full project status and ported to Drupal 8. The module is fairly simple (AsciiDoc tools do most of the work), so this will not be difficult. Some simple scripts may also need to be developed to process the source into the various output formats; instructions and sample scripts already exist in the AsciiDoc in Drupal module.
Getting it Done
Initial English Version
We are requesting funding from the Drupal Association for two or more writers and editors to produce the English version of the Drupal 8.0 manual. Given that much of what we would need to cover is already documented on pages under drupal.org/documentation, this job would be partly taking existing material and organizing it into a well-written and consistent manual, and partly writing new documentation if that would require less work for a particular topic. For each section, one person would be writing/compiling, and a second person would be editing.
Budget
Our estimated budget is 100 hours for writing/compiling/indexing, 40 hours for copy and technical editing, and 10 hours for a novice user to test it, based on an approximately 50 page PDF book with an index, and with screen shots included where appropriate. The plan would be to do the novice user testing with volunteers at a sprint, for instance at a DrupalCon.
Translations
The language communities for Drupal would be expected to either translate the manual via volunteer labor, as they now do for Drupal Core and Contributed modules and themes, or request funding from the Drupal Association to translate it.
Ongoing Maintenance
Since the manual will be a standard Drupal.org project, volunteers will be able to file issues and make patches, for smaller updates (like fixing bugs, typos, etc.). They could also contribute new sections, so that the manual can expand over time, although this will need to be managed carefully. The Maintainers will review/commit patches on a volunteer basis, just like other Contrib modules. The Documentation Working Group will provide volunteer maintainers for the tool chain, including the AsciiDoc in Drupal module and any necessary scripts.
For larger updates, like for the 8.1.x or 9.x versions of Drupal, we would probably need to seek funding again, depending on how much of the manual needs attention and updates (i.e., depending on how different the installation process and administrative user interface is between versions).
Drupal programmer - http://poplarware.com
Drupal author - http://shop.oreilly.com/product/0636920034612.do
Drupal contributor - https://www.drupal.org/u/jhodgdon
Drupal 8 Manual
It makes sense to me to have the manual, especially if it is meant for beginners as well, in more than one format. One could be in Drupal webpages itself, which could be useful for making examples clear. This is also easier to maintain - because the overall structure for posting changes to Drupal.org and other sites is in place, and can be done in small approved increments.
But this is not a user friendly approach. The other approach is a book, in electronic or print form. It would involve taking electronic content, saving it out as a .pdf, or more likely formatting it properly to a new medium, like InDesign, so it can be saved as the next version of an actual book - with updated indexing, table of contents, and so on.
The biggest question is who the manual is for. Existing developers are used to quickly fishing for the bit of information they need from internet articles and posts.
If the goal is to make a more user friendly learning system to non-engineers and programmers - then putting it in a user friendly format, translated in to non-tech speak becomes a whole other beast or project.
I am on board for a part of this project - my current primary work is not.
My experience includes decades of tech support, including a lot for universities and publishers. I have published a lot of technical materials, research journals, conference guides, and similar projects. I use InDesign for many of these projects.
Stephen Grettenberg
Print, PDF, etc
"The other approach is a book, in electronic or print form."
There is a module for that.
petermoulding.com/web_architect
A Module for that...
I expect there are many modules for posting webpages and text to .pdf and print - with varying degrees of readability, indexing, formatting, font choices, consistency, scaled illustrations, contrast, TOC, and so on.
Maybe even good enough. It would be interesting to make a comparrission of a sample of the web manual in each, and see which module(s) do it best.
I suspect, when that is said and done, if you want a good looking beginner-user friendly book, you put it into a program that makes books - perhaps InDesign, perhaps another one.
Again - who is the audience? Techs? Some business owner who is their own tech reading a manual in print or on his tablet in his living room?
I believe the question of how to best present, or the combination of best ways to present, the manual to beginners stands...
Stephen Grettenberg
Audience: Site builders and side admins
The audience are site builders and site admins with the goal to help new-comers and beginners to become "skilled".
See https://groups.drupal.org/node/470648#comment-1107313
Site builder and Documentation WG member
+1
+1
Underestimating initial scope
I love this idea. I know the Symfony project's downloadable ebook (https://symfony.com/doc/2.7/book/index.html) and Magento project's user guides (https://magento.com/help/documentation - bottom of page) were major helps in getting started with using the software and would love to see something similar for Drupal.
Just one comment about the size and time estimate cited in the proposal. I believe 50 pages and 150 hours is way underestimating the scope of the project....even just as a start. 30-50 pages could easily be devoted to just Views alone. 200-250 pages would probably more inline as a guestimate for an initial administrators/site builders ebook.
Thanks for proposing this!
And 200-250 may prove to be
And 200-250 may prove to be low, IMO.
As you point out, it could be
As you point out, it could be super easy to write an entire 50 page manual just on the views module alone. And for that reason, one of the challenges that we'll face with writing this guide is limiting scope. But, I also think that we have a better chance of succeeding at getting something written if we try and take it on in smaller chunks and not feel like we have to commit to covering everything you can possibly do with Drupal on the first pass. If it's successful, we can always come back and extend the views portion, or even write an entire guide for views that dives into all the nitty-gritty details.
The idea here would be to cover only as much as is necessary to complete the task in the user guide, and then to link to existing documentation where available for further reading on any particular topic. For example, the user guide might walk through an explanation of what the use-case for views, and the demonstrate building a view that can be used to replace the front page. Then link off to other existing documentation for anyone that wants to take their views knowledge further and also build an RSS feed, or whatever the case may be.
We're also hopeful that for some of the content of the guide we'll be able to pull in already existing content from the Drupal.org handbook and not be writing everything from scratch. Though doing some kind of content audit and figuring out what can be used and what needs to be written would have to be one of the first tasks to take on after developing an outline that shows what the guide should contain.
All of that said, yeah. 150 hours might be a bit low. Ideas about how we could better estimate the amount of time it would actually take to accomplish something like this are more than welcome.
I tend to agree with this.
I tend to agree with this. When we first moved over to Drupal, I found the sheer amount of information out there to be daunting and would have loved a simple 50 or so odd page manual just telling me how to do the most common/basic tasks.
Also I would love to help out, preferably as an editor and/or rewriting what's already out there. I can write from scratch if needed, but I am particularly good at editing for the 'regular' reader. I have a very odd combination of tech skills as a Drupal administrator for a university, where I also train other folks in using Drupal as content creators/editors, and an MFA in creative writing, that I think would prove particularly useful.
ETA: I also agree that it should be stand-alone/printable.
Good points about keeping it
Good points about keeping it to smaller chunks for better success. My one issue with linking to existing content is when I download an ebook, it's so I can read it offline. I can see including links for further study at the end of chapters but if turns into the bulk of a chapter being links to pre-existing content, it kind of defeats the purpose of having an ebook. I would like to see a User Manual that can live on its own like the Symfony and Magento projects without depending on tons of outside links to fill basic gaps. That being said, if pointing to pre-existing content is the way to get the project off the ground, I'd rather that than nothing.
Stand-alone
It is definitely intended to be stand-alone in what it covers. I think the links would only be for "more information" parts.
Drupal programmer - http://poplarware.com
Drupal author - http://shop.oreilly.com/product/0636920034612.do
Drupal contributor - https://www.drupal.org/u/jhodgdon
Front-End Fundamentals might be a good reference
A really good example of a brief, cursory overview of a huge subject is Front-End Fundamentals from Joe Fender and Carwin Young of Lullabots. Several books can and have been written on each of the technologies covered in that book.
As a primarily front-end developer myself, I was mostly kinda familiar with everything they covered in the book. What I loved most about it was that, instead of diving into a bunch of how, the authors instead focused on why, followed by just enough how to get a taste. It really helped clarify the differences and the advantages of everything they covered and put those things in context with the others. I'm not aware of anything else quite like it.
Drupal is huge. Views is huge. Panels is huge. Plenty of good material exists on each of these but a succinct "Why should I care?" and a path forward is hard to find.
Page count
While I agree that a book that really does justice to Views and the other topics would be longer than our about 50 page proposed book, I don't think we can really aim for much more that that, given that this will be written by volunteers with a probably fairly small grant budget, and we'd like to actually get it done. ;)
I also do really think that we can provide a useful level of detail in about 50 pages. What we're aiming for is not to be comprehensive, but to take people who know nothing about Drupal and expose them to enough information, in an organized way, so that they could install and build a basic Drupal site, plus the background and terminology they would need in order to be able to find more information on drupal.org or the Internet for their specific project.
One reason I think 50 pages is reasonable is that I've taught Intro to Drupal workshops several times, using this curriculum (or some very similar variation):
http://poplarclass.com/steps-spokane-2011
This curriculum can be learned in a one day or three evening workshop (hands-on), and the step-by-step guide prints out in 7 pages plus the background information in a couple of Power Point slides... That seems like it would fit in a 50-page book, and I think it's about the level of detail that would be appropriate for this guide.
Thoughts?
Drupal programmer - http://poplarware.com
Drupal author - http://shop.oreilly.com/product/0636920034612.do
Drupal contributor - https://www.drupal.org/u/jhodgdon
I agree strongly with this.
I agree strongly with this. If we are going to do this we need to make sure we estimate the scope well.
Owner and Lead Consultant
Denver DataMan
This is long over due. ++ I
This is long over due. ++
I hate to add to the scope and complexity of what you are already trying to do, but I'm going to because I think it is that important.
Please consider adding some basic information about the Drupal project's licensing policies to the content that will be translated.
Many of the issues the LWG ends up dealing with are with users who speak English as second language. Translating professionally written documentation will make it much easier to for non-English speaker to get started with Drupal, but I think it's equally important that we translate the Drupal policies regarding GPL licensing as well. I'm not asking to include or translate all of the current licensing information. Much of that is specific to developers, but I'd like to see enough information so that someone going from newcomer/learner to skilled site builder/admin also understands the basic principles of open source licensing that makes the Drupal project possible.
While the Drupal Licensing FAQ are some of clearest explanations of any open source project (even WordPress refers to it), I don't think non-english speakers were really taken into account when wording our answers. Creative Commons does an amazing job of translating the human readable version of their licenses into multiple languages, but if you translate something like http://creativecommons.org/licenses/by-sa/4.0/deed.ja back to English using Google and compare it to the original English you can see why it is so important to have licensing information translated by real people. If I looked at using a project with a phrase like "As long as you are following the terms of the license, it can not Licensee revoke these freedom" in the license, I don't think I'd be able to say that I understood my rights under that license. My guess is machine translated versions of Drupal's licensing information becomes equally confusing.
As we export Drupal to more of the world, we should be exporting the Drupal community's respect for the GPL as well.
Good idea!
Yes, the license is very important. I think you are right, at least the basic ideas of the license belong in the guide, and hopefully we can get the LWG to review what we put in there?
Drupal programmer - http://poplarware.com
Drupal author - http://shop.oreilly.com/product/0636920034612.do
Drupal contributor - https://www.drupal.org/u/jhodgdon
Security too
Your post also reminded me we should add Site Security as a topic as well, and possibly get the Security team to review that (and/or base it on https://www.drupal.org/security/secure-configuration
Drupal programmer - http://poplarware.com
Drupal author - http://shop.oreilly.com/product/0636920034612.do
Drupal contributor - https://www.drupal.org/u/jhodgdon
great idea, but translations...
I think this is generally a great idea. There are several places, where the translatability of this is highlighted as a differentiating factor. However, how would that technologically work is not addressed. How would localize.drupal.org parse that AsciiDoc? How would images be swapped for translated screenshots? Where would those screenshots be hosted? Localize.drupal.org does not allow for or handle image uploads as translations for example, that is totally outside of the realms of the service. If the manual is to be translated to Spanish, I don't think you would want to see English screenshots there? Especially where it says "look the installer is in Spanish".
Not sure...
Does localize.d.o handle .txt files either? We'd need to get the file(s) translated, and yes also the screen shots.
My guess is that we'd probably want to just create a separate directory within the repo for each language, with separate patches for each, and maybe later on see about localize.d.o.
Drupal programmer - http://poplarware.com
Drupal author - http://shop.oreilly.com/product/0636920034612.do
Drupal contributor - https://www.drupal.org/u/jhodgdon
does api.d.o do txt?
Asking wether l.d.o support txt is the same as does API.d.o support txt? Both parse specific things about the API that they support, so the answer on both counts is no I believe. If we "teach" l.d.o to reach txt files as "one of the APIs supported" then the answer is yes. In that case the granularity of the parsing should be defined and then you still have this screenshots question. So I think doing different git branches in the project is still more straightforward (as opposed to trying to shoehorn this into l.d.o).
Idea for translation
So I think what I need to do is make the "AsciiDoc in Drupal" module support translation there.
I need to set up another demo site ASAP so you can see what I'm talking about... but the module as it is now supports having a split screen editor where you can edit the source (with some nice buttons for inserting headers, lists, etc.) on the top half and see the AsciiDoc output on the bottom half.
I think what would be useful for translation is to have an additional split, where you can view branch '8.x-en' while editing '8.x-es' or whatever.
I will have to try this out, but I think it would work. That would mean that the i18n teams would need to go to drupal.org or *.drupal.org (wherever we end up putting this) to edit their version of the user manual, the same place anyone would go to contribute.
Actually, we could conceivably put the AsciiDoc in Drupal on localize.drupal.org come to think of it... it wouldn't be using the same interface as translating everything else, but we could definitely have links etc.
Anyway... let me see what I can do.
Screen shots would still need to be made for each language, output as PNG files, and added to the repo.
Drupal programmer - http://poplarware.com
Drupal author - http://shop.oreilly.com/product/0636920034612.do
Drupal contributor - https://www.drupal.org/u/jhodgdon
WalkHub screenshots
Translatable Walkthroughs are something we can do fairly easily with WalkHub. That would mean we could generate up-to-date screenshots in as many languages as the Walkthroughs get translated in, automatically with the screenshot service. Translating the screenshots could be as simple as adding a language parameter. We've even started making Walkthroughs for D8, at the Dev Days in Szeged (they need some refreshing because that's a while ago, but that is feasible)...
I would love to be able to contribute this to the community.
--
Check out more of my writing on our blog and my Twitter account.
Walkthrough based on the D8 User Manual
Thanks kvantomme,
I've been playing with Walkthrough for quite a while now, and it could be a good use of the User Manual.
Our idea of the User Manual is that it very much starts at the beginning: before the installation to guide beginning site builders through the whole process, tools and configurations, so before they even have a site on which Walkthroughs could be displayed.
But if the later sections could also be used to set up as walkthroughs that are consistent in wording, issues covered etc. then that would be a great additional re-use of the effort that goes into this Manual.
Site builder and Documentation WG member
For making screenshots I think
I think Kristof was referring to using Walkthrough to make screen shots for inclusion in the manual, right?
At least, that is what I had thought. ;)
Drupal programmer - http://poplarware.com
Drupal author - http://shop.oreilly.com/product/0636920034612.do
Drupal contributor - https://www.drupal.org/u/jhodgdon
If I understand...
So if I understand what you're saying here... I think:
The idea would be that we'd identify what screenshots we need for the English language version of the manual, as we're writing. [Note: I think in most cases we would want the screen shots to just show parts of pages, not entire pages, from the site, and in some cases annotations on screen shots can be very useful -- can WalkHub do that?]
We'd create a "walkthrough" on WalkHub that would hit all of those pages. The tool would allow the screenshots to be generated by clicking a button (??).
Then when it was time to do the Spanish version, we'd be able to generate all the screenshots with another click of a button (??).
Or... can you explain how it would work? And can WalkHub generate screen shots that are only part of a page? What about annotations, like circles or arrows or text, which are quite useful in manuals?
Drupal programmer - http://poplarware.com
Drupal author - http://shop.oreilly.com/product/0636920034612.do
Drupal contributor - https://www.drupal.org/u/jhodgdon
further explenation
so I think we could use this for both use cases:
WalkHub doesn't do partial screenshots, it only does full screens with call out balloons on the relevant item. That said if this is a hard requirement we could do a custom crop of those screenshots to cut out unnecessary parts of the page. There are other tools that allow you to only capture the element you interact with, but this removes a lot of context, so a full screen with a call-out, or a cropped screenshot is better I think.
We can schedule screenshots, so that they are retaken at a specific time. We also have a hook that regenerates screenshots, so that it can be automatically triggered. On each Walkthrough there is also a button to regenerate the screenshots.
We would need to implement localisation of Walkthroughs, but I can commit to having that done this summer. For each of the languages we would need the description text, that goes into the bubble.
This is an example Walkthrough that explains how to add a new language in Drupal 7: http://walkhub.net/node/2564
--
Check out more of my writing on our blog and my Twitter account.
Example
This is an example Walkthrough for a D8 process. It has the widget on top, that shows the whole process, and the the individual screenshots at the bottom.
--
Check out more of my writing on our blog and my Twitter account.
I like the idea for the
I like the idea for the content, but I'm generally -1 to rolling yet-another-drupal.org-specific solution for an already solved problem. I suggest ReadTheDocs and markdown. You can version the documentation (both in terms of committing changes to the documentation, and in terms of maintaining different sets of documentation for different versions of Drupal), translate it, export to PDF, and the entire toolchain is open source. It's all built on mkdocs, so if we wanted, for instance, epub or mobi support in the future, it's as simple as opening a PR. Note that if the lack of epub/mobi support is a deal breaker at this point, I'm happy to work on it. There are a number of existing python libraries that will handle the heavy lifting.
Note that while readthedocs is typically used with Github, we don't have to do that. You can point the readthedocs project at a Drupal.org git repo and it'll work just fine. Maybe you can even talk the infrastructure team into setting up a webhook so that the documentation rebuilds whenever you commit to the repo.
--
Cameron Eagans
http://cweagans.net
reST
ReadTheDocs uses reStructuredText (reST), which is very similar to Markdown, but still a bit different. That said I think it's worth to at least consider using the ReadTheDocs infrastructure, it's free and open source and I think there are a number of great synergies with the WriteTheDocs community.
We could still build a deliverable that gets published on Drupal.org.
--
Check out more of my writing on our blog and my Twitter account.
ReadTheDocs is no longer
ReadTheDocs is no longer limited to just reStructuredText and hasn't been since Fall 2014. See https://read-the-docs.readthedocs.org/en/latest/getting_started.html#in-...
--
Cameron Eagans
http://cweagans.net
I'll take a look
I'll take a look at ReadTheDocs as an alternative.
But I'd like to point out that AsciiDoc is not Drupal going off and doing its own thing. The reason this proposal suggests AsciiDoc is that O'Reilly Publishing uses AsciiDoc as its current authoring tool (I wrote my programming with Drupal book using AsciiDoc). It's very easy to deal with. I don't know if other publishers use it, since I haven't worked with other publishers, but O'Reilly is not exactly a small user, and the system does work well.
It also only took me a very small number of hours to make my AsciiDoc in Drupal module that allows the AsciiDoc to be edited on a page within a Drupal site, and the output to be displayed within a Drupal site.
Drupal programmer - http://poplarware.com
Drupal author - http://shop.oreilly.com/product/0636920034612.do
Drupal contributor - https://www.drupal.org/u/jhodgdon
AsciiDoc: Scott Chacon "Living the Future of Technical Writing"
Some further reading on AsciiDoc:
Scott Chacon:
"Living the Future of Technical Writing - The amazing adventures and final toolchain of Pro Git, 2nd Edition"
https://medium.com/@chacon/living-the-future-of-technical-writing-2f368b...
Frank
My LinkedIn profile
ReadTheDocs: Drush API documentation
The Drush API documentation is already done with ReadThe Docs:
http://docs.drush.org/en/master/
Frank
My LinkedIn profile
I knew that it was either on
I knew that it was either on the roadmap or already implemented. thx for the correction :)
--
Check out more of my writing on our blog and my Twitter account.
Yes, absolutely.
I won't belabor the point about how overdue this is, but it is.
A "broad strokes" overview of key topics is a great start, especially for newcomers. My understanding is that the goal is to help people gain general familiarity, and provide them with ample direction to learn more. ~50 pages still seems a bit low to me, but if we're not including screenshots and diagrams then it seems doable.
I would suggest a "disarming" introduction for newcomers, to dispel concerns and misconceptions common to non-Drupal site-builders and users. I'm sure I'm not the only one who sees the cringing and skin-crawling when I say "Drupal" to a WordPress site builder, or later, the wonder in their eyes when they see views and panels (and rules). I think we should face these concerns right out of the gates. "Why", then "how".
I'm sure it goes without saying that the Drupal community itself should be covered. [remembering the DrupalCon song from LA] "Come for the code, stay for the community..."
Also, a D7 version adapted from the same document would be outstanding. I would be much more able to help with that than D8, which I'm not fully ramped up on just yet.
Interesting ideas
The Drupal Association is hard at work on the "why" part of marketing Drupal, and there are now quite a few pages on Drupal.org about why you'd want to adopt Drupal. While I think an overview of "what" Drupal can do should be part of the "intro and overview" section, the "why" is not really documentation but marketing.
Regarding the community, this is aimed at being a user guide for how to use Drupal to build a site. I agree we should mention OSS and the community in the intro to Drupal section, but I don't think it's appropriate to belabor the point, again because this is a user manual.
Regarding Drupal 7... Once we get the Drupal 8 version written, if someone wanted to take on porting it back to Drupal 7, I guess that could be possible, but I think by then that Drupal 8 will be out (that's the idea anyway), so hopefully no one would be coming into Drupal and planning to build Drupal 7 sites at that point. Right? This will be a user manual for real newcomers...
Drupal programmer - http://poplarware.com
Drupal author - http://shop.oreilly.com/product/0636920034612.do
Drupal contributor - https://www.drupal.org/u/jhodgdon
Clarifications and...
I just wanted to clarify that I think we're on the same page about the "why" and the community references. I wasn't implying we should dwell on these and a concise passing reminder is fine. I was just trying to reinforce the notions, to better drive Drupal adoption by staying "on brand" and "on message" at these critical new customer touch points, pardon the parlance.
With regard to choosing D7 or D8, my guess is that's really dependent on the contrib community. For example, I'd love to be only deploying D8 sites right now, but I'm working on D7 sites that rely heavily on contrib modules that haven't even seen a patch in 2-3 years, and have no posted mentions or downloads for anything related to D8. I suspect that until the contrib community better catches up with D8, there will still be many users, even newcomers, who will be forced to stick with 7.
I would also posit that if there was a D7 document like the one in this thread, it could be written in such a way that it also laid the groundwork for a more painless D8 migration:
"Here are 26* simple, practical steps you can use when building your D7 site to provide for a smoother migration to Drupal 8."
*or whatever
Videos
This sounds amazing. I wanted to point to a funded Kickstarter project by OSTraining. They are going to create 50 free and downloadable Drupal 8 training videos. See: https://www.kickstarter.com/projects/stevebure/drupal-8-training-videos-...
In the campaign you can see the list of topics they are planning to cover in the videos. Would it be worthwhile to attempt to integrate at least some of the manual with some of these videos on corresponding topics?
Joe Saylor
Drupal Association
Integrate?
I'm not sure exactly what "integarate" would mean, but this sounds like a great project... maybe we should seek Kickstarter funding as well.
This manual is meant to be a stand-alone text-with-screenshots manual. Some people learn well from that; some prefer videos. And of course there are tons of other resources out there, from commercial books to commercial training to (hopefully soon) these videos... we can't mention them all but we should definitely make these prominent on Drupal.org.
Drupal programmer - http://poplarware.com
Drupal author - http://shop.oreilly.com/product/0636920034612.do
Drupal contributor - https://www.drupal.org/u/jhodgdon
Very Interested
I am very interested in helping with this. I have limited time that I could volunteer but would be very interested in trying to find some funding to support this.
On my blog (http://denverdataman.com/blog) you can see lots of writting samples and I would be glad to share some of the manuals that I write on a regular basis.
Owner and Lead Consultant
Denver DataMan
+1 more in favor
I would also love love love to see this happen. I think placing the emphasis on creating a discrete, task-driven user guide would address an important gap in our existing docs, as you've articulated really nicely in the proposal.
kvantomme and I have been working together on a Drupal documentation service for the last months--the upshot of which is that we've a lot of time this year working on and talking about exactly this sort of documentation for our community. We'd love to be involved--I'll drop you a PM with the answer to your questions above.
Thanks for this (and all that the docs team does)!
Kelly O.
A couple weeks ago at
A couple weeks ago at DrupalCon Los Angeles I, along with Amber (@amberhimesmatz) Matz, and Greg (@heyrocker) Dunlap gave a presentation titled, "Lets Talk Documentation". Which talks a bit about this proposal, as well as a number of other ideas for improving documentation on Drupal.org. You can watch the video of the session and much of the conversation that ensued after on the DrupalCon Los Angeles site. I think it provides some good context for this proposal.
I think one thing to keep in mind here is that we're not proposing to get rid of the existing community documentation and related tools. But we would like to see some of the content that currently exists in the handbook managed in a different, more curated, way. I don't know exactly what that looks like, but we would eventually need to figure out how these two live together. And, how we deprecate existing handbook pages in favor of the proposed user guide.
I can also see a future in which there are additional guides that are written in this format. Like a module developer guide, and themer guide. Which would be amazing.
But, there will also always be a need for documenting modules in Contrib, best practices, and all kinds of other things that don't lend themselves to this proposed format quite as well.
Going back to the presentation linked above. In that presentation I tried to outline some of the pain points we're experiencing in the documentation efforts right now. And here's how I think adopting an approach like this, for at least the really high-touch stuff, could help to solve some of those problems.
With an approach like this, both as it's initially written, and as it's maintained over time, updates to documentation are reviewed for style, voice, accuracy, and grammar. And probably a lot of other things too.
Curation helps to ensure that we're not missing important topics or pages and that content is presented in a way that flows appropriately. Right now, we have a tendency to write documentation for whatever thing we happen to be working on the time and then figure out how to shoe-horn it in wherever it seems to fit the best. This leads to outlines that don't have any natural progression to them, and in a lot of cases are missing important steps all together. Not a great first impression.
Documentation can be branched for different versions of Drupal core. Right now we struggle to identify which pages are relevant to which versions of Drupal core. Sometimes there are two pages that have almost identical content. And in other cases we've got one page with information for 2 or more versions of Drupal on the same page and it can be challenging to figure out which version the content applies to.
Personally, I think one of the biggest wins to using VCS system for documentation like this is that it allows us the opportunity to discuss changes. Right now, it's easy enough for anyone to click edit and change something. But this can be a hurdle for people who are not 100% confident in the change. And it can also be a really frustrating experience to come back to a page that you've spent hours working on and find that someone has completely changed it.
The fact that this proposal is seeking to get some sort of funding, and starting with that in mind instead of just trying to once again create something purely on the goodwill of others is an important part of this that is easy to overlook.
I could go on for a lot longer about the potential benefits of something like this, but I'll leave it at that for now.
I also wanted to recognize that ideas like this have been brought up before, and in the past I've been a somewhat vocal proponent to the idea of removing the edit button from documentation. But over the last year or so I've started to realize that I was maybe just holding on because change is hard. The truth is, if we want to create better documentation, that eases the learning curve, and gets more people using Drupal, we need to apply the processes required to make sure our documentation is of the highest quality.
Needless to say. This gets a big +1 from me.
And, I'm also very interested in helping out with the creation of a user guide. Both because I think it would be great to have, and because I'm curious to see how it goes and if this ends up being something that can be applied in other areas as well.
I have quite a bit of experience working on Drupal documentation (and I'm part of the DocsWG), and as a trainer for Drupalize.Me I've had lots of opportunity to teach people Drupal and related things. Doing so has given me a pretty good handle on what it's like to be new to Drupal, and also where people tend to get hung up in the learning process. I think that I'll be able to work on this without the need for additional funding as I can most likely get at least some work time to do so and can volunteer some time as well.
All this enthusiasm!
It's really great to see everyone so enthusiastic about this idea!
I've been revising the proposal (slightly) with the suggestions here, and I'm thrilled that so many people are eager to help out.
Keep the suggestions and "Me too!" responses coming... we'll be in touch in two weeks or so with next steps.
Drupal programmer - http://poplarware.com
Drupal author - http://shop.oreilly.com/product/0636920034612.do
Drupal contributor - https://www.drupal.org/u/jhodgdon
Great idea!
Great idea!
Sounds exciting and I am open to join my hands in this initiative.
Sree
Interesting!!!
Hi,
I would be excited to be a part of this Drupal 8 initiative. Please find my inputs below (italics):
- What do you think of the idea?
As a co-organizer and active member of Drupal events in India, I came across loads of queries that inquires about User Guides in Drupal 8.
- Do you have any suggestions?
Definitely, we will keep adding suggestions so as to achieve a productive and clean guide.
- Are you interested in being part of the team that develops the initial manual?
Yes.
- How much time do you have (July-September 2015)?
15-20 hours per week.
- Would you need funding, or will your employer sponsor at least part of your time?
Possibility of getting employer sponsorship of my time is greater; though I would like to discuss with them in order to have concrete understanding on this.
- Are you interested in participating as a writer or editor (see proposal)?
Both; however, I would prefer be contribute as a writer.
- Can you provide a technical writing sample? (such as a link to a Drupal.org page that you wrote or extensively revised, or a technical blog post you wrote)
Yes sure. Here we go:
Other Blogs and Books:
Surendra Mohan
Drupal Consultant | Architect | Author | Trainer | Blogger
http://www.surendramohan.info/
This is fantastic.
This is a great idea! I am really keen to be involved.
I can commit to 4 hours a week.
I have a supportive employer, so I can likely do some work during paid time, and some during volunteer time. I won't need any funding.
One question I have is: will employers be credited (in the manual, or in some other way) for providing paid time? That makes it easier for me to justify.
I would be happy to do either.
Here's a link to my Master's thesis: https://klena02.files.wordpress.com/2010/09/documentorientedpersistencew...
Agree, and willing to help
I agree, and I'm willing to help. I need no funding, but I can only commit 8-10 hours per month, so I would probably serve best on editing, proofreading, testing, or writing small self-contained chunks.
Dripdocs team contribution
I discussed the manual with my colleagues Diana, Kelly and Laura and we really would like to contribute to this effort. We could sponsor both Diana's and Laura's half-time (20h/week) involvement in July and August (there are a few holidays for both).
--
Check out more of my writing on our blog and my Twitter account.
+1 (from the DripDocs team)
I'm Diana from the DripDocs team, I find this initiative amazing and would like to take part.
As a technical writer at Pronovix I write user documentation for our client projects and products. I'm experienced in structured, task-based writing.
I help maintain the documentation of WalkHub and the Brightcove Video Connect modules on drupal.org.
I occasionally write for Drupal Watchdog and the Best Practices newsletter of the Center for Information-Development Management.
Please see some of my posts on our blog.
As a member of the DripDocs and WalkHub teams, I can also help with creating and editing walkthroughs.
Great idea, concerned too about length
+1 from me, this is a great idea and would love to participate in the testing somehow.
As others have mentioned, one of the concerns I have is how lengthy this manual could potentially be and agree with @eojthebrave that we have to be really careful and only include that content that allows the user to complete the task described.
What about a shorter, glossary like quick-read? Honestly, the attention span people have is so short, a high level doc (in addition to, instead of, that this one starts as?) might also be something to think about. It would be awesome to be able to point to a shorter guide when providing training to clients. I think our clients would really appreciate that.
Hopefully when this is
Hopefully when this is complete we'll be able to point people to a table of contents of sort that outlines all the various tasks/concepts that are documented in this guide. In theory you could then point a client at that TOC, and maybe spend a few minutes going through it with them to help them understand which sections of the guide are relevant to them, and their site.
If the documentation is broken up into discrete tasks, like for example "Sign in to your Drupal account", that are able to stand on their own. Then in theory you could point someone right to that task and they could complete it without having to necessarily read the entire manual.
This idea also makes me think of cliff notes. And is a good reminder that a lot of people are going to just jump to the bit of information they need (if they can find it) and not necessarily read the book cover to cover.
Bundles of tasks
I love the idea of being able to point a client to a specific task, that would be very helpful. What would be even better would be to point them to a bundle of specifically chosen tasks... a custom user manual, almost! I don't think we should get into that kind of complexity here though, but it did pop into my head as an idea.
Forgot to say: the TOC link
Forgot to say: the TOC link would be absolutely something that would be beneficial to point people (read: clients) to as well. And maybe just highlighting those tasks that are appropriate.
Yes
I do think this is the way the project is going to have to be structured, if beginning users are your target audience. I know someone mentioned above that he would like to be able to read the entire document offline, but given the scope of the information, I don't think that's going to be possible, at least in the beginning.
When you're structuring a project like this, you have to be very stern about keeping the intended audience in mind and not let yourself get sucked into trying to create something for everyone under every circumstance. Once you get the basic documentation in place, then you can broaden your target in later phases.
I do agree, however, the cleaning up the existing documentation is going to be important to the success of Drupal documentation as a whole.
Great idea!
I expect I'm the target audience for such a manual. I'm not a programmer - I'm a software generalist with a background in support and training. Last year, I essentially taught myself Drupal, with the aid of some online courses, and built our company website in 7. The pain is still fresh. I'm now working on rebuilding it in a test site to learn 8, and struggling with it.
The biggest problem I faced was finding information on the Drupal website. It's not at all clear where guides are, and the search function on the site is not helpful. Having a consolidated beginner's guide in one obvious, easy to find location would be a godsend.
With the time and funding limitations as described, I think you have to look at a high level overview of the "here's where you start, here's how it's organized, and here's where you can find more information" type. From my experience as a software trainer, you can't throw an overwhelming amount of information at someone all in one chunk and expect them to digest it.
I would be happy to help, using my spare time. I have documentation samples I can submit, and I have also edited the work of trainers I've supervised. (I worked for a moderate sized law firm with an in-house development staff, and the training department, which I eventually supervised, wrote all the documentation for the internally developed software, as well as firm-specific documentation on outside software.)
I'm now with a non-profit that offers fundraising consulting services. I'd like to suggest that something like a Kickstarter campaign might just be a great idea. One of my first thoughts on reading the proposal is that I'd like to contribute money to it, and I bet there are others who would too. And don't disregard small contributions. Enough of them amount to a lot of money.
Take out the trash first (the trash that's already there)
This discussion is all about building a brand-new, sparkling set of documentation for Drupal 8--on top of a mess of outdated and jumbled documentation for Drupal 7, 6, and whatever else is still there from before.
The biggest problem that gets in the way of people learning from d.o documentation is having to wade through various pages that may be no longer accurate because new functionality has rolled out.
If we turn at least half of our attention toward the existing Drupal 7 documentation to clean it up, we will accomplish two things: provide the support that new site builders will need for the next year or two, and provide a model for the new Drupal 8 documentation using the existing content. No lore ipsum here!
Ted Spencer
Addison Spencer Consulting LLC
Is there a way to get a list?
I was trying to figure out an easy way to export a list of all documentation pages on d.o. I'm curious to know what the currently listed page statuses are (my guess is that a lot of stuff is marked either Incomplete or Needs Updating). It would also be interesting to be able to see the analytics data. Fixing or eliminating the stuff that is wrong or badly written would help a great deal.
Separate issue...
Yes, improving the existing docs on Drupal.org would be good too, but it's separate from this proposal... so I'll add a brief comment here and then if you'd like to discuss this topic more, please either start a new discussion page here or file an issue in the Documentation project on drupal.org. Thanks!
So... There is a Documentation Management page that is helpful for finding pages on Drupal.org to work on. See
https://www.drupal.org/contributor-tasks/edit-documentation-page
and
https://www.drupal.org/node/2275989
for more information.
Drupal programmer - http://poplarware.com
Drupal author - http://shop.oreilly.com/product/0636920034612.do
Drupal contributor - https://www.drupal.org/u/jhodgdon
Thanks!
I have literally been looking for that for months.
Great idea. Now to make it happen
I think a 50 page PDF (and related other versions) is the max that an intro document, with installation instructions, should require or have. The more too read, the less gets read.
Mention views, module creation, etc., but don't discuss them any more than necessary to introduce the novice to what these are, when and why they should be used, and where to find out more about them. Anything more than that detracts from the introduction and implementation of the basic Drupal that I think must remain the focus of this manual.
Even multilingualism, which is often required (I work in Canada on a site in English and French) and therefore must be part of an initial install, should be handled elsewhere. Introduce it, indicate it must be addressed from the outset when installing a site, and point to more detail.
In other words, focus on the main task of installation.
Step one is to build an outline.
I'd love to help (and I don't need any money). I have lots of experience writing and editing, have authored books in the past (but none in the last 20 years), and am a retired IT manager now acting as a webmaster for a small not-for-profit association (small, yes, but they hold a large annual conference, do research, and publish a science journal. i.e., lots of quality material goes up on their site.).
This is key
"Mention views, module creation, etc., but don't discuss them any more than necessary to introduce the novice to what these are, when and why they should be used, and where to find out more about them. Anything more than that detracts from the introduction and implementation of the basic Drupal that I think must remain the focus of this manual."
Keep thinking overview. What, why, where, how, etc. Excellent point, well-stated.
Outline
I started an outline node - https://groups.drupal.org/node/470913
I have not put any content in this yet. I will try and work on this a bit today but we have a node.
-Steve
Owner and Lead Consultant
Denver DataMan
Updated ...
Thanks for initiating the outline node.
I have added few more possible points to it for a basic user.
Sree
That's a good starting point,
That's a good starting point, Steve and ofcourse thanks a ton for this!
I have modified a couple of points and added a few more to the list; hopefully in a formatted manner.
Surendra Mohan
Drupal Consultant | Architect | Author | Trainer | Blogger
http://www.surendramohan.info/
I was able to add a bit more
I was able to add a bit more to the outline today. Would love to get more feedback and discussion on this.
Owner and Lead Consultant
Denver DataMan
Outline
I started an outline node - https://groups.drupal.org/node/470913
I have not put any content in this yet. I will try and work on this a bit today but we have a node.
-Steve
Owner and Lead Consultant
Denver DataMan
Planned process
Thanks Steve for already getting involved in this.
As Docs WG we want to make the process of developing this D8 User Manual as transparent and inclusive as possible.
Therefore we are currently - untill 19 June - asking for comments and feedback on the proposal, and we are glad to see that there is such an interest and so many constructive ideas. This will be integrated into an updated proposal, as a basis for the initial manual.
At the same time, we also invite anybody who wants to contribute to say so - and I'm quite overwhelmed to see how many people already offered their contributions in the last few days. Again, we keep this call open untill 19 June, and then get back to all of you to decide on how best continue with the actual work.
Site builder and Documentation WG member
There have been a number of
There have been a number of comments so far related to defining scope for this project. Something that I think we all agree is important. Having a clearly defined scope will help to ensure that we're covering the right material, and that we have a tool of sorts for saying, "Sorry, but that is out of scope."
So with that in mind. Here's what's been defined as scope thus far.
The audience is site builders and site administrators at the “Newcomer” or “Learner” level in the new Persona system. The manual provides the information these people would need to become “Skilled” Drupal users. You can learn more about personas that this is based on here: https://www.drupal.org/personas. So really, our target would be to write to the learner persona, and help give them the skills needed to progress. Or, at least to help them to better understand what it is they don't know yet, and where they can continue to develop their skills.
The manual covers the tasks that site builders and site administrators would need to build and manage typical Drupal sites: installation, updates, site building, configuration, and administration. These tasks can be in the Drupal user interface, on their hosting/server (e.g., setting up Cron), and possibly with tools like Drush.
Content selection is based on building/managing typical Drupal sites, not limited to Drupal Core, and not necessarily covering every module of Drupal Core. We could work to define a specific example use-case of Drupal that highlights important concepts and functionality, but doesn't necessarily cover every little detail. Perhaps using one of the ideas previously developed for Snowman. Which attempted to come up with example sites that illustrate Drupal core's strengths. But without the Snowman limitation of core modules only.
The manual includes background information and terminology as necessary, so it can stand alone without referring to Drupal.org pages or other references. Which is to say, everything required to accomplish the defined task is present in the manual. The manual can however link to other reference material on Drupal.org to help one further there knowledge related to any system or concept being covered.
The manual is concise, rather than attempting to be a comprehensive guide to everything you can do with Drupal. It does not cover programming, or generic web topics like information architecture and search engine optimization, but concentrates on how to do the tasks a typical Drupal site builder or administrator would need to do.
Does this scope seem adequate enough to help ensure the manual doesn't spiral out of control and try and cover everything under the sun? Does it give us the authority/tools wee need to answer questions like:
And other similar questions that we will undoubtably have to address as we begin to write a manual and everyone starts weighing in with their idea about what should or should not be included.
Or. Is this not detailed enough and we should be seeking to define stricter scope/requirements before we begin writing?
Reasonable scope
I think the number of pages and the number of hours needed for the project are wildly optimistic, but the scope described here is pretty solid, with this as the fundamental guiding principle:
Although I would recommend thinking in terms of "skills" as well as "tasks". As in, it won't cover every possible task, but the aim is to cover all the skills that will allow them to do any tasks not explicitly covered.
Also, while I agree it should be concise, it should also incorporate best practices baked in and not assume people already know even general web best practices. For example, accessibility should be mentioned at every point where it is relevant (e.g., when covering images, explain briefly why the alt tag should be enabled and used --SEO comes in here, too :-). As another example, cover simple live-test-dev setup and usage as that is part of being "skilled" (and code updates!) and something that can and should be done from the start of a Drupal website, even by beginners -- and it has significant differences from traditional web development. This sort of thing doesn't need to take a lot of space, but can be dealt with briefly by covering the general steps but not going into all the many permutations of the different ways each step can be done.
For estimating pages, I recommend getting some idea by looking at some of the introductory Drupal books like Drupal 7 Explained by Stephen Burge and Beginning Drupal by Jacob Redding and seeing how many pages they take up covering the in-scope topics. This can help give some sense of what is and isn't needed for a stand-alone user guide.
Finally, while I'm thinking of it, I think it is important to convey "The Drupal Way" throughout --don't re-invent the wheel/share & share alike (which applies just as much to content as to code)-- not just in the intro. And keep in mind that the target audience includes coders as well (who need to learn about how not to code!)
Anyway, I'm interested in being part of the team. Here's my info:
Great comments!
Thanks!
Brief responses to your ideas:
Skills vs. topics - really good idea to focus on skills. Keeping this in mind will help us write a more useful guide, indeed. For instance, one thing we'll want to do when we write up a particular How To task is to have a "Followups" section at the end with some hints/ideas of similar tasks people might need to do, that they would hopefully have the skills now to figure out how to do without explicit instruction.
Best practices: Excellent reminder, will make sure to get this into the guidelines for the entire guide. Accessibility, Usability, and Reuse not Reinvent are all great things to keep in mind.
Adding a dev-test-live topic also sounds like a good idea to add to the Outline.
Page count: I do not think we are too concerned with the exact page count... we'll see what it ends up being. But I don't think it wants to be 10 pages (that would be too short) or 500 (that would be too long). :)
Audience: Coders are not really the audience here -- but a coder new to Drupal should definitely know the basics of Drupal site building and what's out there already before they start coding (if you read my Programming with Drupal book you will see me coming back to this over and over, telling people they need to program less and reuse more). So I agree with you on that! ;)
And your offer to help: great! It's looking like we probably will not be seeking funding for writing and editing, at least initially, because I think we have sufficient volunteer help that we can get the guide written and edited in a reasonable amount of time. But we'll see how it goes and reassess -- that decision has not been finalized at all. We should know more by the end of June (and may change our minds later).
Drupal programmer - http://poplarware.com
Drupal author - http://shop.oreilly.com/product/0636920034612.do
Drupal contributor - https://www.drupal.org/u/jhodgdon
One observation
I think it's a very good start. The only big hole I see is what is considered a typical Drupal site. And it may be that that's a defined concept in the community that I'm just not aware of.
Thanks again for commenting, and keep it up!
I just read through all of the great new comments on this... THANKS everyone!
I haven't replied to each one individually, but I'm incorporating your suggestions into the Proposal and keeping a list of all the people who've expressed interest in helping out.
As noted by ifrik above:
- We're asking for people to comment between now and June 19th
- At that point, the Documentation Working Group will be meeting to discuss all of your suggestions and Next Steps.
So... When we started thinking about this proposal, we were thinking we'd apply for funding and have a very small group of people working on it. But it's looking like a LOT of people would be able and willing and excited to be involved, which is really great! This also means that we'd need to change the way we work on the project, if we still want to end up with a coherent, concise guide and not a copy of the existing Community Documentation (which, as we all know, has its downside in lack of coherence etc.).
I think if we go with the tide here and have a lot of people working on the project, we'll need to (a) set up some templates and guidelines and outlines before we start and (b) have a designated project manager (or two), who will play a role similar to a Drupal Core branch maintainer: making sure that anything added to the guide fits within the constraints. The project manager would need to coordinate the following, I'd think:
- Project startup: coordinate with Docs WG on templates, structure, outline, toolchain, Git repo, etc.
- Weekly group meeting (probably in IRC)
- Progress reports
- Volunteer coordination - writers, editors, testers
- Quality control - making sure what is produced is staying within the templates/structure/outline/guidelines [separate from editing, which will also need to happen]
Thoughts? [Note: this is just me rambling; haven't discussed this with the Docs Working Group yet! Not officially part of the proposal at this time.]
Drupal programmer - http://poplarware.com
Drupal author - http://shop.oreilly.com/product/0636920034612.do
Drupal contributor - https://www.drupal.org/u/jhodgdon
+1 for Weekly group meeting through IRC
+1 for Weekly group meeting through IRC to check the progress and quality of doc. Some predefined templates would be much helpful for newcomers to make it more robust and productive.
Pushpinder Rana
Collaboration on the drafts
I think it is a very good idea to be thinking about how to coordinate efforts and collaborate.
I would like to throw my crocheted beanie in the ring as a project manager.
I am very excited about this project, especially having just done research on how other projects are doing their community documentation for our presentation at DrupalCon (Let's Talk About Documentation).
Edit
Also, I don't anticipate the need for additional funding due to a supportive employer and how this work dovetails nicely with my work as a trainer for Drupalize.Me. And any additional hours needed I am happy to volunteer.
Amber Matz
Me too
This sounds like a great project. I will be able to spend time after July. Maybe testing would be a good place to start for me, since I am not very familiar with the ways of Drupal 8. Have documentation and editing experience however. Time commitment is flexible.
Marlen
Good idea to pay for an ongoing coordinator/overview
Based on learning Drupal, teaching Drupal, contributing to drupal.org documentation and writing how-to books, you need a leader to coordinate the activity, plan what is needed, and to find the right people for each area.
First, you need to differentiate between reference material, tutorials, how-to content, and the WWWWH material. Here are my notes updated for Drupal 8.
https://petermoulding.com/drupal-documentation-%E2%80%93-time-for-a-rewrite
petermoulding.com/web_architect
Yet another hat for the ring
After reading the proposal and many comments, I would like to contribute to the effort as a volunteer (I will not need funding), in whatever form it ultimately takes. My experience with Drupal is fairly light and hasn't (yet) matched my interest; my background is not in Web development but in developing and supporting the application of software used in chip design. Because technical understanding is critical to engineering success, I decided to swing my career in that direction then completed formal training in technical communication and editing. I'm putting that transition in full gear this summer.
I'm a disciple of structured writing and topic-based, “bottom-up” approaches to information architecture. Though those are currently a bit of a struggle for organizations lacking vast resources, better tools and methods can make them more attainable. I believe those will materialize in open-source projects such as Drupal.
I would like to see the concepts of topic-based writing, such as that advocated by Mark Baker at http://everypageispageone.com/, applied to Drupal documentation. I've contributed to his open-source project, SPFE Open Toolkit http://spfeopentoolkit.org/, where I've become informed in these methods. You can see my documentation contribution at http://spfe-user.jfmacdonald.com.
John MacDonald
John
It's a go - sprint!
The Docs WG had a mini-meeting today... Joe and I have the opportunity to go to the Twin Cities Drupal Camp and hold a sprint later this month, and we decided to go for it! See
https://groups.drupal.org/node/471268
for details. So we're really going to do this!!
Note: This page is still open for comments until June 19 and we'll incorporate as many suggestions as we can into the initial outline, guidelines, etc.
Drupal programmer - http://poplarware.com
Drupal author - http://shop.oreilly.com/product/0636920034612.do
Drupal contributor - https://www.drupal.org/u/jhodgdon
Yes please - but
I'm learning Drupal. In fact, I'm pretty much your target audience. I have a medium complexity site I need to build; I need good forward-compatibility and it doesn't have to be finished until early next year, so I want Drupal 8.
And there my pain begins.
And joy. Joy because Drupal 8 core is beautiful to use.
Pain because the sitebuilder learning experience right now - and probably for the next few years is rough. Rough, rough indeed.
I don't mean the experience of learning how to actually use Drupal to accomplish basic tasks. The UI is great and helpful fairies have explained what each field is for in nice simple words. I love those fairies.
It's the bigger more abstract questions that are painful. What is a block anyway? If I want events on my site, where do I start? What about a library of pdfs? And what if only users of a certain arbitrary group get access to a particular pdf? What are my choices for getting some simple search up and running? Learning the answers to these kind of things is painful.
You know the issues with drupal.org better than me, I won't repeat them.
Google is not my friend. It's impossible to know what Drupal 7 links are outdated and what are relevant. Drupal 8 links are typically on hardcore dev subjects, not helpful for site builders.
3rd party Drupal 8 resources are thin on the ground and difficult to find. It took me a LOT of hard googling and $34 of cold cash to find a pre-print ebook to begin my education.
Contrib is a nightmare. What are the major modules for D8? Which are now in core, which will never be ported, which are being ported, which have been ported but superseded by a better alternative?
Distributions do a lot of the work of taming the Drupal jungle for D7 users. It will be a long time before that is recreated in D8.
I need help with three things. We can call them the 3 C's: concepts, contrib and curation .
Concepts: What is a block? What is a content type? What can I do with these things? What can I do with user roles? What clever synergies can be exploited between these things that I might have overlooked?
Contrib: In all cases I need to understand what i can do in core, and what the limits are where I need to reach for a module. I need to know what the major modules are I should be considering, amidst the ever-changing contrib landscape.
Curation: There are a lot of great resources out here I'm sure. I don't need the manual to tell me all the details of everything, but if it could link to a lot of up-to-date relevant other things that would be enormously helpful.
Yes, a book that I can read offline is good. It does help to have a coherent and unified presentation of concepts so I can form a mental map. But equally I need a reference book that signposts me through the Drupal universe, that links me to the right resources for any particular subject.
What I don't need is to be told how to accomplish a specific task. Once you've told me what a custom content type is and shown me a screenshot of the relevant page for creating a new one, I've got it. My mental map has been filled in.
If you tell me what to click step by step you're bogging me down and getting in the way of my learning. I'm not someone trying to use my first Wordpress site that a friend has set up for me. I've written thousands of lines of code, designed UIs, used who knows how many different pieces of software in my life. I'm someone aspiring to be a skilled Drupal site-builder, and that persona sets the bar at quite a high level.
A list of relevant video tutorials in each section walking me though the point-and-click in more details is very helpful in case I ever get stuck with something. But I don't need a manual of that.
I need a manual to help me understand what's possible, what broad approaches to follow or choose from, and what's out there in contrib and other help resources.
Jonathan
P.S. A note on format. Your future maintainers may get more community support if their readers feel confident to suggest updates and improvements; will a git-based approach maximise this or be too demanding for the target audience?
Thanks for this!
Your comments are much appreciated!
Regarding concepts and background information, that is absolutely part of the plan of this guide. There would be no point in writing a beginner's user guide that required you to have background information that it didn't provide, so yes we will be defining the concepts of blocks, roles, and stuff like that. We will probably not want to define basic web terminology, but definitely anything that is a CMS term or Drupal term will need to be explained. And part of this plan is testing: putting this guide in front of the target audience and seeing if there are missing pieces (such as concepts that are not explained).
Regarding contrib... We are explicitly not limiting this guide to Core. That said, in Drupal 8 you are way closer to being able to build many sites with just Core, or perhaps core plus Path Auto (plus Panels and Rules depending on the site). ;) A LOT of the most commonly-needed field modules got into 8 Core, plus image handling, and Views of course, and it has a lot of what you'd need. On the other hand, I do not think we would even try to give people an idea of all of the thousands of contrib modules out there. That's something people will just have to explore on their own.
Regarding links: Yes, definitely. I think that each and every topic in this book should ideally come with a few links to "Further information". We are going to try to keep the guide to covering "just enough", but of course, people can also use some help in finding the next steps.
And regarding not needing How To help -- some people do, and this guide will provide that. Hopefully this guide will provide enough of the concepts and background that it will still be useful to an audience of people like you, while also being helpful for those who do also need the step-by-step How To guide as well. Part of the plan here is to keep the concepts and tasks well separated, so if you get to a heading that says "Creating a new custom block" you can just skip that and know that there won't be a ton of background in there that you need to read -- the background would have been in the "About blocks" or "What is a block" topic just before you got to "Creating". That's the plan anyway, and also in the plan is that the coordinators of this project will enforce that this happens. :)
Anyway... I hear what you're saying, and hopefully although this may not be exactly the right reference for you, it will have some useful things for people like you, while also providing a more basic reference for those who are not as quick to pick up the "how" as you are.
Drupal programmer - http://poplarware.com
Drupal author - http://shop.oreilly.com/product/0636920034612.do
Drupal contributor - https://www.drupal.org/u/jhodgdon
Oh, and Git
So regarding git... yes, it is a bit more cumbersome for contributors and maintainers to use Git to make updates, rather than clicking Edit on a node on drupal.org.
However, it does offer these benefits:
- Branching - we can have 8.0.x, 8.1.x, 8.2.x, 9.x etc. versions of the manual, not to mention English, Spanish, etc. This is difficult to accomplish with nodes.
- Curation - we can have a defined set of project/git maintainers with permission to make commits to the repository, to make sure that all proposed additions and edits stay within the boundaries and follow the guidelines of the project.
Given that both of these are strong requirements for this project, we will just have to live with the drawbacks, and mediate them however we can (such as having prominent File an Issue links where the manual is displayed, accepting suggestions in various formats and not requiring people suggesting edits to make a patch, etc.).
Drupal programmer - http://poplarware.com
Drupal author - http://shop.oreilly.com/product/0636920034612.do
Drupal contributor - https://www.drupal.org/u/jhodgdon
Oh, that Git
First, jonathanjfshaw's experience mirrors mine very closely, except that I went through it with 7. For newcomers, I think including Git among the basics would be very helpful. I was completely confused about what it is, what it does, and why I should use it. I finally dove in and did learn it to run a patch in my test site in 8, but it was another of those subjects that I found to be very murky. Same thing with Drush, which I'm still not at all sure about.
It's a little like being blind and trying to figure out what things are by touching them.
For site builders?
Hm. I do not think that a newcomer site builder would need to know much about Git... and although getting people ready to contribute patches and code to the Drupal project is a worthy goal and is obviously very important to the Drupal project, it is not one of the aims of this guide. It's about site building, not about coding, theming, or contributing, and we need to keep it focused in order to (a) keep the project manageable so we can finish it and (b) keep the guide concise. (Maybe we'll think about writing other guides when we finish this one. ;) )
So I think the most we'd want to do in this guide would be to mention what Git is and how the project uses it -- maybe a sentence or two in an "About Drupal and the project" section, with a link to the excellent existing "how to contribute" documentation on drupal.org for further reading (which is MUCH better than a few years ago, by the way).
Drupal programmer - http://poplarware.com
Drupal author - http://shop.oreilly.com/product/0636920034612.do
Drupal contributor - https://www.drupal.org/u/jhodgdon
Yes
I'm sorry if I wasn't clear, but a sentence or two just saying what it is and how it ties in would be enormously helpful, and that was my intention. I'm trying to think of the things that I kept running up against that threw me as I was learning Drupal, and that's one of them.
Oh, that Git
This is editing out an accidental double post. Sorry.
prominent "File an issue" links
The less technical, the more help you may get for your target audience. "Suggest a change" at the end of each chapter maybe.
Great idea
Hi there,
I think that this is a very great idea because I find that information are a little too scattered here. I would like to help but since I am not very confident in my writing and editing skill I would like to help as a novice-not-so-novice tester instead. If you think that I can help more do tell me though!
Excellent!
I'll put you down as a tester. Obviously, the writing and editing phase will come before testing, so we may not call upon your very welcome offer of help initially, but we will definitely need testers eventually. Thanks!
Drupal programmer - http://poplarware.com
Drupal author - http://shop.oreilly.com/product/0636920034612.do
Drupal contributor - https://www.drupal.org/u/jhodgdon
civiCRM
I'm just reading the civiCRM book which may be a good example (perhaps somewhat closer than those in Appendix D of the proposal) of the approach being suggested here.
It's community-created but rigidly curated and version-matched; for builders rather than developers; for beginners rather than experts. It's long and rich in detail; there's a lot of "how to" but it's covered in a condensed fashion so doesn't bog down; it uses concrete examples not just abstractions.
It's strong on giving an overview and on guiding the reader through the structural decisions they'll need to make: when to use custom fields, when to use groups and when to prefer tags instead, what the various core modules do. There's a lot of discussion about different use cases. Overall it leads one up to the "skilled" level quite nicely:
http://book.civicrm.org/user/
Thanks!
Indeed, this book looks like a good model.
Drupal programmer - http://poplarware.com
Drupal author - http://shop.oreilly.com/product/0636920034612.do
Drupal contributor - https://www.drupal.org/u/jhodgdon
No GIT, no DRUSH
I agree completely, Jennifer. This is not the place to talk about GIT (or DRUSH for that matter). Keep it simple and direct. Help people to understand what Drupal is, how to get it up and running, and start using it.
As I've said before, you can add a few words about what som of the other tools and features are, when they should be used, and where to get more information about them. But not here.
I'll repeat my offer of help. Perhaps editing is where I can help more than writing, although I have written technical books. I'm of the old school, that writes very directly without extra words. My eldest daughter has named me the red slasher after I edited her thesis. You get the idea. I'd be delighted to help if I can (for free).
It depends on the audience
It seems to me that we have a general consensus that the core audience is site builders (as opposed to developers, themers, or end users). However, even with that consensus, there tends to be a difference in mindset between enterprise and non-enterprise users. For my first several years of experimenting with Drupal, I found the dependency on the UI and the difficulty of managing configuration to be so off-putting that I couldn't use it for the kinds of projects I do.
That said, I think that the coverage can be minimal - either a brief paragraph in the introduction directing the reader to other resources, or an Appendix A that briefly (1-3 pages) introduces CMI and tells the reader that he/she can export the config and store it in the SCM system of her choosing with git being the preferred system used by the community (with links to resources for next steps)
Yes on both counts
Yes, some users will need Git and Drush, and some won't need it (at least initially). So I think we will at least need to mention Git and Drush as useful tools, but I think the "how tos" should probably focus on the UI.
For instance, in Drupal 8 we finally have the opportunity for configuration to be truly stored in version control, since the entire site config can be exported and imported using YAML files. It would be a shame for a user guide not to at least mention this, since it's a huge win for being able to manage configuration between dev -> test -> live (which even non-enterprise sits will eventually find they will need).
Drupal programmer - http://poplarware.com
Drupal author - http://shop.oreilly.com/product/0636920034612.do
Drupal contributor - https://www.drupal.org/u/jhodgdon
Yes, Again
That's exactly what I was thinking. A quick "you may need this because this is what it does and why it's useful" explanation, with a link to more information.
Since I'm doing our site myself, with nobody else involved - and I'm not any kind of expert in this area - I hadn't even thought about version control. Now that I know that's what Git can do, I am giving using it much more weight.
When you're writing this kind of manual, you really need to get into the heads of who's going to be using it, and not assume that they will know any of the things you know about it. That's where a lot of the current documentation fails from a newcomer's point of view. A lot of times I'll read one of the articles, and be completely bewildered by the level of knowledge that was assumed when it was written. So then I have to try and find information to fill in the blanks. It makes trying to use the documentation very frustrating.
Config helps define the audience for Drupal
"I found the dependency on the UI and the difficulty of managing configuration"
I can understand developers wanting control. For many sites, the opposite is the problem. How do you give control to the site owners, editors, etc? Worth a chapter in the book. How to configure Drupal without SCM or the slightest hint of a DOS box/command line.
petermoulding.com/web_architect
Amazing idea
Hi folks,
Thats a super nice idea, I'm kindly still a middle-beginner in Drupal but I hope I can help the community to build this manual. I'll follow the topic and post anything wich could help you out.
PS : If I do understand the project right, it would require some traduction in multiple languages. I'm French so I guess I can help with the French part, Idk how do you proceed about that ?
My Drupal Profile
Helping out...
We're having a global "sprint" (work day) on June 28 - see
https://groups.drupal.org/node/471268
And we'll be announcing more on or after that date about how everyone who is interested can start helping. You might be an ideal person to test/edit the manual, as a relative beginner; I'm sure you could also help in writing as well (researching and writing a topic is also a great way to learn things).,
Regarding translations, we'll need to get the English version done first before we can really start translating, but definitely we'll need help with that. In the meantime, there is a lot of User Interface text in Drupal and contributed modules that always needs translating. Go to
https://localize.drupal.org
to join the French language team and help with that.
Thanks for your willingness to help!
Drupal programmer - http://poplarware.com
Drupal author - http://shop.oreilly.com/product/0636920034612.do
Drupal contributor - https://www.drupal.org/u/jhodgdon