Friday
Nov282008

aptana studio upgrades the IDE paradigm

Aptana Studio is a sweet little IDE, but it gets even sweeter now that they've added in Jaxer and Cloud.
My development life has been veering away from Java and towards JavaScript lately. I'd been coding in IntelliJ IDEA 7.04. It's got intense suites of features for java web development. IntelliJ IDEA 7 is pretty darn nice for javascript, css, and html; until Wednesday, it was my editor of choice. (Version 8 has added some promising javascript support, but I haven't upgraded yet.)

But Aptana Studio has delivered a game-changer: the IDE provides integrated deployment to cloud servers. This is sick, sick, sick. Usually, in order to make a web site available publicly, a developer has to sign up with a hosting provider, register a domain, point DNS to the right name servers, configure Apache, and upload files to the right place, configure Apache some more, etc. That's not rocket science, but it's not what I want to spend my time doing. I want to sit down in the morning and have a proof-of-concept site running by midnight. (Registering a domain and provisioning a site usually takes at least 24 hours.)

Aptana Studio delivered my one-day web 2.0 proof-of-concept deployment goal. Here's how!

  1. Aptana provides a virtual hosting service, Aptana Cloud.
  2. I can sign up for and provision a cloud server from within Aptana Studio; they've got a brilliant 21-day-free-trial for a cloud server.
  3. Standard stuff I'd expect from a virtual hosting provider: Aptana gives me a subdomain, name of my choice, and handles routing. At install time, I can choose which servers I wan to install.
  4. I write some javascript and html code -- pretty standard stuff.
  5. In one operation, inside the IDE, I deploy my site to the cloud. Boom. There it is.
  6. I edit the code. Another cloud sync, and my modified code is running on the remote site.
  7. I can monitor my cloud's logs within the IDE.
Really, that's more like ten minutes -- so I got to spend the rest of the day actually writing code. Which is what I'm going to do now -- my review of Jaxer will have to wait.

Thursday
Oct092008

a lovely error message

I'm playing with hudson, an extensible continuous integration engine. One of its optional tasks is to archive build artifacts. Using the ant syntax, I told it to archive everything named *.war in the dist directory. When I entered that string into its lovely ajax configuration page, Hudson immediately informed me of a problem:
'dist/**/*.war' doesn't match anything: even 'dist' doesn't exist
The best part of this error message is "even 'dist' doesn't exist."
I could explain what's so cool about this, but if you don't know now, you'll never care, even if I do explain it. If you do see what's cool about it, go check out hudson.

Tuesday
May062008

gowebtop calendar: my current project

gowebtop.com (free registration required) is now live with a preview of my current project, a calendar application within the gowebtop framework. For the highlights, see the gowebtop blog. I worked on this project as a freelancer through Elastic Process, a San Francisco software consultancy, for our client, Laszlo Systems.

Sunday
Feb172008

give them what they (say they) want

I feel guilty about walking past a hungry person and not helping them get some food, but I find it hard to believe that everyone claiming to be hungry in downtown San Francisco is only craving nutritional sustenance. An easy solution: when approached by a "hungry" person, I hand them some actual food! I usually carry a snack with a long shelf life in my backpack: a baggie of nuts, a chocolate bar, some dried fruit. So when I'm approached by someone who says they're hungry, I offer them an actual treat looking just as yummy and nutritious as it was on the shelves of Whole Foods.
The reaction I get to such offers is illuminating. An aggressive beggar in the big Westfield mall downtown literally recoiled at the offer of a bag of grape Clif Blox.. Sorry, buddy, but you need detox, not glucose. And yeah: the homeless community knows exactly where to go for free detox services, and they talk about it with more respect and dread than prison. (How do I know? Because I've talked to people who got sober for good after their 15th or 20th time through Ozanam.)
I'm not saying that I can cure poverty or drug addiction or homelessness with a 300 calorie snack. I'm just saying, here's an ethical way to cope with pleas from which our society should not ignore. Give them what they say they want.

Friday
Feb012008

"unsubscribe"

One of the best developments in the web this year: one-click unsubscribe links in promotional emails I must have signed up for at some point. Here's the scenario: I get some email from Random Business. I gave Random Business my email two years ago when I was interested in their random thing; I am no longer interested. I want to unsubscribe.
The old way: I'd follow a link in their email to a login screen. If I didn't remember my username and password, which I probably don't since it's been a while, I have to go through the forgot-my-password link, wait for email to arrive, then at least log in again, go to my preferences, edit my preferences, then click save and verify that I really want to unsubscribe.
The new way: At the bottom of the promotional email, there's a link that says "Click here to unsubscribe." In the very best implementation, I click on that link and get a page which says, "myemail@mysite.com has been unsubscribed from all Random Business mailings."
This was a very simple technology to put together, and could have been done a decade ago. By focusing on an everyday annoyance felt by most email users, someone was able to vastly improve the user experience. I won't quite say this builds brand loyalty (I am, after all, unsubscribing) but it does decrease lingering annoyance.
Companies with one-click unsubscribe, I salute you!

Page 1 ... 3 4 5 6 7 ... 51 Next 5 Entries »