<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-8517212</id><updated>2012-01-24T09:34:05.260-05:00</updated><category term='DirectShow.NET'/><category term='Automated Testing'/><category term='StackOverflow'/><category term='Internet Service'/><category term='HL7'/><category term='PMD'/><category term='Sql Server'/><category term='SimpleDB'/><category term='Misc'/><category term='Blogger'/><category term='IIS'/><category term='Watin'/><category term='AJAX.NET'/><category term='ASP.NET'/><category term='Business'/><category term='WCF'/><category term='.NET Compact Framework'/><category term='Atlanta'/><category term='GridRoom'/><category term='Simple Savant'/><category term='Marketing'/><category term='WiMAX'/><category term='OpenNET CF'/><category term='Video'/><category term='.NET'/><title type='text'>Coditate</title><subtitle type='html'>Pondering the code...</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://blog.coditate.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8517212/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://blog.coditate.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>Ashley Tate</name><uri>http://www.blogger.com/profile/06347668287413314992</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://2.bp.blogspot.com/_iHxrha4ti8g/SlQLDmVNDgI/AAAAAAAAAGE/T7T1_TL-xRU/S220/profile2.jpg'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>34</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-8517212.post-1801773439580199712</id><published>2011-05-23T22:45:00.001-04:00</published><updated>2011-05-27T13:08:41.784-04:00</updated><title type='text'>Simple Savant Renamed to Simol and v1.0 Released</title><summary type='text'> Simol 1.0 (formerly Simple Savant), my .NET persistence library for Amazon SimpleDB, is now available at CodePlex. Besides the name change and some general API cleanup this release includes the following new features:     Support for new SimpleDB BatchDeleteAttributes operation.     Select operations now allow null parameter values for selecting records with “null” attribute values in SimpleDB.</summary><link rel='replies' type='application/atom+xml' href='http://blog.coditate.com/feeds/1801773439580199712/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8517212&amp;postID=1801773439580199712' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8517212/posts/default/1801773439580199712'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8517212/posts/default/1801773439580199712'/><link rel='alternate' type='text/html' href='http://blog.coditate.com/2011/05/simple-savant-renamed-to-simol-and-v10.html' title='Simple Savant Renamed to Simol and v1.0 Released'/><author><name>Ashley Tate</name><uri>http://www.blogger.com/profile/06347668287413314992</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://2.bp.blogspot.com/_iHxrha4ti8g/SlQLDmVNDgI/AAAAAAAAAGE/T7T1_TL-xRU/S220/profile2.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh6.ggpht.com/-bEBo4TRwgEI/Td_Z3b09mdI/AAAAAAAAAa0/0UcmvV25yRE/s72-c/Logo%25255B17%25255D.png?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8517212.post-7103983587241033215</id><published>2010-10-04T23:22:00.001-04:00</published><updated>2010-10-13T23:35:21.625-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='SimpleDB'/><category scheme='http://www.blogger.com/atom/ns#' term='Misc'/><category scheme='http://www.blogger.com/atom/ns#' term='StackOverflow'/><category scheme='http://www.blogger.com/atom/ns#' term='Simple Savant'/><title type='text'>Saying Goodbye to StackOverflow</title><summary type='text'>If you build software you're probably familiar with StackOverflow, the 2-year-old, collaboratively edited question-and-answer site for programmers. SO was not a new idea, but it was well-executed and quickly gained a a large number of users due to the popular blogs of its founders.  I haven't been a particularly active SO user, and my "reputation" peaked at a little over 400 points after one </summary><link rel='replies' type='application/atom+xml' href='http://blog.coditate.com/feeds/7103983587241033215/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8517212&amp;postID=7103983587241033215' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8517212/posts/default/7103983587241033215'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8517212/posts/default/7103983587241033215'/><link rel='alternate' type='text/html' href='http://blog.coditate.com/2010/10/saying-goodbye-to-stackoverflow.html' title='Saying Goodbye to StackOverflow'/><author><name>Ashley Tate</name><uri>http://www.blogger.com/profile/06347668287413314992</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://2.bp.blogspot.com/_iHxrha4ti8g/SlQLDmVNDgI/AAAAAAAAAGE/T7T1_TL-xRU/S220/profile2.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8517212.post-696761026119123540</id><published>2010-09-01T09:00:00.001-04:00</published><updated>2010-09-01T09:06:19.815-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='SimpleDB'/><category scheme='http://www.blogger.com/atom/ns#' term='.NET'/><category scheme='http://www.blogger.com/atom/ns#' term='Simple Savant'/><title type='text'>Simple Savant Passes 2000 Downloads</title><summary type='text'> Simple Savant, my .NET library for Amazon's SimpleDB service, passed 2000 downloads last week!   That's not a huge number compared to the most popular open-source projects. But considering that SimpleDB is still in beta and something of a niche product and that .NET apps built on SimpleDB are a niche within the niche, it's not too bad!  Also nice: So far Savant has been rated a 5-star project (</summary><link rel='replies' type='application/atom+xml' href='http://blog.coditate.com/feeds/696761026119123540/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8517212&amp;postID=696761026119123540' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8517212/posts/default/696761026119123540'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8517212/posts/default/696761026119123540'/><link rel='alternate' type='text/html' href='http://blog.coditate.com/2010/09/simple-savant-passes-2000-downloads.html' title='Simple Savant Passes 2000 Downloads'/><author><name>Ashley Tate</name><uri>http://www.blogger.com/profile/06347668287413314992</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://2.bp.blogspot.com/_iHxrha4ti8g/SlQLDmVNDgI/AAAAAAAAAGE/T7T1_TL-xRU/S220/profile2.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh5.ggpht.com/_iHxrha4ti8g/TH5Pm2mr6WI/AAAAAAAAAX0/Mtdy_s1BRr4/s72-c/image%5B10%5D.png?imgmax=800' height='72' width='72'/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8517212.post-7867710130961530129</id><published>2010-05-28T11:43:00.001-04:00</published><updated>2010-05-28T13:18:59.710-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='.NET'/><category scheme='http://www.blogger.com/atom/ns#' term='ASP.NET'/><category scheme='http://www.blogger.com/atom/ns#' term='AJAX.NET'/><title type='text'>Handling Login Redirects When Mixing ASP.NET MVC 2 and WebForms</title><summary type='text'>I've been migrating parts of GridRoom over to the ASP.NET MVC 2 framework as a precursor to implementing more advanced Ajax support (sans WebForms and ASP.NET AJAX).   One of the challenges to making WebForms and MVC coexist is handling redirects to the login page when making Ajax requests. This can happen when a user's session times out or if they log out in another browser window.   When this </summary><link rel='replies' type='application/atom+xml' href='http://blog.coditate.com/feeds/7867710130961530129/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8517212&amp;postID=7867710130961530129' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8517212/posts/default/7867710130961530129'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8517212/posts/default/7867710130961530129'/><link rel='alternate' type='text/html' href='http://blog.coditate.com/2010/05/handling-login-redirects-when-mixing.html' title='Handling Login Redirects When Mixing ASP.NET MVC 2 and WebForms'/><author><name>Ashley Tate</name><uri>http://www.blogger.com/profile/06347668287413314992</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://2.bp.blogspot.com/_iHxrha4ti8g/SlQLDmVNDgI/AAAAAAAAAGE/T7T1_TL-xRU/S220/profile2.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8517212.post-6169921470601211280</id><published>2010-05-11T18:05:00.001-04:00</published><updated>2010-05-16T23:52:56.643-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='.NET'/><category scheme='http://www.blogger.com/atom/ns#' term='ASP.NET'/><title type='text'>Preventing Multiple Form Submits In ASP.NET</title><summary type='text'>Last year when I started working on the GridRoom Web site I spent some time researching the current best-practices for preventing multiple form submits in ASP.NET. (It was the first site I'd built from scratch using .NET, and I wasn't particularly fond of the architecture of existing .NET sites I had worked on.)  There are many options for prevent multiple submits, some of them quite complex and </summary><link rel='replies' type='application/atom+xml' href='http://blog.coditate.com/feeds/6169921470601211280/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8517212&amp;postID=6169921470601211280' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8517212/posts/default/6169921470601211280'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8517212/posts/default/6169921470601211280'/><link rel='alternate' type='text/html' href='http://blog.coditate.com/2010/05/preventing-multiple-form-submits-in.html' title='Preventing Multiple Form Submits In ASP.NET'/><author><name>Ashley Tate</name><uri>http://www.blogger.com/profile/06347668287413314992</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://2.bp.blogspot.com/_iHxrha4ti8g/SlQLDmVNDgI/AAAAAAAAAGE/T7T1_TL-xRU/S220/profile2.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8517212.post-320390923872118598</id><published>2010-05-10T21:57:00.001-04:00</published><updated>2010-05-10T21:57:07.195-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Blogger'/><title type='text'>Restore Your Missing Blogger Comments</title><summary type='text'>I moved this blog to a custom domain about two months ago. Blogger makes the process very simple if you already own your own domain. I was up and running at blog.coditate.com after just a few clicks in the Blogger dashboard, and adding a new CNAME record for this domain.  A short time later I realized all the comments were missing from this blog. Apparently this has been quite a problem for </summary><link rel='replies' type='application/atom+xml' href='http://blog.coditate.com/feeds/320390923872118598/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8517212&amp;postID=320390923872118598' title='7 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8517212/posts/default/320390923872118598'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8517212/posts/default/320390923872118598'/><link rel='alternate' type='text/html' href='http://blog.coditate.com/2010/05/restore-your-missing-blogger-comments.html' title='Restore Your Missing Blogger Comments'/><author><name>Ashley Tate</name><uri>http://www.blogger.com/profile/06347668287413314992</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://2.bp.blogspot.com/_iHxrha4ti8g/SlQLDmVNDgI/AAAAAAAAAGE/T7T1_TL-xRU/S220/profile2.jpg'/></author><thr:total>7</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8517212.post-1696870804626175940</id><published>2010-04-30T19:02:00.001-04:00</published><updated>2010-04-30T19:02:03.841-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Video'/><category scheme='http://www.blogger.com/atom/ns#' term='.NET'/><category scheme='http://www.blogger.com/atom/ns#' term='ASP.NET'/><category scheme='http://www.blogger.com/atom/ns#' term='GridRoom'/><title type='text'>Forcing Firefox to Cache Secure Silverlight Video Content</title><summary type='text'>The latest GridRoom release moves all video playback to the Web using a Silverlight-based video player. During my testing I had some problems getting Firefox caching to work properly with video content delivered via https.  At first I tried to deliver all video content over http, not https. But since the secure areas of the GridRoom site are accessed via https I was forced by Silverlight security</summary><link rel='replies' type='application/atom+xml' href='http://blog.coditate.com/feeds/1696870804626175940/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8517212&amp;postID=1696870804626175940' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8517212/posts/default/1696870804626175940'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8517212/posts/default/1696870804626175940'/><link rel='alternate' type='text/html' href='http://blog.coditate.com/2010/04/forcing-firefox-to-cache-secure.html' title='Forcing Firefox to Cache Secure Silverlight Video Content'/><author><name>Ashley Tate</name><uri>http://www.blogger.com/profile/06347668287413314992</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://2.bp.blogspot.com/_iHxrha4ti8g/SlQLDmVNDgI/AAAAAAAAAGE/T7T1_TL-xRU/S220/profile2.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8517212.post-8726752925365017884</id><published>2010-04-30T17:46:00.001-04:00</published><updated>2010-05-05T21:28:16.511-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Business'/><category scheme='http://www.blogger.com/atom/ns#' term='Marketing'/><category scheme='http://www.blogger.com/atom/ns#' term='GridRoom'/><title type='text'>All About Model Releases</title><summary type='text'>Since I'm working on a product for managing sports video I occasionally need to use sports media for marketing, demos, tutorials, and other purposes. We have lots of photos and videos of our own kids--especially since my wife is quite the avid amateur photographer. But these sometimes include other folk's children as well as ours.  Not wanting to follow in the footsteps of Virgin Mobile, whose </summary><link rel='replies' type='application/atom+xml' href='http://blog.coditate.com/feeds/8726752925365017884/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8517212&amp;postID=8726752925365017884' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8517212/posts/default/8726752925365017884'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8517212/posts/default/8726752925365017884'/><link rel='alternate' type='text/html' href='http://blog.coditate.com/2010/04/all-about-model-releases.html' title='All About Model Releases'/><author><name>Ashley Tate</name><uri>http://www.blogger.com/profile/06347668287413314992</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://2.bp.blogspot.com/_iHxrha4ti8g/SlQLDmVNDgI/AAAAAAAAAGE/T7T1_TL-xRU/S220/profile2.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh3.ggpht.com/_iHxrha4ti8g/S9tPxKCzwYI/AAAAAAAAAVQ/HmYPHEgebis/s72-c/image%5B14%5D.png?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8517212.post-5647495582618370569</id><published>2010-04-23T11:26:00.001-04:00</published><updated>2010-04-26T09:59:47.668-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Video'/><category scheme='http://www.blogger.com/atom/ns#' term='DirectShow.NET'/><category scheme='http://www.blogger.com/atom/ns#' term='Business'/><category scheme='http://www.blogger.com/atom/ns#' term='GridRoom'/><title type='text'>When Competitors Are Using Your Code...Does That Mean You're Being Too Transparent?</title><summary type='text'>Openness and transparency are all the rage in startups these days. Don't hide the fact you're small. Be accessible to customers. Blog about your ideas and plans. Openly dissect your successes and failures. Share your work.  About 2 years ago I posted a video scene detection algorithm written in C# on this blog, while I was still just tinkering with the ideas behind GridRoom (and before I had </summary><link rel='replies' type='application/atom+xml' href='http://blog.coditate.com/feeds/5647495582618370569/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8517212&amp;postID=5647495582618370569' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8517212/posts/default/5647495582618370569'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8517212/posts/default/5647495582618370569'/><link rel='alternate' type='text/html' href='http://blog.coditate.com/2010/04/when-competitors-are-using-your.html' title='When Competitors Are Using Your Code...Does That Mean You&amp;#39;re Being Too Transparent?'/><author><name>Ashley Tate</name><uri>http://www.blogger.com/profile/06347668287413314992</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://2.bp.blogspot.com/_iHxrha4ti8g/SlQLDmVNDgI/AAAAAAAAAGE/T7T1_TL-xRU/S220/profile2.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8517212.post-7850709702181505084</id><published>2010-04-08T17:07:00.001-04:00</published><updated>2010-04-08T23:44:28.671-04:00</updated><title type='text'>Simple Savant v0.5 Released</title><summary type='text'>Simple Savant v0.5 is now available at CodePlex. This release includes the following features:     Reliable cross-domain write support. Reliable-writes guarantee that you will never suffer partial data loss when writing associated data to multiple domains. System failure during a reliable-write will result in all or none of your data being stored in SimpleDB. This is accomplished using a 2-phased</summary><link rel='replies' type='application/atom+xml' href='http://blog.coditate.com/feeds/7850709702181505084/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8517212&amp;postID=7850709702181505084' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8517212/posts/default/7850709702181505084'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8517212/posts/default/7850709702181505084'/><link rel='alternate' type='text/html' href='http://blog.coditate.com/2010/04/simple-savant-v05-released.html' title='Simple Savant v0.5 Released'/><author><name>Ashley Tate</name><uri>http://www.blogger.com/profile/06347668287413314992</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://2.bp.blogspot.com/_iHxrha4ti8g/SlQLDmVNDgI/AAAAAAAAAGE/T7T1_TL-xRU/S220/profile2.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8517212.post-249628961699312864</id><published>2010-02-24T20:45:00.001-05:00</published><updated>2010-03-01T11:04:42.976-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='SimpleDB'/><category scheme='http://www.blogger.com/atom/ns#' term='Simple Savant'/><title type='text'>Simple Savant v0.4 Released</title><summary type='text'>I've just released Simple Savant v0.4 at CodePlex. The new release includes the following features:     Full-text searches of SimpleDB data using Lucene.NET 2.4     Attribute spanning and compression to allow the storage of large property values in SimpleDB (attribute values are normally limited to 1024 bytes)     Item versioning, including support for SimpleDB's new conditional puts to prevent </summary><link rel='replies' type='application/atom+xml' href='http://blog.coditate.com/feeds/249628961699312864/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8517212&amp;postID=249628961699312864' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8517212/posts/default/249628961699312864'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8517212/posts/default/249628961699312864'/><link rel='alternate' type='text/html' href='http://blog.coditate.com/2010/02/simple-savant-v04-released.html' title='Simple Savant v0.4 Released'/><author><name>Ashley Tate</name><uri>http://www.blogger.com/profile/06347668287413314992</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://2.bp.blogspot.com/_iHxrha4ti8g/SlQLDmVNDgI/AAAAAAAAAGE/T7T1_TL-xRU/S220/profile2.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8517212.post-124326713145840262</id><published>2010-02-23T14:47:00.000-05:00</published><updated>2010-03-17T11:15:49.720-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='SimpleDB'/><category scheme='http://www.blogger.com/atom/ns#' term='Simple Savant'/><title type='text'>Amazon SimpleDB Book Now Available from Packt Publishing</title><summary type='text'>As a result of my work on Simple Savant I was asked to serve as technical reviewer of a new SimpleDB book by YLastic CTO Prabhakar Chaganti.  Amazon SimpleDB Developer Guide is now available from Packt Publishing. It's a great resource for folks getting started with SimpleDB and includes numerous code examples in Java, PHP, and Python.</summary><link rel='replies' type='application/atom+xml' href='http://blog.coditate.com/feeds/124326713145840262/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8517212&amp;postID=124326713145840262' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8517212/posts/default/124326713145840262'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8517212/posts/default/124326713145840262'/><link rel='alternate' type='text/html' href='http://blog.coditate.com/2010/02/amazon-simpledb-book-now-available-from.html' title='Amazon SimpleDB Book Now Available from Packt Publishing'/><author><name>Ashley Tate</name><uri>http://www.blogger.com/profile/06347668287413314992</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://2.bp.blogspot.com/_iHxrha4ti8g/SlQLDmVNDgI/AAAAAAAAAGE/T7T1_TL-xRU/S220/profile2.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8517212.post-386964059373550798</id><published>2010-01-21T09:48:00.001-05:00</published><updated>2010-01-21T15:06:59.152-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Marketing'/><category scheme='http://www.blogger.com/atom/ns#' term='GridRoom'/><title type='text'>Anatomy of a Failed PR Stunt</title><summary type='text'>If you're an NFL fan you may already have seen the picture below. This is the story behind the Fire Snyder stadium sign--a self-indulgent PR stunt to promote GridRoom that was reported by dozens of blogs and newspapers but was ultimately a waste of time.     For over a decade the Washington Redskins have been run by a comically dysfunctional owner: Daniel Snyder. This in itself is not remarkable.</summary><link rel='replies' type='application/atom+xml' href='http://blog.coditate.com/feeds/386964059373550798/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8517212&amp;postID=386964059373550798' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8517212/posts/default/386964059373550798'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8517212/posts/default/386964059373550798'/><link rel='alternate' type='text/html' href='http://blog.coditate.com/2010/01/anatomy-of-failed-pr-stunt.html' title='Anatomy of a Failed PR Stunt'/><author><name>Ashley Tate</name><uri>http://www.blogger.com/profile/06347668287413314992</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://2.bp.blogspot.com/_iHxrha4ti8g/SlQLDmVNDgI/AAAAAAAAAGE/T7T1_TL-xRU/S220/profile2.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh6.ggpht.com/_iHxrha4ti8g/S1hpJNIR5rI/AAAAAAAAARY/B14y-NApWQA/s72-c/image35.png?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8517212.post-7643989079912089156</id><published>2010-01-11T15:34:00.001-05:00</published><updated>2010-01-11T19:03:42.438-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='SimpleDB'/><category scheme='http://www.blogger.com/atom/ns#' term='.NET'/><category scheme='http://www.blogger.com/atom/ns#' term='Simple Savant'/><title type='text'>Simple Savant v0.3 Released</title><summary type='text'>I've just released Simple Savant v0.3 at CodePlex. It's been a number of months since the last release so this one includes a number of bug fixes as well as a several significant new features:     Typeless operations - All existing functionality has been exposed through methods not tied to .NET item types.     Asynchronous operations - All existing operations may now be invoked asynchronously.</summary><link rel='replies' type='application/atom+xml' href='http://blog.coditate.com/feeds/7643989079912089156/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8517212&amp;postID=7643989079912089156' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8517212/posts/default/7643989079912089156'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8517212/posts/default/7643989079912089156'/><link rel='alternate' type='text/html' href='http://blog.coditate.com/2010/01/simple-savant-v03-released.html' title='Simple Savant v0.3 Released'/><author><name>Ashley Tate</name><uri>http://www.blogger.com/profile/06347668287413314992</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://2.bp.blogspot.com/_iHxrha4ti8g/SlQLDmVNDgI/AAAAAAAAAGE/T7T1_TL-xRU/S220/profile2.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8517212.post-7416734139062236437</id><published>2009-09-06T23:11:00.000-04:00</published><updated>2009-09-12T01:35:12.450-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='GridRoom'/><title type='text'>Introducing GridRoom</title><summary type='text'>In several previous posts I've alluded to working on a product that uses DirectShow.NET and various Amazon Web services. I've tinkered with bits and pieces of this product for quite a while in my spare time. Well, several months ago I decided to finally take the plunge and turn it into a business. Since then I've worked on it nearly full-time (still doing a bit of consulting for my old employer),</summary><link rel='replies' type='application/atom+xml' href='http://blog.coditate.com/feeds/7416734139062236437/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8517212&amp;postID=7416734139062236437' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8517212/posts/default/7416734139062236437'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8517212/posts/default/7416734139062236437'/><link rel='alternate' type='text/html' href='http://blog.coditate.com/2009/09/introducing-gridroom.html' title='Introducing GridRoom'/><author><name>Ashley Tate</name><uri>http://www.blogger.com/profile/06347668287413314992</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://2.bp.blogspot.com/_iHxrha4ti8g/SlQLDmVNDgI/AAAAAAAAAGE/T7T1_TL-xRU/S220/profile2.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8517212.post-8189256933558816863</id><published>2009-07-29T13:39:00.001-04:00</published><updated>2009-07-29T15:44:31.979-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='WiMAX'/><category scheme='http://www.blogger.com/atom/ns#' term='Atlanta'/><category scheme='http://www.blogger.com/atom/ns#' term='Internet Service'/><title type='text'>3 Things I Hate About My Clear WiMAX Gateway</title><summary type='text'>I recently signed up for Clearwire's WiMAX service. So far the service itself has been great. Performance is good at all times, and we haven't lost our connection once in the past two weeks. This is pretty important since I work from home and also run a couple of low-profile servers over this connection.   Most of my problems with Clear stemmed from the fact that they advertised their Motorola </summary><link rel='replies' type='application/atom+xml' href='http://blog.coditate.com/feeds/8189256933558816863/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8517212&amp;postID=8189256933558816863' title='6 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8517212/posts/default/8189256933558816863'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8517212/posts/default/8189256933558816863'/><link rel='alternate' type='text/html' href='http://blog.coditate.com/2009/07/3-things-i-hate-about-my-clear-wimax.html' title='3 Things I Hate About My Clear WiMAX Gateway'/><author><name>Ashley Tate</name><uri>http://www.blogger.com/profile/06347668287413314992</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://2.bp.blogspot.com/_iHxrha4ti8g/SlQLDmVNDgI/AAAAAAAAAGE/T7T1_TL-xRU/S220/profile2.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh3.ggpht.com/_iHxrha4ti8g/SnCJN4N76ZI/AAAAAAAAAHU/VC-DRUc-va4/s72-c/image%5B4%5D.png?imgmax=800' height='72' width='72'/><thr:total>6</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8517212.post-4641736712058681387</id><published>2009-07-15T00:53:00.003-04:00</published><updated>2009-08-03T13:38:41.251-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='WiMAX'/><category scheme='http://www.blogger.com/atom/ns#' term='Atlanta'/><category scheme='http://www.blogger.com/atom/ns#' term='Internet Service'/><title type='text'>Signing up for Clear WiMAX in Atlanta</title><summary type='text'>During our 9 years in Atlanta we've tried both DSL and cable broadband. We started with AT&amp;T Broadband cable, and that was pretty horrible. We then tried DirectTV and SpeedFactory DSL. These were great companies, but DirectTV stopped providing DSL service, and SpeedFactory was killed off by BellSouth. We returned to cable with Comcast and they've been so-so: intermittent outages, poor customer </summary><link rel='replies' type='application/atom+xml' href='http://blog.coditate.com/feeds/4641736712058681387/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8517212&amp;postID=4641736712058681387' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8517212/posts/default/4641736712058681387'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8517212/posts/default/4641736712058681387'/><link rel='alternate' type='text/html' href='http://blog.coditate.com/2009/07/signing-up-for-clear-wimax-in-atlanta.html' title='Signing up for Clear WiMAX in Atlanta'/><author><name>Ashley Tate</name><uri>http://www.blogger.com/profile/06347668287413314992</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://2.bp.blogspot.com/_iHxrha4ti8g/SlQLDmVNDgI/AAAAAAAAAGE/T7T1_TL-xRU/S220/profile2.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh4.ggpht.com/_iHxrha4ti8g/Sl1gv_QbHzI/AAAAAAAAAHQ/qMPtJLHvvNg/s72-c/clearwire-faq%5B4%5D.png?imgmax=800' height='72' width='72'/><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8517212.post-6125862792875121439</id><published>2009-07-01T11:36:00.002-04:00</published><updated>2009-07-01T17:46:57.354-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Watin'/><category scheme='http://www.blogger.com/atom/ns#' term='ASP.NET'/><category scheme='http://www.blogger.com/atom/ns#' term='Automated Testing'/><category scheme='http://www.blogger.com/atom/ns#' term='AJAX.NET'/><title type='text'>Determining Html Element Visibility with WatiN</title><summary type='text'>I recently started using WatiN to write automated Web application tests for the first time. WatiN is a great and rapidly maturing tool with lots of developer support, and I highly recommend it based on my experiences so far. But after writing several tests of dynamic screen elements I realized the tests weren't verifying everything I thought they were verifying.   When you use WatiN "Find" syntax</summary><link rel='replies' type='application/atom+xml' href='http://blog.coditate.com/feeds/6125862792875121439/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8517212&amp;postID=6125862792875121439' title='5 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8517212/posts/default/6125862792875121439'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8517212/posts/default/6125862792875121439'/><link rel='alternate' type='text/html' href='http://blog.coditate.com/2009/07/determining-html-element-visibility.html' title='Determining Html Element Visibility with WatiN'/><author><name>Ashley Tate</name><uri>http://www.blogger.com/profile/06347668287413314992</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://2.bp.blogspot.com/_iHxrha4ti8g/SlQLDmVNDgI/AAAAAAAAAGE/T7T1_TL-xRU/S220/profile2.jpg'/></author><thr:total>5</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8517212.post-6487323079610675877</id><published>2009-04-27T12:41:00.002-04:00</published><updated>2009-07-01T17:52:14.310-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='.NET'/><category scheme='http://www.blogger.com/atom/ns#' term='IIS'/><category scheme='http://www.blogger.com/atom/ns#' term='WCF'/><title type='text'>Confusing Errors Using WCF Transport Security With Client Certificates</title><summary type='text'>While prototyping a WCF service last week I ran into a number of confusing security-related errors on both the client and server. My setup was as follows:  Windows 2008 Server  IIS 7  .NET 3.5  basicHttpBinding/transport security/client certificates Most of the errors that can result from this setup have been documented elsewhere. This detailed post by Imaya Kumar does a great job of walking </summary><link rel='replies' type='application/atom+xml' href='http://blog.coditate.com/feeds/6487323079610675877/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8517212&amp;postID=6487323079610675877' title='4 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8517212/posts/default/6487323079610675877'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8517212/posts/default/6487323079610675877'/><link rel='alternate' type='text/html' href='http://blog.coditate.com/2009/04/confusing-errors-using-wcf-transport.html' title='Confusing Errors Using WCF Transport Security With Client Certificates'/><author><name>Ashley Tate</name><uri>http://www.blogger.com/profile/06347668287413314992</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://2.bp.blogspot.com/_iHxrha4ti8g/SlQLDmVNDgI/AAAAAAAAAGE/T7T1_TL-xRU/S220/profile2.jpg'/></author><thr:total>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8517212.post-8543120585853903663</id><published>2009-04-16T08:45:00.002-04:00</published><updated>2009-07-01T17:52:37.552-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='SimpleDB'/><category scheme='http://www.blogger.com/atom/ns#' term='Simple Savant'/><title type='text'>New Simple Savant Release</title><summary type='text'>I've just released Simple Savant v0.2 at CodePlex. This version brings the library up to date with the latest Amazon SimpleDB features and also completes the baseline feature set. (See this post for an introduction to Simple Savant.) The new release adds support for:     Partial object operations     Scalar selects including support for Amazon's new select count(*) operator     Amazon's new </summary><link rel='replies' type='application/atom+xml' href='http://blog.coditate.com/feeds/8543120585853903663/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8517212&amp;postID=8543120585853903663' title='15 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8517212/posts/default/8543120585853903663'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8517212/posts/default/8543120585853903663'/><link rel='alternate' type='text/html' href='http://blog.coditate.com/2009/04/new-simple-savant-release.html' title='New Simple Savant Release'/><author><name>Ashley Tate</name><uri>http://www.blogger.com/profile/06347668287413314992</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://2.bp.blogspot.com/_iHxrha4ti8g/SlQLDmVNDgI/AAAAAAAAAGE/T7T1_TL-xRU/S220/profile2.jpg'/></author><thr:total>15</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8517212.post-6670422232756573105</id><published>2009-03-18T01:12:00.002-04:00</published><updated>2010-06-14T13:08:02.808-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='SimpleDB'/><category scheme='http://www.blogger.com/atom/ns#' term='Simple Savant'/><title type='text'>Simple Savant: .NET Object-Persistance Framework for Amazon SimpleDB</title><summary type='text'>I'm building an application that stores all structured data using Amazon's SimpleDB service. When I started creating the overall architecture I searched for recommendations on designing applications specifically for SimpleDB or similar services. I didn't find many tips, but I did find lots of complaints about the disadvantages of SimpleDB when compared to mature RDBS products. I also discovered </summary><link rel='replies' type='application/atom+xml' href='http://blog.coditate.com/feeds/6670422232756573105/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8517212&amp;postID=6670422232756573105' title='11 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8517212/posts/default/6670422232756573105'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8517212/posts/default/6670422232756573105'/><link rel='alternate' type='text/html' href='http://blog.coditate.com/2009/03/simple-savant-c-interface-to-amazon.html' title='Simple Savant: .NET Object-Persistance Framework for Amazon SimpleDB'/><author><name>Ashley Tate</name><uri>http://www.blogger.com/profile/06347668287413314992</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://2.bp.blogspot.com/_iHxrha4ti8g/SlQLDmVNDgI/AAAAAAAAAGE/T7T1_TL-xRU/S220/profile2.jpg'/></author><thr:total>11</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8517212.post-6273816296053691896</id><published>2008-12-01T21:50:00.002-05:00</published><updated>2009-07-01T17:55:53.595-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='.NET'/><title type='text'>Version of System.Web.HttpUtility for .NET Client Profile</title><summary type='text'>The .NET Framework Client Profile released with .NET 3.5 SP1 defines a stripped-down version of the .NET Framework for distribution with rich-client applications. This is a valuable feature for developers who need to keep their software distributions small and convenient to install. (For more information, see my previous post comparing bootstrap install times for various .NET framework versions.)</summary><link rel='replies' type='application/atom+xml' href='http://blog.coditate.com/feeds/6273816296053691896/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8517212&amp;postID=6273816296053691896' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8517212/posts/default/6273816296053691896'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8517212/posts/default/6273816296053691896'/><link rel='alternate' type='text/html' href='http://blog.coditate.com/2008/12/version-of-systemwebhttputility-for-net.html' title='Version of System.Web.HttpUtility for .NET Client Profile'/><author><name>Ashley Tate</name><uri>http://www.blogger.com/profile/06347668287413314992</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://2.bp.blogspot.com/_iHxrha4ti8g/SlQLDmVNDgI/AAAAAAAAAGE/T7T1_TL-xRU/S220/profile2.jpg'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8517212.post-4512866494653489191</id><published>2008-11-29T21:48:00.001-05:00</published><updated>2009-07-01T17:56:18.329-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='.NET'/><title type='text'>Impact of the .NET Framework on Software Installations</title><summary type='text'>The size of the .NET Framework redistributable exploded with versions 3.0 and and 3.5. This creates some difficult choices for vendors of rich-client applications, as a lengthy or unwieldy installation experience can easily discourage non-technical users from using your product. The Paint.NET folks have recently put a huge amount of effort into streamlining their installation process for this </summary><link rel='replies' type='application/atom+xml' href='http://blog.coditate.com/feeds/4512866494653489191/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8517212&amp;postID=4512866494653489191' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8517212/posts/default/4512866494653489191'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8517212/posts/default/4512866494653489191'/><link rel='alternate' type='text/html' href='http://blog.coditate.com/2008/12/impact-of-net-framework-on-software.html' title='Impact of the .NET Framework on Software Installations'/><author><name>Ashley Tate</name><uri>http://www.blogger.com/profile/06347668287413314992</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://2.bp.blogspot.com/_iHxrha4ti8g/SlQLDmVNDgI/AAAAAAAAAGE/T7T1_TL-xRU/S220/profile2.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8517212.post-4476208026708804172</id><published>2008-08-26T00:25:00.002-04:00</published><updated>2009-07-01T17:56:32.588-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Sql Server'/><title type='text'>Converting a Partitioned Table to a Nonpartitioned Table In Sql Server 2005</title><summary type='text'>Several months ago while working with Sql Server 2005 partitioned tables for the first time, I discovered an interesting bug/hidden feature that doesn't seem to be documented anywhere: Adding a clustered primary key constraint can quietly revert a partitioned table to a nonpartitioned one. At the time I found this behavior quite annoying, but it actually came in handy today when I needed to </summary><link rel='replies' type='application/atom+xml' href='http://blog.coditate.com/feeds/4476208026708804172/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8517212&amp;postID=4476208026708804172' title='4 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8517212/posts/default/4476208026708804172'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8517212/posts/default/4476208026708804172'/><link rel='alternate' type='text/html' href='http://blog.coditate.com/2008/08/converting-partitioned-table-to.html' title='Converting a Partitioned Table to a Nonpartitioned Table In Sql Server 2005'/><author><name>Ashley Tate</name><uri>http://www.blogger.com/profile/06347668287413314992</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://2.bp.blogspot.com/_iHxrha4ti8g/SlQLDmVNDgI/AAAAAAAAAGE/T7T1_TL-xRU/S220/profile2.jpg'/></author><thr:total>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8517212.post-8686619964732109904</id><published>2008-05-31T19:03:00.002-04:00</published><updated>2009-07-01T17:56:56.914-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Video'/><category scheme='http://www.blogger.com/atom/ns#' term='DirectShow.NET'/><title type='text'>Video Scene Detection with DirectShow.NET</title><summary type='text'>For some time I've been working on a video-related personal project. I'm using the fantastic DirectShow .NET library, which provides a nice C# interface to Microsoft's DirectShow C++ API. At one point some folks on the DS .NET forums asked about the scene detection algorithm I referenced in one of my forum posts. I promised to follow up with some sample code and explanations and--finally--here </summary><link rel='replies' type='application/atom+xml' href='http://blog.coditate.com/feeds/8686619964732109904/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8517212&amp;postID=8686619964732109904' title='27 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8517212/posts/default/8686619964732109904'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8517212/posts/default/8686619964732109904'/><link rel='alternate' type='text/html' href='http://blog.coditate.com/2008/05/video-scene-detection-with.html' title='Video Scene Detection with DirectShow.NET'/><author><name>Ashley Tate</name><uri>http://www.blogger.com/profile/06347668287413314992</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://2.bp.blogspot.com/_iHxrha4ti8g/SlQLDmVNDgI/AAAAAAAAAGE/T7T1_TL-xRU/S220/profile2.jpg'/></author><thr:total>27</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8517212.post-8365427610372718760</id><published>2008-02-07T21:19:00.002-05:00</published><updated>2009-07-01T17:57:07.647-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Automated Testing'/><title type='text'>Unit testing too difficult? Change your design</title><summary type='text'>Lessons and processes from building construction, physical goods manufacturing, and other engineering disciplines are often misapplied to software creation. Nevertheless, these disciplines occasionally provide very useful analogies. One of these is the idea that a given design must accommodate more than just functional and aesthetic needs.  For example, designers of physical goods must consider </summary><link rel='replies' type='application/atom+xml' href='http://blog.coditate.com/feeds/8365427610372718760/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8517212&amp;postID=8365427610372718760' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8517212/posts/default/8365427610372718760'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8517212/posts/default/8365427610372718760'/><link rel='alternate' type='text/html' href='http://blog.coditate.com/2008/02/unit-testing-too-difficult-change-your.html' title='Unit testing too difficult? Change your design'/><author><name>Ashley Tate</name><uri>http://www.blogger.com/profile/06347668287413314992</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://2.bp.blogspot.com/_iHxrha4ti8g/SlQLDmVNDgI/AAAAAAAAAGE/T7T1_TL-xRU/S220/profile2.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8517212.post-8953448636327647191</id><published>2007-09-05T00:03:00.002-04:00</published><updated>2009-07-01T17:57:24.875-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='.NET'/><category scheme='http://www.blogger.com/atom/ns#' term='HL7'/><title type='text'>Open-source .NET HL7 Parser</title><summary type='text'>I recently spent some time searching for a good open-source .NET HL7 parser. The pickings were pretty slim, and the best option appears to be NHapi--which is a fairly new port of the popular Hapi Java HL7 parser. I had to dig surprising deep into the search results to find NHapi, and though the code seems solid, the project is not extremely active. Another big weakness is the complete lack of API</summary><link rel='replies' type='application/atom+xml' href='http://blog.coditate.com/feeds/8953448636327647191/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8517212&amp;postID=8953448636327647191' title='34 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8517212/posts/default/8953448636327647191'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8517212/posts/default/8953448636327647191'/><link rel='alternate' type='text/html' href='http://blog.coditate.com/2007/09/open-source-net-hl7-parser.html' title='Open-source .NET HL7 Parser'/><author><name>Ashley Tate</name><uri>http://www.blogger.com/profile/06347668287413314992</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://2.bp.blogspot.com/_iHxrha4ti8g/SlQLDmVNDgI/AAAAAAAAAGE/T7T1_TL-xRU/S220/profile2.jpg'/></author><thr:total>34</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8517212.post-113142464852885891</id><published>2005-11-07T23:35:00.001-05:00</published><updated>2009-07-01T17:57:38.728-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='PMD'/><title type='text'>Buy this book!</title><summary type='text'>I haven't written much here lately, but I wanted to mention that my friend Tom Copeland, founder of the PMD project, has just published his first book! It's called PMD Applied and you can buy a copy here. What most impresses me about Tom is that he could write this book with five small children in the house! I can barely find enough quiet time to blog with just four!If you care about code quality</summary><link rel='replies' type='application/atom+xml' href='http://blog.coditate.com/feeds/113142464852885891/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8517212&amp;postID=113142464852885891' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8517212/posts/default/113142464852885891'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8517212/posts/default/113142464852885891'/><link rel='alternate' type='text/html' href='http://blog.coditate.com/2005/11/buy-this-book.html' title='Buy this book!'/><author><name>Ashley Tate</name><uri>http://www.blogger.com/profile/06347668287413314992</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://2.bp.blogspot.com/_iHxrha4ti8g/SlQLDmVNDgI/AAAAAAAAAGE/T7T1_TL-xRU/S220/profile2.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8517212.post-112490406647303500</id><published>2005-08-24T13:14:00.001-04:00</published><updated>2009-07-01T17:59:25.429-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Misc'/><title type='text'>Ant Humor</title><summary type='text'>Was just reading the NAnt docs and ran across something funny: "The name NAnt comes from the fact that this tool is Not Ant." Since the Ant FAQ says that Ant is an acronym for "Another Neat Tool", NAnt is really an acronym for "Not Another Neat Tool". I wonder if they did that on purpose?</summary><link rel='replies' type='application/atom+xml' href='http://blog.coditate.com/feeds/112490406647303500/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8517212&amp;postID=112490406647303500' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8517212/posts/default/112490406647303500'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8517212/posts/default/112490406647303500'/><link rel='alternate' type='text/html' href='http://blog.coditate.com/2005/08/ant-humor.html' title='Ant Humor'/><author><name>Ashley Tate</name><uri>http://www.blogger.com/profile/06347668287413314992</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://2.bp.blogspot.com/_iHxrha4ti8g/SlQLDmVNDgI/AAAAAAAAAGE/T7T1_TL-xRU/S220/profile2.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8517212.post-112425223592267098</id><published>2005-08-17T00:15:00.002-04:00</published><updated>2009-07-01T17:58:19.650-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='OpenNET CF'/><category scheme='http://www.blogger.com/atom/ns#' term='.NET Compact Framework'/><title type='text'>Running OpenNETCF 1.3 On NET PC</title><summary type='text'>Since I'm porting a complex application framework from NET PC to NET CF I sometimes find it useful when debugging to run our NET CF code on the NET PC framework. This also comes in handy if, for instance, you want to run unit tests against your NET CF code on the desktop, since on-device automated testing is nearly impossible at this point. (There are sometimes major differences between the two </summary><link rel='replies' type='application/atom+xml' href='http://blog.coditate.com/feeds/112425223592267098/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8517212&amp;postID=112425223592267098' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8517212/posts/default/112425223592267098'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8517212/posts/default/112425223592267098'/><link rel='alternate' type='text/html' href='http://blog.coditate.com/2005/08/running-opennetcf-13-on-net-pc_16.html' title='Running OpenNETCF 1.3 On NET PC'/><author><name>Ashley Tate</name><uri>http://www.blogger.com/profile/06347668287413314992</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://2.bp.blogspot.com/_iHxrha4ti8g/SlQLDmVNDgI/AAAAAAAAAGE/T7T1_TL-xRU/S220/profile2.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8517212.post-112395076450388835</id><published>2005-08-13T12:31:00.001-04:00</published><updated>2009-07-01T17:58:44.058-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='OpenNET CF'/><category scheme='http://www.blogger.com/atom/ns#' term='.NET Compact Framework'/><title type='text'>OpenNETCF 1.3 Reinstall Bug</title><summary type='text'>OpenNETCF 1.3 has an annoying bug that causes it to be reinstalled by Visual Studio every time you run/debug an application. Here's a workaround to stop this from happening (OpenNETCF 1.4 also supposedly fixes the bug):Open this file: 'C:\Documents and Settings\[user profile]\Application Data\Microsoft\visualstudio\devices\7.1\conman_ds_package.xsl'. Make sure you open the right one as there may </summary><link rel='replies' type='application/atom+xml' href='http://blog.coditate.com/feeds/112395076450388835/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8517212&amp;postID=112395076450388835' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8517212/posts/default/112395076450388835'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8517212/posts/default/112395076450388835'/><link rel='alternate' type='text/html' href='http://blog.coditate.com/2005/08/opennetcf-13-reinstall-bug.html' title='OpenNETCF 1.3 Reinstall Bug'/><author><name>Ashley Tate</name><uri>http://www.blogger.com/profile/06347668287413314992</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://2.bp.blogspot.com/_iHxrha4ti8g/SlQLDmVNDgI/AAAAAAAAAGE/T7T1_TL-xRU/S220/profile2.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8517212.post-112261085650467569</id><published>2005-07-29T00:19:00.001-04:00</published><updated>2009-07-01T17:59:03.715-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='.NET Compact Framework'/><title type='text'>PropertyInfo.GetHashCode() Generates an InvalidCastException on NET CF</title><summary type='text'>One of the first tough bugs I ran across when we started our NET PC to NET CF port turned out to be a bug in the NET CF class libraries themselves! Plopping a big pile of code down on another version of an API and trying to get it to run (vs rewriting for another language) can be maddening because you're totally unfamiliar with the codebase. It simply works here but not over there, so you just </summary><link rel='replies' type='application/atom+xml' href='http://blog.coditate.com/feeds/112261085650467569/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8517212&amp;postID=112261085650467569' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8517212/posts/default/112261085650467569'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8517212/posts/default/112261085650467569'/><link rel='alternate' type='text/html' href='http://blog.coditate.com/2005/07/propertyinfogethashcode-generates.html' title='PropertyInfo.GetHashCode() Generates an InvalidCastException on NET CF'/><author><name>Ashley Tate</name><uri>http://www.blogger.com/profile/06347668287413314992</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://2.bp.blogspot.com/_iHxrha4ti8g/SlQLDmVNDgI/AAAAAAAAAGE/T7T1_TL-xRU/S220/profile2.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8517212.post-112191025025677010</id><published>2005-07-20T21:42:00.001-04:00</published><updated>2009-07-01T17:59:14.210-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='.NET'/><category scheme='http://www.blogger.com/atom/ns#' term='.NET Compact Framework'/><title type='text'>Porting from NET PC to NET CF</title><summary type='text'>I'm porting a large rich client application framework (175,000+ lines of actual code) from the full .NET framework to the .NET Compact Framework (since I'm constantly having to differentiate between the two platforms I've started referring to them as NET PC and NET CF, respectively).Here's the situation: The NET PC version of the framework was written by a large development team with no </summary><link rel='replies' type='application/atom+xml' href='http://blog.coditate.com/feeds/112191025025677010/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8517212&amp;postID=112191025025677010' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8517212/posts/default/112191025025677010'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8517212/posts/default/112191025025677010'/><link rel='alternate' type='text/html' href='http://blog.coditate.com/2005/07/porting-from-net-pc-to-net-cf.html' title='Porting from NET PC to NET CF'/><author><name>Ashley Tate</name><uri>http://www.blogger.com/profile/06347668287413314992</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://2.bp.blogspot.com/_iHxrha4ti8g/SlQLDmVNDgI/AAAAAAAAAGE/T7T1_TL-xRU/S220/profile2.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8517212.post-111862532408193909</id><published>2005-06-12T21:14:00.001-04:00</published><updated>2009-07-01T17:59:33.183-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Misc'/><title type='text'>Welcome to Coditate</title><summary type='text'>Welcome to my new Coditate blog!</summary><link rel='replies' type='application/atom+xml' href='http://blog.coditate.com/feeds/111862532408193909/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8517212&amp;postID=111862532408193909' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8517212/posts/default/111862532408193909'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8517212/posts/default/111862532408193909'/><link rel='alternate' type='text/html' href='http://blog.coditate.com/2005/06/welcome-to-coditate.html' title='Welcome to Coditate'/><author><name>Ashley Tate</name><uri>http://www.blogger.com/profile/06347668287413314992</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://2.bp.blogspot.com/_iHxrha4ti8g/SlQLDmVNDgI/AAAAAAAAAGE/T7T1_TL-xRU/S220/profile2.jpg'/></author><thr:total>0</thr:total></entry></feed>
