<?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/"
		>
<channel>
	<title>Comments on: The Perils of Joel Spolsky</title>
	<atom:link href="http://blog.markturansky.com/archives/38/feed" rel="self" type="application/rss+xml" />
	<link>http://blog.markturansky.com/archives/38</link>
	<description>software architecture &#38; engineering, code hints, sometimes philosophy, photography, life, etc.</description>
	<lastBuildDate>Thu, 19 Jan 2012 14:26:50 -0500</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.6</generator>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
		<item>
		<title>By: qwerty</title>
		<link>http://blog.markturansky.com/archives/38/comment-page-1#comment-1512</link>
		<dc:creator>qwerty</dc:creator>
		<pubDate>Fri, 01 Jul 2011 01:51:52 +0000</pubDate>
		<guid isPermaLink="false">http://blog.markturansky.com/archives/38#comment-1512</guid>
		<description>&lt;a href=&quot;#comment-1259&quot; rel=&quot;nofollow&quot;&gt;@Mark Turansky &lt;/a&gt; 
&quot;but writing and supporting your own cross platform language when that’s been a long solved problem?&quot;

You are forgetting he had 8-10 years worth of VB code. Rewiting that using Java would be counter productive.

Why throw away tested code?</description>
		<content:encoded><![CDATA[<p><a href="#comment-1259" rel="nofollow">@Mark Turansky </a><br />
&#8220;but writing and supporting your own cross platform language when that’s been a long solved problem?&#8221;</p>
<p>You are forgetting he had 8-10 years worth of VB code. Rewiting that using Java would be counter productive.</p>
<p>Why throw away tested code?</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: qwerty</title>
		<link>http://blog.markturansky.com/archives/38/comment-page-1#comment-1511</link>
		<dc:creator>qwerty</dc:creator>
		<pubDate>Fri, 01 Jul 2011 01:49:35 +0000</pubDate>
		<guid isPermaLink="false">http://blog.markturansky.com/archives/38#comment-1511</guid>
		<description>Self-taught programmers succeeding and truly understanding programming are the exception, not the rule. 

What you are missing if you are self-taught people or from fake CS programs is a deep understanding of what is going on under the hood.

If you can&#039;t follow your code as the compiler and processor viewpoint you are not a programmer, you are an API monkey.

Few people without this knowledge can see that code is inefficient or flat out wring before executing it or running it in a profiler.</description>
		<content:encoded><![CDATA[<p>Self-taught programmers succeeding and truly understanding programming are the exception, not the rule. </p>
<p>What you are missing if you are self-taught people or from fake CS programs is a deep understanding of what is going on under the hood.</p>
<p>If you can&#8217;t follow your code as the compiler and processor viewpoint you are not a programmer, you are an API monkey.</p>
<p>Few people without this knowledge can see that code is inefficient or flat out wring before executing it or running it in a profiler.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Mark Turansky</title>
		<link>http://blog.markturansky.com/archives/38/comment-page-1#comment-1259</link>
		<dc:creator>Mark Turansky</dc:creator>
		<pubDate>Fri, 11 Dec 2009 03:57:20 +0000</pubDate>
		<guid isPermaLink="false">http://blog.markturansky.com/archives/38#comment-1259</guid>
		<description>@Chris,

“continues to ding Java whenever the opportunity arises” is accurate.

Spolsky is so anti-Java that when needing a cross platform language like Java, he chose to implement &quot;wasabi&quot; which is a vbscript hack to generate ASP and PHP versions of a bug tracker so he could sell copies to unix shops.  Selling cross platform products is smart business, but writing and supporting your own cross platform language when that&#039;s been a long solved problem?  </description>
		<content:encoded><![CDATA[<p>@Chris,</p>
<p>“continues to ding Java whenever the opportunity arises” is accurate.</p>
<p>Spolsky is so anti-Java that when needing a cross platform language like Java, he chose to implement &#8220;wasabi&#8221; which is a vbscript hack to generate ASP and PHP versions of a bug tracker so he could sell copies to unix shops.  Selling cross platform products is smart business, but writing and supporting your own cross platform language when that&#8217;s been a long solved problem?</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Chris</title>
		<link>http://blog.markturansky.com/archives/38/comment-page-1#comment-1258</link>
		<dc:creator>Chris</dc:creator>
		<pubDate>Fri, 11 Dec 2009 03:50:29 +0000</pubDate>
		<guid isPermaLink="false">http://blog.markturansky.com/archives/38#comment-1258</guid>
		<description>Mark, I don&#039;t even think you&#039;ve ever *really* read a Joel post.  I&#039;ve never met either one of you, I&#039;ve never worked for either of you as well... but when you write, [Joel ] &quot;continues to ding Java whenever the opportunity arises&quot; well, that&#039;s just a bunch of baloney!

Joel is NOT attacking Java, he&#039;s attacking what has happened to contemporary computer science curriculum -- BIG difference there Mark.  Java is the the vehicle for the concerns Joel addresses.  The implementation of Java is not necessarily the problem.

Go back, read his posts again, clear your mind, and take a deep breath.  

I have the exact same frustrations as Joel does.  I interview kids all the time fresh out of college and while they are good students, colleges aren&#039;t getting it done.  They don&#039;t teach things like pointers or managing resources... and why would one have to?  The common refrain I get all the time is the JVM or garbage collection takes care of it.  Why would a developer concern themselves with such things?  Ugh!  When I asked someone recently why they used a string instead of using StringBuilder, they told me my suggestion was stupid because when a desktop comes with 3 - 4 GB or RAM, why worry about memory or performance?  Where did this person go to school?  A Java school.

I&#039;m tired of giving them simple problems, in an exercise to gauge how they get things done, and seeing 400 lines of code in main().  But since that&#039;s how the Deitel &amp; Deitel books show it, that&#039;s what these kids learn.  They are basically memorizing the examples they download or see in a textbook and thus really have no clue what they are doing otherwise.

Unfortunately, this phenomenon has become widespread, and the Java schools are definitely to blame for it.

Heck, I love Java.  I&#039;ve worked in C++, C#, and Delphi shops too.  But for reasons based upon my work, I prefer Java.  And as much of a Java sock-puppet I am, I have never read one of Joel&#039;s articles and thought, wow, this guy has it out for the language.  Joel is rightfully ticked at the state of contemporary eduction.</description>
		<content:encoded><![CDATA[<p>Mark, I don&#8217;t even think you&#8217;ve ever *really* read a Joel post.  I&#8217;ve never met either one of you, I&#8217;ve never worked for either of you as well&#8230; but when you write, [Joel ] &#8220;continues to ding Java whenever the opportunity arises&#8221; well, that&#8217;s just a bunch of baloney!</p>
<p>Joel is NOT attacking Java, he&#8217;s attacking what has happened to contemporary computer science curriculum &#8212; BIG difference there Mark.  Java is the the vehicle for the concerns Joel addresses.  The implementation of Java is not necessarily the problem.</p>
<p>Go back, read his posts again, clear your mind, and take a deep breath.  </p>
<p>I have the exact same frustrations as Joel does.  I interview kids all the time fresh out of college and while they are good students, colleges aren&#8217;t getting it done.  They don&#8217;t teach things like pointers or managing resources&#8230; and why would one have to?  The common refrain I get all the time is the JVM or garbage collection takes care of it.  Why would a developer concern themselves with such things?  Ugh!  When I asked someone recently why they used a string instead of using StringBuilder, they told me my suggestion was stupid because when a desktop comes with 3 &#8211; 4 GB or RAM, why worry about memory or performance?  Where did this person go to school?  A Java school.</p>
<p>I&#8217;m tired of giving them simple problems, in an exercise to gauge how they get things done, and seeing 400 lines of code in main().  But since that&#8217;s how the Deitel &amp; Deitel books show it, that&#8217;s what these kids learn.  They are basically memorizing the examples they download or see in a textbook and thus really have no clue what they are doing otherwise.</p>
<p>Unfortunately, this phenomenon has become widespread, and the Java schools are definitely to blame for it.</p>
<p>Heck, I love Java.  I&#8217;ve worked in C++, C#, and Delphi shops too.  But for reasons based upon my work, I prefer Java.  And as much of a Java sock-puppet I am, I have never read one of Joel&#8217;s articles and thought, wow, this guy has it out for the language.  Joel is rightfully ticked at the state of contemporary eduction.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: John "Z-Bo" Zabroski</title>
		<link>http://blog.markturansky.com/archives/38/comment-page-1#comment-914</link>
		<dc:creator>John "Z-Bo" Zabroski</dc:creator>
		<pubDate>Mon, 03 Nov 2008 08:37:31 +0000</pubDate>
		<guid isPermaLink="false">http://blog.markturansky.com/archives/38#comment-914</guid>
		<description>I totally agree with you.  I read Smart and Get Things Done and threw it in the garbage.  I found George Bilder&#039;s Two Graphs That Explain Most IT Dysfunction to be the most illuminating article I&#039;ve ever read about the subject.</description>
		<content:encoded><![CDATA[<p>I totally agree with you.  I read Smart and Get Things Done and threw it in the garbage.  I found George Bilder&#8217;s Two Graphs That Explain Most IT Dysfunction to be the most illuminating article I&#8217;ve ever read about the subject.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Rob W</title>
		<link>http://blog.markturansky.com/archives/38/comment-page-1#comment-101</link>
		<dc:creator>Rob W</dc:creator>
		<pubDate>Wed, 06 Feb 2008 15:55:24 +0000</pubDate>
		<guid isPermaLink="false">http://blog.markturansky.com/archives/38#comment-101</guid>
		<description>[Aside to C# 3.0 commenters: what post are you responding to?]

Anyway, excellent post -- I&#039;m not sure either what the exact solution is, but probably more variety in degrees available; a CS degree can stay more strictly academically-oriented (and plumb the abstract side more deeply), while it would be quite useful to have degrees available that would cover some of the non-code aspects of software development like you mentioned, plus a solid base for coding and understanding software.

As for the Java thing -- I&#039;ve noticed that in a few of Joel&#039;s essays.  He actually said that the idea of students learning Java as a first language makes him &quot;actually physically disgusted&quot;.  Jeez.  My first language in a compsci intro course was JavaScript, then in later classes we moved on to Java, C, scheme, and a mini assembly language at one point.  It doesn&#039;t make a difference what you started with, as long as you get the depth somewhere along the way.

I tend to think it&#039;s best to use languages in intro classes where it&#039;s as easy as possible to get functional, useful programs written.  Joel is pushing for forcing the beginners to struggle with malloc, pointers, cryptic core dumps, etc..  Why?  As long as they have grasped the lower-level workings before they graduate, that addresses his only *actual* concern.  There&#039;s no reason left to force professors to *start* with those aspects.</description>
		<content:encoded><![CDATA[<p>[Aside to C# 3.0 commenters: what post are you responding to?]</p>
<p>Anyway, excellent post &#8212; I&#8217;m not sure either what the exact solution is, but probably more variety in degrees available; a CS degree can stay more strictly academically-oriented (and plumb the abstract side more deeply), while it would be quite useful to have degrees available that would cover some of the non-code aspects of software development like you mentioned, plus a solid base for coding and understanding software.</p>
<p>As for the Java thing &#8212; I&#8217;ve noticed that in a few of Joel&#8217;s essays.  He actually said that the idea of students learning Java as a first language makes him &#8220;actually physically disgusted&#8221;.  Jeez.  My first language in a compsci intro course was JavaScript, then in later classes we moved on to Java, C, scheme, and a mini assembly language at one point.  It doesn&#8217;t make a difference what you started with, as long as you get the depth somewhere along the way.</p>
<p>I tend to think it&#8217;s best to use languages in intro classes where it&#8217;s as easy as possible to get functional, useful programs written.  Joel is pushing for forcing the beginners to struggle with malloc, pointers, cryptic core dumps, etc..  Why?  As long as they have grasped the lower-level workings before they graduate, that addresses his only *actual* concern.  There&#8217;s no reason left to force professors to *start* with those aspects.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Kris G.</title>
		<link>http://blog.markturansky.com/archives/38/comment-page-1#comment-90</link>
		<dc:creator>Kris G.</dc:creator>
		<pubDate>Mon, 04 Feb 2008 06:50:13 +0000</pubDate>
		<guid isPermaLink="false">http://blog.markturansky.com/archives/38#comment-90</guid>
		<description>Very nice post!
I read Joel&#039;s post as well couple of weeks ago, I study myself in one of so called &#039;java universities&#039; and that&#039;s fine for me. I belive you can still be computer scientist and learn java at the same time. I think it&#039;s is the passion, continuous research and learning what makes us software scientists and not the tools we use to do the job. I just don&#039;t get all the buzz about java and why its so bad. I like C, C++, Ruby but I love Java, I belive it is the best language to learn object orientation and if I look on this from this point of view I start to belive that teaching Java as primary language is actually right thing to do. In my opinion the problem is not about teachnig java but about not enough pressure on other CS subjects at the same time, learning Java by itself do not force learning lots of other things automaticaly like for eg. c does.</description>
		<content:encoded><![CDATA[<p>Very nice post!<br />
I read Joel&#8217;s post as well couple of weeks ago, I study myself in one of so called &#8216;java universities&#8217; and that&#8217;s fine for me. I belive you can still be computer scientist and learn java at the same time. I think it&#8217;s is the passion, continuous research and learning what makes us software scientists and not the tools we use to do the job. I just don&#8217;t get all the buzz about java and why its so bad. I like C, C++, Ruby but I love Java, I belive it is the best language to learn object orientation and if I look on this from this point of view I start to belive that teaching Java as primary language is actually right thing to do. In my opinion the problem is not about teachnig java but about not enough pressure on other CS subjects at the same time, learning Java by itself do not force learning lots of other things automaticaly like for eg. c does.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Patrick</title>
		<link>http://blog.markturansky.com/archives/38/comment-page-1#comment-84</link>
		<dc:creator>Patrick</dc:creator>
		<pubDate>Thu, 31 Jan 2008 10:03:06 +0000</pubDate>
		<guid isPermaLink="false">http://blog.markturansky.com/archives/38#comment-84</guid>
		<description>Rob please read what anonynous types and what VB6 VARIANT are before comparing the two... ;) 

Behind c# you have a person like Anders Hejlsberg (the father of Turbo Pascal and Delphi) and   some of the &quot;innovations&quot; he put in c# 3.0 are really quite interesting! [innovations is quoted since some of the new funcs come straight from functional programming]</description>
		<content:encoded><![CDATA[<p>Rob please read what anonynous types and what VB6 VARIANT are before comparing the two&#8230; <img src='http://blog.markturansky.com/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' />  </p>
<p>Behind c# you have a person like Anders Hejlsberg (the father of Turbo Pascal and Delphi) and   some of the &#8220;innovations&#8221; he put in c# 3.0 are really quite interesting! [innovations is quoted since some of the new funcs come straight from functional programming]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Rob</title>
		<link>http://blog.markturansky.com/archives/38/comment-page-1#comment-78</link>
		<dc:creator>Rob</dc:creator>
		<pubDate>Thu, 31 Jan 2008 00:53:20 +0000</pubDate>
		<guid isPermaLink="false">http://blog.markturansky.com/archives/38#comment-78</guid>
		<description>&gt;&gt;With C# 3.0 out, you can’t really compare Java to C#. Java is the new VB6 of the industry.

Lets not forget that C# ripped most of it&#039;s original language constructs from the Java language, and C# 3.0 adds in the whole anonymous types thing (VB6 VARIANT anyone?). If anything is more like VB6, it&#039;s C#3.0. ;)</description>
		<content:encoded><![CDATA[<p>&gt;&gt;With C# 3.0 out, you can’t really compare Java to C#. Java is the new VB6 of the industry.</p>
<p>Lets not forget that C# ripped most of it&#8217;s original language constructs from the Java language, and C# 3.0 adds in the whole anonymous types thing (VB6 VARIANT anyone?). If anything is more like VB6, it&#8217;s C#3.0. <img src='http://blog.markturansky.com/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Jamie Penney</title>
		<link>http://blog.markturansky.com/archives/38/comment-page-1#comment-77</link>
		<dc:creator>Jamie Penney</dc:creator>
		<pubDate>Thu, 31 Jan 2008 00:26:56 +0000</pubDate>
		<guid isPermaLink="false">http://blog.markturansky.com/archives/38#comment-77</guid>
		<description>We have something like what you are talking about at our University - You can study Computer Science, which is theory heavy, or Software Engineering, which focuses on applying programming programming knowledge in actual projects. The last 2 years of the degree have a heavy focus on group projects. I&#039;m pretty sure SE is offered around the world - not just in New Zealand, Although the University of Auckland is the only University in the country to offer the degree as far as I know.</description>
		<content:encoded><![CDATA[<p>We have something like what you are talking about at our University &#8211; You can study Computer Science, which is theory heavy, or Software Engineering, which focuses on applying programming programming knowledge in actual projects. The last 2 years of the degree have a heavy focus on group projects. I&#8217;m pretty sure SE is offered around the world &#8211; not just in New Zealand, Although the University of Auckland is the only University in the country to offer the degree as far as I know.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: André</title>
		<link>http://blog.markturansky.com/archives/38/comment-page-1#comment-76</link>
		<dc:creator>André</dc:creator>
		<pubDate>Wed, 30 Jan 2008 21:57:10 +0000</pubDate>
		<guid isPermaLink="false">http://blog.markturansky.com/archives/38#comment-76</guid>
		<description>You conclude by saying &quot;what most of us do ... isn&#039;t even computer science.&quot;  You are right, and this is why what is taught in computer science&#039;s curriculum in today&#039;s universities (the target of Joel Spolsky&#039;s &quot;rant&quot;) should be irrelevant to you ... and the same for J.S.&#039;s blog.

I believe that, deep down, what is implied by your post, is that universities need to offer a totally new kind of degree, something that stands on its own, perhaps called &quot;software architecture&quot;.

To say that computer science degrees need to be changed to match the demands of the business world (something that is unfortunately happening) is not, imo, the solution.  Having a clearly different degree, based on a different premise, offered in parallel to computer science, is what is truly needed - as a complement to computer science, just like engineering physics complements physics.</description>
		<content:encoded><![CDATA[<p>You conclude by saying &#8220;what most of us do &#8230; isn&#8217;t even computer science.&#8221;  You are right, and this is why what is taught in computer science&#8217;s curriculum in today&#8217;s universities (the target of Joel Spolsky&#8217;s &#8220;rant&#8221;) should be irrelevant to you &#8230; and the same for J.S.&#8217;s blog.</p>
<p>I believe that, deep down, what is implied by your post, is that universities need to offer a totally new kind of degree, something that stands on its own, perhaps called &#8220;software architecture&#8221;.</p>
<p>To say that computer science degrees need to be changed to match the demands of the business world (something that is unfortunately happening) is not, imo, the solution.  Having a clearly different degree, based on a different premise, offered in parallel to computer science, is what is truly needed &#8211; as a complement to computer science, just like engineering physics complements physics.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Steve</title>
		<link>http://blog.markturansky.com/archives/38/comment-page-1#comment-75</link>
		<dc:creator>Steve</dc:creator>
		<pubDate>Wed, 30 Jan 2008 20:21:04 +0000</pubDate>
		<guid isPermaLink="false">http://blog.markturansky.com/archives/38#comment-75</guid>
		<description>With C# 3.0 out, you can&#039;t really compare Java to C#.  Java is the new VB6 of the industry.</description>
		<content:encoded><![CDATA[<p>With C# 3.0 out, you can&#8217;t really compare Java to C#.  Java is the new VB6 of the industry.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Bubba</title>
		<link>http://blog.markturansky.com/archives/38/comment-page-1#comment-70</link>
		<dc:creator>Bubba</dc:creator>
		<pubDate>Wed, 30 Jan 2008 05:18:52 +0000</pubDate>
		<guid isPermaLink="false">http://blog.markturansky.com/archives/38#comment-70</guid>
		<description>Mark, 
    I couldn&#039;t have said the Physicist/Architect metaphor any better myself....

Bubba</description>
		<content:encoded><![CDATA[<p>Mark,<br />
    I couldn&#8217;t have said the Physicist/Architect metaphor any better myself&#8230;.</p>
<p>Bubba</p>
]]></content:encoded>
	</item>
</channel>
</rss>

