<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="http://blogs.msdn.com/utility/FeedStylesheets/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/"><channel><title>JoeBork's Weblog</title><link>http://blogs.msdn.com/joebork/default.aspx</link><description>Breaking software in new and interesting ways</description><dc:language>en-US</dc:language><generator>CommunityServer 2.1 SP1 (Build: 61025.2)</generator><item><title>So Long, and Thanks for All the Fish</title><link>http://blogs.msdn.com/joebork/archive/2005/05/04/414771.aspx</link><pubDate>Thu, 05 May 2005 02:59:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:414771</guid><dc:creator>joebork</dc:creator><slash:comments>0</slash:comments><comments>http://blogs.msdn.com/joebork/comments/414771.aspx</comments><wfw:commentRss>http://blogs.msdn.com/joebork/commentrss.aspx?PostID=414771</wfw:commentRss><description>&lt;P&gt;&lt;FONT face=Verdana&gt;To say that I have been remiss in maintaining my weblog here would be a serious understatement. Whether or not I've been a meaningful contributor to MSDN Blogs (and by essentially every metric, I have not), I have enjoyed reading the entries of other bloggers here, and I have certainly learned a lot from them.&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Verdana&gt;Today is my last day at Microsoft. For a variety of reasons, I have decided to leave and pursue other (as-of-yet undetermined) adventures and challenges. My three years here have been, at times,&amp;nbsp;both tumultuous and rewarding. I have been privileged to work with some of the most intelligent and passionate people I have ever met and it is those people that I will miss the most.&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;FONT face=Verdana&gt;For those interested, you will be able to contact me at &lt;/FONT&gt;&lt;A href="mailto:joe@headblender.com"&gt;&lt;FONT face=Verdana&gt;joe@headblender.com&lt;/FONT&gt;&lt;/A&gt;&lt;FONT face=Verdana&gt;. Good luck and thank you.&lt;/FONT&gt;&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=414771" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/joebork/archive/tags/Personal/default.aspx">Personal</category></item><item><title>Give the Visual C++ for Devices guys some love</title><link>http://blogs.msdn.com/joebork/archive/2004/03/05/85025.aspx</link><pubDate>Sat, 06 Mar 2004 04:56:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:85025</guid><dc:creator>joebork</dc:creator><slash:comments>1</slash:comments><comments>http://blogs.msdn.com/joebork/comments/85025.aspx</comments><wfw:commentRss>http://blogs.msdn.com/joebork/commentrss.aspx?PostID=85025</wfw:commentRss><description>&lt;P&gt;A couple of my teammates on the VCD team, Josh Heitzman and Jeff Abraham, also have blogs.&amp;nbsp; If you're a current eVC user and you want to know more about the integration of the native development tools for devices into Whidbey, these are the guys to talk to.&lt;/P&gt;
&lt;P&gt;Josh has a couple of great entries today; one is about &lt;A href="http://blogs.msdn.com/josh_heitzman/archive/2004/03/05/84984.aspx"&gt;native support in the upcoming MDC community drop of Whidbey&lt;/A&gt; that will be available soon, and the other one&amp;nbsp;provides answers&amp;nbsp;to&amp;nbsp;&lt;A href="http://blogs.msdn.com/josh_heitzman/archive/2004/03/05/85000.aspx"&gt;recent native device development questions&lt;/A&gt;&amp;nbsp;his readers have asked.&lt;/P&gt;
&lt;P&gt;Also, I'm pretty late in mentioning this, but Jeff has been soliciting feedback on &lt;A href="http://blogs.msdn.com/jeffabraham/archive/2004/02/19/76702.aspx"&gt;how native project deployment should work in Whidbey&lt;/A&gt;.&amp;nbsp; If you have any thoughts on the matter, Jeff and the rest of the VCD folks would be glad to hear them.&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=85025" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/joebork/archive/tags/Visual+Studio+for+Devices/default.aspx">Visual Studio for Devices</category><category domain="http://blogs.msdn.com/joebork/archive/tags/Setup+and+Deployment/default.aspx">Setup and Deployment</category></item><item><title>Three quick tips for reporting GUI bugs</title><link>http://blogs.msdn.com/joebork/archive/2004/03/05/85008.aspx</link><pubDate>Sat, 06 Mar 2004 04:16:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:85008</guid><dc:creator>joebork</dc:creator><slash:comments>3</slash:comments><comments>http://blogs.msdn.com/joebork/comments/85008.aspx</comments><wfw:commentRss>http://blogs.msdn.com/joebork/commentrss.aspx?PostID=85008</wfw:commentRss><description>&lt;P&gt;This entry doesn't have any deep insights into software testing in general (or even GUI testing specifically), but I'd like to share some simple tips that can come in handy if you're reporting a GUI bug.&amp;nbsp; There's nothing particularly special about them but I'm always surprised at how many people don't know them, and they're all easy to use.&lt;/P&gt;
&lt;OL&gt;
&lt;LI value=1&gt;&lt;STRONG&gt;(Almost) Never send a capture of the entire screen&lt;/STRONG&gt;&lt;/LI&gt;&lt;/OL&gt;
&lt;BLOCKQUOTE dir=ltr&gt;
&lt;P&gt;It's pretty well known in Windows that the &amp;#8220;PrtScn&amp;#8221; key will capture the current screen as an image on the clipboard.&amp;nbsp; For a lot of UI issues, it's incredibly helpful to know exactly what someone is seeing on their screen rather than to try and have them describe it in detail.&amp;nbsp; Since it's common to have systems running in pretty high resolutions these days (1280x1024 or higher, for example) a full-screen capture produces a very large image, both in terms of resolution and in terms of the size of the saved image.&lt;/P&gt;
&lt;P&gt;Instead of using &amp;#8220;PrtScn&amp;#8221;, use &amp;#8220;Alt+PrtScn&amp;#8221; instead.&amp;nbsp; This will capture only the window that currently has focus instead of the entire screen.&amp;nbsp; Of course, if you're taking a capture of a maximized window, or if you need to capture overlapping windows, this won't help you.&amp;nbsp; In general, try to capture the smallest amount of the screen that is helpful in describing the problem.&amp;nbsp; Windows still comes with Paint (or &amp;#8220;Start | Run | pbrush.exe&amp;#8221; as I like to think of it), and Paint has a very simplistic cropping tool.&lt;/P&gt;&lt;/BLOCKQUOTE&gt;
&lt;OL&gt;
&lt;LI dir=ltr value=2&gt;&lt;STRONG&gt;Save screen captures in PNG format,&amp;nbsp;not in BMP or JPG format&lt;/STRONG&gt;&lt;/LI&gt;&lt;/OL&gt;
&lt;BLOCKQUOTE dir=ltr&gt;
&lt;P&gt;Since at least Windows 2000, Paint has had the ability to save files in PNG format.&amp;nbsp; This is the best image format for sending screen captures for two reasons:&amp;nbsp; It is compressed, unlike BMP (which can result in huge file sizes for high resolution displays in 24- or 32-bit color depths), and it's compression algorithm is lossless.&amp;nbsp; The latter means that PNG files will generally be larger than the corresponding JPG file, but JPG compression is lossy, and for some kinds of UI bugs that deal with pixel-level details, the compression artifacts introduced by the JPG compression can do more harm than good in trying to determine the root cause of the bug.&lt;/P&gt;&lt;/BLOCKQUOTE&gt;
&lt;OL dir=ltr&gt;
&lt;LI value=3&gt;&lt;STRONG&gt;Send the message text of an error dialog instead of a screen capture&lt;/STRONG&gt;&lt;/LI&gt;&lt;/OL&gt;
&lt;BLOCKQUOTE dir=ltr&gt;
&lt;P&gt;This is the least-well-known of the three tips.&amp;nbsp; For almost all of the error dialogs that Windows applications generate, it's very simple to capture the text of the dialog in lieu of an image of the dialog window.&amp;nbsp; It's very simple: when the dialog box has focus, press Ctrl+C to copy the text of the dialog to the clipboard.&amp;nbsp; Windows even formats the text nicely, so you'll get something that looks like this when you paste:&lt;/P&gt;
&lt;BLOCKQUOTE dir=ltr&gt;
&lt;P&gt;---------------------------&lt;BR&gt;Paint&lt;BR&gt;---------------------------&lt;BR&gt;Save changes to untitled?&lt;BR&gt;---------------------------&lt;BR&gt;Yes&amp;nbsp;&amp;nbsp; No&amp;nbsp;&amp;nbsp; Cancel&amp;nbsp;&amp;nbsp; &lt;BR&gt;---------------------------&lt;/P&gt;&lt;/BLOCKQUOTE&gt;
&lt;P dir=ltr&gt;Being able to send the actual text of the error dialog has a lot of advantages:&amp;nbsp; It avoids transcription errors (particularly helpful when reporting some arcane error messages with hex error codes or exception typenames), it's even smaller than the PNG image of the dialog would be, and it makes it much simpler to search for other reported bugs with similar error messages.&amp;nbsp; &lt;/P&gt;&lt;/BLOCKQUOTE&gt;
&lt;P dir=ltr&gt;So there you go.&amp;nbsp; No great philosophical discussions, but at least you have a few concrete, practical&amp;nbsp;tips.&amp;nbsp; If you're a beta tester and you keep these things in mind when reporting bugs (either via the public newsgroups or Betaplace), I guarantee that the people who will be following up on your bug reports will appreciate it.&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=85008" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/joebork/archive/tags/Testing/default.aspx">Testing</category></item><item><title>Why hobbyist programmers matter</title><link>http://blogs.msdn.com/joebork/archive/2004/03/03/83654.aspx</link><pubDate>Thu, 04 Mar 2004 07:02:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:83654</guid><dc:creator>joebork</dc:creator><slash:comments>9</slash:comments><comments>http://blogs.msdn.com/joebork/comments/83654.aspx</comments><wfw:commentRss>http://blogs.msdn.com/joebork/commentrss.aspx?PostID=83654</wfw:commentRss><description>&lt;P&gt;&lt;A href="http://www.neopoleon.com/blog/"&gt;Rory&lt;/A&gt; asks the question, &amp;#8220;&lt;A href="http://neopoleon.com/blog/posts/3944.aspx"&gt;Should the hobbyist programmer matter to Microsoft?&lt;/A&gt;&amp;#8221;&amp;nbsp; His answer, basically, is no, saying &amp;#8220;I would prefer to think that Microsoft is going to continue to do what it's been doing for the past few years: Refine the development tools and technologies so that they make more and more sense to developers, rather than worrying about whether or not they make sense to niche markets.&amp;#8221;&lt;/P&gt;
&lt;P&gt;I respectfully disagree; I believe that Microsoft has an undeniable responsibility to the hobbyist programmer.&amp;nbsp; There are a lot of reasons why this is so, but the most important one is this: The hobbyist programmers of today are the professional developers of tomorrow.&lt;/P&gt;
&lt;P&gt;Perhaps my disagreement&amp;nbsp;stems from a matter of semantics.&amp;nbsp; Depending on how you define &amp;#8220;hobbyist programmer,&amp;#8221; you'll get wildly different groups of people.&amp;nbsp; To me, &amp;#8220;hobbyist&amp;#8221; is painting with a wide brush -- anyone from a student doing a homework assignment to a businessperson who writes Excel macros can probably fit somewhere into the &amp;#8220;hobbyist&amp;#8221; bucket.&amp;nbsp; I cut my programming teeth on QuickBasic 4.5 and Turbo Pascal 5.5 when I was in school, and one of the things that made these tools so appealing was they did a good job of satisfying the needs of hobbyist and professional developers alike.&lt;/P&gt;
&lt;P&gt;There are several factors that make successful tools for the hobbyist programmer.&amp;nbsp; Certainly the cost of development tools is one -- there's a reason that tools like Eclipse and SharpDevelop are fairly popular.&amp;nbsp; But more importantly, having a toolset that makes it easy for a hobbyist to be productive is vitally important.&amp;nbsp; There are a lot of people for whom a development tool (and programming in general) is not a journey but a means to an end.&amp;nbsp; Building tools that make it dead simple to give people a taste of success in solving their problems is enormously important.&amp;nbsp; The success of the .NET platform depends on the success of .NET developers, professional or hobbyist, and we need to make sure that Visual Studio is always getting better at helping developers be successful (and happy!).&lt;/P&gt;
&lt;P&gt;Many so-called &amp;#8220;hobbyist features,&amp;#8221; like wizards and designers, can be useful to developers of any variety.&amp;nbsp; Even if you're a professional developer, is it worth your time to manually crank out hundreds of lines of code to wrap your DataSet in a strongly-typed class when you can get a typed DataSet essentially for free using a wizard?&amp;nbsp; It's tempting to try and draw a bright line between tool features for professional and hobbyist developers, but the reality is that the distinction is blurred.&amp;nbsp; As the demands on a developers time increases and as the complexity of software grows, this line will become even less distinct.&amp;nbsp; &lt;/P&gt;
&lt;P&gt;Everything else aside, for me the desire to see Microsoft &amp;#8220;worry&amp;#8221; about hobbyist programmers is a personal one.&amp;nbsp; Coming from such a hobbyist background, I want to see us excite and encourage other hobbyists as much as possible.&amp;nbsp; And then we should hire them as software testers, and give them all window offices, Tablet PCs, and Smartphones.&amp;nbsp; (But that's just my opinion...) &lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=83654" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/joebork/archive/tags/Miscellany/default.aspx">Miscellany</category></item></channel></rss>