<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0">

<channel>
	<title>Joel on Software</title> 
	<link>http://www.joelonsoftware.com</link> 
	<description>Painless Software Management</description> 

	<language>en-us</language> 
	<copyright>Copyright 1999-2008 Joel Spolsky.</copyright> 

	<managingEditor>Joel Spolsky</managingEditor> 

	<webMaster>webmaster@fogcreek.com</webMaster> 

<image>
	<title>Joel On Software</title> 
	<url>http://www.joelonsoftware.com/RssJoelOnSoftware.jpg</url> 
	<link>http://www.joelonsoftware.com</link> 
	<width>144</width> 
	<height>25</height> 
	<description>Painless Software Management</description> 
</image>

<item>
	<title>Why testers?</title>
	<link>http://www.joelonsoftware.com/items/2010/01/26.html</link>
	<author>Joel Spolsky</author>
	<guid isPermaLink="true">http://www.joelonsoftware.com/items/2010/01/26.html</guid>
	<pubDate>26 Jan 2010 16:04:05 EST</pubDate>
	<description>
<![CDATA[
<p><span style="display: block; margin: 0 0 0.25ex 1em; position: relative; float: right;"><a href="http://www.joelonsoftware.com/items/2010/01/26dog!.JPG"><img style="border:1px solid #666;" alt="" src="http://www.joelonsoftware.com/items/2010/01/26dog!-thumbnail.JPG" /></a></span>My sister got her kids a little puppy, and they’ve been trying to train it. To live with a dog in the house, you need to teach it not to jump on people, not to poop in the house, to sit on command, and to never, ever, <em>ever </em>chew on the iPad. Never. Good girl.</p>
<p>With dogs the main trick to training is that feedback has to be immediate. If you come home to discover that, hours before, the dog tipped over the garbage can in the kitchen, it’s too late for training. You can yell at her but she just won’t get what you’re going on about. Dogs are just not that smart.</p>
<p>For programmers, getting better at what you do requires quick feedback, positive and negative, on what you’ve just done. The faster you get the feedback, the faster you’ll learn. With long-cycle shrinkwrap software, it can take a year or more to hear feedback from customers.</p>
<p><span style="display: block; margin: 0 0 0.25ex 1em; position: relative; float: right;"><a href="http://www.joelonsoftware.com/items/2010/01/26marzocco.jpg"><img style="border:1px solid #666;" alt="" src="http://www.joelonsoftware.com/items/2010/01/26marzocco-thumbnail.jpg" /></a></span>That’s one of the reasons we have testers. A great tester gives programmers immediate feedback on what they did right and what they did wrong. Believe it or not, one of the most valuable features of a tester is providing <em>positive</em> reinforcement. There is no better way to improve a programmer’s morale, happiness, and subjective sense of well-being than <strike>a La Marzocco Linea espresso machine</strike>&nbsp;to have dedicated testers who get frequent releases from the developers, try them out, and give negative <em>and </em>positive feedback. Otherwise it’s depressing to be a programmer. Here I am, typing away, writing all this awesome code, and nobody cares. Boo hoo.</p>
<p>Who should be a tester? That’s tricky! Software testing is one of those careers that isn’t that well known, so a lot of people who would be great at testing and would probably enjoy it a lot never consider applying for jobs as testers. </p>
<p>Signs of a good tester:</p>
<ul>
<li>Scientific</li>
<li>Loves a good puzzle, even the kind that takes days to solve</li>
<li>Likes to think about things methodically</li>
<li>Generally likes working with software and computers</li></ul>
<p>You don’t have to be a programmer to be a tester. A lot of companies want testers to be programmers who write automated test suites. It seems more efficient that way. This reflects a misunderstanding of what testers are supposed to do, which is evaluate new code, find the good things, find the bad things, and give positive and negative reinforcement to the developers. Sure, automated test suites are a time saver, but testing software covers so much more than that. If you put too much emphasis on those scripts, you won’t notice misaligned text, hostile user interfaces, bad color choices, and inconsistency. Worse, you’ll have a culture of testers frantically working to get their <em>own</em> code working, which crowds out what you need them to do: evaluate someone <em>else’s</em> code.</p>
<p>A particularly terrible idea is to offer testing jobs to the programmers who apply for jobs at your company and aren’t good enough to be programmers. Testers <em>don’t</em> have to be programmers, but if you spend long enough acting like a tester is just an incompetent programmer, eventually you’re building a team of incompetent programmers, not a team of competent testers. Since testing can be taught on the job, but general intelligence can’t, you really need very smart people as testers, even if they don’t have relevant experience. Many of the best testers I’ve worked with didn’t even realize they wanted to be testers until someone offered them the job.</p>
<p>If you:</p>
<ul>
<li>Love software and computers</li>
<li>Want to work on a software team, and</li>
<li>Don’t particularly like programming</li></ul>
<p>you should consider being a tester. (<a href="http://www.fogcreek.com/Jobs/QA.html">We’re hiring</a>! What a coincidence!)</p>
<p>Need to hire a really great programmer? Want a job that doesn't drive you crazy? Visit the <a href="http://jobs.joelonsoftware.com/">Joel on Software Job Board</a>: Great software jobs, great people.
</p>
]]>
</description>
</item>

<item>
	<title>Rocket Surgery Made Easy</title>
	<link>http://www.joelonsoftware.com/items/2010/01/25.html</link>
	<author>Joel Spolsky</author>
	<guid isPermaLink="true">http://www.joelonsoftware.com/items/2010/01/25.html</guid>
	<pubDate>25 Jan 2010 16:21:10 EST</pubDate>
	<description>
<![CDATA[
<p><a href="http://www.sensible.com/rocketsurgery/index.html"><img style="MARGIN-LEFT: 5px" border="0" alt="" align="right" src="http://www.joelonsoftware.com/items/2010/01/25Krug.PNG" /></a><a href="http://www.sensible.com/">Steve Krug</a> has written a follow up to his usability classic <a href="http://www.sensible.com/dmmt.html"><em>Don’t Make Me Think</em></a><em>. </em>The sequel, <a href="http://www.sensible.com/rocketsurgery/index.html"><em>Rocket Surgery Made Easy</em></a><em>, </em>is a terrific, short, concise, fun guide to running simple “hallway” usability tests to improve the usability of your software and websites. Highly recommended.</p>
<p>&nbsp;</p>
<p>Need to hire a really great programmer? Want a job that doesn't drive you crazy? Visit the <a href="http://jobs.joelonsoftware.com/">Joel on Software Job Board</a>: Great software jobs, great people.
</p>
]]>
</description>
</item>

<item>
	<title>A little less conversation</title>
	<link>http://www.joelonsoftware.com/items/2010/01/22.html</link>
	<author>Joel Spolsky</author>
	<guid isPermaLink="true">http://www.joelonsoftware.com/items/2010/01/22.html</guid>
	<pubDate>22 Jan 2010 15:33:45 EST</pubDate>
	<description>
<![CDATA[
<p><span style="display: block; margin: 0 0 0.25ex 1em; position: relative; float: right;"><a href="http://www.joelonsoftware.com/items/2010/01/22diagram.jpg"><img style="border:1px solid #666;" alt="" src="http://www.joelonsoftware.com/items/2010/01/22diagram-thumbnail.jpg" /></a></span>“As companies expand, the people within them start to specialize. At such a point, some managers will conclude that they have a ‘keep everyone on the same page’ problem. But often what they actually have is a ‘stop people from meddling when there are already enough smart people working on something’ problem.”</p>
<p>From my latest Inc. column: <a href="http://www.inc.com/magazine/20100201/a-little-less-conversation.html">A Little Less Conversation</a></p>
<p>&nbsp;</p>
<p>Need to hire a really great programmer? Want a job that doesn't drive you crazy? Visit the <a href="http://jobs.joelonsoftware.com/">Joel on Software Job Board</a>: Great software jobs, great people.
</p>
]]>
</description>
</item>

<item>
	<title>Secret language</title>
	<link>http://www.joelonsoftware.com/items/2009/12/30.html</link>
	<author>Joel Spolsky</author>
	<guid isPermaLink="true">http://www.joelonsoftware.com/items/2009/12/30.html</guid>
	<pubDate>30 Dec 2009 10:01:12 EST</pubDate>
	<description>
<![CDATA[
<p><a href="https://careers.microsoft.com/JobDetails.aspx?ss=&amp;pg=0&amp;so=&amp;rw=1&amp;jid=9914&amp;jlang=EN">Microsoft Careers</a>: “<span id="ctl00_ContentPlaceHolder1_JobDetails2_lblDescription">If you’re looking for a new role where you’ll focus on one of the biggest issues that is top of mind for KT and Steve B in ‘Compete’, build a complete left to right understanding of the subsidiary, have a large amount of executive exposure, build and manage the activities of a v-team of 13 district Linux&amp; Open Office Compete Leads, and develop a broad set of marketing skills and report to a management team committed to development and recognized for high WHI this is the position for you!”</span></p>
<p>This is ironic, to use the Alanis Morissette meaning of the word [NSFW <a href="http://www.youtube.com/watch?v=nT1TVSTkAXg">video</a>].</p>
<p>The whole reason Microsoft even <em>needs </em>a v-team of 13, um, “V DASHES” to compete against Open Office is that they’ve become so insular that their job postings are full of incomprehensible jargon and acronyms which nobody outside the company can understand. With 93,000 employees, nobody ever talks to anyone outside the company, so it's no surprise they've become a bizarre borg of "KT", "Steve B", "v-team", "high WHI," CSI, GM, BG, BMO (bowel movements?) and whatnot.</p>
<p>When I worked at Microsoft almost two decades ago we made fun of IBM for having a different word for everything. Everybody said, "Hard Drive," IBM said "Fixed Disk." Everybody said, "PC," IBM said "Workstation." IBM must have had whole departments of people just to FACT CHECK the pages in their manuals which said, "This page intentionally left blank."</p>
<p>Now when you talk to anyone who has been at Microsoft for more than a week you can’t understand a word they’re saying. Which is OK, you can never understand geeks. But at Microsoft you can’t even understand the <em>marketing</em> people, and, what’s worse, they don’t seem to <em>know</em> that they’re speaking in their own special language, understood only to them.</p>
<p>Need to hire a really great programmer? Want a job that doesn't drive you crazy? Visit the <a href="http://jobs.joelonsoftware.com/">Joel on Software Job Board</a>: Great software jobs, great people.
</p>
]]>
</description>
</item>

<item>
	<title>Let’s stop talking about “backups”</title>
	<link>http://www.joelonsoftware.com/items/2009/12/14.html</link>
	<author>Joel Spolsky</author>
	<guid isPermaLink="true">http://www.joelonsoftware.com/items/2009/12/14.html</guid>
	<pubDate>14 Dec 2009 10:30:13 EST</pubDate>
	<description>
<![CDATA[
<p><span style="display: block; margin: 0 0 0.25ex 1em; position: relative; float: right;" style="width:123px;"><a href="http://www.joelonsoftware.com/items/2009/12/emergency.jpg"><img style="width:125px;" style="border:1px solid #666;" alt="" src="http://www.joelonsoftware.com/items/2009/12/emergency-thumbnail.jpg" /></a></span>Is your desktop backed up?</p>
<p>Did you backup that server?</p>
<p>Are your backups on a different machine?</p>
<p>Do you have offsite backups?</p>
<p>All good questions, all best practices.</p>
<p>But let’s stop talking about “backups.” Doing a backup is too low a bar. Any experienced system administrator will tell you that they have a great backup plan, the trouble comes when you have to <em>restore</em>.</p>
<p>And that’s when you discover that:</p>
<ul>
<li>The backed-up files were encrypted with a cryptographically-secure key, the only copy of which was on the machine that was lost</li>
<li>The server had enormous amounts of configuration information stored in the IIS metabase which wasn’t backed up</li>
<li>The backup files were being copied to a FAT partition and were silently being truncated to 2GB</li>
<li>Your backups were on an LTO drive which was lost with the data center, and you can’t get another LTO drive for three days</li>
<li>And a million other things that can go wrong even when you “have” “backups.”</li></ul>
<p>The minimum bar for a reliable service is not that you have done a backup, but that you have done a <em>restore</em>. If you’re running a web service, you need to be able to show me that you can build a reasonably recent copy of the entire site, in a reasonable amount of time, on a new server or servers without ever accessing anything that was in the original data center. The bar is that you’ve done a <em>restore</em>.</p>
<p>Let’s stop asking people if they’re doing backups, and start asking if they’re doing restores.</p>
<p>Need to hire a really great programmer? Want a job that doesn't drive you crazy? Visit the <a href="http://jobs.joelonsoftware.com/">Joel on Software Job Board</a>: Great software jobs, great people.
</p>
]]>
</description>
</item>

<item>
	<title>Stack stats </title>
	<link>http://www.joelonsoftware.com/items/2009/12/13.html</link>
	<author>Joel Spolsky</author>
	<guid isPermaLink="true">http://www.joelonsoftware.com/items/2009/12/13.html</guid>
	<pubDate>13 Dec 2009 17:57:11 EST</pubDate>
	<description>
<![CDATA[
<p>The higher someone’s <a href="http://stackoverflow.com">Stack Overflow</a> reputation, the more likely they are to have submitted a CV to <a href="http://careers.stackoverflow.com/">Stack Overflow Careers</a>:</p>
<p><img border="0" alt="" src="http://www.joelonsoftware.com/items/2009/12/13cvs.png" width="426" height="375" /></p>
<p>This is not entirely surprising, of course: the more time someone has invested in Stack Overflow, the more likely they are to (a) know about Stack Overflow Careers, (b) be willing to invest $29, after all the hours they’ve already sunk, and (c) have the confidence that their CV is going to impress the kind of employers that are using the site.</p>
<p>Still, the participation rate in Stack Overflow Careers is pretty impressive, and it somewhat confirms the claim we’re making to employers, which is that when you search for CVs on Stack Overflow, you are looking at some pretty gosh darn good programmers.</p>
<p>While I’m rattling on about statistics, here’s a little bit of data about Stack Overflow traffic itself that you may not have seen.</p>
<p>We use <a href="http://www.quantcast.com/">Quantcast</a> to measure our traffic. Currently, they’re <a href="http://www.quantcast.com/p-c1rF4kxgLUzNc">showing us</a> as the 740th ranked site in the world (of all sites), with 6 million monthly unique visitors, 1.9 million from the US. And the growth is pretty steady, except for a couple of weeks at the end there which reflect the holiday season:</p>
<p><img border="0" alt="" src="http://www.joelonsoftware.com/items/2009/12/13quantcast.png" width="493" height="252" /></p>
<p>Comparing our traffic to our big competitor is difficult because they don’t use Quantcast, so we have to rely on Alexa, which has a reputation for particularly terrible data, but here’s what that looks like:</p>
<p><img border="0" alt="" src="http://www.joelonsoftware.com/items/2009/12/13alexa.png" width="410" height="234" /></p>
<p>Are there any sites out there for programmers with <em>more</em> traffic than Stack Overflow? I haven’t found any, using the available data... even msdn.microsoft.com has less, according to Quantcast, but I find that hard to believe.</p>
<p>In either case, having decided that Stack Overflow was the biggest programming site in the world, I thought, “hey, it should be easier for us to get ads.” I asked our ad guy, Alex “DailyWTF” Papadimoulis, if Microsoft had bought any ads. They’re about to launch Visual Studio 2010, which is probably going to have the biggest marketing campaign (in dollars) in the history of developer tools, and you’d think they’d want to spend <em>something</em> at the biggest programming site in the world. Here’s what he wrote back:</p>
<blockquote style="MARGIN-RIGHT: 0px" dir="ltr">
<p>“Microsoft is doing huge spends, but they’re going through McCann for the VS2010 launch (IIRC). Agencies really don’t like us. Now if we go to video units with fly-over… oh they’ll start loving us!”</p></blockquote>
<p dir="ltr">What he’s referring to is the fact that we don’t accept any kind of animated ads on Stack Overflow, because, well, they’re evil, so we lose a lot of revenue from advertising agencies who are looking for the most aggressive possible ways to get in people’s faces. Whatever. Don’t care. We hate animated ads and I’m pretty sure our users do, too.</p>
<p>Need to hire a really great programmer? Want a job that doesn't drive you crazy? Visit the <a href="http://jobs.joelonsoftware.com/">Joel on Software Job Board</a>: Great software jobs, great people.
</p>
]]>
</description>
</item>

<item>
	<title>When and how to micromanage</title>
	<link>http://www.joelonsoftware.com/items/2009/12/09.html</link>
	<author>Joel Spolsky</author>
	<guid isPermaLink="true">http://www.joelonsoftware.com/items/2009/12/09.html</guid>
	<pubDate>09 Dec 2009 20:49:23 EST</pubDate>
	<description>
<![CDATA[
<p>“Like most entrepreneurs, Ryan and I are still learning about how to manage people and teams. And we’re both used to hiring very smart and dedicated people who will get things done to a high standard if you give them some general direction and set them free. But on this trip, we started to notice that this style of hands-off management, which works so well with our own staffs, just wasn’t working when we had outside vendors involved.”</p>
<p>From my December column in Inc.: “<a href="http://www.joelonsoftware.com/inc.html?24">When and How to Micromanage</a>”</p>
<p>&nbsp;</p>
<p>Need to hire a really great programmer? Want a job that doesn't drive you crazy? Visit the <a href="http://jobs.joelonsoftware.com/">Joel on Software Job Board</a>: Great software jobs, great people.
</p>
]]>
</description>
</item>

</channel>
</rss>
