<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Jon Stahl&#039;s Journal &#187; Email</title>
	<atom:link href="http://jstahl.org/archives/tag/email/feed/" rel="self" type="application/rss+xml" />
	<link>http://jstahl.org</link>
	<description>Politics, the environment, technology, activism. And stuff.</description>
	<lastBuildDate>Sun, 13 May 2012 00:37:34 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.2</generator>
		<item>
		<title>Love me some nonprofit spam</title>
		<link>http://jstahl.org/archives/2011/04/25/love-me-some-nonprofit-spam/</link>
		<comments>http://jstahl.org/archives/2011/04/25/love-me-some-nonprofit-spam/#comments</comments>
		<pubDate>Tue, 26 Apr 2011 00:04:05 +0000</pubDate>
		<dc:creator>Jon Stahl</dc:creator>
				<category><![CDATA[General]]></category>
		<category><![CDATA[Email]]></category>
		<category><![CDATA[nonprofits]]></category>
		<category><![CDATA[spam]]></category>

		<guid isPermaLink="false">http://jstahl.org/?p=2458</guid>
		<description><![CDATA[Following is the only-slightly-redacted text of an actual email exchange I just had with a well-intended but utterly clueless environmental activist trying to get the word out about his work.  The original message had about 400 people in the To/CC &#8230; <a href="http://jstahl.org/archives/2011/04/25/love-me-some-nonprofit-spam/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Following is the only-slightly-redacted text of an actual email exchange I just had with a well-intended but utterly clueless environmental activist trying to get the word out about his work.  The original message had about 400 people in the To/CC lines.</p>

<pre>From: XXXXXXXX
Sent: Friday, April 22, 2011 8:47 PM
To: Jon Stahl
Subject: RE: XXXXXXXXXXXXXXXXXX

Jon: I have taken you from the list.

Thanks for suggestions, but I like sending to diverse strangers, in the field
of XXXXXX, especially gov people who live in a protected (idea) world. There
is to much time wasted, "talking to the converted".

Actually, I get very few complaints.

Best,
XXXXX</pre>

<pre>&gt; XXXXXX-
&gt;
&gt; With all respect, we all really need you to stop putting your
&gt; entire address book in the To/CC line of your emails.
&gt;
&gt; It is creating a huge amount of unwanted email, generating a
&gt; "reply all" storm, and it's absolutely terrible online communications
&gt; etiquette.  Please consider starting an email list (e.g. at
&gt; <a href="http://npogroups.org/">http://npogroups.org</a> or Google Groups) or using a simple email
&gt; broadcasting service like <a href="http://mailchimp.com/">http://mailchimp.com</a>.
&gt;
&gt; Please remove me from your list, too.  Thanks.
&gt;
&gt; cheers,
&gt; jon</pre>

<p>Sometimes I wonder why I bother.</p>
]]></content:encoded>
			<wfw:commentRss>http://jstahl.org/archives/2011/04/25/love-me-some-nonprofit-spam/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Improving email broadcasting integration with Salesforce</title>
		<link>http://jstahl.org/archives/2010/05/18/improving-email-broadcasting-integration-with-salesforce/</link>
		<comments>http://jstahl.org/archives/2010/05/18/improving-email-broadcasting-integration-with-salesforce/#comments</comments>
		<pubDate>Tue, 18 May 2010 20:13:36 +0000</pubDate>
		<dc:creator>Jon Stahl</dc:creator>
				<category><![CDATA[General]]></category>
		<category><![CDATA[Email]]></category>
		<category><![CDATA[salesforce]]></category>

		<guid isPermaLink="false">http://jstahl.org/?p=2279</guid>
		<description><![CDATA[My colleagues at Groundwire and I spend a lot of time and energy thinking about integration.  How to connect various software stacks into seamless systems that solve complex problems for our clients.   It&#8217;s been really great to see the emergence &#8230; <a href="http://jstahl.org/archives/2010/05/18/improving-email-broadcasting-integration-with-salesforce/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>My colleagues at Groundwire and I spend a lot of time and energy thinking about integration.  How to connect various software stacks into seamless systems that solve complex problems for our clients.   It&#8217;s been really great to see the emergence of lots of great integrations enabled by the widespread adoption of web services APIs.  But lately, we&#8217;ve been realizing that, as in so many things, the details really matter.  How you design your integration is just as important as whether you integrate.</p>

<p>It&#8217;s in that spirit that my colleague Sam Knox has been doing some thinking about how email broadcasting platforms integrate with Salesforce.com and report their results back.  Short version: right now, most vendors&#8217; integrations are extremely inefficient with scarce Salesforce storage space.  He thinks they can do a lot better, and has written <a href="http://groundwire.org/blog/track-email-results-in-salesforce-better">an important blog post that describes (exactly) how</a>.   If you use Salesforce integrated email broadcasting services such as VerticalResponse, ExactTarget or MailChimp or are an email broadcasting vendor that designs your integration, <a href="http://groundwire.org/blog/track-email-results-in-salesforce-better">I urge you to give it a read and share your thoughts</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://jstahl.org/archives/2010/05/18/improving-email-broadcasting-integration-with-salesforce/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>MailChimp and Salesforce integration: not even close to ready for prime-time</title>
		<link>http://jstahl.org/archives/2009/12/16/mailchimp-and-salesforce-integration-not-even-close-to-ready-for-prime-time/</link>
		<comments>http://jstahl.org/archives/2009/12/16/mailchimp-and-salesforce-integration-not-even-close-to-ready-for-prime-time/#comments</comments>
		<pubDate>Thu, 17 Dec 2009 00:11:17 +0000</pubDate>
		<dc:creator>Jon Stahl</dc:creator>
				<category><![CDATA[General]]></category>
		<category><![CDATA[Email]]></category>
		<category><![CDATA[salesforce]]></category>

		<guid isPermaLink="false">http://jstahl.org/?p=2058</guid>
		<description><![CDATA[In the ongoing quest for solid, low-cost email broadcasting that has strong integration with Salesforce.com, I have had an eye on MailChimp, which offers a really slick, low-cost email blasting service that we had hoped could become a low-end replacement &#8230; <a href="http://jstahl.org/archives/2009/12/16/mailchimp-and-salesforce-integration-not-even-close-to-ready-for-prime-time/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>In the ongoing quest for solid, low-cost email broadcasting that has strong integration with Salesforce.com, I have had an eye on <a href="http://MailChimp.com">MailChimp</a>, which offers a really slick, low-cost email blasting service that we had hoped could become a low-end replacement for <a href="http://verticalresponse.com">Vertical Response</a>, which has <a href="http://nonprofitcrm.org/2008/04/03/understanding-vertical-response-and-salesforce/">somewhat limited capabilities in its Salesforce integration</a>.</p>

<p>MailChimp has a very slick email broadcasting system, and a very aggressive price point.  They claim to have a Salesforce integration, and so I logged in today and played around with a bit.</p>

<p>While much of the tool is really solid, the Salesforce integration is so rudimentary that it is actually completely, totally useless to us and our clients. <img src='http://jstahl.org/wp-includes/images/smilies/icon_sad.gif' alt=':-(' class='wp-smiley' /> </p>

<p>MailChimp can only import ALL of the contacts from your Salesforce account &#8212; no support for campaigns, reports, or getting any kind of targeted subset of your contacts.  That&#8217;s bad, but I had somewhat expected it.</p>

<p>What&#8217;s worse is that MailChimp can ONLY import the following fields from Salesforce:</p>

<ul>
    <li>first</li>
    <li>last</li>
    <li>email</li>
    <li>salesforce ID</li>
    <li>city/state/zip</li>
</ul>

<p>That&#8217;s it.  No custom fields. Zilch.  I confirmed this with their tech support, who were very helpful.</p>

<p>Unfortunately, a Salesforce integration this limited is essentially useless for any serious organizational use.  Very disappointing.</p>

<p>The only glimmer of hope is that the tech support person told me the Salesforce integration is scheduled for an overhaul in early 2010, but didn&#8217;t have any details on the substance.  So we will have to keep on waiting.</p>

<p>Bottom line: I had been hoping that we could recommend MailChimp as a solid, low-end, integrated-with-Salesforce email broadcasting solution.  But unfortunately the answer is, &#8220;Nope, not yet.&#8221;</p>

<div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow: hidden;"><!--[if gte mso 9]><xml> <w:worddocument> <w:view>Normal</w:view> <w:zoom>0</w:zoom> <w:trackmoves /> <w:trackformatting /> <w:punctuationkerning /> <w:validateagainstschemas /> <w:saveifxmlinvalid>false</w:saveifxmlinvalid> <w:ignoremixedcontent>false</w:ignoremixedcontent> <w:alwaysshowplaceholdertext>false</w:alwaysshowplaceholdertext> <w:donotpromoteqf /> <w:lidthemeother>EN-US</w:lidthemeother> <w:lidthemeasian>X-NONE</w:lidthemeasian> <w:lidthemecomplexscript>X-NONE</w:lidthemecomplexscript> <w:compatibility> <w:breakwrappedtables /> <w:snaptogridincell /> <w:wraptextwithpunct /> <w:useasianbreakrules /> <w:dontgrowautofit /> <w:splitpgbreakandparamark /> <w:dontvertaligncellwithsp /> <w:dontbreakconstrainedforcedtables /> <w:dontvertalignintxbx /> <w:word11kerningpairs /> <w:cachedcolbalance /> </w:compatibility> <w:donotoptimizeforbrowser /> <m:mathpr> <m:mathfont m:val="Cambria Math" /> <m:brkbin m:val="before" /> <m:brkbinsub m:val="&#45;-" /> <m:smallfrac m:val="off" /> <m:dispdef /> <m:lmargin m:val="0" /> <m:rmargin m:val="0" /> <m:defjc m:val="centerGroup" /> <m:wrapindent m:val="1440" /> <m:intlim m:val="subSup" /> <m:narylim m:val="undOvr" /> </m:mathpr></w:worddocument> </xml>< ![endif]--><!--[if gte mso 9]><xml> <w:latentstyles DefLockedState="false" DefUnhideWhenUsed="true"   DefSemiHidden="true" DefQFormat="false" DefPriority="99"   LatentStyleCount="267"> <w:lsdexception Locked="false" Priority="0" SemiHidden="false"    UnhideWhenUsed="false" QFormat="true" Name="Normal" /> <w:lsdexception Locked="false" Priority="9" SemiHidden="false"    UnhideWhenUsed="false" QFormat="true" Name="heading 1" /> <w:lsdexception Locked="false" Priority="9" QFormat="true" Name="heading 2" /> <w:lsdexception Locked="false" Priority="9" QFormat="true" Name="heading 3" /> <w:lsdexception Locked="false" Priority="9" QFormat="true" Name="heading 4" /> <w:lsdexception Locked="false" Priority="9" QFormat="true" Name="heading 5" /> <w:lsdexception Locked="false" Priority="9" QFormat="true" Name="heading 6" /> <w:lsdexception Locked="false" Priority="9" QFormat="true" Name="heading 7" /> <w:lsdexception Locked="false" Priority="9" QFormat="true" Name="heading 8" /> <w:lsdexception Locked="false" Priority="9" QFormat="true" Name="heading 9" /> <w:lsdexception Locked="false" Priority="39" Name="toc 1" /> <w:lsdexception Locked="false" Priority="39" Name="toc 2" /> <w:lsdexception Locked="false" Priority="39" Name="toc 3" /> <w:lsdexception Locked="false" Priority="39" Name="toc 4" /> <w:lsdexception Locked="false" Priority="39" Name="toc 5" /> <w:lsdexception Locked="false" Priority="39" Name="toc 6" /> <w:lsdexception Locked="false" Priority="39" Name="toc 7" /> <w:lsdexception Locked="false" Priority="39" Name="toc 8" /> <w:lsdexception Locked="false" Priority="39" Name="toc 9" /> <w:lsdexception Locked="false" Priority="35" QFormat="true" Name="caption" /> <w:lsdexception Locked="false" Priority="10" SemiHidden="false"    UnhideWhenUsed="false" QFormat="true" Name="Title" /> <w:lsdexception Locked="false" Priority="1" Name="Default Paragraph Font" /> <w:lsdexception Locked="false" Priority="11" SemiHidden="false"    UnhideWhenUsed="false" QFormat="true" Name="Subtitle" /> <w:lsdexception Locked="false" Priority="22" SemiHidden="false"    UnhideWhenUsed="false" QFormat="true" Name="Strong" /> <w:lsdexception Locked="false" Priority="20" SemiHidden="false"    UnhideWhenUsed="false" QFormat="true" Name="Emphasis" /> <w:lsdexception Locked="false" Priority="59" SemiHidden="false"    UnhideWhenUsed="false" Name="Table Grid" /> <w:lsdexception Locked="false" UnhideWhenUsed="false" Name="Placeholder Text" /> <w:lsdexception Locked="false" Priority="1" SemiHidden="false"    UnhideWhenUsed="false" QFormat="true" Name="No Spacing" /> <w:lsdexception Locked="false" Priority="60" SemiHidden="false"    UnhideWhenUsed="false" Name="Light Shading" /> <w:lsdexception Locked="false" Priority="61" SemiHidden="false"    UnhideWhenUsed="false" Name="Light List" /> <w:lsdexception Locked="false" Priority="62" SemiHidden="false"    UnhideWhenUsed="false" Name="Light Grid" /> <w:lsdexception Locked="false" Priority="63" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Shading 1" /> <w:lsdexception Locked="false" Priority="64" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Shading 2" /> <w:lsdexception Locked="false" Priority="65" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium List 1" /> <w:lsdexception Locked="false" Priority="66" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium List 2" /> <w:lsdexception Locked="false" Priority="67" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Grid 1" /> <w:lsdexception Locked="false" Priority="68" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Grid 2" /> <w:lsdexception Locked="false" Priority="69" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Grid 3" /> <w:lsdexception Locked="false" Priority="70" SemiHidden="false"    UnhideWhenUsed="false" Name="Dark List" /> <w:lsdexception Locked="false" Priority="71" SemiHidden="false"    UnhideWhenUsed="false" Name="Colorful Shading" /> <w:lsdexception Locked="false" Priority="72" SemiHidden="false"    UnhideWhenUsed="false" Name="Colorful List" /> <w:lsdexception Locked="false" Priority="73" SemiHidden="false"    UnhideWhenUsed="false" Name="Colorful Grid" /> <w:lsdexception Locked="false" Priority="60" SemiHidden="false"    UnhideWhenUsed="false" Name="Light Shading Accent 1" /> <w:lsdexception Locked="false" Priority="61" SemiHidden="false"    UnhideWhenUsed="false" Name="Light List Accent 1" /> <w:lsdexception Locked="false" Priority="62" SemiHidden="false"    UnhideWhenUsed="false" Name="Light Grid Accent 1" /> <w:lsdexception Locked="false" Priority="63" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Shading 1 Accent 1" /> <w:lsdexception Locked="false" Priority="64" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Shading 2 Accent 1" /> <w:lsdexception Locked="false" Priority="65" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium List 1 Accent 1" /> <w:lsdexception Locked="false" UnhideWhenUsed="false" Name="Revision" /> <w:lsdexception Locked="false" Priority="34" SemiHidden="false"    UnhideWhenUsed="false" QFormat="true" Name="List Paragraph" /> <w:lsdexception Locked="false" Priority="29" SemiHidden="false"    UnhideWhenUsed="false" QFormat="true" Name="Quote" /> <w:lsdexception Locked="false" Priority="30" SemiHidden="false"    UnhideWhenUsed="false" QFormat="true" Name="Intense Quote" /> <w:lsdexception Locked="false" Priority="66" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium List 2 Accent 1" /> <w:lsdexception Locked="false" Priority="67" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Grid 1 Accent 1" /> <w:lsdexception Locked="false" Priority="68" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Grid 2 Accent 1" /> <w:lsdexception Locked="false" Priority="69" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Grid 3 Accent 1" /> <w:lsdexception Locked="false" Priority="70" SemiHidden="false"    UnhideWhenUsed="false" Name="Dark List Accent 1" /> <w:lsdexception Locked="false" Priority="71" SemiHidden="false"    UnhideWhenUsed="false" Name="Colorful Shading Accent 1" /> <w:lsdexception Locked="false" Priority="72" SemiHidden="false"    UnhideWhenUsed="false" Name="Colorful List Accent 1" /> <w:lsdexception Locked="false" Priority="73" SemiHidden="false"    UnhideWhenUsed="false" Name="Colorful Grid Accent 1" /> <w:lsdexception Locked="false" Priority="60" SemiHidden="false"    UnhideWhenUsed="false" Name="Light Shading Accent 2" /> <w:lsdexception Locked="false" Priority="61" SemiHidden="false"    UnhideWhenUsed="false" Name="Light List Accent 2" /> <w:lsdexception Locked="false" Priority="62" SemiHidden="false"    UnhideWhenUsed="false" Name="Light Grid Accent 2" /> <w:lsdexception Locked="false" Priority="63" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Shading 1 Accent 2" /> <w:lsdexception Locked="false" Priority="64" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Shading 2 Accent 2" /> <w:lsdexception Locked="false" Priority="65" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium List 1 Accent 2" /> <w:lsdexception Locked="false" Priority="66" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium List 2 Accent 2" /> <w:lsdexception Locked="false" Priority="67" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Grid 1 Accent 2" /> <w:lsdexception Locked="false" Priority="68" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Grid 2 Accent 2" /> <w:lsdexception Locked="false" Priority="69" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Grid 3 Accent 2" /> <w:lsdexception Locked="false" Priority="70" SemiHidden="false"    UnhideWhenUsed="false" Name="Dark List Accent 2" /> <w:lsdexception Locked="false" Priority="71" SemiHidden="false"    UnhideWhenUsed="false" Name="Colorful Shading Accent 2" /> <w:lsdexception Locked="false" Priority="72" SemiHidden="false"    UnhideWhenUsed="false" Name="Colorful List Accent 2" /> <w:lsdexception Locked="false" Priority="73" SemiHidden="false"    UnhideWhenUsed="false" Name="Colorful Grid Accent 2" /> <w:lsdexception Locked="false" Priority="60" SemiHidden="false"    UnhideWhenUsed="false" Name="Light Shading Accent 3" /> <w:lsdexception Locked="false" Priority="61" SemiHidden="false"    UnhideWhenUsed="false" Name="Light List Accent 3" /> <w:lsdexception Locked="false" Priority="62" SemiHidden="false"    UnhideWhenUsed="false" Name="Light Grid Accent 3" /> <w:lsdexception Locked="false" Priority="63" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Shading 1 Accent 3" /> <w:lsdexception Locked="false" Priority="64" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Shading 2 Accent 3" /> <w:lsdexception Locked="false" Priority="65" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium List 1 Accent 3" /> <w:lsdexception Locked="false" Priority="66" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium List 2 Accent 3" /> <w:lsdexception Locked="false" Priority="67" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Grid 1 Accent 3" /> <w:lsdexception Locked="false" Priority="68" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Grid 2 Accent 3" /> <w:lsdexception Locked="false" Priority="69" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Grid 3 Accent 3" /> <w:lsdexception Locked="false" Priority="70" SemiHidden="false"    UnhideWhenUsed="false" Name="Dark List Accent 3" /> <w:lsdexception Locked="false" Priority="71" SemiHidden="false"    UnhideWhenUsed="false" Name="Colorful Shading Accent 3" /> <w:lsdexception Locked="false" Priority="72" SemiHidden="false"    UnhideWhenUsed="false" Name="Colorful List Accent 3" /> <w:lsdexception Locked="false" Priority="73" SemiHidden="false"    UnhideWhenUsed="false" Name="Colorful Grid Accent 3" /> <w:lsdexception Locked="false" Priority="60" SemiHidden="false"    UnhideWhenUsed="false" Name="Light Shading Accent 4" /> <w:lsdexception Locked="false" Priority="61" SemiHidden="false"    UnhideWhenUsed="false" Name="Light List Accent 4" /> <w:lsdexception Locked="false" Priority="62" SemiHidden="false"    UnhideWhenUsed="false" Name="Light Grid Accent 4" /> <w:lsdexception Locked="false" Priority="63" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Shading 1 Accent 4" /> <w:lsdexception Locked="false" Priority="64" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Shading 2 Accent 4" /> <w:lsdexception Locked="false" Priority="65" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium List 1 Accent 4" /> <w:lsdexception Locked="false" Priority="66" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium List 2 Accent 4" /> <w:lsdexception Locked="false" Priority="67" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Grid 1 Accent 4" /> <w:lsdexception Locked="false" Priority="68" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Grid 2 Accent 4" /> <w:lsdexception Locked="false" Priority="69" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Grid 3 Accent 4" /> <w:lsdexception Locked="false" Priority="70" SemiHidden="false"    UnhideWhenUsed="false" Name="Dark List Accent 4" /> <w:lsdexception Locked="false" Priority="71" SemiHidden="false"    UnhideWhenUsed="false" Name="Colorful Shading Accent 4" /> <w:lsdexception Locked="false" Priority="72" SemiHidden="false"    UnhideWhenUsed="false" Name="Colorful List Accent 4" /> <w:lsdexception Locked="false" Priority="73" SemiHidden="false"    UnhideWhenUsed="false" Name="Colorful Grid Accent 4" /> <w:lsdexception Locked="false" Priority="60" SemiHidden="false"    UnhideWhenUsed="false" Name="Light Shading Accent 5" /> <w:lsdexception Locked="false" Priority="61" SemiHidden="false"    UnhideWhenUsed="false" Name="Light List Accent 5" /> <w:lsdexception Locked="false" Priority="62" SemiHidden="false"    UnhideWhenUsed="false" Name="Light Grid Accent 5" /> <w:lsdexception Locked="false" Priority="63" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Shading 1 Accent 5" /> <w:lsdexception Locked="false" Priority="64" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Shading 2 Accent 5" /> <w:lsdexception Locked="false" Priority="65" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium List 1 Accent 5" /> <w:lsdexception Locked="false" Priority="66" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium List 2 Accent 5" /> <w:lsdexception Locked="false" Priority="67" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Grid 1 Accent 5" /> <w:lsdexception Locked="false" Priority="68" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Grid 2 Accent 5" /> <w:lsdexception Locked="false" Priority="69" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Grid 3 Accent 5" /> <w:lsdexception Locked="false" Priority="70" SemiHidden="false"    UnhideWhenUsed="false" Name="Dark List Accent 5" /> <w:lsdexception Locked="false" Priority="71" SemiHidden="false"    UnhideWhenUsed="false" Name="Colorful Shading Accent 5" /> <w:lsdexception Locked="false" Priority="72" SemiHidden="false"    UnhideWhenUsed="false" Name="Colorful List Accent 5" /> <w:lsdexception Locked="false" Priority="73" SemiHidden="false"    UnhideWhenUsed="false" Name="Colorful Grid Accent 5" /> <w:lsdexception Locked="false" Priority="60" SemiHidden="false"    UnhideWhenUsed="false" Name="Light Shading Accent 6" /> <w:lsdexception Locked="false" Priority="61" SemiHidden="false"    UnhideWhenUsed="false" Name="Light List Accent 6" /> <w:lsdexception Locked="false" Priority="62" SemiHidden="false"    UnhideWhenUsed="false" Name="Light Grid Accent 6" /> <w:lsdexception Locked="false" Priority="63" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Shading 1 Accent 6" /> <w:lsdexception Locked="false" Priority="64" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Shading 2 Accent 6" /> <w:lsdexception Locked="false" Priority="65" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium List 1 Accent 6" /> <w:lsdexception Locked="false" Priority="66" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium List 2 Accent 6" /> <w:lsdexception Locked="false" Priority="67" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Grid 1 Accent 6" /> <w:lsdexception Locked="false" Priority="68" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Grid 2 Accent 6" /> <w:lsdexception Locked="false" Priority="69" SemiHidden="false"    UnhideWhenUsed="false" Name="Medium Grid 3 Accent 6" /> <w:lsdexception Locked="false" Priority="70" SemiHidden="false"    UnhideWhenUsed="false" Name="Dark List Accent 6" /> <w:lsdexception Locked="false" Priority="71" SemiHidden="false"    UnhideWhenUsed="false" Name="Colorful Shading Accent 6" /> <w:lsdexception Locked="false" Priority="72" SemiHidden="false"    UnhideWhenUsed="false" Name="Colorful List Accent 6" /> <w:lsdexception Locked="false" Priority="73" SemiHidden="false"    UnhideWhenUsed="false" Name="Colorful Grid Accent 6" /> <w:lsdexception Locked="false" Priority="19" SemiHidden="false"    UnhideWhenUsed="false" QFormat="true" Name="Subtle Emphasis" /> <w:lsdexception Locked="false" Priority="21" SemiHidden="false"    UnhideWhenUsed="false" QFormat="true" Name="Intense Emphasis" /> <w:lsdexception Locked="false" Priority="31" SemiHidden="false"    UnhideWhenUsed="false" QFormat="true" Name="Subtle Reference" /> <w:lsdexception Locked="false" Priority="32" SemiHidden="false"    UnhideWhenUsed="false" QFormat="true" Name="Intense Reference" /> <w:lsdexception Locked="false" Priority="33" SemiHidden="false"    UnhideWhenUsed="false" QFormat="true" Name="Book Title" /> <w:lsdexception Locked="false" Priority="37" Name="Bibliography" /> <w:lsdexception Locked="false" Priority="39" QFormat="true" Name="TOC Heading" /> </w:latentstyles> </xml>< ![endif]--><!--  /* Font Definitions */  @font-face  {font-family:"Cambria Math";    panose-1:2 4 5 3 5 4 6 3 2 4;   mso-font-charset:0;     mso-generic-font-family:roman;  mso-font-pitch:variable;    mso-font-signature:-1610611985 1107304683 0 0 415 0;} @font-face    {font-family:Calibri;   panose-1:2 15 5 2 2 2 4 3 2 4;  mso-font-alt:"Arial Rounded MT Bold";   mso-font-charset:0;     mso-generic-font-family:swiss;  mso-font-pitch:variable;    mso-font-signature:-520092929 1073786111 9 0 415 0;} @font-face     {font-family:Consolas;  panose-1:2 11 6 9 2 2 4 3 2 4;  mso-font-charset:0;     mso-generic-font-family:modern;     mso-font-pitch:fixed;   mso-font-signature:-520092929 1073806591 9 0 415 0;}  /* Style Definitions */  p.MsoNormal, li.MsoNormal, div.MsoNormal     {mso-style-unhide:no;   mso-style-qformat:yes;  mso-style-parent:"";    margin:0in;     margin-bottom:.0001pt;  mso-pagination:widow-orphan;    font-size:11.0pt;   font-family:"Calibri","sans-serif";     mso-ascii-font-family:Calibri;  mso-ascii-theme-font:minor-latin;   mso-fareast-font-family:Calibri;    mso-fareast-theme-font:minor-latin;     mso-hansi-font-family:Calibri;  mso-hansi-theme-font:minor-latin;   mso-bidi-font-family:"Times New Roman";     mso-bidi-theme-font:minor-bidi;} a:link, span.MsoHyperlink  {mso-style-priority:99;     color:blue;     mso-themecolor:hyperlink;   text-decoration:underline;  text-underline:single;} a:visited, span.MsoHyperlinkFollowed    {mso-style-noshow:yes;  mso-style-priority:99;  color:purple;   mso-themecolor:followedhyperlink;   text-decoration:underline;  text-underline:single;} p.MsoPlainText, li.MsoPlainText, div.MsoPlainText   {mso-style-noshow:yes;  mso-style-priority:99;  mso-style-link:"Plain Text Char";   margin:0in;     margin-bottom:.0001pt;  mso-pagination:widow-orphan;    font-size:10.5pt;   font-family:Consolas;   mso-fareast-font-family:Calibri;    mso-fareast-theme-font:minor-latin;     mso-bidi-font-family:"Times New Roman";     mso-bidi-theme-font:minor-bidi;} span.PlainTextChar     {mso-style-name:"Plain Text Char";  mso-style-noshow:yes;   mso-style-priority:99;  mso-style-unhide:no;    mso-style-locked:yes;   mso-style-link:"Plain Text";    mso-ansi-font-size:10.5pt;  mso-bidi-font-size:10.5pt;  font-family:Consolas;   mso-ascii-font-family:Consolas;     mso-hansi-font-family:Consolas;} .MsoChpDefault     {mso-style-type:export-only;    mso-default-props:yes;  mso-ascii-font-family:Calibri;  mso-ascii-theme-font:minor-latin;   mso-fareast-font-family:Calibri;    mso-fareast-theme-font:minor-latin;     mso-hansi-font-family:Calibri;  mso-hansi-theme-font:minor-latin;   mso-bidi-font-family:"Times New Roman";     mso-bidi-theme-font:minor-bidi;} @page Section1     {size:8.5in 11.0in;     margin:1.0in 1.0in 1.0in 1.0in;     mso-header-margin:.5in;     mso-footer-margin:.5in;     mso-paper-source:0;} div.Section1   {page:Section1;} --><!--[if gte mso 10]> <mce:style>< !   /* Style Definitions */  table.MsoNormalTable  {mso-style-name:"Table Normal";     mso-tstyle-rowband-size:0;  mso-tstyle-colband-size:0;  mso-style-noshow:yes;   mso-style-priority:99;  mso-style-qformat:yes;  mso-style-parent:"";    mso-padding-alt:0in 5.4pt 0in 5.4pt;    mso-para-margin:0in;    mso-para-margin-bottom:.0001pt;     mso-pagination:widow-orphan;    font-size:11.0pt;   font-family:"Calibri","sans-serif";     mso-ascii-font-family:Calibri;  mso-ascii-theme-font:minor-latin;   mso-fareast-font-family:"Times New Roman";  mso-fareast-theme-font:minor-fareast;   mso-hansi-font-family:Calibri;  mso-hansi-theme-font:minor-latin;   mso-bidi-font-family:"Times New Roman";     mso-bidi-theme-font:minor-bidi;} --> <!--[endif]-->
<p class="MsoPlainText">I have had an eye on <a href="http://mailchimp.com/">http://MailChimp.com</a>, which offers a really slick, low-cost email blasting service that we had hoped could become a low-end replacement for Vertical Response.</p>
<p class="MsoPlainText"></p>
<p class="MsoPlainText">They claim to have a Salesforce integration, and so at Drew&#8217;s suggestion, I logged in today and played around with a bit today.<span> </span></p>
<p class="MsoPlainText"></p>
<p class="MsoPlainText">While much of the tool is really slick, the Salesforce integration is so rudimentary that it is actually completely, totally useless to us and our clients. <img src='http://jstahl.org/wp-includes/images/smilies/icon_sad.gif' alt=':-(' class='wp-smiley' /> </p>
<p class="MsoPlainText"></p>
<p class="MsoPlainText">The details&#8230;</p>
<p class="MsoPlainText"></p>
<p class="MsoPlainText">MailChimp can only import ALL of the contacts from your Salesforce account &#8212; no support for campaigns, reports, or getting any kind of targeted subset of your contacts.<span> </span>That&#8217;s bad, but I had somewhat expected it.</p>
<p class="MsoPlainText"></p>
<p class="MsoPlainText">What&#8217;s worse is that MailChimp can ONLY import the following fields from Salesforce:</p>
<p class="MsoPlainText"><span> </span>- first</p>
<p class="MsoPlainText"><span> </span>- last</p>
<p class="MsoPlainText"><span> </span>- email</p>
<p class="MsoPlainText"><span> </span>- salesforce ID</p>
<p class="MsoPlainText"><span> </span>- city/state/zip</p>
<p class="MsoPlainText"></p>
<p class="MsoPlainText">That&#8217;s it.<span> </span>No custom fields. Zilch.<span> </span>I confirmed this with their tech support.</p>
<p class="MsoPlainText"></p>
<p class="MsoPlainText">This renders the Salesforce integration completely and utterly useless.<span> </span>Very disappointing.</p>
<p class="MsoPlainText"></p>
<p class="MsoPlainText">The only glimmer of hope is that the tech support person told me the Salesforce integration is scheduled for an overhaul in early 2010, but didn&#8217;t have any details on the substance.<span> </span>So we will have to keep on waiting.</p>
<p class="MsoPlainText"></p>
<p class="MsoPlainText">Bottom line: if you were hoping we could recommend MailChimp as a solid, low-end, integrated-with-Salesforce alternative to Vertical Response, then I&#8217;m sorry to report that the answer is &#8220;Nope, not at this time.&#8221;</p>

</mce:style></div>
]]></content:encoded>
			<wfw:commentRss>http://jstahl.org/archives/2009/12/16/mailchimp-and-salesforce-integration-not-even-close-to-ready-for-prime-time/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>A Few Thoughts About Idealware&#8217;s &#8220;A Good Email Discussion List Tools&#8221;</title>
		<link>http://jstahl.org/archives/2008/12/23/a-few-thoughts-about-idealwares-a-good-email-discussion-list-tools/</link>
		<comments>http://jstahl.org/archives/2008/12/23/a-few-thoughts-about-idealwares-a-good-email-discussion-list-tools/#comments</comments>
		<pubDate>Tue, 23 Dec 2008 21:30:44 +0000</pubDate>
		<dc:creator>Jon Stahl</dc:creator>
				<category><![CDATA[General]]></category>
		<category><![CDATA[Email]]></category>
		<category><![CDATA[idealware]]></category>
		<category><![CDATA[NPTech]]></category>
		<category><![CDATA[Plone]]></category>

		<guid isPermaLink="false">http://blogs.onenw.org/jon/?p=1647</guid>
		<description><![CDATA[The good folks at Idealware have added another nice article to their &#8220;A Few Good Tools&#8230;&#8221; series, this one titled &#8220;A Few Good Email List Discussion Tools.&#8221; While the article provides a pretty good overview of the space, it leaves &#8230; <a href="http://jstahl.org/archives/2008/12/23/a-few-thoughts-about-idealwares-a-good-email-discussion-list-tools/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>The good folks at Idealware have added another nice article to their &#8220;A Few Good Tools&#8230;&#8221; series, this one titled &#8220;<a href="http://www.idealware.org/articles/fgt_email_discussion_lists.php">A Few Good Email List Discussion Tools</a>.&#8221;</p>

<p>While the article provides a pretty good overview of the space, it leaves out a few supporting details that I think are worth noting:</p>

<ul>
    <li>Idealware&#8217;s article mentions that many CMS platforms have some email discussion list support, including Democracy In Action, Convio, Kintera, Drupal and Joomla, but neglects to mention that Plone also has such features, through its add-on product <a href="http://www.openplans.org/projects/listen/project-home">Listen</a>.</li>
    <li>Idealware&#8217;s article mentions the great folks at Electric Embers, DGroups and OnlineGroups as nonprofit-oriented discussion list providers, but neglects to also mention the team at <a href="http://topp.openplans.org/">The Open Planning Project</a>, whose <a href="http://openplans.org">OpenPlans</a> service offers a very powerful, user-friendly web-and-email discussion list experience.</li>
    <li>Idealware&#8217;s article gives rather short shrift to several powerful open-source email discussion list solutions that enable more sophisticated groups to take control of their own discussion list hosting. <a href="http://www.sympa.org">Sympa</a> and <a href="http://www.gnu.org/software/mailman/index.html">Mailman</a> are probably the two leaders.  Idealware dismisses Mailman in passing, saying it and (unnamed) similar tools &#8220;aren’t as easy to use as many others, and don’t include features like archives or online groups. They can also make it difficult to view or export a file of the list of subscribers.&#8221;While it&#8217;s true that Mailman and Sympa don&#8217;t have the polished usability of some commercial discussion tools, they <em>do</em> include web-based archives and offer simple subscriber views and one-click export of the subscriber list.  Some hosting providers may disable archiving, but that&#8217;s not the software&#8217;s fault.

The host-it-yourself path is not for everyone, since it does require some technical expertise to configure and maintain, but that&#8217;s also true of many of the solutions Idealware does mention.</li>
</ul>

<p>Overall, good article, worth a read.   I hope Idealware will consider incorporating some of these additional details to round it out a bit more.</p>
]]></content:encoded>
			<wfw:commentRss>http://jstahl.org/archives/2008/12/23/a-few-thoughts-about-idealwares-a-good-email-discussion-list-tools/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Plain-text ho!</title>
		<link>http://jstahl.org/archives/2007/08/30/plain-text-ho/</link>
		<comments>http://jstahl.org/archives/2007/08/30/plain-text-ho/#comments</comments>
		<pubDate>Fri, 31 Aug 2007 05:20:05 +0000</pubDate>
		<dc:creator>Jon Stahl</dc:creator>
				<category><![CDATA[Email]]></category>

		<guid isPermaLink="false">http://blogs.onenw.org/jon/archives/2007/08/30/plain-text-ho/</guid>
		<description><![CDATA[I&#8217;m tired of writing HTML formatted email.&#160; I&#8217;m going to make a clean break to plain-text, and thanks to Outlook-QuoteFix, I&#8217;m going to be able to ensure that I can properly format my plain-text replies.&#160; This will be an experiment &#8230; <a href="http://jstahl.org/archives/2007/08/30/plain-text-ho/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>I&#8217;m tired of writing HTML formatted email.&nbsp; I&#8217;m going to make a clean break to plain-text, and thanks to <a href="http://home.in.tum.de/%7Ejain/software/outlook-quotefix/">Outlook-QuoteFix</a>, I&#8217;m going to be able to ensure that I can properly format my plain-text replies.&nbsp; <br /><br />This will be an experiment to see what it&#8217;s like to break the HTML email habit.&nbsp; Wish me luck.<br /></p>
]]></content:encoded>
			<wfw:commentRss>http://jstahl.org/archives/2007/08/30/plain-text-ho/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Some Observations on Nonprofit Software</title>
		<link>http://jstahl.org/archives/2006/07/19/some-observations-on-nonprofit-software/</link>
		<comments>http://jstahl.org/archives/2006/07/19/some-observations-on-nonprofit-software/#comments</comments>
		<pubDate>Thu, 20 Jul 2006 03:34:31 +0000</pubDate>
		<dc:creator>Jon Stahl</dc:creator>
				<category><![CDATA[Databases]]></category>
		<category><![CDATA[Email]]></category>
		<category><![CDATA[groundwire]]></category>
		<category><![CDATA[NPTech]]></category>
		<category><![CDATA[Plone]]></category>
		<category><![CDATA[Web]]></category>

		<guid isPermaLink="false">http://blogs.onenw.org/jon/archives/2006/07/19/some-observations-on-nonprofit-software/</guid>
		<description><![CDATA[My colleague Steve Andersen recently penned a short article entitled &#8220;Some Observations on Nonprofit Software&#8221; that lays out a few of the core assumptions we hold about how software tools for the nonprofit sector can and should play nice together. &#8230; <a href="http://jstahl.org/archives/2006/07/19/some-observations-on-nonprofit-software/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>My colleague Steve Andersen recently penned a short article entitled &#8220;<a href="http://www.onenw.org/toolkit/some-observations-on-nonprofit-software/">Some Observations on Nonprofit Software</a>&#8221; that lays out a few of the core assumptions we hold about how software tools for the nonprofit sector can and should play nice together.</p>

<p>The core of the argument goes like this:</p>

<ul>
    <li>Missions are serviced only by engaging constituents to action</li>
    <li>Engagement activities aren&#8217;t unique to nonprofits, so the tools aren&#8217;t either</li>
    <li>The best way to build software for nonprofits is to find tools that successfully addresses most of your needs and then add the nonprofit-specific functionality</li>
    <li>Software targeted at a larger market than nonprofits will improve faster than software specifically for the nonprofit market</li>
    <li>Software that has open Application Programming Interfaces makes the &#8220;build-on-top&#8221; model work</li>
    <li>There is a market for nonprofit-specific software that serves a defined function and is accessible via robust APIs</li>
</ul>

<p><a href="http://www.onenw.org/toolkit/some-observations-on-nonprofit-software/">Go read the whole thing</a>.</p>

<p>(The article supports comments, so you can leave them there if you like)</p>
]]></content:encoded>
			<wfw:commentRss>http://jstahl.org/archives/2006/07/19/some-observations-on-nonprofit-software/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Why Email Sucks As A Collaboration Tool</title>
		<link>http://jstahl.org/archives/2006/05/20/why-email-sucks-as-a-collaboration-tool/</link>
		<comments>http://jstahl.org/archives/2006/05/20/why-email-sucks-as-a-collaboration-tool/#comments</comments>
		<pubDate>Sat, 20 May 2006 20:25:46 +0000</pubDate>
		<dc:creator>Jon Stahl</dc:creator>
				<category><![CDATA[Collaboration]]></category>
		<category><![CDATA[Email]]></category>
		<category><![CDATA[Web]]></category>

		<guid isPermaLink="false">http://blogs.onenw.org/jon/archives/2006/05/20/why-email-sucks-as-a-collaboration-tool/</guid>
		<description><![CDATA[Seth Gottlieb pulls together a short rant and then a large dose of common sense about why email is an ineffective collaboration tool, and what can be done instead. UPDATE: changed &#8220;effective&#8221; to &#8220;ineffective&#8221; thanks to eagle-eyed reader T.B.]]></description>
			<content:encoded><![CDATA[<p>Seth Gottlieb <a href="http://contenthere.blogspot.com/2006/05/email-and-content-management.html">pulls together a short rant and then a large dose of common sense</a> about why email is an ineffective collaboration tool, and what can be done instead.</p>

<p>UPDATE: changed &#8220;effective&#8221; to &#8220;ineffective&#8221; thanks to eagle-eyed reader T.B.</p>
]]></content:encoded>
			<wfw:commentRss>http://jstahl.org/archives/2006/05/20/why-email-sucks-as-a-collaboration-tool/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>When&#8230;</title>
		<link>http://jstahl.org/archives/2006/03/20/when/</link>
		<comments>http://jstahl.org/archives/2006/03/20/when/#comments</comments>
		<pubDate>Tue, 21 Mar 2006 03:24:07 +0000</pubDate>
		<dc:creator>Jon Stahl</dc:creator>
				<category><![CDATA[Email]]></category>
		<category><![CDATA[NPTech]]></category>
		<category><![CDATA[online organizing]]></category>

		<guid isPermaLink="false">http://blogs.onenw.org/jon/archives/2006/03/20/when/</guid>
		<description><![CDATA[&#8230; will well-meaning activists figure out that a half-megabyte PDF file is not the most effective format for an emailed event invitation? I&#8217;m just saying. Now for the constructive part: it&#8217;s better to send a highly compressed JPEG in the &#8230; <a href="http://jstahl.org/archives/2006/03/20/when/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>&#8230; will well-meaning activists figure out that a half-megabyte PDF file is not the most effective format for an emailed event invitation?</p>

<p>I&#8217;m just saying.</p>

<p>Now for the constructive part: it&#8217;s better to send a highly compressed JPEG in the body of the message.Â  And even better to send legible text and/or HTML.</p>
]]></content:encoded>
			<wfw:commentRss>http://jstahl.org/archives/2006/03/20/when/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Single Stacks, or Network-Centric Web Services?</title>
		<link>http://jstahl.org/archives/2006/02/27/single-stacks-or-network-centric-web-services/</link>
		<comments>http://jstahl.org/archives/2006/02/27/single-stacks-or-network-centric-web-services/#comments</comments>
		<pubDate>Tue, 28 Feb 2006 01:24:24 +0000</pubDate>
		<dc:creator>Jon Stahl</dc:creator>
				<category><![CDATA[Collaboration]]></category>
		<category><![CDATA[Computer infrastructure]]></category>
		<category><![CDATA[Databases]]></category>
		<category><![CDATA[Email]]></category>
		<category><![CDATA[groundwire]]></category>
		<category><![CDATA[Plone]]></category>
		<category><![CDATA[Web]]></category>

		<guid isPermaLink="false">http://blogs.onenw.org/jon/archives/2006/02/27/single-stacks-or-network-centric-web-services/</guid>
		<description><![CDATA[Reading Zack Rosen&#8217;s assertion that building applications inside Drupal-the-framework makes more sense than loose integration of complementary applications triggered some thinking that&#8217;s been rattling around in my head for a while. I think that the next few years are going &#8230; <a href="http://jstahl.org/archives/2006/02/27/single-stacks-or-network-centric-web-services/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Reading <a href="http://www.zacker.org/elgg-vs-drupal-floss-competition">Zack Rosen&#8217;s assertion that building applications inside Drupal-the-framework makes more sense than loose integration of complementary applications</a> triggered some thinking that&#8217;s been rattling around in my head for a while.</p>

<p>I think that the next few years are going to bring tremendous challenges for applications that do not easily communicate with other applications that are &#8220;outside their platform&#8221; i.e are written using a different language/framework, run on a different server, etc.</p>

<p>I think the most powerful path forward over the long haul is <em>internet-based</em><em> integration </em><em>between great applications that were designed from the ground up to allow for it.Â  </em>
In other words, web services APIs are going to become increasingly more important, and the particular application frameworks less so.Â  This the &#8220;<a href="http://blogs.zdnet.com/Hinchcliffe/">small pieces, loosely joined</a>&#8221; model, to echo the phrase that others have appropriated from Dave Weinberger&#8217;s influential book.
There are some great communities and significant resources behind very cool projects that provide great functionality that I really want to be able to tap. I don&#8217;t want to have either persuade them all to develop in a single platform (it&#8217;s just not going to happen) or try to duplicate all of their functions in whatever platform I&#8217;m most comfortable in. (Which, truth be told, is &#8220;none of them.&#8221;)</p>

<p>My colleagues here at ONE/Northwest and I would much rather focus on integrating best-of-breed applications that have strong web services APIs and are designed around the assumption that external applications are first-class citizens of their ecosystems. (Damn, that&#8217;s a lot of buzzwords.)</p>

<p>At the end of the day, why should I have to care if an application is based on Python, Zope, PHP, Rails, Django, or some technology I&#8217;ve never heard of? Why should I have to run all my applications off a single server? That&#8217;s not scalable. We now have a whole set of standards and technologies to let applications communicate with each other over the internet.</p>

<p>&#8220;Web services&#8221; is one of those complex, slippery terms that means lots of different things to lots of different people. To me, in this context, it means<strong> applications that share data with other applications over the internet.  </strong>The more of your application&#8217;s guts it can expose to the outside world, the more powerful your web services API.</p>

<p>Some applications that I think are really moving in the right direction with web services support are:</p>

<ul>
    <li><a href="http://www.demaction.org">Democracy In Action</a> &#8212; powerful API, alas, not yet well documented.  Little known fact: the smart guys at <a href="http://www.enfoldsystems.com">Enfold Systems</a> have releaesd a <a href="http://cheeseshop.python.org/pypi/deminaction/0.2">Python wrapper for the Democracy in Action API</a>, which  (supposedly) makes integration with Plone possible.  Haven&#8217;t tried it yet myself.  But I&#8217;m looking forward to it.</li>
    <li><a href="http://www.salesforce.com">Salesforce.com</a>. Holy cow, these folks really get it. I&#8217;ve heard that half of their traffic is through their web services API. This is how a relationship management database should be &#8212; accessible by most any external application.</li>
    <li><a href="http://www.whatcounts.com">WhatCounts</a>. These guys do our email blasting. Lots of folks do email blasting, some probably just as well as WhatCounts. But what sets WhatCounts apart from the pack fo us is the fact that they have strong APIs. This lets us do cool stuff like pull in names from Salesforce, or inject new subscribers from Plone, or pull in content from a Plone site. (Well, technically pulling in content from the outside doesn&#8217;t use their web services API. But the point is that WhatCounts can pull in data from outside and let other apps push data in.)</li>
    <li>Another, less strictly &#8220;web services&#8221; example is <a href="http://www.plone.org">Plone&#8217;s</a> new <a href="http://www.enfoldsystems.com/Products/Open/PlonePAS">PlonePAS</a> framework. Basically, it&#8217;s a framework for authenticating users and retrieving user data from any old data source you&#8217;d care to write a plugin for. We&#8217;re going to try to use it to integrate Salesforce.com and Plone.</li>
    <li>The whole open-source GIS software ecosystem, most especially including <a href="http://mapserver.gis.umn.edu/">MapServer</a>.  My next-door neighbor, Chris Davis of <a href="http://www.commenspace.org">CommEn Space</a>, has shown me some really mindblowing stuff with maps that dynamically draw in data from all over the internet, thanks to open data standards and web services.</li>
</ul>

<p>Can you see an advocacy software ecosystem here yet? I can.</p>

<p>And let&#8217;s not forget all the &#8220;Web 2.0&#8243; applications out there that are getting so much hype these days.  One important thing about the most exciting of these tools such as <a href="http://www.flickr.com">Flickr</a> and <a href="http://del.icio.us">Del.icio.us</a> is that they can be written to and read from by outside applications via web services APIs.Â  (<a href="http://www.amazon.com/gp/aws/landing.html">Amazon</a> has done amazing stuff here, too, albeit without getting much &#8220;Web 2.0&#8243; credit for it.)
This is where it starts to get cool. <strong>The days of monolithic application stacks that try to do everything are fading fast.  A new &#8220;network-centric&#8221; software ecosystem is starting to bloom.</strong></p>

<p>And the best part: nobody has to &#8220;deeply partner&#8221; or adopt a single platform to make it work.  They just have to focus on building great web services APIs so that other applications can meet them halfway. That&#8217;s not easy, but it&#8217;s surely easier than getting everyone to adopt the same platform.</p>

<p>Some software tools that I really hope build strong web services APIs as they roll out their next releases include:</p>

<ul>
    <li><a href="http://www.greenmediatoolshed.org">Green Media Toolshed</a></li>
    <li><a href="http://www.openngo.org">CiviCRM</a> (their <a href="http://objectledge.org/confluence/display/CRM/API+RPC+Design+and+Implementation">web services API</a> work seems to have stalled out in favor work on a PHP API that only talks to a PHP application (like Drupal) installed on the same server. Hopefully their focus will soon return to playing with the outside world, too.)</li>
    <li><a href="http://weblog.greenpeace.org/melt/">Custard Melt</a></li>
    <li><a href="http://www.advokit.net/">Advokit</a></li>
    <li>All of those nonprofit online donation tools that I am too tired to list right now. You know who you are.</li>
    <li>And, yes, <a href="http://www.drupal.org">Drupal</a>, too. <img src='http://jstahl.org/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' /> </li>
</ul>

<p>I&#8217;m probably overlooking some other apps that ought to be listed here.  Feel free to suggest them.  It&#8217;s late.</p>
]]></content:encoded>
			<wfw:commentRss>http://jstahl.org/archives/2006/02/27/single-stacks-or-network-centric-web-services/feed/</wfw:commentRss>
		<slash:comments>19</slash:comments>
		</item>
		<item>
		<title>Getting Your Email On</title>
		<link>http://jstahl.org/archives/2005/08/13/getting-your-email-on/</link>
		<comments>http://jstahl.org/archives/2005/08/13/getting-your-email-on/#comments</comments>
		<pubDate>Sat, 13 Aug 2005 23:04:46 +0000</pubDate>
		<dc:creator>Jon Stahl</dc:creator>
				<category><![CDATA[Email]]></category>
		<category><![CDATA[online organizing]]></category>

		<guid isPermaLink="false">http://blogs.onenw.org/jon/?p=865</guid>
		<description><![CDATA[Emily Thorson of EchoDitto offers some great pointers on why and how to write compelling emails, which are they key to driving online action. Real-life fact: email drives traffic and participations. Implications: Stop stressing about your website. Yes, it should &#8230; <a href="http://jstahl.org/archives/2005/08/13/getting-your-email-on/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Emily Thorson of EchoDitto offers some great pointers on <a href="http://www.echoditto.com/node/697">why and how to write compelling emails</a>, which are they key to driving online action.</p>

<blockquote>Real-life fact: email drives traffic and participations. 

Implications:

<ol>
<li>Stop stressing about your website. Yes, it should have regularly updated content and look halfway professional. But it shouldn&#8217;t drive your strategy, it should be driven by your strategy.  


</li><li>Figure out what organizations have big lists and befriend them. In DC, this might mean MoveOn or Democracy for America. If you&#8217;re running a local organization, it might be your local Planned Parenthood or League of Conservation Voter chapter.

</li><li>Always be growing. Constantly ask yourself &#8220;How can I make this into a list-growth activity?&#8221; Tell your list to tell a friend. Do campaigns that encourage signups. Partner with other organizations.  

</li><li>Write decent emails. Just follow a simple principle: write emails as if you&#8217;re talking to a friend. There are a couple of points that go along with this.

<ul>
<li>Your emails should be from human beings, not organizations. Put the name of a person in the subject line. The candidate, the campaign manager, whoever.

</li><li>I try to do a &#8220;term paper check&#8221; a few hours after writing my first draft, where I go through and figure out which sentences sound like they belong in a political science paper, and delete them.  

</li><li>No email newsletters! People have very, very short attention spans. Figure out the action you want the email to focus on, and write the email around that link. Paragraph, link, paragraph, link, paragraph, link, signature. PS: link. Even though you also want to include a link to the photo gallery, and the front page, and the campaign you did last week, and the event calendar&#8230;don&#8217;t do it! Just pick one. Just pick ONE.

</li><li>Write out the link. This sounds petty, but it makes such a huge difference that I would be remiss in not mentioning it. Do not make &#8220;click here&#8221; into a link. do not make the name of your campaign into a link. Write the whole thing out, with the http://www. for each one. People like to know where they&#8217;re going when they click.
</li></ul>
</li></ol>
</blockquote>
]]></content:encoded>
			<wfw:commentRss>http://jstahl.org/archives/2005/08/13/getting-your-email-on/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>

