Make WordPress Core

Tagged: core plugins Toggle Comment Threads | Keyboard Shortcuts

  • Aaron D. Campbell 5:31 pm on January 29, 2010 Permalink
    Tags: core plugins   

    Core Plugin Infrastructure Update 

    Just a quick update on where we stand with the infrastructure for core plugin development. The mailing lists are currently being used and it looks like they should be able to scale fine.

    We still need a patch or plugin for Trac (http://core.trac.wordpress.org/ticket/11898) to help it handle the sheer number of plugins currently in the repository (not to mention the expected future growth). If anyone is able to help with that, please post on that ticket.

    The next steps will be to rework the current layout of the plugin pages on wordpress.org. Currently there’s a link on the admin tab to that plugin’s Revision Log as well as the RSS feed for that log. That needs to be moved some place where regular users can see it. Additionally the plan is to add a way for plugin authors to request a mailing list for their plugin directly from the wordpress.org repository.

    I’m excited to see all this fall into place so that we can turn the corner and see how core plugins will really shape up!

     
  • Aaron D. Campbell 6:14 pm on January 11, 2010 Permalink
    Tags: core plugins   

    Core Plugin Infrastructure 

    As many of you know, last Thursday’s dev chat resulted in a core plugins research team team (for lack of a better term). Basically, our job is to try to come up with a list of tools that should be supplied for all core plugins, in order to allow teams of developers to be effective and efficient. It’s only been a few days so far, but we wanted to update everyone on our progress.

    First, we started a new IRC channel on freenode to discuss core plugins. If you’re interested in offering suggestions or ideas, share them in #wordpress-core-plugins. The channel is logged at https://irclogs.wordpress.org/ as well, so feel free to put your ideas there even if no one is presently chatting. I’m sure a few of us will look at the logs (I know I do).

    We also started discussing the infrastructure that is needed. It seems that plugins already have a good SVN system in place, which is great. Additionally we think core plugin teams need trac (which we already have, but it needs some work), and mailing lists. The way we see it, core plugins should have most of the tools available to WordPress core developers, since they’ll be doing the same basic thing on a smaller scale.

    There’s still a lot to do, including coming up with suggestions on how core plugins should be developed, how developers will be added to or removed from a core plugin team, figuring out if any of the tools or processes would benefit all plugins (not just core plugins), etc. We’d love to get more input on these areas, either here or in #wordpress-core-plugins. Please remember though that we aren’t discussing what core plugins should be called, whether or not they’re a good idea, how plugins will become core plugins, or whether my mom’s a core plugin. We’re just trying to come up with a set of tools that would help the developers, and some basic best-practices for plugin development and team building.

     
    • Dan Cole 10:45 pm on January 11, 2010 Permalink | Log in to Reply

      How about considering letting each core plugin have it’s own Trac or be in a core plugin Trac. Plugin Trac works, but it has a lot of noise from the other 7,000 plugins. I think it would be nice to filter content for people. The current plugin Trac seams overwhelming until you get use to it and filter data. I’d assume people are Trac novices. It would also give developers more features, e.g. they could add components or create roadmaps. I like the idea of a core plugin being like core development, but on a smaller scale.

      • aarondcampbell 11:27 pm on January 11, 2010 Permalink | Log in to Reply

        The goal will be to use the existing trac, so that all plugins can benefit from it. However, we do need to see what we can do as far as good filters to allow you to see only what you really want to see, so we’ll try to make that process a lot easier.

    • Andreas Nurbo 5:31 pm on January 13, 2010 Permalink | Log in to Reply

      You should look into how RubyOnRails handles things. And also study GitHub.
      Better docs is also required if you want to improve stuff.
      A core dev cant replace good “best practice” articles as seems to have been suggested in wp corepse chat session. If you want all plugins to benefit from this endeavor you need better articles etc. Looking at core code and design decisions overtime core devs are not some coding gods.

    • John James Jacoby 10:40 pm on January 13, 2010 Permalink | Log in to Reply

      There’s been talk about trying to make a collaborative plugin for BuddyPress, to help group users together and let people “buddy up” with mentors and protege’s to help deliver the best quality code possible. I’d love to help out on something like this.

    • Andreas Nurbo 11:31 pm on January 13, 2010 Permalink | Log in to Reply

      I would be interested to help out with that. Good learning opportunity. I’m in the process of learning BuddyPress inside out since I’m gonna convert a community based on a old c#/asp.net CMS I wrote. Looks like I need to write plugins for BP in the process also.

    • Dan 3:09 am on November 13, 2010 Permalink | Log in to Reply

      I agree with Andreas. Definitately take notes from the Rails community and Git! SVN way outdated when compared to Git.

  • Jen Mylo 3:40 pm on January 8, 2010 Permalink
    Tags: 3.0, core plugins   

    In yesterday’s dev chat, a number of people volunteered to help with projects for 3.0. We agreed that each team will post weekly updates here on wpdevel so that the community can keep up with the progress and weigh in on decisions as they come up. The first one up is the team of AaronCampbell, filosofo, Strider72 and PeteMall. They’ll be working with westi on figuring out the infrastructure and processes around the introduction of core plugins. For the sake of transparency, below is the email I sent them to outline the scope of the project. If anyone has suggestions for the team to take under consideration, catch them in IRC at #wordpress-dev, or better yet, leave comments on their Monday posts here on wpdevel.

    Hi guys. Thanks for volunteering to help get the core plugins system/infrastructure figured out. As you probably guessed, Peter is the lead developer taking point on this, but we thought it would be good to have a volunteer team to help move it forward.

    At the core team meetup, we agreed that for core plugins to be successful as team development projects, they would need basically everything WordPress has: Trac, mailing list, support forums, etc. We also need to make it easier for there to be a multi-committer project. Peter has thought through a lot of these things, so hopefully you guys can chat and come to some agreement on what would be the most useful setup.

    Once you agree on what we need to have in place for core plugin teams to start testing out the structure, if someone could write up what you propose we do, we can get some community feedback on it, and then pull in Barry to actually set up whatever we need systems-wise.

    Aaron brought up a question this morning in IRC: what if a committer starts doing things that are not good for the core plugin? Part of your task is to propose the process by which such a person’s acts would be reviewed and dealt with. My instinct is for the other committers to bring it to the lead devs, and for the lead devs to remove commit privileges if someone is making bad commits. But again, if you guys can write up how you think it should be handled, then we can get community feedback before making any decisions on process.

    The UI for core plugins in the admin is going to be a design challenge. I’m starting up a UI mailing list, and we’ll have a handful of UI design challenges for 3.0 to get more UI/UX designers involved as contributors.

    At the core team meetup, we identified a bunch of areas where it would be good to have a core plugin, but we’ll also need a process for deciding which areas to create a core plugin for, how to choose the committers for each, etc. If you guys can brainstorm a little around that… you guessed it: write up what you propose and we’ll get community feedback. :)

    As mentioned in the dev chat, we want to do a better job of all the mini-projects being visible by having them post updates on wpdevel.wordpress.com. Since there will be about 6 mini-projects (you guys, menu management, bugs, merge, post types, etc), I think the best thing to do is what we did for the GSoC blog this year, which was to give each person (or in this case, project) a specific day on which they’re expected to post their update. That way wpdevel will be getting an update from someone almost every day. I’ll add all four of you as authors to wpdevel, and you can decide who is going to be responsible for posting an update once a week. Since you’re the first mini-project I’m emailing, I’m going to assign you Monday as your day for posting an update each week. That will work well, I think, since your first update can basically introduce what you’re going to be doing and let people leave suggestions in the comments to help get you started.

    For the sake of transparency, I’ll also post this email on wpdevel so people know what you’re tasked with doing.

    If you have any questions, suggestions, etc, feel free to contact me anytime. And have fun! This is going to change the WordPress ecosystem, and you’re in on the ground floor–how cool is that?

     
    • Denis de Bernardy 4:29 pm on January 8, 2010 Permalink | Log in to Reply

      “My instinct is for the other committers to bring it to the lead devs, and for the lead devs to remove commit privileges if someone is making bad commits.”

      That sounds a bit like telling on someone to the headmaster. ;-)

      My own instinct is for the other committers to bring it upfront. Whoever participates should be mature enough to cope with it and adjust accordingly.

      Also, note that you need some sort of clearly defined lead dev(s) for each plugin, too. Consensus is a fine way to take decisions, until something truly controversial erupts. In that case, it’s desirable to have a person or two around whose decision are final.

      • aarondcampbell 5:22 pm on January 8, 2010 Permalink | Log in to Reply

        Denis: I agree that there should be some basic conflict resolution first, but there should also be a process in place for handling escalation.

        And I *definitely* agree that consensus is not a good way to make the tough decisions. Hopefully the rest of the group will agree.

    • Jane Wells 4:32 pm on January 8, 2010 Permalink | Log in to Reply

      Sorry, I didn’t mean for it to sound like running to the teacher. I assumed everyone would be adult enough to realize that the first step is always to talk to each other and try to resolve differences of opinion within the team. Going to the lead devs was my suggestion for escalation if an agreement can’t be reached by the plugin team members.

    • filosofo 5:29 pm on January 8, 2010 Permalink | Log in to Reply

      Is “core plugin” the final term or just the current, working term?

      I was hoping for “canonical.” :)

    • Pete Mall 5:07 pm on January 11, 2010 Permalink | Log in to Reply

      ‘Core’ was the term that was voted in. What’s in the name eh?

    • aarondcampbell 12:56 am on January 12, 2010 Permalink | Log in to Reply

      Just to quickly clarify, the quoted text in the grey box above is the E-Mail that was sent to the aforementioned group to get us started on our project. It seems that some people were confused, thinking that was an open letter to the community as a whole. It was written to a specific group, but posted here for transparency (we got nuthin to hide!).

c
compose new post
j
next post/next comment
k
previous post/previous comment
r
reply
e
edit
o
show/hide comments
t
go to top
l
go to login
h
show/hide help
shift + esc
cancel