Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Learn WordPress Course Cohort: Introduction to Plugin Development #2942

Open
jonathanbossenger opened this issue Oct 9, 2024 · 14 comments
Open
Assignees

Comments

@jonathanbossenger
Copy link
Collaborator

Planning issue for the next Learn WordPress course cohort:

https://make.wordpress.org/training/handbook/training-team-how-to-guides/course-cohorts/

@github-project-automation github-project-automation bot moved this to 👋 Ready to Create in LearnWP Content - Development Oct 9, 2024
@jonathanbossenger jonathanbossenger moved this from 👋 Ready to Create to 🚧 Drafts in Progress in LearnWP Content - Development Oct 9, 2024
@jonathanbossenger jonathanbossenger self-assigned this Oct 9, 2024
@jonathanbossenger
Copy link
Collaborator Author

jonathanbossenger commented Oct 9, 2024

Tasks

  • Decide on content
  • Decide on dates
  • Publish sign up post
  • Gather attendees
  • Facilitate cohort
  • Publish wrap-up post

@jonathanbossenger
Copy link
Collaborator Author

Suggested dates

  1. Sign up post - Friday, October 11, 2024
  2. Sign-ups close - Friday, October 25, 2024
  3. Course cohort dates - Monday, 5 November, 2024 to Friday 13 December
  4. Weekly Zoom calls every Wednesday during the 6-week period

@laxmariappan
Copy link

Sounds good @jonathanbossenger

@jonathanbossenger
Copy link
Collaborator Author

Thanks @laxmariappan

If we hold the weekly Zoom calls every Wednesday, that would be the following dates:

  • 6 November
  • 13 November
  • 20 November
  • 27 November
  • 4 December
  • 11 December

Are you free for all those dates? And then, what time would you like to have the call?

@laxmariappan
Copy link

I am available on those days. Can we make it 12:00 UTC? Or any other time will work as well.

@jonathanbossenger
Copy link
Collaborator Author

Sure, I think 12:00 UTC is a good time, let's go with that.

@jonathanbossenger
Copy link
Collaborator Author

jonathanbossenger commented Oct 9, 2024

Content

We've discussed this in Slack, but we're going to focus the cohort on an Introduction to developing plugins.

Structure

I propose we follow the following structure:

Prerequisite preparation and reading

Cohort participants will be required to sign up for the Beginner WordPress Developer course and complete all the lessons in the first module on A brief overview of how WordPress works:

Weekly course content to be covered

Each week, we can focus on specific topics related to beginner plugin development from this learning pathway.

At the start of the week, we ask folks to work through the related content in the course, and then we discuss it during the Zoom call on Wednesday.

For some weeks, more than one lesson is listed under related content. This does not mean we have to cover all those lessons as part of the weekly call. Additionally, where there are only 1 or 2 lessons, it's also okay to share other resources around that topic (developer docs, developer blog posts, etc.).

Week 1: Setting up a local development environment

Primary objective: participants will set up a local development environment and choose a code editor

Related content:

Week 2: Basic plugin requirements

Primary objective: participants will build their first plugin that can be activated on a WordPress site. It does not have to do anything.

Related content:

Week 3: Hooks and Filters

Primary objective: participants will learn how to use action hooks and filter hooks

Related content:

Week 4: Custom post types and taxonomies

Primary objective: participants will learn how to register a custom post type and a custom taxonomy.

Related content:

Primary objective: participants will learn how to register and use post meta for custom data

Week 5: Custom post type data
Related content:

Week 6: CSS and JavaScript

Primary objective: participants will learn how to enqueue and use CSS and JavaScript in their plugins.

Related content:

After the cohort

Participants will be encouraged to complete all the other lessons in the Beginner developer course.

@laxmariappan let me know if you have any questions, comments or feedback about this suggestion.

@laxmariappan
Copy link

@jonathanbossenger everything looks great👏

I am sure the participants will get much value out of it 🙏

@jonathanbossenger
Copy link
Collaborator Author

@jonathanbossenger
Copy link
Collaborator Author

Announcement post: https://make.wordpress.org/training/2024/10/13/announcing-the-next-learn-wordpress-course-cohort/

@jonathanbossenger jonathanbossenger changed the title Learn WordPress Course Cohort #3 Learn WordPress Course Cohort: Introduction to Plugin Development Oct 29, 2024
@jonathanbossenger jonathanbossenger pinned this issue Oct 29, 2024
@jonathanbossenger
Copy link
Collaborator Author

Participant update:

42 participants signed up. Three did not have valid Slack accounts, so I had no way to contact them to invite them to the cohort.

This leaves us with 39 valid sign-ups.

@laxmariappan has confirmed he's happy to proceed with that number. This will be the largest cohort we've run so far!

I will be reaching to out all 39 this week to confirm their participation, and adding them to the #training-cohorts channel in Slack.

@jonathanbossenger
Copy link
Collaborator Author

Participant Update:

I have DMd all valid Slack accounts today. There were an additional few participants that didn't have Slack accounts, so the current total number of potential participants is 34.

Call planning

Based on the cohort content structure and syllabus shared here, this is my proposal for the format for each weekly call.

Week 1: Welcome (30 minutes) and local development environments (30 minutes)

  • Welcome all participants
  • Introduce facilitators
  • Allow each participant to introduce themselves (name, location, what they do with WordPress)
  • An overview of local development environments
  • Cover all the available options (see https://learn.wordpress.org/lesson/local-development-environment/) and anything else we want to add
  • Allow time for questions related to local development environments

Week 2: Basic plugin requirements

  • Short welcome
  • Cover the basic plugin requirements
  • Show creating a plugin with a plugin header, and activating it on the local WordPress site
  • (optional) Cover the plugin header fields in more detail
  • Questions

Week 3: Hooks and Filters

  • Short welcome
  • Cover any questions from last week
  • Cover hooks and filters, and show some examples (either from the lesson or your own)
  • (optional) Cover hook priority, hook parameters, and hook order
  • Questions

Week 4: Custom post types and taxonomies

  • Short welcome
  • Cover any questions from last week
  • Cover registering a basic custom post type and a custom taxonomy
  • (optional) Cover some more of the possible parameters that can be used when registering a custom post type or custom taxonomy
  • Questions

Week 5: Custom post-type data

  • Short welcome
  • Cover any questions from last week
  • Custom fields, how to enable custom fields in the editor, how to add new custom fields from the Custom fields panel, how to add/edit custom fields via code
  • (optional) Cover how to automatically pre-populate field names for the Custom Fields panel
  • Questions

Week 6: CSS and JavaScript

  • Short welcome
  • Cover any questions from last week
  • Show how to enqueue custom CSS or JavaScript
  • (optional) Cover the use of parameters like dependencies and version number, also using timestamp for cache busting during development
  • Wrap up cohort, inviting folks to continue with the rest of the learning pathway.

Any items marked as optional can be left out if we're running out of time, but it is suggested to prepare for these topics anyway.

Plugin content

The lessons in the developer learning pathway create a bookstore plugin. We should follow that code as much as possible so that learners follow the same code examples from the lessons. However, we can add more things over and above the code form the lessons, as we see fit.

@laxmariappan, let me know if you have any comments/questions, or suggestions on the above plan.

@laxmariappan
Copy link

@laxmariappan this is a great plan.

I'm thinking of adding some examples and a simple quiz ( poll ) during the session

@jonathanbossenger
Copy link
Collaborator Author

Weekly Zoom meeting details

Topic: Introduction to Plugin Development course cohort
Time: Nov 6, 2024 12:00 Universal Time UTC
Every week on Wed, 6 occurrence(s)
Please download and import the following iCalendar (.ics) files to your calendar system.
Weekly: https://us02web.zoom.us/meeting/tZwvf-2gqzsoHtL77ZsOd5fVeTxRlmoGNeFK/ics?icsToken=98tyKuGgrDMuEtGVsh2BRpw-AIqgLPzwmGJBgrdxy0jfEA9XNwXAM9ZaAL5yH__-&meetingMasterEventId=Acvri6kBSmypxaS8YkA_Yw

Join Zoom Meeting
https://us02web.zoom.us/j/88284850246?pwd=lPTA9Lu5YTNciBZu2trhcMl9NfUvrE.1

Meeting ID: 882 8485 0246
Passcode: 364025

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
Status: 🚧 Drafts in Progress
Development

No branches or pull requests

2 participants