<?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:blogger='http://schemas.google.com/blogger/2008' 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-5176856</id><updated>2025-08-19T15:54:46.860+02:00</updated><category term="fun"/><category term="banana"/><category term="Google"/><category term="TopContent"/><category term="Microsoft"/><category term="Microsoft Silverlight"/><category term="cleansed"/><category term="web"/><category term="Microsoft Visual Studio"/><category term="ASP.NET"/><category term="Firefox"/><category term="Programming"/><category term="Team Foundation Server"/><category term="smile"/><category term="victory"/><category term="Document Object Model"/><category term="Google Maps"/><category term="hockey"/><category term="semantic web design"/><category term="web 2.0"/><category term=".NET Framework"/><category term="Apple"/><category term="Clean Semantics"/><category term="Google Chrome"/><category term="JQuery"/><category term="JavaScript"/><category term="Web page"/><category term="Web service"/><category term="design"/><category term="google docs"/><category term="idiot"/><category term="run"/><category term=".NET"/><category term="AJAX"/><category term="Adobe Systems"/><category term="CapGemini"/><category term="FUD"/><category term="HTML5"/><category term="Microsoft SQL Server"/><category term="Nike"/><category term="Project management"/><category term="Safari"/><category term="Scott Guthrie"/><category term="Telerik"/><category term="US terrorist"/><category term="Web Application"/><category term="Web design"/><category term="World Wide Web"/><category term="ambition"/><category term="busy"/><category term="certification"/><category term="certified"/><category term="class"/><category term="confused"/><category term="crisis"/><category term="developer"/><category term="disclaimer"/><category term="div soup"/><category term="hoodtocoast"/><category term="iPhone"/><category term="internet"/><category term="jeffrey zeldman"/><category term="mashup"/><category term="molly"/><category term="philosophy"/><category term="quiet"/><category term="resolution"/><category term="survey"/><category term="traffic"/><category term="truth"/><category term="web design survey 2007"/><category term="web standards"/><category term="windows"/><category term="xhtml"/><category term=".NET assembly"/><category term="ASP.NET MVC Framework"/><category term="Adobe"/><category term="Adobe Flash"/><category term="Advertising network"/><category term="Amazon S3"/><category term="Android"/><category term="Apple pie"/><category term="Athletic shoe"/><category term="Barefoot running"/><category term="Best practice"/><category term="Blog"/><category term="Bloomington  Indiana"/><category term="Brain"/><category term="Bretagne"/><category term="CIA"/><category term="Cache"/><category term="Carribean"/><category term="ContractFilter mismatch EndpointDispatcher"/><category term="Crime and Justice"/><category term="Debugging"/><category term="Extensible Application Markup Language"/><category term="Face"/><category term="FeedBurner"/><category term="Flash"/><category term="Flickr"/><category term="Forehead"/><category term="Fruit"/><category term="Fruit and Vegetable"/><category term="Getronics"/><category term="Google AdSense"/><category term="Google Analytics"/><category term="Google Earth"/><category term="Google I/O"/><category term="Google I/O conference"/><category term="Google Operating System"/><category term="Google Sitemap"/><category term="Google Storage"/><category term="Google Streetview"/><category term="Google TV"/><category term="Google search"/><category term="GriDBuilder"/><category term="HTML"/><category term="HTML5 Silverlight"/><category term="Half Marathon"/><category term="IE8"/><category term="IPad"/><category term="Indiana"/><category term="Integrated development environment"/><category term="Kaatsheuvel"/><category term="List Apart"/><category term="MVC3"/><category term="Mario Kart"/><category term="Michael Phelps"/><category term="Microsoft Developer Network"/><category term="Microsoft SharePoint"/><category term="Microsoft Visual SourceSafe"/><category term="Model–view–controller"/><category term="Mozilla Firefox"/><category term="Multimedia"/><category term="NET"/><category term="Netherlands"/><category term="Nike Free"/><category term="Online Communities"/><category term="Panoramio"/><category term="Paris Hilton"/><category term="Picasa"/><category term="Pippi Longstocking"/><category term="Post"/><category term="Project manager"/><category term="Punishment"/><category term="QR Code"/><category term="RSS"/><category term="Screen Resolution"/><category term="ScribeFire"/><category term="Search engine optimization"/><category term="Second Life"/><category term="Seth Godin"/><category term="Silicon Valley"/><category term="Silverlight"/><category term="Social Networking"/><category term="Source code"/><category term="South Africa"/><category term="Sports"/><category term="Sports and Hobbies"/><category term="Standard"/><category term="Sweden"/><category term="Television"/><category term="Tools"/><category term="Twitter"/><category term="Typekit"/><category term="United States"/><category term="User interface"/><category term="VS2005 VS2008 TFS2010 Forward compatiblity update"/><category term="Vibram Five Fingers"/><category term="Villain"/><category term="Vista"/><category term="WCF"/><category term="Wall Street Journal"/><category term="Web Fonts"/><category term="Web crawler"/><category term="Web feed"/><category term="Web search engine"/><category term="WebKit"/><category term="Weblogs"/><category term="Work"/><category term="Wrinkle"/><category term="X-UA-Compatible meta tag"/><category term="Yahoo Pipes"/><category term="america"/><category term="battle"/><category term="blogging"/><category term="browser bug"/><category term="bubble"/><category term="bush"/><category term="cleans"/><category term="client"/><category term="coach"/><category term="coding practices"/><category term="consultants"/><category term="content"/><category term="crackers"/><category term="crop"/><category term="css"/><category term="digg"/><category term="discussion"/><category term="eric meyer"/><category term="extension"/><category term="female"/><category term="fly"/><category term="fuss"/><category term="garden"/><category term="gmail"/><category term="google streetview holes europe world"/><category term="h2c"/><category term="hackers"/><category term="hobby"/><category term="horror"/><category term="images"/><category term="jht"/><category term="jobs"/><category term="knowledge"/><category term="lift"/><category term="linkedin"/><category term="longstocking"/><category term="look"/><category term="male"/><category term="markup"/><category term="meetings cleansed"/><category term="microformats"/><category term="milestone"/><category term="motivation"/><category term="move"/><category term="multiple events"/><category term="online"/><category term="oregon"/><category term="parking"/><category term="peace"/><category term="pippi"/><category term="pirates"/><category term="progressive enhancement"/><category term="projects"/><category term="respect"/><category term="rich"/><category term="sIFR"/><category term="satelite Internet"/><category term="scope creep"/><category term="security"/><category term="semantic"/><category term="seo"/><category term="separation"/><category term="service"/><category term="silence"/><category term="social"/><category term="split brain"/><category term="spock"/><category term="stay hungry"/><category term="tag soup"/><category term="test"/><category term="time"/><category term="trainer"/><category term="usage"/><category term="video"/><category term="web design survey 2008"/><category term="website optimization"/><category term="world"/><category term="zen"/><title type='text'>Roho&#39;s Diary</title><subtitle type='html'>What&#39;s happening to my (former) colleagues and &lt;em&gt;bananas&lt;/em&gt;? Or maybe it&#39;s just another useless opinion. Who cares, anyway.</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://roho2003.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5176856/posts/default?alt=atom&amp;redirect=false'/><link rel='alternate' type='text/html' href='http://roho2003.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><link rel='next' type='application/atom+xml' href='http://www.blogger.com/feeds/5176856/posts/default?alt=atom&amp;start-index=26&amp;max-results=25&amp;redirect=false'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/03880668956776986361</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>299</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-5176856.post-4000520962890625728</id><published>2014-02-18T12:48:00.000+01:00</published><updated>2014-02-18T12:48:01.717+01:00</updated><title type='text'>Email discussions</title><content type='html'>&lt;h4&gt;
..&amp;nbsp;they just don’t work&lt;/h4&gt;
We have all been there. Probably multiple times as well. The endless sinkhole of discussions running on email.
Someone send you an email or replies to an email you send or you are just one of the innocent bystanders that are in the CC-list. That email then triggers yet another reply from someone, for some trivial reason maybe. But then the avalanche starts. Avalanches usually start with just one small ball of snow. The effects of an avalanche can be disastrous and so are the effects of an email avalanche&lt;br /&gt;
&lt;h5&gt;
Do not play with dynamite in the mountains&lt;/h5&gt;
It is really easy to react to some incorrect or plain stupid email. Or something that just annoys the heck out of you. A manager happily announcing to a customer that we will be shipping next week and joyfully CC-ed you along in the mail.&lt;br /&gt;
Enough to make your head explode and maybe even go ALL CAPS on him.
&lt;br /&gt;
It’s so easy to fall into the trap. It is so easy to try and start a discussion via email by simply pressing reply and start typing. Often without really letting your brains kick in. With a healthy strong cup loaded with cafeine you can really get the words and long sentences flowing. After banging prose for several minutes you sit back and admire your work and know for 100% sure that this will solve all misunderstandings and will re-eductaed all those on the list of addressees.&lt;br /&gt;
But in reality you hold a match very close to the fuse of a stick of dynamite.&lt;br /&gt;
When you hit send you light the fuse.
&lt;br /&gt;
&lt;h5&gt;
Boom!&lt;/h5&gt;
You return to work and after some time you check your inbox and disaster has struck. An avalanche of replies to your solve-it-all reply. People have written long epistels back explaining things again and how everything was agreed upon and what was not agreed upon and that they weren’t there when it was agreed and that the situation has changed and soon some will GO ALL CAPS ON EVERYONE INCLUDING YOU. YES YOU!&lt;br /&gt;
You see that more and more people have gotten involved and that more people are receiving the mail and oh yes just like an avalanche it has gone rapidly downhill.&lt;br /&gt;
Maybe someone is accusing you or anyone else already of being a Nazi.&lt;br /&gt;
&lt;h5&gt;
Stop right there&lt;/h5&gt;
Yes, it is already too late. So stop replying. It is simply impossible to get switch on sanity again in this situation. Stop it.&lt;br /&gt;
The only solution right now is get face to face with the people really involved in the matter. Which you should have done right from the beginning.&lt;br /&gt;
Single out the most relevant people in the matter and send a meeting request. Get face to face or if itis just one or two people get on the phone or Skype or Hangouts or whatever you prefer. Quit the email avalanche which is making things worse with each reply.&lt;br /&gt;
&lt;h5&gt;
Better stil..&lt;/h5&gt;
Better is to prevent the entire escalation. Whenever you find yourself writing a big email reply and you feel your heart beating stronger than normal and you drink your coffee faster than normal, please do not hit that send button.&lt;br /&gt;
Cut and paste the text you have written in a document and turn the email in a simple meeting request. You can use the document as your notes for the meeting.&lt;br /&gt;
The words “&lt;b&gt;Let’s meet and discuss&lt;/b&gt;” are so much more powerful than any piece of well written prose no matter how long.&lt;br /&gt;
&lt;div&gt;
&lt;/div&gt;
&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;hr /&gt;
&lt;a href=&quot;http://blog.mahimba.com&quot;&gt;&lt;img border=&quot;0&quot;
src=&quot;http://bp3.blogger.com/_Asp8txadpj8/RpX20ZGPK0I/AAAAAAAAAgk/0qdVP5IrH_Y/s320/banaan.gif&quot;
alt=&quot;Mahimba Blog&quot; /&gt;&lt;/a&gt;
&lt;hr /&gt;
&lt;a href=&quot;mailto:rob.hofker@gmail.com&quot;&gt;Go ahead and spam me!&lt;/a&gt;
 or visit me at 
&lt;a href=&quot;http://www.roho-products.nl&quot;&gt;Roho Products - Web design - Steenwijk&lt;/a&gt;
&lt;!-- Oy you! Why are you looking at the source code of this feed? Not much to see here. Bye now! --&gt;
&lt;hr /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://roho2003.blogspot.com/feeds/4000520962890625728/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://roho2003.blogspot.com/2014/02/email-discussions.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5176856/posts/default/4000520962890625728'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5176856/posts/default/4000520962890625728'/><link rel='alternate' type='text/html' href='http://roho2003.blogspot.com/2014/02/email-discussions.html' title='Email discussions'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/03880668956776986361</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5176856.post-1424967769337164398</id><published>2014-01-30T11:57:00.000+01:00</published><updated>2014-01-30T11:58:14.907+01:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="blogging"/><category scheme="http://www.blogger.com/atom/ns#" term="lift"/><category scheme="http://www.blogger.com/atom/ns#" term="motivation"/><title type='text'>Trying to get back into blogging</title><content type='html'>&lt;h4&gt;
.. and it&#39;s a struggle&lt;/h4&gt;
I have been planning and &amp;nbsp;planning to write more on this blog. I have been trying to at least write a single piece again on this blog. It has been way, way too long since the last post. It&#39;s been some eight months now. Bummer, that&#39;s bad.&lt;br /&gt;
Looking back over the years I can see that my blog has been drying out. Nothing comes out of the well anymore. That is not good.&lt;br /&gt;
&lt;h5&gt;
Let&#39;s take action&lt;/h5&gt;
Blogging has been on my list, always. It still is. Simple as that. But so have many other activities. Including work. And hobbies. It has been difficult to find the right balance to do everything I want to do. I have scraped some subjects in Google Docs but have never gotten around to work these out into proper blog posts. There is more needed for that than just a few more lines of text.&lt;br /&gt;
But anyway I need to take some action. I need to look for and find the time to pick things up again.&lt;br /&gt;
And I have found a tool: Lift. It’s a tool for achieving goals and literally lifting you up again. There is also an app in the Play Store and on iTunes.&lt;br /&gt;
&lt;h5&gt;
Daily motivation&lt;/h5&gt;
Pick a plan in Lift and you get a plan divided up into simple steps that you can take daily and slowly and surely achieve your goal. Having done a task simple check it and optionally add a comment. Other Lift users can give you props for the achievement and can also start a discussion to help you or others achieve their goals.&lt;br /&gt;
This is truly a form of daily motivation.&lt;br /&gt;
&lt;h5&gt;
One of my goals is writing&lt;/h5&gt;
I picked one of the goals to get me back into writing more regularly and so far it has helped me a lot. This blogpost is one of the products to prove it.&lt;br /&gt;
There are other plans that I have chosen and that help me to get more grip on my goals in life. I find it a great tool to help me help myself with some help from unknown friends.&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;hr /&gt;
&lt;a href=&quot;http://blog.mahimba.com&quot;&gt;&lt;img border=&quot;0&quot;
src=&quot;http://bp3.blogger.com/_Asp8txadpj8/RpX20ZGPK0I/AAAAAAAAAgk/0qdVP5IrH_Y/s320/banaan.gif&quot;
alt=&quot;Mahimba Blog&quot; /&gt;&lt;/a&gt;
&lt;hr /&gt;
&lt;a href=&quot;mailto:rob.hofker@gmail.com&quot;&gt;Go ahead and spam me!&lt;/a&gt;
 or visit me at 
&lt;a href=&quot;http://www.roho-products.nl&quot;&gt;Roho Products - Web design - Steenwijk&lt;/a&gt;
&lt;!-- Oy you! Why are you looking at the source code of this feed? Not much to see here. Bye now! --&gt;
&lt;hr /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://roho2003.blogspot.com/feeds/1424967769337164398/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://roho2003.blogspot.com/2014/01/trying-to-get-back-into-blogging.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5176856/posts/default/1424967769337164398'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5176856/posts/default/1424967769337164398'/><link rel='alternate' type='text/html' href='http://roho2003.blogspot.com/2014/01/trying-to-get-back-into-blogging.html' title='Trying to get back into blogging'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/03880668956776986361</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5176856.post-464258283084119826</id><published>2013-05-10T11:20:00.002+02:00</published><updated>2013-05-10T11:29:15.488+02:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="AJAX"/><category scheme="http://www.blogger.com/atom/ns#" term="Document Object Model"/><category scheme="http://www.blogger.com/atom/ns#" term="JavaScript"/><category scheme="http://www.blogger.com/atom/ns#" term="Telerik"/><category scheme="http://www.blogger.com/atom/ns#" term="Web Application"/><title type='text'>The benefits and horrors of third party controls</title><content type='html'>&lt;h4&gt;
.. or how I learned to love the bomb&lt;/h4&gt;
&lt;table align=&quot;center&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot; class=&quot;tr-caption-container zemanta-img&quot; style=&quot;float: right; text-align: right;&quot;&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td style=&quot;text-align: right;&quot;&gt;&lt;div class=&quot;zemanta-img&quot;&gt;
&lt;div class=&quot;zemanta-img&quot;&gt;
&lt;a href=&quot;http://www.flickr.com/photos/36169570@N08/8419902285&quot; imageanchor=&quot;1&quot; style=&quot;margin-bottom: 1em; margin-left: auto; margin-right: auto; text-align: clear:right;&quot;&gt;&lt;img alt=&quot;Don&#39;t reinvent the wheel&quot; border=&quot;0&quot; class=&quot;zemanta-img-inserted&quot; height=&quot;240&quot; src=&quot;http://farm9.static.flickr.com/8476/8419902285_86f3a31d5b_m.jpg&quot; style=&quot;border: none; font-size: 0.8em;&quot; width=&quot;160&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;tr-caption zemanta-img-attribution&quot; style=&quot;text-align: center; width: 160px;&quot;&gt;Don&#39;t reinvent the wheel (Photo credit: &lt;a href=&quot;http://www.flickr.com/photos/36169570@N08/8419902285&quot; target=&quot;_blank&quot;&gt;Wiertz Sébastien&lt;/a&gt;)&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
When developing &lt;a class=&quot;zem_slink&quot; href=&quot;http://en.wikipedia.org/wiki/Web_application&quot; rel=&quot;wikipedia&quot; target=&quot;_blank&quot; title=&quot;Web application&quot;&gt;web applications&lt;/a&gt; that should handle all sorts of data and potentially lots of it you might end up in building all kinds of controls for displaying and editing that data. Before you know it you are creating clever pieces of html and even cleverer pieces of backend code to produce that html and an added thick layer of &lt;a class=&quot;zem_slink&quot; href=&quot;http://en.wikipedia.org/wiki/JavaScript&quot; rel=&quot;wikipedia&quot; target=&quot;_blank&quot; title=&quot;JavaScript&quot;&gt;Javascript&lt;/a&gt; sauce to make all this work together.&lt;br /&gt;
And that brings you into inventing another even cleverer mouse trap or &lt;a class=&quot;zem_slink&quot; href=&quot;http://en.wikipedia.org/wiki/Reinventing_the_wheel&quot; rel=&quot;wikipedia&quot; target=&quot;_blank&quot; title=&quot;Reinventing the wheel&quot;&gt;re-inventing the wheel&lt;/a&gt;. And that mouse trap or wheel has to be &lt;a class=&quot;zem_slink&quot; href=&quot;http://en.wikipedia.org/wiki/Cross-browser&quot; rel=&quot;wikipedia&quot; target=&quot;_blank&quot; title=&quot;Cross-browser&quot;&gt;cross browser&lt;/a&gt; and multi-functional, databound &lt;a class=&quot;zem_slink&quot; href=&quot;http://en.wikipedia.org/wiki/Et_cetera&quot; rel=&quot;wikipedia&quot; target=&quot;_blank&quot; title=&quot;Et cetera&quot;&gt;et cetera&lt;/a&gt; et cetera et cetera.&lt;br /&gt;
Me, I don&#39;t like re-inventing wheels, that has been done so many times already.&lt;br /&gt;
&lt;h5&gt;
So, clear the stage for third party controls&lt;/h5&gt;
&lt;table cellpadding=&quot;0&quot; cellspacing=&quot;0&quot; class=&quot;tr-caption-container zemanta-img&quot; style=&quot;float: left; text-align: right;&quot;&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td style=&quot;text-align: center;&quot;&gt;&lt;div class=&quot;zemanta-img&quot;&gt;
&lt;div class=&quot;zemanta-img&quot;&gt;
&lt;a href=&quot;http://www.flickr.com/photos/56665575@N02/5370364795&quot; imageanchor=&quot;1&quot; style=&quot;margin-bottom: 1em; margin-left: auto; margin-right: auto; text-align: clear:right;&quot;&gt;&lt;img alt=&quot;Telerik&quot; border=&quot;0&quot; class=&quot;zemanta-img-inserted&quot; height=&quot;160&quot; src=&quot;http://farm6.static.flickr.com/5047/5370364795_d7769eb08b_m.jpg&quot; style=&quot;border: none; font-size: 0.8em;&quot; width=&quot;240&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;tr-caption zemanta-img-attribution&quot; style=&quot;text-align: center; width: 240px;&quot;&gt;Telerik (Photo credit: &lt;a href=&quot;http://www.flickr.com/photos/56665575@N02/5370364795&quot; target=&quot;_blank&quot;&gt;martin.linkov&lt;/a&gt;)&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
One these re-inventors of wheels is &lt;a class=&quot;zem_slink&quot; href=&quot;http://www.telerik.com/&quot; rel=&quot;homepage&quot; target=&quot;_blank&quot; title=&quot;Telerik&quot;&gt;Telerik&lt;/a&gt;. They have various suites of controls that make the life of developers easier. They have menu controls and date(time) edit boxes with calenders and grid controls that you can easily use in your applications. Set some options and bind them to your data and there you go.&lt;br /&gt;
I must admit that there is a bit of a learning curve, but with the help of some good examples on the &lt;a href=&quot;http://demos.telerik.com/aspnet-mvc/&quot; target=&quot;_blank&quot;&gt;demo site&lt;/a&gt; and the ever helpful support desk of Telerik you get everything up and running in no time.&lt;br /&gt;
&lt;br /&gt;
As easy as .. whatever is easy.&lt;br /&gt;
&lt;br /&gt;
&lt;h5&gt;
But it is not all easy&lt;/h5&gt;
&lt;div&gt;
When you start out all things go smoothly and then you find that on your page with a couple of nested grids you end up with many, many save buttons. As each (sub)grid has one. And thus starts the quest to use only one button to rule them all.&lt;br /&gt;
&lt;br /&gt;
So here is our SaveAll Javascript function.&lt;br /&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;pre&gt;function SaveAll(button) {
    showLoader();

    $.ajaxSetup({
        async: false,
        cache: false
    });

    $(&#39;.t-grid&#39;).each(function (index) {
        var grid = $(this).data(&#39;tGrid&#39;);
        grid.submitChanges();
    });

    $(&#39;form&#39;).not(&#39;.t-edit-form&#39;).each(function (index) {
        $.ajax({
            url: $(this).attr(&#39;action&#39;),
            data: $(this).serializeArray(),
            type: $(this).attr(&#39;method&#39;)
        });
    });

    hideLoader();

    $.ajaxSetup({
        async: true,
        cache: true
    });

    return false;
}&lt;/pre&gt;
&lt;div&gt;
&amp;nbsp;What happens?&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;We start by showing a loader div (with spinning gif )on the page and so making it impossible for the user to do something while everything gets saved.&lt;/li&gt;
&lt;li&gt;Then we make sure that all consequent ajax calls are&amp;nbsp;asynchronous&amp;nbsp;as we would otherwise run ito trouble.&lt;/li&gt;
&lt;li&gt;Next we loop through all the grids submit all changes for each grid.&lt;/li&gt;
&lt;li&gt;Then we loop through all the forms (excluding the forms with class &quot;t-edit-form&quot;, these are are for inline editing in the grids) and we&amp;nbsp;submit&amp;nbsp;the forms through ajax.&lt;/li&gt;
&lt;li&gt;Finally, we hide the loader div again.&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div&gt;
There you are. That was not that difficult.&lt;br /&gt;
I have omitted checking for validation errors and what to do when everything is saved. Maybe we need to move to another page?&lt;br /&gt;
&lt;h5&gt;
Well, it almost works, can I go home now?&lt;/h5&gt;
&lt;/div&gt;
Almost working is never enough for testers and clients. But is probably even more annoying for me as a developer.&lt;br /&gt;
We discovered a weird behavior in our grids. Because we wanted to unclutter our pages we also removed the delete buttons in the grids for removing records and added a column at the beginning of each row with a checkbox so the user can select multiple rows. Then using a delete button in the toolbar you can delete the rows in one go.&lt;br /&gt;
Great!&lt;br /&gt;
And then we discovered that the value of the first data column was not saved using our button. Other columns worked perfectly. The data was simply not in the request to the server.&lt;br /&gt;
&lt;br /&gt;
&lt;h5&gt;
After a lot of reaearch, Googling, trial and error&lt;/h5&gt;
&lt;div&gt;
It was clear that the solution was just around the corner. The addition of the checkboxes was the cause. That was&amp;nbsp;easily&amp;nbsp;established, but a solution was more difficult.&lt;/div&gt;
&lt;div&gt;
Browsing through the Telerik Javascript code and the DOM I tried to add this to part where we are saving the grids.&lt;/div&gt;
&lt;pre&gt;    $(&#39;.t-grid&#39;).each(function (index) {
        var grid = $(this).data(&#39;tGrid&#39;);
        // save any editing rows first
        $(this).find(&quot;.t-grid-edit-row&quot;).each(function () {
            grid.updateRow(this);
        });
        grid.submitChanges();
    });
&lt;/pre&gt;
&lt;div&gt;
That would simply take the rows that are in editing mode and update the data. But no, this tried to update it directly on the server and that would involve additional writing specific server side code to handle those requests.&lt;br /&gt;
Close and still no cigar.&lt;br /&gt;
The problem was that the edited column was somehow not persisted in the client side data. So that was what &amp;nbsp;needed to be made sure. Persist all data in client side memory before submitting the grid changes.&lt;br /&gt;
But how?&lt;br /&gt;
&lt;h5&gt;
More Googling&lt;/h5&gt;
Trying evermore results from Google brought me to &lt;a href=&quot;http://blogs.planetsoftware.com.au/paul/archive/2012/03/12/enhanced-batch-editing-using-telerik-extensions-for-asp-net-mvc.aspx&quot; target=&quot;_blank&quot;&gt;Paul Reynold&#39;s blog&lt;/a&gt;. In his post &quot;&lt;a href=&quot;http://blogs.planetsoftware.com.au/paul/archive/2012/03/12/enhanced-batch-editing-using-telerik-extensions-for-asp-net-mvc.aspx&quot; target=&quot;_blank&quot;&gt;enhanced batch editing using telerik extensions for asp .net mvc grid control&lt;/a&gt;&quot; he explains a lot. Not all of it was relevant for my solutions, but I found a bit of code that helped to fix my problem. Thank you, Paul.&lt;br /&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;pre&gt;        $(&#39;.t-grid&#39;).each(function (index) {
        var grid = $(this).data(&#39;tGrid&#39;);
        // save any editing cells first
        $(grid.element).find(&quot;.t-grid-edit-cell&quot;).each(function () {
            grid.saveCell(this);
        });
        grid.submitChanges();
    });
&lt;/pre&gt;
&lt;br /&gt;
I tried to update an entire row (which resulted in a server call) and the solution is to save each cell and these get persisted client side. Just what I wanted.&lt;br /&gt;
&lt;br /&gt;
&lt;h5&gt;
Lessons learned&lt;/h5&gt;
&lt;div&gt;
I learned a couple of things in this quest:&lt;/div&gt;
&lt;div&gt;
&lt;ol&gt;
&lt;li&gt;Third party controls are great for making life easier, because all normal functionality is there and tested.&lt;/li&gt;
&lt;li&gt;Third party controls make things really difficult at times when you want to do something slightly out of the box.&lt;/li&gt;
&lt;li&gt;Solutions can be found by hunting through multiple search results and reading all the way through these.&lt;/li&gt;
&lt;li&gt;Never give up.&lt;/li&gt;
&lt;/ol&gt;
&lt;/div&gt;
&lt;br /&gt;


&lt;div class=&quot;zemanta-pixie&quot; style=&quot;height: 15px; margin-top: 10px;&quot;&gt;
&lt;a class=&quot;zemanta-pixie-a&quot; href=&quot;http://www.zemanta.com/?px&quot; title=&quot;Enhanced by Zemanta&quot;&gt;&lt;img alt=&quot;Enhanced by Zemanta&quot; class=&quot;zemanta-pixie-img&quot; src=&quot;http://img.zemanta.com/zemified_e.png?x-id=a1a1ea7a-fe5a-4d68-a993-edc26ecd442d&quot; style=&quot;border: none; float: right;&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;hr /&gt;
&lt;a href=&quot;http://blog.mahimba.com&quot;&gt;&lt;img border=&quot;0&quot;
src=&quot;http://bp3.blogger.com/_Asp8txadpj8/RpX20ZGPK0I/AAAAAAAAAgk/0qdVP5IrH_Y/s320/banaan.gif&quot;
alt=&quot;Mahimba Blog&quot; /&gt;&lt;/a&gt;
&lt;hr /&gt;
&lt;a href=&quot;mailto:rob.hofker@gmail.com&quot;&gt;Go ahead and spam me!&lt;/a&gt;
 or visit me at 
&lt;a href=&quot;http://www.roho-products.nl&quot;&gt;Roho Products - Web design - Steenwijk&lt;/a&gt;
&lt;!-- Oy you! Why are you looking at the source code of this feed? Not much to see here. Bye now! --&gt;
&lt;hr /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://roho2003.blogspot.com/feeds/464258283084119826/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://roho2003.blogspot.com/2013/05/the-benefits-and-horrors-of-third-party.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5176856/posts/default/464258283084119826'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5176856/posts/default/464258283084119826'/><link rel='alternate' type='text/html' href='http://roho2003.blogspot.com/2013/05/the-benefits-and-horrors-of-third-party.html' title='The benefits and horrors of third party controls'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/03880668956776986361</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://farm9.static.flickr.com/8476/8419902285_86f3a31d5b_t.jpg" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5176856.post-7858966693222154678</id><published>2013-04-04T12:26:00.000+02:00</published><updated>2013-04-04T15:13:33.567+02:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="AJAX"/><category scheme="http://www.blogger.com/atom/ns#" term="ASP.NET"/><category scheme="http://www.blogger.com/atom/ns#" term="Document Object Model"/><category scheme="http://www.blogger.com/atom/ns#" term="JQuery"/><category scheme="http://www.blogger.com/atom/ns#" term="multiple events"/><category scheme="http://www.blogger.com/atom/ns#" term="MVC3"/><title type='text'>Multiple submit event handlers on Ajax forms in a wizard style application</title><content type='html'>&lt;h4&gt;
.. this was driving me crazy!&lt;/h4&gt;
I was working on an application (ASP.NET, MVC3) in which I had to implement a wizard like piece of functioality. You know of the &#39;Next-Next-Previous-Next-Finish&#39;-type.&lt;br /&gt;
To make things nice for the user I used AJAX. To make things simpler for me I have one control that is loaded and depending on the page that the user is currently on I load different controls into the form. I return a PartialView and that replaces part&lt;br /&gt;
That is all not too complicated and works like a charm.&lt;br /&gt;
&lt;h5&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhBi_6vpUsqc7UO0NFNKHSjbMObICyvmdQ7lCL6ggKJuUni8IMfVrcW40ij7LkJmmXQXPjanST9Ornqc2D99xmW_yop8Pe-C95Cul3AIYwJ7TydvSL7wc2qMZR5917_G16xR1GVKA/s1600/IMG_20130129_123022.jpg&quot; imageanchor=&quot;1&quot; style=&quot;clear: right; float: right; margin-bottom: 1em; margin-left: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;240&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhBi_6vpUsqc7UO0NFNKHSjbMObICyvmdQ7lCL6ggKJuUni8IMfVrcW40ij7LkJmmXQXPjanST9Ornqc2D99xmW_yop8Pe-C95Cul3AIYwJ7TydvSL7wc2qMZR5917_G16xR1GVKA/s320/IMG_20130129_123022.jpg&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;
Uhm, no it doesn&#39;t&lt;/h5&gt;
The first page shows up. I hit the submit button and the page went by smoothly and I could see the ControllerAction being hit. Great! I just increased the page counter and onwards to the next page. The next page arrives in the browser and I hit the submit button again.&lt;br /&gt;
Uh oh! Things go wrong now. My ControllerAction is hit twice! Worse even on the next page, it gets hit three times! Oh my, oh my.&lt;br /&gt;
&lt;h5&gt;
Inspection of the problem&lt;/h5&gt;
Looking at the html closer I quickly discovered that the form had multiple event handlers tied to the &#39;submit&#39; event. This was the cause of the forms being submitted multiple times.&lt;br /&gt;
How come these multiple event handlers then?&lt;br /&gt;
Apparently the jQuery Ajax (jquery.unobtrusive-ajax.min.js) has some trouble with the Ajax replacing a part of the DOM and then reattaches some of the existing &#39;submit&#39; Event handlers. The extra event handler on each page is thus explained.&lt;br /&gt;
Root cause is that the AJAX call reloads part of the DOM including the FORM-element and not the content of the FORM and thus somehow the old submit eventhandlers are not cleared. Hence, multiple event handlers.&lt;br /&gt;
&lt;h5&gt;
Okay, so let me Google that for you&lt;/h5&gt;
Or Bing it. Or Yahoo it.&lt;br /&gt;
Many people have encountered similar problems. But none quite the same as mine or at least the provided solutions did not solve my problem. And so I experimented with many solutions and all of them failed.&lt;br /&gt;
Thought about somehow preventing all the event handlers but the first to fire. Or just to delete all event handlers except the first. Couldn&#39;t find a good way of doing that.&lt;br /&gt;
&lt;br /&gt;
&lt;h5&gt;
Back to the drawing board&lt;/h5&gt;
Completely rebuilding the Views and PartialViews to refresh the DOM inside the FORM element was not an option. So that was ruled out.&lt;br /&gt;
In the end we decided to go a slightly other way. We decided to step away from a normal submit button as that triggers (all) the submit event handler(s) of the FORM and makes us lose control of the mess we got in. We created a simple button that calls a JavaScript function that does the submit of the FORM through jQuery AJAX. This way we never ever call the submit event handler of the form.&lt;br /&gt;
Problem solved.&lt;br /&gt;
Please find below the simple JavaScript function that does all the &lt;em&gt;clever&lt;/em&gt; stuff.&lt;br /&gt;
&lt;pre&gt;function onSingleSubmitButtonClicked(button)
{
  var frm = $(&#39;form&#39;);
  var data =  frm.serialize();
  var url = frm.attr(&#39;action&#39;);
  var method = frm.attr(&#39;data-ajax-method&#39;);
  var target = frm.attr(&#39;data-ajax-update&#39;);
  $.ajax({
    type: method,
    url: url,
    data: data,
    beforeSend: function() {showLoader();},
    complete: function(response) {$(target).html(response.responseText);hideLoader();}
  });
}&lt;/pre&gt;
We attach this function to the click event of input[type=button] and that is all. Below a step by step run through.&lt;br /&gt;
&lt;ol&gt;
&lt;li&gt;The function finds the one form on our page. When you have more forms on a page you may have to pass an id or when the button is inside the form find the parent of the button of type FORM.&lt;/li&gt;
&lt;li&gt;Next we serialize all the input fields from the form.&lt;/li&gt;
&lt;li&gt;We then grab the action attribute from the form and use that as the url to post the data to.&lt;/li&gt;
&lt;li&gt;We read the post or get method from the appropriate method.&lt;/li&gt;
&lt;li&gt;The update target where we will put the response from the Ajax call into the DOM.&lt;/li&gt;
&lt;li&gt;Then we make the Ajax call. The serialized data is included and we also show a loader overlay before we send the request and hide it again after the call is complete.&lt;/li&gt;
&lt;/ol&gt;
Probably some optimization is possible, but that is a simple solution to the weird problem. Just take things in your own hands. You can&#39;t always trust the browser or jQuery do things the way you would expect them to do.&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;hr /&gt;
&lt;a href=&quot;http://blog.mahimba.com&quot;&gt;&lt;img border=&quot;0&quot;
src=&quot;http://bp3.blogger.com/_Asp8txadpj8/RpX20ZGPK0I/AAAAAAAAAgk/0qdVP5IrH_Y/s320/banaan.gif&quot;
alt=&quot;Mahimba Blog&quot; /&gt;&lt;/a&gt;
&lt;hr /&gt;
&lt;a href=&quot;mailto:rob.hofker@gmail.com&quot;&gt;Go ahead and spam me!&lt;/a&gt;
 or visit me at 
&lt;a href=&quot;http://www.roho-products.nl&quot;&gt;Roho Products - Web design - Steenwijk&lt;/a&gt;
&lt;!-- Oy you! Why are you looking at the source code of this feed? Not much to see here. Bye now! --&gt;
&lt;hr /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://roho2003.blogspot.com/feeds/7858966693222154678/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://roho2003.blogspot.com/2013/04/multiple-submit-event-handlers-on-ajax.html#comment-form' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5176856/posts/default/7858966693222154678'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5176856/posts/default/7858966693222154678'/><link rel='alternate' type='text/html' href='http://roho2003.blogspot.com/2013/04/multiple-submit-event-handlers-on-ajax.html' title='Multiple submit event handlers on Ajax forms in a wizard style application'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/03880668956776986361</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhBi_6vpUsqc7UO0NFNKHSjbMObICyvmdQ7lCL6ggKJuUni8IMfVrcW40ij7LkJmmXQXPjanST9Ornqc2D99xmW_yop8Pe-C95Cul3AIYwJ7TydvSL7wc2qMZR5917_G16xR1GVKA/s72-c/IMG_20130129_123022.jpg" height="72" width="72"/><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5176856.post-7689909846018065473</id><published>2011-12-05T09:22:00.001+01:00</published><updated>2013-05-10T11:30:46.448+02:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="ASP.NET"/><category scheme="http://www.blogger.com/atom/ns#" term="ASP.NET MVC Framework"/><category scheme="http://www.blogger.com/atom/ns#" term="GriDBuilder"/><category scheme="http://www.blogger.com/atom/ns#" term="Telerik"/><title type='text'>Creating a master-detail grid with Telerik ASP.NET MVC controls</title><content type='html'>&lt;h4&gt;
.. with a twist&lt;/h4&gt;
Right now I am part of a team that is building a big HR related application. Maybe it&#39;s better to call it an HR suite. When finished it can be used to do performance reviews, 360s, development plans and the like with this application. It will be big and the customer plans to conwuer the world wit it. Well, at least Europe.&lt;br /&gt;
&lt;h5&gt;
Architecture&lt;/h5&gt;
For this applications some choices were made with regards to the archictecture.&lt;br /&gt;
First decision: we use ASP.NET MVC3. Why? Well, main reason is that this is becoming some sort of standard way of developing web applications using .NET. Is it the best way? Is the easiest way? Is it the &lt;em&gt;only&lt;/em&gt; way? No. No. No. It is one of the possible frameworks to use. And because we expect to get more people on board we pick a framework that more people use over own framework.&lt;br /&gt;
The second choice we use Entity Framework and with that the Code-First option. This was a first for us and it takes a bit getting used to not have to write any clever stored procedures.&lt;br /&gt;
Database access is separated from the web application and is handled through web services. Making it so much easier to later decide to share the load over more machines.&lt;br /&gt;
Finally, a decision that was already made by the client, we should Telerik Components were possible.&lt;br /&gt;
&lt;h5&gt;
Getting back to the subject&lt;/h5&gt;
Ok, let&#39;s get back to what this really about. Implementing a master-detail grid with a Telerik component.&lt;br /&gt;
So why a blog post on this? Telerik has an extensive demo site and has a &lt;a href=&quot;http://demos.telerik.com/aspnet-mvc/grid/hierarchyserverside&quot;&gt;demo on a master detail grid&lt;/a&gt;. Yes, they have, but we want to do it slightly different.&lt;br /&gt;
To be totally honest, we think that the standard way of ASP.NET MVC3 is in some repect a step back. Done the simple way it means that a lot of the logic is done in the aspx page. It comes close again to classic ASP. Mixing markup with C# code and ending up with not optimal code in both of these areas. We are great believers in Object Oriented approach and we seek to reuse as much code as possible and want to kae our controls as clever as it needs to be.&lt;br /&gt;
Beacuse the target market is Europe we have to cater for different languages and we have solved that problem in a base control and derive all controls from that.&lt;br /&gt;
In the aspx page, we only want to load a custom user control that we build up completely in code. No, we did not go down the Razor path.&lt;br /&gt;
So yes, we have private controls and we override the CreateChildControls() method. We do the binding in the OnPreRender() and finaly in the Render(writer) method we make sure the correct markup is being  produced.&lt;br /&gt;
&lt;h5&gt;
Brining in the Telerik controls&lt;/h5&gt;
The above approach also means that we cannot use the Telerik components as private controls. It is not possible to instantiate the components. So in comes the Telerik.Web.Mvc.UI.Fluent namespace and a variety of Builders. With these builders it is relatively easy to &lt;em&gt;build&lt;/em&gt; the component. When we have set all properties we want and bound the data we then use the method ToHtmlString() to get the markup produced by the component and assign that outcome to a LiteralControl. After that we let the rendering go on in the nromal way.&lt;br /&gt;
This way we can use our own OO-based control hierarchy and still use the powerful Telerik Components. We do not wish to completely build (and test) a sortable, pageable, editable grid control.&lt;br /&gt;
&lt;h5&gt;
Now for the Master-Detail grid&lt;/h5&gt;
In one of our Use Cases we needed a Master-Detail grid. No problem the Telerik Grid component supports that as shown in the &lt;a href=&quot;http://demos.telerik.com/aspnet-mvc/grid/hierarchyserverside&quot;&gt;demo&lt;/a&gt;.&lt;br /&gt;
The problems was how to get that done in our approach using the Builders. We did not find any real examples of this.&lt;br /&gt;
&lt;h5&gt;
Telerik support team&lt;/h5&gt;
So then we got into the normal horror of sending a question to the support desk. Normally it takes some days to get a reply and then you  need a couple of messages to get them to understand your question and then explain why you want to have it done the way you are doing it. Before finnaly, you get into the struggle of getting an answer that really works.&lt;br /&gt;
But no wait!&lt;br /&gt;
The Telerik support is different!&lt;br /&gt;
They reply within 24 hours as advertised. I even had an answer with ten minutes on one of my questions.&lt;br /&gt;
And they quickly understood what I was trying to and gave me enough info to solve my problem with a workday. And being probably in different time zones I think that is a wondeful achievement! Many thanks for that!&lt;br /&gt;
As a big thank you I wil explain what the final solution was.&lt;br /&gt;
&lt;h5&gt;
The problem&lt;/h5&gt;
We want show a grid with all the departments of a company and we want to click open (expand) a department to show a list of it&#39;s employees.&lt;br /&gt;
Nothing too special.&lt;br /&gt;
&lt;h5&gt;
The solution&lt;/h5&gt;
Our data model is pretty simple:&lt;br /&gt;
&lt;dl&gt;
&lt;dt&gt;&lt;h6&gt;
Department&lt;/h6&gt;
&lt;/dt&gt;
&lt;dd&gt;Properties
&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;Guid DepartmentId&lt;/li&gt;
&lt;li&gt;string Name&lt;/li&gt;
&lt;li&gt;List&lt;employee&gt; Employees&lt;/employee&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/dd&gt;
&lt;dt&gt;&lt;h6&gt;
Employee&lt;/h6&gt;
&lt;/dt&gt;
&lt;dd&gt;Properties
&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;Guid EmployeeId&lt;/li&gt;
&lt;li&gt;string FirstName&lt;/li&gt;
&lt;li&gt;string FirstName&lt;/li&gt;
&lt;/ul&gt;
&lt;/dd&gt;
&lt;/dl&gt;
Our control has a LiteralControl that will be the placeholder for the markup produced by the GridBuilders. Also there is a private field that holds a list of Departments with the corresponding Employees.&lt;br /&gt;
Let&#39;s start using the GriDBuilder to first create the Master part.&lt;br /&gt;
&lt;pre&gt;GridBuilder&lt;department&gt; gridBuilder = HtmlHelperExtension.Telerik(viewPage.Html).Grid&lt;department&gt;();
            gridBuilder.Name(&quot;MasterDetailGrid&quot;)
               .DataBinding(dataBinding =&amp;gt; dataBinding
                   .Server())
               .BindTo(departments)
               .Columns(columns =&amp;gt;
               {
                   columns.Bound(d =&amp;gt; d.Name).Title(&quot;Department&quot;);
               });&lt;/department&gt;&lt;/department&gt;&lt;/pre&gt;
This is the normal way to use the GridBuilder to create a Telerik Grid.&lt;br /&gt;
The Detail part of the Grid is itself also a Grid, so we can use teh same approach.&lt;br /&gt;
&lt;pre&gt;GridBuilder&lt;employee&gt; employeeGridBuilder = HtmlHelperExtension.Telerik(viewPage.Html).Grid&lt;employee&gt;()
   .DataBinding(dataBinding =&amp;gt; dataBinding
   .Server())
   .Name(&quot;Detail&quot;)
   .Columns(columns =&amp;gt;
   {
      columns.Bound(d =&amp;gt; d.FirstName).Title(&quot;FirstName&quot;);
      columns.Bound(d =&amp;gt; d.LastName).Title(&quot;LastName&quot;);
});&lt;/employee&gt;&lt;/employee&gt;&lt;/pre&gt;
Note that I have not bound this Deatil Grid to anything yet. That is something we need to do as part of the master Grid. To do so we need the DetailView method of the Grid.&lt;br /&gt;
&lt;pre&gt;gridBuilder.DetailView(dep =&amp;gt; dep.Template(d =&amp;gt;
   {
      employeeGridBuilder.BindTo(d.Employees);
   }));&lt;/pre&gt;
This makes the Employee bound to the Employees of the Department that is in the row of the Master part of the Grid. Now, spit out the markup and put it in the LiteralControl.&lt;br /&gt;
&lt;pre&gt;literalControl.Text = gridBuilder.ToHtmlString();&lt;/pre&gt;
But nothing shows up for the Employees. We ca expand a Department row and there is some white space, but no Employees.&lt;br /&gt;
&lt;h5&gt;
The final step&lt;/h5&gt;
Something inside my head said that I had to use ToHtmlString() on the detail Grid as well. But I could not find the correct syntax. So back to the Supprt Team at Telerik and an answer came very quick. It was simple as the following:&lt;br /&gt;
&lt;pre&gt;gridBuilder.DetailView(dep =&amp;gt; dep.Template(d =&amp;gt;
   {
      employeeGridBuilder.BindTo(d.Employees);
      return employeeGridBuilder.ToHtmlString();
   }));&lt;/pre&gt;
This makes the detail Grid appear and now we can move forward again full speed!&lt;br /&gt;
&lt;h5&gt;
Thansk again!&lt;/h5&gt;
Not only does Telerik produce great components, they can be used in various ways. Even the not so standard way we want to use them. Telerik also has a super Support Team is both fast and correct in their answers.&lt;br /&gt;
If you ever run ito a problem with Telerik components they will surely be able to help you out in no time!&lt;br /&gt;


&lt;div class=&quot;zemanta-pixie&quot; style=&quot;height: 15px; margin-top: 10px;&quot;&gt;
&lt;a class=&quot;zemanta-pixie-a&quot; href=&quot;http://www.zemanta.com/?px&quot; title=&quot;Enhanced by Zemanta&quot;&gt;&lt;img alt=&quot;Enhanced by Zemanta&quot; class=&quot;zemanta-pixie-img&quot; src=&quot;http://img.zemanta.com/zemified_e.png?x-id=a1a1ea7a-fe5a-4d68-a993-edc26ecd442d&quot; style=&quot;border: none; float: right;&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;hr /&gt;
&lt;a href=&quot;http://blog.mahimba.com&quot;&gt;&lt;img border=&quot;0&quot;
src=&quot;http://bp3.blogger.com/_Asp8txadpj8/RpX20ZGPK0I/AAAAAAAAAgk/0qdVP5IrH_Y/s320/banaan.gif&quot;
alt=&quot;Mahimba Blog&quot; /&gt;&lt;/a&gt;
&lt;hr /&gt;
&lt;a href=&quot;mailto:rob.hofker@gmail.com&quot;&gt;Go ahead and spam me!&lt;/a&gt;
 or visit me at 
&lt;a href=&quot;http://www.roho-products.nl&quot;&gt;Roho Products - Web design - Steenwijk&lt;/a&gt;
&lt;!-- Oy you! Why are you looking at the source code of this feed? Not much to see here. Bye now! --&gt;
&lt;hr /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://roho2003.blogspot.com/feeds/7689909846018065473/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://roho2003.blogspot.com/2011/12/creating-master-detail-grid-with.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5176856/posts/default/7689909846018065473'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5176856/posts/default/7689909846018065473'/><link rel='alternate' type='text/html' href='http://roho2003.blogspot.com/2011/12/creating-master-detail-grid-with.html' title='Creating a master-detail grid with Telerik ASP.NET MVC controls'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/03880668956776986361</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5176856.post-489585048289848103</id><published>2011-09-28T13:41:00.001+02:00</published><updated>2011-09-28T13:41:44.885+02:00</updated><title type='text'>I was shocked</title><content type='html'>&lt;h4&gt;.. and then I laughed&lt;/h4&gt;

&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;http://29.media.tumblr.com/tumblr_l1zfsyAm021qzayv5o1_500.gif&quot; imageanchor=&quot;1&quot; style=&quot;margin-left:1em; margin-right:1em&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;343&quot; width=&quot;425&quot; src=&quot;http://29.media.tumblr.com/tumblr_l1zfsyAm021qzayv5o1_500.gif&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;hr /&gt;
&lt;a href=&quot;http://blog.mahimba.com&quot;&gt;&lt;img border=&quot;0&quot;
src=&quot;http://bp3.blogger.com/_Asp8txadpj8/RpX20ZGPK0I/AAAAAAAAAgk/0qdVP5IrH_Y/s320/banaan.gif&quot;
alt=&quot;Mahimba Blog&quot; /&gt;&lt;/a&gt;
&lt;hr /&gt;
&lt;a href=&quot;mailto:rob.hofker@gmail.com&quot;&gt;Go ahead and spam me!&lt;/a&gt;
 or visit me at 
&lt;a href=&quot;http://www.roho-products.nl&quot;&gt;Roho Products - Web design - Steenwijk&lt;/a&gt;
&lt;!-- Oy you! Why are you looking at the source code of this feed? Not much to see here. Bye now! --&gt;
&lt;hr /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://roho2003.blogspot.com/feeds/489585048289848103/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://roho2003.blogspot.com/2011/09/i-was-shocked.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5176856/posts/default/489585048289848103'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5176856/posts/default/489585048289848103'/><link rel='alternate' type='text/html' href='http://roho2003.blogspot.com/2011/09/i-was-shocked.html' title='I was shocked'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/03880668956776986361</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5176856.post-3262239572101785946</id><published>2011-09-28T10:31:00.000+02:00</published><updated>2011-09-28T10:31:55.663+02:00</updated><title type='text'>Mosaic?</title><content type='html'>&lt;h4&gt;.. wasn&#39;t that the first browser?&lt;/h4&gt;
&lt;p&gt;I must admit that back in the old days when cows still walked barefoot in the meadows I was browsing the Internet using the Mosaic browser. That was a very, very log time ago.&lt;/p&gt;
&lt;p&gt;But this blogpost has nothing to do wth that.&lt;/p&gt;
&lt;h5&gt;Blogger views&lt;/h5&gt;
&lt;p&gt;Blogger (which hosts this blog) added a dynamic view mode that allows the user to view a blog in a number of different ways. One them is &quot;mosaic&quot; that I think can provide in a snapshot what a blog is all about.&lt;/p&gt;

&lt;p&gt;Blogger is just one example of how Google breathe new life into a product. They have done this by &quot;rotating&quot; it to a new team and it&#39;s great to see that they keep innovating on a product that&#39;s been around for so long.&lt;/p&gt;
&lt;p&gt;Here&#39;s the link to see this blog in the mosaic view:  &lt;a href=&quot;http://roho2003.blogspot.com/view/mosaic&quot;&gt;http://roho2003.blogspot.com/view/mosaic&lt;/a&gt; and you can change it to one of the other dynamic views with the menu in the upper left.&lt;/p&gt;
&lt;p&gt;Enjoy!&lt;/p&gt;&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;hr /&gt;
&lt;a href=&quot;http://blog.mahimba.com&quot;&gt;&lt;img border=&quot;0&quot;
src=&quot;http://bp3.blogger.com/_Asp8txadpj8/RpX20ZGPK0I/AAAAAAAAAgk/0qdVP5IrH_Y/s320/banaan.gif&quot;
alt=&quot;Mahimba Blog&quot; /&gt;&lt;/a&gt;
&lt;hr /&gt;
&lt;a href=&quot;mailto:rob.hofker@gmail.com&quot;&gt;Go ahead and spam me!&lt;/a&gt;
 or visit me at 
&lt;a href=&quot;http://www.roho-products.nl&quot;&gt;Roho Products - Web design - Steenwijk&lt;/a&gt;
&lt;!-- Oy you! Why are you looking at the source code of this feed? Not much to see here. Bye now! --&gt;
&lt;hr /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://roho2003.blogspot.com/feeds/3262239572101785946/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://roho2003.blogspot.com/2011/09/mosaic.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5176856/posts/default/3262239572101785946'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5176856/posts/default/3262239572101785946'/><link rel='alternate' type='text/html' href='http://roho2003.blogspot.com/2011/09/mosaic.html' title='Mosaic?'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/03880668956776986361</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5176856.post-7252841596840459835</id><published>2011-07-01T14:51:00.004+02:00</published><updated>2011-07-11T14:40:24.821+02:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="google docs"/><category scheme="http://www.blogger.com/atom/ns#" term="Multimedia"/><category scheme="http://www.blogger.com/atom/ns#" term="Television"/><title type='text'>A multimedia super machine</title><content type='html'>&lt;h4&gt;.. what would that be today?&lt;/h4&gt;Today the &lt;a class=&quot;zem_slink&quot; href=&quot;http://en.wikipedia.org/wiki/Multimedia&quot; rel=&quot;wikipedia&quot; title=&quot;Multimedia&quot;&gt;multimedia&lt;/a&gt; business is rapidly (r)evolving with ever more possibilities and more machines are coming together. Telephone, Internet and &lt;a class=&quot;zem_slink&quot; href=&quot;http://en.wikipedia.org/wiki/Television&quot; rel=&quot;wikipedia&quot; title=&quot;Television&quot;&gt;TV&lt;/a&gt; are converging with more and more functionalities coming in as well.&lt;br /&gt;
I find it difficult to keep up to date, but still I try. Every month, it seems, some new gadget comes onto the market that has some completely new amazing function or a better way to do something an other device already did. It&#39;s hard to keep up with it.&lt;br /&gt;
&lt;h5&gt;My multimedia center is not yet complete&lt;/h5&gt;Although my multimedia machinery is relatively complete I still miss some functionality. I can not playback all the movies I hold on my NAS (&lt;a class=&quot;zem_slink&quot; href=&quot;http://www.dlna.org/&quot; rel=&quot;homepage&quot; title=&quot;Digital Living Network Alliance&quot;&gt;DLNA&lt;/a&gt; enabled) and I can not record TV shows. Or &lt;a class=&quot;zem_slink&quot; href=&quot;http://en.wikipedia.org/wiki/Time_shifting&quot; rel=&quot;wikipedia&quot; title=&quot;Time shifting&quot;&gt;time shifting&lt;/a&gt;. I can do some browsing on my TV and on my &lt;a class=&quot;zem_slink&quot; href=&quot;http://wii.nintendo.com/&quot; rel=&quot;homepage&quot; title=&quot;Wii&quot;&gt;Wii&lt;/a&gt; but neither is great.&lt;br /&gt;
So there are somethings that I would want to add to my setup. But I only want to add a single machine that holds &lt;strong&gt;all&lt;/strong&gt; possible options I can think of. At least that I can think off today.&lt;br /&gt;
If only I could think of &lt;strong&gt;all&lt;/strong&gt; the options available today.&lt;br /&gt;
&lt;h5&gt;And that&#39;s where you come in&lt;/h5&gt;Since it is impossible for me to compile the list of maybe all the options that are out there at this moment I have decided to crowdsource this task. I have shared a &lt;a href=&quot;https://docs.google.com/document/d/1J3O8ShotKolfEgKS0ou2CrNfRuhySEN6L-gnsnqWCSI/edit?hl=nl&quot;&gt;Google Docs document&lt;/a&gt; that you can freely edit.&lt;br /&gt;
Please bear in mind that I don&#39;t want the machine to make coffee, do the laundry and walk the dog. So please only realistic requirements for the machine.&lt;br /&gt;
So if you want to help me find&lt;a href=&quot;https://docs.google.com/document/d/1J3O8ShotKolfEgKS0ou2CrNfRuhySEN6L-gnsnqWCSI/edit?hl=nl&quot;&gt; the requirements for my next Multimedia Super Machine&lt;/a&gt; just click &lt;a href=&quot;https://docs.google.com/document/d/1J3O8ShotKolfEgKS0ou2CrNfRuhySEN6L-gnsnqWCSI/edit?hl=nl&quot;&gt;the link&lt;/a&gt; and add to the document.&lt;br /&gt;
Many thanks in advance!&lt;br /&gt;
&lt;br /&gt;
&lt;h5&gt;The results so far&lt;/h5&gt;Have a lookie!&lt;br /&gt;
&lt;iframe src=&quot;https://docs.google.com/document/pub?id=1J3O8ShotKolfEgKS0ou2CrNfRuhySEN6L-gnsnqWCSI&amp;amp;embedded=true&quot; style=&quot;width: 470px; height: 400px;&quot;&gt;&lt;/iframe&gt;&lt;br /&gt;
Scroll about :-) or just click &lt;a href=&quot;https://docs.google.com/document/d/1J3O8ShotKolfEgKS0ou2CrNfRuhySEN6L-gnsnqWCSI/edit?hl=nl&quot; target=&quot;banana&quot;&gt;the link&lt;/a&gt; and have better view and maybe even add or correct.&lt;br /&gt;
&lt;div class=&quot;zemanta-pixie&quot;&gt;&lt;a class=&quot;zemanta-pixie-a&quot; href=&quot;http://www.zemanta.com/&quot; title=&quot;Enhanced by Zemanta&quot;&gt;&lt;img alt=&quot;Enhanced by Zemanta&quot; class=&quot;zemanta-pixie-img&quot; src=&quot;http://img.zemanta.com/zemified_e.png?x-id=95517d7f-cbae-4aea-8db4-e7f1f93e5fdb&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;hr /&gt;
&lt;a href=&quot;http://blog.mahimba.com&quot;&gt;&lt;img border=&quot;0&quot;
src=&quot;http://bp3.blogger.com/_Asp8txadpj8/RpX20ZGPK0I/AAAAAAAAAgk/0qdVP5IrH_Y/s320/banaan.gif&quot;
alt=&quot;Mahimba Blog&quot; /&gt;&lt;/a&gt;
&lt;hr /&gt;
&lt;a href=&quot;mailto:rob.hofker@gmail.com&quot;&gt;Go ahead and spam me!&lt;/a&gt;
 or visit me at 
&lt;a href=&quot;http://www.roho-products.nl&quot;&gt;Roho Products - Web design - Steenwijk&lt;/a&gt;
&lt;!-- Oy you! Why are you looking at the source code of this feed? Not much to see here. Bye now! --&gt;
&lt;hr /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://roho2003.blogspot.com/feeds/7252841596840459835/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://roho2003.blogspot.com/2011/07/multimedia-super-machine.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5176856/posts/default/7252841596840459835'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5176856/posts/default/7252841596840459835'/><link rel='alternate' type='text/html' href='http://roho2003.blogspot.com/2011/07/multimedia-super-machine.html' title='A multimedia super machine'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/03880668956776986361</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5176856.post-663739593965811718</id><published>2011-06-16T15:40:00.005+02:00</published><updated>2011-06-22T10:10:00.988+02:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="JavaScript"/><category scheme="http://www.blogger.com/atom/ns#" term="JQuery"/><title type='text'>Using simple jQuery to detect changes</title><content type='html'>&lt;h4&gt;.. a quick solution&lt;/h4&gt;&lt;div class=&quot;update&quot;&gt;Updated&lt;/div&gt;Today I had a small task assigned to me to prevent a user from navigating away from a web form  when there are unsaved changes. As it was a rather extensive form (and old code) I had the feeling that it could be quite an extensive task.&lt;br /&gt;
Yes, I know this is more of a beginner&#39;s level blogpost, but maybe someone can use it. Otherwise burn me down to the ground in the comments.&lt;br /&gt;
&lt;h5&gt;General idea&lt;/h5&gt;A simple solution came to mind:&lt;br /&gt;
&lt;ol&gt;&lt;li&gt;do this on the client&lt;/li&gt;
&lt;li&gt;in comes &lt;a class=&quot;zem_slink&quot; href=&quot;http://en.wikipedia.org/wiki/JavaScript&quot; rel=&quot;wikipedia&quot; title=&quot;JavaScript&quot;&gt;JavaScript&lt;/a&gt; and yep, here comes &lt;a class=&quot;zem_slink&quot; href=&quot;http://jquery.com/&quot; rel=&quot;homepage&quot; title=&quot;JQuery&quot;&gt;jQuery&lt;/a&gt;!&lt;/li&gt;
&lt;li&gt;have a page wide boolean isDirty that starts as &#39;false&#39;&lt;/li&gt;
&lt;li&gt;when an input control is changed, make isDirty &#39;true&#39;&lt;/li&gt;
&lt;li&gt;when user tries to leave the page, check the value of isDirty&lt;/li&gt;
&lt;li&gt;when isDirty is &#39;true&#39; show confirmation dialog&lt;/li&gt;
&lt;li&gt;if the user cancels stay on the page&lt;/li&gt;
&lt;li&gt;if the user ignores then proceed onwards&lt;/li&gt;
&lt;/ol&gt;All rather simple.&lt;br /&gt;
&lt;h5&gt;Let&#39;s implement this!&lt;/h5&gt;Steps 1 and 2 are easy to take. We will just include the jQuery library in the page and start a block of JavaScript.&lt;br /&gt;
Also simple is step 3.&lt;br /&gt;
&lt;br /&gt;
&lt;pre&gt;var isDirty = false;&lt;/pre&gt;&lt;br /&gt;
Step 6,7 and 8 can be wrapped in a simple function:&lt;br /&gt;
&lt;pre&gt;function IsPageDirty() {
   if (isDirty) {
      var ignoreChanges = confirm(&quot;Unsaved changes. Proceed anyway?&quot;);
         return (ignoreChanges);
   }
   return true;
}&lt;/pre&gt;&lt;br /&gt;
That was easy, as some would say.&lt;br /&gt;
&lt;h5&gt;Now the final leaps&lt;/h5&gt;Then I decided that it would be simple a matter of using a selector in jQuery and add a function to the change function that sets the isDirty boolean to &#39;true&#39;.&lt;br /&gt;
I opted for a class &#39;trackChanges&#39;.&lt;br /&gt;
This is the little snippet that I produced.&lt;br /&gt;
&lt;pre&gt;$(&quot;.trackchange&quot;).change(function() {
   isDirty = true;
});&lt;/pre&gt;&lt;br /&gt;
Similarly I chose a class of &#39;moveaway&#39; for those links that can lead the user away from the current page. These links should get a onclick attribute returning the the result from the IsPageDirty() function described above.&lt;br /&gt;
&lt;pre&gt;$(&quot;.moveaway&quot;).attr(&quot;onclick&quot;, &quot;return IsPageDirty();&quot;);&lt;/pre&gt;&lt;h5&gt;And then there was a lot of work ...&lt;/h5&gt;Since I then had to go through the entire form. It was an aspx page and there User Controls (ascx) being loaded and I had to go through thse as well. Not very pleasant.&lt;br /&gt;
I got myself another cup of coffee and had a good thought. Then I decided to just select all input controls and not just certain marked with a class.&lt;br /&gt;
Changed the code to the following.&lt;br /&gt;
&lt;pre&gt;$(&quot;input, select&quot;).change(function() {
   isDirty = true;
});&lt;/pre&gt;Same was true for all the links. I opted for selecting all anchors.&lt;br /&gt;
&lt;br /&gt;
&lt;pre style=&quot;margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;&quot;&gt;$(&quot;a&quot;).attr(&quot;onclick&quot;, &quot;return IsPageDirty();&quot;);&lt;/pre&gt;&lt;div&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div&gt;Then I had a huge problem, because the saving was also done using a link. Before the saving would start the user gets a warning that there are unsaved changes. A bit confusing to say the least.&lt;/div&gt;&lt;div&gt;I didn&#39;t want to go back to putting a class on all the other links just to get around this. I wanted filter out some of the anchors by putting a class on these.&lt;/div&gt;&lt;div&gt;Luckily, jQuery has a function .not() that takes a selector and filters out these from the selection it is applied to. So I put a class &#39;always&#39; on the anchors that should not have the IsPageDirty() check and changed the line to:&lt;/div&gt;&lt;br /&gt;
&lt;pre&gt;$(&quot;a&quot;).not(&quot;.always&quot;).attr(&quot;onclick&quot;, &quot;return IsPageDirty();&quot;);&lt;/pre&gt;And that was it! A very simple piece of JavaScript code and hardly any changes to the page itself. I only had to add a class to some of the links.&lt;br /&gt;
&lt;h5&gt;Bringing it all together&lt;/h5&gt;Even if it is a very simple scenario and the code is probably not as compact as it can be, I think it shows once again how versatile JavaScript is in combination with library like jQuery.&lt;br /&gt;
So to get all together&lt;br /&gt;
&lt;br /&gt;
&lt;pre&gt;&amp;lt;script type=&quot;text/javascript&quot;&amp;gt;
   var isDirty = false;

   $(document).ready(function() {
      isDirty = false;
      $(&quot;input, select&quot;).change(function() {
         isDirty = true;
      });
      $(&quot;a&quot;).not(&quot;.always&quot;).attr(&quot;onclick&quot;, &quot;return IsPageDirty();&quot;);
      // a with class &quot;always&quot; is not checked
   });

   function IsPageDirty() {
      if (isDirty) {
         var ignoreChanges = confirm(&quot;Unsaved changes. Proceed anyway?&quot;);
            return (ignoreChanges);
      }
      return true;
   }
&amp;lt;/script&amp;gt;&lt;/pre&gt;&lt;br /&gt;
&lt;h5&gt;Not earth shocking&lt;/h5&gt;I know, I know, but still I think it could be of some help for others somewhere on the web. And maybe to help me remember this for future reference.&lt;br /&gt;
&lt;br /&gt;
&lt;h5 class=&quot;update&quot;&gt;Small update&lt;/h5&gt;The above solution worked on almost all of the pages, but one of the pages had some ASP.NET AJAX stuff on it, where dropdownlist were filled after the initial pageload. This caused some nasty problems, because these made the &lt;pre&gt;change()&lt;/pre&gt;function go off and set the &lt;pre&gt;isDirty&lt;/pre&gt;variable to true.&lt;br /&gt;
Some scratching of the head and then some Googling made find the &lt;pre&gt;live()&lt;/pre&gt;function to be my saviour in this.&lt;br /&gt;
&lt;br /&gt;
&lt;pre&gt;&amp;lt;script type=&quot;text/javascript&quot;&amp;gt;
   var isDirty = false;

   $(document).ready(function() {
      isDirty = false;
      $(&quot;input, select&quot;).not(&quot;.ignore&quot;).live(&quot;change&quot;, (function() {
         // control with class &quot;ignore&quot; does not fire the isDirty flag
         isDirty = true;
      });
      $(&quot;a&quot;).not(&quot;.always&quot;).attr(&quot;onclick&quot;, &quot;return IsPageDirty();&quot;);
      // a with class &quot;always&quot; is not checked
   });

   function IsPageDirty() {
      if (isDirty) {
         var ignoreChanges = confirm(&quot;Unsaved changes. Proceed anyway?&quot;);
            return (ignoreChanges);
      }
      return true;
   }
&amp;lt;/script&amp;gt;&lt;/pre&gt;&lt;br /&gt;
A reader with a good eye also notices the &lt;pre&gt;.not(&quot;.ignore&quot;)&lt;/pre&gt;function I added to exclude some controls from firing the isDirty flag. I used this class on some input controls used for search.&lt;br /&gt;
&lt;br /&gt;
That&#39;s it for now!&lt;br /&gt;
&lt;div class=&quot;zemanta-related&quot;&gt;&lt;h6 class=&quot;zemanta-related-title&quot;&gt;Related articles&lt;/h6&gt;&lt;ul class=&quot;zemanta-article-ul&quot;&gt;&lt;li class=&quot;zemanta-article-ul-li&quot;&gt;&lt;a href=&quot;http://blog.jquery.com/2011/05/03/jquery-16-released/&quot;&gt;jQuery 1.6 Released&lt;/a&gt; (jquery.com)&lt;/li&gt;
&lt;/ul&gt;&lt;/div&gt;&lt;div class=&quot;zemanta-pixie&quot;&gt;&lt;a class=&quot;zemanta-pixie-a&quot; href=&quot;http://www.zemanta.com/&quot; title=&quot;Enhanced by Zemanta&quot;&gt;&lt;img alt=&quot;Enhanced by Zemanta&quot; class=&quot;zemanta-pixie-img&quot; src=&quot;http://img.zemanta.com/zemified_e.png?x-id=99a0d351-24a8-4a56-8a8a-6c13a922a14d&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;hr /&gt;
&lt;a href=&quot;http://blog.mahimba.com&quot;&gt;&lt;img border=&quot;0&quot;
src=&quot;http://bp3.blogger.com/_Asp8txadpj8/RpX20ZGPK0I/AAAAAAAAAgk/0qdVP5IrH_Y/s320/banaan.gif&quot;
alt=&quot;Mahimba Blog&quot; /&gt;&lt;/a&gt;
&lt;hr /&gt;
&lt;a href=&quot;mailto:rob.hofker@gmail.com&quot;&gt;Go ahead and spam me!&lt;/a&gt;
 or visit me at 
&lt;a href=&quot;http://www.roho-products.nl&quot;&gt;Roho Products - Web design - Steenwijk&lt;/a&gt;
&lt;!-- Oy you! Why are you looking at the source code of this feed? Not much to see here. Bye now! --&gt;
&lt;hr /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://roho2003.blogspot.com/feeds/663739593965811718/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://roho2003.blogspot.com/2011/06/using-simple-jquery-to-detect-changes.html#comment-form' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5176856/posts/default/663739593965811718'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5176856/posts/default/663739593965811718'/><link rel='alternate' type='text/html' href='http://roho2003.blogspot.com/2011/06/using-simple-jquery-to-detect-changes.html' title='Using simple jQuery to detect changes'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/03880668956776986361</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5176856.post-3817525369214499220</id><published>2011-06-08T10:29:00.003+02:00</published><updated>2011-06-08T10:37:23.118+02:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Microsoft Visual Studio"/><category scheme="http://www.blogger.com/atom/ns#" term="Team Foundation Server"/><category scheme="http://www.blogger.com/atom/ns#" term="VS2005 VS2008 TFS2010 Forward compatiblity update"/><title type='text'>Connecting Visual Studio 2008 to TFS 2010</title><content type='html'>&lt;h4&gt;.. a note to self&lt;/h4&gt;And amidst all new versions of Visual Studio and &lt;a class=&quot;zem_slink&quot; href=&quot;http://en.wikipedia.org/wiki/Team_Foundation_Server&quot; rel=&quot;wikipedia&quot; title=&quot;Team Foundation Server&quot;&gt;Team Foundation Server&lt;/a&gt; I find myself at a client where there is a mixed codebase. Some older stuff created in VS2008 and even VS2005 and now working in VS2010. Luckily, they have their code on TFS 2010. For each version of Visual Studio code there is a collection aptly named VS2005 et cetera.&lt;br /&gt;
But then I struck the small challenge of actually getting to older code. I could connect to the collections using VS2010 and get latest from there and then I could open it using the correct version, but I completely lost the ability do any real source control.&lt;br /&gt;
I could not simply connect the older Visual Studio versions to TFS2010.&lt;br /&gt;
&lt;h4&gt;Now what?&lt;/h4&gt;Luckily this is something the people at Microsoft have anticipated. There are &lt;strong&gt;Forward Compatiblity Updates&lt;/strong&gt;&amp;nbsp;for older versions of Visual Studio:&lt;br /&gt;
&lt;ul&gt;&lt;li&gt;&lt;a href=&quot;http://www.microsoft.com/downloads/en/details.aspx?FamilyID=22215e4c-af6f-4e2f-96df-20e94d762689&amp;amp;displaylang=en&quot;&gt;Forward Compatibility Update for VS2005&lt;/a&gt;&amp;nbsp;(&lt;a href=&quot;http://www.microsoft.com/downloads/details.aspx?familyid=BB4A75AB-E2D4-4C96-B39D-37BAF6B5B1DC&quot;&gt;Visual Studio 2005 SP1&lt;/a&gt; is a required prerequisite).&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.microsoft.com/downloads/details.aspx?displaylang=en&amp;amp;FamilyID=cf13ea45-d17b-4edc-8e6c-6c5b208ec54d&quot;&gt;Forward Compatibility Update for VS2008&lt;/a&gt;&amp;nbsp;(Mind you the&amp;nbsp;&lt;a href=&quot;http://www.microsoft.com/downloads/details.aspx?familyid=FBEE1648-7106-44A7-9649-6D9F6D58056E&quot;&gt;Visual Studio 2008 SP1&lt;/a&gt; is required).&lt;/li&gt;
&lt;/ul&gt;&lt;h4&gt;Almost there&lt;/h4&gt;When connecting to TFS2010 from older Visual Studio versions wen need to give a little more data than just the server name. The complete path to the collection is needed. You will get a TF31002 error when you only provide the server name.&lt;br /&gt;
In the &lt;b&gt;Add Team Foundation Server&lt;/b&gt; dialog you will need to enter the following format in the Team Foundation Server name textbox:&lt;br /&gt;
&lt;br /&gt;
&lt;ul&gt;&lt;li&gt;&amp;nbsp;http://{tfsserver}:{port}/{virtualdir}/{projectCollection}&lt;/li&gt;
&lt;/ul&gt;&lt;br /&gt;
In my situation I came to the following result.&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjuPreIhxsMUEfWac36K0q5kUdEs_aM9vQOYvoQyzEVRkOir4r1S-qXzqExfI6ZUt-i68NwuJpchlnavmR18haZ2n0KZTEn4hPZAU3g74JVb0VYENUfw1mxqZNNsTQLpJmxOU-Pyw/s1600/connectingvs2008.png&quot; imageanchor=&quot;1&quot; style=&quot;clear: left; float: left; margin-bottom: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;253&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjuPreIhxsMUEfWac36K0q5kUdEs_aM9vQOYvoQyzEVRkOir4r1S-qXzqExfI6ZUt-i68NwuJpchlnavmR18haZ2n0KZTEn4hPZAU3g74JVb0VYENUfw1mxqZNNsTQLpJmxOU-Pyw/s400/connectingvs2008.png&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
&lt;h5 style=&quot;clear: both;&quot;&gt;And another trick learned&lt;/h5&gt;I hope this helps someone else as well. At least it is a note to self.&lt;br /&gt;
&lt;div class=&quot;zemanta-pixie&quot;&gt;&lt;a class=&quot;zemanta-pixie-a&quot; href=&quot;http://www.zemanta.com/&quot; title=&quot;Enhanced by Zemanta&quot;&gt;&lt;img alt=&quot;Enhanced by Zemanta&quot; class=&quot;zemanta-pixie-img&quot; src=&quot;http://img.zemanta.com/zemified_e.png?x-id=1f214a18-2275-40dc-b0d6-1899a73c4d01&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;hr /&gt;
&lt;a href=&quot;http://blog.mahimba.com&quot;&gt;&lt;img border=&quot;0&quot;
src=&quot;http://bp3.blogger.com/_Asp8txadpj8/RpX20ZGPK0I/AAAAAAAAAgk/0qdVP5IrH_Y/s320/banaan.gif&quot;
alt=&quot;Mahimba Blog&quot; /&gt;&lt;/a&gt;
&lt;hr /&gt;
&lt;a href=&quot;mailto:rob.hofker@gmail.com&quot;&gt;Go ahead and spam me!&lt;/a&gt;
 or visit me at 
&lt;a href=&quot;http://www.roho-products.nl&quot;&gt;Roho Products - Web design - Steenwijk&lt;/a&gt;
&lt;!-- Oy you! Why are you looking at the source code of this feed? Not much to see here. Bye now! --&gt;
&lt;hr /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://roho2003.blogspot.com/feeds/3817525369214499220/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://roho2003.blogspot.com/2011/06/connecting-visual-studio-2008-to-tfs.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5176856/posts/default/3817525369214499220'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5176856/posts/default/3817525369214499220'/><link rel='alternate' type='text/html' href='http://roho2003.blogspot.com/2011/06/connecting-visual-studio-2008-to-tfs.html' title='Connecting Visual Studio 2008 to TFS 2010'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/03880668956776986361</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjuPreIhxsMUEfWac36K0q5kUdEs_aM9vQOYvoQyzEVRkOir4r1S-qXzqExfI6ZUt-i68NwuJpchlnavmR18haZ2n0KZTEn4hPZAU3g74JVb0VYENUfw1mxqZNNsTQLpJmxOU-Pyw/s72-c/connectingvs2008.png" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5176856.post-5211296581271100982</id><published>2011-04-28T14:19:00.003+02:00</published><updated>2011-06-15T13:40:18.390+02:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Athletic shoe"/><category scheme="http://www.blogger.com/atom/ns#" term="Barefoot running"/><category scheme="http://www.blogger.com/atom/ns#" term="Half Marathon"/><category scheme="http://www.blogger.com/atom/ns#" term="Nike"/><category scheme="http://www.blogger.com/atom/ns#" term="Nike Free"/><category scheme="http://www.blogger.com/atom/ns#" term="Vibram Five Fingers"/><title type='text'>Barefoot running</title><content type='html'>&lt;div class=&quot;zemanta-img&quot;&gt;&lt;a href=&quot;http://commons.wikipedia.org/wiki/File:Barefootfoot_rick.jpg&quot;&gt;&lt;img alt=&quot;barefoot running&quot; src=&quot;http://upload.wikimedia.org/wikipedia/commons/e/e7/Barefootfoot_rick.jpg&quot; /&gt;&lt;/a&gt;&lt;span class=&quot;zemanta-img-attribution&quot;&gt;(for this my feet are too sensitive)&lt;br /&gt;
Image via &lt;a href=&quot;http://commons.wikipedia.org/wiki/File:Barefootfoot_rick.jpg&quot;&gt;Wikipedia&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;&lt;h4&gt;.. it is something completely different&lt;/h4&gt;For some of you this will seem like a completely misplaced post. It is not about developing or the Internet or Google but about running.&lt;br /&gt;
In my sparse sparetime I like to do some running. I have done that since my days in University on and off with more or less intensisty. Still haven&#39;t run the obligatory marathon yet, but two &lt;a class=&quot;zem_slink&quot; href=&quot;http://en.wikipedia.org/wiki/Half_marathon&quot; rel=&quot;wikipedia&quot; title=&quot;Half marathon&quot;&gt;Half Marathon&lt;/a&gt; should count as one, I guess.&lt;br /&gt;
&lt;h5&gt;Traditional running&lt;/h5&gt;I have always tried to run on a good pair of running shoes and replace these every 300++ Km to make sure I have sufficient damping. Not doing so always made my muscles hurt and led to small but painful injuries to my knees.&lt;br /&gt;
Ever since working for Nike I run on &lt;a class=&quot;zem_slink&quot; href=&quot;http://maps.google.com/maps?ll=45.5093,-122.8299&amp;amp;spn=0.01,0.01&amp;amp;q=45.5093,-122.8299%20(Nike%2C%20Inc.)&amp;amp;t=h&quot; rel=&quot;geolocation&quot; title=&quot;Nike, Inc.&quot;&gt;Nike shoes&lt;/a&gt; as these suit me very well. It&#39;s been a couple of years since I left that company but still the various Nike Air dampened shoes do their job wonderfully.&lt;br /&gt;
&lt;br /&gt;
&lt;h5&gt;Time and shoes are changing&lt;/h5&gt;&lt;div&gt;Lately new ideas about running shoes are getting more and more mainstream. The fully comfortable running shoe now has a version which more close to nature. The idea being that the foot loses its natural stability and muscle power since it is comfortably supported and strapped in inside a sturdy and soft and easy dampened shoe.&lt;/div&gt;&lt;div&gt;Natural running is closer to the way many of the African athletes train: on their bare feet.&lt;/div&gt;&lt;div&gt;Natural running supposedly makes your feet muscles stronger and also changes your way of running and ideally improving it.&lt;/div&gt;&lt;div&gt;&lt;h5&gt;&lt;a class=&quot;zem_slink&quot; href=&quot;http://en.wikipedia.org/wiki/Nike_Free&quot; rel=&quot;wikipedia&quot; title=&quot;Nike Free&quot;&gt;Nike Free&lt;/a&gt;&amp;nbsp;&lt;/h5&gt;&lt;/div&gt;&lt;div&gt;When I was in the Nike Headquarters in &lt;a class=&quot;zem_slink&quot; href=&quot;http://maps.google.com/maps?ll=45.4869444444,-122.803611111&amp;amp;spn=0.1,0.1&amp;amp;q=45.4869444444,-122.803611111%20(Beaverton%2C%20Oregon)&amp;amp;t=h&quot; rel=&quot;geolocation&quot; title=&quot;Beaverton, Oregon&quot;&gt;Beaverton, Oregon&lt;/a&gt; in 2003 I was shown one of the prototypes of the Nike Free shoe. The Nike Free shoes have a very flexible outer sole and the top of the shoe gives less rigid support. You can role them up easily.&lt;/div&gt;&lt;div&gt;But still they provide quite a bit of damping.&lt;/div&gt;&lt;div&gt;&lt;h5&gt;&lt;a class=&quot;zem_slink&quot; href=&quot;http://www.vibramfivefingers.com/&quot; rel=&quot;homepage&quot; title=&quot;Vibram Five Fingers&quot;&gt;Vibram Fivefingers&lt;/a&gt;&lt;/h5&gt;&lt;/div&gt;&lt;div&gt;The Vibram Fivefingers are a whole step further. They are completely minimalistic. No damping and the upper part of the shoes is as light as possible. To provide even more freedom through the use of five separate toe compartments.&lt;/div&gt;&lt;div&gt;The outer sole is, as can be expected from Vibram, a good wear and tear resistant rubber giving good grip but also minimal damping. With that the Vibram Fivefingers come much closer to true &lt;a class=&quot;zem_slink&quot; href=&quot;http://en.wikipedia.org/wiki/Barefoot_running&quot; rel=&quot;wikipedia&quot; title=&quot;Barefoot running&quot;&gt;barefoot running&lt;/a&gt; than the Nike Free concept.&lt;/div&gt;&lt;div&gt;&lt;h5&gt;Being a bit of a geek&lt;/h5&gt;&lt;/div&gt;&lt;div&gt;Yep, as the geek I am, I was interested in both the Nike Free concept and later on also the true &quot;barefoot running&quot; idea. I wanted to try them sometime. But it never really happened.&lt;/div&gt;&lt;div&gt;Until I saw a tweet come by on my Twitter timeline. It was one of those &quot;retweet this and you have chance to win ...&quot;. This time you could win a pair of Vibram Fivefingers. Not really expecting to win anything I did retweet and went on with my work.&lt;/div&gt;&lt;div class=&quot;callout&quot;&gt;&lt;h5&gt;Want to win FiveFingers yourself?&lt;/h5&gt;&lt;img border=&quot;0&quot; height=&quot;60&quot; src=&quot;http://www.myfivefingers.com/wp-content/themes/FiveFingersBlog/images/logo.png&quot; width=&quot;200&quot; /&gt;&lt;br /&gt;
&lt;p&gt;Easy! &amp;nbsp;Go over to &lt;a href=&quot;http://www.myfivefingers.com/win-fivefingers/&quot;&gt;this page&lt;/a&gt; and hope for the best!&lt;/p&gt;&lt;/div&gt;&lt;div&gt;A few hours later I found myself exchanging my shoesize and address to receive a pair of Vibram Bakilas!&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgWQ_xtMOBUJ9t6F0h_b7pe2hEff3Blm873ammIxlxgRj7rHl2eDn0Zhhjj9BVcVWvA5a0NPzGbcIPSbFnTsJxy8mHJWTCjuXvwrrwdlKRHCypeZXwx9rghtpHVsZNkJ1YeNVEUrQ/s1600/Yes.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;191&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgWQ_xtMOBUJ9t6F0h_b7pe2hEff3Blm873ammIxlxgRj7rHl2eDn0Zhhjj9BVcVWvA5a0NPzGbcIPSbFnTsJxy8mHJWTCjuXvwrrwdlKRHCypeZXwx9rghtpHVsZNkJ1YeNVEUrQ/s320/Yes.jpg&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div&gt;&lt;h5&gt;&amp;nbsp;First impressions&lt;/h5&gt;Now I have them for a couple of weeks and I have been running them on ever longer stretches. I must say that I am completely amazed by them.&lt;br /&gt;
It takes some getting used to and I am still trying to find a new perfect style of running. But I think that is something positive. On my normal luxury running shoes I never really think about the way I run, I just put one foot in front of the other. I do pay some attention to my arms and upper body, but that&#39;s it. Most of the running is done without thinking about it. In this respect barefoot running makes me thinking about the way I walk.&lt;br /&gt;
The other part that really amazes me that I do not feel anything special in my muscles. I had expected that without the shock absorbing sole I would feel my muscles and knees. Whenever the absorbing qualities of my normal shoes would drop these are the first things I notice.&lt;br /&gt;
But even with close to no shock absorbing there are repercussions. This amazes me still as I gradually build of the length and intensity of my runs.&lt;br /&gt;
I still run on my Nike shoes, but I try to do every other run on my Vibrams.&lt;br /&gt;
&lt;br /&gt;
&lt;h5&gt;Conclusion&lt;/h5&gt;&lt;div&gt;I must say that this barefoot running on the Vibram Bakilas have more than amazed me. I am truly enthousiastic. As I have no Nike Free shoes to compare them to (&lt;i&gt;hint hint&lt;/i&gt;) I can&#39;t comment on that.&lt;/div&gt;&lt;div&gt;At the very least the Vibrams have made think about my running and my posture and also they have once again breathed new life into my running adventures.&lt;/div&gt;&lt;div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiWjpdgvyuUE50xtIOaq5d0FbKIVsXFVig7qLxm2r9GV-M3dpzaFB0tTI14wYZk5_u4qAJqI9XX0CMGhDgvs2V5RauV_7l_gFzjRgz1eMyTAZO4l6-KX_yy5x0-nkIY_3JT2VQbtA/s1600/vibram.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;274&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiWjpdgvyuUE50xtIOaq5d0FbKIVsXFVig7qLxm2r9GV-M3dpzaFB0tTI14wYZk5_u4qAJqI9XX0CMGhDgvs2V5RauV_7l_gFzjRgz1eMyTAZO4l6-KX_yy5x0-nkIY_3JT2VQbtA/s320/vibram.jpg&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;I love my Bakilas!&lt;/div&gt;&lt;div&gt;&lt;h5&gt;Finally&lt;/h5&gt;&lt;/div&gt;&lt;div&gt;Some other things you can do with Vibram Fivefingers ;-)&lt;/div&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;iframe allowfullscreen=&#39;allowfullscreen&#39; webkitallowfullscreen=&#39;webkitallowfullscreen&#39; mozallowfullscreen=&#39;mozallowfullscreen&#39; width=&#39;320&#39; height=&#39;266&#39; src=&#39;https://www.youtube.com/embed/yJ60Px2oO-U?feature=player_embedded&#39; frameborder=&#39;0&#39;&gt;&lt;/iframe&gt;&lt;/div&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;/div&gt;&lt;br /&gt;
&lt;div class=&quot;zemanta-related&quot;&gt;&lt;h6 class=&quot;zemanta-related-title&quot;&gt;Related articles&lt;/h6&gt;&lt;ul class=&quot;zemanta-article-ul&quot;&gt;&lt;li class=&quot;zemanta-article-ul-li&quot;&gt;&lt;a href=&quot;http://joemaller.com/2022/from-asics-kayanos-to-nike-frees-to-vibram-fivefingers-and-beyond/&quot;&gt;From Asics Kayanos to Nike Frees to Vibram FiveFingers and beyond&lt;/a&gt; (joemaller.com)&lt;/li&gt;
&lt;li class=&quot;zemanta-article-ul-li&quot;&gt;&lt;a href=&quot;http://www.fitsugar.com/Scarlett-Johansson-Vibram-FIveFingers-Barefoot-Running-Shoes-15654062&quot;&gt;Scarlett Johansson Runs Barefoot - Do You?&lt;/a&gt; (fitsugar.com)&lt;/li&gt;
&lt;li class=&quot;zemanta-article-ul-li&quot;&gt;&lt;a href=&quot;http://www.huffingtonpost.com/arthur-rosenfeld/free-your-feet-change-you_b_845983.html&quot;&gt;Arthur Rosenfeld: Free Your Feet, Change Your Life&lt;/a&gt; (huffingtonpost.com)&lt;/li&gt;
&lt;li class=&quot;zemanta-article-ul-li&quot;&gt;&lt;a href=&quot;http://healthheralds.wordpress.com/2011/03/22/introduction-to-barefoot-running/&quot;&gt;Introduction to Barefoot Running&lt;/a&gt; (healthheralds.wordpress.com)&lt;/li&gt;
&lt;li class=&quot;zemanta-article-ul-li&quot;&gt;&lt;a href=&quot;http://www.dailymile.com/people/RobHofker&quot;&gt;My running profile on Dailymile.com&lt;/a&gt;&amp;nbsp;(dailymile.com)&lt;/li&gt;
&lt;/ul&gt;&lt;/div&gt;&lt;div class=&quot;zemanta-pixie&quot;&gt;&lt;a class=&quot;zemanta-pixie-a&quot; href=&quot;http://www.zemanta.com/&quot; title=&quot;Enhanced by Zemanta&quot;&gt;&lt;img alt=&quot;Enhanced by Zemanta&quot; class=&quot;zemanta-pixie-img&quot; src=&quot;http://img.zemanta.com/zemified_e.png?x-id=c0c79b58-4358-4239-9b3f-b9b1ed0fe8e1&quot; /&gt;&lt;/a&gt;&lt;span class=&quot;zem-script more-related pretty-attribution&quot;&gt;&lt;script defer=&quot;defer&quot; src=&quot;http://static.zemanta.com/readside/loader.js&quot; type=&quot;text/javascript&quot;&gt;
&lt;/script&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;hr /&gt;
&lt;a href=&quot;http://blog.mahimba.com&quot;&gt;&lt;img border=&quot;0&quot;
src=&quot;http://bp3.blogger.com/_Asp8txadpj8/RpX20ZGPK0I/AAAAAAAAAgk/0qdVP5IrH_Y/s320/banaan.gif&quot;
alt=&quot;Mahimba Blog&quot; /&gt;&lt;/a&gt;
&lt;hr /&gt;
&lt;a href=&quot;mailto:rob.hofker@gmail.com&quot;&gt;Go ahead and spam me!&lt;/a&gt;
 or visit me at 
&lt;a href=&quot;http://www.roho-products.nl&quot;&gt;Roho Products - Web design - Steenwijk&lt;/a&gt;
&lt;!-- Oy you! Why are you looking at the source code of this feed? Not much to see here. Bye now! --&gt;
&lt;hr /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://roho2003.blogspot.com/feeds/5211296581271100982/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://roho2003.blogspot.com/2011/04/barefoot-running.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5176856/posts/default/5211296581271100982'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5176856/posts/default/5211296581271100982'/><link rel='alternate' type='text/html' href='http://roho2003.blogspot.com/2011/04/barefoot-running.html' title='Barefoot running'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/03880668956776986361</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgWQ_xtMOBUJ9t6F0h_b7pe2hEff3Blm873ammIxlxgRj7rHl2eDn0Zhhjj9BVcVWvA5a0NPzGbcIPSbFnTsJxy8mHJWTCjuXvwrrwdlKRHCypeZXwx9rghtpHVsZNkJ1YeNVEUrQ/s72-c/Yes.jpg" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5176856.post-4363635534017811035</id><published>2011-04-28T12:06:00.000+02:00</published><updated>2011-04-28T12:06:26.628+02:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="QR Code"/><title type='text'>QR codes</title><content type='html'>&lt;h4&gt;.. every blog should have one&lt;/h4&gt;Since it seems to be part of a hype I can not be left behind.&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiuXhH6P1c0uDAFxAoyXDfWwur760E8VUncOQBgZETIC0gi9dfNeDSQBrAwkW9aUT8ij0CKMRaLO3vQ_1va0Mh-C_lQIUCQy9pe5-Qw97UzCSUHHLFOYMlmE-YIFSsJ9qEy63sGjg/s1600/qrcode_212.121.111.49_1303305561_is64826.jpg&quot; imageanchor=&quot;1&quot; style=&quot;clear: left; float: left; margin-bottom: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;400&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiuXhH6P1c0uDAFxAoyXDfWwur760E8VUncOQBgZETIC0gi9dfNeDSQBrAwkW9aUT8ij0CKMRaLO3vQ_1va0Mh-C_lQIUCQy9pe5-Qw97UzCSUHHLFOYMlmE-YIFSsJ9qEy63sGjg/s400/qrcode_212.121.111.49_1303305561_is64826.jpg&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
&lt;div class=&quot;zemanta-pixie&quot;&gt;&lt;a class=&quot;zemanta-pixie-a&quot; href=&quot;http://www.zemanta.com/&quot; title=&quot;Enhanced by Zemanta&quot;&gt;&lt;img alt=&quot;Enhanced by Zemanta&quot; class=&quot;zemanta-pixie-img&quot; src=&quot;http://img.zemanta.com/zemified_e.png?x-id=6b7f7936-cc6e-4f29-8c89-5d1dd1ea6346&quot; /&gt;&lt;/a&gt;&lt;span class=&quot;zem-script more-related pretty-attribution&quot;&gt;&lt;script defer=&quot;defer&quot; src=&quot;http://static.zemanta.com/readside/loader.js&quot; type=&quot;text/javascript&quot;&gt;
&lt;/script&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;hr /&gt;
&lt;a href=&quot;http://blog.mahimba.com&quot;&gt;&lt;img border=&quot;0&quot;
src=&quot;http://bp3.blogger.com/_Asp8txadpj8/RpX20ZGPK0I/AAAAAAAAAgk/0qdVP5IrH_Y/s320/banaan.gif&quot;
alt=&quot;Mahimba Blog&quot; /&gt;&lt;/a&gt;
&lt;hr /&gt;
&lt;a href=&quot;mailto:rob.hofker@gmail.com&quot;&gt;Go ahead and spam me!&lt;/a&gt;
 or visit me at 
&lt;a href=&quot;http://www.roho-products.nl&quot;&gt;Roho Products - Web design - Steenwijk&lt;/a&gt;
&lt;!-- Oy you! Why are you looking at the source code of this feed? Not much to see here. Bye now! --&gt;
&lt;hr /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://roho2003.blogspot.com/feeds/4363635534017811035/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://roho2003.blogspot.com/2011/04/qr-codes.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5176856/posts/default/4363635534017811035'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5176856/posts/default/4363635534017811035'/><link rel='alternate' type='text/html' href='http://roho2003.blogspot.com/2011/04/qr-codes.html' title='QR codes'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/03880668956776986361</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiuXhH6P1c0uDAFxAoyXDfWwur760E8VUncOQBgZETIC0gi9dfNeDSQBrAwkW9aUT8ij0CKMRaLO3vQ_1va0Mh-C_lQIUCQy9pe5-Qw97UzCSUHHLFOYMlmE-YIFSsJ9qEy63sGjg/s72-c/qrcode_212.121.111.49_1303305561_is64826.jpg" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5176856.post-2962847873036514119</id><published>2011-01-18T12:21:00.002+01:00</published><updated>2011-01-19T08:14:06.193+01:00</updated><category scheme="http://www.blogger.com/atom/ns#" term=".NET assembly"/><category scheme="http://www.blogger.com/atom/ns#" term="Microsoft"/><title type='text'>The module was expected to contain an assembly manifest</title><content type='html'>&lt;h4&gt;..  Could not load file or &lt;a class=&quot;zem_slink&quot; href=&quot;http://en.wikipedia.org/wiki/.NET_assembly&quot; rel=&quot;wikipedia&quot; title=&quot;.NET assembly&quot;&gt;assembly&lt;/a&gt; &#39;Microsoft.ReportViewer.Common..&#39;&lt;/h4&gt;In the project I am currently involved in we had created some nice reports and had these render directly as &lt;a class=&quot;zem_slink&quot; href=&quot;http://www.adobe.com/devnet/pdf/pdf_reference_archive.html&quot; rel=&quot;homepage&quot; title=&quot;Portable Document Format&quot;&gt;PDF file&lt;/a&gt; to the browser. Worked great on my machine and on my colleague&#39;s machine. And then deploying it to our test environment that sits on a &lt;a class=&quot;zem_slink&quot; href=&quot;http://en.wikipedia.org/wiki/Shared_web_hosting_service&quot; rel=&quot;wikipedia&quot; title=&quot;Shared web hosting service&quot;&gt;shared hosting&lt;/a&gt; server it failed.&lt;br /&gt;
&lt;strong class=&quot;code&quot;&gt;Could not load file or assembly &#39;Microsoft.ReportViewer.Common, Version=9.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a&#39; or one of its dependencies. The module was expected to contain an assembly manifest.&lt;/strong&gt;&lt;br /&gt;
Clearly a security issue that will easily go away when you put the necessary assemblies in the GAC. But with shared hosting that is probably not an option. The hosting party will allow that nor facilitate.&lt;br /&gt;
&lt;div class=&quot;zemanta-img&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;http://www.flickr.com/photos/33152876@N08/5363736238/&quot;&gt;&lt;img alt=&quot;Monday Monday ~~~~~~~~~~~&quot; height=&quot;240&quot; src=&quot;http://farm6.static.flickr.com/5122/5363736238_7fcd5fe580_m.jpg&quot; width=&quot;240&quot; /&gt;&lt;/a&gt;&lt;span class=&quot;zemanta-img-attribution&quot;&gt;Image by &lt;a href=&quot;http://www.flickr.com/photos/33152876@N08/5363736238/&quot;&gt;Trish Hamme ≧◡≦&lt;/a&gt; via Flickr&lt;/span&gt;&lt;/div&gt;&lt;h5&gt;Trying to figure out a solution&lt;/h5&gt;It took some Googling about with not much result but then I found &lt;a href=&quot;http://www.orcsweb.com/blog/desiree/access-report-viewer-dll-files-for-your-application/&quot;&gt;this webpage&lt;/a&gt;&amp;nbsp;that explains a simple solution to the problem. And hey presto! It works! Thanks, Desirée Harris from &lt;a href=&quot;http://www.orcsweb.com/&quot;&gt;OrcsWeb&lt;/a&gt;. You just made our day!&lt;br /&gt;
&lt;div class=&quot;zemanta-pixie&quot;&gt;&lt;a class=&quot;zemanta-pixie-a&quot; href=&quot;http://www.zemanta.com/&quot; title=&quot;Enhanced by Zemanta&quot;&gt;&lt;img alt=&quot;Enhanced by Zemanta&quot; class=&quot;zemanta-pixie-img&quot; src=&quot;http://img.zemanta.com/zemified_e.png?x-id=e1c7d6c0-0d4a-4cc2-87e0-7f4a76280ed8&quot; /&gt;&lt;/a&gt;&lt;span class=&quot;zem-script more-related pretty-attribution&quot;&gt;&lt;script defer=&quot;defer&quot; src=&quot;http://static.zemanta.com/readside/loader.js&quot; type=&quot;text/javascript&quot;&gt;
&lt;/script&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;hr /&gt;
&lt;a href=&quot;http://blog.mahimba.com&quot;&gt;&lt;img border=&quot;0&quot;
src=&quot;http://bp3.blogger.com/_Asp8txadpj8/RpX20ZGPK0I/AAAAAAAAAgk/0qdVP5IrH_Y/s320/banaan.gif&quot;
alt=&quot;Mahimba Blog&quot; /&gt;&lt;/a&gt;
&lt;hr /&gt;
&lt;a href=&quot;mailto:rob.hofker@gmail.com&quot;&gt;Go ahead and spam me!&lt;/a&gt;
 or visit me at 
&lt;a href=&quot;http://www.roho-products.nl&quot;&gt;Roho Products - Web design - Steenwijk&lt;/a&gt;
&lt;!-- Oy you! Why are you looking at the source code of this feed? Not much to see here. Bye now! --&gt;
&lt;hr /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://roho2003.blogspot.com/feeds/2962847873036514119/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://roho2003.blogspot.com/2011/01/module-was-expected-to-contain-assembly.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5176856/posts/default/2962847873036514119'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5176856/posts/default/2962847873036514119'/><link rel='alternate' type='text/html' href='http://roho2003.blogspot.com/2011/01/module-was-expected-to-contain-assembly.html' title='The module was expected to contain an assembly manifest'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/03880668956776986361</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://farm6.static.flickr.com/5122/5363736238_7fcd5fe580_t.jpg" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5176856.post-2144353606370429517</id><published>2010-12-22T14:04:00.001+01:00</published><updated>2010-12-22T14:11:09.857+01:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="coding practices"/><category scheme="http://www.blogger.com/atom/ns#" term="horror"/><category scheme="http://www.blogger.com/atom/ns#" term="Programming"/><title type='text'>Coding practices, part 1</title><content type='html'>&lt;h4&gt;.. hold on tight&lt;/h4&gt;Various have been the places I have worked at and even more so the people I have worked with. Sometimes it was a good experience where both parties benefited, but sometimes it was a struggle.&lt;br /&gt;
One of the downsides is that I have had to work with &lt;a class=&quot;zem_slink&quot; href=&quot;http://en.wikipedia.org/wiki/Source_code&quot; rel=&quot;wikipedia&quot; title=&quot;Source code&quot;&gt;code&lt;/a&gt; produced to varying standards if there was something like a standard at all. In this little series of blog posts I will highlight some of the examples that I have encountered over the years. Most of these are related to C# but probably apply to more situations. If so, you have my condelances.&lt;br /&gt;
&lt;h5&gt;Make me search like forever&lt;/h5&gt;One of the great things of freedom in structuring classes, codes and files is that you can do things in all kinds of ways. That is exactly the downside as well. You can put things all over the place without any logical connection between them:&lt;br /&gt;
&lt;ul&gt;&lt;li&gt;Put multiple public classes in one file.&lt;/li&gt;
&lt;li&gt;Name the file different from the class that’s inside.&lt;/li&gt;
&lt;li&gt;Don’t use the namespace according to the folder the file is in.&lt;/li&gt;
&lt;li&gt;Name the project different from the name of the assembly.&lt;/li&gt;
&lt;li&gt;Put in a folder with yet a different name.&lt;/li&gt;
&lt;li&gt;Cherry on the cake: make it completely different in source control where possible.&lt;/li&gt;
&lt;/ul&gt;I only hope that this covers all possible obscurity.&lt;br /&gt;
&lt;h5&gt;Taking for granted that we now know every possible option&lt;/h5&gt;Let&#39;s consider a simple enumeration giving us a choice of direction.&lt;br /&gt;
&lt;pre&gt;public &lt;a class=&quot;zem_slink&quot; href=&quot;http://en.wikipedia.org/wiki/Enumerated_type&quot; rel=&quot;wikipedia&quot; title=&quot;Enumerated type&quot;&gt;enum&lt;/a&gt; Direction
{
    Left,
    Right
}
&lt;/pre&gt;Now let&#39;s say you are at least clever enough to consider using &lt;a class=&quot;zem_slink&quot; href=&quot;http://en.wikipedia.org/wiki/Switch_statement&quot; rel=&quot;wikipedia&quot; title=&quot;Switch statement&quot;&gt;switch-statement&lt;/a&gt; instead of a if-statement to implement this in your code. Still, you have multiple ways to make this work or not.&lt;br /&gt;
Suppose you need this in a method that returns something based on the direction.&lt;br /&gt;
&lt;h6&gt;Good&lt;/h6&gt;Be sure to have a default option.&lt;br /&gt;
&lt;pre&gt;switch (direction)
{
    case Direction.Left:
        return SomethingLeft();
    case Direction.Right:
        return SomethingRight();
    default:
        return null;
}&lt;/pre&gt;&lt;h6&gt;Better&lt;/h6&gt;Maybe returning a null-value is not desired or maybe even SomethingLeft() can return null then it&#39;s probably better to throw an exception.&lt;br /&gt;
&lt;pre&gt;switch (direction)
{
    case Direction.Left:
        return SomethingLeft()
    case Direction.Rightt:
        return SomethingRight();
    default:
        throw new ArgumentOutOfRangeException(&quot;direction&quot;);
}&lt;/pre&gt;&lt;h6&gt;Bad&lt;/h6&gt;Somepeople think that writing less code is better.&lt;br /&gt;
&lt;pre&gt;switch (direction)
{
    case Direction.Left:
   &amp;nbsp;    return SomethingLeft();
    default:
        return SomethingRight();
}&lt;/pre&gt;What now if someone thinks we shoud be able to go 3D?&lt;br /&gt;
&lt;pre&gt;public enum Direction
{
    Left,
    Right,
    Up,
    Down
}&lt;/pre&gt;&lt;div class=&quot;zemanta-img&quot;&gt;&lt;a href=&quot;http://en.wikipedia.org/wiki/File:XYZ_model.jpg&quot;&gt;&lt;img alt=&quot;A right-handed Cartesian coordinate system, il...&quot; src=&quot;http://upload.wikimedia.org/wikipedia/en/thumb/3/30/XYZ_model.jpg/300px-XYZ_model.jpg&quot; /&gt;&lt;/a&gt;&lt;span class=&quot;zemanta-img-attribution&quot;&gt;Image via &lt;a href=&quot;http://en.wikipedia.org/wiki/File:XYZ_model.jpg&quot;&gt;Wikipedia&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;Or maybe an old sailor becomes architect and decides to use this:&lt;br /&gt;
&lt;pre&gt;public enum Direction
{
    East,
    West,
    North,
    South
}&lt;/pre&gt;We could do something like global search and replace or a refactor action, but the bad code will probably not do what we want.&lt;br /&gt;
&lt;h5&gt;Seen all these&lt;/h5&gt;I have seen the above examples and have frowned at them. I have improved the code where possible and have given up on trying to educate some of the people who wrote the code.&lt;br /&gt;
More examples will follow.&lt;br /&gt;
&lt;div class=&quot;zemanta-pixie&quot;&gt;&lt;a class=&quot;zemanta-pixie-a&quot; href=&quot;http://www.zemanta.com/&quot; title=&quot;Enhanced by Zemanta&quot;&gt;&lt;img alt=&quot;Enhanced by Zemanta&quot; class=&quot;zemanta-pixie-img&quot; src=&quot;http://img.zemanta.com/zemified_e.png?x-id=63ca0913-d92f-4c56-8bff-3fcf14762d72&quot; /&gt;&lt;/a&gt;&lt;span class=&quot;zem-script more-related pretty-attribution&quot;&gt;&lt;script defer=&quot;defer&quot; src=&quot;http://static.zemanta.com/readside/loader.js&quot; type=&quot;text/javascript&quot;&gt;
&lt;/script&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;hr /&gt;
&lt;a href=&quot;http://blog.mahimba.com&quot;&gt;&lt;img border=&quot;0&quot;
src=&quot;http://bp3.blogger.com/_Asp8txadpj8/RpX20ZGPK0I/AAAAAAAAAgk/0qdVP5IrH_Y/s320/banaan.gif&quot;
alt=&quot;Mahimba Blog&quot; /&gt;&lt;/a&gt;
&lt;hr /&gt;
&lt;a href=&quot;mailto:rob.hofker@gmail.com&quot;&gt;Go ahead and spam me!&lt;/a&gt;
 or visit me at 
&lt;a href=&quot;http://www.roho-products.nl&quot;&gt;Roho Products - Web design - Steenwijk&lt;/a&gt;
&lt;!-- Oy you! Why are you looking at the source code of this feed? Not much to see here. Bye now! --&gt;
&lt;hr /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://roho2003.blogspot.com/feeds/2144353606370429517/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://roho2003.blogspot.com/2010/12/coding-practices-part-1.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5176856/posts/default/2144353606370429517'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5176856/posts/default/2144353606370429517'/><link rel='alternate' type='text/html' href='http://roho2003.blogspot.com/2010/12/coding-practices-part-1.html' title='Coding practices, part 1'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/03880668956776986361</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total><georss:featurename>Burgemeester Roelenweg 8, 8021 Zwolle, Nederland</georss:featurename><georss:point>52.5167372 6.0877257</georss:point><georss:box>52.5134727 6.0804302 52.5200017 6.0950212</georss:box></entry><entry><id>tag:blogger.com,1999:blog-5176856.post-7066333338502386432</id><published>2010-11-22T15:49:00.001+01:00</published><updated>2010-11-23T09:11:44.120+01:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="client"/><category scheme="http://www.blogger.com/atom/ns#" term="ContractFilter mismatch EndpointDispatcher"/><category scheme="http://www.blogger.com/atom/ns#" term="service"/><category scheme="http://www.blogger.com/atom/ns#" term="WCF"/><title type='text'>A very weird bug</title><content type='html'>&lt;h4&gt;.. with an even weirder resolution&lt;/h4&gt;
&lt;p&gt;The other day I was working with a consultant from another firm to try connect our systems together. Previously we had exchanged WSDLs and even a stub service so we didn&#39;t expect to many problems implementing the real stuff.&lt;/p&gt;
&lt;p&gt;The other client had brought his own laptop and that was quickly hooked up into the network. That was an easy start.&lt;/p&gt;
&lt;h5&gt;But ...&lt;/h5&gt;
&lt;p&gt;Things started to get really weird when I tried to connect my client app to his service. To make it a little more clear to you all: the service was a .NET 3.5 WCF Service and I was consuming it using a .NET 2.0 webservice client. The 2.0 bit was manadtory as our application is still limited to that version of the .NET Framework.&lt;/p&gt;
&lt;p&gt;We were greeted with the following very weird error:&lt;/p&gt;
&lt;code&gt;The message with Action &#39;http://tempuri.org/ITheOtherService/GetObjects&#39; cannot be processed at the receiver, due to a ContractFilter mismatch at the EndpointDispatcher. This may be because of either a contract mismatch (mismatched Actions between sender and receiver) or a binding/security mismatch between the sender and the receiver.  Check that sender and receiver have the same contract and the same binding (including security requirements, e.g. Message, Transport, None).&lt;/code&gt;
&lt;p&gt;Googling it didn&#39;t give me a clue.&lt;/p&gt;
&lt;p&gt;To add some more info: he was running his own domain and Active Directory on his machine. And I also had to use a NetworkCredential to get access to the service. I could see the MEX output in Internet Explorer (using the correct credentials) so connection was verified. We were connecting using the IP address of his machine.&lt;/p&gt;
&lt;h5&gt;Question marks all over&lt;/h5&gt;
&lt;p&gt;Completely baffled he gave me a test application that he had used to test the setup with a colleague in his office. We got a error message that prompted me to add the hostname and IP address to my hosts file. We had an error about linked XSD files that couldn&#39;t be found because the hostname could ot be resolved.&lt;/p&gt;
&lt;p&gt;After that little hack we had no problem making call and getting results. Completly stunned we stared at our screens. OK, fine by me.&lt;/p&gt;
&lt;p&gt;The big application where all the work was made still did not function. Still showing the same error message.&lt;/p&gt;
&lt;p&gt;Another even simpler app was created, making a simple call to the service. And it worked. But still not in the big application we needed to hook up.&lt;/p&gt;
&lt;h5&gt;Details are the devil&#39;s hiding place&lt;/h5&gt;
&lt;p&gt;In another test run I then saw that I had configured the big application using the IP address. The hostname was not yet in the hosts file when I first configured the service address.&lt;/p&gt;
&lt;p&gt;The test applications we used both of them used the host name in stead of the IP address and they worked.&lt;/p&gt;
&lt;p&gt;After having changed the configuration to use the hostname evrything started working.&lt;/p&gt;
&lt;p&gt;I still haven&#39;t found out why it did.&lt;/p&gt;
&lt;h5&gt;Well, who cares?&lt;/h5&gt;
&lt;p&gt;We then continued to do the testing and had to make onlysome small changes as we both had done a great job in building our apps to mutual specs. So, it was all in all a great success. But something keeps itching me.&lt;/p&gt;
&lt;p&gt;Well, who cares why it worked with hostnam? Well I do care! I have no real idea what the reason is why it worked one way and not the other. SO, if any of you can point me to the reason of this, please leave it in a comment.&lt;/p&gt;
&lt;p&gt;Also, maybe this story helps you to solve your weird error. If so, please leave a commoent.&lt;/p&gt;&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;hr /&gt;
&lt;a href=&quot;http://blog.mahimba.com&quot;&gt;&lt;img border=&quot;0&quot;
src=&quot;http://bp3.blogger.com/_Asp8txadpj8/RpX20ZGPK0I/AAAAAAAAAgk/0qdVP5IrH_Y/s320/banaan.gif&quot;
alt=&quot;Mahimba Blog&quot; /&gt;&lt;/a&gt;
&lt;hr /&gt;
&lt;a href=&quot;mailto:rob.hofker@gmail.com&quot;&gt;Go ahead and spam me!&lt;/a&gt;
 or visit me at 
&lt;a href=&quot;http://www.roho-products.nl&quot;&gt;Roho Products - Web design - Steenwijk&lt;/a&gt;
&lt;!-- Oy you! Why are you looking at the source code of this feed? Not much to see here. Bye now! --&gt;
&lt;hr /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://roho2003.blogspot.com/feeds/7066333338502386432/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://roho2003.blogspot.com/2010/11/very-weird-bug.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5176856/posts/default/7066333338502386432'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5176856/posts/default/7066333338502386432'/><link rel='alternate' type='text/html' href='http://roho2003.blogspot.com/2010/11/very-weird-bug.html' title='A very weird bug'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/03880668956776986361</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5176856.post-1009822133170791813</id><published>2010-11-15T10:07:00.002+01:00</published><updated>2010-11-23T09:10:38.331+01:00</updated><category scheme="http://www.blogger.com/atom/ns#" term=".NET"/><category scheme="http://www.blogger.com/atom/ns#" term="class"/><category scheme="http://www.blogger.com/atom/ns#" term="developer"/><category scheme="http://www.blogger.com/atom/ns#" term="philosophy"/><title type='text'>A discussion about creation</title><content type='html'>&lt;h4&gt;.. too early in the morning&lt;/h4&gt;
&lt;p&gt;Every now and then I am invited to a job interview to sit at the employers side of the table.&#39;That is kind of fun as well. I do enjoy sitting on the other side, because I have the feeling that I am the one who is to make the decision whether to take the position or not. Once they have invited me for the interview I am pretty close to getting hired. At least that is the mood I try to get myself into on most of these occasions.&lt;/p&gt;
&lt;p&gt;As I am a developer I mostly attend the interviews for developers. I am usually the ally of the prospect in that sense. The manager that sits there as well is most of the time a non-developer. Someone who knows we need someone with .NET and C# skills, but has no real idea what that means. I am there to see if he or she has any real developer&#39;s skills.&lt;/p&gt;
&lt;h5&gt;Questions to ask&lt;/h5&gt;
&lt;p&gt;A colleague of mine has very goo question to ask the candidate. He tells the candidate that we would like the manager start programming or at least understand some more what we are doing. One of the things the manager still can not understand is, what is Object Orientation? Can the candidate explain that so the manager can understand the concept. I have heard some hilarious answers to that question. One of the apparent advantages of Object Orientation is that you can spread the objects across multiple servers. The same candidate explained some of the aspects of OO with a dog as an example, one the methods could be Bark() or Sit(). When asked how one would distribute such behavior across multiple servers he fell silent.&lt;/p&gt;&lt;p&gt;Another good and slightly more tricky question to ask is about difference between the terms class, type and object. I must admit that I had to think about that one to come up with a good example. I propose the following example of a Person class, with as properties: first name, last name and birth date. Let&#39;s pass those along in the constructor and you get to the following code:&lt;/p&gt;
&lt;code&gt;Person person = new Person(firstname, lastname, birth date);&lt;/code&gt;
&lt;p&gt;The first word &quot;Person&quot; is the type of the object &quot;person&quot; being created. The class is Person in which a.o. the used constructed is found.&lt;/p&gt;
&lt;p&gt;All right, purists, kill me in the comments, but it gently.&lt;/p&gt;
&lt;h5&gt;A question to ask&lt;/h5&gt;
&lt;p&gt;I then started to let my mind go wandering where it will go.&lt;/p&gt;
&lt;p&gt;I thought about namespaces. I happened to have been in some discussion with namespaces and doing it better than it was in common practice at this job I was at.&lt;/p&gt;
&lt;p&gt;The class Person would be in something called&lt;/p&gt;
&lt;ul&gt;&lt;li&gt;&lt;span style=&quot;font-family: Courier New;&quot;&gt;Human&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;Then I started expanding:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;span style=&quot;font-family: Courier New;&quot;&gt;Nature.Human&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style=&quot;font-family: Courier New;&quot;&gt;Earth.Nature.Human&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style=&quot;font-family: Courier New;&quot;&gt;Creation.Nature.Human&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style=&quot;font-family: Courier New;&quot;&gt;God.Creation.Nature.Human&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Hmm, sounds like intelligent design. &lt;em&gt;Note that I haven&#39;t named God, that would turn off some other Persons from the namespace &lt;span style=&quot;font-family: Courier New;&quot;&gt;&lt;strong&gt;Hardcore.Christian.God.Creation.Nature.Human&lt;/strong&gt;&lt;/span&gt;.&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;Or for those rather having the Evolution Theory, it could be something like:&lt;/p&gt;
&lt;ul&gt;&lt;li&gt;&lt;span style=&quot;font-family: Courier New;&quot;&gt;Darwin.Evolution.Mammal.Primate.Human&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;But working along these ideas, ultimately, all namespaces would be positioned below God or Darwin. That would be strange idea. And what about the Flying Spaghetti Monster?&lt;/p&gt;
&lt;h5&gt;The God Class&lt;/h5&gt;
&lt;p&gt;Then I found myself wondering about the God class. &quot;You should never create a God class.&quot; It must be one of the ten Developer&#39;s Commandments. Which namespace would that God class be in? I became stuck at this point. I at least understand now why I should never creat a God class, because there is no namespace to put it in.&lt;/p&gt;
&lt;p&gt;On top of that does the God class derive from object? Or from a divine object? Or the other way around: does object derive from God?&lt;/p&gt;
&lt;h5&gt;Philosphical&lt;/h5&gt;
&lt;p&gt;So, there I was completely philosophical before 9 in the morning. Suffice to say, I didn&#39;t get much work done all day. Especially no Divine Work.&lt;/p&gt;
&lt;p&gt;Please someone &lt;strong&gt;help&lt;/strong&gt;! Define devine!&lt;/p&gt;&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;hr /&gt;
&lt;a href=&quot;http://blog.mahimba.com&quot;&gt;&lt;img border=&quot;0&quot;
src=&quot;http://bp3.blogger.com/_Asp8txadpj8/RpX20ZGPK0I/AAAAAAAAAgk/0qdVP5IrH_Y/s320/banaan.gif&quot;
alt=&quot;Mahimba Blog&quot; /&gt;&lt;/a&gt;
&lt;hr /&gt;
&lt;a href=&quot;mailto:rob.hofker@gmail.com&quot;&gt;Go ahead and spam me!&lt;/a&gt;
 or visit me at 
&lt;a href=&quot;http://www.roho-products.nl&quot;&gt;Roho Products - Web design - Steenwijk&lt;/a&gt;
&lt;!-- Oy you! Why are you looking at the source code of this feed? Not much to see here. Bye now! --&gt;
&lt;hr /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://roho2003.blogspot.com/feeds/1009822133170791813/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://roho2003.blogspot.com/2010/11/discussion-about-creation.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5176856/posts/default/1009822133170791813'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5176856/posts/default/1009822133170791813'/><link rel='alternate' type='text/html' href='http://roho2003.blogspot.com/2010/11/discussion-about-creation.html' title='A discussion about creation'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/03880668956776986361</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5176856.post-3459537161391236818</id><published>2010-11-12T20:55:00.002+01:00</published><updated>2010-11-23T09:03:57.692+01:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="scope creep"/><title type='text'>Scope creep can be nasty</title><content type='html'>&lt;h4&gt;.. but scope run seems worse&lt;/h4&gt;
&lt;p&gt;I&#39;ve had it happen way too often on me: scope creep. Slowly, but surely small things get added and one moment you notice that way too much things are happening and need to be done on that small project.&lt;/p&gt;
&lt;p&gt;I have been there and seen it and let it happen and still let it happen way too often. Almost every project scope creep comes creeping in.&lt;/p&gt;
&lt;h5&gt;But it can be worse&lt;/h5&gt;
&lt;p&gt;What is also possible in these &#39;&lt;em&gt;agile&lt;/em&gt;&#39; processes that are so hip these days that scope creep can go so fast that it not just adds some extra, elaborate features, but that it changes the complete application you are working on.&lt;/p&gt;

&lt;h5&gt;Sounds like horror?&lt;/h5&gt;
&lt;p&gt;Maybe this sounds like horror to you, but it can be a blessing as well. It prevents the moment where the client is proudly presented with the end product and then tells you that it is by no way what he wants.&lt;/p&gt;
&lt;p&gt;To me it has been a good experience.&lt;/p&gt;&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;hr /&gt;
&lt;a href=&quot;http://blog.mahimba.com&quot;&gt;&lt;img border=&quot;0&quot;
src=&quot;http://bp3.blogger.com/_Asp8txadpj8/RpX20ZGPK0I/AAAAAAAAAgk/0qdVP5IrH_Y/s320/banaan.gif&quot;
alt=&quot;Mahimba Blog&quot; /&gt;&lt;/a&gt;
&lt;hr /&gt;
&lt;a href=&quot;mailto:rob.hofker@gmail.com&quot;&gt;Go ahead and spam me!&lt;/a&gt;
 or visit me at 
&lt;a href=&quot;http://www.roho-products.nl&quot;&gt;Roho Products - Web design - Steenwijk&lt;/a&gt;
&lt;!-- Oy you! Why are you looking at the source code of this feed? Not much to see here. Bye now! --&gt;
&lt;hr /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://roho2003.blogspot.com/feeds/3459537161391236818/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://roho2003.blogspot.com/2010/11/scope-creep-can-be-nasty.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5176856/posts/default/3459537161391236818'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5176856/posts/default/3459537161391236818'/><link rel='alternate' type='text/html' href='http://roho2003.blogspot.com/2010/11/scope-creep-can-be-nasty.html' title='Scope creep can be nasty'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/03880668956776986361</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5176856.post-2845230624962001995</id><published>2010-11-12T14:46:00.000+01:00</published><updated>2010-11-12T14:46:50.301+01:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="silence"/><title type='text'>I know, I know</title><content type='html'>&lt;h4&gt;.. it&#39;s been too silent&lt;/h4&gt;
&lt;p&gt;Lately I have been busy with loads of stuff and hardly had the time to write some stuff here. But I have some posts in the pipeline. Promise&lt;/p&gt;
&lt;p&gt;It will take some time though, before I can publish as a lot of things are happening.&lt;/p&gt;
&lt;h5&gt;uhm ...&lt;/h5&gt;
&lt;p&gt;I&#39;ll see you soon, I hope.&lt;/p&gt;&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;hr /&gt;
&lt;a href=&quot;http://blog.mahimba.com&quot;&gt;&lt;img border=&quot;0&quot;
src=&quot;http://bp3.blogger.com/_Asp8txadpj8/RpX20ZGPK0I/AAAAAAAAAgk/0qdVP5IrH_Y/s320/banaan.gif&quot;
alt=&quot;Mahimba Blog&quot; /&gt;&lt;/a&gt;
&lt;hr /&gt;
&lt;a href=&quot;mailto:rob.hofker@gmail.com&quot;&gt;Go ahead and spam me!&lt;/a&gt;
 or visit me at 
&lt;a href=&quot;http://www.roho-products.nl&quot;&gt;Roho Products - Web design - Steenwijk&lt;/a&gt;
&lt;!-- Oy you! Why are you looking at the source code of this feed? Not much to see here. Bye now! --&gt;
&lt;hr /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://roho2003.blogspot.com/feeds/2845230624962001995/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://roho2003.blogspot.com/2010/11/i-know-i-know.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5176856/posts/default/2845230624962001995'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5176856/posts/default/2845230624962001995'/><link rel='alternate' type='text/html' href='http://roho2003.blogspot.com/2010/11/i-know-i-know.html' title='I know, I know'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/03880668956776986361</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5176856.post-1479705102413891836</id><published>2010-05-31T20:51:00.000+02:00</published><updated>2010-05-31T20:51:39.576+02:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Online Communities"/><category scheme="http://www.blogger.com/atom/ns#" term="RSS"/><category scheme="http://www.blogger.com/atom/ns#" term="Social Networking"/><category scheme="http://www.blogger.com/atom/ns#" term="Twitter"/><title type='text'>What do you get from Twitter?</title><content type='html'>&lt;h4&gt;.. because I don&#39;t get it&lt;/h4&gt;
&lt;p&gt;Well Lynsheila, Thanks for your question: &lt;/p&gt;
&lt;blockquote&gt;&quot;Rob, what do you get from &lt;a class=&quot;zem_slink&quot; href=&quot;http://twitter.com&quot; title=&quot;Twitter&quot; rel=&quot;homepage nofollow&quot;&gt;Twitter&lt;/a&gt;? l must be a technophobe because l dont get it, l prefer chatting face to face&quot;&lt;/blockquote&gt;
&lt;h5&gt;A good question&lt;/h5&gt;
&lt;p class=&quot;zemanta-img&quot;&gt;&lt;a href=&quot;http://commons.wikipedia.org/wiki/File:Twitter_Badge_1.png&quot; rel=&quot;nofollow&quot;&gt;&lt;img src=&quot;http://upload.wikimedia.org/wikipedia/commons/1/1b/Twitter_Badge_1.png&quot; alt=&quot;Free twitter badge&quot; /&gt;&lt;/a&gt;&lt;span class=&quot;zemanta-img-attribution&quot;&gt;Image via &lt;a href=&quot;http://commons.wikipedia.org/wiki/File:Twitter_Badge_1.png&quot;&gt;Wikipedia&lt;/a&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;Well, Twitter is quite a lot and that makes it hard to grasp and hard to explain:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;It&#39;s some sort of chat, although mostly public, eventhough you can go private&lt;/li&gt;
&lt;li&gt;It&#39;s also a form of a news reader, nowadays I get more news through Twitter than through &lt;a class=&quot;zem_slink&quot; href=&quot;http://en.wikipedia.org/wiki/RSS&quot; title=&quot;RSS&quot; rel=&quot;wikipedia nofollow&quot;&gt;RSS feeds&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;It&#39;s blazingly fast when something happens anywhere around the world&lt;/li&gt;
&lt;li&gt;I get updates from friends and see what they are up to&lt;/li&gt;
&lt;li&gt;I get insight into the lifes and thoughts of famous people (sport stars, music stars etc) so they almost appear human&lt;/li&gt;
&lt;li&gt;and so much more&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;It has to do with information flow in all sorts of ways that you can easily subscribe to and after some time you can abondan them as easy as that.&lt;/p&gt;
&lt;p&gt;I hear and listen and also speak out through Twitter. So that is what Twitter is to me.&lt;/p&gt;
&lt;h5&gt;So, what is Twitter to you?&lt;/h5&gt;
&lt;p&gt;I dare you, come up with your explanation to Lynsheila and all the others who don&#39;t get it, but want to get it.&lt;/p&gt;&lt;div class=&quot;zemanta-related&quot;&gt;&lt;h6 class=&quot;zemanta-related-title&quot;&gt;Related articles by Zemanta&lt;/h6&gt;&lt;ul class=&quot;zemanta-article-ul&quot;&gt;&lt;li class=&quot;zemanta-article-ul-li&quot;&gt;&lt;a href=&quot;http://e1evation.com/2010/05/28/twitter-marketing-101/&quot; rel=&quot;nofollow&quot;&gt;Twitter marketing 101&lt;/a&gt; (e1evation.com)&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;

&lt;div class=&quot;zemanta-pixie&quot;&gt;&lt;a class=&quot;zemanta-pixie-a&quot; href=&quot;http://reblog.zemanta.com/zemified/4daac83e-1855-47bd-bd93-4b097e3d1504/&quot; title=&quot;Reblog this post [with Zemanta]&quot;&gt;&lt;img class=&quot;zemanta-pixie-img&quot; src=&quot;http://img.zemanta.com/reblog_e.png?x-id=4daac83e-1855-47bd-bd93-4b097e3d1504&quot; alt=&quot;Reblog this post [with Zemanta]&quot; /&gt;&lt;/a&gt;&lt;span class=&quot;zem-script more-related pretty-attribution&quot;&gt;&lt;script type=&quot;text/javascript&quot; src=&quot;http://static.zemanta.com/readside/loader.js&quot; defer=&quot;defer&quot;&gt;&lt;/script&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;hr /&gt;
&lt;a href=&quot;http://blog.mahimba.com&quot;&gt;&lt;img border=&quot;0&quot;
src=&quot;http://bp3.blogger.com/_Asp8txadpj8/RpX20ZGPK0I/AAAAAAAAAgk/0qdVP5IrH_Y/s320/banaan.gif&quot;
alt=&quot;Mahimba Blog&quot; /&gt;&lt;/a&gt;
&lt;hr /&gt;
&lt;a href=&quot;mailto:rob.hofker@gmail.com&quot;&gt;Go ahead and spam me!&lt;/a&gt;
 or visit me at 
&lt;a href=&quot;http://www.roho-products.nl&quot;&gt;Roho Products - Web design - Steenwijk&lt;/a&gt;
&lt;!-- Oy you! Why are you looking at the source code of this feed? Not much to see here. Bye now! --&gt;
&lt;hr /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://roho2003.blogspot.com/feeds/1479705102413891836/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://roho2003.blogspot.com/2010/05/what-do-you-get-from-twitter.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5176856/posts/default/1479705102413891836'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5176856/posts/default/1479705102413891836'/><link rel='alternate' type='text/html' href='http://roho2003.blogspot.com/2010/05/what-do-you-get-from-twitter.html' title='What do you get from Twitter?'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/03880668956776986361</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5176856.post-4271119900030787341</id><published>2010-05-21T08:08:00.000+02:00</published><updated>2010-05-21T08:08:27.742+02:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Android"/><category scheme="http://www.blogger.com/atom/ns#" term="Google"/><category scheme="http://www.blogger.com/atom/ns#" term="Google I/O conference"/><category scheme="http://www.blogger.com/atom/ns#" term="Google TV"/><title type='text'>More amazing news from Google I/O 2010</title><content type='html'>&lt;h4&gt;.. and some things I want&lt;/h4&gt;
&lt;p&gt;Yesterday, 21 May 2010, there was more interesting news from the &lt;a class=&quot;zem_slink&quot; href=&quot;http://google.com&quot; title=&quot;Google&quot; rel=&quot;homepage nofollow&quot;&gt;Google&lt;/a&gt; I/O conference. Again I wish I had been there, especially since they were given away &lt;a class=&quot;zem_slink&quot; href=&quot;http://www.htc.com&quot; title=&quot;HTC&quot; rel=&quot;homepage nofollow&quot;&gt;HTC&lt;/a&gt; EVO to each and every conference attendee. Accept to Google employees. Too bad for &lt;a href=&quot;http://www.mattcutts.com/blog/live-buzzing-day-2-of-the-google-io-keynote/&quot; target=&quot;banana&quot;&gt;Matt&lt;/a&gt;!&lt;/p&gt;
&lt;p class=&quot;zemanta-img&quot;&gt;&lt;a href=&quot;http://www.flickr.com/photos/33758480@N00/4107163663&quot; rel=&quot;nofollow&quot;&gt;&lt;img src=&quot;http://farm3.static.flickr.com/2706/4107163663_9f8ab61fce_m.jpg&quot; alt=&quot;Google&#39;s Matt Cutts @ PubCon 2009&quot; /&gt;&lt;/a&gt;&lt;span class=&quot;zemanta-img-attribution&quot;&gt;Image by &lt;a href=&quot;http://www.flickr.com/photos/33758480@N00/4107163663&quot;&gt;Andy-Beal&lt;/a&gt; via Flickr&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;I should start looking for sponsors for the Google I/O 2011 ...&lt;/p&gt;
&lt;p&gt;Maybe the big announcements were to be expected and have been predicted, still I think these again to be great news. Also I am seriously considering getting my hands on these in the near future.&lt;/p&gt;
&lt;h5&gt;Update to Android&lt;/h5&gt;
&lt;p&gt;Release 2.2 of Android, codename Froyo, is coming. It has better performance and was demonstrated too a very enthousiastic crowd.&lt;/p&gt;
&lt;p&gt;Improvements in various areas have been made.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;The &lt;strong&gt;speed&lt;/strong&gt; has been boosted 2 to 5 times by incorporating a Just In Time (&lt;a class=&quot;zem_slink&quot; href=&quot;http://en.wikipedia.org/wiki/Just-in-time_compilation&quot; title=&quot;Just-in-time compilation&quot; rel=&quot;wikipedia nofollow&quot;&gt;JIT&lt;/a&gt;) compiler.&lt;/li&gt;
&lt;li&gt;It has &lt;strong&gt;enterprise friendly&lt;/strong&gt; enhancements, think &lt;a class=&quot;zem_slink&quot; href=&quot;http://www.microsoft.com/exchange&quot; title=&quot;Microsoft Exchange Server&quot; rel=&quot;homepage nofollow&quot;&gt;Microsoft Exchange&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Extra &lt;strong&gt;API&lt;/strong&gt;s: Application Data Backup API and a Cloud-to-Device API.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Tethering &lt;/strong&gt;and Portable Hotspot, work on your laptop in connection with your mobile phone.&lt;/li&gt;
&lt;li&gt;The &lt;strong&gt;browser&lt;/strong&gt; has been boosted by incorporating the V8 engine. Javascript performance boosted 2 to 3 times.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;My contract for my mobile phone is coming up for renewal, but I seriously consider jumping in on the Android train. It seems to be picking up more and more speed.&lt;/p&gt;
&lt;h5&gt;Google TV&lt;/h5&gt;
&lt;p&gt;Google TV is about using that little laptop screen to watching movies and your laptop and not on that beautiful great widescreen TV you have mounted on the wall. But also about browsing the web on that TV but with limited interface.&lt;/p&gt;
&lt;p&gt;Last year I treated my family and myself on a wonderful Philips Ambi-light flatscreen HD TV. It came with Net TV. A very limited browser on the TV. There are a load of web sites pre loaded and easily chosen, but these are all put there by Philips. The companies behind the sites are paying Philips. I, as the owner of the TV, have no way of putting my own choices up there. I can choose some favorites from the available options, but that&#39;s it.&lt;/p&gt;
&lt;p&gt;Youtube is there but typing in a search query on the remote is going back to text again and there is no way to hookup a wireless keyboard. All in all this Net TV is just not what it should be. I may have used it ten times in ten months.&lt;/p&gt;
&lt;p&gt;Google TV brings the web to your TV, no it makes it part of your TV experience. You watch a football match on a TV channel and can have a Twitter stream in the top right corner or something. Also it promises to make the interaction with the Web much easier. Google TV can be built in into the TV or a separate box.&lt;/p&gt;
&lt;p&gt;As my Philips receives software updates every month or so I just hope that the learn from this announcement and improve their Net TV software in my TV. I doubt it will come close to Google TV. But I have no doubts that in teh near future we will see more and more TV sets coming with better and better internet capabilities. May it be Google TV or not.&lt;/p&gt;
&lt;p&gt;Eventhough I do try to limit the amount of boxes in my living room the day that a Google TV box comes in could be coming sooner than later.&lt;/p&gt;
&lt;h5&gt;It&#39;s over now for this year&lt;/h5&gt;
&lt;p&gt;Luckily it&#39;s only a two day event and that means not another day of big announcements. But these are only the big announcements and more smaller announcements have been made that may have more or less impact on you depending on your occupation and interests.&lt;/p&gt;
&lt;p&gt;Now it&#39;s time to get back to work and let the dust settle and see what other competitors will come up with and how much of these things really gonna do what they look like doing.&lt;/p&gt;
&lt;div class=&quot;zemanta-related&quot;&gt;&lt;h6 class=&quot;zemanta-related-title&quot;&gt;Related articles by Zemanta&lt;/h6&gt;&lt;ul class=&quot;zemanta-article-ul&quot;&gt;&lt;li class=&quot;zemanta-article-ul-li&quot;&gt;&lt;a href=&quot;http://www.mt-soft.com.ar/2010/05/20/android-2-2-froyo-is-a-major-update/&quot; rel=&quot;nofollow&quot;&gt;Android 2.2: Froyo Is a Major Update&lt;/a&gt; (mt-soft.com.ar)&lt;/li&gt;&lt;li class=&quot;zemanta-article-ul-li&quot;&gt;&lt;a href=&quot;http://www.mt-soft.com.ar/2010/05/20/google-tv-announced/&quot; rel=&quot;nofollow&quot;&gt;Google TV Announced&lt;/a&gt; (mt-soft.com.ar)&lt;/li&gt;&lt;li class=&quot;zemanta-article-ul-li&quot;&gt;&lt;a href=&quot;http://arstechnica.com/open-source/news/2010/05/speedy-android-22-hits-with-tethering-push-framework-morespeedy-android-22-hits-with-tethering-push-framework-more.ars&quot; rel=&quot;nofollow&quot;&gt;Speedy Android 2.2 hits with tethering, push framework, more&lt;/a&gt; (arstechnica.com)&lt;/li&gt;&lt;li class=&quot;zemanta-article-ul-li&quot;&gt;&lt;a href=&quot;http://www.wired.com/gadgetlab/2010/05/google-introduces-google-tv/&quot; rel=&quot;nofollow&quot;&gt;Google Introduces Google TV, New Android OS&lt;/a&gt; (wired.com)&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;

&lt;div class=&quot;zemanta-pixie&quot;&gt;&lt;a class=&quot;zemanta-pixie-a&quot; href=&quot;http://reblog.zemanta.com/zemified/68638790-b11f-4ba9-af97-32182b5f9d72/&quot; title=&quot;Reblog this post [with Zemanta]&quot;&gt;&lt;img class=&quot;zemanta-pixie-img&quot; src=&quot;http://img.zemanta.com/reblog_e.png?x-id=68638790-b11f-4ba9-af97-32182b5f9d72&quot; alt=&quot;Reblog this post [with Zemanta]&quot; /&gt;&lt;/a&gt;&lt;span class=&quot;zem-script more-related pretty-attribution&quot;&gt;&lt;script type=&quot;text/javascript&quot; src=&quot;http://static.zemanta.com/readside/loader.js&quot; defer=&quot;defer&quot;&gt;&lt;/script&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;hr /&gt;
&lt;a href=&quot;http://blog.mahimba.com&quot;&gt;&lt;img border=&quot;0&quot;
src=&quot;http://bp3.blogger.com/_Asp8txadpj8/RpX20ZGPK0I/AAAAAAAAAgk/0qdVP5IrH_Y/s320/banaan.gif&quot;
alt=&quot;Mahimba Blog&quot; /&gt;&lt;/a&gt;
&lt;hr /&gt;
&lt;a href=&quot;mailto:rob.hofker@gmail.com&quot;&gt;Go ahead and spam me!&lt;/a&gt;
 or visit me at 
&lt;a href=&quot;http://www.roho-products.nl&quot;&gt;Roho Products - Web design - Steenwijk&lt;/a&gt;
&lt;!-- Oy you! Why are you looking at the source code of this feed? Not much to see here. Bye now! --&gt;
&lt;hr /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://roho2003.blogspot.com/feeds/4271119900030787341/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://roho2003.blogspot.com/2010/05/more-amazing-news-from-google-io-2010.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5176856/posts/default/4271119900030787341'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5176856/posts/default/4271119900030787341'/><link rel='alternate' type='text/html' href='http://roho2003.blogspot.com/2010/05/more-amazing-news-from-google-io-2010.html' title='More amazing news from Google I/O 2010'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/03880668956776986361</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://farm3.static.flickr.com/2706/4107163663_9f8ab61fce_t.jpg" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5176856.post-7441782902977297332</id><published>2010-05-20T13:31:00.001+02:00</published><updated>2010-05-20T13:42:17.638+02:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Adobe"/><category scheme="http://www.blogger.com/atom/ns#" term="Adobe Systems"/><category scheme="http://www.blogger.com/atom/ns#" term="Amazon S3"/><category scheme="http://www.blogger.com/atom/ns#" term="Google"/><category scheme="http://www.blogger.com/atom/ns#" term="Google I/O"/><category scheme="http://www.blogger.com/atom/ns#" term="Google Storage"/><category scheme="http://www.blogger.com/atom/ns#" term="HTML5"/><category scheme="http://www.blogger.com/atom/ns#" term="Typekit"/><category scheme="http://www.blogger.com/atom/ns#" term="Web Fonts"/><title type='text'>Google I/O 2010 is amazing</title><content type='html'>&lt;h4&gt;.. eventhough I am not there&lt;/h4&gt;
&lt;p&gt;Since yesterday, 19 May 2010, &lt;a class=&quot;zem_slink&quot; href=&quot;http://code.google.com/events/io/&quot; title=&quot;Google I/O&quot; rel=&quot;homepage nofollow&quot;&gt;Google I/O&lt;/a&gt; is raging. Many great stuff is being published and it is hard, no impossible to keep up. It&#39;s already impossible to even try to list all the new things coming soon or are even here today already.&lt;/p&gt;
&lt;p class=&quot;zemanta-img&quot;&gt;&lt;a href=&quot;http://commons.wikipedia.org/wiki/Image:2008_Google_Input_and_Output_in_USA_-_the_Keynote.jpg&quot; rel=&quot;nofollow&quot;&gt;&lt;img src=&quot;http://upload.wikimedia.org/wikipedia/commons/thumb/5/55/2008_Google_Input_and_Output_in_USA_-_the_Keynote.jpg/300px-2008_Google_Input_and_Output_in_USA_-_the_Keynote.jpg&quot; alt=&quot;2008 Google I/O in USA, the Keynote.&quot; /&gt;&lt;/a&gt;&lt;span class=&quot;zemanta-img-attribution&quot;&gt;Image via &lt;a href=&quot;http://commons.wikipedia.org/wiki/Image:2008_Google_Input_and_Output_in_USA_-_the_Keynote.jpg&quot;&gt;Wikipedia&lt;/a&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;I&#39;ll try to name some of the more interesting things I have picked up so far.&lt;/p&gt;
&lt;h5&gt;Google Font Directory&lt;/h5&gt;
&lt;p&gt;Ever wanted to use different fonts on your site than the limited few. Mo more mandatory Times New Roman or Arial or Courier. There were already some services out there (like &lt;a class=&quot;zem_slink&quot; href=&quot;http://www.typekit.com&quot; title=&quot;Typekit&quot; rel=&quot;homepage nofollow&quot;&gt;TypeKit&lt;/a&gt;) that gave you the opportunity to use the &lt;em&gt;new&lt;/em&gt; Web Fonts, but now Google has weighed in on that and partners with TypeKit and offers a first small set of Open Source fonts to use on your web site projects.&lt;/p&gt;
&lt;p&gt;I know I will dive into this in the very near future.&lt;/p&gt;
&lt;p&gt;As a matter of fact I already have ;-)&lt;/p&gt;
&lt;h5&gt;The VP8 codec&lt;/h5&gt;
&lt;p&gt;&lt;a class=&quot;zem_slink&quot; href=&quot;http://en.wikipedia.org/wiki/HTML5&quot; title=&quot;HTML5&quot; rel=&quot;wikipedia nofollow&quot;&gt;HTML5&lt;/a&gt; has the &lt;code&gt;&amp;lt;video&amp;gt;&lt;/code&gt; tag. That&#39;s nothing new. But most video now being served on is now in the format of &lt;a class=&quot;zem_slink&quot; href=&quot;http://en.wikipedia.org/wiki/H.264/MPEG-4_AVC&quot; title=&quot;H.264/MPEG-4 AVC&quot; rel=&quot;wikipedia nofollow&quot;&gt;H.264&lt;/a&gt;, a format that has an uncertain licensing model. A model that reminds of the old Compuserve &lt;a class=&quot;zem_slink&quot; href=&quot;http://en.wikipedia.org/wiki/Graphics_Interchange_Format&quot; title=&quot;Graphics Interchange Format&quot; rel=&quot;wikipedia nofollow&quot;&gt;GIF&lt;/a&gt; licensing model. After acquiring ON2 Google now has open sourced the VP8 codec.&lt;/p&gt;
&lt;p&gt;Already the major browsers are backing that up and also &lt;a class=&quot;zem_slink&quot; href=&quot;http://www.adobe.com/&quot; title=&quot;Adobe Systems&quot; rel=&quot;homepage nofollow&quot;&gt;Adobe&lt;/a&gt; promised to release VP8 support within Flash. That should be available to more than a billion users within the next 12 months.&lt;/p&gt;
&lt;p&gt;Adobe also showed some of the new HTML5 tools for Dreamweaver. Making it clear to developers that Adobe not only stands for Flash (and Photoshop) but also for more cutting edge web based development. Good for Adobe.&lt;/p&gt;
&lt;h5&gt;Google Storage for Developers&lt;/h5&gt;
&lt;p&gt;With Google Storage for Developers the company from Mountain View is taking on cloud services like &lt;a class=&quot;zem_slink&quot; href=&quot;http://aws.amazon.com/s3&quot; title=&quot;Amazon S3&quot; rel=&quot;homepage nofollow&quot;&gt;Amazon S3&lt;/a&gt;. Now only for developers from the US and invitation only. But soon it can become huge with the power of the giant behind it. I expect that some great applications will begin to popup in the next year based on Google Storage.&lt;/p&gt;
&lt;h5&gt;And more is still to come.&lt;/h5&gt;
&lt;p&gt;The consequences of these three major announcements will become apparent soon enough. Expect some more announcements in the coming days of Google I/O.&lt;/p&gt;
&lt;p&gt;It&#39;s just too much information for now!&lt;/p&gt;


&lt;div class=&quot;zemanta-related&quot;&gt;&lt;h6 class=&quot;zemanta-related-title&quot;&gt;Related articles by Zemanta&lt;/h6&gt;&lt;ul class=&quot;zemanta-article-ul&quot;&gt;&lt;li class=&quot;zemanta-article-ul-li&quot;&gt;&lt;a href=&quot;http://mashable.com/2010/05/19/google-font-api/&quot; rel=&quot;nofollow&quot;&gt;Google Tries to Simplify Fonts on the Web&lt;/a&gt; (mashable.com)&lt;/li&gt;&lt;li class=&quot;zemanta-article-ul-li&quot;&gt;&lt;a href=&quot;http://googlecode.blogspot.com/2010/05/introducing-webfont-loader-in.html&quot; rel=&quot;nofollow&quot;&gt;Introducing the WebFont Loader in Collaboration with Typekit&lt;/a&gt; (googlecode.blogspot.com)&lt;/li&gt;&lt;li class=&quot;zemanta-article-ul-li&quot;&gt;&lt;a href=&quot;http://www.thetechscoop.net/2010/05/19/google-io-2010-keynote/&quot; rel=&quot;nofollow&quot;&gt;Google I/O 2010 Keynote&lt;/a&gt; (thetechscoop.net)&lt;/li&gt;&lt;li class=&quot;zemanta-article-ul-li&quot;&gt;&lt;a href=&quot;http://techcrunch.com/2010/05/19/adobe-html5/&quot; rel=&quot;nofollow&quot;&gt;Adobe CTO Kevin Lynch Demos HTML5 Tools At Google I/O&lt;/a&gt; (techcrunch.com)&lt;/li&gt;&lt;li class=&quot;zemanta-article-ul-li&quot;&gt;&lt;a href=&quot;http://news.cnet.com/8301-30685_3-20005465-264.html?part=rss&amp;amp;subj=news&amp;amp;tag=2547-1_3-0-20&quot; rel=&quot;nofollow&quot;&gt;Google unveils Net storage utility&lt;/a&gt; (news.cnet.com)&lt;/li&gt;&lt;li class=&quot;zemanta-article-ul-li&quot;&gt;&lt;a href=&quot;http://www.appscout.com/2010/05/adobe_announces_html5_pack_for.php&quot; rel=&quot;nofollow&quot;&gt;Adobe Announces HTML5 Pack for Dreamweaver CS5&lt;/a&gt; (appscout.com)&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;

&lt;div class=&quot;zemanta-pixie&quot;&gt;&lt;a class=&quot;zemanta-pixie-a&quot; href=&quot;http://reblog.zemanta.com/zemified/4aba6562-40d5-4b7b-b040-7fe1336b5aa7/&quot; title=&quot;Reblog this post [with Zemanta]&quot;&gt;&lt;img class=&quot;zemanta-pixie-img&quot; src=&quot;http://img.zemanta.com/reblog_e.png?x-id=4aba6562-40d5-4b7b-b040-7fe1336b5aa7&quot; alt=&quot;Reblog this post [with Zemanta]&quot; /&gt;&lt;/a&gt;&lt;span class=&quot;zem-script more-related pretty-attribution&quot;&gt;&lt;script type=&quot;text/javascript&quot; src=&quot;http://static.zemanta.com/readside/loader.js&quot; defer=&quot;defer&quot;&gt;&lt;/script&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;hr /&gt;
&lt;a href=&quot;http://blog.mahimba.com&quot;&gt;&lt;img border=&quot;0&quot;
src=&quot;http://bp3.blogger.com/_Asp8txadpj8/RpX20ZGPK0I/AAAAAAAAAgk/0qdVP5IrH_Y/s320/banaan.gif&quot;
alt=&quot;Mahimba Blog&quot; /&gt;&lt;/a&gt;
&lt;hr /&gt;
&lt;a href=&quot;mailto:rob.hofker@gmail.com&quot;&gt;Go ahead and spam me!&lt;/a&gt;
 or visit me at 
&lt;a href=&quot;http://www.roho-products.nl&quot;&gt;Roho Products - Web design - Steenwijk&lt;/a&gt;
&lt;!-- Oy you! Why are you looking at the source code of this feed? Not much to see here. Bye now! --&gt;
&lt;hr /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://roho2003.blogspot.com/feeds/7441782902977297332/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://roho2003.blogspot.com/2010/05/google-io-2010-is-amazing.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5176856/posts/default/7441782902977297332'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5176856/posts/default/7441782902977297332'/><link rel='alternate' type='text/html' href='http://roho2003.blogspot.com/2010/05/google-io-2010-is-amazing.html' title='Google I/O 2010 is amazing'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/03880668956776986361</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5176856.post-2405888832014305102</id><published>2010-05-07T11:55:00.003+02:00</published><updated>2010-05-07T16:10:45.352+02:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="ASP.NET"/><category scheme="http://www.blogger.com/atom/ns#" term="JavaScript"/><category scheme="http://www.blogger.com/atom/ns#" term="JQuery"/><category scheme="http://www.blogger.com/atom/ns#" term="Programming"/><title type='text'>On jQuery templating</title><content type='html'>&lt;h4&gt;.. isn&#39;t it just shifting functionality around?&lt;/h4&gt;
&lt;p&gt;Eventhough &lt;a class=&quot;zem_slink&quot; href=&quot;http://jquery.com/&quot; title=&quot;JQuery&quot; rel=&quot;homepage&quot;&gt;jQuery&lt;/a&gt; templating is a pretty interesting concept and I feel tempted to use it, I can not stop thinking that it does not help to simplify my code.&lt;/p&gt;&lt;p&gt;I develop in &lt;a href=&quot;http://ASP.NET&quot;&gt;ASP.NET&lt;/a&gt; mainly and do construct all the controls by hand, meaning that I first decide what my HTML will look like and then let the control render exactly that markup.&lt;/p&gt;
&lt;h5&gt;All right, all right&lt;/h5&gt;
&lt;p&gt;Arguably, I can do that with jQuery templating equally well. But I will be forced to rebuild the &lt;a class=&quot;zem_slink&quot; href=&quot;http://en.wikipedia.org/wiki/ASP.NET&quot; title=&quot;ASP.NET&quot; rel=&quot;wikipedia&quot;&gt;ViewState&lt;/a&gt; principle of &lt;a href=&quot;http://ASP.NET&quot;&gt;ASP.NET&lt;/a&gt; in order to make changes come back to the server. I must call web services to get the data. Meaning that for each form I must have a specific web service. That is quite a bit of work.&lt;/p&gt;
&lt;p&gt;Also I would be doing a lot of coding in JavaScript and in C# and I ike to keep as much functionality as possible in my main development language. Just to avoid confusion.&lt;/p&gt;
&lt;h5&gt;Concluding&lt;/h5&gt;
&lt;p&gt;Then again, I may have missed some stuff and maybe things can be done that I do not see yet. It&#39;s still early in the jQuery templating model and things are bound to change. I will wait and see what comes up next in this area.&lt;br /&gt;For now, I will stick with my MVC inspired, Mediator based framework.&lt;/p&gt;

&lt;p&gt;In reference to: &lt;a href=&quot;http://encosia.com/2010/05/03/a-few-thoughts-on-jquery-templating-with-jquery-tmpl/?utm_source=feedburner&amp;amp;utm_medium=feed&amp;amp;utm_campaign=Feed%3A+Encosia+%28Encosia%29&quot;&gt;A few thoughts on jQuery templating with jQuery.tmpl | Encosia&lt;/a&gt; (&lt;a href=&quot;http://www.google.com/sidewiki/entry/rob.hofker/id/r8a7HiXRsIQmPBsPxBEL4-4pJec&quot;&gt;view on Google Sidewiki&lt;/a&gt;)&lt;/p&gt;&lt;div class=&quot;zemanta-related&quot;&gt;&lt;h6 class=&quot;zemanta-related-title&quot;&gt;Related articles by Zemanta&lt;/h6&gt;&lt;ul class=&quot;zemanta-article-ul&quot;&gt;&lt;li class=&quot;zemanta-article-ul-li&quot;&gt;&lt;a href=&quot;http://shelastyle.net/blog/jquery-project-template-for-visual-studio/&quot;&gt;jQuery Project Template for Visual Studio&lt;/a&gt; (shelastyle.net)&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;

&lt;div class=&quot;zemanta-pixie&quot;&gt;&lt;a class=&quot;zemanta-pixie-a&quot; href=&quot;http://reblog.zemanta.com/zemified/43c6a273-3d1e-4a6a-a1f3-1536f5642934/&quot; title=&quot;Reblog this post [with Zemanta]&quot;&gt;&lt;img class=&quot;zemanta-pixie-img&quot; src=&quot;http://img.zemanta.com/reblog_e.png?x-id=43c6a273-3d1e-4a6a-a1f3-1536f5642934&quot; alt=&quot;Reblog this post [with Zemanta]&quot; /&gt;&lt;/a&gt;&lt;span class=&quot;zem-script more-related pretty-attribution&quot;&gt;&lt;script type=&quot;text/javascript&quot; src=&quot;http://static.zemanta.com/readside/loader.js&quot; defer=&quot;defer&quot;&gt;&lt;/script&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;hr /&gt;
&lt;a href=&quot;http://blog.mahimba.com&quot;&gt;&lt;img border=&quot;0&quot;
src=&quot;http://bp3.blogger.com/_Asp8txadpj8/RpX20ZGPK0I/AAAAAAAAAgk/0qdVP5IrH_Y/s320/banaan.gif&quot;
alt=&quot;Mahimba Blog&quot; /&gt;&lt;/a&gt;
&lt;hr /&gt;
&lt;a href=&quot;mailto:rob.hofker@gmail.com&quot;&gt;Go ahead and spam me!&lt;/a&gt;
 or visit me at 
&lt;a href=&quot;http://www.roho-products.nl&quot;&gt;Roho Products - Web design - Steenwijk&lt;/a&gt;
&lt;!-- Oy you! Why are you looking at the source code of this feed? Not much to see here. Bye now! --&gt;
&lt;hr /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://roho2003.blogspot.com/feeds/2405888832014305102/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://roho2003.blogspot.com/2010/05/on-jquery-templating.html#comment-form' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5176856/posts/default/2405888832014305102'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5176856/posts/default/2405888832014305102'/><link rel='alternate' type='text/html' href='http://roho2003.blogspot.com/2010/05/on-jquery-templating.html' title='On jQuery templating'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/03880668956776986361</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5176856.post-1796261450679387413</id><published>2010-04-20T15:43:00.006+02:00</published><updated>2010-04-20T15:49:36.256+02:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Scott Guthrie"/><title type='text'>IIS7 Url Rewrite Extension explained</title><content type='html'>&lt;h4&gt;.. for once and for all&lt;/h4&gt;

&lt;p&gt;In this great article by &lt;a class=&quot;zem_slink&quot; href=&quot;http://www.scottgu.com/&quot; title=&quot;Scott Guthrie&quot; rel=&quot;homepage nofollow&quot;&gt;Scott Guthrie&lt;/a&gt; it is completely clear how the &lt;a class=&quot;zem_slink&quot; href=&quot;http://en.wikipedia.org/wiki/Uniform_Resource_Locator&quot; title=&quot;Uniform Resource Locator&quot; rel=&quot;wikipedia nofollow&quot;&gt;URL&lt;/a&gt; Rewrite Extension works and can be configured.&lt;/p&gt;
&lt;p class=&quot;zemanta-img&quot;&gt;&lt;a href=&quot;http://commons.wikipedia.org/wiki/Image:MIX_Keynote-Scott_Guthrie_09_MS_05_2007.jpg&quot; rel=&quot;nofollow&quot;&gt;&lt;img src=&quot;http://upload.wikimedia.org/wikipedia/commons/thumb/1/12/MIX_Keynote-Scott_Guthrie_09_MS_05_2007.jpg/300px-MIX_Keynote-Scott_Guthrie_09_MS_05_2007.jpg&quot; alt=&quot;Scott Guthrie in 2007.&quot; /&gt;&lt;/a&gt;&lt;span class=&quot;zemanta-img-attribution&quot;&gt;Image via &lt;a href=&quot;http://commons.wikipedia.org/wiki/Image:MIX_Keynote-Scott_Guthrie_09_MS_05_2007.jpg&quot;&gt;Wikipedia&lt;/a&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;Sometimes things can be pretty easy.&lt;/p&gt;
&lt;h5&gt;Solving SEO problems along the way&lt;/h5&gt;
&lt;p&gt;The SEO problems he resolves with this extension are present on most sites and even if you do not use IIS7 it is clear what these problems are and how they can be resolved.&lt;/p&gt;

&lt;p&gt;In reference to: &lt;a href=&quot;http://weblogs.asp.net/scottgu/archive/2010/04/20/tip-trick-fix-common-seo-problems-using-the-url-rewrite-extension.aspx&quot;&gt;Tip/Trick: Fix Common SEO Problems Using the URL Rewrite Extension - ScottGu&#39;s Blog&lt;/a&gt; (&lt;a href=&quot;http://www.google.com/sidewiki/entry/rob.hofker/id/fetuuwoB8yBoO6SFkXm-NUr28GA&quot;&gt;view on Google Sidewiki&lt;/a&gt;)&lt;/p&gt;

&lt;div class=&quot;zemanta-pixie&quot;&gt;&lt;a class=&quot;zemanta-pixie-a&quot; href=&quot;http://reblog.zemanta.com/zemified/6148d781-ca5d-43f1-8041-91ddf963a3e2/&quot; title=&quot;Reblog this post [with Zemanta]&quot;&gt;&lt;img class=&quot;zemanta-pixie-img&quot; src=&quot;http://img.zemanta.com/reblog_e.png?x-id=6148d781-ca5d-43f1-8041-91ddf963a3e2&quot; alt=&quot;Reblog this post [with Zemanta]&quot; /&gt;&lt;/a&gt;&lt;span class=&quot;zem-script more-related pretty-attribution&quot;&gt;&lt;script type=&quot;text/javascript&quot; src=&quot;http://static.zemanta.com/readside/loader.js&quot; defer=&quot;defer&quot;&gt;&lt;/script&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;hr /&gt;
&lt;a href=&quot;http://blog.mahimba.com&quot;&gt;&lt;img border=&quot;0&quot;
src=&quot;http://bp3.blogger.com/_Asp8txadpj8/RpX20ZGPK0I/AAAAAAAAAgk/0qdVP5IrH_Y/s320/banaan.gif&quot;
alt=&quot;Mahimba Blog&quot; /&gt;&lt;/a&gt;
&lt;hr /&gt;
&lt;a href=&quot;mailto:rob.hofker@gmail.com&quot;&gt;Go ahead and spam me!&lt;/a&gt;
 or visit me at 
&lt;a href=&quot;http://www.roho-products.nl&quot;&gt;Roho Products - Web design - Steenwijk&lt;/a&gt;
&lt;!-- Oy you! Why are you looking at the source code of this feed? Not much to see here. Bye now! --&gt;
&lt;hr /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://roho2003.blogspot.com/feeds/1796261450679387413/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://roho2003.blogspot.com/2010/04/iis7-url-rewrite-extension-explained.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5176856/posts/default/1796261450679387413'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5176856/posts/default/1796261450679387413'/><link rel='alternate' type='text/html' href='http://roho2003.blogspot.com/2010/04/iis7-url-rewrite-extension-explained.html' title='IIS7 Url Rewrite Extension explained'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/03880668956776986361</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5176856.post-8413795433486531387</id><published>2010-04-06T11:48:00.003+02:00</published><updated>2010-04-14T09:32:37.645+02:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Adobe Flash"/><category scheme="http://www.blogger.com/atom/ns#" term="Adobe Systems"/><category scheme="http://www.blogger.com/atom/ns#" term="HTML5"/><category scheme="http://www.blogger.com/atom/ns#" term="IPad"/><category scheme="http://www.blogger.com/atom/ns#" term="Microsoft"/><title type='text'>Another HTML5 vs Silverlight or Flash battle</title><content type='html'>&lt;h4&gt;.. and another one biased&lt;/h4&gt;
&lt;p&gt;I think this is one of the other over the top reactions in the &lt;a class=&quot;zem_slink&quot; href=&quot;http://en.wikipedia.org/wiki/HTML5&quot; title=&quot;HTML5&quot; rel=&quot;wikipedia nofollow&quot;&gt;HTML5&lt;/a&gt; vs Silverlight or Flash or whatever you like.&lt;/p&gt;
&lt;p class=&quot;zemanta-img&quot;&gt;&lt;a href=&quot;http://commons.wikipedia.org/wiki/Image:HTML.svg&quot; rel=&quot;nofollow&quot;&gt;&lt;img src=&quot;http://upload.wikimedia.org/wikipedia/commons/thumb/8/84/HTML.svg/266px-HTML.svg.png&quot; alt=&quot;A graphical despiction of a very simple html d...&quot; /&gt;&lt;/a&gt;&lt;span class=&quot;zemanta-img-attribution&quot;&gt;Image via &lt;a href=&quot;http://commons.wikipedia.org/wiki/Image:HTML.svg&quot;&gt;Wikipedia&lt;/a&gt;&lt;/span&gt;&lt;/p&gt;

&lt;h5&gt;I &lt;strong&gt;do&lt;/strong&gt; like Silverlight&lt;/h5&gt;

&lt;p&gt;Just to start out with one clear statement: I like Silverlight a lot and do think that many solutions can be build with it. It do has its place in my toolbox, but also has its limitations. Just saying iPad and (non WP7) smartphones.&lt;/p&gt;
&lt;p&gt;HTML5 has its limitations as well, but also extends its reach into areas that Silverlight can not get to (iPad &amp;amp; (non WP7) smartphones).&lt;/p&gt;
&lt;p&gt;It is not a simple &quot;HTML5 vs Silverlight or Flash&quot; battle. It&#39;s picking the right technology for the right audience.&lt;/p&gt;
&lt;h5&gt;But ..&lt;/h5&gt;

&lt;p&gt;Then onto some things that feel wrong in your article:&lt;/p&gt;
&lt;p&gt;About the speed of implementation / ratification of standards. That has quote a bit to do with browser builders implementing rules. We all know that one browser has slowed down progress considerably in applying standards. They are still playing catch up, but with increasing speed.&lt;/p&gt;
&lt;p&gt;The HTML5 standard is evolving at high speed and implementation across various browsers is equally swift. That in return brings the HTML5 standard quicker to a real Standard.&lt;/p&gt;
&lt;p&gt;Some remarks about webcam / microphone control, fonts are not correct. Webcam support is in the works and webfonts are already in most browsers, although implementations differ.&lt;/p&gt;
&lt;p&gt;Another thing to say about &quot;standards&quot; Silverlight is hardly a standard. Version 4 is now on the brink of release and it has only been a very short period since version 1 was out. Sounds a bit like progressive evolution, much like HTML5 is evolving.&lt;/p&gt;
&lt;h5&gt;Admittedly ..&lt;/h5&gt;
&lt;p&gt;The lack of tools for HTML5 development might a problem and I think this is an opportunity for tools developers (&lt;a class=&quot;zem_slink&quot; href=&quot;http://www.adobe.com/&quot; title=&quot;Adobe Systems&quot; rel=&quot;homepage nofollow&quot;&gt;Adobe&lt;/a&gt;?) and I just wonder if &lt;a class=&quot;zem_slink&quot; href=&quot;http://www.microsoft.com&quot; title=&quot;Microsoft&quot; rel=&quot;homepage nofollow&quot;&gt;Microsoft&lt;/a&gt; will jump into this void.&lt;/p&gt;
&lt;p&gt;Finally, no COM support is just a blessing. HTML5 is platform independent and this can never be a veritable demand for a web based platform.&lt;/p&gt;
&lt;h5&gt;Wrapping up&lt;/h5&gt;
&lt;p&gt;At present I think Silverlight is not yet final (I have bumped my head in version 3 already and no doubt will do so in version 4) as is HTML5. I think there are use case scenarios for both and it depends on the scenario to which tool in my toolbox I will grab.&lt;/p&gt;

&lt;p&gt;A reaction on: &lt;a href=&quot;http://www.silverlighthack.com/post/2010/04/02/HTML-5-is-Born-Old-Quake-in-HTML-5.aspx#comment&quot;&gt;HTML 5 is Born Old - Quake in HTML 5 Example&lt;/a&gt; (&lt;a href=&quot;http://www.google.com/sidewiki/entry/rob.hofker/id/oboz3PJk9sGZ4PsUzO_za-luDP4&quot;&gt; found through  Google Sidewiki&lt;/a&gt;)&lt;/p&gt;&lt;div class=&quot;zemanta-related&quot;&gt;&lt;h6 class=&quot;zemanta-related-title&quot;&gt;Related articles by Zemanta&lt;/h6&gt;&lt;ul class=&quot;zemanta-article-ul&quot;&gt;&lt;li class=&quot;zemanta-article-ul-li&quot;&gt;&lt;a href=&quot;http://r.zemanta.com/?u=http%3A//www.infoworld.com/d/applications/opinion-html5-less-its-cracked-be-381%3Fsource%3Drss_infoworld_news&amp;amp;a=15797299&amp;amp;rid=b9d12c20-a167-4c17-9d72-9eeac033f632&amp;amp;e=73101bfff94471c72974ebe0e4e0fcf1&quot; rel=&quot;nofollow&quot;&gt;Opinion: HTML5 is less than it&#39;s cracked up to be&lt;/a&gt; (infoworld.com)&lt;/li&gt;&lt;li class=&quot;zemanta-article-ul-li&quot;&gt;&lt;a href=&quot;http://r.zemanta.com/?u=http%3A//www.infoworld.com/d/applications/microsoft-embraces-html5-specification-in-ie9-861%3Fsource%3Drss_infoworld_news&amp;amp;a=14887145&amp;amp;rid=b9d12c20-a167-4c17-9d72-9eeac033f632&amp;amp;e=76dd441df9056112e6f1f1b1b9124ee2&quot; rel=&quot;nofollow&quot;&gt;Microsoft embraces HTML5 specification in IE9&lt;/a&gt; (infoworld.com)&lt;/li&gt;&lt;li class=&quot;zemanta-article-ul-li&quot;&gt;&lt;a href=&quot;http://www.centernetworks.com/google-quake-html5&quot; rel=&quot;nofollow&quot;&gt;Google Ports Quake II to HTML5&lt;/a&gt; (centernetworks.com)&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;

&lt;div class=&quot;zemanta-pixie&quot;&gt;&lt;a class=&quot;zemanta-pixie-a&quot; href=&quot;http://reblog.zemanta.com/zemified/b9d12c20-a167-4c17-9d72-9eeac033f632/&quot; title=&quot;Reblog this post [with Zemanta]&quot;&gt;&lt;img class=&quot;zemanta-pixie-img&quot; src=&quot;http://img.zemanta.com/reblog_e.png?x-id=b9d12c20-a167-4c17-9d72-9eeac033f632&quot; alt=&quot;Reblog this post [with Zemanta]&quot; /&gt;&lt;/a&gt;&lt;span class=&quot;zem-script more-related pretty-attribution&quot;&gt;&lt;script type=&quot;text/javascript&quot; src=&quot;http://static.zemanta.com/readside/loader.js&quot; defer=&quot;defer&quot;&gt;&lt;/script&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;hr /&gt;
&lt;a href=&quot;http://blog.mahimba.com&quot;&gt;&lt;img border=&quot;0&quot;
src=&quot;http://bp3.blogger.com/_Asp8txadpj8/RpX20ZGPK0I/AAAAAAAAAgk/0qdVP5IrH_Y/s320/banaan.gif&quot;
alt=&quot;Mahimba Blog&quot; /&gt;&lt;/a&gt;
&lt;hr /&gt;
&lt;a href=&quot;mailto:rob.hofker@gmail.com&quot;&gt;Go ahead and spam me!&lt;/a&gt;
 or visit me at 
&lt;a href=&quot;http://www.roho-products.nl&quot;&gt;Roho Products - Web design - Steenwijk&lt;/a&gt;
&lt;!-- Oy you! Why are you looking at the source code of this feed? Not much to see here. Bye now! --&gt;
&lt;hr /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://roho2003.blogspot.com/feeds/8413795433486531387/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://roho2003.blogspot.com/2010/04/another-html5-vs-silverlight-or-flash.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5176856/posts/default/8413795433486531387'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5176856/posts/default/8413795433486531387'/><link rel='alternate' type='text/html' href='http://roho2003.blogspot.com/2010/04/another-html5-vs-silverlight-or-flash.html' title='Another HTML5 vs Silverlight or Flash battle'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/03880668956776986361</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5176856.post-2861191851242088391</id><published>2010-03-31T10:02:00.003+02:00</published><updated>2010-03-31T10:06:04.520+02:00</updated><category scheme="http://www.blogger.com/atom/ns#" term=".NET Framework"/><category scheme="http://www.blogger.com/atom/ns#" term="ASP.NET"/><category scheme="http://www.blogger.com/atom/ns#" term="Scott Guthrie"/><title type='text'>For Web developers with a front end inkling</title><content type='html'>&lt;h4&gt;... &lt;a class=&quot;zem_slink&quot; href=&quot;http://www.asp.net&quot; title=&quot;ASP.NET&quot; rel=&quot;homepage&quot;&gt;ASP.NET&lt;/a&gt; 4 holds a lot of promise.&lt;/h4&gt;

&lt;p&gt;Finally we get control over all the horrible IDs rendered in html and styling those will become much easier.&lt;/p&gt;
&lt;p&gt;Getting rid of the ugly and unneeded tables in some controls is here for more control over the controls.&lt;/p&gt;
&lt;p&gt;Thank you .NET 4.0!&lt;/p&gt;
&lt;p class=&quot;zemanta-img&quot;&gt;&lt;a href=&quot;http://www.crunchbase.com/person/scott-guthrie&quot; rel=&quot;nofollow&quot;&gt;&lt;img src=&quot;http://www.crunchbase.com/assets/images/resized/0001/4637/14637v1-max-250x250.jpg&quot; alt=&quot;Image representing Scott Guthrie as depicted i...&quot; /&gt;&lt;/a&gt;&lt;span class=&quot;zemanta-img-attribution&quot;&gt;Image by Wikipedia via &lt;a href=&quot;http://www.crunchbase.com&quot;&gt;CrunchBase&lt;/a&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p&gt;In reference to: &lt;a href=&quot;http://weblogs.asp.net/scottgu/archive/2010/03/30/cleaner-html-markup-with-asp-net-4-web-forms-client-ids-vs-2010-and-net-4-0-series.aspx&quot;&gt;Cleaner HTML Markup with &lt;/a&gt;&lt;a href=&quot;http://ASP.NET&quot;&gt;ASP.NET&lt;/a&gt; 4 Web Forms - Client IDs (VS 2010 and .NET 4.0 Series) - &lt;a class=&quot;zem_slink&quot; href=&quot;http://www.microsoft.com&quot; title=&quot;Scott Guthrie&quot; rel=&quot;homepage nofollow&quot;&gt;ScottGu&lt;/a&gt;&#39;s Blog (&lt;a href=&quot;http://www.google.com/sidewiki/entry/rob.hofker/id/kZodRW8K5Dn8sV3pX6oDsREC4Ig&quot;&gt;brought to you through Google Sidewiki&lt;/a&gt;)&lt;/p&gt;

&lt;div class=&quot;zemanta-pixie&quot;&gt;&lt;a class=&quot;zemanta-pixie-a&quot; href=&quot;http://reblog.zemanta.com/zemified/7945bb38-0b49-4f1c-b58e-a4c4d32950c5/&quot; title=&quot;Reblog this post [with Zemanta]&quot;&gt;&lt;img class=&quot;zemanta-pixie-img&quot; src=&quot;http://img.zemanta.com/reblog_e.png?x-id=7945bb38-0b49-4f1c-b58e-a4c4d32950c5&quot; alt=&quot;Reblog this post [with Zemanta]&quot; /&gt;&lt;/a&gt;&lt;span class=&quot;zem-script more-related pretty-attribution&quot;&gt;&lt;script type=&quot;text/javascript&quot; src=&quot;http://static.zemanta.com/readside/loader.js&quot; defer=&quot;defer&quot;&gt;&lt;/script&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;hr /&gt;
&lt;a href=&quot;http://blog.mahimba.com&quot;&gt;&lt;img border=&quot;0&quot;
src=&quot;http://bp3.blogger.com/_Asp8txadpj8/RpX20ZGPK0I/AAAAAAAAAgk/0qdVP5IrH_Y/s320/banaan.gif&quot;
alt=&quot;Mahimba Blog&quot; /&gt;&lt;/a&gt;
&lt;hr /&gt;
&lt;a href=&quot;mailto:rob.hofker@gmail.com&quot;&gt;Go ahead and spam me!&lt;/a&gt;
 or visit me at 
&lt;a href=&quot;http://www.roho-products.nl&quot;&gt;Roho Products - Web design - Steenwijk&lt;/a&gt;
&lt;!-- Oy you! Why are you looking at the source code of this feed? Not much to see here. Bye now! --&gt;
&lt;hr /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://roho2003.blogspot.com/feeds/2861191851242088391/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://roho2003.blogspot.com/2010/03/for-web-developers-with-front-end.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5176856/posts/default/2861191851242088391'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5176856/posts/default/2861191851242088391'/><link rel='alternate' type='text/html' href='http://roho2003.blogspot.com/2010/03/for-web-developers-with-front-end.html' title='For Web developers with a front end inkling'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/03880668956776986361</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry></feed>