Howdy, Stranger!

It looks like you're new here. If you want to get involved, click one of these buttons!

Try Vanilla Forums Cloud product
Vanilla 2.6 is here! It includes security fixes and requires PHP 7.0. We have therefore ALSO released Vanilla 2.5.2 with security patches if you are still on PHP 5.6 to give you additional time to upgrade.

Addons directory, version 2

LincLinc Director of DevelopmentDetroit Vanilla Staff

I have some open-ended questions for our open source team about the Addons directory here.

  • What does an MVP (minimal viable product) for a new Addons directory look like?
  • What current strengths should be preserved; what weaknesses must be addressed?
  • What would your involvement in a development project to replace it look like?

What else should we talk about before we start planning?

R_J
«1

Comments

  • LincLinc Director of Development Detroit Vanilla Staff
    edited September 2014

    To get things started:

    1) I think it should be GitHub-dependent. I want to see every addon we make available for download here to have a repository we can see. That's a security feature to an extent (we can see changesets), but mostly so there's a dedicated issue tracker where we can communicate with the authors. Our discussions list is jammed with addon issues that don't belong here. Releases should be GitHub-based too, without requiring manual uploads to our server.

    This does add a git knowledge requirement to being part of the directory, but I think GitHub has the tools now where even a novice can get going with it quickly.

    2) A WordPress-like "compatible with" poll would be a welcome replacement to the unscalable "approved by Vanilla" mechanism.

    AdrianSudoCat
  • R_JR_J Cheerleader & Troubleshooter Munich Moderator

    Filter by Vanilla subversion
    Validation/Recommendation by vanillaforums.org users ("Validated by User A, User B, User C; Recommended by User C"). 5 star rating would be nice.
    Upload by pasting GitHub link (autifill link to project)
    Design: make "Ask a Question" more prominent. Shouldn't it be class Button Primary?

    Concerning involvement: I can give feedback, but I do not think I'm qualified to work in a bigger project, though looking at some issues should be no problem.

  • LincLinc Director of Development Detroit Vanilla Staff
    edited September 2014

    @R_J said:
    I do not think I'm qualified to work in a bigger project

    http://en.wikipedia.org/wiki/Dunning–Kruger_effect

    The Dunning–Kruger effect is a cognitive bias manifesting in unskilled individuals suffering from illusory superiority, mistakenly rating their ability much higher than is accurate. [...] Meanwhile, people with true ability tended to underestimate their relative competence

    We were just discussing the relationship between this and our issue tracker at the office today. ;)

    R_JBleistivt
  • A tighter versioning system and possibly a more closely coupled relationship between version of the framework and Addons. Filtering on the interface to do with that.

    grep is your friend.

  • Current strengths

    • Great integration into Vanilla (discussions can be attached to addons, addons appear on the user page and in activity)
    • Easy to upload an addon and add a description
    • Filter options for Applications, Themes, Plugins

    Current weaknesses

    • No source control integration
    • lacks polish in some places (addon description textbox very minimal, vanillicons not shown in the attached discussion list)
    • No way to delete and manage screenshots. I think, if the description editor would support image uploads, the images could just be added to the description and the screenshots-section could be taken out (large images like theme previews would still have to be fancyboxed, though).

    Suggestions

    @R_J said:
    5 star rating would be nice.

    While ratings would be cool, I think users should only be allowed to give a rating, when they also write a small review.
    What I see a lot in the Wordpress addons repo are plugins with a low star count but no indication why.
    (Sure, there will still be the "doesn't work" reviews, but you could at least reply to those.)

    While making the releases entirely github based is a good idea, I think a certain directory layout has to be enforced.
    There's the temptation to simply upload the zipped master, but that will only result in people failing to install the addon as the folder is called pluginname-master.

    My themes: pure | minusbaseline - My plugins: CSSedit | HTMLedit | InfiniteScroll | BirthdayModule | [all] - PM me about customizations

  • hgtonighthgtonight ∞ · New Moderator
    edited September 2014

    Assuming you are going to use git/GitHub, an MVP must have the following:

    • vf.org user mapped to github.com user in a verified way
    • default repo structure
      ** aim to pull extra metadata from the repo (screenshots, readme description, hi-res icon, etc.)
      ** Makes sense to users cloning the repo directly
    • compatibility poll
    • auto-linking to dependencies if they are in the directory
    • search name and description

    Some nice to haves:

    • trigger directory update from commit message
    • changelist generation
    • ratings/reviews
    • donation links (gratipay, paypal, etc.)

    I would think you would need either a) a hooks script to copy into a user's git repo or b) some documentation on how to set up github webhooks

    It would be great if the project requirements, once set, were public and then development was done by the entire community.

    Search first

    Check out the Documentation! We are always looking for new content and pull requests.

    Click on insightful, awesome, and funny reactions to thank community volunteers for their valuable posts.

  • LincLinc Director of Development Detroit Vanilla Staff

    @hgtonight said:
    It would be great if the project requirements, once set, were public and then development was done by the entire community.

    Who the hell else do you think is volunteering for this mess? :D

    R_J
  • AdrianAdrian Wandering Spirit Montreal Vanilla Staff

    All great ideas here, one I see missing is some sort of way to know a new version is available.

    Sharing is caring

  • hgtonighthgtonight ∞ · New Moderator

    @Linc said:
    Who the hell else do you think is volunteering for this mess? :D

    I hope your body can take it.

    Search first

    Check out the Documentation! We are always looking for new content and pull requests.

    Click on insightful, awesome, and funny reactions to thank community volunteers for their valuable posts.

    Linc
  • Just had an idea: To make it more vanilla-ish, instead of ratings, it'd be cool if people could react to plugins. There could be reactions like "Works", "Incompatible", "Don't understand", "Ate my cat",... etc

    My themes: pure | minusbaseline - My plugins: CSSedit | HTMLedit | InfiniteScroll | BirthdayModule | [all] - PM me about customizations

    vrijvlinderphreak
  • vrijvlindervrijvlinder Papillon-Sauvage MVP
    edited September 2014

    @Bleistivt said:
    Just had an idea: To make it more vanilla-ish, instead of ratings, it'd be cool if people could react to plugins. There could be reactions like "Ate my cat",... etc

    This reaction means it could be hazardous .. STAY AWAY

    Bleistivt
  • LincLinc Director of Development Detroit Vanilla Staff

    Let's back up a little and re-approach it from this angle: http://vanillaforums.org/discussion/28023/user-stories-feature-development

    What are some user stories for the addon directory?

  • When I decided to switch to Vanilla, I tried to ease the transition for my users by installing plugins for the features they've grown accustomed to, first.

    I filtered the addons by "Most Popular" and went through the first 3,4 pages until I found everything I needed (Quotes, FileUpload, WhosOnline, Signatures, etc.)
    Most of the plugins had flaws though, bugs that were mostly already fixed for the version in the addons repository (which I didn't know of).

    • I missed out on a lot of great plugins, because mostly plugins, that have been there since 2011 have the chance to rise to the top pages
    • I installed old version of plugins with annoying bugs

    So yeah, source control integration is a top priority, I'd even go as far to say that if only a single feature could be implemented for version 2, it should be the github integration.

    The most popular option should have a filter like "most popular last week/month/year"

    The "Approved by Vanilla" didn't really make an impression on me, when I noticed the majority of the plugins just weren't approved.

    Unrelated question:
    When will development start?

    My themes: pure | minusbaseline - My plugins: CSSedit | HTMLedit | InfiniteScroll | BirthdayModule | [all] - PM me about customizations

    peregrine
  • peregrineperegrine MVP
    edited September 2014

    I second @Bleistivt's notion with a twist.

    from a user story as an admin.

    lots of people are forced to go to github to get reliable working versions of add-ons developed by staff for vanilla 2.1
    and some also need tweaks as well.

    IMHO, I still wonder what the reasoning is , or the problem, or the need to do a major overhaul, just to put working versions of staff related plugins in the add-ons section. An overhaul need not and should not pre-empt the upgrading of downloadable working plugins from http://vanillaforums.org/addons.

    As far as automatically adding user donated plugins to github. I am not a fan (and probably a minority). If a an author maintains plugins and upgrades and doesn't have reasonable means to use github or the knowledge, it doesn't help.
    All plugins submitted by users are not something that was agreed upon by the authors uploading the plugin. They may not want it on github for one reason or another, and they still may maintain it. I think express consent to place on github should be opt-in rather than opt-out.

    The add-ons repository - should be the DE FACTO area for a working version of the add-on with 2.1

    e.g. Qna need upgrading and/or synched with the add-ons section

    Whosonline, Pockets, and Fileupload to name just a few. or moved to the recent

    some may need to be tested and fixed.

    e.g. some actually work correctly ...

    But I see no compelling reason to have to go to github for Pockets, since the github version works fine in 2.1 , yet in the add-ons section it is outdated.

    I may not provide the completed solution you might desire, but I do try to provide honest suggestions to help you solve your issue.

    Bleistivt
  • peregrineperegrine MVP
    edited September 2014

    Another suggestion is remove the approved label currently and change all staff created plugins to "Vanilla Staff Created"

    and the rest "Community Developed"

    then people will not get scared off by Approved vs non-Approved.

    In addition some plugins may work fine for small communities but not work great with large communities.
    Scalablility may not be the best indicator for approval. but could be noted that the plugin may not be suitable for large communities and cause a performance drag. At the same time it may be the ticket for functionality needed for a small community.

    Currently, An approved plugin may become NOT approved. just by making a simple change of version number without any other changes,

    I may not provide the completed solution you might desire, but I do try to provide honest suggestions to help you solve your issue.

    vrijvlinderphreak
  • vrijvlindervrijvlinder Papillon-Sauvage MVP

    @peregrine said:
    Another suggestion is remove the approved label currently and change all staff created plugins to "Vanilla Staff Created"
    then people will not get scared off by Approved vs non-Approved.

    Yes or make the approved ones fail proof and updated guaranteed or your money back kind of thing....

    I would like there to be some form of getting feedback from people who download. I can't believe I have say 2k downloads and only 4 complaints ...

  • peregrineperegrine MVP
    edited September 2014

    test quoting erratic. need to copy and paste.

    @vrijvlinder said:
    I would like there to be some form of getting feedback from people who download. I can't believe I have >say 2k downloads and only 4 complaints ...

    99% of the time the only way anyone makes a comment is if they want a modification, or have a complaint or found a bug. Positive user feedback is about as sparse as trying to get anyone to participate in a community thread :) seeking non-developer user input. but thats another story. >:)

    edit block-quote first - sentence above is not in the quote.

    I may not provide the completed solution you might desire, but I do try to provide honest suggestions to help you solve your issue.

    vrijvlinder
  • vrijvlindervrijvlinder Papillon-Sauvage MVP

    Yea that has happened to me too where I quote but the body is missing, sometimes it takes a bit to appear sometimes not at all and I must copy paste...

    peregrine
  • peregrineperegrine MVP
    edited September 2014

    need to copy and paste if trying to quote this comment...

    http://vanillaforums.org/discussion/comment/216249/#Comment_216249

    perhaps if it starts with a blockquote - it ignores the rest.

    thought it had to do with last comment but not really

    I may not provide the completed solution you might desire, but I do try to provide honest suggestions to help you solve your issue.

  • LincLinc Director of Development Detroit Vanilla Staff

    The blockquote bit is a Markdown + Quotes bug, I believe. Would be a good item to pursue here perhaps: http://vanillaforums.org/discussion/27981/upgrading-markdown-lib

    peregrine
  • hgtonighthgtonight ∞ · New Moderator

    As a developer, I would like to publish my plugins via a link to my version control system (git, hg, svn, etc.) so that I can easily push changes.

    As a developer, I would like to add metadata to releases so I can decrease the cost of maintenance.

    As a user, I would like to filter the list of plugins based on popularity so I can see the best of the best.

    As a user, I would like to see an indicator of trust for a specific author/plugin. Something like "this plugin has been reported as working by x users for Vanilla Y.Z.A" would help me set expectations for the plugin.

    As a user, I would like to be able to search the repository by name and description so I can quickly find plugins with keywords I am interested in.

    Do these make sense as user stories?

    Search first

    Check out the Documentation! We are always looking for new content and pull requests.

    Click on insightful, awesome, and funny reactions to thank community volunteers for their valuable posts.

    Linc
  • ToddTodd Chief Product Officer Vanilla Staff

    Those are perfect examples of stories @hgtonight‌. Couple of questions.

    As a developer, I want to put multiple or just one addon in a repo?

    As a developer, I would like to add metadata to releases so I can decrease the cost of maintenance.

    Can you expand on what you mean by metadata?

    Linc
  • hgtonighthgtonight ∞ · New Moderator

    @Todd said:
    Those are perfect examples of stories hgtonight‌. Couple of questions.

    As a developer, I want to put multiple or just one addon in a repo?

    As a developer, I prefer single addon repositories since I usually clone directly into the plugins folder on my web server for ease of updating.

    Can you expand on what you mean by metadata?

    I was thinking mostly screenshots, changelists, and upgrade instructions.

    Search first

    Check out the Documentation! We are always looking for new content and pull requests.

    Click on insightful, awesome, and funny reactions to thank community volunteers for their valuable posts.

  • As a developer, I prefer single addon repositories since I usually clone directly into the plugins folder on my web server for ease of updating.

    I agree and that is how I have released mine.

    One idea is simply to link to individual's github projects and the repos section more of a front end and list for that. But the linkage subject to checks and balances.

    I was thinking mostly screenshots, changelists, and upgrade instructions.

    My experience as a developer is that the PluginInfo format has limitations regard reliable and accurate information, my experience as a user is pluigns descriptions vary in their usefulness and information can become outdated. it may benefit from a standardised format and maybe some compulsory meta, and interface hints/tips to improve the quality would make sense, as well as notifications in line with version to encourage

    I think some conventions for licence, changelists, readmes, screenshots, demos would be useful plus managing dependences. Where possible follow github conventions.

    grep is your friend.

  • My experience as a developer/user is is harder to get/set accurate descriptor of version and relationships between sofware, in one case I have to put some additional code in setup.

    It is also not possible to filter in the repos becuase there is no established conventions.

    grep is your friend.

  • JasonBarnabeJasonBarnabe Cynical Salamander ✭✭

    As an add-on consumer, I would like a good indication of whether the add-on is compatible with my version of Vanilla so that I can reduce the amount of time I spend looking at non-functional add-ons. This could include a author-provided indication (e.g. works with 2.1, doesn't work with 2.0, untested in 2.3) as well as community-provided info.

    As an add-on consumer, I would like to see a demo of add-ons in action to see if the functionality is what I want. I wonder if it would be possible for Vanilla to set a up a dynamic test forum where you can choose which add-ons to activate...

  • x00x00 MVP
    edited September 2014

    As an add-on consumer, I would like to see a demo of add-ons in action to see if the functionality is what I want. I wonder if it would be possible for Vanilla to set a up a dynamic test forum where you can choose which add-ons to activate...

    I think the onus should for the developer to host any demo, if applicable. Vanillaforums.org not running a dedicated PaaS which is sandboxed, so third party code can run.

    grep is your friend.

  • LincLinc Director of Development Detroit Vanilla Staff

    How do we handle security issues in third-party plugins in the directory?

    peregrine
  • vrijvlindervrijvlinder Papillon-Sauvage MVP

    @Linc said:
    How do we handle security issues in third-party plugins in the directory?

    I think that if it is a known security issue that has been corroborated by several people, it should be removed.

    If it is a lesser security issue or it has not been corroborated, then place a notice in red "Potential security issues, use carefully" ...

    It is a can of worms because if it is not removed, people will blame Vanilla for distributing hazardous plugins even if nothing happened while using it.

    Maybe the best thing is to try to get ahold of the author and if they don't reply within a certain time period, then remove the plugin in question. If they come back and plugin is gone, they can re upload a new updated version.

    peregrine
  • LincLinc Director of Development Detroit Vanilla Staff
    edited October 2014

    Removal, as it currently stands, means permanently deleting the addon and all associated discussions, revisions, etc are cast to the wind. It also unregisters the namespace so it can be taken by anyone else.

    peregrine
«1
Sign In or Register to comment.