<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/rss2full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><rss xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:pingback="http://madskills.com/public/xml/rss/module/pingback/" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" version="2.0">
  <channel>
    <title>The Coding Monkey</title>
    <link>http://www.thecodingmonkey.net/</link>
    <description>I'm a Software Consultant in the Milwaukee area. Among various geeky pursuits, I'm also an amateur triathlete, and enjoy rock climbing. I also like to think I'm a political pundit.</description>
    <language>en-us</language>
    <copyright>Nick Schweitzer</copyright>
    <lastBuildDate>Tue, 24 Mar 2009 20:32:23 GMT</lastBuildDate>
    <generator>newtelligence dasBlog 1.8.5223.2</generator>
    <managingEditor>nick@thecodingmonkey.net</managingEditor>
    <webMaster>nick@thecodingmonkey.net</webMaster>
    <geo:lat>43.049012</geo:lat><geo:long>-88.000128</geo:long><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" href="http://feeds.feedburner.com/TheCodingMonkey" type="application/rss+xml" /><item>
      <trackback:ping>http://www.thecodingmonkey.net/Trackback.aspx?guid=36673113-e551-4692-905a-5729a41d53ab</trackback:ping>
      <pingback:server>http://www.thecodingmonkey.net/pingback.aspx</pingback:server>
      <pingback:target>http://www.thecodingmonkey.net/PermaLink.aspx?guid=36673113-e551-4692-905a-5729a41d53ab</pingback:target>
      <dc:creator>nick@thecodingmonkey.net (Nick)</dc:creator>
      <wfw:comment>http://www.thecodingmonkey.net/CommentView.aspx?guid=36673113-e551-4692-905a-5729a41d53ab</wfw:comment>
      <wfw:commentRss>http://www.thecodingmonkey.net/SyndicationService.asmx/GetEntryCommentsRss?guid=36673113-e551-4692-905a-5729a41d53ab</wfw:commentRss>
      <slash:comments>2</slash:comments>
      <title>Picture Picture Project</title>
      <guid isPermaLink="false">http://www.thecodingmonkey.net/PermaLink.aspx?guid=36673113-e551-4692-905a-5729a41d53ab</guid>
      <link>http://feedproxy.google.com/~r/TheCodingMonkey/~3/-Ka0-Vl386M/PermaLink.aspx</link>
      <pubDate>Tue, 24 Mar 2009 20:32:23 GMT</pubDate>
      <description>&lt;p&gt;
   So what do you do when you have access to a laptop that nobody wants to use anymore,
   and some extra time on your hands?&amp;nbsp; I had always wanted to make my own digital
   picture frame out of a laptop, for a few reasons.&amp;nbsp; One, laptop LCD's are usually
   higher quality than the ones that come in digital picture frames you buy in the store.&amp;nbsp;
   Secondly, the screens are larger than any that are generally available from pre-built
   digital picture frames.&amp;nbsp; And finally, I wanted to have the images in the frame
   come directly from Flickr... which is a feature that only comes with really expensive
   frames with WiFi.&amp;nbsp; I decided to call it "Picture Picture", &lt;a href="http://pbskids.org/rogers/R_house/picpic.htm"&gt;in
   honor of Mr. Rogers&lt;/a&gt;.
&lt;/p&gt;
&lt;p&gt;
   As it turns out, my uncle had bought a Dell laptop from HSN several years ago (without
   my permission), and then never really used it all that much.&amp;nbsp; Eventually it ended
   up in a drawer... and so then it eventually ended up in my hands.
&lt;/p&gt;
&lt;p&gt;
   The first part of the project was actually all about software configuration.&amp;nbsp;
   My goal was to have a system that didn't need a keyboard or mouse.&amp;nbsp; I'm still
   working on refining the software I wrote to get pictures from &lt;a href="http://www.flickr.com"&gt;Flickr&lt;/a&gt;,
   so that code is not included in this post.&amp;nbsp; However, I will reveal that the software
   comes in three parts.&amp;nbsp; The first is the viewer application itself.&amp;nbsp; It reads
   a configuration file that has settings for background color, image duration, a Flickr
   user name, and a list of tags from the user name to display.&amp;nbsp; I'm also adding
   the ability to automatically suspend the laptop at night, and then wake up a designated
   time in the morning, but the bugs in that are not quite worked out yet.
&lt;/p&gt;
&lt;p&gt;
   The second piece of software is a simple ASP.NET application, so that I can log into
   the picture frame from my browser to change any of the settings above.&amp;nbsp; The ASP.NET
   application then saves those settings to the configuration file.&amp;nbsp; The viewer
   application has a file watcher on that configuration file, so that when it changes,
   it automatically reloads the configuration settings.&amp;nbsp; The third piece is actually
   just a simple Windows Service that acts as a watchdog, and if the application goes
   away for some strange reason, it automatically restarts it.&amp;nbsp; The beauty of this
   setup, is that I can add pictures to my frame simply by tagging a picture in Flickr
   with any tag I choose.
&lt;/p&gt;
&lt;p&gt;
   With all that said, there were some other software changes I made to the laptop before
   I tore it apart.&amp;nbsp; Because it was a cheap HSN laptop, it had Windows XP Home,
   which isn't capable of running IIS, which I would need for my ASP.NET application.&amp;nbsp;
   Fortunately, &lt;a href="http://adamv.com/dev/articles/iis-on-xp-home/"&gt;there is a well
   documented hack for getting IIS running on Windows XP Home&lt;/a&gt;.&amp;nbsp; I also installed &lt;a href="http://www.tightvnc.com/"&gt;Tight
   VNC&lt;/a&gt; on the laptop, in case I needed to do any more complicated administration
   after I tore it apart.&amp;nbsp; I would have just used Remote Desktop, but &lt;a href="http://www.microsoft.com/windowsxp/using/mobility/rdfaq.mspx"&gt;Windows
   XP Home can only be an RDP client, not a host&lt;/a&gt;.&amp;nbsp; I also created a share on
   the laptop where all my custom application software was copied so I could easily upload
   new versions of my software afterwards.&amp;nbsp; Finally, &lt;a href="http://support.microsoft.com/kb/315231"&gt;I
   created a separate user to auto login when the laptop turned on&lt;/a&gt;, and then added
   the viewer application I wrote to the Startup menu for that user.
&lt;/p&gt;
&lt;p&gt;
   Now comes the fun part... tearing apart the laptop.&amp;nbsp; &lt;a href="http://www.flickr.com/photos/schweitn/sets/72157615855323958/"&gt;All
   the pictures from this post are on Flickr in this set&lt;/a&gt;.&amp;nbsp; You can click on
   any picture for a larger version.&amp;nbsp; Some of the pictures also include extra notes
   which point out small details in the picture worth looking at.&amp;nbsp; &lt;a href="http://support.dell.com/support/edocs/systems/ins2200/en/SM/index.htm"&gt;I
   went to the Dell support website, where they are kind enough to have detailed service
   manuals on all their laptops&lt;/a&gt;, which include directions on how to replace all the
   internal components.&amp;nbsp; This makes tearing apart the laptop a breeze.&amp;nbsp; Here
   is the LCD out of the laptop, as well as all the case parts I won't be needing anymore:
&lt;/p&gt;
&lt;p&gt;
   &lt;a title="LCD Out of Laptop" href="http://www.flickr.com/photos/77759521@N00/3383199404/"&gt;&lt;img alt="LCD Out of Laptop" src="http://static.flickr.com/3539/3383199404_c77133d4ea_m.jpg" border=0&gt;&lt;/a&gt;&amp;nbsp;&lt;a title="Throw Away Parts" href="http://www.flickr.com/photos/77759521@N00/3383204176/"&gt;&lt;img alt="Throw Away Parts" src="http://static.flickr.com/3540/3383204176_2b8ac27689_m.jpg" border=0&gt;&lt;/a&gt;
&lt;/p&gt;
&lt;p&gt;
   I was very concerned with carefully supporting the LCD in the frame.&amp;nbsp; I used
   foam core as a backer, and then surrounded the LCD with foam core as well.&amp;nbsp; I
   used simple Elmer's glue to glue the surrounding foam core to the back piece of foam
   core:
&lt;/p&gt;
&lt;p&gt;
   &lt;a title="Front of Foam Core for LCD" href="http://www.flickr.com/photos/77759521@N00/3383200208/"&gt;&lt;img alt="Front of Foam Core for LCD" src="http://static.flickr.com/3466/3383200208_2c8409a6b4_m.jpg" border=0&gt;&lt;/a&gt;&amp;nbsp;&lt;a title="Back of LCD" href="http://www.flickr.com/photos/77759521@N00/3382384221/"&gt;&lt;img alt="Back of LCD" src="http://static.flickr.com/3427/3382384221_a5e6e166ef_m.jpg" border=0&gt;&lt;/a&gt;
&lt;/p&gt;
&lt;p&gt;
   You'll notice that there is a foil section that runs on the back of the LCD.&amp;nbsp;
   This actually sticks out quite a bit.&amp;nbsp; That's why there is a cut in the back
   of the foam core.&amp;nbsp; The parts of the foil that stick out extra fit into that cut
   out of the foam core.&amp;nbsp; There is also a small hole in the foam core back, for
   the LCD cable to fit through.&amp;nbsp; I used no glue, or any other physical fasteners
   to attach the LCD to the foam core.&amp;nbsp; It's a friction fit.&amp;nbsp; I cut and fit
   the foam core around so it would be just tight enough, but wouldn't put pressure on
   the display.&amp;nbsp; The mat is just another layer when I put together the frame sandwich.&amp;nbsp;
   I used no glue there either, so you can see a little gap if you get up close to the
   frame.&amp;nbsp; At some point, I may either use double stick tape, or possibly put glass
   in front to remove the gap.&amp;nbsp; The next two pictures are the LCD fit into the foam
   core housing, and then a picture with the mat on top:
&lt;/p&gt;
&lt;p&gt;
   &lt;a title="LCD in Foam Core" href="http://www.flickr.com/photos/77759521@N00/3383202048/"&gt;&lt;img alt="LCD in Foam Core" src="http://static.flickr.com/3573/3383202048_a1d6e6d376_m.jpg" border=0&gt;&lt;/a&gt;&amp;nbsp;&lt;a title="LCD with Mat" href="http://www.flickr.com/photos/77759521@N00/3383202920/"&gt;&lt;img alt="LCD with Mat" src="http://static.flickr.com/3591/3383202920_e65b62b19e_m.jpg" border=0&gt;&lt;/a&gt;
&lt;/p&gt;
&lt;p&gt;
   For mounting the motherboard, I simply cut a piece of masonite to the appropriate
   size.&amp;nbsp; I used some old standoffs and screws that I had from &lt;a href="http://www.thecodingmonkey.net/2008/05/29/BuildingANewDesktopPartI.aspx"&gt;a
   previous desktop computer build I did last year&lt;/a&gt;.&amp;nbsp; I also cut a small slot
   in the bottom for the LCD cable to come through.
&lt;/p&gt;
&lt;p&gt;
   The other tricky part was remounting some of the motherboard parts.&amp;nbsp; The problem
   is that many of the components (like the CPU heat sink, and the LCD grounding cable)
   actually had screws which passed through the motherboard, and then screwed directly
   into the plastic case.&amp;nbsp; So one day I went to my local hardware store, and spent
   some time test fitting nuts until I found nuts that fit.&amp;nbsp; These aren't standard
   sizes, so my only choice was to bring all the parts to the hardware store and use
   good ole fashioned trial and error.&amp;nbsp; You can also see that I attached the speakers
   from the original laptop too.&amp;nbsp; I don't have any use for them now, but maybe some
   day I'll add a video to my frame and then I can use those.&amp;nbsp; I also added some
   extra foam core to the back of the masonite for added thickness.&amp;nbsp; The frame that
   I chose was very deep (almost two inches so there was room for all the components
   plus circulation).&amp;nbsp; Unfortunately, I had to add thickness in some areas so that
   the springs would still work:
&lt;/p&gt;
&lt;p&gt;
   &lt;a title="Back of Frame" href="http://www.flickr.com/photos/77759521@N00/3383197142/"&gt;&lt;img alt="Back of Frame" src="http://static.flickr.com/3554/3383197142_dc6e30c215_m.jpg" border=0&gt;&lt;/a&gt;&amp;nbsp;&lt;a title="Back of Motherboard Mount" href="http://www.flickr.com/photos/77759521@N00/3382381587/"&gt;&lt;img alt="Back of Motherboard Mount" src="http://static.flickr.com/3419/3382381587_731dd0a430_m.jpg" border=0&gt;&lt;/a&gt;
&lt;/p&gt;
&lt;p&gt;
   The last detail was attaching the WiFi cable to the frame itself.&amp;nbsp; The original
   laptop had the WiFi card attached via a wire to a sheet of aluminum foil in the cover
   which served as the antenna.&amp;nbsp; Since my frame was made out of metal, I sanded
   off the paint on the inside surface of the frame, and attached the antenna to the
   frame.&amp;nbsp; Now my frame is actually the WiFi antenna:
&lt;/p&gt;
&lt;p&gt;
   &lt;a title="Antenna Attachment" href="http://www.flickr.com/photos/77759521@N00/3383197820/"&gt;&lt;img alt="Antenna Attachment" src="http://static.flickr.com/3563/3383197820_404d823b87.jpg" border=0&gt;&lt;/a&gt;
&lt;/p&gt;
&lt;p&gt;
   And finally, here is the completed frame hanging on the wall:
&lt;/p&gt;
&lt;p&gt;
   &lt;a title="Finished Picture Frame" href="http://www.flickr.com/photos/77759521@N00/3383204858/"&gt;&lt;img alt="Finished Picture Frame" src="http://static.flickr.com/3592/3383204858_72efb848b3.jpg" border=0&gt;&lt;/a&gt;
&lt;/p&gt;
&lt;p&gt;
   The total build cost was about $55.&amp;nbsp; This included a custom cut frame and mat
   (the majority of the cost), along with foam core, masonite, and random nuts from the
   hardware store.&amp;nbsp; Once I finish adding all the features I want to the viewer application,
   I plan on posting the completed code here as well, so stay tuned!
&lt;/p&gt;
&lt;img width="0" height="0" src="http://www.thecodingmonkey.net/aggbug.ashx?id=36673113-e551-4692-905a-5729a41d53ab" /&gt;
&lt;br /&gt;
&lt;hr /&gt;&amp;copy; Copyright 2008 Nick Schweitzer. This feed is for personal non-commercial use only. All other uses are strictly prohibited without express permission from the author.&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/TheCodingMonkey?a=-Ka0-Vl386M:PPJU_3JEHRo:D7DqB2pKExk"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheCodingMonkey?i=-Ka0-Vl386M:PPJU_3JEHRo:D7DqB2pKExk" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/TheCodingMonkey?a=-Ka0-Vl386M:PPJU_3JEHRo:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheCodingMonkey?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/TheCodingMonkey?a=-Ka0-Vl386M:PPJU_3JEHRo:I2FUP0JpNAM"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheCodingMonkey?i=-Ka0-Vl386M:PPJU_3JEHRo:I2FUP0JpNAM" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/TheCodingMonkey?a=-Ka0-Vl386M:PPJU_3JEHRo:dnMXMwOfBR0"&gt;&lt;img src="http://feeds.feedburner.com/~ff/TheCodingMonkey?d=dnMXMwOfBR0" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/TheCodingMonkey/~4/-Ka0-Vl386M" height="1" width="1"/&gt;</description>
      <comments>http://www.thecodingmonkey.net/CommentView.aspx?guid=36673113-e551-4692-905a-5729a41d53ab</comments>
      <category>DIY</category>
    <feedburner:origLink>http://www.thecodingmonkey.net/PermaLink.aspx?guid=36673113-e551-4692-905a-5729a41d53ab</feedburner:origLink></item>
    <item>
      <trackback:ping>http://www.thecodingmonkey.net/Trackback.aspx?guid=da0b35f1-5b87-49e2-82c9-8ac27d7a5919</trackback:ping>
      <pingback:server>http://www.thecodingmonkey.net/pingback.aspx</pingback:server>
      <pingback:target>http://www.thecodingmonkey.net/PermaLink.aspx?guid=da0b35f1-5b87-49e2-82c9-8ac27d7a5919</pingback:target>
      <dc:creator>nick@thecodingmonkey.net (Nick)</dc:creator>
      <wfw:comment>http://www.thecodingmonkey.net/CommentView.aspx?guid=da0b35f1-5b87-49e2-82c9-8ac27d7a5919</wfw:comment>
      <wfw:commentRss>http://www.thecodingmonkey.net/SyndicationService.asmx/GetEntryCommentsRss?guid=da0b35f1-5b87-49e2-82c9-8ac27d7a5919</wfw:commentRss>
      <title>How Geeks Misunderstand Economics and Marketing</title>
      <guid isPermaLink="false">http://www.thecodingmonkey.net/PermaLink.aspx?guid=da0b35f1-5b87-49e2-82c9-8ac27d7a5919</guid>
      <link>http://feedproxy.google.com/~r/TheCodingMonkey/~3/Lw-Fn9R1riI/PermaLink.aspx</link>
      <pubDate>Tue, 30 Dec 2008 20:53:41 GMT</pubDate>
      <description>&lt;p&gt;
   As high quality technologists (which I assume all my readers are ;) ), most of us
   are usually fairly specialized in our field.&amp;nbsp; In other words, we're very good
   at what we do for&amp;nbsp;a living, and that often comes at a price at not knowing other
   things, even if they have some importance on our business.&amp;nbsp; For instance, we
   may be very good at programming in C#, Java, etc. and can tell you the classes in
   the BCL by heart, or list off the GoF patterns from memory, but couldn't figure out
   how to make money selling software if we tried.&amp;nbsp; I quickly thought of that as
   I was reading &lt;a href="http://www.nytimes.com/2008/12/28/business/28digi.html?_r=1&amp;amp;adxnnl=1&amp;amp;adxnnlx=1230668541-Z8YgLEl1TnEyeUTvRKvyIw"&gt;this
   article in the New York Times&lt;/a&gt; on the cost of text messaging vs. what we are charged:
&lt;/p&gt;
&lt;blockquote dir=ltr style="MARGIN-RIGHT: 0px"&gt; 
&lt;p&gt;
   TEXT messaging is a wonderful business to be in: about 2.5 trillion messages will
   have been sent from cellphones worldwide this year. The public assumes that the wireless
   carriers’ costs are far higher than they actually are, and profit margins are concealed
   by a heavy curtain.&lt;br&gt;
   ...&lt;br&gt;
   Professor Keshav said that once a carrier invests in the centralized storage equipment
   — storing a terabyte now costs only $100 and is dropping - and the staff to maintain
   it, its costs are basically covered. "Operating costs are relatively insensitive to
   volume,” he said. “It doesn’t cost the carrier much more to transmit a hundred million
   messages than a million."
&lt;/p&gt;
&lt;p&gt;
   Once one understands that a text message travels wirelessly as a stowaway within a
   control channel, one sees the carriers’ pricing plans in an entirely new light. The
   most profitable plan for the carriers will be the one that collects the most revenue
   from the customer: unlimited messaging, for which AT&amp;amp;T and Sprint charge $20 a
   month and T-Mobile, $15.
&lt;/p&gt;
&lt;/blockquote&gt; 
&lt;p dir=ltr&gt;
   The entire premise of the article is in &lt;span style="FONT-SIZE: 10pt; COLOR: #003300; LINE-HEIGHT: 115%; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-bidi-font-family: 'Times New Roman'; mso-bidi-theme-font: minor-bidi; mso-ansi-language: EN-US; mso-fareast-language: EN-US; mso-bidi-language: AR-SA"&gt;essence &lt;/span&gt;to
   say, you the consumer are being ripped off, because text messages cost nearly nothing
   to transmit, while it costs you the consumer significantly more to actually send them.&amp;nbsp;
   There is even a reference to an investigation spurred on by Sen. Herb Kohl.&amp;nbsp;
   Clearly, the intent is to suggest that we're being "gouged".&amp;nbsp; Unfortunately,
   this perpetuates the myth that the price of a good or service needs to somehow be
   directly related to the cost of production, and that charging more than some percentage
   higher than the cost is somehow wrong or illegal.&amp;nbsp; Worse yet is when these improper
   assumptions lead to regulation which then hamper the ability of businesses to market
   in new and innovative ways.&amp;nbsp; But I'm being too generic here.&amp;nbsp; Let's look
   at specifics.
&lt;/p&gt;
&lt;p dir=ltr&gt;
   If I write some software package and offer to send it to you on a CD for $50 (plus
   S&amp;amp;H), is that justified?&amp;nbsp; After all, it costs less than a dollar (maybe even
   a quarter) to actually burn a CD these days.&amp;nbsp; Worse yet, what if I charge you&amp;nbsp;the
   same&amp;nbsp;for an electronic download which cost even less to distribute?&amp;nbsp; You
   and I know that there is nothing wrong with that, because we naturally think of all
   the time and effort it took to actually write the software itself.&amp;nbsp; Part of what
   we charge reimburses us for our initial time, when we weren't making &lt;em&gt;any&lt;/em&gt; money
   on the yet completed software.
&lt;/p&gt;
&lt;p dir=ltr&gt;
   Look at a different example, in the gaming industry.&amp;nbsp; Companies charge $50 -
   $60 a copy for games on the Xbox 360, PS3 and Wii.&amp;nbsp; A significant amount of that
   cost is actually wrapped up in licensing fees that go to the console maker (Microsoft,
   Sony and Nintendo).&amp;nbsp; Are those licensing fees too excessive?&amp;nbsp; At first glance,
   it may seem so.&amp;nbsp; However, when you look at the business as a whole, you see that
   its simply a marketing technique.&amp;nbsp; That's because the console maker actually
   take a significant loss on each of the consoles it makes in order to get enough gamers
   in the market.&amp;nbsp; They then try to recoup that money through licensing fees on
   the games themselves.&amp;nbsp; In other words, the higher cost of the games is used to
   subsidize the console.&amp;nbsp; You can't separate the cost of the game from the cost
   of the console.&amp;nbsp; If they charge less for games, then the consoles would have
   to be more expensive.
&lt;/p&gt;
&lt;p dir=ltr&gt;
   Many people want to demand "a la carte" pricing from cable companies, but that too
   would come at a price.&amp;nbsp; Many channels are simply not watched enough to pay for
   themselves if they were priced on their own.&amp;nbsp; They only exist because they can
   be bundled with more popular channels in&amp;nbsp;a package.&amp;nbsp; Cable companies are
   able to offer a wider variety of channels for smaller niche audiences because they
   charge more money than normal for popular ones.
&lt;/p&gt;
&lt;p dir=ltr&gt;
   Similarly, it is unfair to look at the cost of text messaging on its own.&amp;nbsp; In
   fact, cell phone companies work similarly to game console manufacturers in that they
   actually take a hit on the phone itself, in exchange for your cell phone contract.&amp;nbsp;
   Text messaging is likewise used a constant overall revenue stream, while the companies
   take losses in other areas.&amp;nbsp; Looking at text messaging as a whole ignores other
   areas of the business that may take a loss, or a much smaller profit.&amp;nbsp; If you
   force companies to charge less for text messaging, then other services may be made
   more expensive in order to make up the difference in profitability.&amp;nbsp; Worse yet,
   some services that are offered at a loss may be eliminated because people would be
   unwilling to pay their true cost, which might cost customers.
&lt;/p&gt;
&lt;p dir=ltr&gt;
   Of course, the real problem, once again, is the view that the price charged for a
   good or service needs to be directly related to the cost in providing it.&amp;nbsp; However,
   the reality is that the cost of a service is only limited to the willingness for people
   to pay for it.&amp;nbsp; There is nothing wrong with that.&amp;nbsp; It merely places a value
   on your desire for a service.&amp;nbsp; As soon as a company starts charging more than
   you value the service, you simply stop paying for it.&amp;nbsp; The actual cost in providing
   it is only &lt;span style="FONT-SIZE: 10pt; COLOR: #003300; LINE-HEIGHT: 115%; FONT-FAMILY: 'Verdana','sans-serif'; mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-bidi-font-family: 'Times New Roman'; mso-bidi-theme-font: minor-bidi; mso-ansi-language: EN-US; mso-fareast-language: EN-US; mso-bidi-language: AR-SA"&gt;relevant &lt;/span&gt;so
   long as the company can charge enough to stay in business.
&lt;/p&gt;
&lt;img width="0" height="0" src="http://www.thecodingmonkey.net/aggbug.ashx?id=da0b35f1-5b87-49e2-82c9-8ac27d7a5919" /&gt;
&lt;br /&gt;
&lt;hr /&gt;&amp;copy; Copyright 2008 Nick Schweitzer. This feed is for personal non-commercial use only. All other uses are strictly prohibited without express permission from the author.&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~f/TheCodingMonkey?a=6rrPUin8"&gt;&lt;img src="http://feeds.feedburner.com/~f/TheCodingMonkey?i=6rrPUin8" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/TheCodingMonkey?a=mXFUkdXX"&gt;&lt;img src="http://feeds.feedburner.com/~f/TheCodingMonkey?d=50" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/TheCodingMonkey?a=ZP6kPodV"&gt;&lt;img src="http://feeds.feedburner.com/~f/TheCodingMonkey?i=ZP6kPodV" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/TheCodingMonkey?a=kD128lLe"&gt;&lt;img src="http://feeds.feedburner.com/~f/TheCodingMonkey?d=43" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/TheCodingMonkey/~4/Lw-Fn9R1riI" height="1" width="1"/&gt;</description>
      <comments>http://www.thecodingmonkey.net/CommentView.aspx?guid=da0b35f1-5b87-49e2-82c9-8ac27d7a5919</comments>
      <category>Misc</category>
    <feedburner:origLink>http://www.thecodingmonkey.net/PermaLink.aspx?guid=da0b35f1-5b87-49e2-82c9-8ac27d7a5919</feedburner:origLink></item>
    <item>
      <trackback:ping>http://www.thecodingmonkey.net/Trackback.aspx?guid=1d33c5d9-0751-43da-a80f-8645d5f86666</trackback:ping>
      <pingback:server>http://www.thecodingmonkey.net/pingback.aspx</pingback:server>
      <pingback:target>http://www.thecodingmonkey.net/PermaLink.aspx?guid=1d33c5d9-0751-43da-a80f-8645d5f86666</pingback:target>
      <dc:creator>nick@thecodingmonkey.net (Nick)</dc:creator>
      <wfw:comment>http://www.thecodingmonkey.net/CommentView.aspx?guid=1d33c5d9-0751-43da-a80f-8645d5f86666</wfw:comment>
      <wfw:commentRss>http://www.thecodingmonkey.net/SyndicationService.asmx/GetEntryCommentsRss?guid=1d33c5d9-0751-43da-a80f-8645d5f86666</wfw:commentRss>
      <title>Sending Secure Mail</title>
      <guid isPermaLink="false">http://www.thecodingmonkey.net/PermaLink.aspx?guid=1d33c5d9-0751-43da-a80f-8645d5f86666</guid>
      <link>http://feedproxy.google.com/~r/TheCodingMonkey/~3/LStyYCWylUo/PermaLink.aspx</link>
      <pubDate>Wed, 10 Dec 2008 15:36:15 GMT</pubDate>
      <description>&lt;p&gt;
   As part of my current re-evaluation of my computing systems, backup processes, and
   so forth, I've also started to take serious efforts at securing some of my data.&amp;nbsp;
   Along with those efforts, I wanted to make sure that all of you were aware that I
   do use &lt;a href="http://www.pgp.com"&gt;PGP&lt;/a&gt; for sending secure email.&amp;nbsp; If any
   of you ever feel the need, &lt;a href="https://keyserver.pgp.com/vkd/DownloadKey.event?keyid=0x0E06A62CC8360648"&gt;you
   can download my public key from the PGP server&lt;/a&gt;.&amp;nbsp; You can also find a link
   to my PGP key on the left side of my blog.
&lt;/p&gt;
&lt;img width="0" height="0" src="http://www.nickschweitzer.net/cptrk.ashx?id=0eb6446d-dd7b-41ab-8e15-f94fd6f04c16"&gt;&lt;img width="0" height="0" src="http://www.thecodingmonkey.net/aggbug.ashx?id=1d33c5d9-0751-43da-a80f-8645d5f86666" /&gt;
&lt;br /&gt;
&lt;hr /&gt;&amp;copy; Copyright 2008 Nick Schweitzer. This feed is for personal non-commercial use only. All other uses are strictly prohibited without express permission from the author.&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~f/TheCodingMonkey?a=gmXOTpRL"&gt;&lt;img src="http://feeds.feedburner.com/~f/TheCodingMonkey?i=gmXOTpRL" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/TheCodingMonkey?a=OcVeEQQV"&gt;&lt;img src="http://feeds.feedburner.com/~f/TheCodingMonkey?d=50" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/TheCodingMonkey?a=yB4VcDbB"&gt;&lt;img src="http://feeds.feedburner.com/~f/TheCodingMonkey?i=yB4VcDbB" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/TheCodingMonkey?a=mV3g3RPZ"&gt;&lt;img src="http://feeds.feedburner.com/~f/TheCodingMonkey?d=43" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/TheCodingMonkey/~4/LStyYCWylUo" height="1" width="1"/&gt;</description>
      <comments>http://www.thecodingmonkey.net/CommentView.aspx?guid=1d33c5d9-0751-43da-a80f-8645d5f86666</comments>
      <category>Misc</category>
    <feedburner:origLink>http://www.thecodingmonkey.net/PermaLink.aspx?guid=1d33c5d9-0751-43da-a80f-8645d5f86666</feedburner:origLink></item>
    <item>
      <trackback:ping>http://www.thecodingmonkey.net/Trackback.aspx?guid=12c40d08-f155-4c0d-ba14-4262aa975291</trackback:ping>
      <pingback:server>http://www.thecodingmonkey.net/pingback.aspx</pingback:server>
      <pingback:target>http://www.thecodingmonkey.net/PermaLink.aspx?guid=12c40d08-f155-4c0d-ba14-4262aa975291</pingback:target>
      <dc:creator>nick@thecodingmonkey.net (Nick)</dc:creator>
      <wfw:comment>http://www.thecodingmonkey.net/CommentView.aspx?guid=12c40d08-f155-4c0d-ba14-4262aa975291</wfw:comment>
      <wfw:commentRss>http://www.thecodingmonkey.net/SyndicationService.asmx/GetEntryCommentsRss?guid=12c40d08-f155-4c0d-ba14-4262aa975291</wfw:commentRss>
      <title>Q: What is the Difference Between a GUID and a UUID?</title>
      <guid isPermaLink="false">http://www.thecodingmonkey.net/PermaLink.aspx?guid=12c40d08-f155-4c0d-ba14-4262aa975291</guid>
      <link>http://feedproxy.google.com/~r/TheCodingMonkey/~3/4FtSN_MIg2Y/PermaLink.aspx</link>
      <pubDate>Wed, 19 Nov 2008 14:48:12 GMT</pubDate>
      <description>&lt;p&gt;
   A: Marketing
&lt;/p&gt;
&lt;p&gt;
   News has broken out that &lt;a href="http://www.google.com/hostednews/afp/article/ALeqM5ghLqIIkpB4lk62DjEgK8komJj-SQ"&gt;NASA
   has successfully tested a deep space version of the internet&lt;/a&gt;:
&lt;/p&gt;
&lt;blockquote dir=ltr style="MARGIN-RIGHT: 0px"&gt; 
&lt;p&gt;
   The US space agency NASA said it successfuly conducted a first test of a deep space
   communications network modeled on the Internet.
&lt;/p&gt;
&lt;p&gt;
   "This is the first step in creating a totally new space communications capability,
   an interplanetary Internet," Adrian Hooke, NASA's manager of space-networking architecture,
   technology and standards, said in a statement.
&lt;/p&gt;
&lt;p&gt;
   The US space agency said Jet Propulsion Laboratory engineers used software called
   Disruption-Tolerant Networking, or DTN, to transmit dozens of space images to and
   from a NASA spacecraft some 20 million miles (32.4 million kilometers) from Earth.
&lt;/p&gt;
&lt;p&gt;
   NASA said the software protocol, which must be able to withstand delays, disruptions
   and disconnections in space, was designed in partnership with Vint Cerf, a vice president
   at Internet search giant Google.
&lt;/p&gt;
&lt;p&gt;
   DTN sends information using a method that differs from the normal Internet's Transmission-Control
   Protocol/Internet Protocol, or TCP/IP, communication suite, which Cerf co-designed,
   NASA said.
&lt;/p&gt;
&lt;/blockquote&gt; 
&lt;p dir=ltr&gt;
   Like many things in computing, there tends to be stupid "religious arguments" among
   geeks about certain things.&amp;nbsp; Windows vs. Linux.&amp;nbsp; MS SQL vs. Oracle vs. MySQL.&amp;nbsp;
   You get the idea.&amp;nbsp; People will even argue about whether &lt;a href="http://en.wikipedia.org/wiki/Globally_Unique_Identifier"&gt;GUID&lt;/a&gt; is
   supposed to be pronounced "Goo-id" or "Gwid".&amp;nbsp; Now you can answer... &lt;em&gt;neither!&lt;/em&gt;&amp;nbsp;
   It truly is supposed to be a &lt;a href="http://en.wikipedia.org/wiki/Universally_Unique_Identifier"&gt;UUID&lt;/a&gt;...
   a Universally Unique Identifer.
&lt;/p&gt;
&lt;img width="0" height="0" src="http://www.thecodingmonkey.net/aggbug.ashx?id=12c40d08-f155-4c0d-ba14-4262aa975291" /&gt;
&lt;br /&gt;
&lt;hr /&gt;&amp;copy; Copyright 2008 Nick Schweitzer. This feed is for personal non-commercial use only. All other uses are strictly prohibited without express permission from the author.&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~f/TheCodingMonkey?a=MXsIdyOQ"&gt;&lt;img src="http://feeds.feedburner.com/~f/TheCodingMonkey?i=MXsIdyOQ" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/TheCodingMonkey?a=t5jU7ZyL"&gt;&lt;img src="http://feeds.feedburner.com/~f/TheCodingMonkey?d=50" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/TheCodingMonkey?a=Axio5LYX"&gt;&lt;img src="http://feeds.feedburner.com/~f/TheCodingMonkey?i=Axio5LYX" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/TheCodingMonkey?a=2nzLjJCE"&gt;&lt;img src="http://feeds.feedburner.com/~f/TheCodingMonkey?d=43" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/TheCodingMonkey/~4/4FtSN_MIg2Y" height="1" width="1"/&gt;</description>
      <comments>http://www.thecodingmonkey.net/CommentView.aspx?guid=12c40d08-f155-4c0d-ba14-4262aa975291</comments>
      <category>Musings</category>
    <feedburner:origLink>http://www.thecodingmonkey.net/PermaLink.aspx?guid=12c40d08-f155-4c0d-ba14-4262aa975291</feedburner:origLink></item>
    <item>
      <trackback:ping>http://www.thecodingmonkey.net/Trackback.aspx?guid=9a186b18-7d6f-4fc4-93ba-315444881120</trackback:ping>
      <pingback:server>http://www.thecodingmonkey.net/pingback.aspx</pingback:server>
      <pingback:target>http://www.thecodingmonkey.net/PermaLink.aspx?guid=9a186b18-7d6f-4fc4-93ba-315444881120</pingback:target>
      <dc:creator>nick@thecodingmonkey.net (Nick)</dc:creator>
      <wfw:comment>http://www.thecodingmonkey.net/CommentView.aspx?guid=9a186b18-7d6f-4fc4-93ba-315444881120</wfw:comment>
      <wfw:commentRss>http://www.thecodingmonkey.net/SyndicationService.asmx/GetEntryCommentsRss?guid=9a186b18-7d6f-4fc4-93ba-315444881120</wfw:commentRss>
      <title>If Only This Were a Joke</title>
      <guid isPermaLink="false">http://www.thecodingmonkey.net/PermaLink.aspx?guid=9a186b18-7d6f-4fc4-93ba-315444881120</guid>
      <link>http://feedproxy.google.com/~r/TheCodingMonkey/~3/v5SDe02JLns/PermaLink.aspx</link>
      <pubDate>Fri, 14 Nov 2008 02:41:18 GMT</pubDate>
      <description>&lt;p&gt;
   This was the Dilbert in my daily pull off calendar yesterday:
&lt;/p&gt;
&lt;p&gt;
&lt;/p&gt;
&lt;a href="http://www.thecodingmonkey.net/content/binary/IfOnlyThisWereaJoke_122AC/Dilbert111208.jpg"&gt;&lt;img style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="260" alt="Dilbert111208" src="http://www.thecodingmonkey.net/content/binary/IfOnlyThisWereaJoke_122AC/Dilbert111208_thumb.jpg" width="582" border="0" /&gt;&lt;/a&gt;&lt;img width="0" height="0" src="http://www.thecodingmonkey.net/aggbug.ashx?id=9a186b18-7d6f-4fc4-93ba-315444881120" /&gt;
&lt;br /&gt;
&lt;hr /&gt;&amp;copy; Copyright 2008 Nick Schweitzer. This feed is for personal non-commercial use only. All other uses are strictly prohibited without express permission from the author.&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~f/TheCodingMonkey?a=UQ11Z6Wl"&gt;&lt;img src="http://feeds.feedburner.com/~f/TheCodingMonkey?i=UQ11Z6Wl" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/TheCodingMonkey?a=RY2B8kTL"&gt;&lt;img src="http://feeds.feedburner.com/~f/TheCodingMonkey?d=50" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/TheCodingMonkey?a=30Od6NAr"&gt;&lt;img src="http://feeds.feedburner.com/~f/TheCodingMonkey?i=30Od6NAr" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/TheCodingMonkey?a=hadsDJOy"&gt;&lt;img src="http://feeds.feedburner.com/~f/TheCodingMonkey?d=43" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/TheCodingMonkey/~4/v5SDe02JLns" height="1" width="1"/&gt;</description>
      <comments>http://www.thecodingmonkey.net/CommentView.aspx?guid=9a186b18-7d6f-4fc4-93ba-315444881120</comments>
      <category>Humor</category>
    <feedburner:origLink>http://www.thecodingmonkey.net/PermaLink.aspx?guid=9a186b18-7d6f-4fc4-93ba-315444881120</feedburner:origLink></item>
    <item>
      <trackback:ping>http://www.thecodingmonkey.net/Trackback.aspx?guid=c112475f-abb4-4b42-9f6c-1749d36820f9</trackback:ping>
      <pingback:server>http://www.thecodingmonkey.net/pingback.aspx</pingback:server>
      <pingback:target>http://www.thecodingmonkey.net/PermaLink.aspx?guid=c112475f-abb4-4b42-9f6c-1749d36820f9</pingback:target>
      <dc:creator>nick@thecodingmonkey.net (Nick)</dc:creator>
      <wfw:comment>http://www.thecodingmonkey.net/CommentView.aspx?guid=c112475f-abb4-4b42-9f6c-1749d36820f9</wfw:comment>
      <wfw:commentRss>http://www.thecodingmonkey.net/SyndicationService.asmx/GetEntryCommentsRss?guid=c112475f-abb4-4b42-9f6c-1749d36820f9</wfw:commentRss>
      <slash:comments>1</slash:comments>
      <title>King of Useless Comments</title>
      <guid isPermaLink="false">http://www.thecodingmonkey.net/PermaLink.aspx?guid=c112475f-abb4-4b42-9f6c-1749d36820f9</guid>
      <link>http://feedproxy.google.com/~r/TheCodingMonkey/~3/Q_7IJX73qmY/PermaLink.aspx</link>
      <pubDate>Fri, 10 Oct 2008 03:02:17 GMT</pubDate>
      <description>&lt;p&gt;
   There is a lot of debate among programmers about the proper way to comment your code.&amp;nbsp;
   One type of commenting that is sometimes more difficult, is how to comment code that
   is related to a bug fix.&amp;nbsp; We've all encountered the types of comments where the
   programmer states the obvious:
&lt;/p&gt;
&lt;pre class=code&gt;&lt;span style="COLOR: rgb(0,0,255)"&gt;int&lt;/span&gt; i = 0; &lt;span style="COLOR: rgb(0,128,0)"&gt;//
Initialize an integer to 0&lt;/span&gt;&lt;/pre&gt;
&lt;p&gt;
   But "bug fix comments" can sometimes really be longer than necessary.&amp;nbsp; Here is
   a typical example of what I'm talking about:
&lt;/p&gt;
&lt;pre class=code&gt;&lt;span style="COLOR: rgb(0,128,0)"&gt;//###################################################### &lt;/span&gt;&lt;span style="COLOR: rgb(0,128,0)"&gt;//# &lt;/span&gt;&lt;span style="COLOR: rgb(0,128,0)"&gt;//#
Bug #: 1234 &lt;/span&gt;&lt;span style="COLOR: rgb(0,128,0)"&gt;//# Date: 10/2/2006 &lt;/span&gt;&lt;span style="COLOR: rgb(0,128,0)"&gt;//#
Name: John Smith &lt;/span&gt;&lt;span style="COLOR: rgb(0,128,0)"&gt;//# &lt;/span&gt;&lt;span style="COLOR: rgb(0,128,0)"&gt;//####################################################### &lt;/span&gt;MethodCallAddedToFixBug(); &lt;span style="COLOR: rgb(0,128,0)"&gt;//#######################################################&lt;/span&gt;&lt;/pre&gt;
&lt;a href="http://11011.net/software/vspaste"&gt;&lt;/a&gt; 
&lt;p&gt;
   This type of commenting drives me nuts for a couple different reasons.&amp;nbsp; For one,
   it takes up a huge amount of screen space, which breaks up the flow of the rest of
   the function, and makes it hard to understand.&amp;nbsp; Can you imagine if a single method
   had 3 or 4 of these "bug fixes" in them?
&lt;/p&gt;
&lt;p&gt;
   Secondly, for all that space taken up on screen, what information did we get?&amp;nbsp;
   We got a name, a date, and a number.&amp;nbsp; What was the defect?&amp;nbsp; How did this
   method call actually fix the defect?&amp;nbsp; We don't know.&amp;nbsp; Now, if you feel the
   need to add a comment when you insert code to fix a bug (and I can be convinced pretty
   easily that there &lt;em&gt;is value&lt;/em&gt; to doing that), why not this?
&lt;/p&gt;
&lt;pre class=code&gt;&lt;span style="COLOR: rgb(0,128,0)"&gt;// JS 10/2/2006 - Added call to
fix Bug 1234. This method includs missing validation logic that was causing exception &lt;/span&gt;MethodAddedToFixBug();&lt;/pre&gt;
Was that so hard?&lt;a href="http://11011.net/software/vspaste"&gt;&lt;/a&gt;&lt;img width="0" height="0" src="http://www.thecodingmonkey.net/aggbug.ashx?id=c112475f-abb4-4b42-9f6c-1749d36820f9" /&gt;
&lt;br /&gt;
&lt;hr /&gt;&amp;copy; Copyright 2008 Nick Schweitzer. This feed is for personal non-commercial use only. All other uses are strictly prohibited without express permission from the author.&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~f/TheCodingMonkey?a=e3k4QPr2"&gt;&lt;img src="http://feeds.feedburner.com/~f/TheCodingMonkey?i=e3k4QPr2" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/TheCodingMonkey?a=WRtIWSV4"&gt;&lt;img src="http://feeds.feedburner.com/~f/TheCodingMonkey?d=50" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/TheCodingMonkey?a=E1XTgMzf"&gt;&lt;img src="http://feeds.feedburner.com/~f/TheCodingMonkey?i=E1XTgMzf" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/TheCodingMonkey?a=V4FBqcf0"&gt;&lt;img src="http://feeds.feedburner.com/~f/TheCodingMonkey?d=43" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/TheCodingMonkey/~4/Q_7IJX73qmY" height="1" width="1"/&gt;</description>
      <comments>http://www.thecodingmonkey.net/CommentView.aspx?guid=c112475f-abb4-4b42-9f6c-1749d36820f9</comments>
      <category>Rants</category>
    <feedburner:origLink>http://www.thecodingmonkey.net/PermaLink.aspx?guid=c112475f-abb4-4b42-9f6c-1749d36820f9</feedburner:origLink></item>
    <item>
      <trackback:ping>http://www.thecodingmonkey.net/Trackback.aspx?guid=9cac0bd6-e99e-4121-9bb6-4c6595876675</trackback:ping>
      <pingback:server>http://www.thecodingmonkey.net/pingback.aspx</pingback:server>
      <pingback:target>http://www.thecodingmonkey.net/PermaLink.aspx?guid=9cac0bd6-e99e-4121-9bb6-4c6595876675</pingback:target>
      <dc:creator>nick@thecodingmonkey.net (Nick)</dc:creator>
      <wfw:comment>http://www.thecodingmonkey.net/CommentView.aspx?guid=9cac0bd6-e99e-4121-9bb6-4c6595876675</wfw:comment>
      <wfw:commentRss>http://www.thecodingmonkey.net/SyndicationService.asmx/GetEntryCommentsRss?guid=9cac0bd6-e99e-4121-9bb6-4c6595876675</wfw:commentRss>
      <title>You Can Also Find Me On StackOverflow</title>
      <guid isPermaLink="false">http://www.thecodingmonkey.net/PermaLink.aspx?guid=9cac0bd6-e99e-4121-9bb6-4c6595876675</guid>
      <link>http://feedproxy.google.com/~r/TheCodingMonkey/~3/48z5FDrA8Hs/PermaLink.aspx</link>
      <pubDate>Mon, 06 Oct 2008 15:28:00 GMT</pubDate>
      <description>&lt;p&gt;
   Like most of the engaged developer community, I have discovered &lt;a href="http://stackoverflow.com/"&gt;StackOverflow&lt;/a&gt;,
   the marvelous creation of &lt;a href="http://www.codinghorror.com/"&gt;Jeff Atwood&lt;/a&gt; and &lt;a href="http://www.joelonsoftware.com/"&gt;Joel
   Spolsky&lt;/a&gt;.&amp;nbsp; You can &lt;a href="http://stackoverflow.com/users/22407/nick"&gt;see
   my profile here&lt;/a&gt;.&amp;nbsp; So far I like the site.&amp;nbsp; The purpose of the site is
   to be the anti-&lt;a href="http://www.expertsexchange.com/"&gt;Experts Exchange&lt;/a&gt;.&amp;nbsp;
   We all know Experts Exchange, and we all hate it's existance with a vengence.&amp;nbsp;
   It's the ultimate &lt;a href="http://www.codinghorror.com/blog/archives/000898.html"&gt;Walled
   Garden&lt;/a&gt;, and it sucks in Google furiously, so that its hard to actually find the
   answer to a question.&amp;nbsp; StackOverflow looks to succeed with developers where Experts
   Exchange has frustrated us all greatly.
&lt;/p&gt;
&lt;p&gt;
   I've yet to ask a question on StackOverflow, but I have spent a little time answering
   some questions, and even earned myself some of the easy badges.&amp;nbsp; It's a nice
   little ego stroke.&amp;nbsp; And overall, I really like the site.&amp;nbsp; It it easy to
   use, uncomplicated, and rewards people nicely, and at the same time seems to get the
   best answers to float to the top.&amp;nbsp; But it's also my nature to criticize a bit,
   and so here are the things I don't like about StackOverflow so far:
&lt;/p&gt;
&lt;p&gt;
   &lt;strong&gt;No Way to Link Duplicate Questions:&lt;/strong&gt;&amp;nbsp; StackOverflow is sort of
   like a big Forum from the 1990's, but with extra "social networking" and "web 2.0"
   juju sprinkled in.&amp;nbsp; What that really means is that the user habits of a forum
   are likely to emerge very quickly, but that the site itself is just easier to use.&amp;nbsp;
   Because really... web 2.0 really just translates to good usability... not necessarily
   good user habits.
&lt;/p&gt;
&lt;p&gt;
   Probably the largest problem faced by a Forum moderator is the need to post a big
   post at the top of the forum that is called "FAQ - Read this First Before Posting"
   which is then largely ignored by everyone who goes on the forum so they can re-ask
   the question that was already answered in the FAQ.&amp;nbsp; In fact, odds are pretty
   much guaranteed that someone has complained about this already in the &lt;a href="http://stackoverflow.uservoice.com/"&gt;StackOverflow
   feedback area&lt;/a&gt;, but I'm too lazy to find it.&amp;nbsp; And there in lies the problem.&amp;nbsp;
   Once someone finds it, it would be nice if there was easy web 2.0 juju to link those
   together.
&lt;/p&gt;
&lt;p&gt;
   You can't prevent people from submitting duplicate questions because people are inherently
   lazy.&amp;nbsp; They don't want to go to the trouble of actually &lt;em&gt;searching&lt;/em&gt; before
   asking, and maybe that's ok.&amp;nbsp; But by the same token, if someone is active in
   the community, they will eventually notice the same questions popping up again and
   again that they have already answered.&amp;nbsp; It would be nice to give them the ability
   to link questions together, rather than simply copying the same answer &lt;em&gt;again...&lt;/em&gt; or
   worse, not bothering to answer the question again, because that gets frustrating,
   and in the end it doesn't serve the person asking.
&lt;/p&gt;
&lt;p&gt;
   &lt;strong&gt;How Many Profiles Do I Need?&lt;/strong&gt;&amp;nbsp; StackOverflow is still in beta,
   and &lt;a href="http://stackoverflow.uservoice.com/"&gt;they are requesting input into new
   features&lt;/a&gt;, and also help with bugs.&amp;nbsp; They also have &lt;a href="http://blog.stackoverflow.com/"&gt;a
   nice blog&lt;/a&gt; where you can read up on the latest news.&amp;nbsp; But you'll notice that
   those two sites use different engines to run them.&amp;nbsp; That means that if I want
   to fully participate in the StackOverflow community, I need to not only register with
   the main site (using OpenID - YEAH!) but also with UserVoice for their bug/feature
   too (which doesn't use OpenID).&amp;nbsp; And since their blog is not linked into main
   site either, if I leave a comment on a blog post it doesn't connect up with my main
   profile.&amp;nbsp; This seems very strange to me for a site that is encouraging feedback
   by giving you points for helping.&amp;nbsp; No points for commenting on the blog?&amp;nbsp;
   No points for giving feedback on the site itself through UserVoice?
&lt;/p&gt;
&lt;p&gt;
   I understand the desire to not re-invent the wheel for a feature that is not core
   to your site.&amp;nbsp; After all, they went about the task of creating a site for answering
   questions, not blogging or bug tracking.&amp;nbsp; But at the same time, it would have
   been nice if they could have at least picked 3rd party software that adhered to the
   same principles as their core site... &lt;a href="http://www.codinghorror.com/blog/archives/001121.html"&gt;one
   of which being ease of sign up&lt;/a&gt; (though OpenID).&amp;nbsp; I don't know of a bug/feature
   site that use OpenID off hand, but I do know that &lt;a href="http://www.dasblog.net/"&gt;DasBlog&lt;/a&gt; now
   supports OpenID.
&lt;/p&gt;
&lt;p&gt;
   And really, how much different is a blog post from a question?&amp;nbsp; And how much
   different is a feature request from a function?&amp;nbsp; I would think that they could
   have fairly easily incorporated all those features together, and encouraged even more
   feedback.&amp;nbsp; As it is, I don't want to post on their feedback site because I don't
   want to have to re-register &lt;em&gt;again.&lt;/em&gt;
&lt;/p&gt;
&lt;p&gt;
   I'm sure more will come to me as I use the site more, but those two things jumped
   out at me almost immediately.
&lt;/p&gt;
&lt;img width="0" height="0" src="http://www.thecodingmonkey.net/aggbug.ashx?id=9cac0bd6-e99e-4121-9bb6-4c6595876675" /&gt;
&lt;br /&gt;
&lt;hr /&gt;&amp;copy; Copyright 2008 Nick Schweitzer. This feed is for personal non-commercial use only. All other uses are strictly prohibited without express permission from the author.&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~f/TheCodingMonkey?a=h2GdP0JY"&gt;&lt;img src="http://feeds.feedburner.com/~f/TheCodingMonkey?i=h2GdP0JY" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/TheCodingMonkey?a=fgawEfqg"&gt;&lt;img src="http://feeds.feedburner.com/~f/TheCodingMonkey?d=50" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/TheCodingMonkey?a=N63oZLsD"&gt;&lt;img src="http://feeds.feedburner.com/~f/TheCodingMonkey?i=N63oZLsD" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/TheCodingMonkey?a=cE5sWI9f"&gt;&lt;img src="http://feeds.feedburner.com/~f/TheCodingMonkey?d=43" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/TheCodingMonkey/~4/48z5FDrA8Hs" height="1" width="1"/&gt;</description>
      <comments>http://www.thecodingmonkey.net/CommentView.aspx?guid=9cac0bd6-e99e-4121-9bb6-4c6595876675</comments>
      <category>Reviews</category>
    <feedburner:origLink>http://www.thecodingmonkey.net/PermaLink.aspx?guid=9cac0bd6-e99e-4121-9bb6-4c6595876675</feedburner:origLink></item>
    <item>
      <trackback:ping>http://www.thecodingmonkey.net/Trackback.aspx?guid=182dcf57-ca09-4cd4-862b-8a2a2d42e95e</trackback:ping>
      <pingback:server>http://www.thecodingmonkey.net/pingback.aspx</pingback:server>
      <pingback:target>http://www.thecodingmonkey.net/PermaLink.aspx?guid=182dcf57-ca09-4cd4-862b-8a2a2d42e95e</pingback:target>
      <dc:creator>nick@thecodingmonkey.net (Nick)</dc:creator>
      <wfw:comment>http://www.thecodingmonkey.net/CommentView.aspx?guid=182dcf57-ca09-4cd4-862b-8a2a2d42e95e</wfw:comment>
      <wfw:commentRss>http://www.thecodingmonkey.net/SyndicationService.asmx/GetEntryCommentsRss?guid=182dcf57-ca09-4cd4-862b-8a2a2d42e95e</wfw:commentRss>
      <slash:comments>2</slash:comments>
      <title>Codeapalooza Coverage</title>
      <guid isPermaLink="false">http://www.thecodingmonkey.net/PermaLink.aspx?guid=182dcf57-ca09-4cd4-862b-8a2a2d42e95e</guid>
      <link>http://feedproxy.google.com/~r/TheCodingMonkey/~3/4im-SsKbLuc/PermaLink.aspx</link>
      <pubDate>Sat, 06 Sep 2008 15:10:24 GMT</pubDate>
      <description>&lt;p&gt;
   I drove down to Wheaton, IL for the Chicago .NET User Group's &lt;a href="http://www.codeapalooza.com/"&gt;Codeapalooza&lt;/a&gt;.&amp;nbsp;
   They have a lot of sessions, and its impossible to see all them, here is the coverage
   of the ones I chose to go to.&amp;nbsp; I'll be updating this post after every session,
   so feel free to check back throughout the day.
&lt;/p&gt;
&lt;p&gt;
   &lt;strong&gt;SQL Server 2008 for Developers by &lt;a href="http://clevelanddotnet.blogspot.com/"&gt;Sam
   Nasr&lt;/a&gt;:&lt;/strong&gt;&amp;nbsp; Best Quote - &lt;em&gt;"I drank the punch a long time ago, so I
   only really know Microsoft stuff."&lt;/em&gt;&amp;nbsp; Covered quite a lot from platform features,
   to T-SQL, data types and reporting services.
&lt;/p&gt;
&lt;p&gt;
   Talked about new data auditing features, but then mentioned the four common fields
   that everyone adds to a table (CreatedBy, CreatedDate, ModifiedBy, ModifiedDate) but
   didn't really talk about how the two work together, or if the new data auditing features
   is a standardization of that classic DBA paradigm.&amp;nbsp; Auto Synchronization of data
   with a SQL Server Compact Edition database.&amp;nbsp; Cool!
&lt;/p&gt;
&lt;p&gt;
   Definitely some cool new T-SQL features, like the ability to pass in an entire table
   into a stored procedure.&amp;nbsp; Would that really simplify writing bad code?&amp;nbsp;
   FileStream Object Storage looks cool as a good alternative to binary blobs, with better
   management than just storing a path as a string in a table.&amp;nbsp; Finally you can
   create and initialize a variable in one statement!&amp;nbsp; Plus some new operators like
   +=, and the ability to insert multiple rows in one statement.&amp;nbsp; Both of those
   are a long time coming.&amp;nbsp; Intellisense!!!&amp;nbsp; Thankfully the Intellisense improvements
   are with SQL Server Management Studio 2008, even if you're connecting to a 2005 Server.&amp;nbsp;
   Very nice.&amp;nbsp; There is of course more (like grouping sets), but some of that stuff
   is beyond me since SQL is not exactly my forte.
&lt;/p&gt;
&lt;p&gt;
   HierarchyID looks very much like an XML Data Document (especially with the methods),
   but it doesn't support moving to XML built in.&amp;nbsp; Very strange.&amp;nbsp; But for creating
   tree structures in your data, it looks very cool.&amp;nbsp; Nasr concentrated on using
   it for organizational charts, but tree structures are a very common solution to a
   lot of programming problems.&amp;nbsp; This simply creates first class support within
   T-SQL for a common database paradigm for a parent child relationship with an ParentID
   field.
&lt;/p&gt;
&lt;p&gt;
   &lt;strong&gt;WPF Demystified by &lt;a href="http://davebost.com/blog"&gt;Dave Bost&lt;/a&gt;:&amp;nbsp; &lt;/strong&gt;Best
   Quote - &lt;em&gt;"Where are the designers?&amp;nbsp; It's hard to tell, I don't see a turtleneck
   or a beret."&lt;/em&gt;
&lt;/p&gt;
&lt;p&gt;
   WPF in and of itself is a huge topic, so you're not going to cover it in an hour.&amp;nbsp;
   So this was treated more as a showcase of what WPF can do.&amp;nbsp; He interestingly
   focused on developer vs. designer, and how that is handled by WPF and new technologies
   (no more battleship gray).&amp;nbsp; Focused, once again, on the fact that .NET 3.0 runs
   off of the .NET 2.0 runtime (in other words... there were &lt;em&gt;additions&lt;/em&gt;... but
   not &lt;em&gt;changes&lt;/em&gt;).&amp;nbsp; Important note... the .NET 3.5 SP1 &lt;em&gt;requires&lt;/em&gt; .NET
   2.0 SP1 &lt;em&gt;runtime.&lt;/em&gt;&amp;nbsp; You cannot run 3.5 SP1 applications on the 2.0 standard
   runtime (without the service pack).
&lt;/p&gt;
&lt;p&gt;
   Unfortunately... this talk wasn't as in depth as I'd hoped.&amp;nbsp; It really was the
   same overview presentation I'd seen many times.&amp;nbsp; Here's XAML... Windows Forms
   isn't dead... etc.&amp;nbsp; There is Expression Design, Blend and Web (which &lt;em&gt;replaces
   Frontpage... Frontpage is Dead!&lt;/em&gt;).&amp;nbsp; There is also Expression Media.&amp;nbsp;
   Lots more tools in that family than I was aware of (with virtualization so they can
   run on Mac).&amp;nbsp; Best question:&amp;nbsp; &lt;em&gt;"Is this Standards Based, or Standards
   Compliant?"&lt;/em&gt;&amp;nbsp; Excellent spin!&amp;nbsp; I always ask about SVG because XAML looks
   so similar to SVG.&amp;nbsp; Not surprisingly, nobody at Microsoft seems to realize (or
   is willing to admit) that XAML was invented 10 years ago and was called SVG.
&lt;/p&gt;
&lt;p&gt;
   He shows some cool sample XBAP applications on the internet that demonstrate the power
   of XAML.&amp;nbsp; The coolest was the &lt;a href="http://ttpdownload.bl.uk/app_files/xbap/BrowserApp.xbap"&gt;British
   Library's "Turning the Pages"&lt;/a&gt;.&amp;nbsp; You can use it to virtually read their collection
   of precious old books which are normally under glass and unavailable to regular library
   visitors.&amp;nbsp; There is also &lt;a href="http://www.vertigo.com/familyshow.aspx"&gt;Vertigo's
   Family.Show&lt;/a&gt; which is a XAML application to visually represent a family tree.&amp;nbsp;
   And of course, don't forget &lt;a href="http://www.babysmash.com"&gt;Scott Hanselman's Baby
   Smash&lt;/a&gt; which is great for keeping your kids out of trouble when they start pounding
   on your keyboard.
&lt;/p&gt;
&lt;p&gt;
   So how do you start?&amp;nbsp; Learn XAML first, and then find out what parts of XAML
   work in WPF and in Silverlight.&amp;nbsp; The goal by Microsoft is to make Silverlight
   and WPF more similar.&amp;nbsp; Its not always possible because the browser environment
   restricts us in many ways.&amp;nbsp; Then he worked through one of MSDN's Virtual Labs, &lt;a href="http://msevents.microsoft.com/CUI/WebCastEventDetails.aspx?EventID=1032376936&amp;amp;EventCategory=3&amp;amp;culture=en-US&amp;amp;CountryCode=US"&gt;which
   you can do to also&lt;/a&gt;.
&lt;/p&gt;
&lt;p&gt;
   Of course, Expression Blend doesn't have built in integration with source code control.&amp;nbsp;
   Supposedly it's coming, but I consider that a must have if you want designers and
   developers to work together well.&amp;nbsp; I also don't like how the XAML designer in
   Visual Studio is so pared down.&amp;nbsp; It forces developers (who don't have a designer
   on staff) to buy two applications.&amp;nbsp; Doesn't Microsoft realize that developers
   are cheap?!
&lt;/p&gt;
&lt;p&gt;
   &lt;strong&gt;ADO.NET Entity Framework with Fakher Halim:&lt;/strong&gt;
&lt;/p&gt;
&lt;p&gt;
   This guy has his presentation almost way too prepared.&amp;nbsp; He might as well have
   been reading off of a teleprompter.&amp;nbsp; Maybe not good for this type of group.&amp;nbsp;
   Actually, we never really got to see much code at all.&amp;nbsp; He mostly explained why
   we should be using something like the Entity Framework.&amp;nbsp; For God's sake, this
   guy is drawing a keyboard and mouse on the white board!&amp;nbsp; I wish they had brought
   somebody in to actually talk about the Entity Framework.&amp;nbsp; This dude is a PhD,
   talking at such a high level that it's useless.&amp;nbsp; A wasted hour.&amp;nbsp; I feel
   sorry for this guy because he's got to watch people file out one by one.
&lt;/p&gt;
&lt;p&gt;
   As it turns out, this guy was also sitting in the front row of the WPF talk I mentioned
   earlier, and he kept on asking questions that were totally off topic and taking us
   away from what were were all there to talk about.&amp;nbsp; He kept complaining that forms
   weren't looking like forms any more, and that we were breaking the old fashioned user
   experience paradigm.&amp;nbsp; At some point, old dogs have to learn new tricks.
&lt;/p&gt;
&lt;p&gt;
   &lt;strong&gt;ADO.NET Data Services with &lt;a href="http://www.writebetterbits.com./"&gt;Jim
   Fiorato&lt;/a&gt;:&lt;/strong&gt;
&lt;/p&gt;
&lt;p&gt;
   This is all new to .NET 3.5 SP1 (and used to be called Project Astoria).&amp;nbsp; It's
   a pattern to present data on the web in a way much simpler than SOAP.&amp;nbsp; The results
   of data calls in web services are definitely not human readable.&amp;nbsp; So web services
   are great, but they're not easy to consume unless you're in Visual Studio and possibly
   Java.&amp;nbsp; This fits really well with the new MVC and JSON technologies coming around.
&lt;/p&gt;
&lt;p&gt;
   Data Services can either return data in an ATOM format or in a JSON format for use
   in Javascript.&amp;nbsp; I'd never really seen JSON before, but he had an example of a
   data structure in JSON... and it's super readable.&amp;nbsp; This all fits very well with
   the newer paradigm of RESTful services coming around.&amp;nbsp; I'm going to the REST
   presentation later, so this will bookend very well with that.
&lt;/p&gt;
&lt;p&gt;
   This has not been a good afternoon for presentations.&amp;nbsp; This guy has a Mac Book,
   and for some reason couldn't get it to work with the projector.&amp;nbsp; So they had
   to bring in another laptop, and get Virtual PC installed... and well... the presentation
   isn't as good as it could have been.
&lt;/p&gt;
&lt;p&gt;
   Once he finally got everything up and running, he basically created an Entity Framework
   project and exposed it value a WCF service using ADO.NET Data Services.&amp;nbsp; Essentially
   all this does it allows you to translate a URL into a LINQ query seamlessly.&amp;nbsp;
   He spent half the time just typing URL's into a web browser and showing the results.&amp;nbsp;
   No code for parsing the URL, or any code written.&amp;nbsp; All that query string functionality
   comes built in out of the box.
&lt;/p&gt;
&lt;p&gt;
   The idea of a query interceptor was pretty cool, in that you can now perform extra
   logic before the query takes place and then modify the query based on that logic.&amp;nbsp;
   For instance, you can modify a GET to only return data based on someone's permissions.&amp;nbsp;
   There was an excellent question on Transaction support.&amp;nbsp; For this model, there
   is no real support for Transactions.&amp;nbsp; At that point, you are best going to full
   blown Web Services.&amp;nbsp; This is great really only for fast read only data access.
&lt;/p&gt;
&lt;p&gt;
   &lt;strong&gt;Rest and JSON using WCF and ADO.NET Data Services with &lt;a href="http://eraserandcrowbar.com/"&gt;Larry
   Clarkin&lt;/a&gt;:&amp;nbsp; &lt;/strong&gt;Best Quote - &lt;em&gt;"You can explain any software concept
   using Star Trek.&amp;nbsp; After all, Capt. Kirk was the first blogger."&lt;/em&gt;&amp;nbsp; It's
   tied with &lt;em&gt;"The new Hello World is - Let's build a blog!"&lt;/em&gt;
&lt;/p&gt;
&lt;p&gt;
   We had low expectations to begin with since he came into the room and said "Well,
   I haven't finished my presentation yet."&amp;nbsp; Way to represent Microsoft Larry!&amp;nbsp;
   And true to form, he actually started out by not talking about REST and JSON, but
   instead started talking about photography... specifically showing &lt;a href="http://livelabs.com/seadragon/"&gt;Sea
   Dragon&lt;/a&gt;.&amp;nbsp; Looked pretty cool.&amp;nbsp; Deep Zoom is actually part of this, and
   is built into Silverlight.&amp;nbsp; It is similar to &lt;a href="http://maps.google.com"&gt;Google
   Maps&lt;/a&gt; in that it delivers the different pieces of resolution in tiles, but it is
   much smoother.&amp;nbsp; It might actually use the new JPEG 2000 in order to do part of
   the render.&amp;nbsp; He also showed &lt;a href="http://photosynth.net/Default.aspx"&gt;Photosynth&lt;/a&gt; (which
   I hadn't heard about).&amp;nbsp; It allows you to splice together different angles of
   a location, and using the EXIF data out of the picture along with spatial recognition,
   it creates a 3D scene.&amp;nbsp; One note that Larry mentioned is that you shouldn't use
   cropped photos, because the focal length is not synced with the result of the crop,
   and that screws up the software.&amp;nbsp; Finally he showed &lt;a href="http://research.microsoft.com/autocollage/"&gt;AutoCollage&lt;/a&gt;,
   which loads a whole slew of photos and tries to auto create a collage based on what
   the software thinks is interesting.
&lt;/p&gt;
&lt;p&gt;
   So this ended up being a much more overview look at REST (&lt;a href="http://en.wikipedia.org/wiki/Representational_State_Transfer"&gt;Representational
   State Transfer&lt;/a&gt;) and JSON (&lt;a href="http://en.wikipedia.org/wiki/JSON"&gt;Javascript
   Object Notation&lt;/a&gt;), and even some old school (at least in the .NET time frame) serialization.&amp;nbsp;
   Of course, I remember writing MFC serialization code in C++.&amp;nbsp; He started by showing
   what the XML Serializer will do for you out of the box... which has been available
   since .NET 1.0.&amp;nbsp; I do think he spent too much time talking about existing technologies,
   when the topic was supposed to be REST and JSON.&amp;nbsp; Though the attributes you can
   apply to the classes to control XML Serialization also apply to REST serialization
   since REST is still XML, though much simpler than SOAP.&amp;nbsp; Is REST better than
   SOAP?&amp;nbsp; REST is much simpler than SOAP, but SOAP has more features for transactions
   and such.
&lt;/p&gt;
&lt;p&gt;
   Why JSON?&amp;nbsp; Well for one, it avoids &lt;a href="http://www.codinghorror.com/blog/archives/001114.html"&gt;the
   angle bracket tax&lt;/a&gt;.&amp;nbsp; However, its also great for use with Javascript since
   all parsers know how to deal with JSON.&amp;nbsp; After all, it's called &lt;em&gt;Javascript&lt;/em&gt; Object
   Notation.&amp;nbsp; So there is no need to parse the data on the client side, so application
   development is faster and easier.&amp;nbsp; It's also faster to &lt;em&gt;run&lt;/em&gt; on the client
   running Javascript.&amp;nbsp; But don't use JSON for a thick client or for Server-Server
   communication.&amp;nbsp; For that, you ought to be using XML (through SOAP or REST).
&lt;/p&gt;
&lt;p&gt;
   Then he showed some code on how to deliver JSON through a WCF service.&amp;nbsp; Overall
   though, he gave a great overview presentation.
&lt;/p&gt;
&lt;img width="0" height="0" src="http://www.thecodingmonkey.net/aggbug.ashx?id=182dcf57-ca09-4cd4-862b-8a2a2d42e95e" /&gt;
&lt;br /&gt;
&lt;hr /&gt;&amp;copy; Copyright 2008 Nick Schweitzer. This feed is for personal non-commercial use only. All other uses are strictly prohibited without express permission from the author.&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~f/TheCodingMonkey?a=PZadC41W"&gt;&lt;img src="http://feeds.feedburner.com/~f/TheCodingMonkey?i=PZadC41W" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/TheCodingMonkey?a=lHTGGOIb"&gt;&lt;img src="http://feeds.feedburner.com/~f/TheCodingMonkey?d=50" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/TheCodingMonkey?a=LHuo0guU"&gt;&lt;img src="http://feeds.feedburner.com/~f/TheCodingMonkey?i=LHuo0guU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/TheCodingMonkey?a=al0vhjkN"&gt;&lt;img src="http://feeds.feedburner.com/~f/TheCodingMonkey?d=43" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/TheCodingMonkey/~4/4im-SsKbLuc" height="1" width="1"/&gt;</description>
      <comments>http://www.thecodingmonkey.net/CommentView.aspx?guid=182dcf57-ca09-4cd4-862b-8a2a2d42e95e</comments>
      <category>Coding</category>
    <feedburner:origLink>http://www.thecodingmonkey.net/PermaLink.aspx?guid=182dcf57-ca09-4cd4-862b-8a2a2d42e95e</feedburner:origLink></item>
    <item>
      <trackback:ping>http://www.thecodingmonkey.net/Trackback.aspx?guid=0e85cb6a-c20b-42b5-bd5f-973b84bcb70d</trackback:ping>
      <pingback:server>http://www.thecodingmonkey.net/pingback.aspx</pingback:server>
      <pingback:target>http://www.thecodingmonkey.net/PermaLink.aspx?guid=0e85cb6a-c20b-42b5-bd5f-973b84bcb70d</pingback:target>
      <dc:creator>nick@thecodingmonkey.net (Nick)</dc:creator>
      <wfw:comment>http://www.thecodingmonkey.net/CommentView.aspx?guid=0e85cb6a-c20b-42b5-bd5f-973b84bcb70d</wfw:comment>
      <wfw:commentRss>http://www.thecodingmonkey.net/SyndicationService.asmx/GetEntryCommentsRss?guid=0e85cb6a-c20b-42b5-bd5f-973b84bcb70d</wfw:commentRss>
      <title>Email Problems</title>
      <guid isPermaLink="false">http://www.thecodingmonkey.net/PermaLink.aspx?guid=0e85cb6a-c20b-42b5-bd5f-973b84bcb70d</guid>
      <link>http://feedproxy.google.com/~r/TheCodingMonkey/~3/_4r_wWaotyQ/PermaLink.aspx</link>
      <pubDate>Thu, 04 Sep 2008 11:22:21 GMT</pubDate>
      <description>&lt;p&gt;
   My hosting provider is having email issues right now.&amp;nbsp; Any email sent since last
   night to nick-at-nickschweitzer-dot-net has not gotten to me, and may be lost.&amp;nbsp;
   I still don't appear to be getting any email sent to that address.&amp;nbsp; If you're
   trying to get a hold of me, try sending to schweitn-at-gmail-dot-com.&amp;nbsp; I'll update
   this post as the situation changes.
&lt;/p&gt;
&lt;p&gt;
   &lt;strong&gt;Update:&lt;/strong&gt;&amp;nbsp; Email is being delivered to my normal email addresses
   again, but I'm afraid anything sent last night until mid morning today was more than
   likely lost.&amp;nbsp; If you emailed me something during that time frame, please send
   it again.
&lt;/p&gt;
&lt;img width="0" height="0" src="http://www.nickschweitzer.net/cptrk.ashx?id=803ddd40-9c78-4896-bb12-3f547b13b892"&gt;&lt;img width="0" height="0" src="http://www.thecodingmonkey.net/aggbug.ashx?id=0e85cb6a-c20b-42b5-bd5f-973b84bcb70d" /&gt;
&lt;br /&gt;
&lt;hr /&gt;&amp;copy; Copyright 2008 Nick Schweitzer. This feed is for personal non-commercial use only. All other uses are strictly prohibited without express permission from the author.&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~f/TheCodingMonkey?a=bSjJpzZN"&gt;&lt;img src="http://feeds.feedburner.com/~f/TheCodingMonkey?i=bSjJpzZN" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/TheCodingMonkey?a=6hK37lXf"&gt;&lt;img src="http://feeds.feedburner.com/~f/TheCodingMonkey?d=50" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/TheCodingMonkey?a=gohKVQ8z"&gt;&lt;img src="http://feeds.feedburner.com/~f/TheCodingMonkey?i=gohKVQ8z" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/TheCodingMonkey?a=MhV7pion"&gt;&lt;img src="http://feeds.feedburner.com/~f/TheCodingMonkey?d=43" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/TheCodingMonkey/~4/_4r_wWaotyQ" height="1" width="1"/&gt;</description>
      <comments>http://www.thecodingmonkey.net/CommentView.aspx?guid=0e85cb6a-c20b-42b5-bd5f-973b84bcb70d</comments>
      <category>Blogging</category>
    <feedburner:origLink>http://www.thecodingmonkey.net/PermaLink.aspx?guid=0e85cb6a-c20b-42b5-bd5f-973b84bcb70d</feedburner:origLink></item>
    <item>
      <trackback:ping>http://www.thecodingmonkey.net/Trackback.aspx?guid=d01a28c1-00dc-409d-b1ed-ca73d957b8eb</trackback:ping>
      <pingback:server>http://www.thecodingmonkey.net/pingback.aspx</pingback:server>
      <pingback:target>http://www.thecodingmonkey.net/PermaLink.aspx?guid=d01a28c1-00dc-409d-b1ed-ca73d957b8eb</pingback:target>
      <dc:creator>nick@thecodingmonkey.net (Nick)</dc:creator>
      <wfw:comment>http://www.thecodingmonkey.net/CommentView.aspx?guid=d01a28c1-00dc-409d-b1ed-ca73d957b8eb</wfw:comment>
      <wfw:commentRss>http://www.thecodingmonkey.net/SyndicationService.asmx/GetEntryCommentsRss?guid=d01a28c1-00dc-409d-b1ed-ca73d957b8eb</wfw:commentRss>
      <title>Google Chrome - Fail</title>
      <guid isPermaLink="false">http://www.thecodingmonkey.net/PermaLink.aspx?guid=d01a28c1-00dc-409d-b1ed-ca73d957b8eb</guid>
      <link>http://feedproxy.google.com/~r/TheCodingMonkey/~3/sviRfGWl3eo/PermaLink.aspx</link>
      <pubDate>Thu, 04 Sep 2008 00:13:53 GMT</pubDate>
      <description>&lt;p&gt;
   Everyone seemed to be pretty excited about &lt;a href="http://www.google.com/chrome"&gt;Google
   Chrome&lt;/a&gt; yesterday.&amp;#160; I consider it to be a massive failure.&amp;#160; On my desktop
   machine running Vista, I decided to set it up with security in mind, among other things.&amp;#160;
   So I created two accounts.&amp;#160; The first is an Administrative account which I rarely
   use.&amp;#160; The second account is a lower privilege account.&amp;#160; If I want to install
   any software, I want I log in as the Administrator, install and get out.&amp;#160; My
   day to day usage takes place on my standard account.
&lt;/p&gt;
&lt;p&gt;
   Google Chrome however installs to App Data.&amp;#160; So when I install as an Administrator,
   it is only usable in the account that did the installation.&amp;#160; My normal day to
   day account can't run it.&amp;#160; So do I now have to install the software for every
   user on the machine that wants to run it?&amp;#160; Where's the security there?
&lt;/p&gt;
&lt;p&gt;
   FAIL.
&lt;/p&gt;
&lt;img width="0" height="0" src="http://www.thecodingmonkey.net/aggbug.ashx?id=d01a28c1-00dc-409d-b1ed-ca73d957b8eb" /&gt;
&lt;br /&gt;
&lt;hr /&gt;&amp;copy; Copyright 2008 Nick Schweitzer. This feed is for personal non-commercial use only. All other uses are strictly prohibited without express permission from the author.&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~f/TheCodingMonkey?a=bQ2L93Mr"&gt;&lt;img src="http://feeds.feedburner.com/~f/TheCodingMonkey?i=bQ2L93Mr" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/TheCodingMonkey?a=aMwu4OIv"&gt;&lt;img src="http://feeds.feedburner.com/~f/TheCodingMonkey?d=50" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/TheCodingMonkey?a=eSbcso5B"&gt;&lt;img src="http://feeds.feedburner.com/~f/TheCodingMonkey?i=eSbcso5B" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/TheCodingMonkey?a=p1t7yS7S"&gt;&lt;img src="http://feeds.feedburner.com/~f/TheCodingMonkey?d=43" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/TheCodingMonkey/~4/sviRfGWl3eo" height="1" width="1"/&gt;</description>
      <comments>http://www.thecodingmonkey.net/CommentView.aspx?guid=d01a28c1-00dc-409d-b1ed-ca73d957b8eb</comments>
      <category>Reviews</category>
    <feedburner:origLink>http://www.thecodingmonkey.net/PermaLink.aspx?guid=d01a28c1-00dc-409d-b1ed-ca73d957b8eb</feedburner:origLink></item>
    <item>
      <trackback:ping>http://www.thecodingmonkey.net/Trackback.aspx?guid=933b37fb-1d1f-47d3-a041-3fe6b3b1aaa0</trackback:ping>
      <pingback:server>http://www.thecodingmonkey.net/pingback.aspx</pingback:server>
      <pingback:target>http://www.thecodingmonkey.net/PermaLink.aspx?guid=933b37fb-1d1f-47d3-a041-3fe6b3b1aaa0</pingback:target>
      <dc:creator>nick@thecodingmonkey.net (Nick)</dc:creator>
      <wfw:comment>http://www.thecodingmonkey.net/CommentView.aspx?guid=933b37fb-1d1f-47d3-a041-3fe6b3b1aaa0</wfw:comment>
      <wfw:commentRss>http://www.thecodingmonkey.net/SyndicationService.asmx/GetEntryCommentsRss?guid=933b37fb-1d1f-47d3-a041-3fe6b3b1aaa0</wfw:commentRss>
      <title>Have You Hugged a Developer Today?</title>
      <guid isPermaLink="false">http://www.thecodingmonkey.net/PermaLink.aspx?guid=933b37fb-1d1f-47d3-a041-3fe6b3b1aaa0</guid>
      <link>http://feedproxy.google.com/~r/TheCodingMonkey/~3/MtzLgcTFlKs/PermaLink.aspx</link>
      <pubDate>Sat, 30 Aug 2008 02:11:56 GMT</pubDate>
      <description>&lt;p&gt;
   &lt;a href="http://blip.tv/file/1061088"&gt;Great video&lt;/a&gt; by the folks at &lt;a href="http://devshop.com/"&gt;Devshop&lt;/a&gt;.
&lt;/p&gt;
&lt;p&gt;
   &lt;embed src="http://blip.tv/play/gYwjwZJqjdEh" width="640" height="390" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" /&gt; 
&lt;/p&gt;
&lt;p&gt;
   &lt;a href="http://www.codesqueeze.com/hug-a-developer/"&gt;Via Max Pool&lt;/a&gt;.
&lt;/p&gt;
&lt;img width="0" height="0" src="http://www.thecodingmonkey.net/aggbug.ashx?id=933b37fb-1d1f-47d3-a041-3fe6b3b1aaa0" /&gt;
&lt;br /&gt;
&lt;hr /&gt;&amp;copy; Copyright 2008 Nick Schweitzer. This feed is for personal non-commercial use only. All other uses are strictly prohibited without express permission from the author.&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~f/TheCodingMonkey?a=m7abWeNM"&gt;&lt;img src="http://feeds.feedburner.com/~f/TheCodingMonkey?i=m7abWeNM" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/TheCodingMonkey?a=VafM3oRj"&gt;&lt;img src="http://feeds.feedburner.com/~f/TheCodingMonkey?d=50" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/TheCodingMonkey?a=zS8m8uDJ"&gt;&lt;img src="http://feeds.feedburner.com/~f/TheCodingMonkey?i=zS8m8uDJ" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~f/TheCodingMonkey?a=TAvwTSnc"&gt;&lt;img src="http://feeds.feedburner.com/~f/TheCodingMonkey?d=43" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/TheCodingMonkey/~4/MtzLgcTFlKs" height="1" width="1"/&gt;</description>
      <comments>http://www.thecodingmonkey.net/CommentView.aspx?guid=933b37fb-1d1f-47d3-a041-3fe6b3b1aaa0</comments>
      <category>Humor</category>
    <feedburner:origLink>http://www.thecodingmonkey.net/PermaLink.aspx?guid=933b37fb-1d1f-47d3-a041-3fe6b3b1aaa0</feedburner:origLink></item>
  </channel>
</rss>
