<?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>The Enforcer.net &#187; Salesforce Corporate</title>
	<atom:link href="http://theEnforcer.net/category/salesforce-corporate/feed/" rel="self" type="application/rss+xml" />
	<link>http://theEnforcer.net</link>
	<description>a force.com blog</description>
	<lastBuildDate>Sat, 25 Feb 2012 04:13:26 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.3</generator>
		<item>
		<title>Dreamforce 2009 Day 3: Agile, Swag and Heroes</title>
		<link>http://theEnforcer.net/2009/11/dreamforce-2009-day-3/</link>
		<comments>http://theEnforcer.net/2009/11/dreamforce-2009-day-3/#comments</comments>
		<pubDate>Sat, 21 Nov 2009 08:04:29 +0000</pubDate>
		<dc:creator>The Enforcer</dc:creator>
				<category><![CDATA[Dreamforce]]></category>
		<category><![CDATA[Salesforce Corporate]]></category>

		<guid isPermaLink="false">http://theEnforcer.net/?p=188</guid>
		<description><![CDATA[There were, by my count, over 250 breakout sessions at Dreamforce (see program). At first I felt sad that I couldn&#8217;t attend many of them. Then I looked at the content and realized that, to be honest, I was glad not to go to a lot of them. You see, a lot of the sessions [...]]]></description>
			<content:encoded><![CDATA[<p>There were, by my count, over 250 breakout sessions at Dreamforce (see <a href="http://bit.ly/df09program">program</a>). At first I felt sad that I couldn&#8217;t attend many of them. Then I looked at the content and realized that, to be honest, I was glad not to go to a lot of them. You see, a lot of the sessions are specific to particular audiences — verticals, like Healthcare and Manufacturing; job functions like Sales, Marketing and Support; and technical like Beginning Developers and Administrators.</p>
<p>I tended to stick to the Advanced Developer track and one called <strong>Backstage Pass</strong>, which was ideal for Salesforce.com junkies who always want more information about their favorite system. Day 3 provided plenty of content for this fetish, plus plenty of <a href="http://en.wikipedia.org/wiki/Promotional_item">swag</a> from exhibitors trying to offload their goodies before the expo closed. (I hope you liked your T-Shirts, Cara!)</p>
<p><img src="http://theEnforcer.net/wp-content/uploads/2009/11/Cloudmobile.JPG" alt="Cloudmobile" title="Cloudmobile" width="490" height="367" class="aligncenter size-full wp-image-191" /><br />
<center><b>Some people take swag collecting a bit too far</b></center></p>
<h3>Agile</h3>
<p>Several sessions today focused on Salesforce.com&#8217;s application of the <a href="http://en.wikipedia.org/wiki/Agile_software_development">Agile Software Development</a> methodology, which they call <strong>Adaptive Delivery Methodology</strong> (ADM). This is the &#8216;secret sauce&#8217; that helps them achieve three major releases each year in a consistent and predictable manner, with the high quality demanded by an enterprise-class system.</p>
<p>At the core is the fact that release dates are fixed, but the scope of features delivered can vary. If something&#8217;s not ready (or not up to sufficient quality), it gets dropped from the release. Although, according to a friend of mine who used to work at Salesforce.com, the pressure certainly does mount in the month prior to a release.</p>
<p>Here&#8217;s their particular comments, placed against the normal Agile principles:</p>
<p><strong>Avoid waste</strong></p>
<ul>
<li>Avoid <a href="http://en.wikipedia.org/wiki/Technical_debt">technical debt</a> that just delays the pain by having to &#8216;clean up&#8217; poor code later</li>
<li>Avoid spending time on features that customers don&#8217;t want or need</li>
</ul>
<p><strong>Build Quality In</strong></p>
<ul>
<li>Perform small iterations<strong>,</strong> then test and get feedback</li>
<li>Use <a href="http://en.wikipedia.org/wiki/Continuous_integration">continuous integration</a> to test code upon checkin — they have 40,000 automated tests!</li>
</ul>
<p>As a side note, Salesforce.com have the benefit that their software operates on only one database, application server and hardware — theirs! This makes things much simpler than for &#8216;normal&#8217; software vendors who have a large matrix of platforms and versions of 3rd-party software that must be supported. Instead, the variability comes from having to test combinations of Web Browsers running on a variety of customer&#8217;s Operating Systems. Fortunately, they know <em>exactly</em> which platforms need testing because web browsers report this back to Salesforce every time a page is loaded. So, they use a huge array of <a href="http://en.wikipedia.org/wiki/Selenium_%28software%29">Selenium</a> tests to check that the User Interface performs as expected.</p>
<p>In all, the full suite of tests takes 8 hours to run, so they also have some &#8216;pre check-in&#8217; tests and smaller sub-units of tests that can provide feedback to developers much more quickly.</p>
<p><strong>Respect People</strong></p>
<ul>
<li>Hire good people and unleash their potential</li>
<li>Empower the teams and allow them to self-organise</li>
<li>Let the teams decide <strong>what</strong> to build, <strong>how</strong> to build it and <strong>how much</strong> to build in the time available</li>
</ul>
<p><strong>Optimize the whole</strong></p>
<ul>
<li>Optimize both globally (across 60 teams) and within each team</li>
<li>Each team is cross-functional and has most of the resources required to succeed, such as a Product Manager/Project Manager, <a href="http://en.wikipedia.org/wiki/Scrum_%28development%29">Scrum Master</a>, developers, Quality Assurance, documentation, usability and operations (some resources are shared across teams, such as the UI Design team)</li>
<li>Optimize at the <em>team</em> level, not at the <em>individual</em> level</li>
</ul>
<p><strong>Create knowledge</strong></p>
<ul>
<li>Value and encourage innovation</li>
<li>Let ideas and knowledge flow both vertically and horizontally</li>
</ul>
<p><strong>Just-in-time decisions</strong></p>
<ul>
<li>Delay irreversible decisions as long as possible (as opposed to the <a href="http://en.wikipedia.org/wiki/Waterfall_model">Waterfall model</a> that plans everything before development begins)</li>
<li>Have &#8216;just enough planning&#8217; to get started</li>
<li>Make product decisions along the way — spend time on the prototypes, not the specifications</li>
</ul>
<p><strong>Deliver fast</strong></p>
<ul>
<li>Create a culture of Delivery</li>
<li>Continually ask &#8220;What have you <em>delivered</em> today?&#8221;</li>
<li>Build in small increments, get regular feedback</li>
<li>Deliver something that customers can <em>use</em> every 30 days (it&#8217;s not released every 30 days, but it&#8217;s important to have releases so that other teams can build functionality upon it)</li>
<li>Where features require more than one release cycle to implement, some features have been known to be released ahead of time. For example, some of the functionality for just-announced <a href="http://www.salesforce.com/chatter/">Chatter</a> was actually &#8216;rolled-out&#8217; in a previous release of Salesforce, but kept hidden from customers</li>
</ul>
<p>Salesforce.com moved onto this methodology about 3 years ago, which they claim has led to nine on-time, high quality releases since inception. The move was done over a 3-month period to avoid letting it &#8216;drag on&#8217; for a long time. When I asked a developer whether the methodology worked, they remarked that it was significantly better than the prior mayhem.</p>
<h3>Heroes</h3>
<p>A final Dreamforce session was entitled <a href="http://developer.force.com/dreamforce/09/session/backstage_pass:meet_the_force_com_platform_development_team">Meet the Force.com Platform Development Team</a>, featuring a panel of 7 developers. With very little presentation, the session was opened to the audience, who then proceeded to ask &#8220;When is feature X coming out?&#8221; To the full credit of Salesforce, the audience was also littered with Product Managers who were able to give honest answers (which typically ranged from &#8220;It&#8217;s not on the roadmap&#8221; through to &#8220;The code was just checked-in yesterday!&#8221;)</p>
<p>Of all the panel, however, my attention went to Simon Fell, whom I consider somewhat of a hero amongst the Macintosh community. Via his Pocket Soap website, Simon has released an array of useful Macintosh utilities such as:</p>
<ul>
<li><strong><a href="http://www.pocketsoap.com/weblog/2007/07/1779.html">LeXiLoader</a>:</strong> A Mac version of the DataLoader which Simon voluntarily updates whenever DataLoader is released (help <a href="http://ideas.salesforce.com/article/show/10095122/Data_Loader_for_Mac">vote for his Idea</a> to have this product officially supported!)</li>
<li><strong><a href="http://www.pocketsoap.com/osx/soqlx">SoqlXplorer</a>:</strong> A great SOQL query tool with a very graphical schema explorer</li>
<li><strong><a href="http://www.pocketsoap.com/osx/maildrop">Maildrop</a>:</strong> Giving the ability to upload emails to Salesforce from Apple&#8217;s Mail application as well as Entourage</li>
<li>&#8230;plus a few other nifty utilities</li>
</ul>
<p>Ironically, while there was a whole PR contingent running around Dreamforce arranging executive interviews for the Press and VIPs, they were somewhat confused by my request to interview a &#8216;non-executive&#8217; like Simon. Fortunately, I managed to catch him after the panel presentation and he gave me this interview:</p>
<p><center><object width="580" height="360"><param name="movie" value="http://www.youtube.com/v/bmGdZAcU-tY&#038;hl=en_US&#038;fs=1&#038;rel=0&#038;color1=0xe1600f&#038;color2=0xfebd01&#038;border=1"></param><param name="allowFullScreen" value="true"></param><param name="allowscriptaccess" value="always"></param><embed src="http://www.youtube.com/v/bmGdZAcU-tY&#038;hl=en_US&#038;fs=1&#038;rel=0&#038;color1=0xe1600f&#038;color2=0xfebd01&#038;border=1" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="580" height="360"></embed></object></center></p>
<p>And that&#8217;s why Simon is my hero.</p>
<h3>The Bottom Line</h3>
<ul class="nomargin">
<li>They concentrate on on-time delivery, even is the scope of delivered features suffer</li>
<li>They do lots of automated testing to ensure quality</li>
<li>Good ideas come from good people</li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://theEnforcer.net/2009/11/dreamforce-2009-day-3/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Salesforce aren&#8217;t perfect, but they are fast!</title>
		<link>http://theEnforcer.net/2009/07/salesforce-arent-perfect-but-they-are-fast/</link>
		<comments>http://theEnforcer.net/2009/07/salesforce-arent-perfect-but-they-are-fast/#comments</comments>
		<pubDate>Mon, 20 Jul 2009 00:58:05 +0000</pubDate>
		<dc:creator>The Enforcer</dc:creator>
				<category><![CDATA[Salesforce Corporate]]></category>

		<guid isPermaLink="false">http://theEnforcer.net/?p=91</guid>
		<description><![CDATA[While accessing some secure content on www.salesforce.com today, I was greeted by this: This is shown in Sydney time, so it was 5pm on a Sunday in San Francisco. I was trying to imagine the scene amongst the Salesforce sys admins as they scrambled to fix it. Sure enough, it came up pretty quickly with [...]]]></description>
			<content:encoded><![CDATA[<p>While accessing some secure content on <strong>www.salesforce.com</strong> today, I was greeted by this:</p>
<p style="text-align: center;"><img class="aligncenter" src="http://theenforcer.net/wp-content/uploads/2009/07/untrusted-1.gif" alt="" /></p>
<p>This is shown in Sydney time, so it was 5pm on a Sunday in San Francisco. I was trying to imagine the scene amongst the Salesforce sys admins as they scrambled to fix it. Sure enough, it came up pretty quickly with a new certificate:</p>
<p style="text-align: center;"><img class="aligncenter" src="http://theenforcer.net/wp-content/uploads/2009/07/trusted-1.gif" alt="" /></p>
<p>The certificate was created a month ago, but it looks like they forgot to install it!</p>
<h3>The Bottom Line</h3>
<ul class="nomargin">
<li>It&#8217;s not easy to catch Salesforce out, and even when you do it&#8217;s fixed pretty darn quick!</li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://theEnforcer.net/2009/07/salesforce-arent-perfect-but-they-are-fast/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

