Forum OpenACS Q&A: Looking to hire ACS (TCL) Guru Developer

Collapse
Posted by Hawke R on
This is a direct hire by me, the CTO.
No agencies please.
I hope it's not inappropriate to post this here.
Job REQ# ACSGURU_10232001a
Date: 10-23-2001
Dept Name: Technical/Development
Location: Santa Clara HQ
Hiring Supervisor: CTO
Position Title: ACS (Arsdigita Community System) Guru Developer
Salary Range: 80k to 110k
Approval to use agency: No
Exempt, Full Time, Regular, or Contract/Contract to Hire, but
no "finder's fees".
ACS Guru will be a key part of the MightyWords Tech Team transition
from the existing development platform (Java, Tomcat, Servlets, JSP,
Apache, Oracle 8) to ACS 4.2 (TCL) on Aolserver, with Oracle.
The main challenge will be mirroring the current sites complex
content management and workflow system, eCommerce site, and other
existing functionality, to run on, and be enhanced by, ACS's CMS &
workflow, as well as many other modules.
The ACS guru must have a MINIMUM of 2 years production implementation
of ACS (various versions).
The candidate will be helping all the other developers learn the
nuances, strengths, and weaknesses of ACS, to get the most out of the
product, and meet the needs of the business team.
The candidate will work directly with the Development Director &
Chief Technical Officer, and the development team, designing, and
writing code and documentation.
Candidate must be extremely versed in all/most of ACS's modules, API,
Kernel core, SQL, TCL, etc.
Required: 2+ years hands on ACS design and development on production
systems, live Internet based sites.
Minimum 2+ years hands on design and development with other CMS
and/or workflow systems (Broadvision, Vignette, Documentum, Filenet,
etc).
Minimum 5+ years general development background.
Minimum 4+ years Internet development background.
Will not accept recent college graduates unless candidate has
considerable out of school experience during that time.
Need to place Immediately.
Thanks.
Collapse
Posted by Hawke R on
Someone suggested that many of you would be interested to hear the reason for converting to ACS.
I'll detail that below, but obviously some details and names will have to be left out to protect the innocent (and those not so innocent). ;)
I came on board with the company in September 2000.
A project was already many months under way with a consulting company to build our company a fairly complex combination site.
The site was to provide:
eCommerce
Partner network of content providers and content distributors
Content management system
And more.
I stumbled across ACS for the first time at that October's Oracle Open World 2000 in SF.
I come from a broad background, and one of the companies I worked for specialized in implementing document workflow and content management solutions such as Filenet, Documentum, inConcert, and others. And I used to implement and support these systems.
I kept asking the consulting company why they opted to build everything we needed from the ground up, rather than getting something off the shelf that was at least 80% match to our needs.
They kept insisting there was no such product, and I didn't buy. But alas the momentum was already under way, and I as the new (and youngest executive by at least 10-15 years) CTO, wasn't yet proven in my opnions and instincts.
I saw the source code of this custom product 2 weeks before launch (I tried for months to get my hands on it before them, but was delayed by the consulting company daily).
I could tell once I saw it, that it was going to be a disaster. We launced on it December 13th despite my protests.
It's been hell ever since.
The system doesn't scale to out needs.
The user & group management system is a joke, and has to be hard coded to add anything new.
Most of the upload and download bulk utilities didn't work right until months more of work on our team's part.
We've been unable to add any new functionality because the system is totally monolithic, and in no way modular.
Any changes to any part of the code causes many unforseen failures.
We needed a system that our small team could manage.
Could work on in a modular fashion. Fixing fires in one area of the system, without breaking everything else.
Easily add features.
Has a high caliber user and group management system.
Flexible workflow and content management system.
Decent eCommerce system.
Strong portal/cobrading capabilities.
Scalable for traffic, content, users, searches, data imports and exports.
We work with thousands of pdf's and images at a time.
If it wasn't for the current systems' bottlenecks, our current 50k titles would be 4x greater already.
After months of haranguing the executives, they each one by one finally reached their pain threshold, and were willing to follow my recommendations to move to another product, and more specifically ACS.
I researched, installed, and used ACS Java 4.6, ACS TCL 4.2, OpenACS 3x. I ran each on my own personal websites over a 4 month period at www.merp.com, tolkienhome.org, lotr.ws, manicmechanic.net, and alpentech.net, colorificsigns.com, and other sites.
I now run my busiest and most community centric site (merp.com) on OpenACS (I liked ACS better, by I personally couldn't afford the Oracle license).
It became clear that ACS 4.2 TCL was easily 80%+ match to our current and future needs.
ACS Java was more in line with out development teams skill set, but the Java version would require to much coding from scratch, and doesn't have any proven implementation or enough community adoption(yet).
Maybe in 1-2 years when there are more modules, etc. We'll convert to that, but for now ACS 4.2 appears to have what we needed, just about ready to go.
Now we just need someone who keep show us the most efficient way to do that. :)
I hope this helps others considering these prospects as well.
I'll post to this thread over the coming months as to any issues, and progress made.
The deadline to launch on this new platform, is a VERY solid March 11th 2002. And if it can be moved up 1-2 months sooner, so much the better.
Thanks,
-Hawke
CTO
MightyWords Inc.
www.mightywords.com
Collapse
Posted by David Kuczek on
You are talking about using ACS 4.2 on Oracle...

Why aren't you going for OpenACS4 on Oracle?

There is already an Alpha tarball out for a week. museatech will shortly release the new  www.openacs.org under
OpenACS4.

On the one hand your company would profit from the future
development from this community and on the other OpenACS4
would profit from your development. There is some honorable
"companies" working on the improvement of OpenACS4. One of
them is the MIT Sloan Business School!

https://openacs.org/bboard/q-and-a-fetch-msg.tcl?msg_id=0002z7

Additionally ACS is no longer supported by aD...

Collapse
Posted by defunct defunct on
Also, the excellent efforts by the testing volunteers within this community are really helping to ensure the OpenACS is of a quality level that matches its implementation and design acheivements...

I'd definately recommend picking up the OpenACS alpha...

Collapse
Posted by Malte Sussdorff on
Well, in addition, take into account that ACS 4.2 is dead. No further development, no further support whatsoever. I dont think a lot of people actually use it thanks to the ADish way of handling that matter.
Collapse
Posted by Don Baccus on
Hawke!  Whitespace is your friend!  Well, your readers' friend, anyway!  That's a lot of dense text to wade through...

A couple of comments.  First of all, there are a bunch of very recent ex-aD employees who are available at the moment, so you should have a decent talent pool to select from (and there are other, non-aDers who might make good candidates. too).

I'll second the above comments in regard to OpenACS 4 vs. ACS Classic 4.2.  The OpenACS 4 code base is the ACS 4.2 code base with bug fixes and some enhancements, including a new "CMS lite" that provides an alternative to the "CMS heavy" built into 4.2.  Sloan/MIT is investing in a new education platform based on OpenACS 4 named dotLRN, and as part of that the portals package is being totally revamped and improved (the dotLRN system, much like ACES before it, will be portal-driven).  That will be released in alpha form in a month or so.

And OpenACS 4 supports both Oracle and Postgres, just in case you've been thinking it only supports Postgres as is true with the OpenACS 3.2.

In other words, OpenACS 4 is a superset of ACS 4.2 and new packages are being worked on by a variety of people.

As far as liking the ACS better than OpenACS, keep in mind that OpenACS 3.2 is a port of a relatively ancient version of the ACS.  It's a clone of a point in history.  Rather than continue to incrementally upgrade and track various aD package enhancements we made the decision about a year ago to just wait for ACS 4.x to stabilize, then port that.  With aD's dropping of the Tcl version, we decided to rewrite it to support multiple RDBMS rather than simply port to Postgres and here we all.

Feel free to ask questions regarding ACS 4.2 vs. OpenACS 4 specifics.

Collapse
Posted by Hawke R on
Sorry that it all ran together, the cut an paste for the job description didn't translate well.

As far as ACS 4.2 vs OpenAcs 4x Alpha. The mere fact that it's still "Alpha" makes me squeamish about even considering it in a production environment, when the company, and certainly my job ride on a successful implementation. Now, if it's only Alpha in name, but actually more stable, and has a better install base, that could be a different story.

All the more reason to hire someone who knows the entire range of ACS/OpenACS products. I've only 4 months of R&D, and some light usage thus far, that, an expert, does not make.
I've recived a decent amount of candidates, and am encouraged by the caliber of the applicants.

We're still months away from launch, so a decision between ACS4.2/Openacs4.x can still be adjusted. I've just gone with what I view as a more established version right now, knowing full well it's not a product that will evolve, but that appears to be ok, because it already has all the functionality we need for quite some time.

This is not how I prefer to make such decisions, I prefer a platform that will be productive for many years, but current circumstances dictate higher priority to resolve this as quickly as possible (I'm owrried our current system might now stay up until March due to serious data integrity flaws).

Again, I'm open to the possibility of OpenACS, but just nervous using something marked as "alpha" in production.

Comments?

Thanks,

Collapse
Posted by Don Baccus on
There are many of us who never considered ACS 4.2 production-quality software, frankly.  That's one reason for our labelling our current work an "alpha" release.

Also, we're working on an RDBMS-independent search package (that obviously has to interface with RDBMS-dependent things like InterMedia) and until both Oracle and Postgres support that fully I'm hesitant to label our release "beta".  This is my next, personal upcoming task.

However you can still use the ACS 4.2 site-wide-search package with the Oracle version, and it's still included along with the deprecated acs-interface so folks will have a working solution in the short-term.

Your timeframe is very tight, so I do understand your being a bit queasy about OpenACS 4.  The OpenACS 4 framework will support ACS 4.2 packages, however, so you would have that as a fallback if one or more of our versions were to introduce errors.

Collapse
Posted by Hawke R on
Well, whoever I end up hiring for this position will definitely be able to persuade me which is the best route to go ACS4.2 or OpenACS.
Again, i'm open to both. If OpenACS, even in it's Alpha stage really IS equal (or better) than ACS, then It's easy enough to adjust to that path.
One of the big positives about ACS in general has been the excellent, and high caliber, community around it.
Thanks,
Collapse
Posted by Janine Ohmer on
Hawke,  we (furfly) have built a couple of sites based on ACS 4.2 Tcl and I can confirm the comments here that it was never quite ready for prime time.  We've done a lot of bugfixing along the way, but there is still more to do (if these were exceptionally busy sites I think we would be seeing more problems than we are).  If I were in your shoes I believe I would try OpenACS;  you might still have to do bugfixing but at least there is a community to contribute them back to, which is not really the case any longer at aD.
Collapse
Posted by Jun Yamog on
ACS 4 or OpenACS 4?  I was in this shoes about a couple of months ago.  Trying OpenACS 4 and ACS 4, consulting Don B, looking at the community.  I decided to use OpenACS 4.  Looking back I am happy that I think believe that I made the right decision.  If OpenACS 4 vs ACS 4 was something to think about a few months ago, right now there is only OpenACS 4.  The only thing that I can think of using ACS 4 are:

- Its not a moving source code anymore.  Ofcourse its somehow a dead code now but if you can't keep up with the fast moving code of OpenACS 4 then ACS 4 maybe ok.
- Its got better marketing value.  Its rated as production rather than alpha.  Those are just markings that says nothing of the real state of the code.

Collapse
Posted by Tom Jackson on

I don't think you could make a bad decision here. Your project is big enough and unique enough that any bug fixes will be very small in compairison to your main task. You will have more issues with the actual way things work, than you will with the way they don't work. The good news is that with either choice you can change the way any part works. A simple example is the templating system. aD correctly resisted the temptation to create more tags. However they are easy to add. More annoying to me was the functioning of the master tag, which takes a source (src) argument. The implimentation doesn't allow you to specify an absolute path.

Only thing is to not underestimate the last 6-9 months of work by some very experienced developers, who have not only ported the code to another database, but have actually done some serious bug fixes that will never show up until you get real data in the system.

My opinion would be to take the core, either one, and do the rest by hand, unless there is a very close fit with a particular module.

Collapse
Posted by Hawke R on
So, we have made an offer to a candidate, and he will be coming on board this Monday (it's Friday today).
After some review by him we will make the final decision between ACS & OpenACS in the next 1-2 weeks.

I've been having all our current developers train on ACS, but it's clear there won't really be much difference if we switched them to OpenACS if that became our ultimate decision.

I'll post more updates as they come.
Thanks to everyone for their very useful input.
-Hawke