====== phase 2 purpose ======

Before we can agree on what we are going to create and in what order, we
need to answer a question that can be alternatively phrased:

  * Why are we undertaking this project?
  * What purpose are we trying to accomplish?
  * What will life on SDF be like with the products of this project, or concretely how will our products improve SDF?

===== Process =====

==== 1. Brainstorm ====

I propose we start this thread with a few days of brainstorming on the
purpose of the Phase 2 project. To start, everyone interested in the
project should post as many ideas for our purpose as they can think of,
regardless of whether the ideas seem good or bad to the poster. It's OK to
"riff" off of a previous poster's ideas by adding similar or connected
ideas, but don't comment on or evaluate others' (or your own) ideas
("that's good/bad/impossible ..."). After a we've collected a decent volume
of ideas over a few days we'll switch to discussing the ideas thrown on the
table and try to come to a consensus on why we're setting out on this
project.

The list of possible purposes below was compiled from BBOARD posts on November 8 and 9, 2009.

==== 2. Discussion ====

We've gathered twenty-three ideas for our project purpose, so I think we can make the transition from brainstorming to discussing what we have on the table. 

Since the conversation is likely to go non-linear, I have set up this wiki page so that we can keep the whole list of possible purposes and all our thoughts on each of them in the same place. Please feel free to add your comments directly to this page by registering as a wiki user and editing the section for the proposed purpose you want to discuss. (Please sign your comments by clicking the signature button (second from the right in the edit form tool bar) at the end of your text.) You can also make general remarks with the comment form at the bottom of the page. It's also all right to continue the discussion in the BBOARD thread. If no one objects I will occasionally copy relevant BBOARD remarks to this page.

I don't think we need any rules for this discussion. Anything goes: "This is good." "This is bad." "What does this mean?" "This is the same as that." "This is compatible with that." "This contradicts that." "This has higher priority than that." .... I've lettered all the proposed purposes for ease of reference in our discussion. Feel free to refer to "A.", "B.", etc. in your remarks. Also feel free to add additional purposes with a new level 3 heading at the end of the list.

I think our goal here should be to within a week or so narrow this list down to one, two, or three items that we all understand and agree are interesting and achievable.

--- //[[papa@freeshell.org|David "papa" Meyer]] 2009/11/14 10:22//

===== WHAT IS THE PURPOSE OF PROJECT MOTD PHASE 2? =====


==== A. To learn some new technology and create a great new program in collaboration with other individuals similarly fascinated with Unix-based  technology. ====


==== B. To get to better know fellow MOTD members and develop a stronger community with them. ====

Just starting this project advances this goal.  ;-)  --- //[[papa@freeshell.org|David "papa" Meyer]] 2009/11/16 07:39//

==== C. To get to better know fellow SDF members and develop a stronger community with them. ====

==== D. To create an integrated shell interface to all major social networking services. ====

'All major social networking services' is extremely broad.  There are certainly some social networking aspects we might like to include here, but I would imagine that there are others the SDF community might not be soo keen on.  In any case, we should at least try to be more specific and prioritize things.
--- //[[davek@sdf.lonestar.org|davek]] 2009/11/14 18:50//

I am not really into social networking, but how about this for a representative set of "major" services: Facebook, Twitter, LinkedIn, Flickr, YouTube, MySpace, Technorati, Digg ...?  --- //[[papa@freeshell.org|David "papa" Meyer]] 2009/11/15 05:24//

==== E. To create a comprehensive CMS engine unique to SDF with both web- and shell-based front ends for access and administration. ====

What do you have in mind for "comprehensive CMS engine". If we are planning something very "comprehensive" we are running the risk of coming up with a blob that does everything but does nothing. Probably I'm misunderstanding it, and am--admittedly--exaggerating. I think that we should try to focus on the a engine (with the basic features that we will agree on) and develop it in a way that can be indeed turned into //X// or //Y//, with modules (or plug-ins or add-ons, you got it). Why? A "simple" engine is simply more maintainable and it can also encourage future contributions to the project.
 --- //chr 2009/11/14 17:23//

By comprehensive CMS I mean something like Drupal that can be a blog, a wiki, a bulletin board, an online shop,.... It seems to me that although most of the big free software packages (WordPress, Mediawiki, ...) can be used for multiple purposes, they are much easier to use for the kind of site they were targeted for. To handle diverse purposes, we need an engine that is easily malleable to user requirements. Not that I think this is an easy thing to accomplish, or that it is the best purpose for our project.  --- //[[papa@freeshell.org|David "papa" Meyer]] 2009/11/15 05:31// 

Another question: do we want to create an engine program that users download to run on their web site, or do we want to start a service with one big engine that we let users use a piece of for their personal content? ... I'm guessing the former rather than the latter since dissatisfaction with big services (Google, Blogger (oh, same difference now), ...) is part of the reason we use SDF. //**Or**// could we try to do a service the //right// way, from the SDFer point-of-view?  --- //[[papa@freeshell.org|David "papa" Meyer]] 2009/11/16 07:21//

Yet another question: When we say "create an engine" do we mean to program everything from scratch, or base our work on one or more existing packages (e.g. Drupal, NanoBlogger) and just program some plugins and "glue"? Personally, I think the latter is the only practical course. While an all-original project would be cool, and I don't mind reinventing the occassional wheel as an educational exercise, even something relatively simple like NanoBlogger or blosxom has too much functionality to be much fun duplicating with our own code.  --- //[[papa@freeshell.org|David "papa" Meyer]] 2009/11/17 07:34//

Yes, the latter is practical, but, so far, we haven't really discussed about what we **specifically** want (at least not much, from my POV). I think that when we agree on the technicalities, it should be easier to consider if making something from scratch or modifying something existent. --- //chr 2009/11/18 15:49//

==== F. To enhance SDF's reputation in the social networking community and/or the general Internet community. ====

==== G. To attract new MOTD members from the general SDF community. ====

Agreed. However, something that could really attract people to MOTD is the possibility for them to "try" MOTD. That is, if, e.g., ARPA members could try MOTD for a limited period (say 30 days), they could see what's available and how it can be used. After this period they would need to upgrade to MetaARPA or MOTD membership. This is, of course, something that can't be done by us. If you think that is a good idea, I could ask smj if this is something doable.
 --- //chr 2009/11/14 17:36//

==== H. To attract new SDF members from the social networking and/or general Internet communities. ====

==== I. To promote a greater appreciation of the Un*x shell-based computing environment and the SDF philosophy. ====

==== J. To learn something about collaborative software development ====


==== K. To create an integrated portal to motd, that may enhance the sense of community and to attract new users to the already existing community and to make motd and therefore sdf more visible on the web. ====


==== L. To establish a more dynamic and flexible outpost of the motd community in the www. ====


==== M. To facilitate communication with sdf-members for people who don't now how to use the shell. ====


==== N. To make the participation in social networking, Web 2.0, etc. easier for the blind. ====

I don't have any experience in this field, but seems very interesting and useful. In any case, I think we really should work on the project with usability in mind.
 --- //chr 2009/11/14 16:50//

==== O. To facilitate information retrieval and organization from various sources, such as feeds or tweeds. ====


==== P. To have a platform for discussion, tutorials and collaborative projects in the www. ====

Isn't this what SDF already does? BBOARD, COMMODE, and the [[https://webmail.freeshell.org/bbs/|web-based forum]] for discussion and collaboration and the [[http://sdf.lonestar.org/index.cgi?tutorials|MetaARPA tutorials]]. What do we want that SDF doesn't have already?  

Does the above purpose mean that we will make it all available from a web browser? I think that although making resources available from both the shell **and** the web is a worthy goal, making things available from the web //instead// of the shell goes against SDF culture. BBOARD and COMMODE are part of who we are. Besides, I recall hearing once that smj (BBOARD and COMMODE are both his. They are not open source.) is reluctant to add web-access to either of those systems. (Is that true?)

I think we should make an inventory of all the [[SDF programs]] relevant to what we're thinking of doing.

--- //[[papa@freeshell.org|David "papa" Meyer]] 2009/11/14 15:15//

What about a program like bboard, commode, profiles all rolled into one, but that gave you full access to shell commands in the same session?  --- //[[papa@freeshell.org|David "papa" Meyer]] 2009/11/16 07:34//

==== Q. To integrate the already existing features such as surl and the discussion board into one representation. ====



==== R. To improve the degree of participation of SDFers on a common   project (or projects, or sub-projects) ====


==== S. To develop an application powered by SDF *and* its community ====
 

==== T. To create a core application, flexible enough to be easily expanded to various uses ====


==== U. To document the whole process so that it could be adapted into a course on SDF's learning platform (something like: "collaborative software development") ====

==== V. To attract new members to our community ====

==== W. To give SDF something back ;) ====

==== X. To contribute to the open source movement ====

Before we start contracting the list, I'll expand it by one. 

I would like to see any code we produce on this project released as open source. (We can discuss license terms. I don't have a strong opinion.) I feel that I have benefitted so much from all the open source software available, it's natural to offer what I produce in the same spirit.

I would count this purpose as a technical value.

 --- //[[papa@freeshell.org|David "papa" Meyer]] 2009/11/19 01:40//

{{tag>motdph2}}
Category: [[motdph2:]]

~~LINKBACK~~
~~DISCUSSION~~