on 02/03/2008

WikiHistory

Sometimes it's fun to take a look back at the wikipedia links you've hit over the past few days. Check your history - it might be interesting. Here's a few of mine:

I wonder what this amalgam says about me as a person.

0 Comments
on 01/25/2008

JSON Lint - The JSON Validator

I've created a little JSON Reformatter and Validator service. I'm calling it JSON Lint, The JSON Validator, mainly to ride on JS Lint's coattails a little bit.

Any JSON users, feel free to let me know what you think.

on 01/12/2008

A Labor of Love

I realized something on the train just a few nights ago. I can't draw worth a damn, paint my way out of a paper bag or sing even if my life depended on it. (And I'm clearly no good at forming an original metaphor. (But keep reading!)) Despite all that, though, I've still got some shred of creativity in me.

After all, software development is largely a creative process. But I guess I'm realizing recently how much it can really be considered an art.

And like most artists - who usually end up working for The Man - a dulled, watered-down version of my art pays my bills. I still love it, of course, but it's undeniably commoditized.

To contrast that, though: I've been working on my own little web app for a month or two at night, and it's a completely different experience. I agonize over every line, every bit of the user experience. I want it to be perfect. Not for the client, not for customers, or profitability. For me. For the pure enjoyment of the act of writing clean, useful code.

If that ain't art, what is?

An interesting corollary to this. When I started this project of mine, from concept to code, there was zero financial motivation. I strove for clean code purely for code's sake.

I think software has its own similarity to the more refined arts, and that is this: Like art, the best software is made for free. Without deadlines, without clients, without concerns about "the demographic."

This is one of the strongest arguments for open source software that I've never heard. I've heard tangents to the thought, about the process being about 'want' rather than 'need'. But it hardly encapsulates the strength of the argument. The creators of this stuff LOVE it. They breathe it, they dream about it (Literally. I know I do.), and it's clearly not just to pay the bills. It's passion practically unmatchable in for-profit software development.

'Code poet' is such a frickin lame term, but I'm starting to realize that in some facet, that's exactly what I am.

on 09/23/2007

Epic Fail! or: How -Not- to bring RSS to the Masses

EPIC FAIL!

I stumbled upon Epic Records' site this morning, and was happily greeted by a big ol shiny 'RSS!' button in the top right.

Now - tell me if you disagree with me - but wouldn't a primarily poppy music site be the one of the last places you'd expect the users to be familiar with RSS?

So I checked it out, and this is their spiel:

Really Simple Syndication (RSS) is an XML feed used to share news content throughout the web. Many web sites and blogs, as well as RSS Readers, allow you to view personalized content using RSS feeds. Examples of these websites include My Yahoo, My MSN, Google, & Bloglines.

Imagine a 16 year old girl reading this. She'll understand NONE of it. The confusion will settle in immediately - starting off with "RSS is an XML feed" is terrible - they don't even know what XML is, so they're probably even more lost at this point!

Anyway, enough ranting. I'm convinced that the majority of people who use RSS successfully are just so bad at explaining its usefulness to non-technical people that it will take far longer than it should to gain traction.

In this vein, Rich Ziade over at basement.org (and his brilliant little sketchcasting idea, sketch.basement.org) has come up with a pretty nice way to sum it up, over here at RSS for the Masses.

on 09/15/2007

Three Reasons AIR will be Huge

Adobe AIR

So far, despite its infancy, I'm becoming a big fan of Adobe's AIR platform. It stands for "Adobe Integrated Runtime", which is maddeningly vague. What it really does, is make desktop applications out of what used to be web applications.

To be more obtuse, it blurs the lines of what was previously envisioned as a web application and what was a desktop application. Web apps can now be applications, right in your start bar or dock. And I gotta say, so far, AIR is pretty fucking great at it.

Here are three reasons I think it's going to be very important in the upcoming months:

One: The Usefulness is Immediate, and Visible.

One of the first real forays I've had into AIR was via the very cool web app (created by fellow Arc90er Avi Flax) called AIRifier. The purpose is simple: stick in a URL of your favorite web application, and AIRifier will spit back a nice little desktop app, all bundled up and ready to go, that contains the web app you pointed to.

I can hear the skeptics among you already - "So what? It's just a browser control in a flash application." While this may be true technically, I defy you to stick google reader into it and not experience a vision of greatness - a sight of where it could be taken, with just a little more code. Add notifications and a smaller, expandable interface, and you've got one heck of an RSS reader right on your desktop, friend!

Two: It's dead-simple for Users

If you tried out AIRifier (and you had already installed the AIR environment), you probably saw how easy it was to install that application. It is, literally, fifteen or twenty seconds from install to first run. Let me say that again. Fifteen Seconds until user satisfaction, for a desktop application. That is huge.

Three: It's dead-simple for Programmers, too.

This is the kicker, I think, and why we'll be seeing lots of AIR apps very soon. AIR applications can be developed with languages you already know. HTML and JavaScript, or Flex and Flash for a richer experience. What does this mean?

  • Prototypes are ludicrously easy to develop. Take your existing HTML interface, tweak it over a day, and you've got a desktop app prototype running.
  • Lots of developers. Developers who have not had the chops to get into serious GUI development will be chomping at the bit to sink their teeth into this. This means lots of use, and probably lots of really bad applications at first, unfortunately.
  • Easy translation into serious applications. When the usefulness is realized via a prototype; further, more serious development can be picked up in Flex and Flash if necessary.

And if those three reasons aren't enough, here's one more for you: It's cross-platform. Instant cross-platform desktop applications. That's a big plus.

AIR not doing it for you? Think it's the coolest thing since sliced bread? Post a comment.