Forum OpenACS Q&A: OpenACS 3.2.5 relationship to current ACS version

About this time last year a question of how 'forked' the current
version of OpenACS was from ACS. At that time OpenACS was coming out
of beta and matched very closely with OpenACS. Does anyone keep track
of and can provide an understanding of the division between the two
at this point, a year later?

Previous message contained:

Starting in April, which is when we hope to come out of beta, unless
the ACS/Oracle becomes much more modular, we're going to
branch. We'll still try to keep up with features, but we have no
reason to keep up with the actual code.
From Ben Adida, March 1, 2000
https://openacs.org/bboard/q-and-a-fetch-msg.tcl?msg_id=00000P&topic_id=OpenACS&topic=

The ACS moved from the 3.2.x codebase to 3.4 and from there to 4.0.  (And from 4.0 tcl to 4.0 java and now 5.0 java is being worked on.)

OpenACS did branch from ACS 3.2 around the time arsDigita itself branched to 3.4.  OpenACS 3.2.5 has various improvements over the ACS 3.2 codebase, including backported features from 3.4.  However, OpenACS development is now concentrated on porting ACS 4.0, and is apparently going to be very faithful to the ACS sources.

It will be faithful at first to the aD sources, just to get the port behind us.  There are already some significant changes, though, like SMTP processing moved out of Oracle and the content repository including an option to keep files in the operating system file system rather than the db.  Expect more and more of this kind of thing as time goes on.  A couple of us are working on a document discussing proposed improvements to the portal system, for instance.  And everyone knows how anemic and lame the admin side of stuff is, and the  UI for CMS ...
Maybe I should ask a new question then, but...

Where should an ACS-4.x TCL trained person jump in?  I took the bootcamp in mid-April, and have installed a local ACS dev box with Oracle, AolServer and ACS on which I'm developing a few ideas.  One is already using some stuff from the ACS 4x repository like Bboard and Photo Album (tho there seems to be an upload problem keeping Photo Album from working correctly).  Now I just heard OpenACS 3.2.5 is out.  From what I understand, the main diffs between 3.x and 4.x are 1) packages and the APM, 2) ACS objects and their integration into all the packages in 4.x for permission management - something that was never quite completed in 3.x, and 3) All services are available for 3.x, 4.x TCL is missing (at least) eCommerce  and 4.x Java has, like, 3 services ported to it.

So, how much is different beteween 4.x and 3.2.x?  Can I pick it up, having done the 4.x bootcamp?  Is the only difference the package stuff?  Is it true, then, to install services from the repository or create my own services I'll be installing the stuff by hand that the APM does auto-magically?  Are the 3.x services still available?  The OpenACS install howto points to the ACS repository to find more services, but following that link only shows 4.x services, not 3.x services.

I know folks are still using 3.x so I'm not questioning its viability ( Tali was speaking on the teleconference yesterday and mentioned a large 3.x project he's working on right now), just where is the jump in point right now WRT ACS 3 or 4 using TCL (not looking at Java right now; prefer it but I just got a call from aD a few minutes ago and was told Oct for ACS 5 the fully deployed Java-based toolkit)

Thanks.
Thanks for any info.

Well, Patrick, we're actually doing that project in 4.X because we don't see any reason for new development in 3.X. It's still a good system, but it's not very elegant and we don't see any future for reasonably powerful new development.

That being said, 3.X is still great for a very nice community site. It's still the best thing out there for building real DB dependent web systems, meaning it's better than at least Zope for some things (and Zope is better at others.)

I can't speak to the learning curve, but I imagine that it will be much less steep than the bootcamp presented to you. I wonder if it isn't unlike the Oracle to Postgres learning curve -- you already know one heavy DB subscribing to all the fundamental SQL and database rules, how hard will it be to learn another?

talli