Now that I’ve completed a class in database design and implementation, I finally started working on the web-based library staff scheduling program that’s been on my mind for many months. The more I find out about existing tools and technologies, the easier the task becomes. Unlike the days when I was developing embedded software, I’m not really inventing anything new; I’m just using the tools that other people have developed. It’s the difference between developing MySQL and PHP, and just learning to use them.

Last week one of the reference librarians at my place of work asked me about putting her obituary index on-line, as she had seen another library do. In fact, she had already started entering the data into an Access database. (Believe it or not, it’s all still on index cards.) The library’s web host, chosen over two years before my arrival, is not a Windows-based server, and so would not support Access/ASP. It’s not that I wouldn’t have made the same choice, but just mentioning the words “open source” sets off such a hostile reaction at MPOW that I avoid using them at all costs. I told the librarian that she should continue to build the database in Access, since that was what she was comfortable with, and that I would then port the database to our web host. I gave her an estimate of 5 to 10 hours for the task. I didn’t know if there was such a tool, but I felt sure someone had already tackled it.

My brilliant friend Simon—he’s always the first in my circle to discover and use new software tools—had a similar issue with an Access database that he wanted to port to a Linux server. He found a suite of Linux applications called MDB Tools that unpacks Access databases to a series of SQL instructions for creating and populating a MySQL database, or any SQL-compliant database. After one very minor problem, I was all set up with a secure login to his server, ran the conversion programs on a small inventory of library computers that I had previously done in Access, fed the SQL into phpMyAdmin (I had installed XAMPP on my Windows XP machine the previous day), and bingo! The only remaining task was to make it pretty. If the obituary index were in electronic form today, I’d be nearly done, well within my original estimate.

Coming from embedded systems, a background where everything was difficult because no one else had done it before, I never cease to be amazed at how smoothly things interoperate in the world of web development. My XAMPP installation, for example, ran perfectly and took less than 10 minutes. I had to go into Windows Services and disable a few conflicting Microsoft SQL services, but other than that, no worries. It wasn’t that long ago that no such installation package existed, for XAMPP or for any other open source goodies; it was all roll-your-own, start from source code and build it. I’m sure that there are still many roadblocks in the world of web development to be tackled and overcome, but I haven’t met them yet.

Well, except for the Internet Explorer box model. But I understand that’s going to change in IE8. Really.

Comments No Comments »

And if you’re not sure what a PDP-11 is, just pretend I said “Intel® Core™2 Quad.”

BBW Branch Both Ways
BEW Branch Either Way
BBBF Branch on Bit Bucket Full
BH Branch and Hang
BMR Branch Multiple Registers
BOB Branch On Bug
BPO Branch on Power Off
BST Backspace and Stretch Tape
CDS Condense and Destroy System
CLBR CLoBber Register
CLBRI CLoBer Register Immediately
CM Circulate Memory
CMFRM CoMe FRoM — essential for truly structured programming
CPPR Crumple Printer Paper and Rip
CRN Convert to Roman Numerals

DC Divide and Conquer
DMPK Destroy Memory Protect Key
DO Divide and Overflow
EMPC EMulate Pocket Calculator
EPI Execute Programmer Immediately
EROS Erase Read Only Storage
EXCE Execute Customer Engineer
HCF Halt and Catch Fire
IBP Insert Bug and Proceed
INSQSW INSert into Queue SomeWhere (for FISH queues (First In Still Here))
PBC Print and Break Chain
PDSK Punch Disk

PI Punch Invalid
POPI Punch OPerator Immediately
PVLC Punch Variable Length Card
RASC Read And Shred Card
RPM Read Programmers Mind
RSSC Reduce Speed, Step Carefully (for improved accuracy)
RTAB Rewind Tape And Break
RWDSK REWind DiSK
RWOC Read Writing On Card
SCRBL SCRibBLe to disk — faster than a write
SLC Search for Lost Chord
SPSW Scramble Program Status Word
SRSD Seek Record and Scar Disk
STROM Store in Read Only Memory
TDB Transfer and Drop Bit
WBT Water Binary Tree

I have a similar list that’s lost somewhere in my house, but this particular list comes from

http://www.gotlisp.com/lambda/lambda.txt

Comments No Comments »

I installed WordPress 2.5 on the library’s server today. I only just installed 2.3.3 on Friday, so there wasn’t much to salvage. I ripped out the 2.3.3 install (but not the database files) and just copied all the new 2.5 files over. I forget to save wp-config, so I had to edit it again, but that only took a few seconds. It just doesn’t get any easier than this. (Of course, I remember doing a sysgen for RSX11M that took all night, so anything else pales by comparison. Except maybe a Windows 3.1 installation.)

Comments No Comments »

I wasn’t there at the very beginning, but I wasn’t too far behind. In the early 1970s, the company I was working for joined the MACSYMA consortium, and soon I was exchanging emails and hacking login scripts with some of the stars of Project MAC. I feel strongly that a true professional should know something about the history of his or her field, and develop a sense of “standing on the shoulders of giants.” If you agree, or if you just enjoy amassing geeky techie knowledge, then you may enjoy reading Dr. Peter Salus’s The Daemon, the GNU & the Penguin. Note that the chapter numbering starts at 0. But then, you expected that, didn’t you?

Comments No Comments »

I’ve had WordPress running for two whole days, and already there is an update. This is WordPress 2.5, upgraded from 2.3.3, and although it looks the same (so far) from the visitor’s point of view, the admin view sure does look different. I like it! I’m glad I didn’t have time to get too attached to the previous one.

Comments No Comments »

I’m a former software engineer and current MLS student, finding my way in the wild, wild, West of the Web. I’ll be writing about the challenges of maintaining staff and public computers at a mid-sized public library, being a fledgling web developer, and straddling the intersection of libraries and the Web. Not necessarily in that order.

The WordPress installation was extraordinarily simple. The instructions are excellent, and the software is packaged for simplicity. When I signed up with my ISP, about a year ago, I wisely chose the Apache server with PHP and MySQL support (naturally opting for the open source solution rather than the proprietary configuration), so I was all set to go with WordPress. Now my next order of business is to find a WordPress theme that I like and that color-coordinates with the VSA Software colors.

Comments No Comments »