Minimum necessary sysadmin
I got a phone call the other week from someone weighing IR software and hosted solutions who wanted some information about DSpace. I gladly offered what I knew, and she sounded very intrigued, until she realized that yes, the software is free, but no, it doesn’t run without help. The words “Unix command-line” pretty much ended the conversation.
“Out of the box” is a relative term here. DSpace doesn’t have a box, really. Getting it running is assuredly not as simple as sticking a CD in a CD drive, clicking some horrible EULA, and waiting while the CPU whirs. It’s free as in kittens, as Karen Schneider aptly puts it.
So what expertise do you need to install, customize, and run DSpace? That’s a useful question. Let’s assume for the moment that we want to run it on an all-FOSS stack—no Oracle, no IIS, none of that stuff.
DSpace requires or strongly encourages the following stack of technologies:
- Linux, OS X, Solaris, or other Unix operating system. Most people run it on some flavor of Linux. I am told it can be run on Windows, but I really strongly discourage that; the community support just isn’t there.
- Java programming language, including the “ant” build tool.
- Tomcat servlet/web-applications software. (Again, there are other alternatives, but most people use Tomcat.)
- Postgres database software. (LAMPheads: MySQL WILL NOT WORK.)
- Apache web server. (It is possible to do without this, but only if you have a skilled Tomcat admin.)
- DSpace itself.
At the bare minimum, somebody needs to be able to install, configure (based on instructions, not ab initio knowledge), and update all of the above. The DSpace installation docs are here for your perusal. Sine qua non; if nobody at YPOW can handle that, YPOW can’t run DSpace.
If that’s all your sysadmin can do, however, you will not have a trouble-free experience with DSpace. This is the voice of experience speaking. I can’t tweak Tomcat configuration because it confuses me to death (especially on OS X), and I’m no Postgres-admin whiz either. We have a catastrophic (as in, DSpace dead, kicking Tomcat’s butt and/or rebooting required) DSpace breakdown about once a week. These things don’t threaten data, but they’re annoying as heck. If you can live with annoying, okay. If not, you need a sysadmin with better skills.
The DSpace community will be of limited help, especially if you are running on a non-standard technology stack (OS X fans, take note!). Generally, the community is very good about solving problems originating somewhere in DSpace itself. It is not good at coping with problems in one of the underlying technologies (Tomcat, Postgres, or Apache), and it takes a lot of patience and courage to navigate those communities looking for answers.
For basic customization of DSpace’s user interface, the current necessary skills are HTML, CSS, willingness to tweak DSpace configuration files (some of these are plain-text, some XML), and at least a reading knowledge of Java. With the advent of Manakin, the Java knowledge will not be required, but basic XSLT chops will. (I don’t think most DSpace/Manakin tweakers will end up writing huge and complex XSLTs from scratch. I do think we’ll spend time messing about with other people’s, and coming up with small-scale XSLT solutions to specific UI problems.)
For in-depth customizations—and the line there is rather fuzzy, I’m afraid; some things that should be simple in DSpace aren’t—right now the barrier skill is Java. Superficial knowledge (such as I have) won’t cut it here, I’m afraid; serious Java-slingers only. Again, Manakin will allow some fairly sophisticated metadata-presentation tricks for those with XSLT skills. Anything Manakin can’t handle, however, will have to be done in Java; DSpace doesn’t have API hooks to allow much else.
Also, if you’re going to get heavily into this, you want to have source control (Subversion recommended) and some sort of IDE (Eclipse recommended) around.
So there you are. Minimum necessary DSpace sysadmin.