August 2021 Training Team Sprint

The Training team is using the Sprint method to determine what we are working on and to determine our timeframe for delivery.

What is a Sprint?

Sprints are fixed length events of one month or less to create consistency. A new Sprint starts immediately after the conclusion of the previous Sprint.

https://www.scrum.org/resources/what-is-a-sprint-in-scrum

Sprint Goals

Theme: How to contribute to the WordPress Project with screenshots and videos (guidelines for how content within screenshots and videos appear).

Think about these with as much consideration toward accessibilityAccessibility Accessibility (commonly shortened to a11y) refers to the design of products, devices, services, or environments for people with disabilities. The concept of accessible design ensures both “direct access” (i.e. unassisted) and “indirect access” meaning compatibility with a person’s assistive technology (for example, computer screen readers). (https://en.wikipedia.org/wiki/Accessibility) as possible.

Ideally, these guidelines could be adopted by other teams as well, turned into a video series of workshops, and help onboard others into several parts of the project. Additionally, it lifts needing to maintain this from our team handbook into content on Learn.

Learn Content

Lesson Plans

We currently using TrelloTrello Project management system using the concepts of boards and cards to organize tasks in a sane way. This is what the make.wordpress.com/marketing team uses for example: https://trello.com/b/8UGHVBu8/wp-marketing. to manage and keep track of the status of each Lesson Plan. Every Lesson Plan has its own Trello card. The Trello lists represent our Development Workflow, each list contains a card that explains how to use that list.

Lesson Plan and Workshop Ideas

For the cards in this list:

  • Finalize description
  • Set objectives (goals)
  • Research and add links to support and developer docs
  • Identify marketing communications
  • Carry out an SEO review.
  • Review related material on Learn
  1. Trial run on a lesson plan and workshop about overcoming Imposter Syndrom by @lepittenger as part of Web Dev Studios 5FTF to be included in the speaker series

Next Up – You Can Help!

  1. Site Backup
  2. Migrate, Copy, or Clone a Site
  3. Introduction to Gutenberg
  4. How to Configure WordPress Installation for Contributor and Developer Testing @woodnet @caseymilne @paaljaochim
  5. Testing a Trac ticket or GitHub PR @woodnet @caseymilne @paaljaochim

Drafts in Progress

  1. Sample content – Theme Unit Test Data, Gutenberg Blocks Data, Monster Widget @cousett
  2. Annotation options @cousett
  3. When to use browser dev tools inspector to override some information (hiding your name) @cousett
  4. Zooming in, how to crop for enough focus and context, aspect ratios @courane01
  5. How to create a blog post in WordPress 5.x @geheren

Instructional Review

  1. Using a browser inspector@woodnet

Copyediting in Progress

Style Guide Review

  1. What to do when you forget your password @webtechpooja

Ready for Final Review

Audit

  1. What to do when you forget your password @webtechpooja

Workshops

  1. Coming Soon

Learn Functionality

  1. Continue Slides pluginPlugin A plugin is a piece of software containing a group of functions that can be added to a WordPress website. They can extend functionality or add new features to your WordPress websites. WordPress plugins are written in the PHP programming language and integrate seamlessly with WordPress. These can be free in the WordPress.org Plugin Directory https://wordpress.org/plugins/ or can be cost-based plugin from a third-party proposal after Learn Working Group consideration
  2. Style a print-friendly style sheet (transcripts and lesson plans)
  3. Use a blockBlock Block is the abstract term used to describe units of markup that, composed together, form the content or layout of a webpage using the WordPress editor. The idea combines concepts of what in the past may have achieved with shortcodes, custom HTML, and embed discovery into a single consistent API and user experience. layout in a page to create much of the lesson plan page organization https://github.com/WordPress/learn/issues/153
  4. Coordinate about audit tool feature request with #docs, #marketing, and other relevant teams
  5. Consider partnering with Five for the Future contributors for Learn functionality.

Training Team

  1. Publish initial draft for Brand guidelines, seeking specific feedback. (awaiting further input with #Marketing)
  2. Audit Learn Functionalitly Trello board
  3. Deputy program
  4. Update Training Team and Learn Handbook
  5. Schedule Learn Stakeholder meeting
  6. Conduct a retrospective on the previous sprint.

You are welcome to join the team at any time! If you are new to the Training Team, please introduce yourself in the #training channel before the meeting (or anytime!) and feel free to join us in the meeting and participate as you are able.

Training Team Mission

The WordPress training team helps people learn to use, extend, and contribute to WordPress through synchronous and asynchronous learning as well as downloadable lesson plans for instructors to use in live environments, via learn.wordpress.org.

Getting Involved

Everyone is welcome and encouraged to join in, comment on posts, and participate in meetings and on projects. Here’s what you need to know to get started.

Team Links

  1. Getting involved:- https://make.wordpress.org/training/handbook/getting-started/
  2. About The Team:- https://make.wordpress.org/training/handbook/about/ 
  3. Our Team Blog:- https://make.wordpress.org/training/ 
  4. Our Content Roadmap:- https://trello.com/b/BsfzszRM/wordpress-training-team-lesson-plan-development 
  5. Learn WordPress Roadmap:- https://trello.com/b/rK1tztAA/learn-wordpress 
  6. Our Lesson Plans:- https://learn.wordpress.org/lesson-plans/
  7. Our YouTube Channel:- https://www.youtube.com/channel/UCnxqNA0WORZXWurEP6cNV6w 
  8. Learn Website:- https://learn.wordpress.org/

#learn-wordpress, #learnwp, #sprint, #training-team

PROPOSAL: An Audit Tool for Learn

As Learn grows, the need for maintaining content in step with WordPress releases also grows. We would like to implement a content audit tool. This will keep the tasks of auditing and then revising content much more manageable.

The Training Team has sought a content audit tool for a number of years. Many of the same requests are still wanted.

With the current workflow of Learn, we’ve revised the list of what would help keep content up to date.

The current workflow:

We are using Edit Flow, which may still be the solution with some enhancements or additional features. Our general content revision process has looked like this:

  • Many users with Editor user role permission to have login-access to content on Learn. 
  • When WordPress has an update, and when the team has the capacity, contributors will manually review each piece of content on the site.
  • Users check a series of Edit Flow Custom MetaMeta Meta is a term that refers to the inside workings of a group. For us, this is the team that works on internal WordPress sites like WordCamp Central and Make WordPress. Fields to indicate what needs to be updated and another unchecks the box when it is done 
  • Users cannot view all posts that have the same checkmark ticked (like the functionality of viewing all posts with the same tag). 
  • Custom meta is related to the entire post, not noting specific elements such as several screenshots
  • Users with Editor access for auditing have created their own content, not following the lesson plan templates, and published. The team process is to use a template for the content and undergo several reviews before publishing. 
  • Due to the complexity of this process, the team has not made much progress in staying current with feature changes.

Proposed workflow:

  • More specific uses of user permissions, per https://make.wordpress.org/training/2021/05/27/proposal-adding-custom-user-roles-to-learn-wordpress/.
  • Each screenshot, video, and article could have a taxonomyTaxonomy A taxonomy is a way to group things together. In WordPress, some common taxonomies are category, link, tag, or post format. https://codex.wordpress.org/Taxonomies#Default_Taxonomies. indicating 
    • The version of WordPress
    • Option of the user interface (show all posts that have the blockBlock Block is the abstract term used to describe units of markup that, composed together, form the content or layout of a webpage using the WordPress editor. The idea combines concepts of what in the past may have achieved with shortcodes, custom HTML, and embed discovery into a single consistent API and user experience. selector, or some part of the admin dashboard)
    • A way to note if the outdated content is preserved for historical purposes (not to be updated)
    • Taxonomy would be viewable like tags, allowing an editor to see a listing of all content types of that notation
    • Apply this taxonomy to lessons, workshops, and courses
  • A checklist before publishing that indicates various stages of review and can be modified by admins in an ongoing way without coding
    • Pending Review
    • Spelling/grammar review
    • Technical review
    • SEO review
    • Require that posts are approved by users in a specific role (editors can review updates, admins can review new content to be published)
    • The ability to assign a lesson plan to a “Content Owner” who is different than the author. It can help identify who is currently responsible for that lesson plan.
  • An expiration date. Any content that should be reviewed on a regular basis can have an expiration date that will provide automatic reminders that eyeballs are needed on that content piece. In the Content Audit pluginPlugin A plugin is a piece of software containing a group of functions that can be added to a WordPress website. They can extend functionality or add new features to your WordPress websites. WordPress plugins are written in the PHP programming language and integrate seamlessly with WordPress. These can be free in the WordPress.org Plugin Directory https://wordpress.org/plugins/ or can be cost-based plugin from a third-party this can also include email reminders being sent to the Content Owner. It also displays messages on the front end for logged-in users with the proper permissions.
  • Columns are added to the All Posts screen that indicates the Content Owner, Content Status, Notes, and Expiration date. This makes for a very quick overview that contributors could use to identify the highest priority (or low-hanging fruit) from the list of things to be done. Use the review status in the Learn admin dashboard to show stats of lessons needing review, flagged for updates, at various stages of completion. https://make.wordpress.org/updates/2021/02/26/would-stats-dashboards-help-your-team/
  • Nice to have
    • Require featured imageFeatured image A featured image is the main image used on your blog archive page and is pulled when the post or page is shared on social media. The image can be used to display in widget areas on your site or in a summary list of posts. (and how to set a featured image on lesson plans)
    • Require ALT Text descriptions
    • Check for any broken and external links (outside WordPress.orgWordPress.org The community site where WordPress code is created and shared by the users. This is where you can download the source code for WordPress core, plugins and themes as well as the central location for community conversations and organization. https://wordpress.org/)
    • An SEO plugin that will assist with the tone of voice and complexity of reading

Those who have done considerable content auditing, what tools or features have you used? What would make a tool like this easier to implement across several WordPress teams?

A big thank you to @juliekuehl (original audit request), @azhiyadev, and @evarlese for helping to write this proposal.

Leave your ideas below!

#content-audit

Proposal: Adding custom user roles to Learn WordPress

There are many ways to contribute to Learn WordPress. Folks can join via contributing lesson plans to the Training team, organizing workshop-based discussion groups through local meetups, or submitting their own video workshop or course idea.

Some of these efforts happen outside the Learn WordPress website itself – like organizing a discussion group or using a lesson plan with a local meetupMeetup All local/regional gatherings that are officially a part of the WordPress world but are not WordCamps are organized through https://www.meetup.com/. A meetup is typically a chance for local WordPress users to get together and share new ideas and seek help from one another. Searching for ‘WordPress’ on meetup.com will help you find options in your area.. For the most part, Learn WordPress contributors share a common home in learn.wordpress.orgWordPress.org The community site where WordPress code is created and shared by the users. This is where you can download the source code for WordPress core, plugins and themes as well as the central location for community conversations and organization. https://wordpress.org/

A flowchat of some common ways to contribute to Learn WordPress, including creating workshops, writing and reviewing lesson plans, and leading or attending discussion groups.

Adding a big asterisk that this is by far from a definitive list of ways to contribute, but just some common pathways!

The current set-up

Currently, when someone contributes to Learn WordPress, they’re added to the Learn WordPress site using one of the standard user roles:

  • Administrator
  • Editor
  • Author

Author is primarily used for workshop contributors (i.e., folks who’ve recorded a workshop) and new Training team contributors helping with a specific lesson plan. Administrators are reserved for Training team representatives and Community deputies who need to add new users to the site. Folks organizing contributors days have also been given temporary Administrator access to help with onboarding new contributors.

For everyone else – and for most folks with access to Learn WordPress – Editor permissions are the most common. This is particularly important for Training team contributors, where folks need access to multiple lesson plans to draft, review, and copy edit content

The Learn WordPress Dashboard is robust. There are many options available on the backend for setting up lesson plans, workshops, quizzes, courses, and so on. Many similarly-named things (Lessons and Lesson Plans being one!) can make starting more challenging. Likewise, the Editor role provides a lot of control over the site from the get-go, which can be problematic from a security perspective in the long term.

Proposed new user roles

With all that in mind, I would like to propose two new custom user roles to better fit Learn’s functionality and structure.

Workshop Reviewers: When reviewing Meetup and WordCamp applications, Community Deputies have a custom metaMeta Meta is a term that refers to the inside workings of a group. For us, this is the team that works on internal WordPress sites like WordCamp Central and Make WordPress. box to share vetting notes. Sometimes this information is confidential, especially when a proposed application/applicant may not meet the program guidelines. The current workflow for evaluating workshop submissions is very similar to this process, and the Learn siteLearn site The Training Team publishes its completed lesson plans at https://learn.wordpress.org/ which is often referred to as the "Learn" site. would benefit from a role for workshop reviewers to have access to a confidential meta box for communicating review notes with one another.

Lesson Plan Editors: By default, lesson plans are developed with a series of checks and reviews to help ensure instructional design quality. This means that Training team contributors, including new contributors, need to access and edit multiple lesson plans. This includes folks like Subject Matter Experts, Copy Editors, and Testers. For folks volunteering to draft or review lesson plans, access to the other post types on Learn WordPress is not relevant or needed, but edit access to all lesson plans is.

Feedback needed

In the end, the proposed user roles would look like:

User rolePermissions
AuthorEdit access to specific Workshops
Edit access to specific Lesson Plans
Lesson Plan EditorsEdit access to all Lesson Plans
EditorsEdit access to all Lesson Plans
Edit access to all Workshops
Edit access to course functionality
Workshop ReviewersEdit access to all content types, plus
Deputy-level access to meta field for application vetting
Ability to add new users to the site
AdministratorsFull site access and permissions

It would be really helpful to get feedback on the following specifically: 

  • How does this make contributing easier?
  • How does it make contributing more difficult?
  • Is there a simpler way to achieve the same goals?
  • Do we need to consider where learners/people using the Learn site might fit into these roles?

Big thank you to @courane01 and @azhiyadev for helping to write this proposal, and @hlashbrooke for reviewing.

High-Level Roadmap to Learning WordPress Development

Things I’ve heard recently:

  • How do you learn WordPress? In what order should I learn things?
  • Learning WordPress is easy, there are so many resources.
  • Why can’t these senior ReactReact React is a JavaScript library that makes it easy to reason about, construct, and maintain stateless and stateful user interfaces. https://reactjs.org/. front-end devs understand WordPress?

WordPress is versatile and open, as in open-source, and also as in jump in where you want and go as far as you’d like.

When we say “learn WordPress”, that can mean many things:

  • Learn to write a post/page?
  • Learn to manage a site?
  • Learn to create a child themeChild theme A Child Theme is a customized theme based upon a Parent Theme. It’s considered best practice to create a child theme if you want to modify the CSS of your theme. https://developer.wordpress.org/themes/advanced-topics/child-themes/.?
  • Learn to customize with pluginPlugin A plugin is a piece of software containing a group of functions that can be added to a WordPress website. They can extend functionality or add new features to your WordPress websites. WordPress plugins are written in the PHP programming language and integrate seamlessly with WordPress. These can be free in the WordPress.org Plugin Directory https://wordpress.org/plugins/ or can be cost-based plugin from a third-party overrides or using plugins to achieve customization?
  • Learn to make a theme from scratch?
  • Learn to make a plugin?
  • Learn to make a blockBlock Block is the abstract term used to describe units of markup that, composed together, form the content or layout of a webpage using the WordPress editor. The idea combines concepts of what in the past may have achieved with shortcodes, custom HTML, and embed discovery into a single consistent API and user experience.?
  • Learn to use APIs for a decoupled approach?

When we think about building a website, there are skillsets around

  • Content
  • Design/UXUX UX is an acronym for User Experience - the way the user uses the UI. Think ‘what they are doing’ and less about how they do it./UIUI UI is an acronym for User Interface - the layout of the page the user interacts with. Think ‘how are they doing that’ and less about what they are doing.
  • Development (with code)
  • Quality Assurance
  • Front end
  • Back end
  • Full stack
  • DevOps
  • Translation
  • AccessibilityAccessibility Accessibility (commonly shortened to a11y) refers to the design of products, devices, services, or environments for people with disabilities. The concept of accessible design ensures both “direct access” (i.e. unassisted) and “indirect access” meaning compatibility with a person’s assistive technology (for example, computer screen readers). (https://en.wikipedia.org/wiki/Accessibility)

At 41% of the internet and growing, there really is a lot to learn. Where you start, and what your own outcomes are can vary. We progress from being a website visitor to using the software and some of us even go on to write code that makes the software. There are so many skills to acquire in that journey.

My favorite myth to dispel is that teaching or learning is easy. Like a final release, things should be free of bugs and intuitively work well. Behind the scenes, a great deal of work happens to provide the user or student with a cohesive learning experience. Likewise, without a roadmap or guidance on what to learn next, you can get lost in a sea of resources.

I’ve had the honor of teaching WordPress in a development bootcamp environment this past year with a focus on front-end development. While getting a good look around at the bootcamp and non-WordPress (or even non-CMS) web developer ecosystem, I frequently encountered roadmaps to learning. Think of the map as a syllabus handed to students, sharing where we are starting and what our goals will include. Yet there are few maps that incorporate WordPress or PHPPHP PHP (recursive acronym for PHP: Hypertext Preprocessor) is a widely-used open source general-purpose scripting language that is especially suited for web development and can be embedded into HTML. http://php.net/manual/en/intro-whatis.php. into the web developer’s learning.

Let’s help folks get started at any point on their journey, and discover any gaps in learning, and provide suggestions on what could be learned next.

This map will hopefully help shape the content on https://Learn.WordPress.org and could be implemented in a more visually organized way of navigating lesson plans, courses, and workshops.

Roughly, here is what I have found. The image may be a bit small, so check https://whimsical.com/embed/EG8T9S7zddbSVhnm85MmDf.

High Level Roadmap to learning WordPress development

I am attempting to get these details and sequences out of my head and into something presentable for others. I welcome feedback, collaboration, and input on these.

Certainly far more can be included into this roadmap that encompasses more details. However, I wanted to pause here to avoid overwhelming folks with too many specifics.

I have incorporated @chanthaboune WordPress Contributor Team Structure and @mapk’s Care and influence: a theory about the WordPress community into the overview.

What’s Missing?

Leave your feedback below

  • Employers, what do you look for in new-hires?
  • Experienced developers, what do you wish you had more guidance around? What is new or emerging that should be included?
  • Aspiring developers, what have you discovered so far?

Lowering Barriers to Entry for Workshops on Learn

You may be asking yourself: “What is she talking about? Workshop content on Learn is free!”
Unfortunately time and high data costs can be exclusionary.

Quick Case Study: How to Find Help With WordPress

Challenges:

Length

This video is 31 minutes in length.

While this may sound reasonable for an introductory video, this should use approximately 160 MB of data.

At an Out-of-Bundle rate, this is approximately 2.5 x minimum wage for domestic workers in a developing economy – and therefore inaccessible by and exclusionary to many users.

Quality

Videos on Learn only offer the ability to turn on High Definition.

There is no option to set the video to a lower quality setting for streaming.

This is an inherent limitation of VideoPress.

Speed

Videos on Learn can only be watched at 0.5, 1, 1.5. and 2 speed.

These speeds tend to be unnatural.

Unfortunately, VideoPress does not currently offer 0.75 and 1.25 speeds, which are more natural.

Proposed Solutions:

Content Guidelines

Instructional videos should be scripted.

Discussion videos (panel discussions) on more complex topics can be very valuable content on Learn.

However, particularly for introductory topics, scripting topics heavily avoids repetition and should help to keep video lengths efficient.

If a contributor would like to submit an unscripted workshop, they should include a compelling motivation in the application why this best serves the interests of Learn users.

Lesson Plans should be submitted for all Workshops.

To ensure that Workshops benefit from input regarding curriculum development and best practices in terms of teaching philosophy, this proposes that a Lesson Plan (in outline form) should exist before workshops are recorded.

This will also facilitate the harmonization of Workshops and Lesson Plans into Courses at a later date.

Chapters

Workshops should be broken down into chapters, with descriptive titles.

Long-format videos are not conducive to meeting the needs of students in particular, as the information contained in workshops is not searchable.

Video is not an ideal format if you would like to review information again at a later date.

This proposes that a “Chapters” widgetWidget A WordPress Widget is a small block that performs a specific function. You can add these widgets in sidebars also known as widget-ready areas on your web page. WordPress widgets were originally created to provide a simple and easy-to-use way of giving design and structure control of the WordPress theme to the user. is added to workshops on Learn, with time-stamped links.

Subtitles

Subtitles should be submitted at the same time as the Workshop.

Users should not have to watch the video to get access to subtitles.

Subtitles should be viewable on Learn itself (possibly as a custom blockBlock Block is the abstract term used to describe units of markup that, composed together, form the content or layout of a webpage using the WordPress editor. The idea combines concepts of what in the past may have achieved with shortcodes, custom HTML, and embed discovery into a single consistent API and user experience.) and should be downloadable.

Subtitles (in the original language) should be required for all scripted videos on Learn.

Subtitles for unscripted videos like panel discussions should be uploaded as soon as practical.

Browser-side Caching

Carefully consider caching behaviours on Learn.

Content on Learn should not change often and the caching periods should be as long as possible, unless a user manually clears their browser cache.

If possible, use version cache busting.

Buffering

Investigate whether the buffering is sufficient for users on slower internet connections.

Download Option

Make it possible for users to download videos directly from Learn.

This is particularly desirable in educational settings, where multiple users may share devices / a copy can be placed on a central network for everyone’s offline viewing.

Licensing

In order to facilitate downloading, sharing and to encourage proper academic habits in relation to citations, prominently include licensing information on the Learn website and preferably in the videos themselves.

Feedback:

We need your input and engagement in order to realize the goals set out above.

Please comment below!

License:

The contents of this post are made available by the author under CC-BY-SA 4.0. International.

Request for Testing: Slides Plugin

The Training team is on the lookout for simplified way to create slides. We need:

  • An interface similar to writing a WordPress Post
  • A centralized location to access slides
  • Means to audit and revise slide content as WordPress coreCore Core is the set of software required to run WordPress. The Core Development Team builds WordPress. updates
  • Consideration for accessibilityAccessibility Accessibility (commonly shortened to a11y) refers to the design of products, devices, services, or environments for people with disabilities. The concept of accessible design ensures both “direct access” (i.e. unassisted) and “indirect access” meaning compatibility with a person’s assistive technology (for example, computer screen readers). (https://en.wikipedia.org/wiki/Accessibility) and translation
  • Means to download or use the slides without internet connectivity

We have historically tried tools like Google Slides and Shower.js (similar to storing Reveal.js slides in GitHubGitHub GitHub is a website that offers online implementation of git repositories that can can easily be shared, copied and modified by other developers. Public repositories are free to host, private repositories require a paid subscription. GitHub introduced the concept of the ‘pull request’ where code changes done in branches by contributors can be reviewed and discussed before being merged be the repository owner. https://github.com/). We found some of these options worked, but still were a barrier for new contributors to use.

Use Case:

During State of the WordState of the Word This is the annual report given by Matt Mullenweg, founder of WordPress at WordCamp US. It looks at what we’ve done, what we’re doing, and the future of WordPress. https://wordpress.tv/tag/state-of-the-word/. 2019, Matt’s presentation used a blockBlock Block is the abstract term used to describe units of markup that, composed together, form the content or layout of a webpage using the WordPress editor. The idea combines concepts of what in the past may have achieved with shortcodes, custom HTML, and embed discovery into a single consistent API and user experience. editor pluginPlugin A plugin is a piece of software containing a group of functions that can be added to a WordPress website. They can extend functionality or add new features to your WordPress websites. WordPress plugins are written in the PHP programming language and integrate seamlessly with WordPress. These can be free in the WordPress.org Plugin Directory https://wordpress.org/plugins/ or can be cost-based plugin from a third-party to create the slides, with quite a crew of folks that helped build the plugin and his presentation.

Get Slides Plugin:

You can find the Slides and Presentations plugin on Plugins:

Benefits

This Slides plugin looks especially interesting because it would offer us :

  • Using slides in the WordPress editor experience
  • A centralized location for auditing and empowering to update later as the revision tools become available on Learn
  • Options to download the slides
  • Templating for design, accessibility, and good UIUI UI is an acronym for User Interface - the layout of the page the user interacts with. Think ‘how are they doing that’ and less about what they are doing.
  • No pre-required skills with GitHub to create or present the slides

Testing and Feedback

  • Install the plugin
  • Create a simple slide presentation
    • Add additional slides
    • Add media
    • Use the speaker notes
  • Save the slides
  • Display in browser
    • Does your theme conflict with slides displaying? (having the plugin on Learn would use the Learn theme – possibly with custom styles for that post type, solving any theme conflicts)
  • Export the slides

Comment below with feedback