Student

Stas Sușcov

Mentors

Bio

I’m a WordPress and BuddyPress developer and bbPress hacker, and I’m also former Romanian localization team driver and 2010 GSoC student who wrote the Courseware project.

Project Schedule

You can follow and subscribe to the project calendar here.

Project Description

I will be working on the training platform under codename: learn.wordpress.org. The scope of my project is to deliver a full featured training and testing platform for helping everyone learn easier WordPress (both end-users and developers).

http://wp.me/Papye-4f

Abstract

WordPress doesn’t have an official handbook or a tutorial resources website. Even though the platform is very popular and used by a lot of people, there will always be people who will find hard to read/understand Codex articles and will search for books on topics they couldn’t catch up. So the idea I would like to work on, is a new learning resource for WordPress community, that will offer courses, assignments and basic “certification” for everyone who wants to learn WordPress. Codename: learn.wordpress.org

The idea

Last year GSoC, I wrote a teaching tool based on BuddyPress called Courseware. The initial set of features and most of the feature reviews were coming from Jane. This year, when trying to propose Courseware for another GSoC, we came up with the learn.wordpress.org idea, from what all the sides should win:

  • the WordPress community
  • new WordPress users
  • the Courseware project

So the task would be to use Courseware and build learn.wordpress.org to offer:

  • training courses to help people catch up faster with WordPress
  • tests/quizzes to evaluate users/developers knowledge
  • some basic certification/on-line diploma verification service
  • offer tools for easier documentation/tests submission/import for community

The ideal workflow to achieve, would be:

  1. a user interested in learning WordPress registers
  2. joins a group with a topic he wants to learn (lets say “Publishers”, can be “Developers/Designers/etc…”)
  3. gets/reads the documentation pages
  4. does the tests/quizzes
  5. instantly gets a grade/coverage percentage
  6. later he can download as a diploma/certificate or get a private URL he can link in his resume

Right now Courseware has courses part with assignments and responses, along with a gradebook (bibliography and schedules might be cut off if there’s no need for that). Courses along with responses and other class activity is already integrated into BuddyPress profiles through activities and notifications. To complete the task for learn.wordpress.org, it will require writing a quizzes/tests system and adding a new component for creating class pages with static information.

A more challenging part of this idea would be the content. Initially to fill the “classes” with courses and tests, I can write a Codex pages importer or/and a Markdown file importer, so users can use these tools to fulfill the content requirements. Later, maybe we can place a call to the community book authors to donate some of their writings for the project.

The project will be built using latest BuddyPress and Courseware. All the learn.wordpress.org modifications, will represent a plugin and a theme.
A new, more user+information oriented template will be written. Some social utilities will be cut off.

Challenges

Like @dkoopersmith noticed, the chances that Courseware contributors number will get bigger is more likely compared to if I keep it as another plugin in the directory with me the only developer and a couple of users, so I’m very motivated to finish this project in the best way it can only be. Also, not to forget that the final website will serve a lot of users, so problems like scaling will be very appropriate. Not the last, the number of code reviews will be bigger and more in detail, so It will require big commitment from my side not to screw things up!

Schedules

An in details proposed timeline is available here.
The working project version will be done by 12th of July, The rest of the period will be dedicated to improvements, documentation and UI/UX work.

  • May/25 – Improve course pages (internal linking, handbook like organization)
  • May/30 – Tests/Quizzes
  • June/6 – Tests/Quizzes hardening/testing, work on styling
  • June/13 – Write the diploma/certifications part
  • June/20 – Start building learn.wordpress.org, get a working theme, define the layout/UI/UX parts, maybe add revisions to class pages
  • June/27 – Integrate Courseware into it, start building classes
  • July/4 – Test, test, test it! Try a real deployment.
  • July/16 – MIDTERM
  • July/18 – Get the feedback, improve the system, work with UI/UX team
  • August/1 – Finish the content for all the required classes, work with documentation team, write the required content importers