<?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>&#62;kloctalk&#187; General Industry</title>
	<atom:link href="http://www.klocwork.com/blog/category/general-industry/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.klocwork.com/blog</link>
	<description>&#62;kloctalk is a blog and a community for software development professionals who create and maintain mission-critical software and the challenges they face on a daily basis.</description>
	<lastBuildDate>Wed, 08 Feb 2012 13:45:32 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.4</generator>
		<item>
		<title>Is Pure Agile Always an Option?</title>
		<link>http://www.klocwork.com/blog/2011/10/is-pure-agile-always-an-option/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=is-pure-agile-always-an-option</link>
		<comments>http://www.klocwork.com/blog/2011/10/is-pure-agile-always-an-option/#comments</comments>
		<pubDate>Tue, 04 Oct 2011 13:50:27 +0000</pubDate>
		<dc:creator>Todd Landry</dc:creator>
				<category><![CDATA[Agile Development]]></category>
		<category><![CDATA[Embedded]]></category>
		<category><![CDATA[General Coding]]></category>
		<category><![CDATA[General Industry]]></category>
		<category><![CDATA[Medical Device Software]]></category>
		<category><![CDATA[agile]]></category>
		<category><![CDATA[medical device software]]></category>
		<category><![CDATA[software development]]></category>

		<guid isPermaLink="false">http://www.klocwork.com/blog/?p=1397</guid>
		<description><![CDATA[Over the past few years I’ve talked to a number of customers in the embedded software and medical devices industries, and I continue to see a significant number of these organizations either moving to, or planning on moving to agile development processes. With all of the inherent challenges for agile in these organizations such as [...]]]></description>
			<content:encoded><![CDATA[<p>Over the past few years I’ve talked to a number of customers in the embedded software and medical devices industries, and I continue to see a significant number of these organizations either moving to, or planning on moving to agile development processes.</p>
<p>With all of the inherent challenges for agile in these organizations such as standards/regulatory compliance, hardware changes and integration, security issues, etc. I must say that I’m a little shocked that customers are moving away from their current processes towards something like agile. Add to this the fact that the Agile Manifesto specifically states “Working software over comprehensive documentation” and it doesn’t exactly sound like agile is a great fit for embedded systems in general, let alone medical device.</p>
<p>Now, don’t get me wrong, I am a huge proponent of agile, and I certainly realize that there are many pros for moving to agile, and these have been well <a href="http://www.objectmentor.com/omSolutions/agile_why.html">documented</a>, but I have to wonder just how agile are these specific industries going?  I would bet that most (all?) of these organizations are adopting some of the key fundamentals of agile, but to say they are going “all in” would be a bit of a stretch.</p>
<p><br class="spacer_" /></p>
<div id="attachment_1400" class="wp-caption alignright" style="width: 310px"><a href="http://www.klocwork.com/blog/wp-content/uploads/2011/10/whales-10.jpg"><img class="size-medium wp-image-1400" title="whales-10" src="http://www.klocwork.com/blog/wp-content/uploads/2011/10/whales-10-300x193.jpg" alt="" width="300" height="193" /></a><p class="wp-caption-text">Even industries heavy on process (because of regulatory requirements) are taking the leap into agile. How agile are they?</p></div>
<p>Looking at the <a href="http://agilemanifesto.org/">manifesto</a> a little closer, some of the principles are fairly generic and feel more like common sense than anything revolutionary, so they probably apply to any industry. There are a few principles however that are fairly easy to imagine in these industries, such as:</p>
<ul>
<li> getting all stakeholders involved in defining requirements (Principle #4), or </li>
<li>embracing more face-to-face conversations (Principle #6), and </li>
<li>simplicity, or minimizing the amount of work not done (Principle #10). </li>
</ul>
<p>But do people really think that Principles #1 (early and often delivery of software), and #2 (welcome changing requirements) really apply to the embedded or medical devices industries? Personally I don’t see it.</p>
<p>So what do you think? Are the embedded software or medical devices industries capable of going full out Agile?</p>
]]></content:encoded>
			<wfw:commentRss>http://www.klocwork.com/blog/2011/10/is-pure-agile-always-an-option/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>The Evolution of Static Code Analysis &#8211; Part 3: The Present Day</title>
		<link>http://www.klocwork.com/blog/2011/06/the-evolution-of-static-code-analysis-part-3-the-present-day/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=the-evolution-of-static-code-analysis-part-3-the-present-day</link>
		<comments>http://www.klocwork.com/blog/2011/06/the-evolution-of-static-code-analysis-part-3-the-present-day/#comments</comments>
		<pubDate>Wed, 08 Jun 2011 20:10:37 +0000</pubDate>
		<dc:creator>Todd Landry</dc:creator>
				<category><![CDATA[General Coding]]></category>
		<category><![CDATA[General Industry]]></category>
		<category><![CDATA[Software Quality]]></category>
		<category><![CDATA[Software Security]]></category>
		<category><![CDATA[code analysis]]></category>
		<category><![CDATA[software development]]></category>
		<category><![CDATA[source code analysis]]></category>
		<category><![CDATA[Static Analysis]]></category>

		<guid isPermaLink="false">http://www.klocwork.com/blog/?p=1322</guid>
		<description><![CDATA[My first 2 posts looked at 2 different eras of Static Code Analysis, the Early Years and the Early 21st Century. The SCA solutions of these times were revolutionary, and helped software development teams a great deal. But they had their warts. In the final post in this series, I’m going to introduce you to [...]]]></description>
			<content:encoded><![CDATA[<p>My first 2 posts looked at 2 different eras of Static Code Analysis, the <a href="http://www.klocwork.com/blog/2011/05/the-evolution-of-static-code-analysis-part-1-the-early-years/">Early Years</a> and the <a href="http://www.klocwork.com/blog/2011/05/the-evolution-of-source-code-analysis-part-2-the-early-21st-century/">Early 21</a><sup><a href="http://www.klocwork.com/blog/2011/05/the-evolution-of-source-code-analysis-part-2-the-early-21st-century/">st</a></sup><a href="http://www.klocwork.com/blog/2011/05/the-evolution-of-source-code-analysis-part-2-the-early-21st-century/"> Century</a>. The SCA solutions of these times were revolutionary, and helped software development teams a great deal. But they had their warts.</p>
<p>In the final post in this series, I’m going to introduce you to the present day Static Code Analysis technology and how it is impacting developers.</p>
<p><strong>The Present Day</strong></p>
<p>I’m a huge fan of Reece’s Peanut Butter Cups. I love them. I keep active so I don&#8217;t feel guilty eating them. In a strange, convoluted way, the 3<sup>rd</sup> generation of static code analysis tools are like this delicious combination of chocolate and peanut butter. Let me explain.</p>
<p><a href="http://www.klocwork.com/blog/wp-content/uploads/2011/05/reeces.jpeg"><img class="size-full wp-image-1323 alignright" title="reeces" src="http://www.klocwork.com/blog/wp-content/uploads/2011/05/reeces.jpeg" alt="" width="259" height="194" /></a></p>
<div class="mceTemp">I’m sure you remember from my previous posts how the 1<sup>st</sup> generation tools (i.e. Lint) gave questionable results but was still considered by developers as a tool exclusively for them, and the 2<sup>nd</sup> generation tools gave really good results but moved away from being a developer tool.</div>
<div class="mceTemp">The 3<sup>rd</sup> generation tools recognized that the developer must be an integral part of the process of identifying, fixing and preventing bugs from reaching the code stream and so, they took the proven results from the 2<sup>nd</sup> gen tools and delivered them right to the developer’s desktop.</div>
<p>Eureka! Now developers are able to perform an analysis locally, using their development environment of choice, while still getting the high accuracy and consistency that was previously only possible by checking in their code and waiting for the integration build to take place.</p>
<p>Think about the ramifications of this:</p>
<ul>
<li>cleaner code is being checked in </li>
<li>the ‘rinse-repeat’ vicious cycle of rework is drastically reduced</li>
<li>quality teams are now able to focus on testing the product’s functionality rather than spending cycles uncovering something that could easily and quickly be found by automated tools. </li>
</ul>
<p>Mmmm-mmmm good. Sounds like a win-win-win to me!</p>
<p>I think the best thing about these 3rd generation tools is simply the fact that developers are now able to resume ownership of the quality and security of the code they are producing.</p>
<p>Well, I hope you enjoyed this walk down memory lane. I sure did. Now I&#8217;m looking for spare change because I see a trip to the vending machine in my immediate future.</p>
<p>If you want to know more about the 3rd Generation tools, feel free to drop me a line.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.klocwork.com/blog/2011/06/the-evolution-of-static-code-analysis-part-3-the-present-day/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>The Evolution of Static Code Analysis &#8211; Part 1: The Early Years</title>
		<link>http://www.klocwork.com/blog/2011/05/the-evolution-of-static-code-analysis-part-1-the-early-years/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=the-evolution-of-static-code-analysis-part-1-the-early-years</link>
		<comments>http://www.klocwork.com/blog/2011/05/the-evolution-of-static-code-analysis-part-1-the-early-years/#comments</comments>
		<pubDate>Tue, 17 May 2011 13:45:09 +0000</pubDate>
		<dc:creator>Todd Landry</dc:creator>
				<category><![CDATA[General Coding]]></category>
		<category><![CDATA[General Industry]]></category>
		<category><![CDATA[Static Analysis]]></category>
		<category><![CDATA[coding]]></category>
		<category><![CDATA[source code analysis]]></category>
		<category><![CDATA[testing]]></category>

		<guid isPermaLink="false">http://www.klocwork.com/blog/?p=1306</guid>
		<description><![CDATA[Our marketing people here at Klocwork like to see me racking up frequent flyer miles and expending CO2 at roadshows, conferences and tradeshows. Whenever I’m out speaking, I always like to gauge audience familiarity with Static Code Analysis. I’m happy to say that SCA knowledge has definitely increased over the years, but it is still [...]]]></description>
			<content:encoded><![CDATA[<p>Our marketing people here at Klocwork like to see me racking up frequent flyer miles and expending CO2 at roadshows, conferences and tradeshows. Whenever I’m out speaking, I always like to gauge audience familiarity with Static Code Analysis.</p>
<p>I’m happy to say that SCA knowledge has definitely increased over the years, but it is still not up to levels enjoyed by unit testing or integration testing.</p>
<p>What I plan to do over the next three weeks is to provide you with a history lesson on how Static Code Analysis has evolved over the past few decades (yes, it has been around that long!). The three different eras I will be addressing are The Early Years, The Early 21<sup>st</sup> Century, and  The Present Day.</p>
<p><strong><em>The Early Years</em></strong></p>
<p>As I mentioned earlier, Static Code Analysis has actually been around since the time of <a href="http://en.wikipedia.org/wiki/Bell-bottoms">bell bottoms</a>, <a href="http://www.youtube.com/watch?v=JlzlNpttvVM">disco music</a>, and <a href="http://www.spaceinvaders.de/">Space Invaders</a> (check out the Space Invaders link)&#8211;yes, the good ole 1970s. Who out there has heard of <a href="http://en.wikipedia.org/wiki/Lint_(software)">Lint</a> (and no, I’m not talking about the fluff coming from your old bell bottoms pockets)?</p>
<p><a href="http://www.klocwork.com/blog/wp-content/uploads/2011/04/space-invaders-videogame.jpg"><img class="alignright size-medium wp-image-1312" title="space-invaders-videogame" src="http://www.klocwork.com/blog/wp-content/uploads/2011/04/space-invaders-videogame-173x300.jpg" alt="" width="173" height="300" /></a></p>
<p>Lint was one of these first-generation SCA tools introduced in the late 70s. These tools targeted low hanging fruit in C code, such as missing or extra semi-colons, missing curlicues, potentially dangerous <a href="http://publib.boulder.ibm.com/infocenter/idshelp/v10/index.jsp?topic=/com.ibm.sqls.doc/sqls169.htm">implicit casts</a>, and so on.</p>
<p>These tools were closely integrated with the compile and link process, and so this <em>seemed</em> like the best time to show its errors and warnings, while the developer was actually “in process” and fixing problems found by the compiler. Since these tools delivered its warnings at compile time, it quickly became a tool that was adopted and owned by the developers themselves.</p>
<p>Life was good. Well, until the bugs that were being found were deemed to be relatively trivial or completely erroneous (the dreaded false positive). The problem was that these tools were only able to see one file at a time, but for accurate static analysis there is a strong need to know everything that&#8217;s going on within the entire stream.</p>
<p>Without that vision of the entire stream, no matter how sophisticated the analysis tools are, they will make incorrect assumptions most of the time. Because of these inaccuracies, these first-generation tools never gained the widespread acceptance of software developers.</p>
<p>Next up will be a look at static analysis tools during a time when “<a href="http://www.youtube.com/watch?v=ikkg4NobV_w">Whassssuuuupp</a>” became a household term.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.klocwork.com/blog/2011/05/the-evolution-of-static-code-analysis-part-1-the-early-years/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Toughen up your code with software security best practices</title>
		<link>http://www.klocwork.com/blog/2011/04/toughen-up-your-code-with-software-security-best-practices/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=toughen-up-your-code-with-software-security-best-practices</link>
		<comments>http://www.klocwork.com/blog/2011/04/toughen-up-your-code-with-software-security-best-practices/#comments</comments>
		<pubDate>Thu, 28 Apr 2011 14:06:47 +0000</pubDate>
		<dc:creator>Patti Murphy</dc:creator>
				<category><![CDATA[Coding Standards]]></category>
		<category><![CDATA[General Coding]]></category>
		<category><![CDATA[General Industry]]></category>
		<category><![CDATA[Software Security]]></category>
		<category><![CDATA[Microsoft Security Development Lifecycle]]></category>
		<category><![CDATA[OWASP]]></category>
		<category><![CDATA[SDL]]></category>
		<category><![CDATA[XSS]]></category>

		<guid isPermaLink="false">http://www.klocwork.com/blog/?p=1302</guid>
		<description><![CDATA[Crying into your wadded Kleenex about how your vulnerabilities were exploited may make for compelling TV, but when it comes to software security, they’ll cost you a lot more than your personal dignity. Or maybe they&#8217;ll cost you millions of dollars in lost business and your personal dignity. Why not toughen up your code by [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.klocwork.com/blog/wp-content/uploads/2011/04/cope-crying-baby-800x800.jpg"><img class="alignright size-full wp-image-1309" title="cope-crying-baby-800x800" src="http://www.klocwork.com/blog/wp-content/uploads/2011/04/cope-crying-baby-800x800.jpg" alt="" width="360" height="239" /></a>Crying into your wadded Kleenex about how your vulnerabilities were exploited may make for compelling TV, but when it comes to software security, they’ll cost you a lot more than your personal dignity. Or maybe they&#8217;ll cost you millions of dollars in lost business <em>and </em>your personal dignity.</p>
<p>Why not toughen up your code by implementing software security best practices that prevent or mitigate the risks?</p>
<p>That’s why you should head on over to the<a href="http://developer.klocwork.com/browse/free-courses-security-innovation" target="_blank"> Klocwork Developer Network</a> and check out the free eLearning courses provided by <a href="https://teamprofessor.securityinnovation.com/ed/Portal/default.asp?location=&amp;selectedIndex=1-" target="_blank">Security Innovation</a>, an industry leader in software security and cryptography. To view learning resources, just log in or register.</p>
<p>Here&#8217;s a brief description of each course:</p>
<ul>
<li><a href="http://developer.klocwork.com/members/security-innovations/owasp-top-ten-threats-and-mitigations" target="_blank"><strong> </strong></a><strong><a href="http://developer.klocwork.com/members/security-innovations/owasp-top-ten-threats-and-mitigations">OWASP Top 10 – Threats and Mitigations</a> </strong></li>
</ul>
<p style="padding-left: 30px;">Learn strategies and best practices for understanding, identifying and mitigating the risk of vulnerabilities and attacks within the OWASP Top 10.</p>
<ul>
<li><a href="http://developer.klocwork.com/members/security-innovations/intro-microsoft-security-development-lifecycle-sdl" target="_blank"><strong>Intro to the Microsoft Security Development Lifecycle (SDL) </strong></a></li>
</ul>
<p style="padding-left: 30px;">The Security Development Lifecycle (SDL), a key security engineering process that was spawned from Microsoft’s Trustworthy Computing Initiative. Learn the necessary steps to meet SDL requirements, and identify the appropriate tools required by the SDL.</p>
<ul>
<li><a href="http://developer.klocwork.com/members/security-innovations/cross-site-scripting-aspnet" target="_blank"><strong>Intro to XSS – Asp.Net examples </strong></a></li>
</ul>
<p style="padding-left: 30px;">Learn to understand the mechanisms behind cross-site scripting vulnerabilities, describe cross-site scripting vulnerabilities and their consequences, and apply secure coding best practices to prevent cross-site scripting vulnerabilities.</p>
<ul>
<li><a href="http://developer.klocwork.com/members/security-innovations/cross-site-scripting-jsp" target="_blank"><strong>Intro to XSS – Java </strong></a></li>
</ul>
<p style="padding-left: 30px;">Learn to understand the mechanisms behind cross-site scripting vulnerabilities, describe cross-site scripting vulnerabilities and their consequences, and apply secure coding best practices to prevent cross-site scripting vulnerabilities.</p>
<p style="padding-left: 30px;">Have fun, code safely and put that Kleenex away (unless it&#8217;s allergy season).</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-CA</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:BrowserLevel>MicrosoftInternetExplorer4</w:BrowserLevel> <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]--><!--[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:0cm 5.4pt 0cm 5.4pt; 	mso-para-margin-top:0cm; 	mso-para-margin-right:0cm; 	mso-para-margin-bottom:10.0pt; 	mso-para-margin-left:0cm; 	line-height:115%; 	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>
<p><br class="spacer_" /></p>
<p><br class="spacer_" /></p>
<p><br class="spacer_" /></p>
<p><br class="spacer_" /></p>
<p><br class="spacer_" /></p>
<p><br class="spacer_" /></p>
<p><br class="spacer_" /></p>
<p><br class="spacer_" /></p>
<p><br class="spacer_" /></p>
<p><br class="spacer_" /></p>
<p class="MsoNormal">Crying into your wadded Kleenex about how your vulnerabilities were exploited may make for compelling TV, but when it comes to software security, they’ll cost you a lot more than your personal dignity.</p>
<p class="MsoNormal">That’s why you should head on over to our Developer Network and check out free eLearning security courses provided by Security Innovations, an industry leader in software security and cryptography.</p>
<p class="MsoNormal"> </p>
<p class="MsoNormal"> </p>
<p class="MsoNormal"> </p>
<p class="MsoNormal">You can wail and gnash your teeth over your exploited vulnerabilitiesSoftware security isn’t just finding your soft spots that attackers can exploit, it’s preventing them in the first place.</p>
<p class="MsoNormal"> </p>
<p class="MsoNormal">OWASP Top 10 – Threats and Mitigations</p>
<p class="MsoNormal">There are hundreds of risks to web applications.<span> </span>Each year, the Open Web Application Security Project (OWASP) publishes its Top Ten list, representing its opinion of the most critical web application security flaws. Mitigating these flaws will help an organization greatly reduce the risk of a web application being compromised.<span> </span>Regulatory bodies, including PCI-DSS and the Federal Trade Commission, recommend addressing the OWASP Top 10 as part of an organization’s best practices.<span> </span>This course will provide personnel with strategies and best practices for understanding, identifying and mitigating the risk of vulnerabilities and attacks within the OWASP Top 10. Prerequisite: none.</p>
<p class="MsoNormal">Intro to the Microsoft Security Development Lifecycle (SDL)</p>
<p class="MsoNormal">This course introduces the Security Development Lifecycle (SDL), a key security engineering process that was spawned from Microsoft’s Trustworthy Computing Initiative.<span> </span>Students will learn how to design and implement products that meet an organization’s security needs.<span> </span>Upon completion of this course, the participant will be able to identify the benefits of the Security Development Lifecycle, recognize the importance of the Final Security Review, follow the necessary steps to meet SDL requirements, and identify the appropriate tools required by the SDL.<span> </span>Prerequisite: basic knowledge of the software development lifecycle.</p>
<p class="MsoNormal"> </p>
<p class="MsoNormal">Intro to XSS – Asp.Net examples</p>
<p class="MsoNormal">In this course, students will learn to understand the mechanisms behind cross-site scripting vulnerabilities, describe cross-site scripting vulnerabilities and their consequences, and apply secure coding best practices to prevent cross-site scripting vulnerabilities.<span> </span>Prerequisite:<span> </span>Basic knowledge of Web technologies, ASP.NET, and C# programming language.</p>
<p class="MsoNormal"> </p>
<p class="MsoNormal">Intro to XSS – Java</p>
<p class="MsoNormal">In this course, students will learn to understand the mechanisms behind cross-site scripting vulnerabilities, describe cross-site scripting vulnerabilities and their consequences, and apply secure coding best practices to prevent cross-site scripting vulnerabilities.<span> </span>Prerequisite:<span> </span>Basic knowledge of Web technologies, and Java Server Pages (JSP).</p>
</div>
]]></content:encoded>
			<wfw:commentRss>http://www.klocwork.com/blog/2011/04/toughen-up-your-code-with-software-security-best-practices/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>A Rockin&#8217; Agile Roadshow</title>
		<link>http://www.klocwork.com/blog/2011/04/a-rockin-agile-roadshow/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=a-rockin-agile-roadshow</link>
		<comments>http://www.klocwork.com/blog/2011/04/a-rockin-agile-roadshow/#comments</comments>
		<pubDate>Thu, 07 Apr 2011 15:22:58 +0000</pubDate>
		<dc:creator>Todd Landry</dc:creator>
				<category><![CDATA[Agile Development]]></category>
		<category><![CDATA[General Industry]]></category>
		<category><![CDATA[agile]]></category>
		<category><![CDATA[software development]]></category>
		<category><![CDATA[Static Analysis]]></category>

		<guid isPermaLink="false">http://www.klocwork.com/blog/?p=1281</guid>
		<description><![CDATA[Last week I toured the West coast with our friends from VersionOne, Perforce, and Electric Cloud on our Agile roadshow hitting the cities of Seattle, Santa Clara, and San Diego. In one of the after meeting discussions, one of the attendees asked me what the differences were between Agile and Lean. Having only been involved [...]]]></description>
			<content:encoded><![CDATA[<p>Last week I toured the West coast with our friends from <a href="http://www.versionone.com/">VersionOne</a>, <a href="http://www.perforce.com/">Perforce</a>, and <a href="http://www.electric-cloud.com/">Electric Cloud</a> on our Agile roadshow hitting the cities of Seattle, Santa Clara, and San Diego. In one of the after meeting discussions, one of the attendees asked me what the differences were between Agile and Lean. Having only been involved with Lean from an outside perspective, I didn&#8217;t really think there were huge differences and that they shared many of the same beliefs.</p>
<p>Luckily, it looks like others believe this to be the case too. So rather than me trying to explain this, this timely <a href="http://leantechnologytransformation.blogspot.com/2011/04/this-week-we-are-exploring-questions.html">blog</a> does a great job of explaining Agile and Lean, and why there is a lack of understanding and acceptance of Agile practices in many companies that practice Lean.</p>
<p>Also, as part of this Agile roadshow, we had a bit of a celebrity in our midst--our illustrious keynote speaker David Hussman of <a href="http://devjam.com/">DevJam</a> consulting has a past that most of us weekend musicians dream about. He was part of a big-hair metal band! Not only can he play a mean guitar, the dude knows his stuff about Agile and gave one of the best keynotes I&#8217;ve ever seen. Check out his website when you get a chance, and see if you can find him in this video.</p>
<p><span class="youtube">
<iframe title="YouTube video player" class="youtube-player" type="text/html" width="425" height="344" src="http://www.youtube.com/embed/Ll9aZkJBLKc?color1=d6d6d6&amp;color2=f0f0f0&amp;border=0&amp;fs=1&amp;hl=en&amp;autoplay=0&amp;showinfo=0&amp;iv_load_policy=3&amp;showsearch=0&amp;rel=1" frameborder="0"></iframe>
</span><p><a href="http://www.youtube.com/watch?v=Ll9aZkJBLKc">www.youtube.com/watch?v=Ll9aZkJBLKc</a></p></p>
]]></content:encoded>
			<wfw:commentRss>http://www.klocwork.com/blog/2011/04/a-rockin-agile-roadshow/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Why Android is such a developer magnet!</title>
		<link>http://www.klocwork.com/blog/2010/12/why-android-is-such-a-developer-magnet/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=why-android-is-such-a-developer-magnet</link>
		<comments>http://www.klocwork.com/blog/2010/12/why-android-is-such-a-developer-magnet/#comments</comments>
		<pubDate>Tue, 21 Dec 2010 16:14:04 +0000</pubDate>
		<dc:creator>Vahid Jozi</dc:creator>
				<category><![CDATA[Android Development]]></category>
		<category><![CDATA[Embedded]]></category>
		<category><![CDATA[General Industry]]></category>
		<category><![CDATA[J2ME development]]></category>
		<category><![CDATA[Software Career]]></category>
		<category><![CDATA[Android]]></category>
		<category><![CDATA[Gingerbread]]></category>
		<category><![CDATA[java]]></category>
		<category><![CDATA[Mobile development]]></category>

		<guid isPermaLink="false">http://www.klocwork.com/blog/?p=1184</guid>
		<description><![CDATA[The open-source, Linux-based and hardware-independent Android mobile OS, with the new Android 2.3 Gingerbread release is giving mobile developers a whole new ball court to play in. Android is the fastest growing mobile OS among its competitors and with its share in the Smartphone user market growing, Android is attracting more and more enthusiastic developers. [...]]]></description>
			<content:encoded><![CDATA[<p><br class="spacer_" /></p>
<p>The open-source, Linux-based and hardware-independent Android mobile OS, with the new <a href="http://developer.android.com/sdk/android-2.3-highlights.html">Android 2.3 Gingerbread</a> release is giving mobile developers a whole new ball court to play in. Android is the fastest growing mobile OS among its competitors and with its share in the Smartphone user market growing, Android is attracting more and more enthusiastic developers.</p>
<p>Being a Java developer I jumped right into Android development about a year ago. There is a whole list of reasons why I chose to develop Android apps over other platforms and here are some of them:</p>
<p><strong>1.    Low development costs and high returns<img src="file:///C:/Documents%20and%20Settings/vjozi/My%20Documents/My%20Pictures/Bloging/android-gingerbread-1.jpg" alt="" /><a href="http://www.klocwork.com/blog/wp-content/uploads/2010/12/android-gingerbread-1.jpg"><img class="size-full wp-image-1186 alignright" title="android-gingerbread-1" src="http://www.klocwork.com/blog/wp-content/uploads/2010/12/android-gingerbread-1.jpg" alt="" width="161" height="181" /></a></strong></p>
<p>There is almost no cost to develop an Android app. There are no required licenses, specific IDEs or limited distribution channels. You may end up spending money on development and testing expertise, use of specific app stores and the purchase test devices, but the sum of all that is still a fraction of what you would pay to develop on other popular mobile platforms.</p>
<p><strong>2.    Open and free</strong></p>
<p>The two words every developer wants to hear are ‘Open’ and ‘Free’.  Now you can have that on your mobile! This baby is license and royalty free because its underlying SDK architecture remains open source. The entire  environment is available for customization, and developers and  organizations can provide as detailed feedback as they want to the  Android development team and watch as their issues get addressed in frequent  new releases.</p>
<p><strong>3.    Various distribution channels</strong></p>
<p>Developers are not limited to the Android app market or any other channels to get their apps on consumers’ phones. Apps can be legally downloaded and installed from any unknown sources.</p>
<p><strong>4.    The good old Java</strong></p>
<p>Being Java based, Android uses a rich pool of libraries that provide extreme flexibility and room for uncapped creativity. Android&#8217;s topnotch documentation means virtually anyone with a working knowledge of Java can get Android applications off the ground.</p>
<p><strong>5.    Flash Love!</strong></p>
<p>Before Android gathered its well deserved power and popularity,  Flash was thought to be a dying technology since it wasn’t supported by  other mobile industry giants. There is obviously a ‘but’ here! The green  robot embraced flash and took mobile web surfing to a whole new level.</p>
<p><strong><a href="http://www.klocwork.com/blog/wp-content/uploads/2010/12/android_cloud.jpg"><img class="alignleft size-medium wp-image-1187" title="android_cloud" src="http://www.klocwork.com/blog/wp-content/uploads/2010/12/android_cloud-300x232.jpg" alt="" width="192" height="149" /></a>6.    A little piece of the cloud</strong></p>
<p>Android is heavily meshed with the cloud and it carries superior Google connectivity solutions. Google’s cloud tools are already soaring on the popularity list and they come right to the palms of the users&#8217; hands with Android. One can also take advantage of browser connectivity solutions for Chrome and Firefox. In addition, Android provides open Bluetooth communication, something that is missing on some other popular platforms. Versions 2.2 Froyo and later allow the phone to become a portable hotspot. Now that is cool!</p>
<p><br class="spacer_" /></p>
<p>The awesome obviously doesn&#8217;t stop here. In my next post, I&#8217;ll talk about Android 2.3 Gingerbread features and what there is for us mobile app developers to play with!</p>
<p><br class="spacer_" /></p>
<p>Happy coding!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.klocwork.com/blog/2010/12/why-android-is-such-a-developer-magnet/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Caution: New Mac User</title>
		<link>http://www.klocwork.com/blog/2010/11/caution-new-mac-user/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=caution-new-mac-user</link>
		<comments>http://www.klocwork.com/blog/2010/11/caution-new-mac-user/#comments</comments>
		<pubDate>Tue, 23 Nov 2010 19:20:18 +0000</pubDate>
		<dc:creator>Todd Landry</dc:creator>
				<category><![CDATA[General Industry]]></category>
		<category><![CDATA[Apple]]></category>
		<category><![CDATA[mac os x]]></category>

		<guid isPermaLink="false">http://www.klocwork.com/blog/?p=1144</guid>
		<description><![CDATA[With our latest product release, we have ventured into the world of Apple. Yup, our product is now officially supported on the Mac. I think I can safely say that this was not something on our roadmap a few years ago, but we recognized the trends, and now have this offering for our customers. With [...]]]></description>
			<content:encoded><![CDATA[<p>With our latest product release, we have ventured into the world of Apple. Yup, our product is now officially supported on the Mac.</p>
<p>I think I can safely say that this was not something on our roadmap a few years ago, but we recognized the <a href="http://www.klocwork.com/blog/2010/10/how-developers-eventually-get-what-they-want/">trends</a>, and now have this offering for our customers. With this support, it was determined that we needed a few more Macs in the organization, the Product Management team included. Now, I&#8217;m not sure I stepped forward, or everyone else stepped back (except me), but I ended up being the PM Mac guinea pig.</p>
<p><a href="http://www.klocwork.com/blog/wp-content/uploads/2010/11/macbook-pro11.jpg"><img class="alignright size-medium wp-image-1146" title="macbook-pro11" src="http://www.klocwork.com/blog/wp-content/uploads/2010/11/macbook-pro11-300x221.jpg" alt="" width="300" height="221" /></a></p>
<p>﻿I have been using PCs since, well for a long time, so this was definitely going to be a learning experience. Let&#8217;s say that Google and I became very good friends the first couple of weeks with my shiny new Mac.</p>
<p>In my travels, I stumbled across <a href="http://danwarne.com/mistakes-made-by-new-mac-users/">this article</a> that lists the top 30 mistakes made by new Mac users. Even though this article is a little old, it is amazing how many still apply. Here are a few that I have already qualified for:</p>
<p style="padding-left: 60px;">15. Installing a program every time they want to run it because they think the installer is the program.</p>
<p style="padding-left: 60px;">16. Where&#8217;s &#8220;the internet&#8221;? (looking for the Windows Internet Explorer &#8220;e&#8221; icon)</p>
<p style="padding-left: 60px;">19. Looking in vain for an uninstaller app, because they don&#8217;t realize that uninstalling an application on Mac is as easy as dragging the program icon into the trash.</p>
<p style="padding-left: 60px;">23. Saving everything to the desktop or somewhere on the hard drive other than their home folder</p>
<p>These are just a few of my favorites, and I&#8217;m sure I&#8217;ll fall into a few others. Someone once told me that if you need to do something on a Mac, pretend you don&#8217;t know anything about computers, and think to yourself what the easiest way might be to accomplish that task. Chances are that is how it has been implemented on the Mac (see #30 in this list). Anyone run into any other goodies that aren&#8217;t listed here?</p>
]]></content:encoded>
			<wfw:commentRss>http://www.klocwork.com/blog/2010/11/caution-new-mac-user/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>How developers (eventually) get what they want</title>
		<link>http://www.klocwork.com/blog/2010/10/how-developers-eventually-get-what-they-want/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=how-developers-eventually-get-what-they-want</link>
		<comments>http://www.klocwork.com/blog/2010/10/how-developers-eventually-get-what-they-want/#comments</comments>
		<pubDate>Tue, 12 Oct 2010 19:35:20 +0000</pubDate>
		<dc:creator>Mike Laginski</dc:creator>
				<category><![CDATA[General Coding]]></category>
		<category><![CDATA[General Industry]]></category>
		<category><![CDATA[development organizations]]></category>
		<category><![CDATA[mac os x]]></category>

		<guid isPermaLink="false">http://www.klocwork.com/blog/?p=1103</guid>
		<description><![CDATA[It started with the iPod and slowly but systematically gained momentum. A few years ago, I asked a developer-friend how he decides whether he&#8217;ll buy a dev tool or not. He responded somewhat tongue in cheek with, “I will download the tool, play with it and then decide if I would rather spend my money [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.klocwork.com/blog/wp-content/uploads/2010/10/blog-mac-devs-wanted.png"><img class="alignright size-medium wp-image-1104" title="Apple Macintosh Developers in the enterprise" src="http://www.klocwork.com/blog/wp-content/uploads/2010/10/blog-mac-devs-wanted-300x168.png" alt="" width="300" height="168" /></a></p>
<p>It started with the iPod and slowly but systematically gained momentum.</p>
<p>A few years ago, I asked a developer-friend how he decides whether he&#8217;ll buy a dev tool or not.  He responded somewhat tongue in cheek with, “I will download the tool, play with it and then decide if I would rather spend my money on the latest iPod or the dev tool.”  Maybe this is a bit of an edge case, but it speaks to the thought process that goes into the individual developer&#8217;s personal workspace design.</p>
<p>For anyone who thinks it&#8217;s not all about the developer, think again!</p>
<p>We noticed a trend developing a couple of years ago in some of our largest accounts. A  few very small teams in a handful of accounts asked us about our plans to support Mac. When we spoke to the central teams within those accounts about the priority of Mac OS X as a supported environment, it was initially downplayed as a requirement from a few “special project teams.” They reiterated that their corporate development environment continued to be Windows and/or Unix/Linux.</p>
<p>Think again. Like most wars developers decide to fight, they are winning this war as well.</p>
<p>Many of our major accounts now have, or are planning, a significant Mac presence in their development organizations. Apple may say they are not targeting the enterprise, but it is clear the enterprise is targeting Apple. Tim Cook, COO of Apple, made a comment to the analysts in July that 80% of the Fortune 100 are deploying the iPhone, and 50% of the Fortune 100 are testing or have begun deploying the iPad. I bet the same is happening with the Mac.  From executives to developers to marketing personnel, the Mac is gaining momentum in the enterprise. For this trend to continue, there are some enterprise-friendly enhancements necessary for the Mac to be a true corporate citizen, but I have found tools like Parallels and VMWare serve as a viable backup plan when total Mac native mode doesn’t cut it.</p>
<p>As the old saying goes, “the proof is in the pudding.” In my opinion, no saying is more apropos, given the prior attitude many technically savvy people had towards Mac.  They seemed to universally describe it as, well, a toy! Sure it does useful stuff, but any serious computer user will stick with Windows or Unix. Well, the times they are a-changin&#8217; (since we&#8217;re on a cliché kick, I couldn’t resist some classic Bob Dylan).   Several developers I know who once spurned the Mac have quietly added the Mac to their day-to-day development activity.  You can argue all you want about whether Mac has critical mass in the enterprise developer world.  We are not.  We are simply listening to our customers, and as a result we are launching Mac support this month.</p>
<p>Developer needs are constantly changing, but one constant always seems to be that developers quietly find a way to get what they want to do their job.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.klocwork.com/blog/2010/10/how-developers-eventually-get-what-they-want/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Recruiting software developers remotely: a cautionary tale… (part one)</title>
		<link>http://www.klocwork.com/blog/2010/09/recruiting-software-developers-remotely-a-cautionary-tale%e2%80%a6-part-one/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=recruiting-software-developers-remotely-a-cautionary-tale%25e2%2580%25a6-part-one</link>
		<comments>http://www.klocwork.com/blog/2010/09/recruiting-software-developers-remotely-a-cautionary-tale%e2%80%a6-part-one/#comments</comments>
		<pubDate>Thu, 16 Sep 2010 19:52:22 +0000</pubDate>
		<dc:creator>Carolyn Perkins</dc:creator>
				<category><![CDATA[General Industry]]></category>
		<category><![CDATA[Software Career]]></category>
		<category><![CDATA[careers]]></category>
		<category><![CDATA[job description]]></category>
		<category><![CDATA[technical positions]]></category>

		<guid isPermaLink="false">http://www.klocwork.com/blog/?p=1085</guid>
		<description><![CDATA[There have been a number of stories about internet dating gone bad lately.  One regularly hears stories about how people misrepresent themselves on dating websites; use old pictures, or even someone else’s pictures to lure unsuspecting love interests in. These type of experiences are not limited to those seeking love…it also happens to those seeking [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.klocwork.com/blog/wp-content/uploads/2010/09/hr-animal.png"><img class="alignright size-medium wp-image-1087" style="margin-left: 10px; margin-bottom: 10px;" title="Next HR remote candidate" src="http://www.klocwork.com/blog/wp-content/uploads/2010/09/hr-animal-300x228.png" alt="" width="300" height="228" /></a></p>
<p>There have been a number of stories about internet dating gone bad lately.  One regularly hears stories about how people misrepresent themselves on dating websites; use old pictures, or even someone else’s pictures to lure unsuspecting love interests in.</p>
<p>These type of experiences are not limited to those seeking love…it also happens to those seeking a job, or those seeking an employee.  Technology is a wonderful thing but should never be used in place of the good old face to face meeting that must happen in the recruiting process (and in the love match process) .  I made a rookie mistake way back at the start of my career that reinforced this for me.   I was working for a high tech company that shall remain nameless, as I was not the only idiotic one in this story and I must protect those who are not as forthcoming about their idiocy.  We were looking for a developer, and the search was not going well.  Finally, we came across a resume from an individual, and it looked quite impressive.  As the individual lived in a different city, we set up a phone call for the interview.  It went well enough for us to want to have a technical interview with the individual, so in the interests of saving time and money, we also set that up by phone.  I am not sure I would have been able to tell there was anything amiss if I had been on that call, but in hindsight, I should have at least placed the call, or sat through a few minutes of it.  The technical interview went very well.  Then… we made our big error in judgement, we extended an offer without having laid eyes on the person, the offer included relocation costs.</p>
<p>Within 2 hours of the person starting, the hiring manager came to me in a panic.  Apparently, she was quite certain that this was not the same person she had interviewed over the phone…this became blatantly obvious as time went on.   We are still  not entirely sure what happened but we suspect the candidate had someone else do the technical interview for him…and since it was over the phone, we had no way of knowing.  Needless to say, the new employee did not stay an employee for very long and I learned a very valuable lesson.</p>
<p>This goes both ways…it is worth the trip to check out an employer face to face.  I have no doubt that candidates have been wooed by companies that were far less than they appeared and had a face to face meeting at the company’s site been conducted, lots of relevant and valuable information would have been gathered.  Do your due diligence in looking for a job, don’t accept what a recruiter says at face value, there are some wonderful jokes about recruiters and I will share one in my next blog.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.klocwork.com/blog/2010/09/recruiting-software-developers-remotely-a-cautionary-tale%e2%80%a6-part-one/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Get a (tool-selection) plan, Stan</title>
		<link>http://www.klocwork.com/blog/2010/07/get-a-tool-selection-plan-stan/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=get-a-tool-selection-plan-stan</link>
		<comments>http://www.klocwork.com/blog/2010/07/get-a-tool-selection-plan-stan/#comments</comments>
		<pubDate>Tue, 27 Jul 2010 15:00:50 +0000</pubDate>
		<dc:creator>Patti Murphy</dc:creator>
				<category><![CDATA[General Industry]]></category>
		<category><![CDATA[source code analysis]]></category>
		<category><![CDATA[tool selection]]></category>

		<guid isPermaLink="false">http://www.klocwork.com/blog/?p=1027</guid>
		<description><![CDATA[Today, Mark Grice is in a better mood. The last time I spoke to the Klocwork Director and Manager of the International Reseller/Partner Network, he outlined 7 habits of highly ineffective Source Code Analysis (SCA) tool selection. Among those terrible habits, he described an SCA tool-selection process that involved endless feature comparisons and massive checklists [...]]]></description>
			<content:encoded><![CDATA[<p><div id="attachment_1033" class="wp-caption alignright" style="width: 226px"><a href="http://www.klocwork.com/blog/wp-content/uploads/2010/07/Lotus_edit1.jpg"><img class="size-full wp-image-1033 " title="Lotus_edit" src="http://www.klocwork.com/blog/wp-content/uploads/2010/07/Lotus_edit1.jpg" alt="" width="216" height="189" /></a><p class="wp-caption-text">Mark Grice in a more peaceful moment. </p></div>Today, Mark Grice is in a better mood.</p>
<p>The last time I spoke to the Klocwork Director and Manager of the International Reseller/Partner Network, he outlined <a href="http://www.klocwork.com/blog/2010/06/7-habits-of-highly-ineffective-sourc-code-analysis/">7 habits of highly ineffective Source Code Analysis (SCA) tool selection</a>.</p>
<p>Among those terrible habits, he described an SCA tool-selection process that involved endless feature comparisons and massive checklists of irrelevant requirements.</p>
<p>His head  almost exploded, but on this day our SCA guru was calmer.  Clearly, he&#8217;s been using relaxation techniques or drinking some of the good stuff, like acai juice.</p>
<p style="text-align: left;">According to Grice, successful SCA tool adoption involves three key steps:</p>
<ol>
<li>Involve your developers in the process.<br />
 “Developers understand what their requirements are,” Grice says. “And that means your selection criteria will be more realistic and achievable, and it will focus on what&#8217;s relevant to the organization’s software and environment. Developers are also best equipped to assess the SCA results.”</li>
<li>Limit your selection to market-leading tools with the functionality relevant to your software needs.<br />
 “For example, if MISRA compliance is something you care about, then make that part of your selection criteria,” he says.</li>
<li>Have a game plan with a path and a defined end. Work toward a goal that’s realistic—spend enough time, but not forever, finding the tool (or tools) you need.<br />
 “Have a good idea of what will constitute success, and be prepared to make a decision and move on,” Grice says. “Avoid paralysis analysis—unless your goal is to just waste time and money and contribute nothing to improving your software.”</li>
</ol>
<p style="padding-left: 30px;">That’s it for today. Grice is off to yoga class (um, or a pub). Stayed tuned for the next post in this series&#8211;How smart companies adopt SCA tools.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.klocwork.com/blog/2010/07/get-a-tool-selection-plan-stan/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>I have the software skills; I had a decent interview; why didn’t I get the job?</title>
		<link>http://www.klocwork.com/blog/2010/07/i-have-the-software-skills-i-had-a-decent-interview-why-didn%e2%80%99t-i-get-the-job/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=i-have-the-software-skills-i-had-a-decent-interview-why-didn%25e2%2580%2599t-i-get-the-job</link>
		<comments>http://www.klocwork.com/blog/2010/07/i-have-the-software-skills-i-had-a-decent-interview-why-didn%e2%80%99t-i-get-the-job/#comments</comments>
		<pubDate>Tue, 13 Jul 2010 15:26:37 +0000</pubDate>
		<dc:creator>Carolyn Perkins</dc:creator>
				<category><![CDATA[General Coding]]></category>
		<category><![CDATA[General Industry]]></category>
		<category><![CDATA[Software Career]]></category>
		<category><![CDATA[communication]]></category>
		<category><![CDATA[programming]]></category>
		<category><![CDATA[software development]]></category>

		<guid isPermaLink="false">http://www.klocwork.com/blog/?p=1023</guid>
		<description><![CDATA[People who do not get hired after an interview second guess themselves; they look for concrete reasons as to why they were not hired for that particular job.  They might justify it by saying the company sucked, the interviewer was an HR douchebag, the hiring manager did not know their stuff.  Of course, they may [...]]]></description>
			<content:encoded><![CDATA[<p><br class="spacer_" /></p>
<div class="wp-caption alignleft" style="width: 268px"><a href="http://www.ibiblio.org/Dave/Dr-Fun/inline/thumbs/tn20040419.jpg"><img style="margin-right: 10px;" title="It was a mistake for Eric to wear a t-shirt to his job interview, and it was a bigger mistake to wear that particular t-shirt. " src="http://www.ibiblio.org/Dave/Dr-Fun/inline/thumbs/tn20040419.jpg" alt="" width="258" height="190" /></a><p class="wp-caption-text">It was a mistake for Eric to wear a t-shirt to his job interview, and it was a bigger mistake to wear that particular t-shirt. </p></div>
<p><br class="spacer_" /></p>
<p>People who do not get hired after an interview second guess themselves; they look for concrete reasons as to why they were not hired for that particular job.  They might justify it by saying the company sucked, the interviewer was an HR douchebag, the hiring manager did not know their stuff.  Of course, they may be correct in passing these judgments, however, chances are there simply was a mismatch between the person interviewing and the company.  When this happens, count your blessings that the people doing the interviewing for the company knew that.  Being brought into a company that is a mismatch with your values and attitudes can impact everything you do, not to mention, make you downright miserable.</p>
<p>An interview is an opportunity for you to interview the company…to find out if you like them.  It is not just about sitting in front of some scary people and answering the questions they fire at you.   For most people, interviews are not pleasant experiences.  However, they are an evil necessity, until a more effective way of assessing people is invented.  And this brings me to the point of this blog…how the hell do you get through an interview?</p>
<ol>
<li>Be prepared, know the names of the interviewers, know the company business and feel free to bring in notes.  It is entirely reasonable to request more information from the company representative setting up the interview.</li>
<li>Appear enthusiastic and interested (but not so much that you are confused with a salesperson!).</li>
<li>Dress appropriately.  This generally means clean trousers and a shirt with a collar, maybe a tie for the men, a clean skirt and a blouse for the women. </li>
<li>Answer the questions, and if you do not know the answer, let the interviewer know with the promise to get back to them.</li>
<li>ASK QUESTIONS…find out enough information to determine whether you want to be an employee.</li>
<li>Finally, follow up…if you like what you heard during the interview.  Just an e-mail will suffice, and believe me that will set you apart from 90% of the candidates.</li>
</ol>
]]></content:encoded>
			<wfw:commentRss>http://www.klocwork.com/blog/2010/07/i-have-the-software-skills-i-had-a-decent-interview-why-didn%e2%80%99t-i-get-the-job/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>How not to submit your software developer resume&#8230;</title>
		<link>http://www.klocwork.com/blog/2010/06/how-not-to-submit-your-resume-2/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=how-not-to-submit-your-resume-2</link>
		<comments>http://www.klocwork.com/blog/2010/06/how-not-to-submit-your-resume-2/#comments</comments>
		<pubDate>Tue, 22 Jun 2010 15:57:54 +0000</pubDate>
		<dc:creator>Carolyn Perkins</dc:creator>
				<category><![CDATA[General Coding]]></category>
		<category><![CDATA[General Industry]]></category>
		<category><![CDATA[Software Career]]></category>
		<category><![CDATA[careers]]></category>
		<category><![CDATA[software development]]></category>

		<guid isPermaLink="false">http://www.klocwork.com/blog/?p=990</guid>
		<description><![CDATA[I like developers. I have spent a career hiring, motivating, confusing, annoying and retaining developers.  I am not going to go so far as to say I understand you guys, but I do know what makes a good developer.  More importantly, I know what makes someone a bad fit for the team I am recruiting [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.klocwork.com/blog/wp-content/uploads/2010/06/my-resume.png"><img class="size-medium wp-image-1007 alignright" style="margin-left: 20px;" title="How not to write a developer resume" src="http://www.klocwork.com/blog/wp-content/uploads/2010/06/my-resume-300x193.png" alt="" width="240" height="154" /></a>I like developers.</p>
<p>I have spent a career hiring, motivating, confusing, annoying and retaining developers.  I am not going to go so far as to say I understand you guys, but I do know what makes a good developer.  More importantly, I know what makes someone a bad fit for the team I am recruiting for.</p>
<p>First impressions are important. Yeah, I know, it sucks and your technical prowess should speak for itself, but it doesn’t.  Let’s face it, if you forget the &#8220;L&#8221; in Klocwork in your cover letter, I&#8217;m laughing too hard to pay attention to your superior coding skills.</p>
<p>If you continually refer to me as “Sir”, my feminist nose gets a bit out of joint; resumes filled with spelling errors throw into question your attention to detail and your level of concern for putting forth solid code.</p>
<p>While I am on the subject of resumes, it&#8217;s very impressive that people have the experience to fill up 15 pages of a resume. Maybe it&#8217;s even impressive that they have the time to type out a 15-page resume, but no one else has the time or the inclination to read a 15-page resume.  To date, the record length for a resume that I have received is 25 pages – this person is not employed here.</p>
<p>Being in this industry and in HR for as long as I have, I have learned something shocking – people stretch the truth on their resumes!  Imagine that!  And then imagine a company having the audacity to have someone in for an interview and test the person to assess whether what they claim on their resume is actually the case.  Of course, as a candidate, you should then take great offense to the fact that my colleagues and I called into question your integrity, your intelligence, and your worth as a citizen of the world.  In fact, you should probably follow up your interview with a strongly worded e-mail addressed to Sir at Kocwork.  Or maybe you shouldn’t.</p>
<p>Just…don’t…do…that.   We are not attacking your credibility. We do not enter the interview room thinking you are a lying, worthless waste of skin. In fact, we are pretty excited to meet you, so far we have liked what we have seen, otherwise you would not be here.</p>
<p>We will remain excited to meet you, right up to the point where you show up half an hour late, wearing a questionable outfit covered with what appears to be last week’s Sunday dinner.  Maybe you will look me in the eye, or maybe you will direct your eyes to my chest and keep them fixed there throughout the interview.  When that happens I like to observe where your eyes remain clamped when my male coworkers are interviewing you because inevitably it has nothing to do with what is on the interviewer’s chest. It&#8217;s just a convenient place to rest one’s gaze.  However,  between you and me, it kinda freaks me out.</p>
<p>I found this blog to be rather cathartic. I have more, so much more and if I am invited back as a guest blogger, maybe my therapy bills will go down.  Until we meet across a table in our interview room, I wish you good luck and good code!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.klocwork.com/blog/2010/06/how-not-to-submit-your-resume-2/feed/</wfw:commentRss>
		<slash:comments>16</slash:comments>
		</item>
		<item>
		<title>The Alphabet Soup of Software Security Guidelines</title>
		<link>http://www.klocwork.com/blog/2010/06/the-alphabet-soup-of-software-security-guidelines/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=the-alphabet-soup-of-software-security-guidelines</link>
		<comments>http://www.klocwork.com/blog/2010/06/the-alphabet-soup-of-software-security-guidelines/#comments</comments>
		<pubDate>Tue, 15 Jun 2010 13:48:33 +0000</pubDate>
		<dc:creator>Todd Landry</dc:creator>
				<category><![CDATA[Compliance]]></category>
		<category><![CDATA[General Coding]]></category>
		<category><![CDATA[General Industry]]></category>
		<category><![CDATA[Software Security]]></category>
		<category><![CDATA[software development]]></category>
		<category><![CDATA[software security]]></category>

		<guid isPermaLink="false">http://www.klocwork.com/blog/?p=1001</guid>
		<description><![CDATA[With the recent story that the iPad has inherent security vulnerabilities, I thought it might be an appropriate time to delve into the world of software security guidelines&#8230;but I must warn you, this blog will contain an abnormal amount of acronyms, and may not be suitable for all audiences. When talking about software security guidelines, [...]]]></description>
			<content:encoded><![CDATA[<p>With the recent <a href="http://www.techeye.net/hardware/ipad-has-another-security-flaw-says-hacker-group">story</a> that the iPad has inherent security vulnerabilities, I thought it might be an appropriate time to delve into the world of software security guidelines&#8230;but I must warn you, this blog will contain an abnormal amount of <a href="http://codyfrew.wordpress.com/2007/06/29/acronyms-friends-or-foes/">acronyms</a>, and may not be suitable for all audiences.<a href="http://www.klocwork.com/blog/wp-content/uploads/2010/06/soup.jpg"><img class="alignright size-medium wp-image-1002" title="soup" src="http://www.klocwork.com/blog/wp-content/uploads/2010/06/soup-300x189.jpg" alt="" width="300" height="189" /></a></p>
<p>When talking about software security guidelines, there are really 5 or 6 organizations that are leading the charge, and they include:</p>
<p>-          OWASP</p>
<p>-          SANS Institute</p>
<p>-          MITRE</p>
<p>-          PCI Security Standards Council</p>
<p>-          SEI</p>
<p>Let’s first look at <a href="http://www.owasp.org/index.php/Main_Page">OWASP</a>. OWASP stands for Open Web Application Security Project, which is a not-for-profit charitable organization that is focused on improving the security of application software. They are probably best known for their Top 10 lists from 2004, 2007, and most recently <a href="http://www.owasp.org/index.php/Category:OWASP_Top_Ten_Project">2010</a>.</p>
<p>Next is the <a href="http://www.sans.org/">SANS Institute</a>. SANS of course is a FLA that stands for SysAdmin, Audit, Networking, Security. The SANS Institute claims to be the most trusted source for computer security training, certification and research, and have been developing and releasing their <a href="http://www.sans.org/top-cyber-security-risks/">Top 20 </a>annually for the past 7 years or so.</p>
<p>The <a href="http://www.mitre.org/">MITRE Corporation </a>is a not-for-profit organization that was founded in the late 50’s, and has over 7,000 very smart dudes (65% have Masters or PhDs). MITRE has come up with their own security guideline as well, that is the <a href="http://cwe.mitre.org/">CWE </a>(Common Weakness Enumeration) and it provides a common language of discourse for discussing, finding and dealing with the causes of software security vulnerabilities as they are found in code, design, or system architecture. The CWE lists over 800 programming errors, design errors, and architectural errors that can lead to exploitable vulnerabilities. Interestingly, MITRE and SANS decided to collaborate to come up with the <a href="http://cwe.mitre.org/top25/">CWE Top 25</a>, yet another “Top” list they have been putting together for the last couple of years.</p>
<p>The <a href="https://www.pcisecuritystandards.org/index.shtml">PCI Security Standards Council </a>was founded by American Express, Discover Financial Services, JCB International, MasterCard Worldwide, and Visa, Inc. and is an open global forum for the ongoing development, enhancement, storage, dissemination and implementation of security standards for account data protection. The PCI SSC has come up with the <a href="https://www.pcisecuritystandards.org/security_standards/pci_dss.shtml">PCI DSS</a>, “a multifaceted security standard that includes requirements for security management, policies, procedures, network architecture, software design and other critical protective measures. This comprehensive standard is intended to help organizations proactively protect customer account data”.</p>
<p>Finally, there is the <a href="http://www.sei.cmu.edu/">SEI </a>(the Software Engineering Institute, which is a federally funded R&amp;D center at CMU, aka Carnegie Mellon University). The SEI is home to <a href="http://www.cert.org/">CERT </a>which was established in 1988 to address internet security problems and to find ways to reduce the number and impact of security breaches. CERT focuses on protection, detection, and response to attacks on networked computer systems. Surprisingly enough, CERT is not actually an acronym.</p>
<p>Neither PCI nor CERT has received the memo yet that in order to be cool, you have to have a “Top X” list&#8230;perhaps next year?</p>
<p>Now, not to be left out of the fun, the NCSD (National Cyber Security Division) of the DHS (Department of Homeland Security) has their own strategic initiative called BSI (Build Security In). The NCSD obviously wants to cover pretty much all the bases since, in addition to their own <a href="https://buildsecurityin.us-cert.gov/bsi/home.html">BSI</a>, they also sponsor pretty much all of the other guidelines.</p>
<p>I would be remiss if I didn&#8217;t at least acknowledge a few other notables with respect to software security guidelines, and to make it more interesting, I will only provide the acronym. I challenge you to come up with the full name. So, a few others involved in security guidelines are NIST (who run a project called SAMATE, and also run an event called SATE, which BTW is also sponsored by DHS NCSD), WASC, and finally STIG. For fun, I’ll throw in CVE, even though it is not a guideline, but more of a dictionary or list that was put together by MITRE, and shockingly is sponsored by DHS NCSD. I&#8217;m starting to think that DHS wants to be everyone&#8217;s BFF.</p>
<p>Hopefully you’ve learned a little more about the alphabet soup of security guidelines out there. If you&#8217;re scratching your head thinking WTF, you&#8217;re probably not alone&#8230;</p>
]]></content:encoded>
			<wfw:commentRss>http://www.klocwork.com/blog/2010/06/the-alphabet-soup-of-software-security-guidelines/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>How developers communicate. Not (using social media)!</title>
		<link>http://www.klocwork.com/blog/2010/06/how-developers-communicate-not-using-social-media/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=how-developers-communicate-not-using-social-media</link>
		<comments>http://www.klocwork.com/blog/2010/06/how-developers-communicate-not-using-social-media/#comments</comments>
		<pubDate>Tue, 08 Jun 2010 21:23:27 +0000</pubDate>
		<dc:creator>Eric Hollebone</dc:creator>
				<category><![CDATA[General Coding]]></category>
		<category><![CDATA[General Industry]]></category>
		<category><![CDATA[communication]]></category>
		<category><![CDATA[social media]]></category>
		<category><![CDATA[software development]]></category>

		<guid isPermaLink="false">http://www.klocwork.com/blog/?p=988</guid>
		<description><![CDATA[So a while back, I explored where developers get their information.  Surprisingly, it is hard to find hard data on the subject.  As a bonus from a Forrester study commissioned by Klocwork into the habits of code review, part of  the data revealed developers&#8217; use of social media tools.  When asked directly about their use of these tools [...]]]></description>
			<content:encoded><![CDATA[<p>So a while back, I explored where <a href="http://www.klocwork.com/blog/2009/08/so-where-do-you-get-your-information/">developers get their information</a>.  Surprisingly, it is hard to find hard data on the subject.  As a bonus from a Forrester study commissioned by Klocwork into the habits of <a title="Code Review - a modern approach" href="http://www.klocwork.com/resources/code-review/" target="_blank">code review</a>, part of  the data revealed developers&#8217; use of social media tools.  When asked directly about their use of these tools to communicate with other developers, the majority polled would not choose a social media channel.</p>
<p style="text-align: center;"><a href="http://www.klocwork.com/blog/wp-content/uploads/2010/06/klocwork-social-media-developer-usage.png"><img class="aligncenter size-medium wp-image-992" title="Software developer usage of social media" src="http://www.klocwork.com/blog/wp-content/uploads/2010/06/klocwork-social-media-developer-usage.png" alt="Software developer social media usage for communications with other developers" width="500" height="361" /></a></p>
<p>It just goes to show that yet again, software developers are a breed apart.  As an aside, as I was researching this topic, I found an interesting post on why <a href="http://www.noop.nl/2009/05/social-media-experts-are-poets-software-developers-are-novelists.html" target="_blank">Social Media Experts are poets, Software developers are novelist</a> that delves into ideas on barrier-of-entry as related to quality-perception of creative tasks.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.klocwork.com/blog/2010/06/how-developers-communicate-not-using-social-media/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Why don&#8217;t developers want the latest toys?</title>
		<link>http://www.klocwork.com/blog/2010/05/why-dont-developers-want-the-latest-toys/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=why-dont-developers-want-the-latest-toys</link>
		<comments>http://www.klocwork.com/blog/2010/05/why-dont-developers-want-the-latest-toys/#comments</comments>
		<pubDate>Tue, 25 May 2010 21:05:11 +0000</pubDate>
		<dc:creator>Gwyn Fisher</dc:creator>
				<category><![CDATA[General Coding]]></category>
		<category><![CDATA[General Industry]]></category>
		<category><![CDATA[software development]]></category>

		<guid isPermaLink="false">http://www.klocwork.com/blog/?p=978</guid>
		<description><![CDATA[There’s a tradition in R&#38;D management that goes something like this: “give them toys and they’ll be happy.” Typically this has meant the biggest monitors, or the fastest CPUs, or an egregiously unnecessary SLI GPU configuration (for, ahem, high capacity computation tasks, right…), or whatever the latest piece of hardware might be that catches the [...]]]></description>
			<content:encoded><![CDATA[<p>There’s a tradition in R&amp;D management that goes something like this: “give them toys and they’ll be happy.” Typically this has meant the biggest monitors, or the fastest CPUs, or an egregiously unnecessary SLI GPU configuration (for, ahem, high capacity computation tasks, right…), or whatever the latest piece of hardware might be that catches the purchasing manager&#8217;s eye.</p>
<p>But what about the software on that hardware? Sure, we equip people with an IDE (if they’ll use it, or whatever text editor they demand if they won’t) and whatever other tools are mandated as part of their development lifecycle. In fact, typical managers would dearly love to be able to mandate more tools for their developers. It’s easy, after all, for a manager to make the correlation that more toys = happy developer = more productivity = more code = bigger bonus = happy manager.</p>
<p>So why do so many developers, particularly in the embedded space, use outdated software tools? What’s the excuse, after all, for vi or some close derivative being a dominant code editor?</p>
<p>Inverse snobbery has been a popular theme in the privileged parts of the world for much of the last thirty years. “Yes, we drive a Lada because we just don’t believe that a BMW is necessary.” Really? Does anybody actually believe that tripe? I mean, I can well believe “I use vi because I have to; it’s the only editor that works on this cruddy piece of hardware.” But forgive me if I have a hard time with “I use vi because I like it better than anything else.” We all get used to stuff that makes no real sense, but surely there’s a point where even the most inverted technical snob has to look themselves in the mirror and know, deep in their darkest most hidden-away recesses of existential reality, that they’re just full of it.</p>
<p>Intransigence. Inertia. Feet dug in harder than you could possibly shift in a lifetime. Call it what you will, but unless something life-changing, like a project in a new language happens, many developers have a nasty habit of sticking with what they know. “What we do is hard enough,” goes the meme, “we don’t need to make it any worse.”</p>
<p>So how are those same developers coping with the demands of the ever-increasing footprint that is professional development? After all, it’s not enough anymore to simply bang out some code and check it in, moving on to the next assignment and hoping nobody notices. Now the professional developer is tasked with unit testing, performance testing, static analysis, memory profiling, code review, refactoring for maintenance, architectural cohesion, you name it. The list only ever gets longer as we move the goal posts for QA closer and closer to the consumer, requiring the developer to pick up the slack in the interim.</p>
<p>How does that footprint get coverage? There are still the same number of hours in the day, and the required amount of code generated by each developer hasn’t markedly decreased over the last 10 years. So what gives? One thing’s for sure… vi hasn’t made developer productivity much better than when it was first written at Berkley all those years ago (with all due deference to the strides made by vim/gvim in recent years).</p>
<p>I’m going to examine several different communities in upcoming posts and look at the approach they take to solving this problem, covering a range of backgrounds and roles from embedded driver writers to creators of modern web applications. In the meantime, have a look inside yourself and, if you pass muster as some analog of the crusty vi user I paint above, ask yourself why, and what might make you change. Recent history abounds with case studies, some of which I’ll reference, but at the end of the day it’s all about you and your personal work practice.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.klocwork.com/blog/2010/05/why-dont-developers-want-the-latest-toys/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>ESC SJ 2010 &#8211; Optimism, Tools for small codebases and MISRA</title>
		<link>http://www.klocwork.com/blog/2010/05/esc-sj-2010-trends-optimism-tools-for-small-codebases-misra/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=esc-sj-2010-trends-optimism-tools-for-small-codebases-misra</link>
		<comments>http://www.klocwork.com/blog/2010/05/esc-sj-2010-trends-optimism-tools-for-small-codebases-misra/#comments</comments>
		<pubDate>Wed, 05 May 2010 13:20:51 +0000</pubDate>
		<dc:creator>Eric Hollebone</dc:creator>
				<category><![CDATA[General Coding]]></category>
		<category><![CDATA[General Industry]]></category>
		<category><![CDATA[Static Analysis]]></category>
		<category><![CDATA[coding standards]]></category>
		<category><![CDATA[MISRA]]></category>

		<guid isPermaLink="false">http://www.klocwork.com/blog/?p=961</guid>
		<description><![CDATA[I just got back from a visit to the Valley and had an awesome week in San Jose/San Fran.  I even had time to play a bit of the tourist this time (I ran the Golden Gate bridge/Presidio).  All that was fun, but what I always enjoy is the conversations we had with customers and prospects at [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.klocwork.com/blog/wp-content/uploads/2010/05/golden-gate-bridge-9.jpg"><img class="alignleft size-medium wp-image-962" style="margin-right: 10px; margin-left: 10px; margin-top: 0px; margin-bottom: 0px; border: 10px solid white;" title="San Francisco - Presidio - Golden Gate Bridge" src="http://www.klocwork.com/blog/wp-content/uploads/2010/05/golden-gate-bridge-9-300x199.jpg" alt="" width="210" height="139" /></a>I just got back from a visit to the Valley and had an awesome week in San Jose/San Fran.  I even had time to play a bit of the tourist this time (I ran the <a href="http://en.wikipedia.org/wiki/Presidio_of_San_Francisco">Golden Gate bridge/Presidio</a>).  All that was fun, but what I always enjoy is the conversations we had with customers and prospects at this year&#8217;s <a href="http://esc-sv09.techinsightsevents.com/">ESC SJ 2010</a> conference.</p>
<p>It is always interesting listening to their successes and teasing out the trending topics and new issues that matter to development teams.  Here are the top three themes that caught my ear this year:</p>
<ol>
<li>The economic rebound is well underway, with growth and optimism from every quarter.  It may be too early to see results on the balance sheets, but the positive attitude is back.</li>
<li>Embedded developers are searching for enterprise-class developer productivity tools, like <a title="Static analysis tools" href="http://www.klocwork.com/products/insight/klocwork-truepath/" target="_blank">static analysis</a>, for even tiny codebases (less than 40 kLOC).</li>
<li>By far, the most-often raised topic in one-on-one conversations was coding standards, with<a title="MISRA C/C++ coding standards" href="http://www.klocwork.com/solutions/misra-coding-standards/" target="_blank"> MISRA C and C++</a> as the favorite.  MISRA&#8217;s time has definitely arrived for the embedded community.</li>
</ol>
<p>So all in all, a great time, and looking forward to next year.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.klocwork.com/blog/2010/05/esc-sj-2010-trends-optimism-tools-for-small-codebases-misra/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Everything IS big in Texas</title>
		<link>http://www.klocwork.com/blog/2010/03/everything-is-big-in-texas/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=everything-is-big-in-texas</link>
		<comments>http://www.klocwork.com/blog/2010/03/everything-is-big-in-texas/#comments</comments>
		<pubDate>Thu, 11 Mar 2010 13:20:40 +0000</pubDate>
		<dc:creator>Todd Landry</dc:creator>
				<category><![CDATA[Agile Development]]></category>
		<category><![CDATA[General Industry]]></category>
		<category><![CDATA[agile]]></category>
		<category><![CDATA[scrum]]></category>
		<category><![CDATA[software development]]></category>

		<guid isPermaLink="false">http://www.klocwork.com/blog/?p=931</guid>
		<description><![CDATA[As I write this, I&#8217;m sitting at the Dallas airport, suffering through a 3 hour delay on my flight to Washington D.C. to present at our 2nd Agile in Action Roadshow with our friends from Electric Cloud, Perforce, and VersionOne. As I have the time, I&#8217;ve been reflecting on my time here in Dallas, and [...]]]></description>
			<content:encoded><![CDATA[<p>As I write this, I&#8217;m sitting at the Dallas airport, suffering through a 3 hour delay on my flight to Washington D.C. to present at our 2nd <a href="http://www.electric-cloud.com/lp/road-show_TX030910-KW.php">Agile in Action Roadshow </a>with our friends from <a href="http://www.electric-cloud.com/">Electric Cloud</a>, <a href="http://www.perforce.com/">Perforce</a>, and <a href="http://www.versionone.com/">VersionOne</a>. As I have the time, I&#8217;ve been reflecting on my time here in Dallas, and the phrase &#8220;Everything is big in Texas&#8221; is bang on. Before I get to that though, I have to say that I do love Dallas&#8230;I&#8217;m not totally sure, but I truly believe I&#8217;m treated a little more special because of my last name (which I <em>casually </em>mention whenever<a href="http://www.klocwork.com/blog/wp-content/uploads/2010/03/yukon.jpg"><img class="alignright size-medium wp-image-932" title="yukon" src="http://www.klocwork.com/blog/wp-content/uploads/2010/03/yukon-300x225.jpg" alt="" width="210" height="158" /></a> I get the chance). Nothing like having the same surname as a famous <a href="http://en.wikipedia.org/wiki/Tom_Landry">coach </a>from the Dallas Cowboys!</p>
<p>Okay, so why do I think the Everything is big in Texas is accurate. For starters, my big delay is due to a big thunderstorm. My rental car preference is a Compact car, and what do I get? A Yukon&#8230;I&#8217;m not sure what is bigger, this vehicle, or the Canadian Territory with the same name.</p>
<p>I saw big hair, big hats, big rings, big belt buckles, big omelets, big waffles, and big enchiladas. What I also saw was a big enthusiasm for Agile development. We had a great turnout that was fully engaged from the instant the roadshow began, asking questions wanting to know more, sharing their experiences with others, visiting with the vendors and not leaving until they got the information they needed. I wrote a few weeks ago about <a title="Agile Adoption" href="http://www.klocwork.com/blog/2010/02/agile-adoption-an-update/" target="_blank">Agile adoption</a> and where it currently was, and participating in this event, and speaking with the attendees, it allowed me to gain some additional data points that only strengthened my beliefs on this&#8230;Agile is definitely growing, and in all industries. As I said before, I truly believe almost all organizations have some Agile developments teams.</p>
<p><a href="http://www.klocwork.com/blog/wp-content/uploads/2010/03/dallas.jpg"><img class="alignleft size-medium wp-image-933" title="dallas" src="http://www.klocwork.com/blog/wp-content/uploads/2010/03/dallas-300x225.jpg" alt="" width="300" height="225" /></a></p>
<p>Hopefully the enthusiasm I encountered in Dallas will follow us to Washington D.C. And I&#8217;m thinking I may want to introduce myself as Todd Ovechkin&#8230;</p>
]]></content:encoded>
			<wfw:commentRss>http://www.klocwork.com/blog/2010/03/everything-is-big-in-texas/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Agile Adoption: An Update</title>
		<link>http://www.klocwork.com/blog/2010/02/agile-adoption-an-update/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=agile-adoption-an-update</link>
		<comments>http://www.klocwork.com/blog/2010/02/agile-adoption-an-update/#comments</comments>
		<pubDate>Thu, 18 Feb 2010 16:01:01 +0000</pubDate>
		<dc:creator>Todd Landry</dc:creator>
				<category><![CDATA[Agile Development]]></category>
		<category><![CDATA[General Industry]]></category>
		<category><![CDATA[agile]]></category>
		<category><![CDATA[scrum]]></category>
		<category><![CDATA[software development]]></category>

		<guid isPermaLink="false">http://www.klocwork.com/blog/?p=872</guid>
		<description><![CDATA[So awhile back, I was begging for some good statistics on Agile adoption, since at that time, there really wasn’t anything substantial to sink your teeth into. Well, a new report from Forrester came across my desk, and it helped to strengthen what most people believe&#8230;that Agile processes have overtaken Waterfall as the development methodology [...]]]></description>
			<content:encoded><![CDATA[<p>So <a href="http://www.klocwork.com/blog/2009/03/using-iteration-offsets-in-agile-development/">awhile</a> back, I was begging for some good statistics on Agile adoption, since at that time, there really wasn’t anything substantial to sink your teeth into. Well, a new report from <a href="http://www.forrester.com/rb/research">Forrester</a> came across my desk, and it helped to strengthen what most people believe&#8230;that Agile processes have overtaken <a href="http://en.wikipedia.org/wiki/Waterfall_model">Waterfall</a> as the development methodology of choice. In this report, which cites information gathered from a Q3 2009 survey of IT professionals, it states that 35% of respondents said that Agile most closely reflected their development process, while waterfall processes came in at 13%. I would even argue that iterative development could possibly be included in the Agile bucket, not because it is full-fledged Agile, but it is a baby-step in Agile’s direction. Perhaps I’m stretching things there&#8230;</p>
<p>Secondly, the data supports the fact that people are adopting the aspects of Agile that work for them and there’s no monolithic Agile implementation approach, something that is consistent with the many Agile teams I’ve spoken to over the last 3 ½ years or so. I’d be curious to know how many teams out there are doing , say, Scrum “by the book”&#8230;if there is such a thing.</p>
<p><a href="http://www.klocwork.com/blog/wp-content/uploads/2010/02/adoption.jpg"><img class="alignleft size-medium wp-image-873" title="Agile adoption" src="http://www.klocwork.com/blog/wp-content/uploads/2010/02/adoption-300x195.jpg" alt="" width="300" height="195" /></a>Finally, the other thing that the report hinted at, that I have seen firsthand, is that while most organizations are not completely Agile today, they almost all have some groups that are. I honestly believe that the percentage of organizations that have small pockets of groups doing Agile development is very high&#8230;perhaps in the 80s or 90s. I don’t have any hard data on this point, this is more of a gut-feel, but I would be interested to hear from our readers as to what they think.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.klocwork.com/blog/2010/02/agile-adoption-an-update/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Android apps buggy?</title>
		<link>http://www.klocwork.com/blog/2009/12/android-apps-buggy/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=android-apps-buggy</link>
		<comments>http://www.klocwork.com/blog/2009/12/android-apps-buggy/#comments</comments>
		<pubDate>Tue, 22 Dec 2009 16:15:49 +0000</pubDate>
		<dc:creator>Alen Zukich</dc:creator>
				<category><![CDATA[General Coding]]></category>
		<category><![CDATA[General Industry]]></category>
		<category><![CDATA[Software Testing]]></category>
		<category><![CDATA[Static Analysis]]></category>
		<category><![CDATA[Android]]></category>
		<category><![CDATA[Clang]]></category>
		<category><![CDATA[Droid]]></category>
		<category><![CDATA[google]]></category>
		<category><![CDATA[Google phone]]></category>
		<category><![CDATA[iPhone]]></category>
		<category><![CDATA[java]]></category>
		<category><![CDATA[Nexus One]]></category>
		<category><![CDATA[static analyzer]]></category>
		<category><![CDATA[X10]]></category>

		<guid isPermaLink="false">http://www.klocwork.com/blog/?p=618</guid>
		<description><![CDATA[We are starting to see a large amount of Android phones such as the Droid and Xperia X10 (see a review here) and the (soon-to-be-released) first Google phone, Nexus One. With this, expect the number of apps to increase significantly. So with the increased number of apps, do these developers have the right tools to [...]]]></description>
			<content:encoded><![CDATA[<p>We are starting to see a large amount of Android phones such as the Droid and Xperia X10 (see a review <a title="Droid and X10 review" href="http://www.phone-vs-phone.net/xperia-x10-vs-motorola-droid" target="_blank">here</a>) and the (soon-to-be-released) first Google phone, <a title="Nexus One preview" href="http://www.engadget.com/2009/12/14/exclusive-first-google-phone-nexus-one-photos-android-2-1-on/" target="_blank">Nexus One</a>.  With this, expect the number of apps to increase significantly.</p>
<div id="attachment_622" class="wp-caption alignleft" style="width: 159px"><img class="size-medium wp-image-622 " title="motorola-droid-vs-iphone-3gs-2" src="http://www.klocwork.com/blog/wp-content/uploads/2009/12/motorola-droid-vs-iphone-3gs-2-149x300.png" alt="Droid vs. iPhone" width="149" height="300" /><p class="wp-caption-text">Droid vs. iPhone</p></div>
<p>So with the increased number of apps, do these developers have the right tools to find and fix bugs?  Take a look at the leader of phone applications-iPhone.  There have been several posts (<a title="iPhone Development blog" href="http://iphonedevelopment.blogspot.com/2009/02/clang-static-analyzer.html" target="_blank">here </a>and <a title="Dave Orchard's Blog" href="http://www.pacificspirit.com/blog/2009/03/05/iphone_memory_leak_detection_using_clang" target="_blank">here</a>) that recommend using the <a title="Clang static analyzer" href="http://clang-analyzer.llvm.org" target="_blank">Clang </a>static analyzer.    Apple has taken it one step further, apparently rejecting iPhone apps that access private <a title="The iPhone blog" href="http://www.theiphoneblog.com/2009/11/16/apple-static-analysis-tool-find-private-apis-reject-apps/" target="_blank">APIs</a>. But Clang won’t help you with Java apps.</p>
<p>So what do the Android developers have?  Android is just Java, so there are lots of tools, right?  Certainly there are <a href="http://www.klocwork.com/products/insight/klocwork-truepath/">static analysis</a> tools, profilers, unit testing tools and many more.  But are these tools really taking into account the Android specifics?</p>
<p>Let’s take an example of a resource leak.  Resources such as streams, connections and graphic objects must be explicitly closed; otherwise, you run the risk of throwing exceptions depending on the open resource.<br />
<b></b><br />
<b></b><br />
<b></b><br />
<b></b><br />
For example:</p>
<pre><code>1 static final String propertyFile = "my_config.ini";
2
3 static String getProperyFromConfigFile(String name)throws IOException {
4    Properties prop = new Properties();
5    FileInputStream st = new FileInputStream(propertyFile);
6    prop.load(st);
7    return prop.getProperty(name);
8 }</code></pre>
<p>Here, a resource leak should be identified since line 5 opens up a FileInputStream, but is never closed before exiting the method.  Now, this is all well and good and valuable to be found in any Android specific code, but what happens if I’m using built-in classes from the Android SDK?</p>
<p>For example:</p>
<pre><code>1 public boolean onKeyDown(final int keyCode, final KeyEvent event) {
2    if (keyCode == KeyEvent.KEYCODE_DPAD_CENTER) {
3          final MediaPlayer player = MediaPlayer.create(this, ringtoneUri);
4          player.start();
5    }
6    return super.onKeyDown(keyCode, event);
7 }</code></pre>
<p>Here, you have a situation where a MediaPlayer resource is created at line 3, but never closed on exit.  Without the knowledge that MediaPlayer is a resource that should be closed, you will miss this type of issue.  This extends to many resources and different issues.  You can also have Android-specific null pointer exceptions and use of free issues.</p>
<p>Let me know if you’re doing Android development. I want to hear what you are doing to find these kinds of bugs.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.klocwork.com/blog/2009/12/android-apps-buggy/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
		<item>
		<title>IP ESC &#8217;09 &#8211; Vive la France!</title>
		<link>http://www.klocwork.com/blog/2009/12/ip-esc-09-vive-la-france/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=ip-esc-09-vive-la-france</link>
		<comments>http://www.klocwork.com/blog/2009/12/ip-esc-09-vive-la-france/#comments</comments>
		<pubDate>Thu, 03 Dec 2009 20:10:46 +0000</pubDate>
		<dc:creator>Todd Landry</dc:creator>
				<category><![CDATA[Agile Development]]></category>
		<category><![CDATA[General Coding]]></category>
		<category><![CDATA[General Industry]]></category>
		<category><![CDATA[agile]]></category>
		<category><![CDATA[software development]]></category>
		<category><![CDATA[source code analysis]]></category>

		<guid isPermaLink="false">http://www.klocwork.com/blog/?p=517</guid>
		<description><![CDATA[Thought I would take a moment to share with you my experience at this year’s IP ESC show in Grenoble, France. First off, Grenoble is beautiful sitting at the foot of the French Alps. If you get the chance, go! Back to the show. This is typically the IP Show, but this year is the [...]]]></description>
			<content:encoded><![CDATA[<p><img class="alignleft size-medium wp-image-522" title="IMG_0046" src="http://www.klocwork.com/blog/wp-content/uploads/2009/12/IMG_00461-300x225.jpg" alt="IMG_0046" width="300" height="225" />Thought I would take a moment to share with you my experience at this year’s IP ESC show in Grenoble, France. First off, Grenoble is beautiful sitting at the foot of the French Alps. If you get the chance, go!</p>
<p>Back to the show. This is typically the IP Show, but this year is the first that ESC has been added to the agenda. I don&#8217;t think it helped attendance-wise. From what I can tell, there are maybe 200-250 attendees in total. I spent the last couple of days sharing booth duty with our friends from Emenda, France. Today, I spoke about how source code analysis fits into Agile development teams. I had about 15 attendees, which by all accounts was a good turnout.</p>
<p>I was able to cram about 40 minutes of material into 20-minute slot, and even had time left over to answer a few questions. Unfortunately, this show did not allow Exhibitors to attend any of the sessions. Too bad really, I was hoping to attend a few of them.</p>
<p>Next week, I am off to a similar show in Stuttgart, Germany, where I will have more time to present. Check back here next week for a recap of that event.<img class="alignleft size-medium wp-image-521" title="esc" src="http://www.klocwork.com/blog/wp-content/uploads/2009/12/esc1-300x225.jpg" alt="esc" width="300" height="225" /></p>
]]></content:encoded>
			<wfw:commentRss>http://www.klocwork.com/blog/2009/12/ip-esc-09-vive-la-france/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Preparing for the Software Assurance Forum 2009</title>
		<link>http://www.klocwork.com/blog/2009/10/preparing-for-the-software-assurance-forum-2009/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=preparing-for-the-software-assurance-forum-2009</link>
		<comments>http://www.klocwork.com/blog/2009/10/preparing-for-the-software-assurance-forum-2009/#comments</comments>
		<pubDate>Fri, 30 Oct 2009 13:45:22 +0000</pubDate>
		<dc:creator>Todd Landry</dc:creator>
				<category><![CDATA[General Coding]]></category>
		<category><![CDATA[General Industry]]></category>
		<category><![CDATA[Software Security]]></category>
		<category><![CDATA[Software Testing]]></category>
		<category><![CDATA[software security]]></category>
		<category><![CDATA[source code analysis]]></category>
		<category><![CDATA[Static Analysis]]></category>

		<guid isPermaLink="false">http://www.klocwork.com/blog/?p=482</guid>
		<description><![CDATA[Next week I’m heading out to the Software Assurance Forum (use SOF96945 for the conference code) in Washington D.C. (well, actually Arlington, Virginia, but D.C. sounds more glamorous). If you’re not familiar with what the SWA is, in a nutshell, its key objective is to encourage software developers to raise overall software quality and security [...]]]></description>
			<content:encoded><![CDATA[<p>Next week I’m heading out to the <a href="https://www.enstg.com/Invitation/default.cfm?ems31e=0.401546740523">Software Assurance Forum </a>(use SOF96945 for the conference code) in Washington D.C. (well, actually Arlington, Virginia, but D.C. sounds more glamorous). If you’re not familiar with what the SWA is, in a nutshell, its key objective is to encourage software developers to raise overall software quality and security from the start, rather than relying on applying patches to systems after vulnerabilities are discovered.</p>
<p><img class="aligncenter size-medium wp-image-490" title="2009-10-27_152831" src="http://www.klocwork.com/blog/wp-content/uploads/2009/10/2009-10-27_1528312-300x56.png" alt="2009-10-27_152831" width="300" height="56" />Anyways, while I’m there, I’ll be taking part in 2 speaking opportunities. The first will be as part of a 6 person panel discussion entitled “Understanding Technology Stakeholders: Their Progress and Challenges” (10:30 – 12:00 on Wednesday). The panel is made up of stakeholders from varying disciplines such as industry, academia, standards, and government. A good well rounded panel should provide for an interesting and entertaining hour and a half.</p>
<p>My second session (Friday at 2:20) will see me fly solo as I discuss our (Klocwork’s) experiences and observations as they relate to <a href="http://samate.nist.gov/SATE2009.html">SATE</a>. I’m not given much time, so I’ll be revving up the motor mouth to make sure I get our points across. I have a sneaking suspicion I just *<strong>may</strong>* go a little OT.</p>
<p>So, is anyone out there also going to this event? If so, drop me a line either by email (<a href="mailto:todd.landry@klocwork.com">todd.landry@klocwork.com</a>), or Twitter (@todd_landry) and perhaps we can get together to chat. Look for my next blog next Thursday, as I will recap the panel discussion and the other sessions I attend at this event.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.klocwork.com/blog/2009/10/preparing-for-the-software-assurance-forum-2009/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>&#8220;I&#8217;m gonna write me a new minivan&#8221; &#8211; is zero software bugs the right goal?</title>
		<link>http://www.klocwork.com/blog/2009/10/im-gonna-write-me-a-new-minivan-is-zero-software-bugs-the-right-goal/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=im-gonna-write-me-a-new-minivan-is-zero-software-bugs-the-right-goal</link>
		<comments>http://www.klocwork.com/blog/2009/10/im-gonna-write-me-a-new-minivan-is-zero-software-bugs-the-right-goal/#comments</comments>
		<pubDate>Tue, 27 Oct 2009 19:16:55 +0000</pubDate>
		<dc:creator>Eric Hollebone</dc:creator>
				<category><![CDATA[Agile Development]]></category>
		<category><![CDATA[General Industry]]></category>
		<category><![CDATA[Nasty Bugs]]></category>
		<category><![CDATA[bugs]]></category>

		<guid isPermaLink="false">http://www.klocwork.com/blog/?p=473</guid>
		<description><![CDATA[I have always loved &#8220;I&#8217;m gonna write me a new minivan&#8221;  from Scott Adams.  To me, it never gets old.  Originally published in 1998, the theme that applied then still does today: driving 100% of defects or bugs out of the code-base is a laudable goal, but is it really the right one?   I would have to argue [...]]]></description>
			<content:encoded><![CDATA[<p style="text-align: left; "><img class="alignnone size-full wp-image-478" title="dilbert-minivan-small" src="http://www.klocwork.com/blog/wp-content/uploads/2009/10/dilbert-minivan-small.png" alt="dilbert-minivan-small" width="450" height="147" /></p>
<p style="text-align: left; ">I have always loved &#8220;I&#8217;m gonna write me a new minivan&#8221;  from <a title="Dilbert.com" href="http://www.dilbert.com" target="_blank">Scott Adams</a>.  To me, it never gets old.  Originally published in 1998, the theme that applied then still does today: driving 100% of defects or bugs out of the code-base is a laudable goal, but is it really the right one?   I would have to argue no.  There&#8217;s no silver bullet out there that will find all software defects and solve issues automagically, and until there is, software development will continue to struggle with prioritization.  Unfortunately, we live in a world of finite resources and constantly evolving demands, but we can always dream about being Wally for a little while.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.klocwork.com/blog/2009/10/im-gonna-write-me-a-new-minivan-is-zero-software-bugs-the-right-goal/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>ESC Boston Day 2 Recap</title>
		<link>http://www.klocwork.com/blog/2009/09/esc-boston-day-2-recap/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=esc-boston-day-2-recap</link>
		<comments>http://www.klocwork.com/blog/2009/09/esc-boston-day-2-recap/#comments</comments>
		<pubDate>Wed, 23 Sep 2009 22:16:06 +0000</pubDate>
		<dc:creator>Alen Zukich</dc:creator>
				<category><![CDATA[General Industry]]></category>
		<category><![CDATA[Electric Cloud]]></category>
		<category><![CDATA[ElectricAccelerator]]></category>
		<category><![CDATA[ElectricInsight]]></category>
		<category><![CDATA[esc boston 2009]]></category>

		<guid isPermaLink="false">http://www.klocwork.com/blog/?p=431</guid>
		<description><![CDATA[Overall a good show at ESC.  Always well run and put together.  In terms of vendors we had some great discussions especially with Electric Cloud.  We managed to see a great demo of ElectricInsight. ElectricInsight is very visual giving you an incredible view of the structure of a software build.  Not only a tool to [...]]]></description>
			<content:encoded><![CDATA[<p>Overall a good show at ESC.  Always well run and put together.  In terms of vendors we had some great discussions especially with <a title="Electric Cloud blog" href="http://blog.electric-cloud.com/" target="_blank">Electric Cloud</a>.  We managed to see a great demo of <a title="ElectricInsight product details" href="http://www.electric-cloud.com/products/electricinsight.php" target="_blank">ElectricInsight</a>.</p>
<p><a title="ElectricInsight product details" href="http://www.electric-cloud.com/products/electricinsight.php" target="_blank">ElectricInsight</a> is very visual giving you an incredible view of the structure of a software build.  Not only a tool to help you visualize the impact of adding nodes to <a title="ElectricAccelerator product details" href="http://www.electric-cloud.com/products/electricaccelerator.php" target="_blank">ElectricAccelerator</a> cluster but it helps with diagnosing your build problems in seconds.  Really cool dependency analysis with a click of a button.</p>
<p>In the end there is no doubt the economy has taken its toll on ESC Boston 2009.  By far one of the worst turn outs for the exhibit show floor.  But one thing I can take away from this, I’m the Wii Jousting champ!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.klocwork.com/blog/2009/09/esc-boston-day-2-recap/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Measuring Progress in Code Quality</title>
		<link>http://www.klocwork.com/blog/2009/09/measuring-progress-in-code-quality/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=measuring-progress-in-code-quality</link>
		<comments>http://www.klocwork.com/blog/2009/09/measuring-progress-in-code-quality/#comments</comments>
		<pubDate>Wed, 09 Sep 2009 15:40:15 +0000</pubDate>
		<dc:creator>Brendan Harrison</dc:creator>
				<category><![CDATA[General Industry]]></category>
		<category><![CDATA[agile]]></category>
		<category><![CDATA[code reviews]]></category>
		<category><![CDATA[software development]]></category>

		<guid isPermaLink="false">http://www.klocwork.com/blog/?p=390</guid>
		<description><![CDATA[Succinctly communicating what Klocwork does and how it helps improve productivity during code reviews, integration builds, and of course for developers is always a challenge. We&#8217;ve tried to capture this visually with this simple SDLC image, and of course we always talk about the importance of finding bugs early. Then somebody else comes along and [...]]]></description>
			<content:encoded><![CDATA[<p>Succinctly communicating what Klocwork does and how it helps improve productivity during code reviews, integration builds, and of course for developers is always a challenge. We&#8217;ve tried to capture this visually with this <a title="Developer Productivity with Source Code Analysis" href="http://www.klocwork.com/development-productivity-source-code-analysis" target="_blank">simple SDLC image</a>, and of course we always talk about the importance of finding bugs early.</p>
<p>Then somebody else comes along and makes the point in a way you never thought of&#8230; here&#8217;s a funny that&#8217;s been going around for some time, but I figured it&#8217;s worth passing along to the Kloctalk readers.<br />
<a title="Only valid measurement of code quality" href="http://www.osnews.com/story/19266/WTFs_m" target="_blank"><img class="size-medium wp-image-395 alignnone" title="Best Measure of Code Quality" src="http://www.klocwork.com/blog/wp-content/uploads/2009/09/wtfm2-300x282.jpg" alt="Best Measure of Code Quality" width="300" height="282" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.klocwork.com/blog/2009/09/measuring-progress-in-code-quality/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Klocwork at Agile 2009 in Chicago&#8230;</title>
		<link>http://www.klocwork.com/blog/2009/08/klocwork-at-agile-2009-in-chicago/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=klocwork-at-agile-2009-in-chicago</link>
		<comments>http://www.klocwork.com/blog/2009/08/klocwork-at-agile-2009-in-chicago/#comments</comments>
		<pubDate>Fri, 21 Aug 2009 18:42:06 +0000</pubDate>
		<dc:creator>Brendan Harrison</dc:creator>
				<category><![CDATA[Agile Development]]></category>
		<category><![CDATA[General Industry]]></category>
		<category><![CDATA[agile 2009]]></category>
		<category><![CDATA[cmmi]]></category>
		<category><![CDATA[fda]]></category>

		<guid isPermaLink="false">http://www.klocwork.com/blog/?p=332</guid>
		<description><![CDATA[Off to Agile 2009 next week in Chicago where Klocwork will be both attending and exhibiting at the conference. We’ll blog throughout the week to keep people updated and let you know the latest. There are a few sessions in particular that we’ll be sure to report on and let readers know anything useful we [...]]]></description>
			<content:encoded><![CDATA[<p>Off to Agile 2009 next week in Chicago where Klocwork will be both attending and exhibiting at the conference. We’ll blog throughout the week to keep people updated and let you know the latest. There are a few sessions in particular that we’ll be sure to report on and let readers know anything useful we learned (or not):</p>
<ul>
<li><a title="Agile and FDA Software Guidance" href="http://agile2009.agilealliance.org/node/1275" target="_blank">Adopting Agile in an FDA Regulated Environment</a></li>
<li><a title="Java Code Quality Tools" href="http://agile2009.agilealliance.org/node/166" target="_blank">Java and Ruby Tools for Code Quality</a></li>
<li><a title="Effective Agile Code Reviews" href="http://agile2009.agilealliance.org/node/3070" target="_blank">Effective Code Reviews in Agile Teams</a></li>
<li><a title="Measuring Software Quality" href="http://agile2009.agilealliance.org/node/410" target="_blank">Zen and the Art of Software Quality</a></li>
<li><a title="Scrum and CMMI" href="http://agile2009.agilealliance.org/node/545" target="_blank">Scrum and CMMI &#8211; from Good to Great</a></li>
</ul>
<p>Be sure to check back often!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.klocwork.com/blog/2009/08/klocwork-at-agile-2009-in-chicago/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

