news and thoughts on and around the development
of the iCite net
by Jay Fienberg
posted: Apr 12, 2004 7:24:58 PM
(Rambling post ahead.)
One of the attractions of Java is how easy it is, in principle, to run a Java program on most any computer OS. As long you have or can install the Java Virtual Machine on the computer, within a not insurmountable set of possible deployment issues, you can get your Java program running on that machine.
The ideal for the iCite net software is that it is something available in a number of implementations, written in different languages / for different platforms. But, I am working on the prototype software (e.g., in one language), and though it's not the first priority, it would be great if it were easy for people to run these programs in a couple different contexts: desktop and web server.
On the desktop, Java is, I think, a pretty decent option. Besides the OSs that already have current JVMs, Sun's download and install is decent. (I know, it's still more of a hassle than if it were pre-installed.)
But, somewhat ironically, it is on the web server where I am concerned about Java. Of course, if you have your own server, you can load up the JVM, no problem. But, when it comes to shared hosting, PHP, Perl, and Python are almost always available, and Java is relatively rare.
So, the web server is the principal place where I imagine the iCite net prototype deployed. And, to encourage its deployment, it seems like writing it in PHP, Perl, or Python is a good idea.
But, first question: how easy it is to add less common modules / libraries on shared web hosts? I'm not sure if what I am doing (a lot with XML, some with RDF) would require uncommon modules, and if so, is getting them installed on a shared web host a piece of cake or is it on the order of getting a JVM?
Second question: how easy it is to deploy to a desktop with these languages? For a desktop install (of iCites), a local web server is needed. With Java, just throw in Jetty or something, no problem (the Java web application standard is very powerful in this way).
But, with PHP, that pretty much implies a decent Apache install, right? Um, starting to sound too hard, though maybe it is easy to do now. (Because Mac OS X and *nix boxes have so much going for them in this area, I am imagining an install on a Windows desktop as the context in which easiness is measured. So, assume no pre-installed Apache.)
There are now PHP installer that will configure local web servers (IIS, PWS, Apache) and set everything up locally. These are development environment set-ups as opposed to packaged desktop web applications, but that's maybe OK. (I am not assuming that the iCite net prototype's least skilled desktop users will be "Aunt Tillie", but will be the kind of people who have had friends help them get set up on Moveable Type.)
Python has "Freeze" which creates an executable. I have never used it, so I don't know if it makes things a lot easier than having someone do a full install of Python (which doesn't seem particularly harder than installing the JVM).
Then, I am not too sure about Perl on the desktop. Sounds strange, but maybe not! I guess I am not sure Perl is hip any more (see my definition below).
Anyway, although I have a lot of work invested in Java, a certain aspect of what I am doing is happening in XML and/or MySQL, and I have to rewrite a lot of the application code at this point. So, would you suggest Java or PHP or Python, given an ideal of wide deployment on web servers and later deployment on desktops?
I guess one thing perhaps interesting about my lack of clarity on this is that I imagine more ongoing / future importance in desktop web server applications. It doesn't seem clear what are the best ways to develop and deploy desktop web server applications.
(btw, I'm not considering C because it's not "hip" by my definition, which is: a language I'd find fun to develop in. Sorry if that isn't a very good ubiquitous definition!)
permalink | comments {0} · trackbacks {1}
also available as: rss · rss2 · rdf · atom
Note: All comments and trackbacks are moderated. Spam is deleted. Other comments are approved as promptly as possible.
Note: Older posts no longer accept new comments or trackbacks.
« prev post
Blojsom filetime plugin fix tweak
» next post
Idea for an article on information architecture
blog archive
2006: jan · feb · mar · apr may · jun · jul · aug sep · oct · nov · dec 2005: jan · feb · mar · apr may · jun · jul · aug sep · oct · nov · dec 2004: jan · feb · mar · apr may · jun · jul · aug sep · oct · nov · dec 2003: may · jun · jul · aug sep · oct · nov · dec first post: April 30, 2003 highlight views: Spammers' Choice
Jay elsewhere online
Jay Fienberg - the official home page
Wrong Notes - the music blog of the Ear Reverends
Fine & Full, aka, a fine and full burger
Sociomobilepoetextologia (moblog, currently inactive due to lack of proper mobile)
to enjoy roll
sites I like to read when I start from here
· Anastasia Fuller
· Andy Baio
· Biz Stone
· Boris Mann
· Bre Pettis
· Chris Dent
· Danny Ayers
· Dare Obasanjo
· David Czarnecki
· David Weinberger
· Don Park
· Evan Williams
· Greg Narain
· Jason Kottke
· Jim Benson
· Lucas Gonze
· Marc Canter
· Matt May
· Matt Mullenweg
· Michal Migurski
· Nancy White
· Rebecca Blood
· Reg Cheramy
· Richard MacManus
· Sam Ruby
· Shelley Powers
· Tim Bray
· danah boyd
trackback from: the iCite net development blog
posted: Aug 8, 2005 4:12:13 PM
title: Ubiquitously hip javascript tripping
Last year when I wrote my post asking, What is the ubiquitously deployable, hip, programming language?, I was hoping someone would give the answer that I was secretly looking for: Javascript.