Hi everybody! Some of you may know me from various patches or WP-related endeavours: I’m Ryan McCue, developer of the SimplePie library used in core, along with a HTTP library called Requests, and long-time core hacker. I’ve been working with WordPress for quite a while now, both on open source and professional work with clients. What you may not know is that I’m also studying Electrical Engineering and Maths at UQ in Australia, and I’m here to give you a heads up on my Summer of Code project over the coming months.

For those who missed the discussion on wp-hackers about my proposal, I’m working on a JSON-based REST API for core. I started on this with an initial proof-of-concept back at the end of last year, and I’m now working on expanding this out into a larger project. The code is being written as a plugin for testing, with the goal of having it integrated into core in some form post-GSOC.

I’m planning on following a release strategy similar to MP6, with a weekly release along with the updates included in the release. At the moment, I’m working on completing the basic reading and writing of post data having just completed the major design documents, and I’m hoping to get the first weekly release out next week. I have a more detailed timeline which you can check out in my announcement post on my blog.

(You’ll notice I’m currently about a week behind on my schedule, which I suspected may happen, as I’m in the midst of my final exams here. I’ve allocated an extra week just before the midsemester review for catching up if I don’t do so before then.)

As it is, the plugin is in a usable format, and you can grab it from either GitHub or Subversion. I’d also recommend checking out the GSOC Trac issues if you’d like to keep track of the status. I’d love to have your feedback (especially on the design documents) as I move forward.

Cheers, and I look forward to working with you all in the coming months!

#gsoc, #gsoc2013, #json-api, #rest-api

Hello everyone Applications for Google Summer of Code…

Hello everyone! Applications for Google Summer of Code are due in just 13 hours! (1900 UTC)

I’ve been reviewing a lot of proposals and ideas. But if you’re waiting until the last minute (like I’m doing with this post), here are some random nuggets:

  • Original ideas are encouraged! We have a great ideas page but we’re not going to complain if you submit something else.
  • You don’t need to be a computer science student! We’ve had liberal arts majors and things turned out just fine.
  • Please demonstrate your abilities by making an attempt to contribute to WordPress core or by writing a plugin. Even though this may happen after applications have closed, it could help.
  • You can submit more than one proposal. This is good because we won’t accept two students for the same proposal. And because you might have two great ideas but aren’t sure which one aligns better with our interests. That’s okay — submit them!

Finally, here are four more ideas in case nothing else appeals to you. (I’ll make sure these make it onto the ideas page next year.) If you’re still hunting, see if any of these set off bells in your head: (yes, there are WordPress plugins for everything, but innovation and new approaches are good things)

  • Activity. Activity streams, action history, notifications. Imagine what a dashboard could look like for a busy, multi-author site, and how helpful it could be to see what’s truly going on “right now” — as well as what you missed.
  • Meetups. Local WordPress communities organize a lot of meetups. A set of tools for organizers and the local community could be really helpful. (These tools could include integration with meetup.com and wordpress.org profiles.)
  • Dependencies. Allow plugins and themes to be dependent of one another. A theme could require a plugin or example, and WordPress would handle installing that plugin when you install that theme. Similar idea: Compatibility metrics. (Or: Can we be sure it is safe to upgrade everything?)
  • Bug tracker. WordPress can be a great platform for developer tools. Why not a bug tracker? (Read the 2010 ideas page for more.)

Of course, there’s a lot of other great ideas on the 2013 page. If you haven’t looked recently, I added a few at the start of the application period, including some JavaScript-heavy stuff (editor modes, HTML5 application cache, TinyMCE views). Good luck!


GSoC Chat

Mentors: GSoC chat in #wordpress-gsoc in about an hour if you’re available.


GSoC 2013 Update

We have been accepted as a mentoring organization for GSoC 2013. I’m already being bombarded by overenthusiastic students with questions, so we need to get our act in gear re mentor list and project list more or less now. Definitely by tomorrow.

IF you have worked on an assigned feature team in one of the last few releases, you can be a mentor, yay!
IF you haven’t worked on an assigned feature team but you’ve had multiple patches accepted in one of the last few releases, you can be a mentor, yay!
IF you have themes/plugins in the .org repo and the lead devs say your code is good, you can be a mentor, yay!
IF you don’t meet either of these criteria but think you’re skilled enough and want to contribute, I need to have your code vetted by the lead devs.

If you are in one of the “yay” categories, please add yourself to the mentor list at https://codex.wordpress.org/GSoC2013 and leave a comment here saying you did so. Then, go to http://www.google-melange.com/gsoc/org/google/gsoc2013/wordpress, scroll down, and follow the process to apply to be a mentor in the gsoc system. Note that it’s a little bit busted right now, so you might not get a confirmation back from me until they fix the existing bug there.

If you are in the maybe category, you can ping me in irc, comment here, or email ([my username/irc nick]@wordpress.org) me to get on the list of potential mentors that will have code reviewed by the leads.

Also, project ideas can be added to the wiki page as well IF you fall into the pre-approved to mentor category. Worth running ideas past the leads in irc for a gut-check first. Other ideas can be posted here for review.



GSoC 2013

It’s time for us to apply for GSoC 2013 if we want to participate. I can take care of the application, but will need everyone’s help in producing the project ideas and mentor sections.

“Why didn’t we get accepted last year?”

We didn’t get accepted last year because our Ideas page wasn’t as good as it had been in past years, and they wanted to make room for some new orgs, so we got cut. Our ideas page wasn’t great because we were planning to embed students in regular cycle feature teams, but we didn’t write up all the potential features this might have included. This year we need to write out all the possible features.


The more project ideas the better, so things that aren’t targeted for the next cycle but that we might want to do as a plugin to get some traction for inclusion in a later release would be great projects, too. Project ideas can include core features, plugins, themes, unit tests, etc. This includes work on .org site things like the plugin used to power WordCamp sites. The projects must be code, though, not design, documentation, etc. List your project ideas in a comment on this post. Please give it a title, and a short one-paragraph description. If there’s a ticket or relevant thread somewhere, link to it.


Want to volunteer to be a mentor? You need to be good enough with wp coding that you currently don’t need oversight to generally get it right (though obviously we all can get better with more eyes on code), and have enough time to be available to your student for feedback and code review (at least once per week, though more often is better). The time commitment can be anywhere from one hour to ten hours per week, depending on how far along your student’s project is, and what there is for you to review (an hour or two a week is typical). You get a GSoC tshirt at the end. Want to be a mentor? Leave a comment on this post with a short/one-paragraph little bio about yourself, what kinds of projects you are interested in/qualified to mentor, and links to your website, wordpress.org profile, and twitter account.


I know you are right smack dab in trying to get this release out, which is why I’ll take care of the application and associated materials. That said, I’m a bit out of the loop with core plans, so coming up with the potential projects list on my own would mean they might not mesh with the actual goals/plans of core team very well. I’ll be looking to you guys to give me a sense of priority/possible plans for the next dev cycle, and to tell me who is qualified to mentor a project from the final list of volunteers. Will ping you offline for this.

Not sure how to write up a project idea or your short mentor bio? Take a look at the ideas page from 2011 for a guide.

Note 1: This year BuddyPress will be applying as a standalone organization with WP as the vouching organization. I’ll be helping Paul Gibbs get their application going.

Note 2: I haven’t announced it yet since it just happened, but we’ve been accepted as a mentoring organization for the Gnome Outreach Program for Women for the summer session. Unlike GSoC, where Google foots the bill, we’ll have to raise the money to cover our interns for the Gnome program, so I’ll announce it along with a fundraising drive. The Gnome program is a little broader than GSoC, and does allow non-code projects, so things like design, ux, documentation, translation, community management, etc would all be possibilities there.

#gsoc, #gsoc2013

Will need two volunteers to be the admins…

Will need two volunteers to be the admins for GSoC, overseeing our application, mentor wrangling, and if we get selected, student wrangling. Good project management skills required, familiarity with core contributors a plus. Note: though most mentors will likely come from this group, it’s not my intent to pull devs away from development to be admins. Just posting here bc I know a number of project managers follow this blog. The admin volunteers would be coordinated via the community group and would work with devs across core, themes, and plugins as needed. If interested in volunteering as an admin, ping me. Thanks.


No GSoC 2012

WordPress was rejected as a mentoring organization from GSoC for this summer. This is unexpected, as I spent some time during the application period talking with Carol (Smith, the GSoC administrator) about our proposed approach of building a release cycle around GSoC and making it a mentorship-focused release and she seemed to approve the idea.

We can still do a summer mentorship-focused release for 3.5 if we want to, though. We could pimp it as independent study for credit for college students and put more focus on non-student potential contributors, such as from the plugin/theme ranks. If nothing else, it would avoid the inevitable couple of students who are only in it for the $$. We’ll need to decide if we still want to do something along these lines, or if we don’t.

Why did we get rejected? We don’t know yet. I used last year’s successful application as a template. There will be a feedback meeting in a week or so, and Carol says to attend that when it is announced and we can find out why during that meeting.



#3-4, #3-5, #gsoc, #mentorship

In addition to the usual program of check…

In addition to the usual program of check-ins, questions, and strategy in today’s dev chat, I’d like to carve out a few minutes at the end to talk GSoC. I’ll probably start putting together our application this weekend to be a mentoring organization, and will need to know who we’ve got on tap for mentoring teams.


GSoC time Google announced GSoC and I’m guessing…

GSoC time! Google announced GSoC and I’m guessing we’ll do it again, so roll call: who wants to be a GSoC mentor this year? Second: who wants to be the administrator? I’d like to get it off my plate if possible. Candidate should be able to keep track of dates, have good writing skills, be willing to nag (even people you respect), and be able to prioritize GSoC communications.