Forum OpenACS Q&A: The maniac plan for world domination

Hi,

As correctly noted in the other thread, we need a new thread to the discuss world domination plans.

I think one way to view it is to try to imagine yourself in the shoes of a potential user. I have made a laundry list, so beware :)


The first thing a potential user would like to know is how good OpenACS is. Openacs.org provides some good information:
  • You can find what OpenACS can do on openacs.org.
  • The technical advantages can be found on openacs.org.
  • There is a gallery of OpenACS sites on openacs.org.
Ideas:
  • Provide comparisons with other web toolkits, preferable honest comparisions, but still mentioning OpenACS' strengths.

Suppose I find the information provided convincing and want to see OpenACS with my own eyes. Here OpenACS fails terribly:

  1. There is www.oacsrocks.org, but it cannot be found.
  2. Suppose I want to install OpenACS to try it. Now I need to compile AOLserver from source, and find and compile all kinds of AOLserver modules from scratch. For some of these modules, documentation isn't that great.
  3. The OpenACS install documentation is reasonable, but not that great either.
  4. Suppose I get the thing up and running. Unfortunately some killer features of OpenACS, like the search engine, are next to impossible to get running; compiling tsearch2 into an existing PostgreSQL is extremely challenging.
At least (2) and (3) are solveable:
  • Provide ready to user installers. A tarball with installation script, rpm files, and so on. Even a Windows installer is needed, you don't want to know how many people get scared by a "requires Linux". My experience with Free Pascal is that these things is extremely, extremely, extremely important. It should be as easy as possible to get the program on your computer. Many people are prepared to spend 30 minutes to evaluate a package. Few people are prepared to spend hours on a package. With OpenACS, for an unexperienced person, it can take days.

Now suppose, I am impressed with OpenACS and want to learn how to set up my own site. Unfortunately:

  • I don't speak TCL
  • I don't know the AOLserver API.
  • I don't know the OpenACS API.
Luckily:
  • TCL documentation is good.
  • AOLserver documentation is reasonable to good.
  • At least OpenACS API is well documented.
Unfortunately:
  • As a beginner, I would like to have all information I need accessible from a single place and not search half of the web myself.
Collapse
Posted by Daniël Mantione on
A second step would be to get more interaction between OpenACS and its community. Ideas we I can think of are:
  • Improve coverage on openacs.org of user initiatives.
  • Have users link back to openacs.org to improve site ranking.
  • Allow community members to work on site content, and contribute more easily. Decrease the bureaucracy as much as possible.
  • Keep an eye on community fragmentation. You don't want this to happen, as this removes community synergies. Generally I think the OpenACS community is very well unified, with one big exception, Project-Open. Things to watch:
    • Sub-projects. Many projects start sub-projects, to focus on some specific goal. You don't want this to happen, since work in the sub-project might benefit the main project. A good example is GCC community, it is fragmented between core, Mingw, Cygwin, GNU Ada, GNU Pascal. Work from the Cygwin team could be very usefull for Mingw32 ports, but also Dos and OS/2 ports. This synergy does not happen, work is wasted.
    • Keep an eye on languages. People want to speak their own language, so in many projects people start building sites in different languages. This is actually a very good thing, since this is often essential to get adoption outside the anglophone world. However, it is also important to prevent fragmentation of your community. A multi-lingual website and local forums can be very effective to keep your community together.
Collapse
Posted by Robert Taylor on
we're all onboard.

infact all of this is already under way in some form.

the key problem has been human hours available to dedicate to this as most of us are consultants or have fulltime jobs + real lives to take care of.

so, thats neither here nor there.

there are actually a good number of steps before this:

1. update the website to xowiki
2. update the templating infrastructure (work being done on this) to allow for skinning
3. documentation project
4. organization and promotion project

but most importantly, the workload is so huge to get all of this done that it needs to be split up into subprojects and properly catalogued and 'maintained' so that we can start to attract help for each one of these initiatives.

to that end, i'm putting up a 'project manager' (or have been for a while now despite the infinite number of distractions) as a test scenario to try and see how our 'project manager' software works and how we can improve it to better organize our efforts.

we don't have a hard time finding help, we have a hard time keeping descreet units of random open source help organized and pointed in the same direction simply because the size and power of the toolkit/project.

so, are you interested in jumping in and helping out first with using project manager to organize the effort on a trial basis?

Collapse
Posted by Robert Taylor on
- also this has been discussed to death.

to be honest we don't need more discussion, someone just needs to sit down and create the projects, create the scopes, usecases and todo lists and then begin soliciting project managers and volunteers to add to the project.

current key members are busy fulltime with developing the core, and quite nicely i might add.

Collapse
Posted by Robert Taylor on
- additionally it should be noted that not everyone likes the idea of using pm however the purpose of pm is not to force all projects to use pm, just those that find it usefull.

- if pm turns out to be a good tool for organizing, then the proposal is to mount it on the updated website so that we can manage our activites live as opposed through back channels like forums, irc, email, etc. ... again only for those that find tools like pm usefull.

i will add additional info as it arrives.

Collapse
Posted by Daniël Mantione on
I fully agree. Writing laundry lists is much easier than doing the work. Yes, I'm prepared to help.
Collapse
Posted by Abelardo Pardo on
Let me just add an observation.

We may take one easy step toward this goal. I agree that all the ideas that have been mentioned so far need to be done, but could we reach for some "low hanging fruit"?

I'm somewhat midway between an installation expert and a "regular" user. I just happen to install the latest UBUNTU release on my laptop. You install a CD, and then this program called "adept" shows you a huge list of packages to install with just one click. I patiently reviewed this long list and Moodle was there. So, with one click, and after answering a few questions about installation parameters that adept took care of, I had an instance of moodle running (haven't tried it, I was just curious about its installation)

I kept browsing through the package collection, and I found:
* aolserver4 (4.0.10)
* aolserverdoc
* nscache
* nsimap
* nsldap
* nsopenssl
* npostgres
* nssha1

Of course, you have also postgresql. The other thing that surprised me is that you may install the latest TCL, which right now is 8.4.10 and when checking for thread support:

$ tclsh
% info exists tcl_platform(threaded)
1
% info patchlevel
8.4.14
%

Correct me if I'm wrong, but it seems that out of all the steps that need to be followed to deploy OpenACS/.LRN, the most difficult ones are no longer there.

I haven't tried it yet, but It seems a regular user may start installing OpenACS/.LRN from the section "Prepare the database" on and bypass compiling AOLServer, modules, etc. Are we that far away from providing an OpenACS/.LRN package for UBUNTU that puts the user one click away from having a painless installation?

The fact that Dell will now offer the choice to have Ubuntu pre-installed should not be overlooked either.

Cheers.

Collapse
Posted by Daniël Mantione on
I'm a SuSE user, but go for it :)

The only module that is missing is tdom. We need a deb for it. Then we need a OpenACS deb, and also important, we need to do something about the AOLserver configuration.

If I take part in this I would like to focus on release engineering: Generating packages (Linux, Win32, others) from SVN with the push of a button.

Collapse
Posted by Robert Taylor on
actually packaging for debian/ubuntu is WELL underway.

this is why i'm gonna put up an instance of pm for this, no one even knows whos going for which low hanging fruit.

and its precisely because:

a) there is no master todo list
b) no prioritization
c) no infrastructure for bringing new talent into points in the process that meet their needs/interests/skills.

i.e. you are re-doing what is already under way.

here are your two options:

1. i alread spoke with frankie the maintainer of aolserver to backport postgres and aolserver and components to current debian stable (which is what you should be running as a server), we already have automated scripts that download everything from cvs and build and install it so packaging is trivial.

however frankies time costs money and him being the best to package aolserver, postgres and bits we should pay him for his time. care to donate some money with me to pay him to do this?

2. you can talk to jim and dirkgomez about their packaging effortst (dirk is doig .lrn, jim on packaging all the individual packages via an automated build system) and you can help out there.

if you want low hanging fruit, let me get out frankies quote and lets get some cash together, split it 5 ways and we can have instant packages and a repo in about a week or two done by the AOLSERVER maintainer (that is to say, properly, no halfway bullshit).

in other words, low hanging fruit is great, you really need to be aware of whats already been done and how much tho to effectively achieve that.

any takers? the more people we split frankies time between the cheaper it gets and the faster it's up and running.

Collapse
Posted by Robert Taylor on
also if you are new to the community, chat me up, i don't know the whole community but am aware of roughly what is happening wher - i can point you in the right direction and give you an overview and good idea of status of various bits from 1000 foot perspective.

i'm also the unofficial 'greeter' so to speak (in the sense i tend to say hi to all the noobs dropping by the #openacs chan on freenode.org), my job in the future will be to get out the bullhorn and meet new people and just say hi, explain where is what and to whom to talk to and get people up to speed in zero time flat so they can start getting involved immediately.

Collapse
Posted by Torben Brosten on
Abelardo Pardo, see https://openacs.org/xowiki/Debian%2fUbuntu_installation for Ubuntu installation instructions.

cheers,
Torben

Collapse
Posted by Jade Rubick on
It's also pretty easy to write an installer in Tcl which compiles everything from source.

What we did here is add all the open sourced packages to our own separate subversion repository. The installer does a few sanity checks, and then downloads each piece of source and downloads it.

Also, since it's written in Tcl, it uses the same skills as what everyone is familiar with.