<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	>
<channel>
	<title>Comments on: Productivity</title>
	<atom:link href="http://steve.vinoski.net/blog/2007/11/24/productivity/feed/" rel="self" type="application/rss+xml" />
	<link>http://steve.vinoski.net/blog/2007/11/24/productivity/</link>
	<description>Ask forgiveness, not permission.</description>
	<pubDate>Fri, 21 Nov 2008 00:44:05 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.6.3</generator>
		<item>
		<title>By: steve</title>
		<link>http://steve.vinoski.net/blog/2007/11/24/productivity/#comment-375</link>
		<dc:creator>steve</dc:creator>
		<pubDate>Mon, 10 Dec 2007 15:34:36 +0000</pubDate>
		<guid isPermaLink="false">http://steve.vinoski.net/blog/2007/11/24/productivity/#comment-375</guid>
		<description>Bill: &lt;em&gt;negated?&lt;/em&gt; I hardly think so. Refactoring is only one of several areas related to productivity.</description>
		<content:encoded><![CDATA[<p>Bill: <em>negated?</em> I hardly think so. Refactoring is only one of several areas related to productivity.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Bill Burke</title>
		<link>http://steve.vinoski.net/blog/2007/11/24/productivity/#comment-374</link>
		<dc:creator>Bill Burke</dc:creator>
		<pubDate>Mon, 10 Dec 2007 15:28:46 +0000</pubDate>
		<guid isPermaLink="false">http://steve.vinoski.net/blog/2007/11/24/productivity/#comment-374</guid>
		<description>Steve, I think you should reread my comment.  I didn't say that a Ruby IDE couldn't do refactoring, just that such refactorings wouldn't be &lt;b&gt;reliable&lt;/b&gt; and that the IDE would be guessing when it tried to refactor.

With an IDE with &lt;i&gt;reliable&lt;/i&gt; refactoring, I'm more than an order of magnitude more productive anyways, so any increase in initial productivity I might get with Ruby et al. is negated.</description>
		<content:encoded><![CDATA[<p>Steve, I think you should reread my comment.  I didn&#8217;t say that a Ruby IDE couldn&#8217;t do refactoring, just that such refactorings wouldn&#8217;t be <b>reliable</b> and that the IDE would be guessing when it tried to refactor.</p>
<p>With an IDE with <i>reliable</i> refactoring, I&#8217;m more than an order of magnitude more productive anyways, so any increase in initial productivity I might get with Ruby et al. is negated.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: steve</title>
		<link>http://steve.vinoski.net/blog/2007/11/24/productivity/#comment-346</link>
		<dc:creator>steve</dc:creator>
		<pubDate>Mon, 03 Dec 2007 04:16:55 +0000</pubDate>
		<guid isPermaLink="false">http://steve.vinoski.net/blog/2007/11/24/productivity/#comment-346</guid>
		<description>Bill: funny, I don't seem to have any problem whatsoever with productivity or meeting schedules. In fact, I'm usually ahead of schedule, and typically deliver a few extra niceties in every iteration. What do I need with a crutch/IDE? The main differences between an IDE and the tools I use (which BTW are not grep and sed) is that the IDE takes up way more memory, is slower, and is far less extensible.

Don't underestimate the power of brevity. When you can choose the right language, you can often write a more functional application in an order of magnitude fewer lines, and the need for an IDE is significantly reduced.

If you think the languages you mention have "zero type safety," then you have some studying and learning to do. And if you think IDEs can't handle such languages, &lt;a href="http://ruby.netbeans.org/" rel="nofollow"&gt;think again&lt;/a&gt;. I would expect a self-proclaimed IDE expert like you to know better.

And finally, the last time I checked, Bill, your single hammer for all nails, Java, is from the 20th century...</description>
		<content:encoded><![CDATA[<p>Bill: funny, I don&#8217;t seem to have any problem whatsoever with productivity or meeting schedules. In fact, I&#8217;m usually ahead of schedule, and typically deliver a few extra niceties in every iteration. What do I need with a crutch/IDE? The main differences between an IDE and the tools I use (which BTW are not grep and sed) is that the IDE takes up way more memory, is slower, and is far less extensible.</p>
<p>Don&#8217;t underestimate the power of brevity. When you can choose the right language, you can often write a more functional application in an order of magnitude fewer lines, and the need for an IDE is significantly reduced.</p>
<p>If you think the languages you mention have &#8220;zero type safety,&#8221; then you have some studying and learning to do. And if you think IDEs can&#8217;t handle such languages, <a href="http://ruby.netbeans.org/" rel="nofollow">think again</a>. I would expect a self-proclaimed IDE expert like you to know better.</p>
<p>And finally, the last time I checked, Bill, your single hammer for all nails, Java, is from the 20th century&#8230;</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Bill Burke</title>
		<link>http://steve.vinoski.net/blog/2007/11/24/productivity/#comment-345</link>
		<dc:creator>Bill Burke</dc:creator>
		<pubDate>Mon, 03 Dec 2007 03:31:21 +0000</pubDate>
		<guid isPermaLink="false">http://steve.vinoski.net/blog/2007/11/24/productivity/#comment-345</guid>
		<description>Isaac, I agree with you 100%.  The problem with Steve is that he's still stuck in the 20th century coding with vi, emacs, and refactoring with grep and sed.  Now that he's coding in Erlang and Ruby, he'll never know the productivity we have in IDE land.  Seriously, I don't understand how somebody could make any of these dynamic language arguments without the experience of using one of these IDEs in a medium to large project.

The thing is, these languages with zero type safety make it nearly impossible for an IDE to reliably refactor simple things like moving a method to a different class, renaming a method, class, or property, changing a method signature.  Sure, they could make incomplete guesses, but then in that case, I'm better off using grep/sed and living in the 20th century.</description>
		<content:encoded><![CDATA[<p>Isaac, I agree with you 100%.  The problem with Steve is that he&#8217;s still stuck in the 20th century coding with vi, emacs, and refactoring with grep and sed.  Now that he&#8217;s coding in Erlang and Ruby, he&#8217;ll never know the productivity we have in IDE land.  Seriously, I don&#8217;t understand how somebody could make any of these dynamic language arguments without the experience of using one of these IDEs in a medium to large project.</p>
<p>The thing is, these languages with zero type safety make it nearly impossible for an IDE to reliably refactor simple things like moving a method to a different class, renaming a method, class, or property, changing a method signature.  Sure, they could make incomplete guesses, but then in that case, I&#8217;m better off using grep/sed and living in the 20th century.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Isaac Gouy</title>
		<link>http://steve.vinoski.net/blog/2007/11/24/productivity/#comment-334</link>
		<dc:creator>Isaac Gouy</dc:creator>
		<pubDate>Mon, 26 Nov 2007 21:31:59 +0000</pubDate>
		<guid isPermaLink="false">http://steve.vinoski.net/blog/2007/11/24/productivity/#comment-334</guid>
		<description>steve vinoski wrote November 25th, 2007 at 11:40 pm
&#62; why don’t you do the work to prove that it’s wrong?

I didn't write a blog article that assumes it's true.

I can suggest why we shouldn't just assume it's still true after 30 years of technology change.

Just 10 years ago, for programmers using a statically checked language, simply changing the name of a type could be a major effort that could introduce bugs - that is no longer true.

Just 10 years ago, it was understood that encapsulating fields avoided the rework and bugs that would follow renaming - the cost and risk from field renaming has disappeared. 

How much boiler-plate code does your IDE generate? Wouldn't that change any bugs per line relationship?


The whole point about the bugs per line of code constant is that it's a dated empirical observation and not an immutable law of nature.</description>
		<content:encoded><![CDATA[<p>steve vinoski wrote November 25th, 2007 at 11:40 pm<br />
&gt; why don’t you do the work to prove that it’s wrong?</p>
<p>I didn&#8217;t write a blog article that assumes it&#8217;s true.</p>
<p>I can suggest why we shouldn&#8217;t just assume it&#8217;s still true after 30 years of technology change.</p>
<p>Just 10 years ago, for programmers using a statically checked language, simply changing the name of a type could be a major effort that could introduce bugs - that is no longer true.</p>
<p>Just 10 years ago, it was understood that encapsulating fields avoided the rework and bugs that would follow renaming - the cost and risk from field renaming has disappeared. </p>
<p>How much boiler-plate code does your IDE generate? Wouldn&#8217;t that change any bugs per line relationship?</p>
<p>The whole point about the bugs per line of code constant is that it&#8217;s a dated empirical observation and not an immutable law of nature.</p>
]]></content:encoded>
	</item>
</channel>
</rss>
