<?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"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:georss="http://www.georss.org/georss" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:media="http://search.yahoo.com/mrss/"
		>
<channel>
	<title>Comments on: A Manager&#8217;s Retrospective on the C# versus VB.NET decision</title>
	<atom:link href="http://improvingsoftware.com/2009/04/19/a-managers-retrospective-on-the-c-versus-vbnet-decision/feed/" rel="self" type="application/rss+xml" />
	<link>http://improvingsoftware.com/2009/04/19/a-managers-retrospective-on-the-c-versus-vbnet-decision/</link>
	<description>Upgrading the software development process one reader at a time.</description>
	<lastBuildDate>Tue, 01 May 2012 06:08:29 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.com/</generator>
	<item>
		<title>By: johnfx</title>
		<link>http://improvingsoftware.com/2009/04/19/a-managers-retrospective-on-the-c-versus-vbnet-decision/#comment-1174</link>
		<dc:creator><![CDATA[johnfx]]></dc:creator>
		<pubDate>Sat, 05 Nov 2011 18:54:12 +0000</pubDate>
		<guid isPermaLink="false">http://softwareplusplus.wordpress.com/?p=21#comment-1174</guid>
		<description><![CDATA[Actually, I made that call back in 2003, I just wrote the article in 2009 as a retrospective.  At the time I felt that it would be beneficial for the team to focus on a single .NET language to maximize code re-use and focus on maximizing their proficiency in whichever language I picked. Also, I was big on the notion of self-directed teams, which is a core belief in the Agile movement. I weighed heavily that my team (at the time) preferred VB.NET. I still contend that the languages are functionally equivalent in all important technical respects. 

Now that the team has long since made the transition to .NET, we have started doing new development in C# because that is what the team favors now. We still maintain that legacy app in VB.NET because, frankly, there simply isn&#039;t any tangible benefit to outweigh the cost of porting the app.  I can&#039;t sell &quot;I need x months of development budget and at the end the app will be the same (perhaps with some bugs introduced by the port), but in a different language&quot;. In the end the most important point was that it simply doesn&#039;t matter. That project has gone forward for years, used third party tools and libraries and never has the VB.NET language created anything more than a trivial issue here and there. 

So ultimately, I don&#039;t regret the decision. Not because I think VB.NET was necessarily the right decision, but more because in retrospect the decision didn&#039;t matter as much as I thought going into it. The team is now proficient in both languages, supports products in each of them and our legacy application continues to be a successful project. My advice to someone making the decision today would be: Defer to your team, a happy development team is a productive one.]]></description>
		<content:encoded><![CDATA[<p>Actually, I made that call back in 2003, I just wrote the article in 2009 as a retrospective.  At the time I felt that it would be beneficial for the team to focus on a single .NET language to maximize code re-use and focus on maximizing their proficiency in whichever language I picked. Also, I was big on the notion of self-directed teams, which is a core belief in the Agile movement. I weighed heavily that my team (at the time) preferred VB.NET. I still contend that the languages are functionally equivalent in all important technical respects. </p>
<p>Now that the team has long since made the transition to .NET, we have started doing new development in C# because that is what the team favors now. We still maintain that legacy app in VB.NET because, frankly, there simply isn&#8217;t any tangible benefit to outweigh the cost of porting the app.  I can&#8217;t sell &#8220;I need x months of development budget and at the end the app will be the same (perhaps with some bugs introduced by the port), but in a different language&#8221;. In the end the most important point was that it simply doesn&#8217;t matter. That project has gone forward for years, used third party tools and libraries and never has the VB.NET language created anything more than a trivial issue here and there. </p>
<p>So ultimately, I don&#8217;t regret the decision. Not because I think VB.NET was necessarily the right decision, but more because in retrospect the decision didn&#8217;t matter as much as I thought going into it. The team is now proficient in both languages, supports products in each of them and our legacy application continues to be a successful project. My advice to someone making the decision today would be: Defer to your team, a happy development team is a productive one.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: kingdango (@kingdango)</title>
		<link>http://improvingsoftware.com/2009/04/19/a-managers-retrospective-on-the-c-versus-vbnet-decision/#comment-1173</link>
		<dc:creator><![CDATA[kingdango (@kingdango)]]></dc:creator>
		<pubDate>Sat, 05 Nov 2011 14:25:13 +0000</pubDate>
		<guid isPermaLink="false">http://softwareplusplus.wordpress.com/?p=21#comment-1173</guid>
		<description><![CDATA[John, clearly a good and valuable post since it&#039;s still being talked about two years later... and I see you&#039;re still replying to comments.  

I do think you are forgetting a key driver in your evaluation -- industry and developer community engagement.  This may have been debatable in 2009 (no, it really wasn&#039;t) but it&#039;s crystal clear now... the community prefers C# -- if you don&#039;t agree look around and packages, open source APIs, etc and you&#039;ll find C# is language under the hood.  And a majority of 3rd party components that enterprise developers find themselves integrating into their systems provide better support (examples, native SDKs, etc) in C#.

Forgetting that, I don&#039;t see how you reviewed the &quot;Facts, et al&quot; and came to the decision of VB.NET.  The only significant issue I could see holding you back was the legacy VB support -- you were worried about converting VB6 to .NET.  You could have either converted it to VB.NET as (legacy) and then used C# as the Go Forward -- or you could have just converted it to C# (from VB6) -- if it can be converted to VB.NET then it can be converted to C#.  But honestly I&#039;m not sure conversion for the sake of conversion was a good idea either.

Regarding developer productivity.  It seems you missed a perfect opportunity to challenge your team to learn something new and improve themselves.  Instead you gave them an easier out so they could remain comfortable.  I agree, speed to productivity is a concern so I feel your pain on that, but I also think you preferred a short-term concern as opposed to looking at the long-term growth and strength of your team.

IMO - Based on the findings you present here (except for some dead wrong comparison of C#/VB.NET roadmap) you should have chosen C#.

Do you regret your decision?  What has happened since 2009?]]></description>
		<content:encoded><![CDATA[<p>John, clearly a good and valuable post since it&#8217;s still being talked about two years later&#8230; and I see you&#8217;re still replying to comments.  </p>
<p>I do think you are forgetting a key driver in your evaluation &#8212; industry and developer community engagement.  This may have been debatable in 2009 (no, it really wasn&#8217;t) but it&#8217;s crystal clear now&#8230; the community prefers C# &#8212; if you don&#8217;t agree look around and packages, open source APIs, etc and you&#8217;ll find C# is language under the hood.  And a majority of 3rd party components that enterprise developers find themselves integrating into their systems provide better support (examples, native SDKs, etc) in C#.</p>
<p>Forgetting that, I don&#8217;t see how you reviewed the &#8220;Facts, et al&#8221; and came to the decision of VB.NET.  The only significant issue I could see holding you back was the legacy VB support &#8212; you were worried about converting VB6 to .NET.  You could have either converted it to VB.NET as (legacy) and then used C# as the Go Forward &#8212; or you could have just converted it to C# (from VB6) &#8212; if it can be converted to VB.NET then it can be converted to C#.  But honestly I&#8217;m not sure conversion for the sake of conversion was a good idea either.</p>
<p>Regarding developer productivity.  It seems you missed a perfect opportunity to challenge your team to learn something new and improve themselves.  Instead you gave them an easier out so they could remain comfortable.  I agree, speed to productivity is a concern so I feel your pain on that, but I also think you preferred a short-term concern as opposed to looking at the long-term growth and strength of your team.</p>
<p>IMO &#8211; Based on the findings you present here (except for some dead wrong comparison of C#/VB.NET roadmap) you should have chosen C#.</p>
<p>Do you regret your decision?  What has happened since 2009?</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: johnfx</title>
		<link>http://improvingsoftware.com/2009/04/19/a-managers-retrospective-on-the-c-versus-vbnet-decision/#comment-1159</link>
		<dc:creator><![CDATA[johnfx]]></dc:creator>
		<pubDate>Wed, 05 Oct 2011 19:29:53 +0000</pubDate>
		<guid isPermaLink="false">http://softwareplusplus.wordpress.com/?p=21#comment-1159</guid>
		<description><![CDATA[Yes, that language is unfortunately named. I really wish they had changed it when they introduced .NET (or even VB6) because other than some syntactical similarities with its namesake it really is an entirely new and full featured development language. On the other hand, it can be a handy tool to identify language snobs who judge a language solely based on the name.]]></description>
		<content:encoded><![CDATA[<p>Yes, that language is unfortunately named. I really wish they had changed it when they introduced .NET (or even VB6) because other than some syntactical similarities with its namesake it really is an entirely new and full featured development language. On the other hand, it can be a handy tool to identify language snobs who judge a language solely based on the name.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: rbunn83815</title>
		<link>http://improvingsoftware.com/2009/04/19/a-managers-retrospective-on-the-c-versus-vbnet-decision/#comment-1158</link>
		<dc:creator><![CDATA[rbunn83815]]></dc:creator>
		<pubDate>Wed, 05 Oct 2011 18:36:03 +0000</pubDate>
		<guid isPermaLink="false">http://softwareplusplus.wordpress.com/?p=21#comment-1158</guid>
		<description><![CDATA[It&#039;s hard to take a developer seriously when the language they use has the word &quot;Basic&quot; in it.]]></description>
		<content:encoded><![CDATA[<p>It&#8217;s hard to take a developer seriously when the language they use has the word &#8220;Basic&#8221; in it.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Vladimir</title>
		<link>http://improvingsoftware.com/2009/04/19/a-managers-retrospective-on-the-c-versus-vbnet-decision/#comment-1118</link>
		<dc:creator><![CDATA[Vladimir]]></dc:creator>
		<pubDate>Tue, 23 Aug 2011 21:50:15 +0000</pubDate>
		<guid isPermaLink="false">http://softwareplusplus.wordpress.com/?p=21#comment-1118</guid>
		<description><![CDATA[Hmmm, I used to program in C++ and VB 6. Now I program in C# and VB.NET. The difference between C++ and VB6 is massive as the languages target entirely different type of applications and the languages differ immensly.

With the introduction of C# and VB.NET the difference is almost exclusively defined by sugar coating. After coding many apps using both languages I still can&#039;t figure out for the life of me which one is more productive or better. I really don&#039;t care anymore. I use whatever is needed. I think every experienced programmer is multilangual to begin with...

Now a different subject: C# is for the smart ones, VB.net is for others.
Really? A few facts based on my experiance:
1) Anyone can learn any programming language. The talented one will learn the real/full potential of both languages faster.
2) The smart ones will eventually bring their code to a higher level. Think of best practices, design patterns and whatnot. Both C# and VB.NET will give you basically the same options these days.
3) The &quot;power user&quot; roadmap for C# only pays off if the customer wants to pay for it. Rarely do they know what that means and they don&#039;t care either. 

To conlude:
- if you find a programmer who can&#039;t handle one of these languages well then you&#039;ll know you have a slightly lesser talented programmer. 
- If you wish to use &quot;power user&quot; features then your business model should be set for this type of quality - meaning customers who want to pay extra is hard. Is your company ready for this?]]></description>
		<content:encoded><![CDATA[<p>Hmmm, I used to program in C++ and VB 6. Now I program in C# and VB.NET. The difference between C++ and VB6 is massive as the languages target entirely different type of applications and the languages differ immensly.</p>
<p>With the introduction of C# and VB.NET the difference is almost exclusively defined by sugar coating. After coding many apps using both languages I still can&#8217;t figure out for the life of me which one is more productive or better. I really don&#8217;t care anymore. I use whatever is needed. I think every experienced programmer is multilangual to begin with&#8230;</p>
<p>Now a different subject: C# is for the smart ones, VB.net is for others.<br />
Really? A few facts based on my experiance:<br />
1) Anyone can learn any programming language. The talented one will learn the real/full potential of both languages faster.<br />
2) The smart ones will eventually bring their code to a higher level. Think of best practices, design patterns and whatnot. Both C# and VB.NET will give you basically the same options these days.<br />
3) The &#8220;power user&#8221; roadmap for C# only pays off if the customer wants to pay for it. Rarely do they know what that means and they don&#8217;t care either. </p>
<p>To conlude:<br />
- if you find a programmer who can&#8217;t handle one of these languages well then you&#8217;ll know you have a slightly lesser talented programmer.<br />
- If you wish to use &#8220;power user&#8221; features then your business model should be set for this type of quality &#8211; meaning customers who want to pay extra is hard. Is your company ready for this?</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: johnfx</title>
		<link>http://improvingsoftware.com/2009/04/19/a-managers-retrospective-on-the-c-versus-vbnet-decision/#comment-926</link>
		<dc:creator><![CDATA[johnfx]]></dc:creator>
		<pubDate>Tue, 08 Feb 2011 15:40:25 +0000</pubDate>
		<guid isPermaLink="false">http://softwareplusplus.wordpress.com/?p=21#comment-926</guid>
		<description><![CDATA[Even after another 1.5 years the opinions/observations made in this article still ring true to me. I&#039;d still favor C# for new projects/teams. 

However, for existing projects of any size in VB.NET I still wouldn&#039;t recommend porting them to C#. The payoff doesn&#039;t seem like it would be worth the effort.]]></description>
		<content:encoded><![CDATA[<p>Even after another 1.5 years the opinions/observations made in this article still ring true to me. I&#8217;d still favor C# for new projects/teams. </p>
<p>However, for existing projects of any size in VB.NET I still wouldn&#8217;t recommend porting them to C#. The payoff doesn&#8217;t seem like it would be worth the effort.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Matt</title>
		<link>http://improvingsoftware.com/2009/04/19/a-managers-retrospective-on-the-c-versus-vbnet-decision/#comment-925</link>
		<dc:creator><![CDATA[Matt]]></dc:creator>
		<pubDate>Tue, 08 Feb 2011 14:20:12 +0000</pubDate>
		<guid isPermaLink="false">http://softwareplusplus.wordpress.com/?p=21#comment-925</guid>
		<description><![CDATA[came across this article as our dev team is considering a switch from VB.Net to C#.  In your opinion: what, if anything, has changed 1.5 years after this was written?]]></description>
		<content:encoded><![CDATA[<p>came across this article as our dev team is considering a switch from VB.Net to C#.  In your opinion: what, if anything, has changed 1.5 years after this was written?</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Fred</title>
		<link>http://improvingsoftware.com/2009/04/19/a-managers-retrospective-on-the-c-versus-vbnet-decision/#comment-668</link>
		<dc:creator><![CDATA[Fred]]></dc:creator>
		<pubDate>Sat, 17 Apr 2010 16:17:15 +0000</pubDate>
		<guid isPermaLink="false">http://softwareplusplus.wordpress.com/?p=21#comment-668</guid>
		<description><![CDATA[Great choice going with VB.NET   Especially with the co-evolution of the languages, VB will be on par with C#.   I work a very large metro hospital in L.A.  All our new Win development is on VB.NET  We chose it over C# because maint., time and with version 2010, we see VB.NET as not having  problem keeping up with C# now.]]></description>
		<content:encoded><![CDATA[<p>Great choice going with VB.NET   Especially with the co-evolution of the languages, VB will be on par with C#.   I work a very large metro hospital in L.A.  All our new Win development is on VB.NET  We chose it over C# because maint., time and with version 2010, we see VB.NET as not having  problem keeping up with C# now.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: The VB.NET versus C# decision process - Erick Nassar Blog</title>
		<link>http://improvingsoftware.com/2009/04/19/a-managers-retrospective-on-the-c-versus-vbnet-decision/#comment-666</link>
		<dc:creator><![CDATA[The VB.NET versus C# decision process - Erick Nassar Blog]]></dc:creator>
		<pubDate>Wed, 07 Apr 2010 20:50:05 +0000</pubDate>
		<guid isPermaLink="false">http://softwareplusplus.wordpress.com/?p=21#comment-666</guid>
		<description><![CDATA[[...] both trenches but instead describing the process he and his company went through to solve the C# versus .NET dilemma. He basically used the following criteria to qualify each language: Functionality, Learning Curve, [...]]]></description>
		<content:encoded><![CDATA[<p>[...] both trenches but instead describing the process he and his company went through to solve the C# versus .NET dilemma. He basically used the following criteria to qualify each language: Functionality, Learning Curve, [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: blog.ahzf.de &#187; Blog Archive &#187; Definition of C#</title>
		<link>http://improvingsoftware.com/2009/04/19/a-managers-retrospective-on-the-c-versus-vbnet-decision/#comment-442</link>
		<dc:creator><![CDATA[blog.ahzf.de &#187; Blog Archive &#187; Definition of C#]]></dc:creator>
		<pubDate>Sat, 17 Oct 2009 21:58:53 +0000</pubDate>
		<guid isPermaLink="false">http://softwareplusplus.wordpress.com/?p=21#comment-442</guid>
		<description><![CDATA[[...] C#.NET: A hybrid of C and Java that attempted to lure defectors from the Java camp to the .NET platform. It also provides an easy transition for C++ refugees who are sick of the annoyances of manual memory management and having 9 incompatible ways to implement a simple string. (via Software++) [...]]]></description>
		<content:encoded><![CDATA[<p>[...] C#.NET: A hybrid of C and Java that attempted to lure defectors from the Java camp to the .NET platform. It also provides an easy transition for C++ refugees who are sick of the annoyances of manual memory management and having 9 incompatible ways to implement a simple string. (via Software++) [...]</p>
]]></content:encoded>
	</item>
</channel>
</rss>

