Ensuring open collaboration on the SilverStripe project

313 views
Skip to first unread message

Hamish Friedlander

unread,
Oct 20, 2014, 11:59:50 PM10/20/14
to silverst...@googlegroups.com
There has been some discussion on a Github issue of SilverStripe Ltd’s openness in its work on the SilverStripe core project and our commercial influences. We’ve recently started using UserVoice to keep track of potential features and roadmap, and because we haven’t clarified the process by which those turn into commits on master, we’ve ended up sending the wrong message.

How a feature is designed, and whether it's appropriate for inclusion is something that should be discussed by the community, and eventually decided on by the core committers group.

When it comes to what actually gets worked on, that's up to individual contributors, including SilverStripe Ltd. In practice, much of the work that goes into SilverStripe and other open source projects comes as an extraction of client work. For our part, we sometimes use client work as a way of getting feature development funded—and these features happen sooner—but we don't let clients dictate architecture. We assume that other contributors to SilverStripe work in a similar way, and see it as a pretty common part of the “do-ocracy” that is that open source.

One point of conflict was discussions on which version a particular change should be included in. As mentioned in a separate thread, we think it’s worth adopting semantic versioning, which will make this much less of a grey area. The response from everyone who posted there has been very positive, so as mentioned there we’ll be looking to do that from now on. On the specific point of namespaces, it means that namespaces *must* be left until 4.0. Our hope is that, in adopting semantic versioning, we eliminate one cause of tension by having a standard that clearly defines which release a feature is appropriate for, putting SilverStripe Ltd and the rest of the community on a level playing field with respect to deciding which version a change must be released in.

In addition to that, we’re looking to make the following behaviours a standard part of our work on core features. We’re starting with these internally, and we’re hoping that others will follow our lead.

* Significant core features will be raised on UserVoice as soon as it’s something that we’re considering developing.

* Before starting work, a discussion will be started on silverstripe-dev, and the UserVoice feature will be marked as “Planned” (this is a slight change from what we did on namespaces where we raised an issue instead - however given the response, silverstripe-dev seems the more acceptable venue).

* Any internal/offline discussion that results in a decision that will affect the outcome will be summarised on the silverstripe-dev thread.

* The core contributor group will be expanded with additional people that the existing core contributor group feel have made a significant impact to the project and shown pragmatic decision making in line with our vision for the future of SilverStripe as fast as is practical.

Where I’d personally like to get to is that the core contributor group is big enough that we can institute a rule where a PR is never merged by another individual from the same company, but we’re not there yet.

We believe that these changes will help to make SilverStripe development more inclusive, but we’d welcome any feedback if you disagree with any of the above. We don’t expect that this will be the last time we look at ways of improving the working model for SilverStripe development, but we believe that continued incremental improvements will create good results. 

In addition, SilverStripe are looking for other ways of exposing both SilverStripe Ltd and the core contributors group’s thinking and long term plans, and we hope that the community will enjoy and get involved with these. We’ll post more about those shortly.

Hamish Friedlander

Cam Findlay

unread,
Oct 21, 2014, 5:30:22 PM10/21/14
to silverst...@googlegroups.com
Thanks for posting this Hamish, 

Sounds like a fair and reasonable next more forward for this particular point.

Loz Calver

unread,
Oct 21, 2014, 8:07:34 PM10/21/14
to silverst...@googlegroups.com
Thanks for taking the time to write this all up.

How a feature is designed, and whether it's appropriate for inclusion is something that should be discussed by the community, and eventually decided on by the core committers group.

I’m sure everyone will agree with this but exactly where this discussion takes place, or rather where it should start, I’m not so sure about. For namespacing, I’d seen the initial “idea” that was posted on UserVoice, but wasn’t aware of any discussion on UserVoice beyond the initial post. In future I think we should ensure a discussion is started in silverstripe-dev at the same time as the UserVoice “idea” is posted (and the two linked to one-another) for major features.

For our part, we sometimes use client work as a way of getting feature development funded—and these features happen sooner

I think this is what has concerned people as much as anything: the timescale of things. There are some pull requests for both bug fixes and new features that have been open for months with very little activity, yet there are some more complex pull requests that’ve been opened by SilverStripe employees and merged in a matter of days. Of course this may just be coincidental rather than caused by commercial influence but it can be nonetheless frustrating for people trying to contribute, so I think it’s something that could be improved on either way.

* Significant core features will be raised on UserVoice as soon as it’s something that we’re considering developing.
* Before starting work, a discussion will be started on silverstripe-dev, and the UserVoice feature will be marked as “Planned” (this is a slight change from what we did on namespaces where we raised an issue instead - however given the response, silverstripe-dev seems the more acceptable venue).
* Any internal/offline discussion that results in a decision that will affect the outcome will be summarised on the silverstripe-dev thread.
* The core contributor group will be expanded with additional people that the existing core contributor group feel have made a significant impact to the project and shown pragmatic decision making in line with our vision for the future of SilverStripe as fast as is practical.

Each of these sounds good to me. I’d prefer to have discussion for significant features added to silverstripe-dev at the same time as UserVoice rather than wait until it’s marked as “planned”, as that way we’d be able to involve as many people as possible at the earliest stage: I’d wager that many more people have email notifications for silverstripe-dev than UserVoice!

Where I’d personally like to get to is that the core contributor group is big enough that we can institute a rule where a PR is never merged by another individual from the same company, but we’re not there yet.

This exact idea actually came up on the IRC channel, I think it’s a great long-term goal to aim for.

Loz

Hamish Friedlander

unread,
Oct 21, 2014, 8:47:01 PM10/21/14
to silverst...@googlegroups.com
 
How a feature is designed, and whether it's appropriate for inclusion is something that should be discussed by the community, and eventually decided on by the core committers group.

I’m sure everyone will agree with this but exactly where this discussion takes place, or rather where it should start, I’m not so sure about. For namespacing, I’d seen the initial “idea” that was posted on UserVoice, but wasn’t aware of any discussion on UserVoice beyond the initial post. In future I think we should ensure a discussion is started in silverstripe-dev at the same time as the UserVoice “idea” is posted (and the two linked to one-another) for major features.

Once someone has started thinking about actually implementing a feature, I definitely agree there should be a silverstripe-dev posting, but when we initially post things on UserVoice it's just in the "it might be cool to do this someday" stage. Lots of stuff might never get done, and for stuff that does get done there could easily be delay of a year or more between anyone adding an idea and it moving to planned. Any discussion that happened initially would probably be premature. For instance, there's already been a discussion on namespacing on silverstripe-dev that's been there for a couple of years.

We're expecting people to use "planned" to mean "we're thinking about actually doing this" (it definitely doesn't mean "we've already decided what this looks like") which is why that seemed like a good point to move it to silverstripe-dev. Perhaps the flag should be called "discussing" or "we'd like to work on this soon"? There's a separate "started" flag for when discussion has completed and someone is actually working on implementing a feature.
 
For our part, we sometimes use client work as a way of getting feature development funded—and these features happen sooner

I think this is what has concerned people as much as anything: the timescale of things. There are some pull requests for both bug fixes and new features that have been open for months with very little activity, yet there are some more complex pull requests that’ve been opened by SilverStripe employees and merged in a matter of days. Of course this may just be coincidental rather than caused by commercial influence but it can be nonetheless frustrating for people trying to contribute, so I think it’s something that could be improved on either way.

It's not really coincidental. Commercial jobs have dedicated developers payed full time to work on them. We don't have much dedicated developer time committed to merging pull requests - everyone in the core contributors group is working in the time they have available. As the delay to merging pull requests is primarily a resource constraint, expanding the core contributors group will hopefully help with this.

Hamish Friedlander

keith / spronk

unread,
Oct 22, 2014, 1:04:53 AM10/22/14
to silverst...@googlegroups.com
Thanks for addressing this head on Hamish, it's definitely something that's coming up a lot in IRC and there's definitely a lot of strong opinions around it.

I think the namespaces issue was the straw that broke the camel's back really - a massive feature that seems to have been discussed internally within SS, an apparent decision being made on shoehorning into the very next minor release, but with little to no discussion with the SS dev community. As you say, "planned" seems to be a bad misnomer here, but it would be nice to see a clearer roadmap for development - if for no other reason than us full timers can get a bit more involved by planning early heh!
 
Where I’d personally like to get to is that the core contributor group is big enough that we can institute a rule where a PR is never merged by another individual from the same company, but we’re not there yet.

This exact idea actually came up on the IRC channel, I think it’s a great long-term goal to aim for.

I think this part is really important for the health of the open source project - not necessarily the rule itself, but more the ability to put such a rule into place. The current situation, when combined with the timescale aspect disturbing some folks as Loz discussed, definitely puts question marks around the likelihood to contribute back.


Anselm Christophersen

unread,
Nov 16, 2014, 9:22:59 PM11/16/14
to silverst...@googlegroups.com
Same here, I just checked user voice and was surprised to see so much "planned". I think calling it "in discussion" or similar would make more sense.

Sent from my iPhone
--
You received this message because you are subscribed to the Google Groups "SilverStripe Core Development" group.
To unsubscribe from this group and stop receiving emails from it, send an email to silverstripe-d...@googlegroups.com.
To post to this group, send email to silverst...@googlegroups.com.
Visit this group at http://groups.google.com/group/silverstripe-dev.
For more options, visit https://groups.google.com/d/optout.

Jonathon Menz

unread,
Dec 4, 2014, 10:44:47 PM12/4/14
to silverst...@googlegroups.com
Can I point out that Uservoice doesn't currently let non-admins get notifications for new ideas. This is a pretty major barrier to involvement for me and I'm wondering if it is for other people too.

Cam I'm sure you don't need more work to do but can I suggest increasing the regularity of the SilverStripe email newsletter to a weekly issue? In that there could be a section devoted to new ideas on Uservoice, and perhaps an overview describing some of the important conversations that happened that week - whether they happened on google groups, IRC, github, Uservoice, twitter or in person. Could be one way of making these discussions more accessible and attracting more input from the wider community. A list of newly released modules might be a good thing too to help with discoverability.

Nicolaas Thiemen Francken - Sunny Side Up

unread,
Dec 4, 2014, 11:33:14 PM12/4/14
to silverstripe-dev
On 5 December 2014 at 16:44, Jonathon Menz <jono...@gmail.com> wrote:
Can I point out that Uservoice doesn't currently let non-admins get notifications for new ideas. This is a pretty major barrier to involvement for me and I'm wondering if it is for other people too.

Cam I'm sure you don't need more work to do but can I suggest increasing the regularity of the SilverStripe email newsletter to a weekly issue? In that there could be a section devoted to new ideas on Uservoice, and perhaps an overview describing some of the important conversations that happened that week - whether they happened on google groups, IRC, github, Uservoice, twitter or in person. Could be one way of making these discussions more accessible and attracting more input from the wider community. A list of newly released modules might be a good thing too to help with discoverability.

+1

it does not need to be anything polished, just a few notes on what happened in the Silverstripe universe.  Especially new modules would be awesome.

Cam Findlay

unread,
Dec 7, 2014, 3:04:04 PM12/7/14
to silverst...@googlegroups.com, n...@sunnysideup.co.nz
Sounds like a good idea, like a community digest email perhaps?

We could do this more regularly or perhaps you could choose the frequency (weekly, fortnightly, monthly)? (we'd of course have to ensure you guys opt-in to this as we don't want to spam you!).

Possible that we could pull an rss feed or API from uservoice and populate that email digest which would save time and make the whole thing pretty scalable.

I'll be in and around the community over the holiday break, I'll take a peek into what it might take to implement :) 

Jonathon Menz

unread,
Dec 7, 2014, 5:47:36 PM12/7/14
to silverst...@googlegroups.com, n...@sunnysideup.co.nz
That sounds great Cam! Automating it sounds like the right approach to ensure a regular schedule. Just realised there's an RSS feed for addons.silverstripe.org so that would be an easy thing to add, and forum posts (particularly unanswered ones) could be included too. There are even RSS feeds for this list which I didn't realise until just now: https://groups.google.com/forum/#!aboutgroup/silverstripe-dev

Cam Findlay

unread,
Dec 7, 2014, 9:29:41 PM12/7/14
to silverst...@googlegroups.com, n...@sunnysideup.co.nz
If there was a weekly digest of community "stuff" - what would be included in that? how many items would it include (newest X items or everything since last email)?

Any this else we should we should take into consideration? 

Jonathon Menz

unread,
Dec 8, 2014, 4:45:57 AM12/8/14
to silverst...@googlegroups.com, n...@sunnysideup.co.nz
I would say limit each category but have a reasonably high limit (20 or so?) which in many cases would effectively mean showing all.

Categories could include:
Some meta info on these items would be good too, i.e. number of replies/votes/comments.

Florian Thoma

unread,
Dec 10, 2014, 12:24:18 AM12/10/14
to silverst...@googlegroups.com, n...@sunnysideup.co.nz

I would say limit each category but have a reasonably high limit (20 or so?) which in many cases would effectively mean showing all.

Categories could include:
Some meta info on these items would be good too, i.e. number of replies/votes/comments.


+1

Cam Findlay

unread,
Feb 6, 2015, 12:17:11 AM2/6/15
to silverst...@googlegroups.com, n...@sunnysideup.co.nz
Hey all, 

I've been playing with the idea of a daily digest email which covers new items submitted by the community from a range of sources and powered by our mailing service through an agregated RSS feed. It's purely a proof of concept at present and I've been using it personally over the last month or two to keep up to date with the things going on in the community.

It pulls in daily:

New forum posts and replies (mostly sans-spammers though I have seen 1 or 2 threads sneak though hence why I want to trial this before making it totally publicly available)
New StackOverflow questions and answers
New blog posts
New comments on blog posts (only moderated ones)
New modules from addons
New posts on the dev list
Security updates
New releases

Some items at this point like UserVoice don't have an RSS feed to pull (though we could look into some sort of API to RSS type of thing in the future.

What I'd been keen for now is a few people to put there hand up to be added to my mailing list to receive this digest to see if it's useful.

Any takers? You'll need to have logged in to silverstripe.org and updated your email preferences to include at least one of our email categories in your profile, if you don't want the newsletter you could opt in to the security announcements list perhaps (which might actually be useful). This is just so I have your explicit permission to mail you as I don't want to spam you! 

Then send me a quick email to comm...@silverstripe.org asking to be added to the digest. I'll be manually adding these for now while trailing out (you can opt out by just getting back in touch). 

If it goes well we may add this as one of the email options in ss.org profiles along with perhaps a weekly one if people would prefer a longer time horizon.

At present it is simply an experiment, though one I have actually found to be pretty useful so far as I'm getting the digest daily.

Cheers,

Cam

Jeremy Shipman

unread,
Feb 24, 2015, 6:33:03 PM2/24/15
to silverst...@googlegroups.com
Hi Cam,

I’m interested in subscribing to the RSS feed :)

Jeremy
--

Cam Findlay

unread,
Feb 25, 2015, 2:56:21 PM2/25/15
to silverst...@googlegroups.com
Will do Jeremy, can I get you to please login to your silverstripe.org account and subscribe into the community newsletter in your profile so I can add you to the community digest beta feed.

Cheers,
Cam

Jonathon Menz

unread,
Mar 6, 2015, 1:08:19 PM3/6/15
to silverst...@googlegroups.com, n...@sunnysideup.co.nz
Really enjoying getting updates in this format Cam. My favourite thing about it is that it's a really convenient way to get involved in the forums again. Once upon a time I subscribed via RSS but found I was spending too much time in there and getting too distracted from real work, so I stopped helping altogether. Now I see new posts once a day, help out with one or two if I can, then forget about it til the next day. Much more efficient.

Couple of improvements I can see to make when time permits are:
  • Labelling and grouping items by type (forum posts / blog articles etc.)
  • Grouping forum posts by thread (replies are scattered throughout email at the moment)
  • Limiting items to a few paragraphs and/or max character limit (some forum posts contain big dumps of code)
Thanks for working on this!

Cam Findlay

unread,
Mar 8, 2015, 6:01:40 PM3/8/15
to silverst...@googlegroups.com, n...@sunnysideup.co.nz
Glad you are finding it useful Jono, I'm working with a few limitations at present. I'm using the RSS feeds feature of MailChimp to deliver this. I think it only accepts 1 feed hence why I've had to deliver as a stream of items rather than broken down into categories.

I may have to keep it like this until we can find another way of delivering it with more fine grained information.

Still, I'm as you say finding this really useful tool for knowing where to go lend a hand on a daily basis.

The next thing to be done on this is to get it out of private beta and into the SilverStripe profiles as an option to subscribe to.

In order for this to happen I am going to be implementing a last piece of spam protection to posts on the forum (which is the main thing causing spam in the digest).

What we need to complete in order for this to happen is to get the 0.8.0 stable release of the forum module completed https://github.com/silverstripe/silverstripe-forum/milestones/0.8.0 (which one of my modules that improved the spam situation requires) and then added to the SS.org codebase. 

We can sort of the later here at SS Ltd and I've been working on the former over the last week (still a few PR's and issues to clear). If anyone is interested in helping move that forum release forward I'd appreciate that (I'm also head overseas very soon so will be off this for about 3 weeks).

Also if anyone can come up with a way of using multi feed in mailchimp daily campaign emails I'm all ears :)

Get in contact if you're keen to help out :)

Jonathon Menz

unread,
Mar 9, 2015, 1:03:13 PM3/9/15
to silverst...@googlegroups.com, n...@sunnysideup.co.nz
Are you using ChimpFeedr to combine the feeds? I wonder if we could replicate and expand that functionality with an SS module. Then we could have ss.org fetch the various RSS feeds once a day, do some pre-processing, then export a new RSS feed for consumption by MailChimp. That master RSS feed could contain one article per source, with each article containing a list of new pages/articles/comments with previews for each one. I could have a look in to that if you like?

Have a great holiday!

Cam Findlay

unread,
Mar 9, 2015, 6:43:47 PM3/9/15
to silverst...@googlegroups.com, n...@sunnysideup.co.nz
Hey Jono, yip correct I used ChimpFeeder http://mix.chimpfeedr.com/e5668-SilverStripe-Digest

Happy if you want to have a crack at putting together a rss feed module, is that something you intend to be generic? What would other uses of this be?

Jonathon Menz

unread,
Mar 19, 2015, 2:28:24 PM3/19/15
to silverst...@googlegroups.com, n...@sunnysideup.co.nz
Probably wouldn't be generic or reusable - I was just meaning modularised code (contained in one folder to make installing easy). My bad.

I think with these guides I can make a start.

Cam Findlay

unread,
Apr 27, 2015, 8:18:02 PM4/27/15
to silverst...@googlegroups.com, n...@sunnysideup.co.nz
Thanks to Jono that has helped out with the daily digest, we now have a way to split it by source (forum, blog, core dev list etc). 

I'll be looking at how we can make this an email subscription option in silverstripe.org shortly. 

Thanks to all those that have been beta testing this tool over the last few months.


Will update once this is in place.

Cam Findlay

unread,
May 10, 2015, 5:28:57 PM5/10/15
to silverst...@googlegroups.com, n...@sunnysideup.co.nz
Hey guys, ,have been working with Jono Menz on building a yahoo pipes feed to power this daily digest email we've been talking about. 

Just doing a few final feed related improvements and will look to make this something anyone can subscribe to via their silverstripe.org account.

I've been using it personally and have found it helpful to easily keep up to date on what's going on and where I can help people out (like forum answers and checking new modules out).

Once we get this up no doubt we'll make some noise about it out in the community :)

Thanks again Jono for your help, great to work on these projects and build out some more community tools. 

James Pluck

unread,
May 24, 2015, 5:31:14 PM5/24/15
to silverst...@googlegroups.com
I'm interested in this, Cam.

Kind regards

James Pluck (BSc, AIITP)
Director
--
Courage Web Solutions Ltd
P: +64-7-929 4960
M: +64-21-236 6900
E: ja...@courage.co.nz

--

Nicolaas Thiemen Francken - Sunny Side Up

unread,
May 24, 2015, 6:08:56 PM5/24/15
to silverstripe-dev
+1
--
Nicolaas Thiemen Francken
  www.sunnysideup.co.nz
  phone: +64221697577

Reply all
Reply to author
Forward
0 new messages