Surviving Dreamforce 2007

Thankfully, I survived my four days at’s annual conference; Dreamforce 2007, all the while nursing a tremendous cold. My apologies to everyone and all I infected. Given the sheer number of people in attendance, my little cold is soon to be a global pandemic.

This was my third Dreamforce and it was interesting to see how much it has grown over time. This year was the first time it took over the entirety of the Moscone Center. With so many vendors, presentations, sessions, and activities it was impossible (and a bit frustrating) to take everything in. With nearly every vendor giving away an iPod as part of some marketing ploy, I felt confident in my chances to win an upgrade to my Treo 650. Alas, my low energy kept me from mustering the effort to collect stamps, spin wheels, and keep up with peppy salespeople. Congratulations to all you winners.

The core of the event was the release of Platform: A ground-breaking platform for customizing and integrating CRM, as well as developing and deploying brand-new applications.

For anyone, who’s used Salesforce to develop custom apps for processes unrelated to customers and accounts, this is an obvious move. It’s essentially what Microsoft tried to achieve by including Access in the standard Office suite; provide a user-friendly, easy-to-use, flexible database and application development tool for non-technical users. Access never quite hit that mark. While, the highly configurable Salesforce provides wizard-driven features for creating tables, reports, and workflow right out of the box. Moreover, it scales and starts off web-enabled. Hosted SQL without the DBA.

Given my drippy nose and pallid complextion, I found refuge among like fellows in the developer’s lounge. There VisualForce was all the rage. Along with Apex (announced at Dreamforce 2006 and now just available, though only to Unlimited Edition users), VisualForce represents a huge leap forward in native application development for Salesforce. While I like the simplicity of the standard SF user interface, there are times when I want more than just a two column layout, Inline S-controls was a nice first step, but VisualForce is the real deal. Previewing some of the demos, which included creating a Salesforce app for the iPhone interface (here’s to hoping mine is in the mail), I liked how much control a developer had over the look and feel of a custom app just using a plain english markup language. One of the first things that impressed me when first using Salesforce was the effective use of AJAX. In keeping with that tradition, VisualForce can be coded using an in-page IDE which provides suggestions and autofills tags as you type, a la Dreamweaver or Eclipse. Another huge feature, is the ability to upload code libraries in a file archive format. This means you could load and reference a Javascript files contained in a zip file using a nested folder structure. Where was this when I was trying to use TinyMCE to add an HTML WYSIWYG editor to an s-control a few months ago? No more cross site scripting errors now. One of the sessions demonstrated exactly that feature, in fact, though I didn’t catch the exact library used. It looks like some common libraries, like Dojo, will be included in VisualForce.

Unfortunately, as with Apex last year, I will have to wait an unreasonably long time to get my hands on the general release of VisualForce (mid-2008?) and the rest of the Winter ’08 features. Reducing this long lag between promise and delivery is why I think Dreamforce 2008 is being moved from September to November. Given the growth, I also predict the venue will be moved to AT&T Park.

On Peru, Perfection, and Procrastination

  Originally uploaded by santiago_eric

I started college as a photography student in the days of film and
darkrooms. A few changes in majors and years of working later, that
creative spark was rekindled when I first learned … wait for it … Photoshop 4.0
(on Windows 3.1, no less). Finally, you could edit prints without
emerging from hours spent in darkness; half-blind and woozy from the
chemical fumes.

Fast forward several more years. The price of professional-level
digital cameras has dropped within reach of the average consumer. Up to
this point, I had been still shooting film and converting it to digital
with a Nikon Coolscan 4000. Aside from the obvious disadvantages of
shooting and carrying film, particularly in the remote foreign regions
I like to visit, the post-production process was tiring. Scanning at
high resolutions is not quick. Correcting for dust and grain is
cumbersome. So, when that price-point dropped, I got on the digital
bandwagon without hesitation.

Back in late June/early July, I hiked the Salkanty Trek to Macchu Picchu armed with my new Nikon D-50 and the highly coveted Nikon VR 18-200 lens
(6 months on backorder). Wanting to pack light, I was glad that I
wasn’t bringing 20 rolls of film and that my 2gb SD cards weighed less
than a single roll. Being able to preview your shots is the greatest
thing ever. With the altitude and strong sun, my shots looked washed
out on my LCD screen. Using the histogram, I was able to judge that I
needed to underexpose most of my pictures. With film, I wouldn’t have
found that out till I got home. Another advantage is being able to
change ISO on the fly. Often, I would switch to 1600 to avoid using the
flash where it wasn’t desirable; churches, candids, etc.

I did notice two interesting behaviors that carried over from my
years with film. I rarely deleted a shot. With film this is impossible,
of course, but with digital it’s a common practice. I guess I was used
to my "happy accidents", shots that turn out much better than expected,
so that even with previewing, I let it be. On the reverse, I was very
stingy with my shots. Accustomed to traveling in places where
replacement film is not readily available, I made a habit of rationing
my supply. Sadly, I returned from Peru only using one and a half of my
three 2 GB cards (and I was shooting RAW).

So, it has been 2 months since my trip and where are the photos?
Well what was intended to speed up my "digital workflow" has been
impeded by a quest for perfection. A common flaw among technologists is
that they will often choose the most efficient way of doing something
over just getting it done. I’m certainly guilty of spending days
writing code for a task that could have taken hours to do manually. As
was the case here. Where friends seems to blithely send out links to photos of trips they’re still on,
I’m concerned with naming conventions, RAW conversions, and site
evaluations. After much self-imposed stress, I finally let it all go,
signed up for a Flickr pro account and dumped all my photos online. Geo-coding be damned. Ooooommmm.