Creating Courseware for Developers: Choosing Topics

Greetings, Make WordPress Training!

I’ve been given the amazing opportunity to shepherd the Advanced or, more aptly named, Developer curriculum into existence. I think shepherd is the most fitting term here, because the only way that we’re going to end up with curriculum that hits all the buttons that it needs to is if we have feedback from a number of people in our community. So, we’re asking for your ideas on topics that you think should be covered in a developer-focused training track. The first step is to firmly define what the term developer means, from a training perspective, in the WordPress ecosystem. What skills are needed to classify someone as a developer? What are hiring managers looking for when they hire for a WordPress Developer role? What is the best path one can take to level up their skillset?

I believe that Developer topics should be divided into three primary categories, though they don’t necessarily need to be presented in this order:

  • Understanding WordPress Internals
  • Developing Custom Themes
  • Developing Custom Plugins

There are also related topics that I feel need to be addressed in a full curriculum:

  • Understanding User Experience for Developers
  • Writing to WordPress Coding StandardsWordPress Coding Standards The Accessibility, PHP, JavaScript, CSS, HTML, etc. coding standards as published in the WordPress Coding Standards Handbook. May also refer to The collection of PHP_CodeSniffer rules (sniffs) used to format and validate PHP code developed for WordPress according to the PHP coding standards.
  • Documenting WordPress Code
  • Understanding GPLGPL GPL is an acronym for GNU Public License. It is the standard license WordPress uses for Open Source licensing The GPL is a ‘copyleft’ license This means that derivative work can only be distributed under the same license terms. This is in distinction to permissive free software licenses, of which the BSD license and the MIT License are widely used examples. as a Creator

My goal is for these pieces to be modular enough that you can take one module and run it by itself, take a group of predefined modules based on the time you have available to teach, or deliver all of the curriculum in a prescribed order in either postsecondary (higher education) or professional development classrooms, complete with labs and quizzes to test for understanding via the Mastery Learning methodology.

What do you think should be included? Do you have additional top level categories you think I’ve missed? What modules do you think need to be in each categoryCategory The 'category' taxonomy lets you group posts / content together that share a common bond. Categories are pre-defined and broad ranging.? We’ll take your feedback and start building rough drafts of the outlines for each section.

P.S. I’m sure most of you are wondering who the new guy is. I’m a managing partner at Mindsize, an eCommerce consultancy. I’ve been watching the WordPress space for years and have been actively developing custom sites, themes and plugins for the last three. Recently, I’ve been speaking at WordCamps about eCommerce site speed, sharing my observations on how to build highly performant WordPress sites. More relevant to this space, though, I’m a certified technical instructor that’s spent a good portion (over 5000 classroom hours) of the last decade teaching developers in classrooms all over the continent how to write web applications in a variety of languages.