<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/atom10full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><feed xmlns="http://www.w3.org/2005/Atom" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" xml:lang="en"><title type="text">Web-Program-athon</title><link rel="alternate" type="text/html" href="http://coding.collinchung.com/" /><subtitle type="html">Non-stop web programming action at coding.collinchung.com</subtitle><author><name>Collin</name><email>noreply@blogger.com</email><uri>http://www.blogger.com/profile/11680267268372960153</uri></author><updated>2009-03-16T04:34:25+00:00</updated><generator uri="http://www.blogger.com">Blogger</generator><openSearch:totalResults xmlns:openSearch="http://a9.com/-/spec/opensearch/1.1/">84</openSearch:totalResults><openSearch:startIndex xmlns:openSearch="http://a9.com/-/spec/opensearch/1.1/">1</openSearch:startIndex><openSearch:itemsPerPage xmlns:openSearch="http://a9.com/-/spec/opensearch/1.1/">25</openSearch:itemsPerPage><id>tag:blogger.com,1999:blog-4067922377896626843</id><geo:lat>3.1371</geo:lat><geo:long>101.6237</geo:long><link rel="license" type="text/html" href="http://creativecommons.org/licenses/by-nc/3.0/" /><logo>http://creativecommons.org/images/public/somerights20.gif</logo><link rel="self" href="http://feeds.feedburner.com/Web-program-athon" type="application/atom+xml" /><feedburner:emailServiceId>Web-program-athon</feedburner:emailServiceId><feedburner:feedburnerHostname>http://feedburner.google.com</feedburner:feedburnerHostname><entry><title type="text">Trying out Silverlight 2 with Eclipse</title><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/Web-program-athon/~3/2M7E_X0ake0/trying-out-silverlight-2-with-eclipse.html" /><category term="Silverlight" /><author><name>Collin</name><email>noreply@blogger.com</email><uri>http://www.blogger.com/profile/11680267268372960153</uri></author><updated>2008-10-15T23:42:06-07:00</updated><id>tag:blogger.com,1999:blog-4067922377896626843.post-3097313121108848563</id><content type="html">I downloaded &lt;a href="http://silverlight.net/"&gt;Silverlight 2&lt;/a&gt; and set up the &lt;a href="http://www.eclipse.org/"&gt;Eclipse&lt;/a&gt; development environment &lt;a href="http://www.eclipse4sl.org/"&gt;for Silverlight&lt;/a&gt;, which was quite easy to do. Then, I thought I'd download some free vector art and try to get it into a Silverlight project. Here are some screen shots of what I was trying to do with Silverlight, Eclipse and Inkscape (to convert from Illustrator's .ai into .xaml).&lt;br /&gt;&lt;br /&gt;First, I found this neat image of a bonzai tree on &lt;a href="http://www.vectorart.org/vectorart_info.php?id=59"&gt;Vector Art&lt;/a&gt;. Vector Art provides "free vector illustration file downloads" licensed under &lt;a href="http://creativecommons.org/licenses/by/3.0/"&gt;Creative Commons 3.0&lt;/a&gt;. I &lt;a href="http://coding.collinchung.com/2008/01/use-free-vectors-in-your-silverlight.html"&gt;blogged&lt;/a&gt; about &lt;a href="http://www.vecteezy.com/"&gt;other&lt;/a&gt; &lt;a href="http://www.freevectors.net/"&gt;providers&lt;/a&gt; before, and the list of where you can get free vector assets for your &lt;abbr title="Rich Internet Application"&gt;RIA&lt;/abbr&gt; is growing by the day.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_KpCQoA0ghGs/SPbUsocXI6I/AAAAAAAAAGM/hDK5PS0FpeM/s1600-h/web.jpg"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;" src="http://2.bp.blogspot.com/_KpCQoA0ghGs/SPbUsocXI6I/AAAAAAAAAGM/hDK5PS0FpeM/s400/web.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5257623478237340578" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Then, I opened the bonzai vector (an Illustrator .ai file) with &lt;a href="http://inkscape.org/"&gt;Inkscape&lt;/a&gt;, an open source vector graphics editor, and saved it to Microsoft's .xaml format. Inkscape, like Eclipse, is available for Windows, Linux and Mac OS (X).&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_KpCQoA0ghGs/SPbUs8Je0AI/AAAAAAAAAGU/V4h1mwDwsuA/s1600-h/inkscape.jpg"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;" src="http://2.bp.blogspot.com/_KpCQoA0ghGs/SPbUs8Je0AI/AAAAAAAAAGU/V4h1mwDwsuA/s400/inkscape.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5257623483526860802" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;This is what the xaml looks like in a text editor, a mess of markup (not unlike &lt;a href="http://www.w3.org/Graphics/SVG/"&gt;svg&lt;/a&gt;, Inkscape's primary file format).&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_KpCQoA0ghGs/SPbUsmmFf0I/AAAAAAAAAGE/3LRca-R-8v4/s1600-h/notepad.jpg"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;" src="http://4.bp.blogspot.com/_KpCQoA0ghGs/SPbUsmmFf0I/AAAAAAAAAGE/3LRca-R-8v4/s400/notepad.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5257623477741256514" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;And finally, copy-and-pasting the xaml into a new Silverlight component in the &lt;a href="http://www.eclipse4sl.org/"&gt;Eclipse Silverlight IDE&lt;/a&gt;, which has preview pane and code-behind too.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_KpCQoA0ghGs/SPbUsVdTuQI/AAAAAAAAAF8/60RHdYNFPe0/s1600-h/eclipse.jpg"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;" src="http://1.bp.blogspot.com/_KpCQoA0ghGs/SPbUsVdTuQI/AAAAAAAAAF8/60RHdYNFPe0/s400/eclipse.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5257623473141037314" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;There we go, RIA development with open source tools, and open licensed assets.&lt;br /&gt;&lt;br /&gt;Just need to figure out how to open an Inkscape-created .xaml file in Eclipse without going straight to the source. My initial attempt resulted with Eclipse spewing some uncaught Java exceptions, so I resorted to opening the .xaml with Notepad and copying the markup into Eclipse, which worked, in that it didn't cause any more errors in Eclipse. However, as you can see, the bonzai image looks all jumbled up. I'm sure this requires just some minor tweaking to get it working properly. (Could be some &lt;a href="http://silverlight.net/forums/t/19911.aspx"&gt;WPF-vs-Silverlight&lt;/a&gt; xaml issues.) &lt;br /&gt;&lt;br /&gt;I wonder if I can get &lt;a href="http://www.eclipse4sl.org/"&gt;Silverlight 2 on Eclipse&lt;/a&gt; to work with &lt;a href="http://www.aptana.com/studio"&gt;Aptana&lt;/a&gt; for an end-to-end JavaScript (read &lt;a href="http://www.aptana.com/jaxer"&gt;Jaxer&lt;/a&gt;-to-&lt;a href="http://www.codeplex.com/sdlsdk"&gt;Managed JScript&lt;/a&gt;/plain old browser JS) driven RIA solution. &lt;br /&gt;&lt;br /&gt;Anyway, some related links:&lt;br /&gt;&lt;a href="http://www.webmonkey.com/blog/Silverlight_Update_Aims_for_Greater_Adoption_Through_Developers"&gt;Silverlight Update Aims for Greater Adoption Through Developers&lt;/a&gt;&lt;br /&gt;&lt;a href="http://bits.samiq.net/2008/10/silverlight-2-announced-with-plans-for.html"&gt;Silverlight 2 announced with plans for development support on Mac and Linux&lt;/a&gt;&lt;br /&gt;&lt;a href="http://www.gotmono.com/docs/ide/eclipse.html"&gt;Eclipse for developing Mono applications&lt;/a&gt;&lt;br /&gt;&lt;a href="http://www.kaxaml.com/"&gt;Kaxaml&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4067922377896626843-3097313121108848563?l=coding.collinchung.com'/&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/Web-program-athon?a=2M7E_X0ake0:k1jECbfL91M:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/Web-program-athon?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/Web-program-athon?a=2M7E_X0ake0:k1jECbfL91M:dnMXMwOfBR0"&gt;&lt;img src="http://feeds.feedburner.com/~ff/Web-program-athon?d=dnMXMwOfBR0" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/Web-program-athon?a=2M7E_X0ake0:k1jECbfL91M:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/Web-program-athon?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/Web-program-athon?a=2M7E_X0ake0:k1jECbfL91M:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/Web-program-athon?i=2M7E_X0ake0:k1jECbfL91M:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/Web-program-athon?a=2M7E_X0ake0:k1jECbfL91M:gIN9vFwOqvQ"&gt;&lt;img src="http://feeds.feedburner.com/~ff/Web-program-athon?i=2M7E_X0ake0:k1jECbfL91M:gIN9vFwOqvQ" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;</content><app:edited xmlns:app="http://www.w3.org/2007/app">2008-10-16T14:42:06.077+08:00</app:edited><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://2.bp.blogspot.com/_KpCQoA0ghGs/SPbUsocXI6I/AAAAAAAAAGM/hDK5PS0FpeM/s72-c/web.jpg" height="72" width="72" /><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">2</thr:total><feedburner:origLink>http://coding.collinchung.com/2008/10/trying-out-silverlight-2-with-eclipse.html</feedburner:origLink></entry><entry><title type="text">jQuery is LINQ for DOM?</title><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/Web-program-athon/~3/CZaoEJ3x2C0/jquery-is-linq-for-dom.html" /><category term="javascript" /><author><name>Collin</name><email>noreply@blogger.com</email><uri>http://www.blogger.com/profile/11680267268372960153</uri></author><updated>2008-09-30T10:11:44-07:00</updated><id>tag:blogger.com,1999:blog-4067922377896626843.post-1227796515707694780</id><content type="html">Has &lt;a href="http://jquery.com/"&gt;jQuery&lt;/a&gt; &lt;a href="http://coding.collinchung.com/2008/09/aspnet-heart-jquery.html"&gt;become&lt;/a&gt; Microsoft's default choice of query mode for JavaScript? Granted, it's a framework that sits on top of JS and not a fully language intergrated feature like LINQ. And it's also confined to querying the DOM, which is okay, because that's really where jQuery shines. Check out its featureful &lt;code&gt;&lt;a href="http://docs.jquery.com/Core/%24"&gt;$()&lt;/a&gt;&lt;/code&gt; &lt;a href="http://docs.jquery.com/Selectors"&gt;selectors&lt;/a&gt; which support basic &lt;a href="http://www.w3.org/TR/xpath"&gt;XPath&lt;/a&gt; (sorta' like the &lt;a href="http://msdn.microsoft.com/en-us/library/bb351355.aspx"&gt;XPathSelectElement&lt;/a&gt; extensions method) and CSS, even some &lt;a href="http://www.css3.info/"&gt;version 3&lt;/a&gt;. &lt;br /&gt;&lt;br /&gt;Here's a buncha' links which further explore querying the DOM, and LINQ-like querying for JavaScript:&lt;br /&gt;&lt;a href="http://www.nikhilk.net/ScriptAndLINQ.aspx"&gt;Script and LINQ?&lt;/a&gt;&lt;br /&gt;&lt;a href="http://weblogs.asp.net/fmarguerie/archive/2006/12/28/linq-to-objects-for-javascript.aspx"&gt;LINQ to Objects for JavaScript&lt;/a&gt;&lt;br /&gt;&lt;a href="http://geeks.netindonesia.net/blogs/jimmy/archive/2007/07/16/Javascript-LINQ_3F003F003F00_.aspx"&gt;Javascript LINQ-like Querying?&lt;/a&gt;&lt;br /&gt;&lt;a href="http://www.codeplex.com/JSLINQ"&gt;LINQ to JavaScript&lt;/a&gt;&lt;br /&gt;&lt;a href="http://vijay.screamingpens.com/archive/2008/05/26/linq-amp-lambda-part-3-html-agility-pack-to-linq.aspx"&gt;LINQ &amp; Lambda, Part 3: Html Agility Pack to LINQ to XML Converter&lt;/a&gt;&lt;br /&gt;&lt;a href="http://blogs.msdn.com/bethmassi/archive/2008/04/25/querying-html-with-linq-to-xml.aspx"&gt;Querying HTML with LINQ to XML&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Keeping in mind that now with things like the DLR and LINQ around, querying the DOM can just about as comfortably fall into either the realm of client-side scripting or server-side programming. Or anyplace in between, or both.&lt;br /&gt;&lt;br /&gt;I mean, what's to stop someone from writing a jQuery plugin that leverages on .NET (postbacked/ajaxed, or even via Silverlight) to provide full XPath support. Or to query the DOM in C# with &lt;a href="http://www.nikhilk.net/ScriptSharpIntro.aspx"&gt;ScriptSharped&lt;/a&gt; versions of jQuery and its plugins - who won't like a unified way to automate tests for the &lt;span style="font-style:italic;"&gt;whole&lt;/span&gt; web app, especially when custom plugins are involved. Possibilities are endless. &lt;small&gt;(Though I suppose nobody has ever sufficiently had the need to actually sit down and do this.)&lt;/small&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4067922377896626843-1227796515707694780?l=coding.collinchung.com'/&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/Web-program-athon?a=CZaoEJ3x2C0:IJxVX6U3mHo:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/Web-program-athon?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/Web-program-athon?a=CZaoEJ3x2C0:IJxVX6U3mHo:dnMXMwOfBR0"&gt;&lt;img src="http://feeds.feedburner.com/~ff/Web-program-athon?d=dnMXMwOfBR0" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/Web-program-athon?a=CZaoEJ3x2C0:IJxVX6U3mHo:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/Web-program-athon?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/Web-program-athon?a=CZaoEJ3x2C0:IJxVX6U3mHo:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/Web-program-athon?i=CZaoEJ3x2C0:IJxVX6U3mHo:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/Web-program-athon?a=CZaoEJ3x2C0:IJxVX6U3mHo:gIN9vFwOqvQ"&gt;&lt;img src="http://feeds.feedburner.com/~ff/Web-program-athon?i=CZaoEJ3x2C0:IJxVX6U3mHo:gIN9vFwOqvQ" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;</content><app:edited xmlns:app="http://www.w3.org/2007/app">2008-10-01T01:11:44.685+08:00</app:edited><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">2</thr:total><feedburner:origLink>http://coding.collinchung.com/2008/09/jquery-is-linq-for-dom.html</feedburner:origLink></entry><entry><title type="text">ASP.NET Heart jQuery</title><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/Web-program-athon/~3/k2PsnCR99ZU/aspnet-heart-jquery.html" /><category term="javascript" /><category term="ASP.NET" /><category term="jQuery" /><author><name>Collin</name><email>noreply@blogger.com</email><uri>http://www.blogger.com/profile/11680267268372960153</uri></author><updated>2008-09-29T03:13:42-07:00</updated><id>tag:blogger.com,1999:blog-4067922377896626843.post-4354363414503613942</id><content type="html">Today, I'm happy to discover that, Microsoft will ship &lt;a href="http://jquery.com/"&gt;jQuery&lt;/a&gt; as part of its official development toolkit.&lt;br /&gt;&lt;br /&gt;Last year, I &lt;a href="http://coding.collinchung.com/2007/10/integrating-jquery-datepicker-control.html"&gt;blogged&lt;/a&gt; about integrating the jQuery &lt;a href="http://www.eworldui.net/CustomControls/CalendarPopup.aspx"&gt;datepicker&lt;/a&gt; control into webpages with existing frameworks. The example I used involved an ASP.NET webpage with a in-house developed AJAX implementation (this was before AJAX.NET), and I went on a bit about the problems I encountered. With Microsoft's inclusion of jQuery into its developer tools (read Visual Studio), it looks like these kinda' issues will be confined to blog archives. Just make sure all legacy code is updated :D&lt;br /&gt;&lt;br /&gt;See how jQuery popularity is rocketing:&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://www.google.com/trends/viz?q=jquery,+scriptaculous,+mootools&amp;date=ytd&amp;geo=all&amp;graph=weekly_img&amp;sort=0&amp;sa=N"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 320px;" src="http://www.google.com/trends/viz?q=jquery,+scriptaculous,+mootools&amp;date=ytd&amp;geo=all&amp;graph=weekly_img&amp;sort=0&amp;sa=N" border="0" alt="" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Read more around the web:&lt;br /&gt;&lt;a href="http://weblogs.asp.net/scottgu/archive/2008/09/28/jquery-and-microsoft.aspx"&gt;jQuery and Microsoft&lt;/a&gt;&lt;br /&gt;&lt;a href="http://weblogs.asp.net/bleroy/archive/2008/09/28/jquery-now-officially-part-of-the-net-developer-s-toolbox.aspx"&gt;jQuery now officially part of the .NET developer’s toolbox&lt;/a&gt;&lt;br /&gt;&lt;a href="http://www.hanselman.com/blog/jQueryToShipWithASPNETMVCAndVisualStudio.aspx"&gt;jQuery to ship with ASP.NET MVC and Visual Studio&lt;/a&gt;&lt;br /&gt;&lt;a href="http://west-wind.com/weblog/posts/494378.aspx"&gt;Introduction to jQuery Article posted&lt;/a&gt;&lt;br /&gt;&lt;a href="http://www.25hoursaday.com/weblog/2008/09/28/jQueryToShipAsPartOfVisualStudio.aspx"&gt;jQuery to Ship as Part of Visual Studio&lt;/a&gt;&lt;br /&gt;&lt;a href="http://jquery.com/blog/2008/09/28/jquery-microsoft-nokia/"&gt;jQuery, Microsoft, and Nokia&lt;/a&gt;&lt;br /&gt;&lt;a href="http://www.webmonkey.com/blog/Microsoft_Gets_a_Clue__Adopts_jQuery"&gt;Microsoft Gets a Clue, Adopts jQuery&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4067922377896626843-4354363414503613942?l=coding.collinchung.com'/&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/Web-program-athon?a=k2PsnCR99ZU:iovpqXcnuwA:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/Web-program-athon?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/Web-program-athon?a=k2PsnCR99ZU:iovpqXcnuwA:dnMXMwOfBR0"&gt;&lt;img src="http://feeds.feedburner.com/~ff/Web-program-athon?d=dnMXMwOfBR0" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/Web-program-athon?a=k2PsnCR99ZU:iovpqXcnuwA:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/Web-program-athon?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/Web-program-athon?a=k2PsnCR99ZU:iovpqXcnuwA:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/Web-program-athon?i=k2PsnCR99ZU:iovpqXcnuwA:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/Web-program-athon?a=k2PsnCR99ZU:iovpqXcnuwA:gIN9vFwOqvQ"&gt;&lt;img src="http://feeds.feedburner.com/~ff/Web-program-athon?i=k2PsnCR99ZU:iovpqXcnuwA:gIN9vFwOqvQ" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;</content><app:edited xmlns:app="http://www.w3.org/2007/app">2008-09-29T18:13:42.968+08:00</app:edited><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://coding.collinchung.com/2008/09/aspnet-heart-jquery.html</feedburner:origLink></entry><entry><title type="text">Helpful link for those Pesky IE6 Issues</title><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/Web-program-athon/~3/fHmiHlybB0g/helpful-link-for-those-pesky-ie6-issues.html" /><author><name>Collin</name><email>noreply@blogger.com</email><uri>http://www.blogger.com/profile/11680267268372960153</uri></author><updated>2008-09-23T00:14:43-07:00</updated><id>tag:blogger.com,1999:blog-4067922377896626843.post-5581592024208177745</id><content type="html">If only this article was published a few &lt;a href="http://coding.collinchung.com/2008/08/testing-your-web-app-for-different.html"&gt;weeks earlier&lt;/a&gt;.. &lt;a href="http://blog.position-absolute.com/web-experience/css-for-ie6-5-common-problems-and-fast-ways-to-fix-them/"&gt;CSS for IE6, 6 common problems and fast ways to fix them&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4067922377896626843-5581592024208177745?l=coding.collinchung.com'/&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/Web-program-athon?a=fHmiHlybB0g:WYJGxmoHtSI:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/Web-program-athon?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/Web-program-athon?a=fHmiHlybB0g:WYJGxmoHtSI:dnMXMwOfBR0"&gt;&lt;img src="http://feeds.feedburner.com/~ff/Web-program-athon?d=dnMXMwOfBR0" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/Web-program-athon?a=fHmiHlybB0g:WYJGxmoHtSI:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/Web-program-athon?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/Web-program-athon?a=fHmiHlybB0g:WYJGxmoHtSI:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/Web-program-athon?i=fHmiHlybB0g:WYJGxmoHtSI:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/Web-program-athon?a=fHmiHlybB0g:WYJGxmoHtSI:gIN9vFwOqvQ"&gt;&lt;img src="http://feeds.feedburner.com/~ff/Web-program-athon?i=fHmiHlybB0g:WYJGxmoHtSI:gIN9vFwOqvQ" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;</content><app:edited xmlns:app="http://www.w3.org/2007/app">2008-09-23T15:14:43.000+08:00</app:edited><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://coding.collinchung.com/2008/09/helpful-link-for-those-pesky-ie6-issues.html</feedburner:origLink></entry><entry><title type="text">Online Image Editors</title><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/Web-program-athon/~3/Bi4Vgw1Kljo/online-image-editors.html" /><category term="tools" /><author><name>Collin</name><email>noreply@blogger.com</email><uri>http://www.blogger.com/profile/11680267268372960153</uri></author><updated>2008-09-18T23:46:40-07:00</updated><id>tag:blogger.com,1999:blog-4067922377896626843.post-2025907031020826795</id><content type="html">I use the free &lt;a href="http://www.getpaint.net/"&gt;Paint.NET&lt;/a&gt; for most of my image manipulation needs, but am quite impressed with &lt;a href="http://www.pixlr.com/"&gt;Pixlr&lt;/a&gt;, web-based image editor not unlike &lt;a href="https://www.photoshop.com/express/landing.html"&gt;Photoshop Express&lt;/a&gt; from Adobe. It runs pretty smoothly on my browser too. What these online image editors really need is offline support. Then, I might do away with my desktop apps.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4067922377896626843-2025907031020826795?l=coding.collinchung.com'/&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/Web-program-athon?a=Bi4Vgw1Kljo:i5XT5f_CorY:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/Web-program-athon?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/Web-program-athon?a=Bi4Vgw1Kljo:i5XT5f_CorY:dnMXMwOfBR0"&gt;&lt;img src="http://feeds.feedburner.com/~ff/Web-program-athon?d=dnMXMwOfBR0" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/Web-program-athon?a=Bi4Vgw1Kljo:i5XT5f_CorY:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/Web-program-athon?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/Web-program-athon?a=Bi4Vgw1Kljo:i5XT5f_CorY:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/Web-program-athon?i=Bi4Vgw1Kljo:i5XT5f_CorY:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/Web-program-athon?a=Bi4Vgw1Kljo:i5XT5f_CorY:gIN9vFwOqvQ"&gt;&lt;img src="http://feeds.feedburner.com/~ff/Web-program-athon?i=Bi4Vgw1Kljo:i5XT5f_CorY:gIN9vFwOqvQ" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;</content><app:edited xmlns:app="http://www.w3.org/2007/app">2008-09-19T14:46:40.383+08:00</app:edited><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://coding.collinchung.com/2008/09/online-image-editors.html</feedburner:origLink></entry><entry><title type="text">Quick Web Pages with Open Source Resources</title><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/Web-program-athon/~3/-bnxhymPtFQ/quick-web-pages-with-open-source.html" /><author><name>Collin</name><email>noreply@blogger.com</email><uri>http://www.blogger.com/profile/11680267268372960153</uri></author><updated>2008-09-11T07:28:30-07:00</updated><id>tag:blogger.com,1999:blog-4067922377896626843.post-6528957675978248446</id><content type="html">I'd been wanting to get myself into &lt;a href="http://en.wikipedia.org/wiki/Affiliate_marketing"&gt;affiliate marketing&lt;/a&gt; on the web for some time. &lt;br /&gt;&lt;br /&gt;Recently, the opportunity presented itself, in the form of &lt;a href="http://www.website.ws/kvmlm2/my.dhtml?sponsor=collinchung"&gt;GDI&lt;/a&gt;'s multi-level marketing for &lt;a href="http://www.website.ws/kvmlm2/my.dhtml?sponsor=collinchung"&gt;.ws domain names&lt;/a&gt;. Subscription is $10/month and this fee doesn't start for newbies until after 7 days from signing up. As you can work out, $10's still a lot when converted into Malaysian Ringgits. So, my strategy was to put everything up as fast as possible so I can decide if I still want in, before I'm charged any fees.&lt;br /&gt;&lt;br /&gt;I'd wanted to put up a decent website for this. After googling and clicking around a little, I found &lt;a href="http://www.oswd.org/"&gt;Open Source Web Design&lt;/a&gt;. Sites like OSWD and &lt;a href="http://www.openwebdesign.org/"&gt;Open Web Designs&lt;/a&gt; have a lot of good stuff, all open for you to use. (Check out this Smashing Mag &lt;a href="http://www.smashingmagazine.com/2007/02/14/free-design-templates/"&gt;article&lt;/a&gt; for loads more. I didn't have the time to go through every link, but these are the options.) &lt;br /&gt;&lt;br /&gt;It took me a while, but I finally found my &lt;a href="http://www.oswd.org/design/preview/id/3115"&gt;desired template&lt;/a&gt; without too much of a hassle. It's originally designed for a music site. &lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_KpCQoA0ghGs/SMkqBirKW7I/AAAAAAAAAFA/Q5sYRnA35Tk/s1600-h/1pic.jpg"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;" src="http://4.bp.blogspot.com/_KpCQoA0ghGs/SMkqBirKW7I/AAAAAAAAAFA/Q5sYRnA35Tk/s320/1pic.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5244769447025728434" /&gt;&lt;/a&gt;&lt;br /&gt;I kept the look and feel, changed the title, turned the lorem ipsum into actual content (which actually took me quite some time), filled in images with &lt;a href="http://www.sxc.hu/"&gt;stock.xchng&lt;/a&gt; photos, and finished the page off with ads. &lt;br /&gt;&lt;br /&gt;I bet the &lt;a href="http://www.solucija.com/"&gt;original designer&lt;/a&gt;'ll be pretty pissed when he sees what I've done to his baby. But that's the beauty of open source designs: Take it, appropriate it. No fussing about with ground-up wireframes or worrying about &lt;a href="http://coding.collinchung.com/2008/08/testing-your-web-app-for-different.html"&gt;browser incompatibilities&lt;/a&gt;, the designer's done it for you! (Also worth a mention is &lt;a href="http://morguefile.com/"&gt;morgueFile&lt;/a&gt;, another site I ring up for my photo needs.)&lt;br /&gt;&lt;br /&gt;In the end, after much obsessive refreshing of my web analytics tool, I think I'll give it more than the initial 7 days to prove itself. &lt;br /&gt;&lt;br /&gt;Although it took me only a few hours of tinkering about to get the site up, it'll probably take a lot more time for traffic, and eventually (hopefully) click-throughs to start making it worth my effort and money.&lt;br /&gt;&lt;br /&gt;The website, if you're interested, is &lt;a href="http://domainbre.ws/"&gt;Domain Bre.ws&lt;/a&gt; (loaded with affiliate links).&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4067922377896626843-6528957675978248446?l=coding.collinchung.com'/&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/Web-program-athon?a=-bnxhymPtFQ:NTAdZgkl7Vk:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/Web-program-athon?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/Web-program-athon?a=-bnxhymPtFQ:NTAdZgkl7Vk:dnMXMwOfBR0"&gt;&lt;img src="http://feeds.feedburner.com/~ff/Web-program-athon?d=dnMXMwOfBR0" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/Web-program-athon?a=-bnxhymPtFQ:NTAdZgkl7Vk:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/Web-program-athon?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/Web-program-athon?a=-bnxhymPtFQ:NTAdZgkl7Vk:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/Web-program-athon?i=-bnxhymPtFQ:NTAdZgkl7Vk:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/Web-program-athon?a=-bnxhymPtFQ:NTAdZgkl7Vk:gIN9vFwOqvQ"&gt;&lt;img src="http://feeds.feedburner.com/~ff/Web-program-athon?i=-bnxhymPtFQ:NTAdZgkl7Vk:gIN9vFwOqvQ" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;</content><app:edited xmlns:app="http://www.w3.org/2007/app">2008-09-11T22:28:30.979+08:00</app:edited><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://4.bp.blogspot.com/_KpCQoA0ghGs/SMkqBirKW7I/AAAAAAAAAFA/Q5sYRnA35Tk/s72-c/1pic.jpg" height="72" width="72" /><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://coding.collinchung.com/2008/09/quick-web-pages-with-open-source.html</feedburner:origLink></entry><entry><title type="text">Take AppJet Development Offline</title><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/Web-program-athon/~3/3KzwEZPieNk/take-appjet-development-offline.html" /><category term="javascript" /><category term="AppJet" /><author><name>Collin</name><email>noreply@blogger.com</email><uri>http://www.blogger.com/profile/11680267268372960153</uri></author><updated>2008-09-10T01:18:24-07:00</updated><id>tag:blogger.com,1999:blog-4067922377896626843.post-5213782504888625927</id><content type="html">You can now work on your &lt;a href="http://appjet.com/"&gt;AppJet&lt;/a&gt; apps offline, or more accurately, host your JavaScript apps locally for development purposes. The one AppJet &lt;a href="http://appjet.com/download"&gt;.jar file&lt;/a&gt; that you'll need to do this requires Java 1.6 to run, and its source is available for hackers to play with. However, you'll need to use a desktop editor in place of AppJet's wonderful in-your-browser IDE.&lt;br /&gt;&lt;br /&gt;If you think this is hot, check out Aptana's server side JavaScript solution, &lt;a href="http://www.aptana.com/jaxer"&gt;Jaxer&lt;/a&gt;. Aptana also offers a pretty nifty &lt;a href="http://www.aptana.com/studio/"&gt;IDE&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;I blogged about AppJet before:&lt;br /&gt;&lt;a href="http://coding.collinchung.com/2007/12/appjet-your-facebook-application.html"&gt;AppJet your Facebook application&lt;/a&gt;&lt;br /&gt;&lt;a href="http://coding.collinchung.com/2007/12/creating-restful-json-services-with.html"&gt;Creating RESTful JSON services with AppJet&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4067922377896626843-5213782504888625927?l=coding.collinchung.com'/&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/Web-program-athon?a=3KzwEZPieNk:ciHv8iDSApI:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/Web-program-athon?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/Web-program-athon?a=3KzwEZPieNk:ciHv8iDSApI:dnMXMwOfBR0"&gt;&lt;img src="http://feeds.feedburner.com/~ff/Web-program-athon?d=dnMXMwOfBR0" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/Web-program-athon?a=3KzwEZPieNk:ciHv8iDSApI:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/Web-program-athon?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/Web-program-athon?a=3KzwEZPieNk:ciHv8iDSApI:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/Web-program-athon?i=3KzwEZPieNk:ciHv8iDSApI:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/Web-program-athon?a=3KzwEZPieNk:ciHv8iDSApI:gIN9vFwOqvQ"&gt;&lt;img src="http://feeds.feedburner.com/~ff/Web-program-athon?i=3KzwEZPieNk:ciHv8iDSApI:gIN9vFwOqvQ" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;</content><app:edited xmlns:app="http://www.w3.org/2007/app">2008-09-10T16:18:24.164+08:00</app:edited><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://coding.collinchung.com/2008/09/take-appjet-development-offline.html</feedburner:origLink></entry><entry><title type="text">Links: Coverflow, addSizes, and Some Browser Detection (JavaScript)</title><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/Web-program-athon/~3/P2ymcff76Hs/links-coverflow-addsizes-and-some.html" /><category term="javascript" /><author><name>Collin</name><email>noreply@blogger.com</email><uri>http://www.blogger.com/profile/11680267268372960153</uri></author><updated>2008-09-04T20:58:29-07:00</updated><id>tag:blogger.com,1999:blog-4067922377896626843.post-515389228392030565</id><content type="html">&lt;a href="http://radnan.public.iastate.edu/coverflow/"&gt;Coverflow&lt;/a&gt; in JavaScript, display the size of a file link with &lt;a href="http://natbat.net/2008/Aug/27/addSizes/"&gt;addSizes.js&lt;/a&gt;, &lt;a href="http://css-tricks.com/ie-6-blocker-script/"&gt;block IE6&lt;/a&gt;, and &lt;a href="http://davidwalsh.name/detecting-google-chrome-javascript"&gt;detect Google Chrome&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4067922377896626843-515389228392030565?l=coding.collinchung.com'/&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/Web-program-athon?a=P2ymcff76Hs:prs6cPQI5f4:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/Web-program-athon?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/Web-program-athon?a=P2ymcff76Hs:prs6cPQI5f4:dnMXMwOfBR0"&gt;&lt;img src="http://feeds.feedburner.com/~ff/Web-program-athon?d=dnMXMwOfBR0" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/Web-program-athon?a=P2ymcff76Hs:prs6cPQI5f4:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/Web-program-athon?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/Web-program-athon?a=P2ymcff76Hs:prs6cPQI5f4:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/Web-program-athon?i=P2ymcff76Hs:prs6cPQI5f4:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/Web-program-athon?a=P2ymcff76Hs:prs6cPQI5f4:gIN9vFwOqvQ"&gt;&lt;img src="http://feeds.feedburner.com/~ff/Web-program-athon?i=P2ymcff76Hs:prs6cPQI5f4:gIN9vFwOqvQ" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;</content><app:edited xmlns:app="http://www.w3.org/2007/app">2008-09-05T11:58:29.460+08:00</app:edited><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://coding.collinchung.com/2008/09/links-coverflow-addsizes-and-some.html</feedburner:origLink></entry><entry><title type="text">Better Facebook IFrame Apps with XFBML</title><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/Web-program-athon/~3/TdhNeXiBZ5I/better-facebook-iframe-apps-with-xfbml.html" /><category term="javascript" /><category term="Facebook" /><author><name>Collin</name><email>noreply@blogger.com</email><uri>http://www.blogger.com/profile/11680267268372960153</uri></author><updated>2008-09-03T17:00:54-07:00</updated><id>tag:blogger.com,1999:blog-4067922377896626843.post-1002038290624983249</id><content type="html">&lt;a href="http://developers.facebook.com/news.php?blog=1&amp;story=152"&gt;FB Developer update&lt;/a&gt;: You can now use FBML tags on IFrame-based Canvas pages with &lt;a href="http://wiki.developers.facebook.com/index.php/XFBML"&gt;XFBML&lt;/a&gt;, which was previously made available for developing &lt;a href="http://wiki.developers.facebook.com/index.php/Facebook_Connect"&gt;FB Connect&lt;/a&gt; sites. Other changes include cached friends list:&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;You can access friend lists faster using the standard JavaScript client library's FB.Facebook.apiClient.friends_get(callback) call. This call detects if the data is already rendered on a canvas page, avoiding a server request and loading the data instantly through the cross-domain communication channel.&lt;/blockquote&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4067922377896626843-1002038290624983249?l=coding.collinchung.com'/&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/Web-program-athon?a=TdhNeXiBZ5I:kcsdLhK1oVQ:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/Web-program-athon?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/Web-program-athon?a=TdhNeXiBZ5I:kcsdLhK1oVQ:dnMXMwOfBR0"&gt;&lt;img src="http://feeds.feedburner.com/~ff/Web-program-athon?d=dnMXMwOfBR0" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/Web-program-athon?a=TdhNeXiBZ5I:kcsdLhK1oVQ:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/Web-program-athon?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/Web-program-athon?a=TdhNeXiBZ5I:kcsdLhK1oVQ:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/Web-program-athon?i=TdhNeXiBZ5I:kcsdLhK1oVQ:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/Web-program-athon?a=TdhNeXiBZ5I:kcsdLhK1oVQ:gIN9vFwOqvQ"&gt;&lt;img src="http://feeds.feedburner.com/~ff/Web-program-athon?i=TdhNeXiBZ5I:kcsdLhK1oVQ:gIN9vFwOqvQ" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;</content><app:edited xmlns:app="http://www.w3.org/2007/app">2008-09-04T08:00:54.210+08:00</app:edited><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://coding.collinchung.com/2008/09/better-facebook-iframe-apps-with-xfbml.html</feedburner:origLink></entry><entry><title type="text">Mapping Resources: Tutorials, MapMaker &amp; TrueSpace for VE</title><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/Web-program-athon/~3/mqEEKYWV4-k/mapping-resources-tutorials-mapmaker.html" /><category term="javascript" /><category term="maps" /><category term="Virtual Earth" /><category term="C#" /><author><name>Collin</name><email>noreply@blogger.com</email><uri>http://www.blogger.com/profile/11680267268372960153</uri></author><updated>2008-09-02T22:55:06-07:00</updated><id>tag:blogger.com,1999:blog-4067922377896626843.post-3204251065548615097</id><content type="html">The links:&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Tutorials: &lt;a href="http://blogs.msdn.com/mikeormond/archive/2008/07/21/virtual-earth-finding-a-postcode.aspx"&gt;finding a postcode with Virtual Earth&lt;/a&gt; using the &lt;code&gt;&lt;a href="http://msdn.microsoft.com/en-us/library/bb429645.aspx"&gt;VEMap.Find()&lt;/a&gt;&lt;/code&gt; method (JavaScript); &lt;a href="http://www.ibm.com/developerworks/xml/library/x-geomap1/index.html?ca=drs-"&gt;overlay data on maps using XSLT, KML, and the Google Maps API&lt;/a&gt; (JavaScript, and some PHP); and &lt;a href="http://dotnetslackers.com/articles/aspnet/The-wild-wide-web-for-mapping.aspx"&gt;from web scraping, to geo-coded XML documents, to Google maps&lt;/a&gt; (C#).&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Google's &lt;a href="http://mashable.com/2008/06/24/google-mapmaker/"&gt;mid-year&lt;/a&gt; &lt;a href="http://www.readwriteweb.com/archives/google_map_maker.php"&gt;launch&lt;/a&gt; of &lt;a href="http://www.google.com/mapmaker"&gt;MapMaker&lt;/a&gt;, a &lt;a href="http://wikimapia.org/"&gt;WikiMapia&lt;/a&gt;-alike for its Maps service.&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Build 3D objects with &lt;a href="http://www.caligari.com/Products/trueSpace/tS75/brochure/intro.asp?Cate=BIntro"&gt;trueSpace&lt;/a&gt; and &lt;a href="http://blogs.msdn.com/virtualearth/archive/2008/07/23/announcing-truespace-for-virtual-earth-3d-development.aspx"&gt;export&lt;/a&gt; &lt;a href="http://www.spatiallyadjusted.com/2008/07/24/truespace-for-virtual-earth-3d/"&gt;it&lt;/a&gt; to Virtual Earth.&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;&lt;br /&gt;More mapping resources:&lt;br /&gt;&lt;a href="http://coding.collinchung.com/2008/06/mapping-resources-yahoo-http-geocoder.html"&gt;Y! HTTP Geocoder API, Geohashes, browser-based geolocation&lt;/a&gt;&lt;br /&gt;&lt;a href="http://coding.collinchung.com/2008/01/mapping-resources-google-maps-net.html"&gt;Google Maps .NET Control, GeoRSS with WCF&lt;/a&gt;&lt;br /&gt;&lt;a href="http://coding.collinchung.com/2007/12/mapping-resources.html"&gt;Mapstraction, Geocommons, GeoCoder.us with C#&lt;/a&gt;&lt;br /&gt;&lt;a href="http://coding.collinchung.com/2007/10/open-source-mapping-with-openlayers-and.html"&gt;OpenLayers and OpenStreetMap&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4067922377896626843-3204251065548615097?l=coding.collinchung.com'/&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/Web-program-athon?a=mqEEKYWV4-k:sY53Ynh2PLU:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/Web-program-athon?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/Web-program-athon?a=mqEEKYWV4-k:sY53Ynh2PLU:dnMXMwOfBR0"&gt;&lt;img src="http://feeds.feedburner.com/~ff/Web-program-athon?d=dnMXMwOfBR0" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/Web-program-athon?a=mqEEKYWV4-k:sY53Ynh2PLU:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/Web-program-athon?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/Web-program-athon?a=mqEEKYWV4-k:sY53Ynh2PLU:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/Web-program-athon?i=mqEEKYWV4-k:sY53Ynh2PLU:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/Web-program-athon?a=mqEEKYWV4-k:sY53Ynh2PLU:gIN9vFwOqvQ"&gt;&lt;img src="http://feeds.feedburner.com/~ff/Web-program-athon?i=mqEEKYWV4-k:sY53Ynh2PLU:gIN9vFwOqvQ" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;</content><app:edited xmlns:app="http://www.w3.org/2007/app">2008-09-03T13:55:06.933+08:00</app:edited><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://coding.collinchung.com/2008/09/mapping-resources-tutorials-mapmaker.html</feedburner:origLink></entry><entry><title type="text">Silverlight for Prism, and stuff</title><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/Web-program-athon/~3/8gAUhibWhZc/silverlight-for-prism-and-stuff.html" /><category term="Silverlight" /><author><name>Collin</name><email>noreply@blogger.com</email><uri>http://www.blogger.com/profile/11680267268372960153</uri></author><updated>2008-09-02T20:17:15-07:00</updated><id>tag:blogger.com,1999:blog-4067922377896626843.post-6840550479165141074</id><content type="html">Silverlight will be &lt;a href="http://blogs.msdn.com/dphill/archive/2008/08/31/hello-prism-2-0.aspx"&gt;supporting&lt;/a&gt; Prism, Mozilla's desktop web app, erm, &lt;em&gt;platform&lt;/em&gt;. I was kinda' hoping instead for Gears to make this announcement - offline &lt;a href="http://www.google.com/help/reader/offline.html"&gt;feed reader&lt;/a&gt; and &lt;a href="http://blogs.zoho.com/general/offline-support-comments-in-zoho-writer/"&gt;document word processing&lt;/a&gt;, anyone? - but I'll take this as a positive move for users and developers alike. What all this (and the recently announced &lt;a href="http://coding.collinchung.com/2008/09/google-chrome-is-coming.html"&gt;Google Chrome&lt;/a&gt;) means is an exciting time is ahead of us. &lt;br /&gt;&lt;blockquote&gt;I'm fairly excited to see what you're capable of, if Morpheus is right and all...I'm not supposed to talk about this, but if you are...a very exciting time. We got a lot to do. We got to get to it....&lt;/blockquote&gt; - Tank, The Matrix&lt;br /&gt;&lt;br /&gt;It also means a lot more waiting before anything happens. Meanwhile, we can start working with what we have, doing things like &lt;a href="http://dotnetslackers.com/articles/silverlight/IPhone-UI-with-Silverlight-2-beta-2.aspx"&gt;this&lt;/a&gt;, create an IPhone UI with Silverlight. But as before, there's more waiting in this also, before Silverlight on Windows Mobile comes to make this &lt;em&gt;really&lt;/em&gt; exciting and worthwhile.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Update:&lt;/b&gt; Looks like Chrome with its built-in Gears support has already taken care of the desktop app side of things, especially with the &lt;a href="http://www.google.com/support/chrome/bin/answer.py?answer=95710&amp;hl=en"&gt;Application Shortcuts&lt;/a&gt; feature, coolness.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4067922377896626843-6840550479165141074?l=coding.collinchung.com'/&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/Web-program-athon?a=8gAUhibWhZc:g1Vnctt4VJY:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/Web-program-athon?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/Web-program-athon?a=8gAUhibWhZc:g1Vnctt4VJY:dnMXMwOfBR0"&gt;&lt;img src="http://feeds.feedburner.com/~ff/Web-program-athon?d=dnMXMwOfBR0" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/Web-program-athon?a=8gAUhibWhZc:g1Vnctt4VJY:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/Web-program-athon?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/Web-program-athon?a=8gAUhibWhZc:g1Vnctt4VJY:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/Web-program-athon?i=8gAUhibWhZc:g1Vnctt4VJY:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/Web-program-athon?a=8gAUhibWhZc:g1Vnctt4VJY:gIN9vFwOqvQ"&gt;&lt;img src="http://feeds.feedburner.com/~ff/Web-program-athon?i=8gAUhibWhZc:g1Vnctt4VJY:gIN9vFwOqvQ" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;</content><app:edited xmlns:app="http://www.w3.org/2007/app">2008-09-03T11:17:15.142+08:00</app:edited><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://coding.collinchung.com/2008/09/silverlight-for-prism-and-stuff.html</feedburner:origLink></entry><entry><title type="text">Google Chrome is Coming!</title><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/Web-program-athon/~3/IK8sPzAYvwE/google-chrome-is-coming.html" /><author><name>Collin</name><email>noreply@blogger.com</email><uri>http://www.blogger.com/profile/11680267268372960153</uri></author><updated>2008-09-01T19:34:21-07:00</updated><id>tag:blogger.com,1999:blog-4067922377896626843.post-3275461516797454441</id><content type="html">Yes, by now everyone's heard of the new &lt;a href="http://googleblog.blogspot.com/2008/09/fresh-take-on-browser.html"&gt;Google&lt;/a&gt; &lt;a href="http://books.google.com/books?id=8UsqHohwwVYC&amp;printsec=frontcover#PPA2,M1"&gt;browser&lt;/a&gt;, I'm just wondering what it'll do for developers like us. More browsers to &lt;a href="http://coding.collinchung.com/2008/08/testing-your-web-app-for-different.html"&gt;test&lt;/a&gt; for now?&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4067922377896626843-3275461516797454441?l=coding.collinchung.com'/&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/Web-program-athon?a=IK8sPzAYvwE:1yrMpyU57cE:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/Web-program-athon?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/Web-program-athon?a=IK8sPzAYvwE:1yrMpyU57cE:dnMXMwOfBR0"&gt;&lt;img src="http://feeds.feedburner.com/~ff/Web-program-athon?d=dnMXMwOfBR0" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/Web-program-athon?a=IK8sPzAYvwE:1yrMpyU57cE:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/Web-program-athon?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/Web-program-athon?a=IK8sPzAYvwE:1yrMpyU57cE:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/Web-program-athon?i=IK8sPzAYvwE:1yrMpyU57cE:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/Web-program-athon?a=IK8sPzAYvwE:1yrMpyU57cE:gIN9vFwOqvQ"&gt;&lt;img src="http://feeds.feedburner.com/~ff/Web-program-athon?i=IK8sPzAYvwE:1yrMpyU57cE:gIN9vFwOqvQ" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;</content><app:edited xmlns:app="http://www.w3.org/2007/app">2008-09-02T10:34:21.526+08:00</app:edited><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">3</thr:total><feedburner:origLink>http://coding.collinchung.com/2008/09/google-chrome-is-coming.html</feedburner:origLink></entry><entry><title type="text">Accessing Secured Web Content and Web Methods</title><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/Web-program-athon/~3/LvbS8k0tpZY/accessing-secured-web-contents-and-web.html" /><category term="javascript" /><category term="AJAX" /><category term="ASP.NET" /><category term="C#" /><author><name>Collin</name><email>noreply@blogger.com</email><uri>http://www.blogger.com/profile/11680267268372960153</uri></author><updated>2008-08-27T23:21:56-07:00</updated><id>tag:blogger.com,1999:blog-4067922377896626843.post-6447041005166480317</id><content type="html">Some interesting tales, or rather, blog posts, from the dark side of web programming today.&lt;br /&gt;&lt;br /&gt;The first and less sinister of the two, talks about &lt;a href="http://www.dotnetcurry.com/ShowArticle.aspx?ID=109&amp;AspxAutoDetectCookieSupport=1"&gt;accessing&lt;/a&gt; server side ASP.NET AJAX PageMethods from the client side, while the second one talks about &lt;a href="http://ryanfarley.com/blog/archive/2008/08/25/scraping-or-programatically-accessing-a-secure-webpage.aspx"&gt;accessing&lt;/a&gt; secured client side web pages from the server side. Follow? (The second article even utilizes an example that violates LinkedIn's user agreement.)&lt;br /&gt;&lt;br /&gt;The scraping article, the second one, shows you how to do it by using a simple C# program to make &lt;a href="http://msdn.microsoft.com/en-us/library/system.net.httpwebrequest.aspx"&gt;HttpWebRequests&lt;/a&gt; with authentication data programmatically embedded in a cookie. You'll need to first get this cookie by signing into the website legit on your browser and then sniff it out with a tool like &lt;a href="https://addons.mozilla.org/en-US/firefox/addon/1843"&gt;Firebug&lt;/a&gt; (which incidentally, having recently been &lt;a href="http://ejohn.org/blog/firebug-12-released/"&gt;updated&lt;/a&gt;, means you need to check this awesome tool out now).&lt;br /&gt;&lt;br /&gt;From the first article, you'll learn how to access PageMethods using JavaScript. Which is a pretty innocent and useful thing to do. I'm just wondering if coupling this with JSON style script tag requests will let you circumvent AJAX's cross-domain restrictions on PageMethods, the same way it does for ASMX web services. Anyway, &lt;a href="http://encosia.com/2008/05/29/using-jquery-to-directly-call-aspnet-ajax-page-methods/"&gt;some&lt;/a&gt; &lt;a href="http://encosia.com/2008/03/27/using-jquery-to-consume-aspnet-json-web-services/"&gt;ways&lt;/a&gt; you migth be able do this easily, with jQuery. Update: read more about &lt;a href="http://weblogs.asp.net/scottgu/archive/2007/04/04/json-hijacking-and-how-asp-net-ajax-1-0-mitigates-these-attacks.aspx"&gt;ASP.NET security with JSON&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4067922377896626843-6447041005166480317?l=coding.collinchung.com'/&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/Web-program-athon?a=LvbS8k0tpZY:D0HXfNsB0Qk:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/Web-program-athon?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/Web-program-athon?a=LvbS8k0tpZY:D0HXfNsB0Qk:dnMXMwOfBR0"&gt;&lt;img src="http://feeds.feedburner.com/~ff/Web-program-athon?d=dnMXMwOfBR0" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/Web-program-athon?a=LvbS8k0tpZY:D0HXfNsB0Qk:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/Web-program-athon?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/Web-program-athon?a=LvbS8k0tpZY:D0HXfNsB0Qk:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/Web-program-athon?i=LvbS8k0tpZY:D0HXfNsB0Qk:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/Web-program-athon?a=LvbS8k0tpZY:D0HXfNsB0Qk:gIN9vFwOqvQ"&gt;&lt;img src="http://feeds.feedburner.com/~ff/Web-program-athon?i=LvbS8k0tpZY:D0HXfNsB0Qk:gIN9vFwOqvQ" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;</content><app:edited xmlns:app="http://www.w3.org/2007/app">2008-08-28T14:21:56.675+08:00</app:edited><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://coding.collinchung.com/2008/08/accessing-secured-web-contents-and-web.html</feedburner:origLink></entry><entry><title type="text">Your Browser 6 x Faster  - Take TraceMonkey for A Spin</title><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/Web-program-athon/~3/GDJZbBBH3vM/your-browser-6-x-faster-take.html" /><category term="javascript" /><author><name>Collin</name><email>noreply@blogger.com</email><uri>http://www.blogger.com/profile/11680267268372960153</uri></author><updated>2008-08-23T00:18:41-07:00</updated><id>tag:blogger.com,1999:blog-4067922377896626843.post-7861115811266606997</id><content type="html">John Resig &lt;a href="http://ejohn.org/blog/tracemonkey/"&gt;hands you the keys&lt;/a&gt;: &lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;If you want to try these out for yourself, just snag a &lt;a href="http://ftp.mozilla.org/pub/mozilla.org/firefox/nightly/latest-trunk/"&gt;nightly&lt;/a&gt; of Firefox 3.1, open about:config, and set the following preference to true:&lt;br /&gt;&lt;br /&gt;&lt;code&gt;javascript.options.jit.content&lt;/code&gt;&lt;br /&gt;&lt;br /&gt;You should be, happily, in just-in-time tracing land. It's still buggy (hence the reason for hiding behind the preference wall) but it should be good enough to handle most web sites.&lt;/blockquote&gt;More on this:&lt;br /&gt;&lt;a href="http://weblogs.mozillazine.org/roadmap/archives/2008/08/tracemonkey_javascript_lightsp.html"&gt;TraceMonkey: JavaScript Lightspeed&lt;/a&gt;&lt;br /&gt;&lt;a href="http://shaver.off.net/diary/2008/08/22/the-birth-of-a-faster-monkey/"&gt;The birth of a faster monkey&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4067922377896626843-7861115811266606997?l=coding.collinchung.com'/&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/Web-program-athon?a=GDJZbBBH3vM:x6Lzydlsa78:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/Web-program-athon?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/Web-program-athon?a=GDJZbBBH3vM:x6Lzydlsa78:dnMXMwOfBR0"&gt;&lt;img src="http://feeds.feedburner.com/~ff/Web-program-athon?d=dnMXMwOfBR0" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/Web-program-athon?a=GDJZbBBH3vM:x6Lzydlsa78:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/Web-program-athon?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/Web-program-athon?a=GDJZbBBH3vM:x6Lzydlsa78:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/Web-program-athon?i=GDJZbBBH3vM:x6Lzydlsa78:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/Web-program-athon?a=GDJZbBBH3vM:x6Lzydlsa78:gIN9vFwOqvQ"&gt;&lt;img src="http://feeds.feedburner.com/~ff/Web-program-athon?i=GDJZbBBH3vM:x6Lzydlsa78:gIN9vFwOqvQ" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;</content><app:edited xmlns:app="http://www.w3.org/2007/app">2008-08-23T15:18:41.143+08:00</app:edited><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://coding.collinchung.com/2008/08/your-browser-6-x-faster-take.html</feedburner:origLink></entry><entry><title type="text">Gears 0.4, with Geolocation</title><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/Web-program-athon/~3/iZ_AkQITvD4/gears-04-with-geolocation.html" /><category term="javascript" /><author><name>Collin</name><email>noreply@blogger.com</email><uri>http://www.blogger.com/profile/11680267268372960153</uri></author><updated>2008-08-22T00:50:13-07:00</updated><id>tag:blogger.com,1999:blog-4067922377896626843.post-410203109775038248</id><content type="html">&lt;a href="http://gearsblog.blogspot.com/2008/08/gears-04-is-here.html"&gt;Gears 0.4&lt;/a&gt; is released, and with geolocation support for &lt;a href="http://www.google.com/support/mobile/bin/answer.py?answer=105928"&gt;these devices&lt;/a&gt; (via cell ID) using Windows Mobile (5 or higher) pocket IE 4.01 upwards:&lt;br /&gt;&lt;blockquote&gt;* HP IPAQ hw6900&lt;br /&gt;    * HTC 4350&lt;br /&gt;    * HTC 8525&lt;br /&gt;    * HTC Atlas&lt;br /&gt;    * HTC P3300&lt;br /&gt;    * HTC P3450&lt;br /&gt;    * HTC P3600&lt;br /&gt;    * HTC P3650&lt;br /&gt;    * HTC Touch (not supported on some devices)&lt;br /&gt;    * HTC Touch Dual&lt;br /&gt;    * HTC Touch Diamond (only works in IE Mobile)&lt;br /&gt;    * HTC TyTN&lt;br /&gt;    * HTC TyTN II&lt;br /&gt;    * o2 XDA Orbit&lt;br /&gt;    * Palm Treo 750&lt;br /&gt;    * Samsung Blackjack II&lt;br /&gt;    * Samsung i780&lt;br /&gt;    * SCH i760&lt;/blockquote&gt;&lt;br /&gt;Looks like it's going to be a busy weekend for me now :D&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4067922377896626843-410203109775038248?l=coding.collinchung.com'/&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/Web-program-athon?a=iZ_AkQITvD4:K3F2Utofwdo:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/Web-program-athon?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/Web-program-athon?a=iZ_AkQITvD4:K3F2Utofwdo:dnMXMwOfBR0"&gt;&lt;img src="http://feeds.feedburner.com/~ff/Web-program-athon?d=dnMXMwOfBR0" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/Web-program-athon?a=iZ_AkQITvD4:K3F2Utofwdo:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/Web-program-athon?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/Web-program-athon?a=iZ_AkQITvD4:K3F2Utofwdo:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/Web-program-athon?i=iZ_AkQITvD4:K3F2Utofwdo:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/Web-program-athon?a=iZ_AkQITvD4:K3F2Utofwdo:gIN9vFwOqvQ"&gt;&lt;img src="http://feeds.feedburner.com/~ff/Web-program-athon?i=iZ_AkQITvD4:K3F2Utofwdo:gIN9vFwOqvQ" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;</content><app:edited xmlns:app="http://www.w3.org/2007/app">2008-08-22T15:50:13.589+08:00</app:edited><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">1</thr:total><feedburner:origLink>http://coding.collinchung.com/2008/08/gears-04-with-geolocation.html</feedburner:origLink></entry><entry><title type="text">Testing Your Web App for Different Browsers</title><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/Web-program-athon/~3/vkRXLIN4Pzo/testing-your-web-app-for-different.html" /><author><name>Collin</name><email>noreply@blogger.com</email><uri>http://www.blogger.com/profile/11680267268372960153</uri></author><updated>2008-08-20T02:55:51-07:00</updated><id>tag:blogger.com,1999:blog-4067922377896626843.post-8788877620397342052</id><content type="html">I recently did some front-end interface work. Using &lt;a href="http://developer.yahoo.com/yui/"&gt;YUI&lt;/a&gt; helped me get the work done fast, and with only some minor frustrations. Until I received reports of layout inconsistencies in older versions of IE and Firefox. (Haven't tested with Opera or Safari yet.)&lt;br /&gt;&lt;br /&gt;I thought using a modern CSS framework like &lt;a href="http://developer.yahoo.com/yui/examples/grids/index.html"&gt;YUI's&lt;/a&gt; would have eliminated these difficulties from the yesteryear. Unfortunately, I must have been doing some things rather unconventionally or against best practices. Maybe I should have started with Dreamweaver. &lt;br /&gt;&lt;br /&gt;No matter, the milk is spilt. So to help me thoroughly test and make the site work on different browser platforms, I found these links helpful:&lt;br /&gt;&lt;br /&gt;&lt;a href="http://tredosoft.com/Multiple_IE"&gt;Install multiple versions of IE on your PC&lt;/a&gt;, and, &lt;a href="http://www.positioniseverything.net/articles/multiIE.html"&gt;Taming Your Multiple IE Standalones&lt;/a&gt;, articles I came to via &lt;a href="http://www.quirksmode.org/browsers/multipleie.html"&gt;PPK's Multiple Explorers&lt;/a&gt;. You can get standalone versions of IE from &lt;a href="http://browsers.evolt.org/?ie/32bit/standalone"&gt;here&lt;/a&gt; too. Microsoft recommends testing within a Virtual PC, you can find the VPC images &lt;a href="http://www.microsoft.com/downloads/details.aspx?FamilyId=21EABB90-958F-4B64-B5F1-73D0A413C8EF&amp;displaylang=en"&gt;here (with IE8!)&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Also, &lt;a href="http://portableapps.com/apps/internet/firefox_portable#legacy"&gt;Legacy Versions&lt;/a&gt; of Firefox, which links to the portable editions of the Mozilla browser. &lt;br /&gt;&lt;br /&gt;These are great because you can install them (both the Firefox and the IE versions) without messing up your computer. Just need to also test with Opera, and Safari, and I'm all done!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4067922377896626843-8788877620397342052?l=coding.collinchung.com'/&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/Web-program-athon?a=vkRXLIN4Pzo:Nn2oKUYYlDA:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/Web-program-athon?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/Web-program-athon?a=vkRXLIN4Pzo:Nn2oKUYYlDA:dnMXMwOfBR0"&gt;&lt;img src="http://feeds.feedburner.com/~ff/Web-program-athon?d=dnMXMwOfBR0" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/Web-program-athon?a=vkRXLIN4Pzo:Nn2oKUYYlDA:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/Web-program-athon?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/Web-program-athon?a=vkRXLIN4Pzo:Nn2oKUYYlDA:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/Web-program-athon?i=vkRXLIN4Pzo:Nn2oKUYYlDA:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/Web-program-athon?a=vkRXLIN4Pzo:Nn2oKUYYlDA:gIN9vFwOqvQ"&gt;&lt;img src="http://feeds.feedburner.com/~ff/Web-program-athon?i=vkRXLIN4Pzo:Nn2oKUYYlDA:gIN9vFwOqvQ" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;</content><app:edited xmlns:app="http://www.w3.org/2007/app">2008-08-20T17:55:51.544+08:00</app:edited><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">5</thr:total><feedburner:origLink>http://coding.collinchung.com/2008/08/testing-your-web-app-for-different.html</feedburner:origLink></entry><entry><title type="text">Links: JavaScript Dev and a Ruby-to-JS Tool</title><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/Web-program-athon/~3/BjoQZmXBGXA/links-javascript-dev-and-ruby-to-js.html" /><category term="javascript" /><author><name>Collin</name><email>noreply@blogger.com</email><uri>http://www.blogger.com/profile/11680267268372960153</uri></author><updated>2008-08-18T19:56:11-07:00</updated><id>tag:blogger.com,1999:blog-4067922377896626843.post-3700013549337535617</id><content type="html">&lt;a href="http://getfirebug.com/"&gt;Firebug&lt;/a&gt; on browsers other than Firefox? Use &lt;a href="http://getfirebug.com/lite.html"&gt;Firebug Lite&lt;/a&gt;. Also, quick scripts to view &lt;a href="http://www.matts411.com/webdev/a_quick_way_to_view_generated_source_code"&gt;generated source&lt;/a&gt; and &lt;a href="http://eriwen.com/javascript/js-stack-trace/"&gt;stacktrace&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://github.com/jessesielaff/red/wikis"&gt;Red&lt;/a&gt; - &lt;a href="http://wonderfullyflawed.com/2008/08/07/javascript-makes-me-see-red/"&gt;Ruby to Javascript translator&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4067922377896626843-3700013549337535617?l=coding.collinchung.com'/&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/Web-program-athon?a=BjoQZmXBGXA:FKIMxcVaJQk:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/Web-program-athon?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/Web-program-athon?a=BjoQZmXBGXA:FKIMxcVaJQk:dnMXMwOfBR0"&gt;&lt;img src="http://feeds.feedburner.com/~ff/Web-program-athon?d=dnMXMwOfBR0" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/Web-program-athon?a=BjoQZmXBGXA:FKIMxcVaJQk:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/Web-program-athon?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/Web-program-athon?a=BjoQZmXBGXA:FKIMxcVaJQk:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/Web-program-athon?i=BjoQZmXBGXA:FKIMxcVaJQk:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/Web-program-athon?a=BjoQZmXBGXA:FKIMxcVaJQk:gIN9vFwOqvQ"&gt;&lt;img src="http://feeds.feedburner.com/~ff/Web-program-athon?i=BjoQZmXBGXA:FKIMxcVaJQk:gIN9vFwOqvQ" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;</content><app:edited xmlns:app="http://www.w3.org/2007/app">2008-08-19T10:56:11.150+08:00</app:edited><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://coding.collinchung.com/2008/08/links-javascript-dev-and-ruby-to-js.html</feedburner:origLink></entry><entry><title type="text">Links: Games written in JavaScript</title><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/Web-program-athon/~3/0cqsMTGw9Kw/links-games-written-in-javascript.html" /><category term="javascript" /><author><name>Collin</name><email>noreply@blogger.com</email><uri>http://www.blogger.com/profile/11680267268372960153</uri></author><updated>2008-07-16T01:40:51-07:00</updated><id>tag:blogger.com,1999:blog-4067922377896626843.post-2764907271639627180</id><content type="html">A few games written in JavaScript recently came to my attention, and these aren't your run-of-the-mill video games either. They're pushing the boundaries of what can be done inside your browser. &lt;br /&gt;&lt;br /&gt;Of note is two &lt;a href="http://en.wikipedia.org/wiki/Defender_(arcade_game)"&gt;Defender&lt;/a&gt;-style games: &lt;a href="http://scriptnode.com/lab/spacius/"&gt;Spacius!&lt;/a&gt; A Space Adventure (with variable/&lt;a href="http://scriptnode.com/lab/spacius/?width=800&amp;height=600"&gt;expandable&lt;/a&gt; playing field, and nice sound via &lt;a href="http://www.schillmania.com/projects/soundmanager2/"&gt;SoundManager 2&lt;/a&gt;); and, &lt;a href="http://www.p01.org/releases/DHTML_contests/files/DEFENDER_of_the_favicon/ "&gt;Defender of the Favicon&lt;/a&gt; (which renders the full game in the page's favicon, no kidding.) &lt;br /&gt;&lt;br /&gt;Also, there's &lt;a href="http://www.nihilogic.dk/labs/wolfenflickr/"&gt;WolfenFlickr 3D&lt;/a&gt; which mashes up browser-bound Wolfenstein 3D with Flickr images, and &lt;a href="http://magnetiq.com/bd20/"&gt;Rockford the Invincible&lt;/a&gt;, the  dysfunctional Boulder Dash clone written in only 20 lines of JavaScript.&lt;br /&gt;&lt;br /&gt;Previously,&lt;br /&gt;&lt;a href="http://coding.collinchung.com/2008/05/links.html"&gt;Links: Wolfenstein 3D in JavaScript&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4067922377896626843-2764907271639627180?l=coding.collinchung.com'/&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/Web-program-athon?a=0cqsMTGw9Kw:mt1iqmGT9nk:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/Web-program-athon?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/Web-program-athon?a=0cqsMTGw9Kw:mt1iqmGT9nk:dnMXMwOfBR0"&gt;&lt;img src="http://feeds.feedburner.com/~ff/Web-program-athon?d=dnMXMwOfBR0" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/Web-program-athon?a=0cqsMTGw9Kw:mt1iqmGT9nk:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/Web-program-athon?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/Web-program-athon?a=0cqsMTGw9Kw:mt1iqmGT9nk:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/Web-program-athon?i=0cqsMTGw9Kw:mt1iqmGT9nk:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/Web-program-athon?a=0cqsMTGw9Kw:mt1iqmGT9nk:gIN9vFwOqvQ"&gt;&lt;img src="http://feeds.feedburner.com/~ff/Web-program-athon?i=0cqsMTGw9Kw:mt1iqmGT9nk:gIN9vFwOqvQ" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;</content><app:edited xmlns:app="http://www.w3.org/2007/app">2008-07-16T16:40:51.420+08:00</app:edited><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">1</thr:total><feedburner:origLink>http://coding.collinchung.com/2008/07/links-games-written-in-javascript.html</feedburner:origLink></entry><entry><title type="text">Links: OpenID</title><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/Web-program-athon/~3/2YaY7QbZaAk/links-openid.html" /><author><name>Collin</name><email>noreply@blogger.com</email><uri>http://www.blogger.com/profile/11680267268372960153</uri></author><updated>2008-06-24T20:35:06-07:00</updated><id>tag:blogger.com,1999:blog-4067922377896626843.post-5645417178924670637</id><content type="html">&lt;a href="http://emailtoid.net/developers/"&gt;EmailToID&lt;/a&gt; is an OpenID to email mapper web service. &lt;br /&gt;&lt;br /&gt;Also, on the web today, &lt;a href="http://www.webmonkey.com/blog/Microsoft__Google_Hint_of_Greater_OpenID_Support"&gt;hints&lt;/a&gt; of better &lt;a href="http://openid.net/what/"&gt;OpenID&lt;/a&gt; support from both Microsoft and Google. The latter with new evidence in Google Maps code, in addition to early adopter Blogger. I also &lt;a href="http://coding.collinchung.com/2008/04/links.html"&gt;previously&lt;/a&gt; posted a link of the &lt;a href="http://code.google.com/appengine/"&gt;App Engine&lt;/a&gt;-powered OpenID &lt;a href="http://openid-provider.appspot.com/"&gt;provider&lt;/a&gt; for Google Accounts. And Yahoo! &lt;a href="http://openid.yahoo.com/"&gt;already&lt;/a&gt; is an OpenID provider.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4067922377896626843-5645417178924670637?l=coding.collinchung.com'/&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/Web-program-athon?a=2YaY7QbZaAk:sNWZVUhXawk:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/Web-program-athon?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/Web-program-athon?a=2YaY7QbZaAk:sNWZVUhXawk:dnMXMwOfBR0"&gt;&lt;img src="http://feeds.feedburner.com/~ff/Web-program-athon?d=dnMXMwOfBR0" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/Web-program-athon?a=2YaY7QbZaAk:sNWZVUhXawk:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/Web-program-athon?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/Web-program-athon?a=2YaY7QbZaAk:sNWZVUhXawk:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/Web-program-athon?i=2YaY7QbZaAk:sNWZVUhXawk:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/Web-program-athon?a=2YaY7QbZaAk:sNWZVUhXawk:gIN9vFwOqvQ"&gt;&lt;img src="http://feeds.feedburner.com/~ff/Web-program-athon?i=2YaY7QbZaAk:sNWZVUhXawk:gIN9vFwOqvQ" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;</content><app:edited xmlns:app="http://www.w3.org/2007/app">2008-06-25T11:35:06.968+08:00</app:edited><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://coding.collinchung.com/2008/06/links-openid.html</feedburner:origLink></entry><entry><title type="text">Link: Firefox 3's Awesome Bar in JS</title><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/Web-program-athon/~3/-kRjiYz7Jco/link-firefox-3s-awesome-bar-in-js.html" /><category term="javascript" /><author><name>Collin</name><email>noreply@blogger.com</email><uri>http://www.blogger.com/profile/11680267268372960153</uri></author><updated>2008-06-22T19:48:08-07:00</updated><id>tag:blogger.com,1999:blog-4067922377896626843.post-1074520668571896784</id><content type="html">&lt;a href="http://www.codeproject.com/KB/scripting/JavascriptAwesomeBar.aspx"&gt;JavaScript implementation&lt;/a&gt; of &lt;a href="http://www.spreadfirefox.com/en-US/worldrecord/"&gt;Firefox 3&lt;/a&gt;'s "&lt;a href="http://www.mozilla.com/en-US/firefox/features/"&gt;Awesome Bar&lt;/a&gt;".&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4067922377896626843-1074520668571896784?l=coding.collinchung.com'/&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/Web-program-athon?a=-kRjiYz7Jco:o4fvjnBJc80:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/Web-program-athon?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/Web-program-athon?a=-kRjiYz7Jco:o4fvjnBJc80:dnMXMwOfBR0"&gt;&lt;img src="http://feeds.feedburner.com/~ff/Web-program-athon?d=dnMXMwOfBR0" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/Web-program-athon?a=-kRjiYz7Jco:o4fvjnBJc80:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/Web-program-athon?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/Web-program-athon?a=-kRjiYz7Jco:o4fvjnBJc80:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/Web-program-athon?i=-kRjiYz7Jco:o4fvjnBJc80:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/Web-program-athon?a=-kRjiYz7Jco:o4fvjnBJc80:gIN9vFwOqvQ"&gt;&lt;img src="http://feeds.feedburner.com/~ff/Web-program-athon?i=-kRjiYz7Jco:o4fvjnBJc80:gIN9vFwOqvQ" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;</content><app:edited xmlns:app="http://www.w3.org/2007/app">2008-06-23T10:48:08.298+08:00</app:edited><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://coding.collinchung.com/2008/06/link-firefox-3s-awesome-bar-in-js.html</feedburner:origLink></entry><entry><title type="text">Mapping resources: Yahoo! HTTP Geocoder API, Geohashes and Browser-based Geolocation</title><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/Web-program-athon/~3/Y2qekco2wdY/mapping-resources-yahoo-http-geocoder.html" /><category term="javascript" /><category term="maps" /><author><name>Collin</name><email>noreply@blogger.com</email><uri>http://www.blogger.com/profile/11680267268372960153</uri></author><updated>2008-06-13T00:49:08-07:00</updated><id>tag:blogger.com,1999:blog-4067922377896626843.post-5853372586177173614</id><content type="html">Links:&lt;br /&gt;&lt;ul&gt;&lt;br /&gt;&lt;li&gt;&lt;a href="http://www.webmonkey.com/"&gt;Webmonkey&lt;/a&gt; &lt;a href="http://www.webmonkey.com/tutorial/Get_Started_With_the_Yahoo_HTTP_Geocoder_API"&gt;takes a look&lt;/a&gt; at &lt;a href="http://developer.yahoo.com/maps/"&gt;Yahoo! Geocoding API&lt;/a&gt; &lt;br /&gt;&lt;blockquote&gt;Geocoding is the process of converting human-readable place data -- a city name, ZIP code, or address -- to latitude and longitude points that can be easily plotted on a map.&lt;/blockquote&gt;&lt;/li&gt;&lt;br /&gt;&lt;li&gt;&lt;a href="http://geohash.org/site/tips.html"&gt;Tips &amp; Tricks&lt;/a&gt; with &lt;a href="http://geohash.org/"&gt;Geohashes&lt;/a&gt;, another geocoding service, which provides a geohash with gradual precision degradation - instead of latitude and longitude - from human-readable address data. &lt;br /&gt;&lt;br /&gt;Not to be confused with &lt;a href="http://www.xkcd.com/"&gt;xkcd&lt;/a&gt;'s &lt;a href="http://www.xkcd.com/426/"&gt;Spontaneous Adventure Generator&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://imgs.xkcd.com/comics/geohashing.png"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 320px;" src="http://imgs.xkcd.com/comics/geohashing.png" border="0" alt="" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;/li&gt;&lt;br /&gt;&lt;li&gt;&lt;a href="http://azarask.in/blog/post/firefox-geolocation-js-library/"&gt;Geolocation Redux and a JS Library&lt;/a&gt;, a proposal for browser-based geolocation functionality with a JavaScript library to start getting your hands into it. Looks interesting.&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;Other posts in this series:&lt;br /&gt;&lt;a href="http://coding.collinchung.com/2008/01/mapping-resources-google-maps-net.html"&gt;Mapping Resources: Google Maps .NET Control, GeoRSS with WCF&lt;/a&gt;&lt;br /&gt;&lt;a href="http://coding.collinchung.com/2007/12/mapping-resources.html"&gt;Mapping Resources: Mapstraction, Geocommons, GeoCoder.us with C#&lt;/a&gt;&lt;br /&gt;&lt;a href="http://coding.collinchung.com/2007/10/open-source-mapping-with-openlayers-and.html"&gt;Mapping Resources: OpenLayers and OpenStreetMap&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4067922377896626843-5853372586177173614?l=coding.collinchung.com'/&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/Web-program-athon?a=Y2qekco2wdY:DtsrCYXpnaw:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/Web-program-athon?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/Web-program-athon?a=Y2qekco2wdY:DtsrCYXpnaw:dnMXMwOfBR0"&gt;&lt;img src="http://feeds.feedburner.com/~ff/Web-program-athon?d=dnMXMwOfBR0" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/Web-program-athon?a=Y2qekco2wdY:DtsrCYXpnaw:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/Web-program-athon?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/Web-program-athon?a=Y2qekco2wdY:DtsrCYXpnaw:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/Web-program-athon?i=Y2qekco2wdY:DtsrCYXpnaw:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/Web-program-athon?a=Y2qekco2wdY:DtsrCYXpnaw:gIN9vFwOqvQ"&gt;&lt;img src="http://feeds.feedburner.com/~ff/Web-program-athon?i=Y2qekco2wdY:DtsrCYXpnaw:gIN9vFwOqvQ" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;</content><app:edited xmlns:app="http://www.w3.org/2007/app">2008-06-13T15:49:08.430+08:00</app:edited><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://coding.collinchung.com/2008/06/mapping-resources-yahoo-http-geocoder.html</feedburner:origLink></entry><entry><title type="text">Link: Databinding PDFs in ASP.NET</title><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/Web-program-athon/~3/rDaCdoGo0rU/link-databinding-pdfs-in-aspnet.html" /><category term="ASP.NET" /><author><name>Collin</name><email>noreply@blogger.com</email><uri>http://www.blogger.com/profile/11680267268372960153</uri></author><updated>2008-06-12T02:38:18-07:00</updated><id>tag:blogger.com,1999:blog-4067922377896626843.post-3476503204149543896</id><content type="html">An interesting article about &lt;a href="http://www.developerfusion.co.uk/show/6623/"&gt;generating PDFs in .NET&lt;/a&gt; using &lt;a href="http://sourceforge.net/projects/itextsharp/"&gt;iTextSharp&lt;/a&gt;, a port of the iText open source Java library written entirely in C# for the .NET platform. And incidentally, elsewhere &lt;a href="http://www.db4o.com/"&gt;db4objects&lt;/a&gt; &lt;a href="http://developer.db4o.com/blogs/product_news/archive/2008/05/21/sharpen-your-java-app-now-java-to-c-converter-released-as-free-software.aspx"&gt;releases&lt;/a&gt; its &lt;a href="https://source.db4o.com/db4o/trunk/sharpen/"&gt;Sharpen Java to C#&lt;/a&gt; tool for free. It converts your Java source code into C#!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4067922377896626843-3476503204149543896?l=coding.collinchung.com'/&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/Web-program-athon?a=rDaCdoGo0rU:MTj6Jnr4Hhk:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/Web-program-athon?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/Web-program-athon?a=rDaCdoGo0rU:MTj6Jnr4Hhk:dnMXMwOfBR0"&gt;&lt;img src="http://feeds.feedburner.com/~ff/Web-program-athon?d=dnMXMwOfBR0" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/Web-program-athon?a=rDaCdoGo0rU:MTj6Jnr4Hhk:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/Web-program-athon?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/Web-program-athon?a=rDaCdoGo0rU:MTj6Jnr4Hhk:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/Web-program-athon?i=rDaCdoGo0rU:MTj6Jnr4Hhk:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/Web-program-athon?a=rDaCdoGo0rU:MTj6Jnr4Hhk:gIN9vFwOqvQ"&gt;&lt;img src="http://feeds.feedburner.com/~ff/Web-program-athon?i=rDaCdoGo0rU:MTj6Jnr4Hhk:gIN9vFwOqvQ" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;</content><app:edited xmlns:app="http://www.w3.org/2007/app">2008-06-12T17:38:18.646+08:00</app:edited><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://coding.collinchung.com/2008/06/link-databinding-pdfs-in-aspnet.html</feedburner:origLink></entry><entry><title type="text">Another C# to JavaScript cross-compiler</title><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/Web-program-athon/~3/RgQEVENXvkQ/another-c-to-javascript-cross-compiler.html" /><category term="javascript" /><author><name>Collin</name><email>noreply@blogger.com</email><uri>http://www.blogger.com/profile/11680267268372960153</uri></author><updated>2008-06-10T23:57:15-07:00</updated><id>tag:blogger.com,1999:blog-4067922377896626843.post-900361994818777751</id><content type="html">Just when C#'s update to 3.5 felt like it's turning into JavaScript (well, a little bit, especially with the new &lt;a href="http://msdn.microsoft.com/en-us/library/bb397687.aspx"&gt;Lambda&lt;/a&gt; capabilities), &lt;a href="http://wiki.ecmascript.org/doku.php"&gt;ECMAScript 4&lt;/a&gt; started to feel like JavaScript was heading into C# territory, with more advanced types, and type and objects support, and then some. Anyway, I digress. What I'd wanted to say was what I'd found today, in a rather roundabout kind of way (via John Resig's post about &lt;a href="http://ejohn.org/blog/writing-ecmascript-4-today/"&gt;writing ECMAScript 4&lt;/a&gt; with &lt;a href="http://ecmascript4.com/"&gt;Mascara&lt;/a&gt; which recompiles the new ECMAScript standard into classic JavaScript). It's this: &lt;a href="http://jsc.sourceforge.net/"&gt;JSC&lt;/a&gt;, an &lt;a href="http://msdn.microsoft.com/en-us/library/c5tkafs1(VS.71).aspx"&gt;MSIL&lt;/a&gt; to JavaScript recompiler. You write C# code, and I quote, and the application magically appears!&lt;br /&gt;&lt;br /&gt;Almost as cool as &lt;a href="http://projects.nikhilk.net/ScriptSharp/"&gt;Script#&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Somehow related,&lt;br /&gt;&lt;a href="http://coding.collinchung.com/2008/04/ruby-love-in-browser.html"&gt;Ruby love in the browser&lt;/a&gt;&lt;br /&gt;&lt;a href="http://coding.collinchung.com/2007/09/parenscript-for-javascript-universal.html"&gt;ParenScript for the javascript universal runtime&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4067922377896626843-900361994818777751?l=coding.collinchung.com'/&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/Web-program-athon?a=RgQEVENXvkQ:4Hikc-PuApw:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/Web-program-athon?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/Web-program-athon?a=RgQEVENXvkQ:4Hikc-PuApw:dnMXMwOfBR0"&gt;&lt;img src="http://feeds.feedburner.com/~ff/Web-program-athon?d=dnMXMwOfBR0" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/Web-program-athon?a=RgQEVENXvkQ:4Hikc-PuApw:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/Web-program-athon?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/Web-program-athon?a=RgQEVENXvkQ:4Hikc-PuApw:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/Web-program-athon?i=RgQEVENXvkQ:4Hikc-PuApw:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/Web-program-athon?a=RgQEVENXvkQ:4Hikc-PuApw:gIN9vFwOqvQ"&gt;&lt;img src="http://feeds.feedburner.com/~ff/Web-program-athon?i=RgQEVENXvkQ:4Hikc-PuApw:gIN9vFwOqvQ" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;</content><app:edited xmlns:app="http://www.w3.org/2007/app">2008-06-11T14:57:15.480+08:00</app:edited><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">1</thr:total><feedburner:origLink>http://coding.collinchung.com/2008/06/another-c-to-javascript-cross-compiler.html</feedburner:origLink></entry><entry><title type="text">Links for Work: ASP.NETand stuff</title><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/Web-program-athon/~3/hBogARHEOA8/links-for-work-aspnetand-stuff.html" /><category term="ASP.NET" /><author><name>Collin</name><email>noreply@blogger.com</email><uri>http://www.blogger.com/profile/11680267268372960153</uri></author><updated>2008-06-05T20:59:52-07:00</updated><id>tag:blogger.com,1999:blog-4067922377896626843.post-372636061449109536</id><content type="html">I've been busy at work, mostly with taking out the budgeting functionalities in our HR-based Training module and turning it into a standalone web application. This gave me a few interesting architectural challenges as I decoupled the software, and later reintegrated it back into the main product in a more modular approach. Basically, we wanted to reuse the Training module's budgeting component in our Recruitment module. &lt;br /&gt;&lt;br /&gt;This exercise also let me play with some of the newer technologies, like LINQ and ASP.NET 3.5 which have somehow fueled my obsession with things like code base reduction, doing things declaratively with ASP.NET, and a new-found preoccupation with performance which in a lot of cases have lead me down the dark path of premature optimization. Anyway, many interesting lessons learnt, and a few more days and I'll be off this project. Here are some interesting links which I've collected:&lt;br /&gt;&lt;a href="http://davidjberman.com/blogs/csharp/archive/2007/08/13/how-to-create-asynchronous-asp-net-pages-using-c.aspx"&gt;Asynchronous ASP.NET pages&lt;/a&gt;&lt;br /&gt;&lt;a href="http://dotnetslackers.com/articles/aspnet/Using-JSON-With-ASPNET-35.aspx"&gt;Using JSON with ASP.NET 3.5&lt;/a&gt;&lt;br /&gt;&lt;a href="http://www.singingeels.com/Articles/Self_Sorting_GridView_with_LINQ_Expression_Trees.aspx"&gt;Self Sorting GridView with LINQ Expression Trees&lt;/a&gt;&lt;br /&gt;&lt;a href="http://igoro.com/archive/7-tricks-to-simplify-your-programs-with-linq/"&gt;7 tricks to simplify your programs with LINQ&lt;/a&gt;&lt;br /&gt;&lt;a href="http://blog.devarchive.net/2008/05/loading-and-executing-javascript-files.html"&gt;Loading and Executing JavaScript Files From JavaScript, ASP.NET AJAX&lt;/a&gt;&lt;br /&gt;&lt;a href="http://www.adverseconditionals.com/2008/06/try-catching-in-single-line-of-code.html"&gt;Try-catching in a single line of code&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Previous work-related posts here on this blog:&lt;br /&gt;&lt;a href="http://coding.collinchung.com/2008/05/partial-rendering-without-updatepanel.html"&gt;Partial rendering without UpdatePanel&lt;/a&gt;&lt;br /&gt;&lt;a href="http://coding.collinchung.com/2007/12/detecting-blobs-mime-type.html"&gt;Detecting a BLOB's MIME type&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4067922377896626843-372636061449109536?l=coding.collinchung.com'/&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/Web-program-athon?a=hBogARHEOA8:Y9_PRFnVj0g:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/Web-program-athon?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/Web-program-athon?a=hBogARHEOA8:Y9_PRFnVj0g:dnMXMwOfBR0"&gt;&lt;img src="http://feeds.feedburner.com/~ff/Web-program-athon?d=dnMXMwOfBR0" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/Web-program-athon?a=hBogARHEOA8:Y9_PRFnVj0g:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/Web-program-athon?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/Web-program-athon?a=hBogARHEOA8:Y9_PRFnVj0g:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/Web-program-athon?i=hBogARHEOA8:Y9_PRFnVj0g:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/Web-program-athon?a=hBogARHEOA8:Y9_PRFnVj0g:gIN9vFwOqvQ"&gt;&lt;img src="http://feeds.feedburner.com/~ff/Web-program-athon?i=hBogARHEOA8:Y9_PRFnVj0g:gIN9vFwOqvQ" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;</content><app:edited xmlns:app="http://www.w3.org/2007/app">2008-06-06T11:59:52.675+08:00</app:edited><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://coding.collinchung.com/2008/06/links-for-work-aspnetand-stuff.html</feedburner:origLink></entry><entry><title type="text">ViewerSvg</title><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/Web-program-athon/~3/4DrbOu49cW8/viewersvg.html" /><category term="Silverlight" /><author><name>Collin</name><email>noreply@blogger.com</email><uri>http://www.blogger.com/profile/11680267268372960153</uri></author><updated>2008-06-01T07:50:46-07:00</updated><id>tag:blogger.com,1999:blog-4067922377896626843.post-6561772941965737328</id><content type="html">&lt;a href="http://www.wpf-graphics.com/ViewerSvg.aspx"&gt;ViewerSvg&lt;/a&gt;, the Svg to Xaml converter.&lt;br /&gt;&lt;br /&gt;Previously,&lt;br /&gt;&lt;a href="http://coding.collinchung.com/2008/01/use-free-vectors-in-your-silverlight.html"&gt;Use free vectors in your Silverlight development&lt;/a&gt;&lt;br /&gt;&lt;a href="http://coding.collinchung.com/2008/01/kaxaml-silverlight-tool-sorta.html"&gt;Kaxaml (Silverlight tool, sorta)&lt;/a&gt;&lt;br /&gt;&lt;a href="http://coding.collinchung.com/2007/09/xaml-inspection-with-silverlight-spy.html"&gt;XAML inspection with Silverlight Spy&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4067922377896626843-6561772941965737328?l=coding.collinchung.com'/&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/Web-program-athon?a=4DrbOu49cW8:w0BfkSn4isQ:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/Web-program-athon?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/Web-program-athon?a=4DrbOu49cW8:w0BfkSn4isQ:dnMXMwOfBR0"&gt;&lt;img src="http://feeds.feedburner.com/~ff/Web-program-athon?d=dnMXMwOfBR0" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/Web-program-athon?a=4DrbOu49cW8:w0BfkSn4isQ:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/Web-program-athon?d=7Q72WNTAKBA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/Web-program-athon?a=4DrbOu49cW8:w0BfkSn4isQ:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/Web-program-athon?i=4DrbOu49cW8:w0BfkSn4isQ:V_sGLiPBpWU" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/Web-program-athon?a=4DrbOu49cW8:w0BfkSn4isQ:gIN9vFwOqvQ"&gt;&lt;img src="http://feeds.feedburner.com/~ff/Web-program-athon?i=4DrbOu49cW8:w0BfkSn4isQ:gIN9vFwOqvQ" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;</content><app:edited xmlns:app="http://www.w3.org/2007/app">2008-06-01T22:50:46.978+08:00</app:edited><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://coding.collinchung.com/2008/06/viewersvg.html</feedburner:origLink></entry></feed>
