Friday, October 28, 2005

LibraryLookup published

My article on LibraryLookup has been published in the October 2005 issue of Technology First, a tech newsletter for the Dayton area. (I'm on p. 8-9). (The print article's content ties in with this blog post)

The sixty-second version: LibraryLookup lets you query your library's catalog directly from a page of a book vendor like Amazon, looking up that particular book for you automatically with just one click. You can get it installed in your browser in, oh, about five seconds. It's really cool, not just for helping you find books, but also as an example of clever and sneaky use of JavaScript.

Tuesday, October 25, 2005

Why do almost all contracts and job postings specify exactly the software that they want you to use (or to have used)?

When they want to incorporate you tightly into a large project that has already gotten underway with some specific software, OK. But I think such over-specifying is also the custom in cases where that is not at all true. It's very annoying to somebody like me, who bizzarely imagines she might be able to select the best tools for her own work.

When I take my car to the mechanic, I don't say, "You must do all the work using a Sears Craftsman #3 box wrench." But maybe, if I were a writer of contracts, I would.

Friday, October 21, 2005

Announcing Dayton-Oracle mailing list

Q. How do Dayton-area users of Oracle stay in touch with one another and find out what's going on in their community?
A. They don't.

Q. Well, that's lame. What can we do about that?
A. You can sign up for the Dayton-Oracle mailing list I just set up at FreeLists.

Please spread the word!

Tuesday, October 18, 2005

cx_Oracle and Ubuntu

Naturally, after getting Oracle working, my next move was to get it Python-powered by installing cx_Oracle. Installation seemed to go OK, but when I tried to use it...

>>> import cx_Oracle
Traceback (most recent call last):
File "", line 1, in ?
ImportError: libclntsh.so.10.1: cannot open shared object file: No such file or directory
which seemed odd, because
catherine@ubuntu:~$ locate libclntsh.so.10.1
/app/oracle/oracle/product/10.2.0/db_1/lib/libclntsh.so.10.1
I extrapolated a solution from an old mailing-list post by Karl Putland: I appended /app/oracle/oracle/product/10.2.0/db_1/lib to /etc/ld.so.conf and ran ldconfig.

That was the only trick - it's working fine now!

Oracle on Ubuntu

I love my new Ubuntu Linux (version 5.10). I love how easy it was to install, how it picked right up on my wireless card.

Oracle doesn't support Ubuntu, but I installed it anyway and it's doing fine. The process was tricky, though. Here's what I learned.
  1. RTFM. The Installation Guide is very important, more so than when installing Oracle on Windows. It has to be the primary document you work from, and follow step-by-step. Any other advice on Oracle/Ubuntu that you may Google up is secondary. Where Red Hat and SuSE directions differ, follow the Red Hat ones.
  2. This document is useful primarily for reassuring you that the error messages you get are OK.
  3. Make sure the Universe is in your Synaptic repository and install these packages: gcc, make, libxp, libaio, lesstif2, lesstif2-dev, rpm, and libdb1.
  4. You can't find all the packages that the install documents call for in the Ubuntu Universe. That seems to be OK; just find the ones you can.
  5. The magic word is runInstaller -ignoreSysPrereqs.
  6. One little misstep and you may get something broken. It took me a couple attempts. Try, try again, following that Installation Guide even more carefully.

Wednesday, October 05, 2005

Oracle - Python wish list

For my upcoming Oracle - Python talks at OOUG and (maybe) COLLABORATE 06, I want to write a nice Python script in realtime, before the very eyes of the audience, like a cooking show hostess would. I'm having trouble deciding on an objective for the script, though. The ideal script would make Oracle people sit up and scream, "I want that! That power must be mine!" It should also
  • Be very Oracle relevant
  • Be something that can't be done with SQL or PL/SQL alone
  • But still use some SQL (to demonstrate cx_Oracle)
  • Not duplicate the function of any existing Oracle utility or Oracle Enterprise Manager (this one worries me since I don't even know everything OEM can do)
  • Be writeable within an hour (shouldn't be a problem)
I'm brainstorming for ideas, but I don't know if any of them are really "it".
  • Compare parameters in INIT.ORA to live database (this is what I used for my paper)
  • Condense or groom a TKPROF output file
  • Populate a database table from a website (but what website? What's cool enough?)
  • Find and compare TNSNAMES.ORA files scattered across filesystem. Find TNSNAMES entries that are "dead" (unpingable).
  • Format alert.ora for better readability; color-code messages?
  • Measure log switch frequency from alert.ora
  • Find obsolete (unused) configuration files like init.ora, ORACLE_HOMEs, etc.
  • Clean up PATH (mine gets cluttered with droppings from various installs/uninstalls)
Any comments on these? Anything you'd like to put on the wish list? Let your imagination run wild - what wishes would you make to a magic Oracle genie? That's the kind of "gotta have it" feeling I'd like to produce.

Tuesday, October 04, 2005

Ohio LinuxFest

I had a great time at Ohio LinuxFest. Highlights, in my book, were
  • Jorge Castro's Ubuntu talk. He pointed us to a lot of great stuff to try out, and his enthusiasm was infectuous.
  • Rich Bowen's mod_rewrite talk. I've never encountered Apache documentation that I was truly happy with, but Rich was wonderfully clear. I want his book.
  • Ram Rao's virtualization talk. Xen sounds like it has jumped straight to #1 in my List of Reasons My Management Would Let Me Use Linux For The Database Server If They Had A Clue. Moving entire virtual machines easily between production and development servers, with almost no performance impact... wow, that would be incredible.
  • The reception. Hey, the only thing better than dancing is dancing with geeks. Too bad I had to leave early, but somebody foolishly located Dayton too far from Columbus.
I heard that the attendance had more than doubled from the last year, and indeed, many of the people I talked to were quite new to Linux. That's the one improvement I'd suggest for the event. There were good talks for newbies, but not enough of them, nor did the schedule provide clear enough guidance to help newbies steer themselves that way.

COLLABORATE 06, featuring me, maybe

I just submitted a proposal for a technical session ("Python and Oracle: Coding that Cooks") at COLLABORATE 06, the IOUG's conference next April. Wish me luck! I'm not sure how hard it is to get a slot; I do know that the speaker quality there has been excellent for the past two years.