<?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: Joel Spolsky, Snake-Oil Salesman</title>
	<atom:link href="http://www.stochasticgeometry.ie/2009/10/27/joel-spolsky-snake-oil-salesman/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.stochasticgeometry.ie/2009/10/27/joel-spolsky-snake-oil-salesman/</link>
	<description>Articles on random topics in Programming, Systems Administration, Academia and Industry by Mark Dennehy</description>
	<lastBuildDate>Mon, 23 Aug 2010 12:31:44 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
<xhtml:meta xmlns:xhtml="http://www.w3.org/1999/xhtml" name="robots" content="noindex" />
	<item>
		<title>By: Trade Show Etiquette &#8211; Free Mints and First Impressions</title>
		<link>http://www.stochasticgeometry.ie/2009/10/27/joel-spolsky-snake-oil-salesman/comment-page-1/#comment-664</link>
		<dc:creator>Trade Show Etiquette &#8211; Free Mints and First Impressions</dc:creator>
		<pubDate>Mon, 03 May 2010 13:22:53 +0000</pubDate>
		<guid isPermaLink="false">http://stochasticgeometry.wordpress.com/?p=458#comment-664</guid>
		<description>[...] Joel Spolsky, Snake-Oil Salesman &#124; Stochastic Geometry [...]</description>
		<content:encoded><![CDATA[<p>[...] Joel Spolsky, Snake-Oil Salesman | Stochastic Geometry [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Shlomi Fish</title>
		<link>http://www.stochasticgeometry.ie/2009/10/27/joel-spolsky-snake-oil-salesman/comment-page-1/#comment-411</link>
		<dc:creator>Shlomi Fish</dc:creator>
		<pubDate>Mon, 16 Nov 2009 17:52:50 +0000</pubDate>
		<guid isPermaLink="false">http://stochasticgeometry.wordpress.com/?p=458#comment-411</guid>
		<description>&lt;a href=&quot;http://en.wikipedia.org/wiki/Ad_hominem&quot; rel=&quot;nofollow&quot;&gt;Ad-hominem&lt;/a&gt;, anyone? This thread to be filled of a lot of these.</description>
		<content:encoded><![CDATA[<p><a href="http://en.wikipedia.org/wiki/Ad_hominem" rel="nofollow">Ad-hominem</a>, anyone? This thread to be filled of a lot of these.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Mark Dennehy</title>
		<link>http://www.stochasticgeometry.ie/2009/10/27/joel-spolsky-snake-oil-salesman/comment-page-1/#comment-410</link>
		<dc:creator>Mark Dennehy</dc:creator>
		<pubDate>Sat, 07 Nov 2009 12:07:17 +0000</pubDate>
		<guid isPermaLink="false">http://stochasticgeometry.wordpress.com/?p=458#comment-410</guid>
		<description>That isn&#039;t giving it away for free Bryan. It&#039;s just not getting money up front. Like I said above:
&lt;blockquote&gt;Yes, I know it appears that he’s offering it “for free” but appearances are deceptive. Every software company who deals with colleges like this will push their products not merely for free, but with extra donations tagged on. They don’t do it because they’re being altruistic. In fact it’s become a major problem in universities because with funding getting tighter, the pressure to make an economically based decision instead of a teaching based one is enormous. The reason they do this is that it’s a long-term marketing ploy, as explained above. Joel’s just doing it on the cheap. And it’s done in every discipline – Intel funds a clean room here and takes the top two students every year. The top two students here are more often than not actual bona-fide geniuses whose net worth to Intel will far outstrip the cost of the donation Intel made. If the deal can be struck constructively, it can be beneficial, but that’s a rare occurance – and Joel’s idea of a donation just plain isn’t beneficial to anyone but Joel. It is snake oil salesmanship. Heck, it’s not even good snake oil salesmanship at that.&lt;/blockquote&gt;</description>
		<content:encoded><![CDATA[<p>That isn&#8217;t giving it away for free Bryan. It&#8217;s just not getting money up front. Like I said above:</p>
<blockquote><p>Yes, I know it appears that he’s offering it “for free” but appearances are deceptive. Every software company who deals with colleges like this will push their products not merely for free, but with extra donations tagged on. They don’t do it because they’re being altruistic. In fact it’s become a major problem in universities because with funding getting tighter, the pressure to make an economically based decision instead of a teaching based one is enormous. The reason they do this is that it’s a long-term marketing ploy, as explained above. Joel’s just doing it on the cheap. And it’s done in every discipline – Intel funds a clean room here and takes the top two students every year. The top two students here are more often than not actual bona-fide geniuses whose net worth to Intel will far outstrip the cost of the donation Intel made. If the deal can be struck constructively, it can be beneficial, but that’s a rare occurance – and Joel’s idea of a donation just plain isn’t beneficial to anyone but Joel. It is snake oil salesmanship. Heck, it’s not even good snake oil salesmanship at that.</p></blockquote>
]]></content:encoded>
	</item>
	<item>
		<title>By: Bryan</title>
		<link>http://www.stochasticgeometry.ie/2009/10/27/joel-spolsky-snake-oil-salesman/comment-page-1/#comment-409</link>
		<dc:creator>Bryan</dc:creator>
		<pubDate>Sat, 07 Nov 2009 11:22:01 +0000</pubDate>
		<guid isPermaLink="false">http://stochasticgeometry.wordpress.com/?p=458#comment-409</guid>
		<description>Well, except that he *is* giving it away for free. I&#039;ve been using FogBugz hosted for free for over a year now. That doesn&#039;t mean I&#039;m drinking the Joel Kool-Aid. It just means yes, he actually is giving the software away to certain groups of people, students doing capstone projects included.</description>
		<content:encoded><![CDATA[<p>Well, except that he *is* giving it away for free. I&#8217;ve been using FogBugz hosted for free for over a year now. That doesn&#8217;t mean I&#8217;m drinking the Joel Kool-Aid. It just means yes, he actually is giving the software away to certain groups of people, students doing capstone projects included.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: zero-blog &#187; The Fallacy of Industrial Expectation</title>
		<link>http://www.stochasticgeometry.ie/2009/10/27/joel-spolsky-snake-oil-salesman/comment-page-1/#comment-408</link>
		<dc:creator>zero-blog &#187; The Fallacy of Industrial Expectation</dc:creator>
		<pubDate>Sat, 07 Nov 2009 04:57:39 +0000</pubDate>
		<guid isPermaLink="false">http://stochasticgeometry.wordpress.com/?p=458#comment-408</guid>
		<description>[...] an arbitrary tool or language that the industry is consistant in its opinion. I read this really great response to his article that echos many of my complaints about this [...]</description>
		<content:encoded><![CDATA[<p>[...] an arbitrary tool or language that the industry is consistant in its opinion. I read this really great response to his article that echos many of my complaints about this [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Mark Dennehy</title>
		<link>http://www.stochasticgeometry.ie/2009/10/27/joel-spolsky-snake-oil-salesman/comment-page-1/#comment-407</link>
		<dc:creator>Mark Dennehy</dc:creator>
		<pubDate>Fri, 06 Nov 2009 21:42:44 +0000</pubDate>
		<guid isPermaLink="false">http://stochasticgeometry.wordpress.com/?p=458#comment-407</guid>
		<description>Bryan, as everyone&#039;s said before, it is a sales pitch. Joel&#039;s not giving his stuff away for free here, he&#039;s looking for product placement for free in a market most companies are paying a lot of money to get into. Altruistic, he&#039;s not!</description>
		<content:encoded><![CDATA[<p>Bryan, as everyone&#8217;s said before, it is a sales pitch. Joel&#8217;s not giving his stuff away for free here, he&#8217;s looking for product placement for free in a market most companies are paying a lot of money to get into. Altruistic, he&#8217;s not!</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Bryan</title>
		<link>http://www.stochasticgeometry.ie/2009/10/27/joel-spolsky-snake-oil-salesman/comment-page-1/#comment-406</link>
		<dc:creator>Bryan</dc:creator>
		<pubDate>Thu, 05 Nov 2009 21:01:30 +0000</pubDate>
		<guid isPermaLink="false">http://stochasticgeometry.wordpress.com/?p=458#comment-406</guid>
		<description>Mark, he isn&#039;t *selling* his wares in that article. He&#039;s offering to give them away for free.

From the article:

&quot;FogBugz would work great for tracking this: if you’re doing a capstone project and need access to FogBugz, please let us know and we’ll be happy to set you up for free. We can also set you up with beta access to kiln, our hosted version of Mercurial, which includes a code review feature.&quot;</description>
		<content:encoded><![CDATA[<p>Mark, he isn&#8217;t *selling* his wares in that article. He&#8217;s offering to give them away for free.</p>
<p>From the article:</p>
<p>&#8220;FogBugz would work great for tracking this: if you’re doing a capstone project and need access to FogBugz, please let us know and we’ll be happy to set you up for free. We can also set you up with beta access to kiln, our hosted version of Mercurial, which includes a code review feature.&#8221;</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: OrganizeFISH &#187; Blog Archive &#187; Good Things Happen = Utterly Distracted</title>
		<link>http://www.stochasticgeometry.ie/2009/10/27/joel-spolsky-snake-oil-salesman/comment-page-1/#comment-405</link>
		<dc:creator>OrganizeFISH &#187; Blog Archive &#187; Good Things Happen = Utterly Distracted</dc:creator>
		<pubDate>Wed, 28 Oct 2009 20:51:13 +0000</pubDate>
		<guid isPermaLink="false">http://stochasticgeometry.wordpress.com/?p=458#comment-405</guid>
		<description>[...] this note, I think Mark Dennehy&#8217;s post &#8220;Joel Spolsky, Snake-Oil Salesman&#8221; is a must follow-up read. The discussion that follows in the comments makes some good [...]</description>
		<content:encoded><![CDATA[<p>[...] this note, I think Mark Dennehy&#8217;s post &#8220;Joel Spolsky, Snake-Oil Salesman&#8221; is a must follow-up read. The discussion that follows in the comments makes some good [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Michael Pryor</title>
		<link>http://www.stochasticgeometry.ie/2009/10/27/joel-spolsky-snake-oil-salesman/comment-page-1/#comment-404</link>
		<dc:creator>Michael Pryor</dc:creator>
		<pubDate>Wed, 28 Oct 2009 20:35:52 +0000</pubDate>
		<guid isPermaLink="false">http://stochasticgeometry.wordpress.com/?p=458#comment-404</guid>
		<description>I like the picture! I&#039;ve never seen Joel in a top hat before.</description>
		<content:encoded><![CDATA[<p>I like the picture! I&#8217;ve never seen Joel in a top hat before.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: My Continuing Adventures in Technology&#8230; &#187; What makes a good developer?</title>
		<link>http://www.stochasticgeometry.ie/2009/10/27/joel-spolsky-snake-oil-salesman/comment-page-1/#comment-403</link>
		<dc:creator>My Continuing Adventures in Technology&#8230; &#187; What makes a good developer?</dc:creator>
		<pubDate>Wed, 28 Oct 2009 17:56:56 +0000</pubDate>
		<guid isPermaLink="false">http://stochasticgeometry.wordpress.com/?p=458#comment-403</guid>
		<description>[...] on Computer Science degrees is pretty wide of the mark - for many of the same reasons cited in this counter-argument. Speaking as someone with no formal Computer Science or Programming education, the most difficult [...]</description>
		<content:encoded><![CDATA[<p>[...] on Computer Science degrees is pretty wide of the mark &#8211; for many of the same reasons cited in this counter-argument. Speaking as someone with no formal Computer Science or Programming education, the most difficult [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: ashartanjung</title>
		<link>http://www.stochasticgeometry.ie/2009/10/27/joel-spolsky-snake-oil-salesman/comment-page-1/#comment-402</link>
		<dc:creator>ashartanjung</dc:creator>
		<pubDate>Wed, 28 Oct 2009 17:13:36 +0000</pubDate>
		<guid isPermaLink="false">http://stochasticgeometry.wordpress.com/?p=458#comment-402</guid>
		<description>Snake oil. I never hear before. Salam</description>
		<content:encoded><![CDATA[<p>Snake oil. I never hear before. Salam</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Mark Dennehy</title>
		<link>http://www.stochasticgeometry.ie/2009/10/27/joel-spolsky-snake-oil-salesman/comment-page-1/#comment-401</link>
		<dc:creator>Mark Dennehy</dc:creator>
		<pubDate>Wed, 28 Oct 2009 15:15:14 +0000</pubDate>
		<guid isPermaLink="false">http://stochasticgeometry.wordpress.com/?p=458#comment-401</guid>
		<description>You&#039;re saying all university courses omit team projects, don&#039;t get interim reports on long-term assignments, don&#039;t take part in external projects and so forth - yet I&#039;ve done those myself in here as an undergrad and still see them being done in here today, 16 years later. I know for a fact they&#039;re done in several other universities. I know for a fact that it&#039;s not just in Ireland that we do this. I know for a fact that all this has been hashed out for decades by people who are teaching in this field, formally, in peer-reviewed journals like the IEEE Transactions on Education.

I think perhaps you&#039;re basing your view of university education on a poor personal experience. I&#039;m not saying that it&#039;s invalid - there are bad schools out there, just as there are bad companies and bad developers. I&#039;m just saying it&#039;s not valid to tar every school with the brush of the nadir of the field.

As to Joel, firstly I&#039;m doing legwork to find a coherent point in his post to begin with (and the use of open source projects certainly isn&#039;t it, by the way). Every statement he&#039;s made in there, he negates in the last two paragraphs, and that&#039;s before you notice that  - as pointed out by commentators here and on reddit and on hackernews - he&#039;s only recently argued &lt;em&gt;against&lt;/em&gt; precisely what he&#039;s now supposedly arguing &lt;em&gt;for&lt;/em&gt; in this post. Add to that the point that he while he lauds Greg William&#039;s work, he then dumps all over the students actually doing it because they&#039;re, well, students. Rather than accomplished masters. Which seems wrong-headed from the start.

Then after highlighting what he says he thinks is the problem, he shills his own product as a solution. Yes, I know it appears that he&#039;s offering it &quot;for free&quot; but appearances are deceptive. &lt;em&gt;Every&lt;/em&gt; software company who deals with colleges like this will push their products not merely for free, but with extra donations tagged on. They don&#039;t do it because they&#039;re being altruistic. In fact it&#039;s become a major problem in universities because with funding getting tighter, the pressure to make an economically based decision instead of a teaching based one is enormous. The reason they do this is that it&#039;s a long-term marketing ploy, as explained above. Joel&#039;s just doing it on the cheap. And it&#039;s done in every discipline - Intel funds a clean room here and takes the top two students every year. The top two students here are more often than not actual bona-fide geniuses whose net worth to Intel will far outstrip the cost of the donation Intel made. If the deal can be struck constructively, it can be beneficial, but that&#039;s a rare occurance - and Joel&#039;s idea of a donation just plain isn&#039;t beneficial to anyone but Joel. It &lt;em&gt;is&lt;/em&gt; snake oil salesmanship. Heck, it&#039;s not even &lt;em&gt;good&lt;/em&gt; snake oil salesmanship at that.</description>
		<content:encoded><![CDATA[<p>You&#8217;re saying all university courses omit team projects, don&#8217;t get interim reports on long-term assignments, don&#8217;t take part in external projects and so forth &#8211; yet I&#8217;ve done those myself in here as an undergrad and still see them being done in here today, 16 years later. I know for a fact they&#8217;re done in several other universities. I know for a fact that it&#8217;s not just in Ireland that we do this. I know for a fact that all this has been hashed out for decades by people who are teaching in this field, formally, in peer-reviewed journals like the IEEE Transactions on Education.</p>
<p>I think perhaps you&#8217;re basing your view of university education on a poor personal experience. I&#8217;m not saying that it&#8217;s invalid &#8211; there are bad schools out there, just as there are bad companies and bad developers. I&#8217;m just saying it&#8217;s not valid to tar every school with the brush of the nadir of the field.</p>
<p>As to Joel, firstly I&#8217;m doing legwork to find a coherent point in his post to begin with (and the use of open source projects certainly isn&#8217;t it, by the way). Every statement he&#8217;s made in there, he negates in the last two paragraphs, and that&#8217;s before you notice that  &#8211; as pointed out by commentators here and on reddit and on hackernews &#8211; he&#8217;s only recently argued <em>against</em> precisely what he&#8217;s now supposedly arguing <em>for</em> in this post. Add to that the point that he while he lauds Greg William&#8217;s work, he then dumps all over the students actually doing it because they&#8217;re, well, students. Rather than accomplished masters. Which seems wrong-headed from the start.</p>
<p>Then after highlighting what he says he thinks is the problem, he shills his own product as a solution. Yes, I know it appears that he&#8217;s offering it &#8220;for free&#8221; but appearances are deceptive. <em>Every</em> software company who deals with colleges like this will push their products not merely for free, but with extra donations tagged on. They don&#8217;t do it because they&#8217;re being altruistic. In fact it&#8217;s become a major problem in universities because with funding getting tighter, the pressure to make an economically based decision instead of a teaching based one is enormous. The reason they do this is that it&#8217;s a long-term marketing ploy, as explained above. Joel&#8217;s just doing it on the cheap. And it&#8217;s done in every discipline &#8211; Intel funds a clean room here and takes the top two students every year. The top two students here are more often than not actual bona-fide geniuses whose net worth to Intel will far outstrip the cost of the donation Intel made. If the deal can be struck constructively, it can be beneficial, but that&#8217;s a rare occurance &#8211; and Joel&#8217;s idea of a donation just plain isn&#8217;t beneficial to anyone but Joel. It <em>is</em> snake oil salesmanship. Heck, it&#8217;s not even <em>good</em> snake oil salesmanship at that.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Jonathan Levin</title>
		<link>http://www.stochasticgeometry.ie/2009/10/27/joel-spolsky-snake-oil-salesman/comment-page-1/#comment-400</link>
		<dc:creator>Jonathan Levin</dc:creator>
		<pubDate>Wed, 28 Oct 2009 14:52:40 +0000</pubDate>
		<guid isPermaLink="false">http://stochasticgeometry.wordpress.com/?p=458#comment-400</guid>
		<description>I have to say that I have to disagree with this article and the harshness of it. After finishing reading this article, I went to read Joel&#039;s one and I feel that he has some valid points and none of the criticism in this post are warranted.

I finished a university degree 3-4 years ago and to this day, I have not found anything I learnt from it useful during my career in IT.

Joel&#039;s points (although being strongly on the site of software development) are valid in most cases. Not waiting for the last day to finish a project (guilty myself there), team work (absolutely crucial in the real world), self-managing... all valid, fundamental and not slightly surprising qualities that should be taught before starting your career. Its not as if you need to be an expert at it, but it would be nice to include a few projects like that in university.

Also, the point of Joel&#039;s post was that some universities decided to work on open-source projects as their school projects. I cannot think of a better way to teach people about programming while benefiting the rest of the world.
Not only do you get real world programming experience, you learn about developing with other people, version control, probably testing and new ways of managing projects. All this while your hand is being held by your university professor or teaching assistant so it becomes less intimidating. And the best for last, you improve open source projects that everyone can use to benefit themselves, their communities or their businesses.

Also, about the snake oil comment, totally uncalled for. Joel offered giving his software for free to students in the program mentioned to show his support.</description>
		<content:encoded><![CDATA[<p>I have to say that I have to disagree with this article and the harshness of it. After finishing reading this article, I went to read Joel&#8217;s one and I feel that he has some valid points and none of the criticism in this post are warranted.</p>
<p>I finished a university degree 3-4 years ago and to this day, I have not found anything I learnt from it useful during my career in IT.</p>
<p>Joel&#8217;s points (although being strongly on the site of software development) are valid in most cases. Not waiting for the last day to finish a project (guilty myself there), team work (absolutely crucial in the real world), self-managing&#8230; all valid, fundamental and not slightly surprising qualities that should be taught before starting your career. Its not as if you need to be an expert at it, but it would be nice to include a few projects like that in university.</p>
<p>Also, the point of Joel&#8217;s post was that some universities decided to work on open-source projects as their school projects. I cannot think of a better way to teach people about programming while benefiting the rest of the world.<br />
Not only do you get real world programming experience, you learn about developing with other people, version control, probably testing and new ways of managing projects. All this while your hand is being held by your university professor or teaching assistant so it becomes less intimidating. And the best for last, you improve open source projects that everyone can use to benefit themselves, their communities or their businesses.</p>
<p>Also, about the snake oil comment, totally uncalled for. Joel offered giving his software for free to students in the program mentioned to show his support.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Mark Dennehy</title>
		<link>http://www.stochasticgeometry.ie/2009/10/27/joel-spolsky-snake-oil-salesman/comment-page-1/#comment-399</link>
		<dc:creator>Mark Dennehy</dc:creator>
		<pubDate>Wed, 28 Oct 2009 14:29:47 +0000</pubDate>
		<guid isPermaLink="false">http://stochasticgeometry.wordpress.com/?p=458#comment-399</guid>
		<description>Twylite, you&#039;re arguing with an engineer about what an engineer is and isn&#039;t.
And frankly, you&#039;re wrong.

And it&#039;s not like there&#039;s no precedent for where we are now - you&#039;re looking at Civil Engineering as a model because it looks like the best one. Well, there&#039;s a reason for that. It is the oldest branch of the profession. It is in effect, stable. It has had time to build up its procedures and practices, to codify its body of knowledge and thrash out a nearly standard syllabus. Software engineering is an order or two (or three) of magnitude younger (depending on what you accept as the origins of civil engineering). Of course it&#039;s not as polished, and certainly you can find poor schools to point at - but you&#039;re cherry picking when you do.

The simple fact is that a Civil Engineering graduate (and I&#039;ve sunk pints with enough of them to know) is as much a neophyte as an Electrical, Mechanical or Computer Engineering graduate. That&#039;s why whole systems exist to provide Continuous Professional Development, it&#039;s why we have the Chartered Engineer title and its equivalents, it&#039;s why there are mentoring programs, it&#039;s why no fresh graduate walking into a job is put in a position where a mistake can cause large-scale damage right away.

You&#039;re expecting a four-year course to produce graduates with the equivalent of ten years work experience and years more of academic study. It&#039;s unreasonable and uninformed to expect that. We produce graduates with the most flexible and wide-ranging skillset we can in order to give the best foundation to build on that we can. But we cannot teach everything. And that&#039;s not a CS/CEng failing - you talk about Civil Engineering as though it was a single job, but it&#039;s &lt;em&gt;an area of industry&lt;/em&gt; with hundreds of subcategories and thousands upon thousands of roles; no Civil Engineering graduate has ever been ready to take on all of those roles, and none ever should, it would be a colossal waste of their time to learn how to do ten thousand things when they&#039;ll only ever going to do a handful. So instead, Civil Engineering teaches the fundamentals well and the graduates, with the help of CPD programs, learn more specific skillsets as they go.

This does raise one interesting question though. In Civil Engineering, the Chartered Engineer title (and its equivalents, European Engineer in the EU and Professional Engineer in the US and others elsewhere) are the end product of CPD programs which include courses and mentoring, all of which are actively supported by the companies in this field. Companies budget for training, they actually strive to be recognised as CPD-qualified by the engineering associations and train people to act as mentors within the company, they very actively promote CPD development not just as an optional extra or a reward for their employees, but as a mandatory, &lt;em&gt;socially expected&lt;/em&gt; activity for those employees. A civil engineer who isn&#039;t working towards his Chartered Engineer title raises eyebrows.

So where&#039;s the equivalent level of industry support and pressure in the CS realm? As far as I can see (and have seen) in Ireland, there&#039;s next to no recognition of the C.Eng title - and that ties into the ethos we see expressed time and again by practitioners who argue that no formal training is required in order to be a &quot;good developer&quot;. Technically speaking, you probably could find one or two people out of a few hundred million who could build a bridge without formal training as well, but would you cross bridges built by the other few hundred million untrained bridgebuilders?
And within the companies in the industry in Ireland that I&#039;ve come across -- and I&#039;ve yet to encounter anyone who&#039;s worked somewhere with a truly different ethos (as opposed to corporate lip service) -- training and CPD is something you might reward the best employees with by giving them an extra day&#039;s holidays to go to a training course, and mentoring consists of micromanagement and little else.

All the workload that in Civil Engineering is spread between universities and industry, in Software/Computer Engineering, employers seem to believe needs to be taken on solely by the universities. Which simply will not work.

Now how we fix *that* is a question I&#039;d like to see answered...</description>
		<content:encoded><![CDATA[<p>Twylite, you&#8217;re arguing with an engineer about what an engineer is and isn&#8217;t.<br />
And frankly, you&#8217;re wrong.</p>
<p>And it&#8217;s not like there&#8217;s no precedent for where we are now &#8211; you&#8217;re looking at Civil Engineering as a model because it looks like the best one. Well, there&#8217;s a reason for that. It is the oldest branch of the profession. It is in effect, stable. It has had time to build up its procedures and practices, to codify its body of knowledge and thrash out a nearly standard syllabus. Software engineering is an order or two (or three) of magnitude younger (depending on what you accept as the origins of civil engineering). Of course it&#8217;s not as polished, and certainly you can find poor schools to point at &#8211; but you&#8217;re cherry picking when you do.</p>
<p>The simple fact is that a Civil Engineering graduate (and I&#8217;ve sunk pints with enough of them to know) is as much a neophyte as an Electrical, Mechanical or Computer Engineering graduate. That&#8217;s why whole systems exist to provide Continuous Professional Development, it&#8217;s why we have the Chartered Engineer title and its equivalents, it&#8217;s why there are mentoring programs, it&#8217;s why no fresh graduate walking into a job is put in a position where a mistake can cause large-scale damage right away.</p>
<p>You&#8217;re expecting a four-year course to produce graduates with the equivalent of ten years work experience and years more of academic study. It&#8217;s unreasonable and uninformed to expect that. We produce graduates with the most flexible and wide-ranging skillset we can in order to give the best foundation to build on that we can. But we cannot teach everything. And that&#8217;s not a CS/CEng failing &#8211; you talk about Civil Engineering as though it was a single job, but it&#8217;s <em>an area of industry</em> with hundreds of subcategories and thousands upon thousands of roles; no Civil Engineering graduate has ever been ready to take on all of those roles, and none ever should, it would be a colossal waste of their time to learn how to do ten thousand things when they&#8217;ll only ever going to do a handful. So instead, Civil Engineering teaches the fundamentals well and the graduates, with the help of CPD programs, learn more specific skillsets as they go.</p>
<p>This does raise one interesting question though. In Civil Engineering, the Chartered Engineer title (and its equivalents, European Engineer in the EU and Professional Engineer in the US and others elsewhere) are the end product of CPD programs which include courses and mentoring, all of which are actively supported by the companies in this field. Companies budget for training, they actually strive to be recognised as CPD-qualified by the engineering associations and train people to act as mentors within the company, they very actively promote CPD development not just as an optional extra or a reward for their employees, but as a mandatory, <em>socially expected</em> activity for those employees. A civil engineer who isn&#8217;t working towards his Chartered Engineer title raises eyebrows.</p>
<p>So where&#8217;s the equivalent level of industry support and pressure in the CS realm? As far as I can see (and have seen) in Ireland, there&#8217;s next to no recognition of the C.Eng title &#8211; and that ties into the ethos we see expressed time and again by practitioners who argue that no formal training is required in order to be a &#8220;good developer&#8221;. Technically speaking, you probably could find one or two people out of a few hundred million who could build a bridge without formal training as well, but would you cross bridges built by the other few hundred million untrained bridgebuilders?<br />
And within the companies in the industry in Ireland that I&#8217;ve come across &#8212; and I&#8217;ve yet to encounter anyone who&#8217;s worked somewhere with a truly different ethos (as opposed to corporate lip service) &#8212; training and CPD is something you might reward the best employees with by giving them an extra day&#8217;s holidays to go to a training course, and mentoring consists of micromanagement and little else.</p>
<p>All the workload that in Civil Engineering is spread between universities and industry, in Software/Computer Engineering, employers seem to believe needs to be taken on solely by the universities. Which simply will not work.</p>
<p>Now how we fix *that* is a question I&#8217;d like to see answered&#8230;</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Twylite</title>
		<link>http://www.stochasticgeometry.ie/2009/10/27/joel-spolsky-snake-oil-salesman/comment-page-1/#comment-398</link>
		<dc:creator>Twylite</dc:creator>
		<pubDate>Wed, 28 Oct 2009 14:02:04 +0000</pubDate>
		<guid isPermaLink="false">http://stochasticgeometry.wordpress.com/?p=458#comment-398</guid>
		<description>Hi Mark,

&gt; But you seem to think that CS graduates can’t be developers – and you’re wrong. You need to stop thinking of CS graduates as bricklayers and start thinking of them as engineers

CS graduates are NOT engineers.  That&#039;s the whole problem.  Industry expects them to be engineers.  Academia is saying &quot;sure, they&#039;re engineers&quot;.  The graduates may be good scientists, they may have extensive competence in computation, but they haven&#039;t the breadth of knowledge _in the field of engineering_ to be engineers (without additional training).

Engineering: &quot;The application of scientific and mathematical principles to practical ends such as the design, manufacture, and operation of efficient and economical structures, machines, processes, and systems.&quot;

Or perhaps the IEEE definition: &quot;Software engineering is the application of a systematic, disciplined, quantifiable approach to development, operation, and maintenance of software; that is, the application of engineering to software&quot;.

The core focus of CS curricula is on theory and the development of theory; the core focus of engineering is on the application of theory in a practical environment.

Contrast the body of knowledge for Civil Engineering (http://www.asce.org/professional/educ/ , your national BOK may be slightly different) against your CS curriculum (looking only at the portions meant to be fulfilled by a bachelor&#039;s degree).   Where are the CS modules on risk, project management, and Professional skills (1/3 of the BOK!)? Where is the CS equivalent of materials science, or a study of contemporary issues _in software engineering_ (as opposed to open problems in computer science)?

&gt; The undergraduate course is a foundation as a result of that – it is not the finished article, because there’s no such thing with developers. It’s our responsibility to ensure that foundation is solid, not to produce some cubicle farm drone able to code in whatever industry specific methodology fad is in vogue at the time.

Pick up a textbook on SE (Sommerville&#039;s &quot;Software Engineering&quot; 6th Ed, for example).  Does a typical CS undergrad course cover even a quarter of this book?  A course that provides a foundation for a software _engineer_ should be covering most of the material in such a textbook (perhaps some only in a forth year of study).  A course that trains engineers should be testing for competency in _application_ of this knowledge (application per Bloom&#039;s Taxonomy, as expected in other engineering disciplines).  Are you managing to test applied knowledge without concrete cases or tools?

You may be providing an excellent foundation for scientists.  Some of those scientists may even pick up engineering principles and become competent developers.  But you will still not be training students to be engineers.</description>
		<content:encoded><![CDATA[<p>Hi Mark,</p>
<p>&gt; But you seem to think that CS graduates can’t be developers – and you’re wrong. You need to stop thinking of CS graduates as bricklayers and start thinking of them as engineers</p>
<p>CS graduates are NOT engineers.  That&#8217;s the whole problem.  Industry expects them to be engineers.  Academia is saying &#8220;sure, they&#8217;re engineers&#8221;.  The graduates may be good scientists, they may have extensive competence in computation, but they haven&#8217;t the breadth of knowledge _in the field of engineering_ to be engineers (without additional training).</p>
<p>Engineering: &#8220;The application of scientific and mathematical principles to practical ends such as the design, manufacture, and operation of efficient and economical structures, machines, processes, and systems.&#8221;</p>
<p>Or perhaps the IEEE definition: &#8220;Software engineering is the application of a systematic, disciplined, quantifiable approach to development, operation, and maintenance of software; that is, the application of engineering to software&#8221;.</p>
<p>The core focus of CS curricula is on theory and the development of theory; the core focus of engineering is on the application of theory in a practical environment.</p>
<p>Contrast the body of knowledge for Civil Engineering (<a href="http://www.asce.org/professional/educ/" rel="nofollow">http://www.asce.org/professional/educ/</a> , your national BOK may be slightly different) against your CS curriculum (looking only at the portions meant to be fulfilled by a bachelor&#8217;s degree).   Where are the CS modules on risk, project management, and Professional skills (1/3 of the BOK!)? Where is the CS equivalent of materials science, or a study of contemporary issues _in software engineering_ (as opposed to open problems in computer science)?</p>
<p>&gt; The undergraduate course is a foundation as a result of that – it is not the finished article, because there’s no such thing with developers. It’s our responsibility to ensure that foundation is solid, not to produce some cubicle farm drone able to code in whatever industry specific methodology fad is in vogue at the time.</p>
<p>Pick up a textbook on SE (Sommerville&#8217;s &#8220;Software Engineering&#8221; 6th Ed, for example).  Does a typical CS undergrad course cover even a quarter of this book?  A course that provides a foundation for a software _engineer_ should be covering most of the material in such a textbook (perhaps some only in a forth year of study).  A course that trains engineers should be testing for competency in _application_ of this knowledge (application per Bloom&#8217;s Taxonomy, as expected in other engineering disciplines).  Are you managing to test applied knowledge without concrete cases or tools?</p>
<p>You may be providing an excellent foundation for scientists.  Some of those scientists may even pick up engineering principles and become competent developers.  But you will still not be training students to be engineers.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Mark Dennehy</title>
		<link>http://www.stochasticgeometry.ie/2009/10/27/joel-spolsky-snake-oil-salesman/comment-page-1/#comment-397</link>
		<dc:creator>Mark Dennehy</dc:creator>
		<pubDate>Wed, 28 Oct 2009 12:44:38 +0000</pubDate>
		<guid isPermaLink="false">http://stochasticgeometry.wordpress.com/?p=458#comment-397</guid>
		<description>You need to tell Joel that Nicholas...
&lt;blockquote&gt;It’s taken me a while, but I finally learned that long-term deadlines (or no deadlines at all) just don’t work with professional programmers, either: you need a schedule of regular, frequent deliverables to be productive over the long term. The only reason the real world gets this right where all-student college teams fail is because in the real world there are managers, who can set deadlines, which a team of students who are all peers can’t pull off.&lt;/blockquote&gt;

That&#039;s from his final paragraph.</description>
		<content:encoded><![CDATA[<p>You need to tell Joel that Nicholas&#8230;</p>
<blockquote><p>It’s taken me a while, but I finally learned that long-term deadlines (or no deadlines at all) just don’t work with professional programmers, either: you need a schedule of regular, frequent deliverables to be productive over the long term. The only reason the real world gets this right where all-student college teams fail is because in the real world there are managers, who can set deadlines, which a team of students who are all peers can’t pull off.</p></blockquote>
<p>That&#8217;s from his final paragraph.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Mark Dennehy</title>
		<link>http://www.stochasticgeometry.ie/2009/10/27/joel-spolsky-snake-oil-salesman/comment-page-1/#comment-396</link>
		<dc:creator>Mark Dennehy</dc:creator>
		<pubDate>Wed, 28 Oct 2009 12:42:46 +0000</pubDate>
		<guid isPermaLink="false">http://stochasticgeometry.wordpress.com/?p=458#comment-396</guid>
		<description>Twylite, in a 14 paragraph article, Joel spent 12 paragraphs building up a problem. One that doesn&#039;t really exist (and he acknowledges as much in his last paragraph). And if you&#039;d actually read what I wrote, you might have noticed I didn&#039;t latch onto the last two paragraphs, but the first 12, because they were wrong (and rather substantially wrong, because smarter people than you, me or Joel have been working on this problem in large numbers for decades now).

We&#039;re in agreement on how CS graduates should be taught methodologies rather than just one. But you seem to think that CS graduates can&#039;t be developers - and you&#039;re wrong. You need to stop thinking of CS graduates as bricklayers and start thinking of them as engineers, and by that I mean that you have to keep in mind the fact that engineers never stop learning and qualifying throughout their professional lives. The undergraduate course is a foundation as a result of that - it is not the finished article, because there&#039;s no such thing with developers. It&#039;s our responsibility to ensure that foundation is solid, not to produce some cubicle farm drone able to code in whatever industry specific methodology fad is in vogue at the time.</description>
		<content:encoded><![CDATA[<p>Twylite, in a 14 paragraph article, Joel spent 12 paragraphs building up a problem. One that doesn&#8217;t really exist (and he acknowledges as much in his last paragraph). And if you&#8217;d actually read what I wrote, you might have noticed I didn&#8217;t latch onto the last two paragraphs, but the first 12, because they were wrong (and rather substantially wrong, because smarter people than you, me or Joel have been working on this problem in large numbers for decades now).</p>
<p>We&#8217;re in agreement on how CS graduates should be taught methodologies rather than just one. But you seem to think that CS graduates can&#8217;t be developers &#8211; and you&#8217;re wrong. You need to stop thinking of CS graduates as bricklayers and start thinking of them as engineers, and by that I mean that you have to keep in mind the fact that engineers never stop learning and qualifying throughout their professional lives. The undergraduate course is a foundation as a result of that &#8211; it is not the finished article, because there&#8217;s no such thing with developers. It&#8217;s our responsibility to ensure that foundation is solid, not to produce some cubicle farm drone able to code in whatever industry specific methodology fad is in vogue at the time.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Nicholas</title>
		<link>http://www.stochasticgeometry.ie/2009/10/27/joel-spolsky-snake-oil-salesman/comment-page-1/#comment-395</link>
		<dc:creator>Nicholas</dc:creator>
		<pubDate>Wed, 28 Oct 2009 12:39:15 +0000</pubDate>
		<guid isPermaLink="false">http://stochasticgeometry.wordpress.com/?p=458#comment-395</guid>
		<description>Developers on a Scrum team do not need a manager to come in and &quot;enforce time management&quot; upon them.  If that&#039;s the case then you have a very broken Scrum process.  The team should be self-directing and self-organizing.  The *team* should be managing their time, let members police one another.  You have a daily stand-up so it&#039;s very transparent and clear who&#039;s doing what, who needs help, who&#039;s slacking, etc.

Managers need to find their role in Agile as a servant leader.  The era of industrial revolution style management, where folks are treated like they&#039;re on an assembly line, just doesn&#039;t work -- definitely not with Agile.  Managers should focus on helping their teams by removing obstacles to work, coaching, and actually providing leadership.  Remember a manager measures, but a leader inspires.</description>
		<content:encoded><![CDATA[<p>Developers on a Scrum team do not need a manager to come in and &#8220;enforce time management&#8221; upon them.  If that&#8217;s the case then you have a very broken Scrum process.  The team should be self-directing and self-organizing.  The *team* should be managing their time, let members police one another.  You have a daily stand-up so it&#8217;s very transparent and clear who&#8217;s doing what, who needs help, who&#8217;s slacking, etc.</p>
<p>Managers need to find their role in Agile as a servant leader.  The era of industrial revolution style management, where folks are treated like they&#8217;re on an assembly line, just doesn&#8217;t work &#8212; definitely not with Agile.  Managers should focus on helping their teams by removing obstacles to work, coaching, and actually providing leadership.  Remember a manager measures, but a leader inspires.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Twylite</title>
		<link>http://www.stochasticgeometry.ie/2009/10/27/joel-spolsky-snake-oil-salesman/comment-page-1/#comment-394</link>
		<dc:creator>Twylite</dc:creator>
		<pubDate>Wed, 28 Oct 2009 12:26:20 +0000</pubDate>
		<guid isPermaLink="false">http://stochasticgeometry.wordpress.com/?p=458#comment-394</guid>
		<description>Hi Mark,

In a 14 paragraph article, Joel takes the second to last paragraph to suggest a specific methodology (Scrum) and to offer his product (FogBugz) as a tool that can be used for bug tracking and reviews.  The other 13 paragraphs are about the problem industry faces in hiring new graduates: they have no practical or conceptual experience with ANY version control, bug tracking, scheduling, etc.

You have chosen to read this as &quot;you need to teach Mercurial and FogBugz because its the stuff I used and sell&quot;.  I read it as &quot;you need to teach about this stuff, and if you need an actual tool to work with then I&#039;ll offer my company&#039;s resources&quot;.  Yes, he is marketing and yes he stands to gain.  No he did NOT say that specifically his suggestions should be used to the exclusion of others.

&gt; As to your specifications for a CS course, you and I will differ there.

I thought it evident that by saying &quot;include a study of development methodology&quot; I was not specifying an entire CS curriculum, so much as indicating some subset of the minimum requirements of a portion of a curriculum that claims to train software developers.  If you are not including the aspects I mentioned then you are not providing even skin-deep coverage of the SWEBOK or of software development practice.  i.e. you are training scientists not developers, and the course should not be claiming to train developers.

&gt;  If Agile isn’t another string to your bow, but the only string, then your college course hasn’t prepared you

Maybe I wasn&#039;t clear (I thought I was) that the concept of &quot;methodology&quot; should be studied along with a number of methodologies as cases; but no specific one advocated.  Right now a graduate &quot;software developer&quot; should be able to explain what a software development methodology is, discuss the pros and cons of following a methodology, identify the typical make-up of a methodology, name a couple of common methodologies (e.g. Waterfall, Iterative/Incremental, Agile) and describe the salient features of each, and have the skills &amp; knowledge to select between two methodologies for a given scenario (and defend the selection).</description>
		<content:encoded><![CDATA[<p>Hi Mark,</p>
<p>In a 14 paragraph article, Joel takes the second to last paragraph to suggest a specific methodology (Scrum) and to offer his product (FogBugz) as a tool that can be used for bug tracking and reviews.  The other 13 paragraphs are about the problem industry faces in hiring new graduates: they have no practical or conceptual experience with ANY version control, bug tracking, scheduling, etc.</p>
<p>You have chosen to read this as &#8220;you need to teach Mercurial and FogBugz because its the stuff I used and sell&#8221;.  I read it as &#8220;you need to teach about this stuff, and if you need an actual tool to work with then I&#8217;ll offer my company&#8217;s resources&#8221;.  Yes, he is marketing and yes he stands to gain.  No he did NOT say that specifically his suggestions should be used to the exclusion of others.</p>
<p>&gt; As to your specifications for a CS course, you and I will differ there.</p>
<p>I thought it evident that by saying &#8220;include a study of development methodology&#8221; I was not specifying an entire CS curriculum, so much as indicating some subset of the minimum requirements of a portion of a curriculum that claims to train software developers.  If you are not including the aspects I mentioned then you are not providing even skin-deep coverage of the SWEBOK or of software development practice.  i.e. you are training scientists not developers, and the course should not be claiming to train developers.</p>
<p>&gt;  If Agile isn’t another string to your bow, but the only string, then your college course hasn’t prepared you</p>
<p>Maybe I wasn&#8217;t clear (I thought I was) that the concept of &#8220;methodology&#8221; should be studied along with a number of methodologies as cases; but no specific one advocated.  Right now a graduate &#8220;software developer&#8221; should be able to explain what a software development methodology is, discuss the pros and cons of following a methodology, identify the typical make-up of a methodology, name a couple of common methodologies (e.g. Waterfall, Iterative/Incremental, Agile) and describe the salient features of each, and have the skills &amp; knowledge to select between two methodologies for a given scenario (and defend the selection).</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Mark Dennehy</title>
		<link>http://www.stochasticgeometry.ie/2009/10/27/joel-spolsky-snake-oil-salesman/comment-page-1/#comment-393</link>
		<dc:creator>Mark Dennehy</dc:creator>
		<pubDate>Wed, 28 Oct 2009 11:49:49 +0000</pubDate>
		<guid isPermaLink="false">http://stochasticgeometry.wordpress.com/?p=458#comment-393</guid>
		<description>That&#039;s a nice angle CB, but I don&#039;t need you to read layers of meaning into what I&#039;ve written to understand what I&#039;m saying. I just need you to actually &lt;em&gt;read what I&#039;ve written&lt;/em&gt;.  See &lt;a href=&quot;http://stochasticgeometry.wordpress.com/2009/10/27/joel-spolsky-snake-oil-salesman/#comment-607&quot; rel=&quot;nofollow&quot;&gt;the comment above&lt;/a&gt;.</description>
		<content:encoded><![CDATA[<p>That&#8217;s a nice angle CB, but I don&#8217;t need you to read layers of meaning into what I&#8217;ve written to understand what I&#8217;m saying. I just need you to actually <em>read what I&#8217;ve written</em>.  See <a href="http://stochasticgeometry.wordpress.com/2009/10/27/joel-spolsky-snake-oil-salesman/#comment-607" rel="nofollow">the comment above</a>.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Mark Dennehy</title>
		<link>http://www.stochasticgeometry.ie/2009/10/27/joel-spolsky-snake-oil-salesman/comment-page-1/#comment-392</link>
		<dc:creator>Mark Dennehy</dc:creator>
		<pubDate>Wed, 28 Oct 2009 11:46:54 +0000</pubDate>
		<guid isPermaLink="false">http://stochasticgeometry.wordpress.com/?p=458#comment-392</guid>
		<description>That&#039;s not what he&#039;s talking about Twylite. Perhaps you should read more critically. He&#039;s offering lockin to his product on a badly thought out notion that contradicts large amounts of work into how to teach CS and what to teach on the courses. Nothing more.

As to the TCD CS course blurb, don&#039;t forget that TCD&#039;s CS course produced the people who went on directly from TCD (without industrial experience) to found Havok, Iona and various companies in the medical field. So it&#039;s accurate, if not particularly expansive (but then, what sales brochure ever gets the chance to answer every question? That&#039;s what the open days are for).

As to your specifications for a CS course, you and I will differ there. I&#039;ve worked in enough places, and done enough hiring interviews (and it doesn&#039;t take that many by the way), to know that your specification list is not fit for purpose for a CS course which has to equip graduates to go for positions in not merely your company, but the tens of thousands of others out there.

For example, everyone here has been talking about Agile methodologies, but not every company uses them or feels they are appropriate. If Agile isn&#039;t another string to your bow, but the &lt;em&gt;only&lt;/em&gt; string, then your college course hasn&#039;t prepared you sufficiently.</description>
		<content:encoded><![CDATA[<p>That&#8217;s not what he&#8217;s talking about Twylite. Perhaps you should read more critically. He&#8217;s offering lockin to his product on a badly thought out notion that contradicts large amounts of work into how to teach CS and what to teach on the courses. Nothing more.</p>
<p>As to the TCD CS course blurb, don&#8217;t forget that TCD&#8217;s CS course produced the people who went on directly from TCD (without industrial experience) to found Havok, Iona and various companies in the medical field. So it&#8217;s accurate, if not particularly expansive (but then, what sales brochure ever gets the chance to answer every question? That&#8217;s what the open days are for).</p>
<p>As to your specifications for a CS course, you and I will differ there. I&#8217;ve worked in enough places, and done enough hiring interviews (and it doesn&#8217;t take that many by the way), to know that your specification list is not fit for purpose for a CS course which has to equip graduates to go for positions in not merely your company, but the tens of thousands of others out there.</p>
<p>For example, everyone here has been talking about Agile methodologies, but not every company uses them or feels they are appropriate. If Agile isn&#8217;t another string to your bow, but the <em>only</em> string, then your college course hasn&#8217;t prepared you sufficiently.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Twylite</title>
		<link>http://www.stochasticgeometry.ie/2009/10/27/joel-spolsky-snake-oil-salesman/comment-page-1/#comment-391</link>
		<dc:creator>Twylite</dc:creator>
		<pubDate>Wed, 28 Oct 2009 07:53:00 +0000</pubDate>
		<guid isPermaLink="false">http://stochasticgeometry.wordpress.com/?p=458#comment-391</guid>
		<description>WTF Mark?  Have you not read anything Joel has written about building an environment conducive to development and developers?  Drop the strawman BS and admit that Joel was advocating the use of &quot;a bug tracker&quot; and &quot;a VCS&quot; JUST like you are, but offered the services of his company _gratis_ because he has the resources to make such an offer.

Pick up a newspaper or phone an employment agent, ask about programming jobs; ask what qualification is expected.  The answer is invariably &quot;Computer Science&quot;.  Now pick a student who will enter a CS course at the start of next year, ask what (s)he expects to do with the qualification.  The answer is invariably &quot;write software&quot; (or some variant thereof).

The TCD CS course page says &quot;If you can see yourself in a leading team of software developers in computer games, internet software or medical technologies or as a researcher developing innovative technology that will change the way we use computers, then Computer science at Trinity may be for you.&quot;  CS departments PERSIST in claiming that they are producing graduates that are competent to enter the workforce, but the very clear response from industry is that CS graduates are NOT competent and require a huge amount of on-the-job training.  My company hires EE grads in preference to CS for software development because they are more productive in just about all spheres of the development process, and better equipped to understand and adapt to real-world problems.

Any course that claims that its graduates can become &quot;software developers&quot; needs to include a study of development methodology (note: study, not advocate a particular methodology) and to demonstrate competence in applying at least one methodology (it doesn&#039;t matter which one, what matters is the ability to translate the theory into practice).  The methodology needs to include requirements gathering, specification, development, and testing _in some form_.  It needs to introduce and apply the concepts of source code management during development and testing.  It needs to include real-world considerations like debugging, and how you will structure your interface to get enough detail from a support call to debug the problem.  A graduate who is unable to walk into a CMMI level 0 shop, recognise the problems, and know how to go about finding solutions, is NOT adequately trained.</description>
		<content:encoded><![CDATA[<p>WTF Mark?  Have you not read anything Joel has written about building an environment conducive to development and developers?  Drop the strawman BS and admit that Joel was advocating the use of &#8220;a bug tracker&#8221; and &#8220;a VCS&#8221; JUST like you are, but offered the services of his company _gratis_ because he has the resources to make such an offer.</p>
<p>Pick up a newspaper or phone an employment agent, ask about programming jobs; ask what qualification is expected.  The answer is invariably &#8220;Computer Science&#8221;.  Now pick a student who will enter a CS course at the start of next year, ask what (s)he expects to do with the qualification.  The answer is invariably &#8220;write software&#8221; (or some variant thereof).</p>
<p>The TCD CS course page says &#8220;If you can see yourself in a leading team of software developers in computer games, internet software or medical technologies or as a researcher developing innovative technology that will change the way we use computers, then Computer science at Trinity may be for you.&#8221;  CS departments PERSIST in claiming that they are producing graduates that are competent to enter the workforce, but the very clear response from industry is that CS graduates are NOT competent and require a huge amount of on-the-job training.  My company hires EE grads in preference to CS for software development because they are more productive in just about all spheres of the development process, and better equipped to understand and adapt to real-world problems.</p>
<p>Any course that claims that its graduates can become &#8220;software developers&#8221; needs to include a study of development methodology (note: study, not advocate a particular methodology) and to demonstrate competence in applying at least one methodology (it doesn&#8217;t matter which one, what matters is the ability to translate the theory into practice).  The methodology needs to include requirements gathering, specification, development, and testing _in some form_.  It needs to introduce and apply the concepts of source code management during development and testing.  It needs to include real-world considerations like debugging, and how you will structure your interface to get enough detail from a support call to debug the problem.  A graduate who is unable to walk into a CMMI level 0 shop, recognise the problems, and know how to go about finding solutions, is NOT adequately trained.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Twylite</title>
		<link>http://www.stochasticgeometry.ie/2009/10/27/joel-spolsky-snake-oil-salesman/comment-page-1/#comment-390</link>
		<dc:creator>Twylite</dc:creator>
		<pubDate>Wed, 28 Oct 2009 07:06:57 +0000</pubDate>
		<guid isPermaLink="false">http://stochasticgeometry.wordpress.com/?p=458#comment-390</guid>
		<description>Another core problem is that many universities still don&#039;t have different CS and SE courses, and guidance counselors and industry still believe that CS is the degree required when hiring programmers.  This problem is academia&#039;s doing, and they need to fix it.</description>
		<content:encoded><![CDATA[<p>Another core problem is that many universities still don&#8217;t have different CS and SE courses, and guidance counselors and industry still believe that CS is the degree required when hiring programmers.  This problem is academia&#8217;s doing, and they need to fix it.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: CB</title>
		<link>http://www.stochasticgeometry.ie/2009/10/27/joel-spolsky-snake-oil-salesman/comment-page-1/#comment-389</link>
		<dc:creator>CB</dc:creator>
		<pubDate>Wed, 28 Oct 2009 05:17:32 +0000</pubDate>
		<guid isPermaLink="false">http://stochasticgeometry.wordpress.com/?p=458#comment-389</guid>
		<description>&quot;He’s asking that we cripple the careers of CS students [and] get them all locked into using his products.&quot;

Good grief. No wonder students can&#039;t do anything useful when they graduate. You can&#039;t teach them any real software because they&#039;d be &quot;locked in&quot;.

(Yeah, yeah, I know, that isn&#039;t what you meant.  I&#039;m supposed to read you charitably to the same degree that you read Spolsky uncharitably because you&#039;re an academic and he&#039;s a businessman.  Sheesh.)</description>
		<content:encoded><![CDATA[<p>&#8220;He’s asking that we cripple the careers of CS students [and] get them all locked into using his products.&#8221;</p>
<p>Good grief. No wonder students can&#8217;t do anything useful when they graduate. You can&#8217;t teach them any real software because they&#8217;d be &#8220;locked in&#8221;.</p>
<p>(Yeah, yeah, I know, that isn&#8217;t what you meant.  I&#8217;m supposed to read you charitably to the same degree that you read Spolsky uncharitably because you&#8217;re an academic and he&#8217;s a businessman.  Sheesh.)</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Erin</title>
		<link>http://www.stochasticgeometry.ie/2009/10/27/joel-spolsky-snake-oil-salesman/comment-page-1/#comment-388</link>
		<dc:creator>Erin</dc:creator>
		<pubDate>Wed, 28 Oct 2009 01:25:01 +0000</pubDate>
		<guid isPermaLink="false">http://stochasticgeometry.wordpress.com/?p=458#comment-388</guid>
		<description>Mark, you obviously care a great deal about the students and about the quality of their education.

Watching my brother who is a math professor, I have an idea how much pressure there is and how much caring goes into your craft.  I know you probably worry about making certain that your students are as well rounded and as well prepared as possible.

I&#039;m just saying that it might be important to those students for you to weigh employer points of view (no, not just Joel&#039;s) as heavily as you weigh peer points of view when developing the curriculum. (And I&#039;m not saying you don&#039;t I just didn&#039;t see that on your list at the top).</description>
		<content:encoded><![CDATA[<p>Mark, you obviously care a great deal about the students and about the quality of their education.</p>
<p>Watching my brother who is a math professor, I have an idea how much pressure there is and how much caring goes into your craft.  I know you probably worry about making certain that your students are as well rounded and as well prepared as possible.</p>
<p>I&#8217;m just saying that it might be important to those students for you to weigh employer points of view (no, not just Joel&#8217;s) as heavily as you weigh peer points of view when developing the curriculum. (And I&#8217;m not saying you don&#8217;t I just didn&#8217;t see that on your list at the top).</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Mark Dennehy</title>
		<link>http://www.stochasticgeometry.ie/2009/10/27/joel-spolsky-snake-oil-salesman/comment-page-1/#comment-387</link>
		<dc:creator>Mark Dennehy</dc:creator>
		<pubDate>Wed, 28 Oct 2009 00:53:38 +0000</pubDate>
		<guid isPermaLink="false">http://stochasticgeometry.wordpress.com/?p=458#comment-387</guid>
		<description>Firstly, Joel is being an employer who doesn&#039;t feel he has a duty of care to the career of his employees if he&#039;s recommending that they be trained using his products and his methodology so they can slot into his company more easily. What about the other hundred or so students in whatever course takes his advice whom he does not hire?

Secondly, universities have, as I&#039;ve said repeatedly, a duty of care to the student to not follow advice like Joel&#039;s. They have to act in the best interest of the student, not Joel.

Lastly, Joel&#039;s the one looking for something for nothing here. He&#039;s asking that we cripple the careers of CS students so he doesn&#039;t have to do the kind of on-the-job training every other employer takes as read, and that we&#039;d get them all locked into using his products. And why would we do that? What would we get back in return? Well, nothing. It&#039;s a case of Joel wins, everyone else loses.

Good for him my hat!</description>
		<content:encoded><![CDATA[<p>Firstly, Joel is being an employer who doesn&#8217;t feel he has a duty of care to the career of his employees if he&#8217;s recommending that they be trained using his products and his methodology so they can slot into his company more easily. What about the other hundred or so students in whatever course takes his advice whom he does not hire?</p>
<p>Secondly, universities have, as I&#8217;ve said repeatedly, a duty of care to the student to not follow advice like Joel&#8217;s. They have to act in the best interest of the student, not Joel.</p>
<p>Lastly, Joel&#8217;s the one looking for something for nothing here. He&#8217;s asking that we cripple the careers of CS students so he doesn&#8217;t have to do the kind of on-the-job training every other employer takes as read, and that we&#8217;d get them all locked into using his products. And why would we do that? What would we get back in return? Well, nothing. It&#8217;s a case of Joel wins, everyone else loses.</p>
<p>Good for him my hat!</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Erin</title>
		<link>http://www.stochasticgeometry.ie/2009/10/27/joel-spolsky-snake-oil-salesman/comment-page-1/#comment-386</link>
		<dc:creator>Erin</dc:creator>
		<pubDate>Wed, 28 Oct 2009 00:46:29 +0000</pubDate>
		<guid isPermaLink="false">http://stochasticgeometry.wordpress.com/?p=458#comment-386</guid>
		<description>This is an easy one, Joel is an employer and he is talking about the education and experience he would like his future employees to have and basing it on his own experience.  He sees a problem that he would like to have fixed, rather than talk about how impossible it is to fix come up with alternatives.

Joel is also a businessman, he is offering his work to us for free in his blog - we are consuming his product for free and if he makes a mention of his own product then Good For Him.  Shame on you, stop being such a something for nothing bunch of people.</description>
		<content:encoded><![CDATA[<p>This is an easy one, Joel is an employer and he is talking about the education and experience he would like his future employees to have and basing it on his own experience.  He sees a problem that he would like to have fixed, rather than talk about how impossible it is to fix come up with alternatives.</p>
<p>Joel is also a businessman, he is offering his work to us for free in his blog &#8211; we are consuming his product for free and if he makes a mention of his own product then Good For Him.  Shame on you, stop being such a something for nothing bunch of people.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Top Posts &#171; WordPress.com</title>
		<link>http://www.stochasticgeometry.ie/2009/10/27/joel-spolsky-snake-oil-salesman/comment-page-1/#comment-385</link>
		<dc:creator>Top Posts &#171; WordPress.com</dc:creator>
		<pubDate>Wed, 28 Oct 2009 00:32:58 +0000</pubDate>
		<guid isPermaLink="false">http://stochasticgeometry.wordpress.com/?p=458#comment-385</guid>
		<description>[...]  Joel Spolsky, Snake-Oil Salesman If there is a lecturer in TCD&#8217;s CS department that doesn&#8217;t know of the problems and issues Joel just raised [...] [...]</description>
		<content:encoded><![CDATA[<p>[...]  Joel Spolsky, Snake-Oil Salesman If there is a lecturer in TCD&#8217;s CS department that doesn&#8217;t know of the problems and issues Joel just raised [...] [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Javier Rojas Goñi</title>
		<link>http://www.stochasticgeometry.ie/2009/10/27/joel-spolsky-snake-oil-salesman/comment-page-1/#comment-384</link>
		<dc:creator>Javier Rojas Goñi</dc:creator>
		<pubDate>Tue, 27 Oct 2009 22:35:25 +0000</pubDate>
		<guid isPermaLink="false">http://stochasticgeometry.wordpress.com/?p=458#comment-384</guid>
		<description>I think that this post sucked less than most of his recent production. I agree that the mention to FogBugz is a cheap ad, very like his usual style.

I will keep on reading Joel though, he sometimes have really thought provoking ideas.</description>
		<content:encoded><![CDATA[<p>I think that this post sucked less than most of his recent production. I agree that the mention to FogBugz is a cheap ad, very like his usual style.</p>
<p>I will keep on reading Joel though, he sometimes have really thought provoking ideas.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Mark Dennehy</title>
		<link>http://www.stochasticgeometry.ie/2009/10/27/joel-spolsky-snake-oil-salesman/comment-page-1/#comment-383</link>
		<dc:creator>Mark Dennehy</dc:creator>
		<pubDate>Tue, 27 Oct 2009 20:00:14 +0000</pubDate>
		<guid isPermaLink="false">http://stochasticgeometry.wordpress.com/?p=458#comment-383</guid>
		<description>Well, right first off the bat Tom, thanks for writing both those books, I&#039;ve found both to be exceptionally useful and Time Management has a permanent place on my nightstand as a result.

When I mentioned industrial tools there though, I was more thinking along the lines of not teaching VCS usage by training the students to use some specific product like SourceSafe, as opposed to teaching them the whole range of VCS solutions from RCS on forwards, as well as the strengths and weaknesses of each, and how and where to use them. Or, to put it another way, we teach students to program using C and C++, not with Visual Studio.

We can&#039;t really make participation in open source projects mandatory. If we can&#039;t have some sort of control over whether or not patches are accepted or whatever, we can&#039;t really make a student&#039;s grades dependant on patches being accepted; and if we based it off patch submission, we&#039;d probably swamp some poor project somewhere with a batch of suspiciously similar low-end patches to accompany the two or three genius-level ones we get in each class.

What we can do (and do regularly) is to have projects like building entries to the IEEE micromouse or Robot Sumo or Robocup Soccer tournaments; to have a final year project that runs for several months and has to be above a set standard for complexity (it&#039;s not unknown for these projects to be sufficiently advanced to have academic papers published about them, one was about mine); and to have a research group run by undergraduates, for undergraduate projects (the now sadly defunct SCRG, which produced microkernel OS work, compilers, and dozens of other interesting projects all through the 1980s and 1990s in TCD&#039;s CS Department, and which I really think we ought to be restoring today).

For example, the Introduction to Embedded Systems (CS7004) course&#039;s final labs will be building one on the other to get up to a final project where an ARM7TDMI board will be doing target tracking and interception using a USB missile launcher toy equipped with a webcam. That&#039;s going to require ticket tracking, documentation and VCS usage, and it&#039;s all part of a structured run at the final problem. Engineering and CS all have similar team projects, from bridge building, to building electric carts to carry beverages, to building a 68008-based system from a handful of chips and wire, a wirewrap tool and a lot of swearing at 2am in the lab :)</description>
		<content:encoded><![CDATA[<p>Well, right first off the bat Tom, thanks for writing both those books, I&#8217;ve found both to be exceptionally useful and Time Management has a permanent place on my nightstand as a result.</p>
<p>When I mentioned industrial tools there though, I was more thinking along the lines of not teaching VCS usage by training the students to use some specific product like SourceSafe, as opposed to teaching them the whole range of VCS solutions from RCS on forwards, as well as the strengths and weaknesses of each, and how and where to use them. Or, to put it another way, we teach students to program using C and C++, not with Visual Studio.</p>
<p>We can&#8217;t really make participation in open source projects mandatory. If we can&#8217;t have some sort of control over whether or not patches are accepted or whatever, we can&#8217;t really make a student&#8217;s grades dependant on patches being accepted; and if we based it off patch submission, we&#8217;d probably swamp some poor project somewhere with a batch of suspiciously similar low-end patches to accompany the two or three genius-level ones we get in each class.</p>
<p>What we can do (and do regularly) is to have projects like building entries to the IEEE micromouse or Robot Sumo or Robocup Soccer tournaments; to have a final year project that runs for several months and has to be above a set standard for complexity (it&#8217;s not unknown for these projects to be sufficiently advanced to have academic papers published about them, one was about mine); and to have a research group run by undergraduates, for undergraduate projects (the now sadly defunct SCRG, which produced microkernel OS work, compilers, and dozens of other interesting projects all through the 1980s and 1990s in TCD&#8217;s CS Department, and which I really think we ought to be restoring today).</p>
<p>For example, the Introduction to Embedded Systems (CS7004) course&#8217;s final labs will be building one on the other to get up to a final project where an ARM7TDMI board will be doing target tracking and interception using a USB missile launcher toy equipped with a webcam. That&#8217;s going to require ticket tracking, documentation and VCS usage, and it&#8217;s all part of a structured run at the final problem. Engineering and CS all have similar team projects, from bridge building, to building electric carts to carry beverages, to building a 68008-based system from a handful of chips and wire, a wirewrap tool and a lot of swearing at 2am in the lab <img src='http://www.stochasticgeometry.ie/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
]]></content:encoded>
	</item>
</channel>
</rss>
