Along with the lessons learned by doing the problem sets you'll learn why those of us deeply involved with the OpenACS keep grumbling that keeping the port up to date would be a lot easier if the SQL were written using some Tcl to abstract out some of the differences (quite possible for all but outer joins and "connect by").
So I'd argue you'll learn MORE doing them in OpenACS. Whether or not the extra knowledge is worth having depends on what you plan to do later. If you go work for aD you'll work strictly with Oracle and expected to enjoy it, for instance.
Of course, instead of learning to install Oracle during the first problem set, you'll learn to install Postgres. This is a great simplification. You should probably go through the exercise of installing Oracle once just so you can have a proper appreciation for just how easy it is to install and configure Postgres, a strong argument for using OpenACS when a site doesn't really need the scalability of Oracle.
Anyway, the first SQL divergences you'll run across are:
1) any references to 'dual', namely sysdate. For sysdate, use the tcl db_sysdate function.
2) sequences read like 'sequence.nextval' in Oracle, and nextval('sequence') in Postgres. Nothing a regex can't handle.
3) outer joins. The excellent people here have said it before; a: use unions, and b: god I wish postgres would include outer joins.
4) number is used in Oracle, numeric in postgres (was someone just pissy?)
5) something else bit me on the ass, but I'm on my first coffee for oday...
6) trees; eg. 'connect by'. I haven't had to use trees yet, so I don't know how to work around the lack in postgres. Watch this space.
I just started a new contract at a site with Oracle8.1, so I may not be as focused OpenACS for a while, but I'll be back. Hope some of this helps. As for documentation, PostgreSQL has a real lack, IMHO. You should trundle down to the library and grab some Oracle books anyway, if just for concepts. Good luck!
Can we get wimpy point running on openACS? Since I'm going to run a few more lectures centered around ACS-style devel, it would be a Good Thing to center some of the data here. Also, if anyone has some god stuff left over(or not yet tried!) from a similar presentation, by all means I'd love to turn my lectures into a more-complete introduction to DB-backed sites; albeit one shorter than 'Philip & Alex', and more in line with public speaking.
Editing the psets to make them pgSQL compatible now sounds like a wonderful plan. Deirdre, have you shelved this plan? Anyone else, would this piss off aD; should I just write an addendum to the psets?
If I write it, I'd like to share. So what can we do on OpenACS?
That's very good. I gave a presentation abut databases on GNU/Linux to my local Free Software and GNU/Linux Club, somewhat directed for web/db and it was really good. Of course, the same questions and statements that we see here and on /. about MySQL came up and I was able to address them and convert about 10 people to switch from MySQL.
It still amazes me how MySQL gets this "free-pass" in the open source community. I guess the biggest reason for this would be PHP.
Can we get wimpy point running on openACS? Since I'm going to run a few more lectures centered around
Wimpy has been ported by Don quite a while ago. My presentation was made on it and you're free to uso it as long as you keep the credits (http://fslc.usu.edu). I'd be interested to take a look at your presentation too.
Question 2: Editing the psets to make them pgSQL compatible now sounds like a wonderful plan. Deirdre, have you
There have been talks about this but no one has actually done it AFAIK. IMHO this is a great idea and if you're up to do it, please do. I don't think aD would have any problems with it. Besides, this is free software arena. Have an itch? Scratch it. Spreading the ACS gospel only benefits aD.
In theory, only psets 1 & 2 require many changes. 3-5 only have conflicts on trees, intermedia, and a little SQL might need changing.
So could anyone here tell me what parts suck, and what needs to be changed before these ported psets are considered useable?
Todd -- great job with the pset1 port. Have you been working on otherpsets as well?
Matter of fact I have, but they've been shelved for the last few weeks whilst my free time converged to zero. Also, I've been writing the ports with notes drawn up while I did the psets on Postgres; and learning OpenACS has been a rather non-linear curricula. But I should kick out 2 soon, and 5 not long after that. I didn't see much in 3 that requires changes (but maybe a few words should be said about Postgres specifics on the audit trail, namely VACUUM & CLUSTER). Pset4 has a few odd things, and pset 5 is a bitch b/c of CONNECT BY.
Part of my impetus to finish the assimilation from my notes was that after giving my little web/DB talk at the local (Austin) LUG, I tried getting a sub-group going to teach/learn these things (curricula tuned towards aD's boot camp, but stretched out over a few months of rare meetings); about a dozen people signed up, but then things degenerated into 'my-favorite-language' -- shimattana kodomo! (damnable children)
Anyway, glad you like the first ported pset. These are beta - tell me if my writing/editing sucks.
Sorry about this one -- it literally sat on my desk for a month whilst pursuing other things, err, everything. It's also not finished - I need to add some ground at the end about 'set transaction isolation level' and 'select .. for update'. Next week after I finish moving into my new place I should have a chance, and hopefully write 5.
(Not *all* that much chance, as I will be working on ACS classic henceforth...)
Todd, the sample files are not available at http://www.math.utexas.edu/~toddg/docs/psets/6916.ps1-pg.tar. Have they been moved to another (accessible) location?
Err.. yes. Good thing you noticed, I wouldn't have for the next several months. They're around here somewhere (I hope they're not still on my home machine in Texas). I currently being paid to work with ACS Classic, so I haven't monkeyed with OpenACS in a while. I'll find the files soon - maybe as soon as this evening.
On a totally unrelated note, does anyone here live in the Bay area, and need housing or tenants?