Wikipedia Education Program/Facebook Open Academy 2014 welcome

 Hi everyone!

I'm the product manager for Wikimedia Foundation's Education Program extension, and I'll be the mentor for this project along with developer Andrew Russell Green. We're both really excited to work with you!

Our project is to build software for managing Wikipedia assignments in university courses, where students write for Wikipedia as part of a course. We have a MediaWiki extension that does this right now, but we need to overhaul it. We want to make it easy for a professor to set up a course project (with plenty of guidance so they can design an assignment that will work well on Wikipedia, without being disruptive), easy for students to learn the basics and become part of the Wikipedia community, and easy for other Wikipedians to monitor course assignments and communicate with class participants. And we want to make the software more flexible, so that it can work well for other kinds of organized editing projects besides university course assignments. The plan is to start replacing the current code, feature by feature, with more general and better-engineered systems that play nicely with the rest of MediaWiki. That's where you come in!

In preparation for collaborating on this project, here are some things you could do:

1. Join #wikipedia-en-ambassadors on Freenode IRC, which is our working channel. This is the best way to get in touch with us and collaborate. I'm almost always logged on (ragesoss), and even if I'm not actually around, I'll see your messages later on. And Andrew (AndyRussG) is on whenever he's working as well. Come introduce yourself and chat! 2. We use Git and Gerrit for MediaWiki development and code review. Follow the first steps here to get set up for making commits: . If you're not familiar with Git, this tutorial is a good entry point:  3. The easiest way to get started is to run MediaWiki locally using MediaWiki-Vagrant: . For the EducationProgram extension, you'll want to enable the role "education". 4. Play around with the extension, and see how it gets used. You can check out real course pages on English Wikipedia: . You can see workflow diagrams and our roadmap here:  5. Get ready to ship software. We're going to be pushing some of our changes as we go. New code gets deployed to Wikipedia on a weekly basis, with new deployment branches based on 'master' every Thursday. 6. Prepare for code review. All changes to the project go through code review. Especially early on, it can take more (sometimes much more) time to revise a change than to make it initially -- especially if you're using Git and/or Gerrit for the first time. This process will become much smoother with experience. 7. Think big. While there are only a few thousand student editors using the EducationProgram extension so far, the reason we're working on it is because it has the potential to see vastly more use. If we can reach the point where this software can help professors and student editors get started editing Wikipedia without placing extra burden on the community of experienced editors, it will be easy to find hundreds or thousands of additional professors who want to use it.

Some optional things you might consider:

1. Look through the documentation:  There is a lot of text and most of it is very boring, but some of it will probably be useful. 2. Go through the "Training For Educators": . This will give you a better picture of the kinds of course assignments the EducationProgram extension facilitates. This training is what professors go through before they get started using the software. 3. Spend some time editing Wikipedia articles. The EducationProgram extension helps groups of newcomers get started on Wikipedia, so the more you understand about how editing works and the challenges (both technical and social) that newcomers face on Wikipedia, the better your contributions to the software will be. 3. Browse the bugs filed against the EducationProgram extension:  Feel free to file new ones, if you notice things that bother you about the extension. 4. Fix a bug / implement a feature. You can search for stuff tagged "easy" on Bugzilla as a starting point, or just browse the bug list, or ping me in IRC. Making a small fix will familiarize you with the development process. 5. Cheat. The best-kept secret of Code Sprints is that the easiest way to succeed is to cheat: come into it with a developed idea and a bit of working prototype code, and use the time to focus on completing it.

Sage Ross Global Education Program Wikimedia Foundation