<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="http://blogbybob.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>Blog by Bob</title><link>http://blogbybob.com/default.aspx</link><description /><dc:language>en</dc:language><generator>CommunityServer 2007 SP1 (Build: 20510.895)</generator><item><title>Vanity Plate</title><link>http://blogbybob.com/archive/2008/03/04/vanity-plate.aspx</link><pubDate>Tue, 04 Mar 2008 14:53:00 GMT</pubDate><guid isPermaLink="false">bf319af5-e003-4fa3-843a-531836bde8e7:1434</guid><dc:creator>Bob</dc:creator><slash:comments>0</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://blogbybob.com/rsscomments.aspx?PostID=1434</wfw:commentRss><comments>http://blogbybob.com/archive/2008/03/04/vanity-plate.aspx#comments</comments><description>&lt;P mce_keep="true"&gt;I was going to get ROADKILL on my plate on my motorcycle, but bike plates are only 7 letters. These things just never seem to work out...&lt;/P&gt;&lt;img src="http://blogbybob.com/aggbug.aspx?PostID=1434" width="1" height="1"&gt;</description><category domain="http://blogbybob.com/archive/tags/Motorcycle/default.aspx">Motorcycle</category></item><item><title>Floss</title><link>http://blogbybob.com/archive/2007/11/07/floss.aspx</link><pubDate>Wed, 07 Nov 2007 14:45:00 GMT</pubDate><guid isPermaLink="false">bf319af5-e003-4fa3-843a-531836bde8e7:1428</guid><dc:creator>Bob</dc:creator><slash:comments>1</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://blogbybob.com/rsscomments.aspx?PostID=1428</wfw:commentRss><comments>http://blogbybob.com/archive/2007/11/07/floss.aspx#comments</comments><description>&lt;P mce_keep="true"&gt;&lt;A class="" title=Floss href="http://blogbybob.com/music/05%20Time%20After%20Time%20[The%20S.F.E.%20Version].wma" target=_blank mce_href="http://blogbybob.com/music/05 Time After Time [The S.F.E. Version].wma"&gt;http://blogbybob.com/music/05 Time After Time [The S.F.E. Version].wma&lt;/A&gt;&lt;/P&gt;&lt;img src="http://blogbybob.com/aggbug.aspx?PostID=1428" width="1" height="1"&gt;</description></item><item><title>HAHA</title><link>http://blogbybob.com/archive/2007/08/01/haha.aspx</link><pubDate>Wed, 01 Aug 2007 12:34:00 GMT</pubDate><guid isPermaLink="false">bf319af5-e003-4fa3-843a-531836bde8e7:1421</guid><dc:creator>Bob</dc:creator><slash:comments>3</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://blogbybob.com/rsscomments.aspx?PostID=1421</wfw:commentRss><comments>http://blogbybob.com/archive/2007/08/01/haha.aspx#comments</comments><description>&lt;P mce_keep="true"&gt;They're coming to take me away, HA HA&lt;BR&gt;They're coming to take me away, HO HO HEE HEE HA HA&lt;BR&gt;To the funny farm&lt;BR&gt;Where life is beautiful all the time&lt;BR&gt;And I'll be happy to see&lt;BR&gt;Those nice, young men&lt;BR&gt;In their clean, white coats&lt;BR&gt;And they're coming to take me away, &lt;I&gt;Ha-haaa!&lt;/I&gt;&lt;/P&gt;&lt;img src="http://blogbybob.com/aggbug.aspx?PostID=1421" width="1" height="1"&gt;</description></item><item><title>Solo Scrum</title><link>http://blogbybob.com/archive/2007/07/19/solo-scrum.aspx</link><pubDate>Thu, 19 Jul 2007 13:05:00 GMT</pubDate><guid isPermaLink="false">bf319af5-e003-4fa3-843a-531836bde8e7:1417</guid><dc:creator>Bob</dc:creator><slash:comments>2</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://blogbybob.com/rsscomments.aspx?PostID=1417</wfw:commentRss><comments>http://blogbybob.com/archive/2007/07/19/solo-scrum.aspx#comments</comments><description>&lt;P mce_keep="true"&gt;I do Scrum solo and pair program with myself. I even usually understand what I am writing.&lt;/P&gt;&lt;img src="http://blogbybob.com/aggbug.aspx?PostID=1417" width="1" height="1"&gt;</description><category domain="http://blogbybob.com/archive/tags/All+about+Bob/default.aspx">All about Bob</category></item><item><title>Sunglasses</title><link>http://blogbybob.com/archive/2007/06/21/sunglasses.aspx</link><pubDate>Thu, 21 Jun 2007 10:55:00 GMT</pubDate><guid isPermaLink="false">bf319af5-e003-4fa3-843a-531836bde8e7:1414</guid><dc:creator>Bob</dc:creator><slash:comments>1</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://blogbybob.com/rsscomments.aspx?PostID=1414</wfw:commentRss><comments>http://blogbybob.com/archive/2007/06/21/sunglasses.aspx#comments</comments><description>&lt;P mce_keep="true"&gt;So, I came in at 5:30 this morning (woot! early morning releases) and accidently wore my dark riding glasses. So, of course, &lt;A class="" href="http://blogbybob.com/music/Sunglasses_at_Night.mp3" target=_blank mce_href="http://blogbybob.com/music/Sunglasses_at_Night.mp3"&gt;this&lt;/A&gt; was stuck in my head the whole morning.&lt;/P&gt;&lt;img src="http://blogbybob.com/aggbug.aspx?PostID=1414" width="1" height="1"&gt;</description><category domain="http://blogbybob.com/archive/tags/Music/default.aspx">Music</category></item><item><title>Process Got You Down?</title><link>http://blogbybob.com/archive/2007/06/06/process-got-you-down.aspx</link><pubDate>Wed, 06 Jun 2007 12:27:00 GMT</pubDate><guid isPermaLink="false">bf319af5-e003-4fa3-843a-531836bde8e7:1413</guid><dc:creator>Bob</dc:creator><slash:comments>0</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://blogbybob.com/rsscomments.aspx?PostID=1413</wfw:commentRss><comments>http://blogbybob.com/archive/2007/06/06/process-got-you-down.aspx#comments</comments><description>&lt;P mce_keep="true"&gt;Process got you down? Have to jump through too many hoops to get your work done? Rules for the sake of rules? &lt;A href="http://cristgaming.com/pirate.swf" mce_href="http://cristgaming.com/pirate.swf"&gt;&lt;FONT face="Microsoft Sans Serif"&gt;http://cristgaming.com/pirate.swf&lt;/FONT&gt;&lt;/A&gt;&amp;nbsp;Turn up your volume, open that and get it done!&lt;/P&gt;&lt;img src="http://blogbybob.com/aggbug.aspx?PostID=1413" width="1" height="1"&gt;</description><category domain="http://blogbybob.com/archive/tags/Humor/default.aspx">Humor</category></item><item><title>Raymond Chen Talks About Smacking People</title><link>http://blogbybob.com/archive/2007/06/04/raymond-chen-talks-about-smacking-people.aspx</link><pubDate>Mon, 04 Jun 2007 16:49:00 GMT</pubDate><guid isPermaLink="false">bf319af5-e003-4fa3-843a-531836bde8e7:1411</guid><dc:creator>Bob</dc:creator><slash:comments>1</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://blogbybob.com/rsscomments.aspx?PostID=1411</wfw:commentRss><comments>http://blogbybob.com/archive/2007/06/04/raymond-chen-talks-about-smacking-people.aspx#comments</comments><description>&lt;P mce_keep="true"&gt;SMACK! Well, not really but &lt;A class="" href="http://blogs.msdn.com/oldnewthing/archive/2007/06/04/3069949.aspx" target=_blank mce_href="http://blogs.msdn.com/oldnewthing/archive/2007/06/04/3069949.aspx"&gt;funny none the less&lt;/A&gt;...&lt;/P&gt;
&lt;P mce_keep="true"&gt;&amp;lt;small quote&amp;gt;&lt;BR&gt;The developer who was responsible for investigating the bug decided to use this "signature value" technique. It is often the case that, for throwaway temporary signatures like this, you will use your own initials as the signature value. This is partly egotism but mostly just lack of creativity. But this particular developer had a better idea. Since he had a pretty good idea which component was corrupting the memory, he used not his own initials, but the initials of the developer responsible for the component he thought was the corruptor! That way, when that developer's component corrupted the signature, it'd just be corrupting his own initials. &lt;/P&gt;
&lt;P&gt;Of course, when the developer of the suspect component saw this check-in, he felt kind of insulted. After all, his friend just accused him of corrupting memory. &lt;BR&gt;&amp;lt;/small quote&amp;gt;&lt;/P&gt;&lt;img src="http://blogbybob.com/aggbug.aspx?PostID=1411" width="1" height="1"&gt;</description><category domain="http://blogbybob.com/archive/tags/Funny/default.aspx">Funny</category></item><item><title>15 Minutes</title><link>http://blogbybob.com/archive/2007/05/31/15-minutes.aspx</link><pubDate>Fri, 01 Jun 2007 03:29:00 GMT</pubDate><guid isPermaLink="false">bf319af5-e003-4fa3-843a-531836bde8e7:1410</guid><dc:creator>Bob</dc:creator><slash:comments>2</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://blogbybob.com/rsscomments.aspx?PostID=1410</wfw:commentRss><comments>http://blogbybob.com/archive/2007/05/31/15-minutes.aspx#comments</comments><description>&lt;P mce_keep="true"&gt;No, not 15 minutes of fame, I have never had that experience.&lt;/P&gt;
&lt;P mce_keep="true"&gt;I have, however, been having a weird dream lately. I don't sleep much. My normal routine is bed between 2 and 4am, getting up at 7:30 for work. And this goes on and on. On the weekends, I usually try to go to bed just early enough that I can fall asleep without hearing all the people around me getting up and being noisy, so 4 to 5 am, but I do sleep in on the weekends until 11 or 12.&lt;/P&gt;
&lt;P mce_keep="true"&gt;Well, I think lately I have been getting just a hair less sleep than I need. I have been waking up at 7:15, and in a half awake/half asleep state, I convince myself I can travel in time. But only for 15 minutes. So, in this theory of mine, I can travel back in time 15 minutes, go back to sleep for 15 minutes, half way wake up, and do it all again. As many times as I would like.&lt;/P&gt;
&lt;P mce_keep="true"&gt;Of course, 15 minutes goes by and my alarm clock wakes me up, so I guess so far it hasn't actually worked...&lt;/P&gt;&lt;img src="http://blogbybob.com/aggbug.aspx?PostID=1410" width="1" height="1"&gt;</description><category domain="http://blogbybob.com/archive/tags/All+about+Bob/default.aspx">All about Bob</category></item><item><title>Upgraded Community Server Today</title><link>http://blogbybob.com/archive/2007/05/27/upgraded-community-server-today.aspx</link><pubDate>Sun, 27 May 2007 06:28:00 GMT</pubDate><guid isPermaLink="false">bf319af5-e003-4fa3-843a-531836bde8e7:1409</guid><dc:creator>Bob</dc:creator><slash:comments>0</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://blogbybob.com/rsscomments.aspx?PostID=1409</wfw:commentRss><comments>http://blogbybob.com/archive/2007/05/27/upgraded-community-server-today.aspx#comments</comments><description>&lt;P mce_keep="true"&gt;You would think I would learn by now, to let things be. I wanted to do the whole CSS Reboot thing (even though I am already late) and decided if I was going to redo my theme from scratch, I would do it on CS 2007. Yeah,...about that...&lt;/P&gt;
&lt;P mce_keep="true"&gt;~9 hours later the site is back up and running, using the nice shine...default theme. I am setting this blog post as my home page for exactly 12 months to remind me what happens when one doesn't leave things well enough alone. &lt;/P&gt;
&lt;P mce_keep="true"&gt;I lost pretty much everything, except I was able to save the posts themselves. Good times...&lt;/P&gt;&lt;img src="http://blogbybob.com/aggbug.aspx?PostID=1409" width="1" height="1"&gt;</description><category domain="http://blogbybob.com/archive/tags/Irks/default.aspx">Irks</category></item><item><title>Stop Already</title><link>http://blogbybob.com/archive/2007/05/25/stop-already.aspx</link><pubDate>Fri, 25 May 2007 19:09:00 GMT</pubDate><guid isPermaLink="false">bf319af5-e003-4fa3-843a-531836bde8e7:1407</guid><dc:creator>Bob</dc:creator><slash:comments>1</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://blogbybob.com/rsscomments.aspx?PostID=1407</wfw:commentRss><comments>http://blogbybob.com/archive/2007/05/25/stop-already.aspx#comments</comments><description>&lt;P&gt;When people say 'Comment your code!', they are not saying that you should comment your code just because someone said to.&lt;/P&gt;
&lt;P&gt;//Save the data&lt;BR&gt;myObject.SaveMyData();&lt;/P&gt;
&lt;P&gt;Blah.&lt;/P&gt;
&lt;P&gt;Rules of Commenting:&lt;BR&gt;Avoid comments that explain the obvious.&lt;BR&gt;Write&amp;nbsp;readable code, don't comment unreadable code.&lt;BR&gt;Appropriately name variables and methods.&lt;/P&gt;
&lt;P&gt;Now, all of your code is self documenting, no one should have trouble figuring out *what* your code does. Comments explain *why* your code is doing it.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Exceptions:&lt;BR&gt;All methods should have XML documentation filled in fully. Then they only need to read the intellisense and not the code. If the method is properly refactored and scoped, it should be enough.&lt;/P&gt;&lt;img src="http://blogbybob.com/aggbug.aspx?PostID=1407" width="1" height="1"&gt;</description></item><item><title>Windows (Office) Sticky Notes</title><link>http://blogbybob.com/archive/2007/05/24/windows-office-sticky-notes.aspx</link><pubDate>Thu, 24 May 2007 12:28:00 GMT</pubDate><guid isPermaLink="false">bf319af5-e003-4fa3-843a-531836bde8e7:1399</guid><dc:creator>Bob</dc:creator><slash:comments>0</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://blogbybob.com/rsscomments.aspx?PostID=1399</wfw:commentRss><comments>http://blogbybob.com/archive/2007/05/24/windows-office-sticky-notes.aspx#comments</comments><description>&lt;P&gt;As I work through out the day, I usually have an instance of Notepad open to keep a running to do list, copy and paste a chunk of code into before I test big changes etc. I have always been some what jealous of the the built in sticky notes on the Mac, but I decided to find a simple (don't have to buy anything or write anything) way to have the same thing in Windows.&lt;/P&gt;
&lt;P&gt;Let me preface that somewhat, we all work for a living and part of that work is in Office, so I am going to assume that we all have it already.&lt;/P&gt;
&lt;P&gt;Grab your office icon and make a shortcut to it on the desktop.&lt;BR&gt;Add&amp;nbsp;&lt;FONT size=2&gt;/c ipm.stickynote to the target field, for instance, mine looks like this &lt;FONT size=2&gt;"C:\Program Files\Microsoft Office\OFFICE11\OUTLOOK.EXE" /c ipm.stickynote&lt;BR&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;&lt;FONT size=2&gt;You should also see a Shortcut key on the same screen in properties. I assigned Ctrl - Alt - S to mine&lt;BR&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;&lt;FONT size=2&gt;You can also choose a new icon for your shortcut, I made mine an icon of...the Office Sticky Note&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT size=2&gt;&lt;FONT size=2&gt;Bam. Ctrl - Alt - S, new sticky note.&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;All the note pad, half the fat.&lt;FONT size=2&gt;&lt;FONT size=2&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;img src="http://blogbybob.com/aggbug.aspx?PostID=1399" width="1" height="1"&gt;</description></item><item><title>Rails Performance</title><link>http://blogbybob.com/archive/2007/05/23/rails-performance.aspx</link><pubDate>Wed, 23 May 2007 18:32:00 GMT</pubDate><guid isPermaLink="false">bf319af5-e003-4fa3-843a-531836bde8e7:1398</guid><dc:creator>Bob</dc:creator><slash:comments>0</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://blogbybob.com/rsscomments.aspx?PostID=1398</wfw:commentRss><comments>http://blogbybob.com/archive/2007/05/23/rails-performance.aspx#comments</comments><description>&lt;P&gt;Rubyonrails.org recently (somewhat) linked to some &lt;A class="" href="http://weblog.rubyonrails.org/2007/4/1/rails-1-2-performance" target=_blank&gt;performance numbers&lt;/A&gt; on the perfomance of Rails 1.2.&lt;/P&gt;
&lt;P&gt;&amp;lt;quote&amp;gt;&lt;BR&gt;Stephan Kaes, our resident performance expert, has released a new version of RailsBench. He then created new Rails 1.2 vs Rails 1.1 benchmarks, discovering that things aren’t as bad as they seem. Of course, those numbers won’t mean a whole lot until you read the full report&lt;BR&gt;&amp;lt;/quote&amp;gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;Best Comment on the page?&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;&lt;EM&gt;Kay&lt;/EM&gt;&lt;/STRONG&gt; on 14 Apr 12:26:&lt;BR&gt;“Things aren’t as bad as they seem” should be the new Rails motto.&lt;/P&gt;&lt;img src="http://blogbybob.com/aggbug.aspx?PostID=1398" width="1" height="1"&gt;</description></item><item><title>Rebuttal by bob</title><link>http://blogbybob.com/archive/2007/05/22/rebuttal-by-bob.aspx</link><pubDate>Tue, 22 May 2007 23:49:00 GMT</pubDate><guid isPermaLink="false">bf319af5-e003-4fa3-843a-531836bde8e7:1394</guid><dc:creator>Bob</dc:creator><slash:comments>1</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://blogbybob.com/rsscomments.aspx?PostID=1394</wfw:commentRss><comments>http://blogbybob.com/archive/2007/05/22/rebuttal-by-bob.aspx#comments</comments><description>&lt;P&gt;The author of &lt;A class="" href="http://www.halfsigma.com/" target=_blank&gt;Half Sigma&lt;/A&gt; recently posted a blog about why a career in computer programming sucks, as well as several follow up posts.&lt;/P&gt;
&lt;P&gt;Everyone should have their opinion, and be free to express it, and as such, I wanted to provide a rebuttal for people who maybe wanted to slit their wrists after the long morbid read. I am going to quote, selectively, passages of text and offer my own words in response. Do I agree with some of the items he brings up? Sure. I would be surpirsed if anyone, computer programmers included, didn't dislike certain facets of their career. Even people who work in an industry doing what they would do for free as a hobby anyhow.&lt;/P&gt;
&lt;P&gt;&lt;A class="" href="http://www.halfsigma.com/2007/03/why_a_career_in.html" target=_blank&gt;Why a career in computer programming sucks&lt;/A&gt;&lt;/P&gt;
&lt;P style="COLOR:maroon;"&gt;&amp;lt;quote&amp;gt;&lt;BR&gt;Computer programming is a job that’s heavily dependent on temporary knowledge capital. It’s temporary because the powers that be keep changing the languages and tools that programmers need to do their jobs. In nearly all other professions, knowledge capital increases as you grow older because you keep learning more about your field. But in computer programming, the old knowledge becomes completely obsolete and useless.&lt;BR&gt;&amp;lt;/quote&amp;gt;&lt;/P&gt;
&lt;P&gt;While I agree much of our knowledge is fleeting and could be considered 'temporary', the knowledge that is such is meaningless weighed against the knowledge that *does* carry forward. Moving from language to language, platform to platform as time progresses, you will indeed find challenges in learning new tools, and new languages. The trade off on languages is almost a moot point though, would anyone seriously consider programming in VB 6 that they already know, superior to programming in .Net? Actually, don't answer that. I have worked with people who do indeed believe such a thing.&lt;BR&gt;What knowledge travels with us? Do you suddenly forget how to write legible, well documented code? Do you forget how to properly refactor? Do you forget all of your architectual knowledge and start writing code spaghetti code in the code like you did 20 years ago?&lt;/P&gt;
&lt;P style="COLOR:maroon;"&gt;&amp;lt;quote&amp;gt;&lt;BR&gt;So what advantage does a 60-year-old .NET programmer have over a 27-year-old .NET programmer when they both have, at most, 5 years of experience doing .NET programming? Absolutely none.&lt;BR&gt;&amp;lt;/quote&amp;gt;&lt;/P&gt;
&lt;P&gt;I think I already answered this, the 60 year old developer is more likely to build an architecture correcly the first time. His years of experience will allow him to see more readily when he is painting himself into a corner. And this is only talking from a pure code perspective. What about domain knowledge in the fields he has worked in? And experience implementing this knowledge in previous code bases, living through the scares of failure to write better code *because* of those failures. Programmers retain alot more knowledge than the language of the day, and this is a strong advantage to someone with more experience. Ever walk into a new job as a contractor and try to quickly work up an application, accessing a multitude of legacy datastores and systems, many not even following basics such as the normal forms? Let someone fresh out of college do that as effeciently as the 60 year old.&lt;/P&gt;
&lt;P style="COLOR:maroon;"&gt;&amp;lt;quote&amp;gt;&lt;BR&gt;Other professional fields are not like this. I remember reading the classic 1933 edition of Securities Analysis by Benjamin Graham, and as I read it I was amazed by how useful and relevant the material was even though it was more than 65 years old.&lt;BR&gt;&amp;lt;/quote&amp;gt;&lt;/P&gt;
&lt;P&gt;This comment I agree with. I can't think of many 'professions' that change and morph as quickly as computer programming. But to say that you can't read anything from decades past about computer programming that is not still relevant? Edgar Codd maybe? Not much changing there. And for the things that do change, anyone would be hard pressed to deny the improvements are phenominal. And how many computer programmers do you really think would be interested in programming if it were as static as 'Security Analysis'? The main criteria I use to judge my progress every year is to look back at the previous January and realize what a hack I was. The day I stop seeing the difference is the day I will wish computers stood still. I hope that day never comes.&lt;/P&gt;
&lt;P style="COLOR:maroon;"&gt;&amp;lt;quote&amp;gt;&lt;BR&gt;Computer programming is a low prestige profession.&lt;BR&gt;This relates to the prestige thing again. When a company I worked for wanted to save money on rent, guess what department they decided to move to the low rent satellite office? You guessed it, the IT department.&lt;BR&gt;&amp;lt;/quote&amp;gt;&lt;/P&gt;
&lt;P&gt;This is a quote I wanted to discuss, but in a much different way. I grouped sentences from two sections together because they are closely related. I have no arguement with alot of his comments in this section. He talks about cubes instead of offices, and having to fight nail and tooth to get such cheap, simple, amazingly productive adding tools like large or second monitors. I am actually going through something similar, where I have been trying, pretty much since being hired, to get a second monitor. I have even offered to bring in my own video card and monitor.&lt;BR&gt;Having agreed, I want to somewhat disagree for a moment. I don't think the developers are necessarilly the victims here. I too often see a majority of developers who really only see this as a job. They aren't providing a good screaming sign that developers provide value. Until our profession can provide value as a whole, we will be treated like this. Is it fair to the developers providing value? No, not really, but life is often not fair.&lt;/P&gt;
&lt;P style="COLOR:maroon;"&gt;&amp;lt;quote&amp;gt;&lt;BR&gt;I’m sorry about using a word that doesn’t exist in the dictionary, but foreignization best explains what’s happening in the computer programming industry. &lt;BR&gt;First of all, there is the familiar outsourcing of jobs to foreign countries, mostly India. Because of this, the computer programming industry within the United States is an industry with a shrinking number of jobs, although as a worldwide phenomenon I’m sure computer programming will grow at a brisk rate. Would outsourcing of computer programming and other IT jobs be such a big trend if the industry were more prestigious? I think not.&lt;BR&gt;&amp;lt;/quote&amp;gt;&lt;/P&gt;
&lt;P&gt;I have a two part response to this item as well. First, outsourcing sucks. I do not think our country as a whole should move knowledge positions outside of the country. With the extent that manufacturing has fleeted, knowledge is our power. Then again, programming is the act of manufacturing software in a way, so maybe there is some method to the maddness.&lt;BR&gt;Once again, having somewhat agreed, let us address the flip side. If the rest of the country is anything like North Carolina, companies *can't* fill their positions. When I recently started looking for a job, I participated in a long process of interviewing companies until I found one that I thought was a great match for me. I said no to several along the way, with little worry that I would be left stranded. Is it always like this for our occupation? Definitely not, but if you have the passion and the skillset, and you *want* this career and aren't just punching the clock, you *will* be in demand. Period. Have you ever had to maintain a code base when the project was outsourced? I don't think our livelyhood is really being threatened.&lt;/P&gt;
&lt;P style="COLOR:maroon;"&gt;&amp;lt;quote&amp;gt;&lt;BR&gt;It is often suggested that the most natural next move “up” is into project management. But the first problem with this situation is that project management sucks too.&lt;BR&gt;&amp;lt;/quote&amp;gt;&lt;/P&gt;
&lt;P&gt;While I agree that going from being a computer programmer into Project Management would suck, I have seen many people who are very good at fullfilling this role and enjoy doing so. I also don't think that this is the only path for programmers any more either. In the old days, you either became a manager or you stagnated. Now adays, in organizations that are more dependent on driving their business with technology, there is a new option opening up for seasoned developers. The new role falls under the title of Software Architect. I should clarify, this isn't necessarily new, but it is expanding to be a viable role in a much wider breadth of companies. While this could still be considered management of sorts, it is the kind of management that I, being passionate about developing would not be averse to filling.&lt;/P&gt;
&lt;P&gt;&lt;A class="" href="http://www.halfsigma.com/2007/03/the_death_of_th.html" target=_blank&gt;The death of the generalist software developer&lt;/A&gt;&lt;/P&gt;
&lt;P style="COLOR:maroon;"&gt;&amp;lt;quote&amp;gt;&lt;BR&gt;Because the new technology is so much more complicated than the old technology, it's now impossible for one person to be an expert in all the different tools out there, and even in a single project this is often impossible. In a single project, you will often find database programmers who just do back end work in Oracle or SQL Server, middleware programmers who would do the C#.NET type programming, and then web designers who do the HTML, CSS, and JavaScript programming.&lt;BR&gt;&amp;lt;/quote&amp;gt;&lt;/P&gt;
&lt;P&gt;Welcome to the maturity of our industry. Look at the housing industry. While the plumber can probably do the electrical work a new house needs, and maybe can even paint and lay the foundation, specialization allows you to have each participant in a project do *a better job faster*. I have had a thing for XHTML and CSS for awhile now, when I realized I was lacking in these skills. I can get by with them now, and even do some clever tricks when needed. But, get a true user interface/graphics artist to do the user interface for your application and suddenly their value becomes very, very apparent. Developers are not known for creating the best user interfaces, why *make* users use one made by them. And for SQL code? Hell, I don't even *want* to write SQL code. Thank god for DBAs!&lt;/P&gt;
&lt;P style="COLOR:maroon;"&gt;&amp;lt;quote&amp;gt;&lt;BR&gt;The interesting thing about .NET is that there are various language flavors to it. There's Visual Basic.NET, C#.NET and even J#.NET. This tips us off that the actual language is only a minor part of the whole development tool. Much more complicated is the huge class libarary, and understanding the idiosyncracies of how everything works.&lt;BR&gt;Fancy coding expertise, like the ability to write a Quicksort, is not necessary in the modern software development environment. Knowing how to set everything up so you can call Object.Sort() is what's required.&lt;BR&gt;&amp;lt;/quote&amp;gt;&lt;/P&gt;
&lt;P&gt;Once again, this goes back to providing value. If I can write the business layer for my application in the new tools in the same amount of time it used to take to write that jazzy sorting algorithm in the old tools, how am I not providing more value to the business now?&lt;/P&gt;
&lt;P style="COLOR:maroon;"&gt;&amp;lt;quote&amp;gt;&lt;BR&gt;The second trend, and the more interesting one in my opinion, is that the computer programmer's role in the organization is shrinking. The software developer who does everything--talks to users, develops the "architecture," codes it, tests it, and then deploys it, is pretty rare. In fact, it would probably seen as an example of an out of control software development process.&lt;BR&gt;&amp;lt;/quote&amp;gt;&lt;/P&gt;
&lt;P&gt;Believe it or not, this is actually a trend that is reversing, and Agile has alot to do with it. In an Agile product cycle, you probably *are* architecting the application, building the tests and coding it up. And you better be talking to the users, that is the driving difference in Agile. It is all about communication. I have been doing Agile for a while now, and even with the down falls, the communication aspect is definitely worth it. The days of going of in a corner and writing up some code until you turn it over to QA could be coming to an end. If not from Agile itself, then from an upcoming methodology that will learn to leverage the things it does right, and maybe supress some of the things it does not so right. I don't say wrong simply because Agile is just that, agile. You leverage the parts that work for you and augment or replace the parts that don't. You aren't stuck with a concrete list of 'things to do'. But enough about that.&lt;/P&gt;
&lt;P&gt;Many of his replies to commentors relate their comments to naivity, and their fresh out of collegeness(hmm, new word?), while the author is in his late 30s. Well, just to push that aside, I am 36, maybe a couple years younger, but definitely not noticably.&lt;/P&gt;
&lt;P&gt;Now, while this was a rebuttal to many of the posters comments, I do thank him for his passion on the subject. It sent me down a path to truly reflect on what I do day in and day out. What I like and don't like about it, and what I want to get out of it, both now, and going forward. Thank you for a good read.&lt;/P&gt;
&lt;P&gt;Does a career in computer programming suck? Not for me, no, not for me.&lt;/P&gt;&lt;img src="http://blogbybob.com/aggbug.aspx?PostID=1394" width="1" height="1"&gt;</description></item><item><title>Staring me in the Face</title><link>http://blogbybob.com/archive/2007/05/16/staring-me-in-the-face.aspx</link><pubDate>Wed, 16 May 2007 17:54:00 GMT</pubDate><guid isPermaLink="false">bf319af5-e003-4fa3-843a-531836bde8e7:1391</guid><dc:creator>Bob</dc:creator><slash:comments>0</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://blogbybob.com/rsscomments.aspx?PostID=1391</wfw:commentRss><comments>http://blogbybob.com/archive/2007/05/16/staring-me-in-the-face.aspx#comments</comments><description>&lt;P&gt;Sometimes, well, often even, I amaze myself with my own stupidity. I have been disgruntled for awhile because you can't make a region token multiline, so you can do something like&lt;/P&gt;
&lt;DIV style="BORDER-RIGHT:1px solid;BORDER-TOP:1px solid;BORDER-LEFT:1px solid;WIDTH:120px;BORDER-BOTTOM:1px solid;font-color:lightgray;"&gt;&lt;SPAN&gt;My Magic Method&lt;/SPAN&gt;&lt;/DIV&gt;
&lt;P&gt;but you can't do something like&lt;/P&gt;
&lt;DIV style="BORDER-RIGHT:1px solid;BORDER-TOP:1px solid;BORDER-LEFT:1px solid;WIDTH:120px;BORDER-BOTTOM:1px solid;font-color:lightgray;"&gt;&lt;SPAN&gt;My Magic Method&lt;BR&gt;Is Better Than&lt;BR&gt;Your Magic Method&lt;/SPAN&gt;&lt;/DIV&gt;
&lt;P&gt;and then one day the solution light bulb popped on and I could not believe how in the hell I had not thought of it soon. And the change to my coding/commenting style is minor&lt;FONT color=#0000ff size=2&gt;&lt;/P&gt;
&lt;P&gt;#region&lt;/FONT&gt;&lt;FONT size=2&gt; My Magic Method&lt;BR&gt;&lt;/FONT&gt;&lt;FONT color=#808080 size=2&gt;///&lt;/FONT&gt;&lt;FONT color=#008000 size=2&gt; &lt;/FONT&gt;&lt;FONT color=#808080 size=2&gt;&amp;lt;summary&amp;gt;&lt;BR&gt;&lt;/FONT&gt;&lt;FONT color=#808080 size=2&gt;///&lt;/FONT&gt;&lt;FONT color=#008000 size=2&gt; This method does magic as many times as the NumberOfTime sent to it&lt;BR&gt;&lt;/FONT&gt;&lt;FONT color=#808080 size=2&gt;///&lt;/FONT&gt;&lt;FONT color=#008000 size=2&gt; &lt;/FONT&gt;&lt;FONT color=#808080 size=2&gt;&amp;lt;/summary&amp;gt;&lt;BR&gt;&lt;/FONT&gt;&lt;FONT color=#808080 size=2&gt;///&lt;/FONT&gt;&lt;FONT color=#008000 size=2&gt; &lt;/FONT&gt;&lt;FONT color=#808080 size=2&gt;&amp;lt;param name="NumberOfTimesToDoIt"&amp;gt;&lt;/FONT&gt;&lt;FONT color=#008000 size=2&gt;int for how many times to do magic&lt;/FONT&gt;&lt;FONT color=#808080 size=2&gt;&amp;lt;/param&amp;gt;&lt;BR&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;public&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;void&lt;/FONT&gt;&lt;FONT size=2&gt; SomeMagicDo(&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;int&lt;/FONT&gt;&lt;FONT size=2&gt; NumberOfTimes)&lt;BR&gt;{&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; 10 PRINT &lt;/FONT&gt;&lt;FONT color=#800000 size=2&gt;"Doing some magic"&lt;/FONT&gt;&lt;FONT size=2&gt;;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; 20 GOTO 10;&lt;BR&gt;}&lt;BR&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;#endregion&lt;/P&gt;&lt;/FONT&gt;
&lt;P&gt;versus&lt;/P&gt;&lt;FONT size=2&gt;
&lt;P&gt;&lt;/FONT&gt;&lt;FONT color=#808080 size=2&gt;///&lt;/FONT&gt;&lt;FONT color=#008000 size=2&gt; &lt;/FONT&gt;&lt;FONT color=#808080 size=2&gt;&amp;lt;summary&amp;gt;&lt;BR&gt;&lt;/FONT&gt;&lt;FONT color=#808080 size=2&gt;///&lt;/FONT&gt;&lt;FONT color=#008000 size=2&gt; This method does magic as many times as the NumberOfTime sent to it&lt;BR&gt;&lt;/FONT&gt;&lt;FONT color=#808080 size=2&gt;///&lt;/FONT&gt;&lt;FONT color=#008000 size=2&gt; &lt;/FONT&gt;&lt;FONT color=#808080 size=2&gt;&amp;lt;/summary&amp;gt;&lt;BR&gt;&lt;/FONT&gt;&lt;FONT color=#808080 size=2&gt;///&lt;/FONT&gt;&lt;FONT color=#008000 size=2&gt; &lt;/FONT&gt;&lt;FONT color=#808080 size=2&gt;&amp;lt;param name="NumberOfTimesToDoIt"&amp;gt;&lt;/FONT&gt;&lt;FONT color=#008000 size=2&gt;int for how many times to do magic&lt;/FONT&gt;&lt;FONT color=#808080 size=2&gt;&amp;lt;/param&amp;gt;&lt;BR&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;#region&lt;/FONT&gt;&lt;FONT size=2&gt; My Magic Method&lt;BR&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;public&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;void&lt;/FONT&gt;&lt;FONT size=2&gt; SomeMagicDo(&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;int&lt;/FONT&gt;&lt;FONT size=2&gt; NumberOfTimes)&lt;BR&gt;{&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; 10 PRINT &lt;/FONT&gt;&lt;FONT color=#800000 size=2&gt;"Doing some magic"&lt;/FONT&gt;&lt;FONT size=2&gt;;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; 20 GOTO 10;&lt;BR&gt;}&lt;BR&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;#endregion&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#000000&gt;&amp;nbsp;BLAM! I always had my multiline region ability, I just didn't realize it, and noone took pity and told me.&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#000000&gt;&lt;SPAN style="FONT-SIZE:0.7em;"&gt;This post brought to you by Coding With Line Numbers &lt;SUP&gt;®&lt;/SUP&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;img src="http://blogbybob.com/aggbug.aspx?PostID=1391" width="1" height="1"&gt;</description></item><item><title>MS Wish Responds to Bob</title><link>http://blogbybob.com/archive/2007/05/07/ms-wish-responds-to-bob.aspx</link><pubDate>Mon, 07 May 2007 14:10:00 GMT</pubDate><guid isPermaLink="false">bf319af5-e003-4fa3-843a-531836bde8e7:1387</guid><dc:creator>Bob</dc:creator><slash:comments>1</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://blogbybob.com/rsscomments.aspx?PostID=1387</wfw:commentRss><comments>http://blogbybob.com/archive/2007/05/07/ms-wish-responds-to-bob.aspx#comments</comments><description>&lt;P&gt;So, I sent a SQL 2005 request to MS Wish last week, basically what I would like to see is a client side ability to set up database diagrams in a read only manner. It would be nice to be able to visually look at how tables are linked and interconnected without requiring the DBA to add the necessary permissions to allow you to do it on the server. DBAs get nervous about giving you the permissions you would need to do server side diagrams, especially since it adds one more attack vector and diagrams can allow you to *modify* the table schemas etc (yes, I assume you don't *need* modify permissions)&lt;/P&gt;
&lt;P&gt;So, I get a response from MS Wish this morning.&lt;/P&gt;
&lt;P&gt;&amp;lt;quote&amp;gt;&lt;/P&gt;
&lt;P&gt;Hello Bob, &lt;/P&gt;
&lt;P&gt;This is not a form letter response. This email is to inform you that Steve Ballmer has *personally* requested all future emails from all of your known address, and *any* address that could in any way possibly maybe sort of be from you be blocked until the end of time. &lt;/P&gt;
&lt;P&gt;Thank you for taking the time to contact Microsoft and have a great day! &lt;BR&gt;MS Wish Team&lt;BR&gt;&amp;lt;/quote&amp;gt;&lt;/P&gt;
&lt;P&gt;Ok, so maybe that wasn't their *exact* response, but it is what it amounted to in my head.&lt;/P&gt;&lt;img src="http://blogbybob.com/aggbug.aspx?PostID=1387" width="1" height="1"&gt;</description></item></channel></rss>