Forum OpenACS Q&A: OpenACS bi-weekly Newsletter, 2003-09-09
Welcome to the inaugural edition of the OpenACS newsletter. The response for my call-for-news by Email was quite fair, given the short notice. So let us dig right in. In almost no particular order our first entry comes from Collaboraid HQ, Copenhagen:
Merge 4.6 to HEAD
Last week, we merged the oacs-4-6 tip back onto HEAD, after having decided that we were too close to putting out a 5.0.0 release to make it worthwhile to spend time on another release based on 4.6.
So from now on, all development should take place on HEAD. HEAD should essentially be code freezed within a few weeks, and now already there's a feature freeze. We need at least a beta-quality release out early October. Joel will update with more release information later.
I've added a list builder, akin to the form builder, to the templating system. See template::list::create and friends. It lets you build dynamic tables and lists, and has a number of interested features, though it still needs some work here and there.
Navigation and User Interface enhancements
I'm in the process of remaking some of the standard user interface.
The goal is to have the user experience for a groupware type application be tolerable. In order to achieve that goal, I've started writing all the UI that users will come across in that use case. It's mostly the pages of acs-subsite that gets affected.
The work hasn't been completed, but we'll complete what we have time for and roll back the rest in time for a 5.0.0 release.
We've started doing test-driven development, so we'll write test-cases for everything we can think of, before writing the code. And when we find a bug, we try to remember to write a test-case that exploits the bug first, then fix the bug and check that the test case now passes.
It feels very nice to develop in this fashion. It gives you a good way to find out if some refactoring you made broke anything, and it lets you easily test your API one proc at a time as you write it, instead of having to wait until you have data model, complete API, and all of your user-visible pages, before you can test anything.
Try it! I strongly recommend it.
Possibly somewhat surprising, at least to me, was the origin of the next entry.
In an effort to bootstrap ourselves to representative government, the team of CVS committers ratified the existing OpenACS Core Team as the governing body for the OpenACS cvs tree and OpenACS.org until 25 Sep 2003. We are discussing how to elections for a seven-to-nine person OpenACS Core Team before that date. Key unanswered questions include, who can vote and who will be on the ballot. The Temporary OCT has ratified a process for formal, transparent decision making.
5.0.0 Release Management
I'm heading release management for OpenACS 5.0.0. Current release activities include Peter Marklund's excellent work setting up automatic nightly builds on Collaboraid's public test server, the 5.0.0 Milestone Criteria, the discussion and TIP on which packages to add and drop from the core and application distributions. 5.0.0 is nearly code-complete; testing is proceeding and release milestone dates will be announced when known.
New features in 5.0.0 include
- internationalization: a single OpenACS site is readable in any number of different languages; core packages currently include full translations for Arabic, German, English, Spanish, Italian, Korean, Dutch, Norwegian, Polish, Portuguese, Portuguese, and Swedish.
- external authentication: OpenACS users can authenticate through external servers, such as with Unix account passwords or LDAP or RADIUS.
- Noquote, a security overhaul for the templating system which protects against malicious HTML.
- Upgrades to calendar, photo-album, acs-subsite.
(Please email me if I'm missing something!)
And in related news, I've moved to Copenhagen to work at Collaboraid on OpenACS-based projects.
Project manager is a project management solution for OpenACS. It is currently in active development, version 0.24d. I expect it to go alpha by October 5th. After that period, unless other developers step in to help, development may slow for two months while I finish porting my ACS site to OpenACS. Unless anyone else steps in to help, I expect it to go beta at the end of 2003. After that, development will pick up again. Upgrade scripts should be available from the alpha on.
By October 5th, the project management system should be in a basic, usable form. There will be plenty of room for improvements, and still a few bugs, but no show-stoppers. I will be using it in production after our Intranet is finished being ported to OpenACS.
Because this project is being funded by my employer, you can expect rapid development on Project-management. My background is in Human Computer Interaction, so I expect a lot of work on the scalability of the interface.
Future plans include an SVG-based graph system (inspired by Tufte's books on information presentation), with Gantt and PERT charts, informational metrics on project and task status, easy manipulation of hierarchies, resource smoothing, resource availability and scheduling.
I don't have any current plans to add in costs, budgets, or the like, but this is open for other developers to add in.
Within a year, I'm expecting a slick interface, sophisticated, informative project management, without a lot of the unnecessary frills of other project management software. I'd like a 95% solution that does that part of it well.
I'd welcome some help, especially after October 5th.
More information is available at: http://openacs.org/projects/dotwrk/project_management/
I would like to add the OpenACS test servers, currently at URL http://dotlrn.collaboraid.net/test/ as a news item. The plan is to move the test page to test.openacs.org. It's just a static HTML page so we could have it as an ETP page for example at openacs.org/test. The automatic install scripts that we use for the test servers have been checked in to CVS at openacs-4/etc/install. We are hoping for HTTP- and Tcl API level tests to be contributed from OpenACS package developers going forward.
Another news item is that Mohan Pakkurti is spearheading an Oracle 9i compatibility effort for OpenACS for the 5.0 release.
Speaking of databases, then it might be worth mentioning that PostgreSQL 7.3.4 is out. A rare, but serious, startup failure was fixed. This upgrade is critical for users of 7.3.3, and recommended for all other versions.
At the Copenhagen summit in April I volunteered to look into generating a stand-alone boot CD of a demo installation of OpenACS based on Knoppix. Some progress has been made, enough so that I can say that this is technically possible, but the hardware requirements for the demo machine will be somewhat high. Even 256MB will quite possibly not be enough.
However currently the work on this project is more or less on hold. I only have limited time available for OpenACS related work, and I have decided that I need to concentrate on my own, core work for the projects I would like to do. This newsletter is one of them.
There was some discussion on IRC among some people, who might want to take over the "Instant OpenACS" demo CD project.
Another pet project of mine is a new list of OpenACS web resources, which Dave Bauer suggested end up on openacs.org at some point in time. I have plenty more links to add to the list, something I intend to do in the near future before starting on the next project, which is:
OpenACS documentation for new developers
I am considering starting to document my own efforts as a new developer on OpenACS in the broadest sense. Basically I am hoping it will be possible to get some of the experienced developers to review the documentation and code I write with the intent of making my projects (and thus my documentation effort) in full compliance with current OpenACS recommended usage and coding guidelines (whatever those are . This will be the subject of a RFC from my hand in the near future.
State Of The Codebase
Daily files commited/touched in HEAD by all committers: 2003-08-26 :: 21
2003-08-27 :: 21
2003-08-28 :: 122
2003-08-29 :: 872
2003-08-30 :: 66
2003-08-31 :: 13
2003-09-01 :: 9
2003-09-02 :: 26
2003-09-03 :: 36
2003-09-04 :: 70
2003-09-05 :: 121
2003-09-06 :: 88
2003-09-07 :: 3
2003-09-08 :: 0
We currently have 286open bugs and 121open patches.
NB: The CVS numbers seems to be low, I suspect I have not found the right CVS option yet to get the correct history. 2003-08-29 was the day most of the forward merge between oacs-4-6 and HEAD took place.
This concludes the newsletter for now. If you did not receive my call-for-news Email this Sunday, but would like to be asked in the future, then please drop me a line.
PS: If you would like to know how I intended the newsletter to look before I realized HTML tables & friends were banned on the forums, then have a look...
Speaking of formatting in the forums, should we put up an ETP instance for this? Dave, what do you say?
Talking about ETP, is it possible to have notifications enabled for ETP controlled pages, like we have for forums, news and file-storage ?
Yes, we can setup an edit-this-page for the newsletter, or we can wait a week or so, and setup a blogger package instance after openacs.org is updated to 4.6.3. I am not sure which option is better. I suspect blogger, in that RSS and notifications will come for free.
Malte, of course notifications can be added to ETP. Unfortunately noone has done this work yet :)
I was using an AOL dial-up for the past couple of weeks that made using the bug tracker a real pain. There were too many bugs and too many page loads. I'm back on DSL now, though, so I can get back to work.
There are now 78 unassigned bugs left, down from 300+. My primary goal at the moment is to get them all assigned, then start bugging people to get them closed or commented upon. I don't have a grasp of what needs to be done yet about many of those that are open (many of which need not be addressed) so I will be trying to understand the scope and then post a strategy for getting rid of as many as possible.