[personal profile] alexbayleaf
(copied from the mailing list)

OK, I think we can call iteration 0 closed and move on to iteration 1. Your coaches for this iteration are, once again, me([personal profile] skud) and [personal profile] shadowspar. If you've got any questions or need help with stuff, you can contact us directly or, of course, send something to this list.

So to wrap up iteration 0, here's a summary of tasks completed.

2: twitter account icon - small - 1 point
3: placeholder website - medium - 2 points
5: community guidelines - medium - 2 points

Not completed:

4: dev website -- the coding was all completed and merged, but it didn't get deployed in time so sadly it doesn't count.

So, our velocity was 5 points. I suspect we'll do a little better next iteration!

Here are my suggested tasks for iteration 1:

4: dev website (finish deploying! me and the sysadmins on this I think)

6: signup/login (cesy and I were talking about pairing on this)

13: website should be attractively styled (aka the Zurb Foundation story; I've already agreed to work on this with randomling)

14: footer links on website (anyone want an easy rails task? a good easy/beginner level story)

Additionally: move the wiki to Mediawiki on our own server. (Should this actually be a story? Probably.)

I don't think there are any other stories that are easy enough and have few enough pre-reqs to work on this iteration, but if anyone is already experienced with Rails and/or database design, the crops page might be a good one to take on. Or we could wait til the next iteration, but do some prep work/"spikes" (see: http://c2.com/cgi/wiki?ArchitecturalSpike) in the meantime, to figure out how best to go about it.


Aug. 19th, 2012 12:35 pm
[personal profile] alexbayleaf
(Copied from the mailing list. There are likely to be further comments/discussion in the archives there.)

So, another thing we should discuss is licensing for this project, since we'll need to add license files to whatever we commit to github.

I'm going to explain this from the ground up because I expect not everyone is completely conversant with open source license (a ha ha, is anyone? ever?) But if you are fairly familiar with this stuff, you can skip the explanations, because the tl;dr version is: GPL/copyleft or BSD-style?

For those who can't parse that, here's an explanation.

Open source/free software licenses all have certain things in common. These are fairly clearly expressed by the Free Software Foundation's list of "four software freedoms" (http://www.gnu.org/philosophy/free-sw.html) and/or the Open Source Institute's "open source definition" (http://opensource.org/osd.html/) but to summarise:

- anyone may download and use the software for any purpose
- anyone can view and study the complete source code for the software
- they need to be able to make changes to the code for their own use
- they need to be able to redistribute the software
- and they need to be able to redistribute their changes, as well

(That's more or less a rephrasing of the four software freedoms; the OSI definition adds some other twists as well, but the general idea is the same.)

An open source license is a legal document that is distributed with the software, which states what rights and responsibilities the software user has, in order to maintain the openness/freeness of the software. It's the same as the end-user agreements that most of us click "I Accept" on without reading, though the purpose is a bit different, and (handily) there are a handful of common/standard ones so that if you see that the license is "GPL v3" or "Mozilla license" or whatever, and you already know what that contains, then you don't have to read it through in detail.

Anyway, open source licenses mostly fall into two camps. The first type is the kind that says, in effect:

"You can use this software for any purpose, modify it, redistribute it, etc, but you have to leave a notice saying where it originally came from."

If you're familiar with Creative Commons, this is like the CC-BY (aka "Attribution") license. Basically you can do anything with the software, as long as you attribute it to the original author and don't try and claim it as your own. Open source licenses like this are sometimes known as "BSD style", because the license for the BSD operating system is like this. Under a BSD-style license, it's possible for someone to build commercial (non-open-source) software based on your code. Many parts of commercial software, these days, are based on open source under the hood because of this kind of license, and it's often considered a good choice if you *want* your stuff to be taken up by commercial vendors (eg. if you are writing something you want to become a widely used standard).

The second kind says:

"You can use this software for any purpose, modify it, redistribute it, etc. But if you create a derivative piece of software based on this, you must use *this exact same license* for your software."

In Creative Commons terms, this is like CC-BY-SA (aka "Attribution Share-Alike"). The best known software license of this kind is the GNU Public License (GPL). These kinds of licenses are also sometimes known as "copyleft" or "viral" licenses. They restrict re-use to those who are also using the same free/open source license, meaning that many potential commercial re-users may be unwilling or unable to modify/redistribute your code, unless they jump on the open source bandwagon (which, of course, would be a great result!) So, these licenses can be good if you don't want someone to commercialise what you're doing; on the other hand it can discourage wide uptake of your code, because not everyone wants to use the same license as you.

So, what I'd like us to discuss is, which general direction do we prefer?

Option 1:
BSD-style, or CC-BY for non-code parts of our work.
Pros: anyone can re-use, potentially wider uptake, easy to comply with license
Cons: higher potential for third-party commercial exploitation, can't include other people's GPL'd/copyleft software

Option 2:
GPL/copyleft, or CC-BY-SA for non-code parts of our work
Pros: spreads free software philosophy, less potential for third-party commercial exploitation, can incorporate others' GPL/copyleft code
Cons: may discourage wide uptake of our software

And a quick survey of some relevant or otherwise interesting sites/technologies and what they use:

- Dreamwidth: inherited software from Livejournal, where it was originally dual-licensed under the GPL and the non-copyleft Artistic License used by Perl (this sort of dual licensing, allowing people to choose, is common for Perl software but not often seen elsewhere). Dreamwidth uses CC-BY-SA for non-code parts of their site.

- OTW Archive Of Our Own: GPL

- Ruby on Rails: MIT license (BSD style); Ruby itself is under the Ruby License, which is a copyleft (i.e. GPL-like) license.

- Ravelry: included because otherwise people will ask ;) Ravelry is not open source.

- Wikipedia: content CC-BY-SA, underlying software is GPL

- Diaspora: Affero-GPL which is a version of the GPL specifically for people running network services

So, hopefully that's a fairly balanced and informative view of the two main types of license we might want to use. There are definitely advantages to each, though they vary depending on the sort of software you're building. I happen to think that BSD-style licenses are great if you want to build an underlying technology that people will embed in all kinds of things, whereas GPL is better if you are building a single coherent application, but I'm happy to hear opinions to the contrary. To keep things from getting out of hand (which open source license discussions can sometimes do) I'm going to suggest that we limit this conversation to this week only, and aim to reach consensus and commit license files to github along with the work we're doing this iteration.
[personal profile] alexbayleaf
My main task for this iteration (other than coaching) is to come up with a community guidelines document. I've just posted the draft to the mailing list so I'll just copy what I wrote there:

So, I drafted a proposed set of community guidelines. These aren't a full TOS or anything like that, but a short statement of values and then setting out a few specific interpersonal behaviours that aren't welcome, and what we'll do if they happen. I figure that when we get around to having a TOS, we include it by reference, i.e. the TOS will say something like "you agree to abide by our community guidelines".

I've put the document in github and I figure the TOS and any other policies (eg. privacy policy, copyright policy) can go there too. The good thing about having this stuff in github is that if/when we change any of our policies the change history will be visible, and people can see what's different from one version to the next.

Anyway! My draft is at https://github.com/Growstuff/policy/blob/master/community-guidelines.md and I would appreciate people reading it and letting me know what you think. I'm interested in anything ranging from high level conceptual feedback to smaller wording tweaks.
[personal profile] alexbayleaf
Hi everyone! We've come up with the list of stories we'll be working on for iteration 0. They are:

Placeholder website
Dev website
Community guidelines
Twitter account icon

More detail is available in this mailing list post and in the mailing list archives generally.
[personal profile] alexbayleaf
Thanks everyone for signing up in the team signup post the other day. The current list of participants in this iteration is:

Customers: [personal profile] skud, [personal profile] inkstone, [personal profile] azurelunatic, [personal profile] japester, [personal profile] ilyena_sylph, Seegwen

Design: [personal profile] commodorified, Seegwen, [personal profile] algeh, [personal profile] aquaprofunda (via other channels), [personal profile] randomling

Communication: [personal profile] skud, [personal profile] amianym, [personal profile] commodorified, [personal profile] japester (primarily technical/project stuff), [personal profile] shadowspar, [personal profile] algeh (available but less interested)

Coding: [personal profile] skud, [personal profile] amianym, [personal profile] shadowspar, [profile] seegwen, [personal profile] cesy, [personal profile] algeh, [personal profile] randomling

Sysadmin/devops: [personal profile] japester, [personal profile] shadowspar, Seegwen

Please subscribe to the mailing list! If you want to actively participate in this iteration and you're not currently subscribed to the mailing list, you probably should be. We'll be posting highlights and important stuff here to the DW community, but a lot of the conversation will be happening there. Subscribe here.

Meanwhile, we've started roughing out some stories (remember, that's the Extreme Programming term for "requirements document") that we might want to work on in this iteration or in an upcoming one. Here are some links:

Placeholder website
Dev website
Community guidelines
Twitter account icon

(The previous ones have been added to the issue tracker, while the following ones have been posted to the mailing list but haven't made it to the issue tracker yet. The process is that stories are first raised on the mailing list, then once the iteration coach(es) have validated them as being decent stories (i.e. they're written from a customer perspective, and so on) then they get added to the issue tracker. So the following ones are less solid at this point.)

Profile page
My garden
Profile privacy

(You can see discussion threads about some of these stories in the mailing list archives, too.)


Our next step is to start breaking down these tasks and talking about what steps are needed to complete them, what skills those involve, who wants to do them, and how long it will take. From that we'll come up with a list of tasks we'll aim to complete in this iteration, with two people assigned to each one, and then -- very soon now -- we'll start work.

One of the things I'm concerned about with this iteration is that we've had a lot of people sign up to take part (thank you!) but I'm not sure we have tasks for them all, as the early stuff seems to not be easily parallelisable. If you have suggestions regarding this -- of other things we can do in parallel, or of ways for everyone to get involved in the few tasks we already know of -- then I'd love to hear them!
[personal profile] alexbayleaf
Hey everyone, just wanted to get an idea of who's interested in working on what over the next few weeks, for this first iteration, named (in true programmer style) "iteration 0".

Please drop a comment with the following information:

1) team(s)/skill area(s) you're interested in
2) level of experience at that kind of work

The teams are:

- customer (you're a gardener with opinions on how the site should work)
- design (graphic design, UI, CSS, etc)
- communications (writing text for the website, eg. community guidelines)
- coding (backend/frontend, let's mix these together for now)
- sysadmin/devops (including deploying releases of our rails app, etc)

A sample response might be:

I'd like to sign up for:

- design (familiar with HTML/CSS, have worked on a few websites before)
- coding (zero experience but would like to learn frontend/javascript)
- customer (err, I have a garden? and opinions!)

Note that if you sign up now, this is not a long-term commitment! This is just for the next 3 weeks; all you're doing is expressing interest in participating in the very first steps. Also, it's not set in stone... if you want to join in or drop out partway through, that's OK. I'm just trying to get an idea of who's up for this first iteration.

When this first iteration's done, we'll either re-run this signup process, or find a better way of figuring out who's interested for each subsequent iteration. (Quite likely we'll find a better way. I know this is clunky!)


ETA: signups so far

Customers: [personal profile] skud, [personal profile] inkstone, [personal profile] azurelunatic, [personal profile] japester, [personal profile] ilyena_sylph, Seegwen

Design: [personal profile] commodorified, Seegwen, [personal profile] algeh, [personal profile] aquaprofunda (via other channels)

Communication: [personal profile] skud, [personal profile] amianym, [personal profile] commodorified, [personal profile] japester (primarily technical/project stuff), [personal profile] shadowspar, [personal profile] algeh (available but less interested)

Coding: [personal profile] skud, [personal profile] amianym, [personal profile] shadowspar, [profile] seegwen, [personal profile] cesy, [personal profile] algeh

Sysadmin/devops: [personal profile] japester, [personal profile] shadowspar, Seegwen


The Growstuff Project

June 2016

192021 22232425


RSS Atom

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated Oct. 19th, 2017 03:39 am
Powered by Dreamwidth Studios