Archive for January, 2007

links for 2007-01-06

Saturday, January 6th, 2007

Relationships

Friday, January 5th, 2007

If you’re writing custom code to access Salesforce.com data you interact with the API. This code can run inside Salesforce.com as S-Controls (Javascript and HTML pages), on your own webserver, or just about anywhere (like the Outlook add-in.)

If you want to query the data in Salesforce.com in your code (which you always want to do) you use Salesforce Object Query Language (SOQL). When people ask me about SOQL, I tell them “it’s like structured query language (SQL) without joins.” As of this week I’ll have to come up with a new description because SOQL is getting relationships in the new API.

We’ll now be able to query a table and get related data from another table. SQL figured out joins in 1934, so it’s great that SOQL is adding relationship support. But they’re not implementing SQL type joins. In SQL joins, your result set is flat–in SOQL it will be hierarchical. This means that if you’re used to doing SQL joins, somethings will be easier in SOQL, and other things will be harder. Sometimes a flat result set is just what you want. Other times it’s not.

I had a chance to play with the SOQL relationships a bit last year and this one feature alone will cut my API calls significantly. If I wanted data from one table and some related data I would often do it in one call to the main table and then individual calls to the related table for each row returned. So for 100 Opportunities that’s 101 API queries to find out all the Contact Roles on those Opps. I’ll now be able to do this in one query. Wow.

As the Salesforce Heretic says, Salesforce may see a big drop in API traffic when they implement these changes. They should remember that a drop in API traffic is probably a really good thing…

Big Salesforce update this week

Thursday, January 4th, 2007

Salesforce.com is once again making a major January release. And I mean major. There are giant changes happening at every level of the application, and it starts this weekend.

So what do you need to do? Hopefully nothing. Hopefully the release will go well and you’ll be using Salesforce.com the day after the upgrade. Last year at this time the upgrade caused a number of outages which caused Salesforce.com to invest $50M in making their systems more robust. I expect that those investments will pay off and we won’t notice any problems.

Here are the big changes, and I will only hit on the highest level because the PDF of all the changes is 200+ pages long:

  1. Better Process Enforcement
    1. We’ll be able to have approvals and workflow on new/changed records
    2. I can override standard button functionality–the Clone button can do whatever I want it to do. No more training folks, “Don’t ever create a new Contact where it says Create New Contact. I know, just trust me”
    3. We can do custom validation of fields on save and edit
  2. Changes to calendaring and to-do items
    1. A new slick calendar UI
    2. Pop up reminders for tasks and events
  3. Cool UI improvements
    1. Lots of AJAX stuff that you’ll love, especially around related list data display
    2. A customizable home page
    3. We’ll be able to embed custom code on the detail page–this is really cool, even though it doesn’t sound it
  4. Customization marches forward
    1. More things will be changeable
    2. More things can be put on the Appechange
  5. API enhancements
    1. The new API is killer. Just plain killer. Don’t get me started. OK, how about sorting query results? That alone is enough.
    2. New dataloader for the new API. Now it will be supported
    3. New AJAX toolkit and Eclipse plugin. Sorry, now I’m just a geek.
  6. UPDATE: Client Mangement
    1. I forgot the new functionality for dealing with individuals! Could be very interesting…

Oh man I have a lot of work to do to even think about incorporating these changes into my work. But I’m sure not complaining!

So if you’re a current Salesforce customer, hope for the best on the upgrade and dig around when your instance changes. Then hire me to help you take advantage of the great new stuff!

A new voice on listening

Thursday, January 4th, 2007

My good friend and colleague Jodie has started blogging. I have been prodding her for over a year now to share the amazing stuff she is doing with the world. And man she does not disappoint. I’ve been really enjoying reading her posts over the last few weeks.

Jodie has spent a lot of time studying with Robert Gass who is a guru of thoughtful leadership and organizational change. I’ve been hearing about his teachings from Jodie, but more amazingly I’ve been watching her in action in work for ONE/Northwest. I’ve been really impressed at how Jodie engages people and groups in such an authentic way, always making you know you’re getting her full attention.

My favorite posts so far have been the ones on listening. Oh, and the one on socks.

But back to listening. I’m an analyzer, so when I’m talking with you, I’m listening, but I’m really analyzing–taking what you’re saying and trying to make sense out of it. Trying to solve problems that you’re talking about. Trying to synthesize that and give you something back that will help you. But that’s not really listening.

Before we had our first child, my wife and I were lucky enough to take part in Becoming Parents–a research study at the University of Washington School of Nursing. The study asked a simple question: Can we lower the divorce rate for new parents by helping them strengthen their couple relationship before their first child arrives and makes everything harder?

In the classes we attended, Pam Jordan talked about techniques for problem solving. She told us about ways to work as a couple to come to a shared decision on a problem, maintaining respect in the process. But more importantly she said this–most times you won’t need to do problem solving if you just talk about the problem. Most times that’s all people really need is to talk about their problem and know that the other party is really hearing them.

And I’ve seen it in action in my relationship with my wife. Both of us will often think we have a problem we need to work out, but when we tell our story and the other is really listening, often the problem melts away. It’s pretty amazing. And it took a bit of practice (which continues, no doubt) to get there.

So I’m really digging Jodie’s posts on listening, and seeing how it applies to work as well as home. And while in-person time is best, I’m very pleased to receive bits of Jodie wisdom delivered right to me via the Internets in between the times I get to see her at ONE/Northwest function. Thanks Jodie for jumping into the blog-o-nets and adding your fresh voice!

Managing files in your CRM

Wednesday, January 3rd, 2007

A CRM is good at keeping track of all your people and organizations, as well as the communications you have with them. But one place where we’re still struggling is how to deal with files. Spreadsheets and documents are often important artifacts of the relationships we have with people and orgs.

But what to do with them? You can put them directly into your database, like Salesforce. But that’s usually pretty lame–don’t even try it with Salesforce. You can put them on some shared server space somewhere in a folder hierarchy. But that’s so 1997. No tags, no cross-referencing, no good web-based access to it.

There are a number of enterprise content management (ECM) systems out there that are pretty slick. Usually they cost about a bazillion dollars. But we are starting to see options that are web-based and affordable. Take a look at Koral.

Koral is a pretty slick web-based ECM that is much better than I remember Sharepoint being. It’s web-based, using tagging, full text indexing, etc. Pretty nice. And it has an integration with Salesforce, as well as a desktop app that makes uploading easy. It allows you to store your files online and cross-reference them to your constitutents. Pretty nice.

Ismail just wrote about ECM and where he thinks it needs to go, with some more info on Koral. We haven’t made the switch from our windows file structure, but we’re considering it. I’ll post with an update if it rises to a priority where we act on it.

A Proclamation on Integration

Wednesday, January 3rd, 2007

I’ve become aware of an effort in the works to let the nonprofit technology world know that having software that talks to other software is currently a big issue for most small nonprofits and activists. Most of us who use Salesforce.com chose the platform partly because it can integrate with other systems (you may be using What Counts for email blasting out of Salesforce, or using the Outlook Edition to look up people in Salesforce from your email). Integration can sure make life easier for all of us nonprofits.

It’s called the Integration Proclamation.
 
The stated goal of the effort is to generate some mass that can be put in front of technology vendors, funders, etc. If you support the idea, please add your name to the list to indicate you want a world where other technology that nonprofits use should integrate just as easily as Salesforce does.

links for 2007-01-03

Wednesday, January 3rd, 2007
  • “We, the undersigned progressive leaders, have together identified technology integration as a top priority infrastructure need in 2007. We urge progressive funders, vendors and technologists to support a collaborative effort dedicated to ensuring that o