<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>CodingExperiments.com &#187; Internet</title>
	<atom:link href="http://codingexperiments.com/category/internet/feed/" rel="self" type="application/rss+xml" />
	<link>http://codingexperiments.com</link>
	<description>$ sudo make money</description>
	<lastBuildDate>Wed, 07 Apr 2010 02:53:05 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=abc</generator>
		<item>
		<title>Five Reasons FriendFeed Has Made Reading Personal Blogs Interesting</title>
		<link>http://codingexperiments.com/five-reasons-friendfeed-has-made-reading-personal-blogs-interesting/</link>
		<comments>http://codingexperiments.com/five-reasons-friendfeed-has-made-reading-personal-blogs-interesting/#comments</comments>
		<pubDate>Fri, 17 Jul 2009 18:43:32 +0000</pubDate>
		<dc:creator>Rishabh Mishra</dc:creator>
				<category><![CDATA[Internet]]></category>
		<category><![CDATA[web 2.0]]></category>

		<guid isPermaLink="false">http://codingexperiments.com/?p=911</guid>
		<description><![CDATA[I don&#8217;t like personal blogs. No offense to people that do have blogs chronicling their lives, but I do not have the time or motivation to read personal blogs, even personal blogs that are written by my friends. I probably wouldn&#8217;t even be able to maintain interest in reading the personal blog of a person [...]]]></description>
			<content:encoded><![CDATA[<p>I don&#8217;t like personal blogs.</p>
<p>No offense to people that do have blogs chronicling their lives, but I do not have the time or motivation to read personal blogs, even personal blogs that are written by my friends.</p>
<p>I probably wouldn&#8217;t even be able to maintain interest in reading the personal blog of a person that has a life more interesting than a James Bond movie. (Of course, I mean&#8211;such an autobiography would probably do better as a book or movie. Especially a movie.)</p>
<p>These <em>above</em> statements are assuming that FriendFeed, Twitter, and Facebook are not personal blogs for the users that use them. But assuming that those three social networks are personal blogging platforms, then my tune has to change&#8211;especially because of FriendFeed.</p>
<p>For the rest of this post, I will focus on the advancements that FriendFeed has brought to the personal blog; advancements that enable me to tolerate personal blogs.</p>
<h3>1) Posts that are shorter, but not too short</h3>
<p><a href="/images/friendfeed_personal_blog/input_box_character_length.png"><img class="alignnone" src="/images/friendfeed_personal_blog/input_box_character_length_thumbnail.png" alt="" width="500" height="258" /></a></p>
<p><em>Click on the above image to see it at full-size.</em></p>
<p>FriendFeed posts, by far, are shorter than long essays about one&#8217;s life. FriendFeed comments do have the capacity for quite long posts, but people generally keep FriendFeed messages short.</p>
<p>On the flip side, FriendFeed does not demand that an individual&#8217;s posts be insanely short&#8211;like Twitter posts. The advantage a decent message length is that one does not have to resort to hard-to-read shorthand  (&#8220;goin 2 library&#8221;&#8211;a very simple example) to get a message to fit in a brutally short character limit.</p>
<h3>2) Hiding functionality</h3>
<p><img class="alignnone" src="/images/friendfeed_personal_blog/hide.png" alt="" width="375" height="186" /></p>
<p>The problem with personal blogs is that if I read your blog, you decide what I see. This means that I either scroll through content that I may not like, or just not read the blog at all.</p>
<p>FriendFeed has a little &#8220;Hide&#8221; link next to entries. I can even use the &#8220;Hide&#8221; functionality to wipe out vast swaths of content.</p>
<p>To summarize, not only can I avoid seeing one of an individual&#8217;s tweets again&#8211;I can avoid seeing all of them again!</p>
<h3>3) Lists</h3>
<p>Let&#8217;s say that I want to keep track of all of my friends that live in a certain region, belong to a certain organization, or otherwise can somehow be categorized into one larger entity. FriendFeed&#8217;s lists allow me to mix all of their feeds into one page&#8211;while keeping their feeds separate from others.</p>
<p>Not only that, I can use the &#8220;Best of the day&#8221; feature in FriendFeed lists to make sure that I do not miss the FriendFeed posts that have attracted the most attention from other users.</p>
<h3>4) Different user interfaces through the API</h3>
<p>FriendFeed&#8217;s API means that developers can create their own custom user interfaces for the website. For example, I have previously covered on this blog the <a title="CodingExperiments: NoiseRiver: the Friendfeed App That’s Your New Bicycle." href="http://codingexperiments.com/noiseriver-the-friendfeed-app-thats-your-new-bicycle/">NoiseRiver</a> interface for FriendFeed.</p>
<p>In addition, there is Benjamin Golub&#8217;s <a title="fftogo: login" href="http://fftogo.com/">fftogo</a> application&#8211;bringing FriendFeed to mobile phone browsers. Golub&#8217;s creation does not use Javascript at all, because many mobile phone browsers support it poorly. Phones w web browsers, such as the iPhone and Android browsers, can use the non-API-powered user interface at <a href="http://friendfeed.com/iphone">http://friendfeed.com/iphone</a>.</p>
<p>RSS also enables such user interfaces, but the same RSS feed reader doesn&#8217;t usually provide all these interfaces and the opportunity to create more*. In addition, the different user interfaces sync instantly&#8211;simply given that all the user interfaces (third-party or not) rely on the same database at FriendFeed. I can add a subscription in the main interface, and expect to see that subscription&#8217;s post in fftogo.</p>
<p><em>*Google Reader comes close, though.</em></p>
<h3>5) Saved Searches</h3>
<p><img class="alignnone" src="/images/friendfeed_personal_blog/saved_search_box.png" alt="" width="218" height="226" /></p>
<p><a href="/images/friendfeed_personal_blog/saved_searches.png"><img class="alignnone" src="/images/friendfeed_personal_blog/saved_searches_thumbnail.png" alt="" width="500" height="452" /></a></p>
<p><em>Click on the above image to view it full-size.</em></p>
<p>The &#8220;hiding&#8221; functionality is good and all&#8211;but it isn&#8217;t very precise. I can hide a friend&#8217;s Twitter posts, but I can&#8217;t hide his Twitter posts that contain certain keywords&#8211;such as &#8220;iphone.&#8221;</p>
<p>FriendFeed saved searches is designed to fix that. One can use the advanced search interface&#8211;or type in search operators him or herself&#8211;to create complex views that exclude and include certain things.</p>
<hr />So what happens when you take the above five reasons and add them together? You end up wtih a very powerful RSS reader that actually transforms personal blogging.</p>
<p>How powerful?</p>
<p>Well, powerful enough to convince a busy Unix geek like me to <a title="FriendFeed: Rishabh Mishra's profile" href="http://friendfeed.com/possible248">maintain a personal blog</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://codingexperiments.com/five-reasons-friendfeed-has-made-reading-personal-blogs-interesting/feed/</wfw:commentRss>
		<slash:comments>10</slash:comments>
		</item>
		<item>
		<title>The Sudden Epiphany of Understanding I Received from Blogging</title>
		<link>http://codingexperiments.com/the-sudden-epiphany-of-understanding-i-received-from-blogging/</link>
		<comments>http://codingexperiments.com/the-sudden-epiphany-of-understanding-i-received-from-blogging/#comments</comments>
		<pubDate>Wed, 03 Dec 2008 23:26:57 +0000</pubDate>
		<dc:creator>Rishabh Mishra</dc:creator>
				<category><![CDATA[Internet]]></category>
		<category><![CDATA[Blogging]]></category>

		<guid isPermaLink="false">http://codingexperiments.com/?p=502</guid>
		<description><![CDATA[Update: Note that the thoughts I describe in this post ONLY apply to my blog posts. Three other authors have contributed to this blog. Today is the one-year anniversary of my first post on this blog. Please do not read my first post, or any of the 136 other posts (not including this one), because [...]]]></description>
			<content:encoded><![CDATA[<p><em>Update: Note that the thoughts I describe in this post ONLY apply to <a title="CodingExperiments: possible248" href="http://codingexperiments.com/?author=1">my blog posts</a>. Three other authors have contributed to this blog.</em></p>
<p>Today is the one-year anniversary of <a title="CodingExperiments: What I Have Learned from the Past Year of Blogging" href="http://codingexperiments.com/archives/5">my first post</a> on this blog. Please do not read my first post, or any of the 136 other posts (not including this one), because you will be sorely disappointed.</p>
<p>A long time ago, I wanted to create a website where I could talk about some interesting tech-related ideas and see if anybody liked those ideas. Eventually, I registered a domain name for this blog and attached it to my web hosting account at Bluehost.</p>
<p>Was I successful?</p>
<p>Yes and no.</p>
<p>I&#8217;m a bit of a pessimist, so first I&#8217;m going to explain why I think I failed. My goal was to write many high quality blog posts centering around programming. The posts would include actual code examples. I&#8217;ve deviated far from my goal. With the difficulties I had with displaying code examples, I talked about other topics, such as blogging. (Although my posts on blogging and social media did get <a title="Louis Gray: Five Blogs For June on Your Summer Reading List" href="http://www.louisgray.com/live/2008/06/five-blogs-for-june-on-your-summer.html">A-List blogger Louis Gray&#8217;s attention</a>.)</p>
<p>I also took way too much time to develop certain consistencies, such as the capitalization in the title (Prepositions are not capitalized).</p>
<p>But, I did succeed beyond my wildest dreams.</p>
<p>Although I started the blog in December 2007, I only started tracking statistics in the middle of May 2008. By the end of the (not completely tracked) month, about 134 MB of my bandwidth had been used by non-bot visitors. I thought that this was a good start.</p>
<p>In June, I had used more than a gigabyte of bandwidth. Now, this had really excited me. Because all I post is text and some images, the fact that I had used up a whole gigabyte of bandwidth made me feel giddy.</p>
<p>June made me feel giddy, but July had me shocked. On the first day of July, I had nearly reached the total bandwidth used in the entire month of June. On the second day of July, I had used up eleven more gigabytes of bandwidth. <a title="CodingExperiments: Which Linux Distributions Are Dying?" href="http://codingexperiments.com/archives/149">A poorly written blog post of mine</a> hit <a title="Digg: Which Linux Distributions Are Dying?" href="http://digg.com/linux_unix/Which_Linux_Distributions_Are_Dying">Digg</a>, <a title="Reddit: Which Linux Distributions Are Dying?" href="http://www.reddit.com/comments/6pu2l/which_linux_distributions_are_dying">Reddit</a>, <a title="LinuxToday:  Which Linux Distributions Are Dying? " href="http://www.linuxtoday.com/news_story.php3?ltsn=2008-07-01-009-26-NW-HW-RL">LinuxToday</a>, <a title="tuxmachines.org: Which Linux Distributions Are Dying?" href="http://www.tuxmachines.org/node/28276">TuxMachines</a>, and countless blogs in many languages.</p>
<p>Most of the hundreds of comments (spread across the websites listed above) that my post received were negative. I felt a little disappointed that my most viewed post of all time had to be one that made me look foolish. But then I stopped skimming over the comments and started reading and analyzing them. I discovered that I could learn a lot about the Linux community from the comments, and I decided that in the end, it was good that I had published the post.</p>
<p>In the end, I didn&#8217;t accomplish my original goal of having others see my brilliant ideas. Instead, I found the brilliant ideas of everybody else.</p>
]]></content:encoded>
			<wfw:commentRss>http://codingexperiments.com/the-sudden-epiphany-of-understanding-i-received-from-blogging/feed/</wfw:commentRss>
		<slash:comments>8</slash:comments>
		</item>
		<item>
		<title>Why Web 2.0 Applications Deserve the Permanent Beta</title>
		<link>http://codingexperiments.com/why-web-20-applications-deserve-the-permanent-beta/</link>
		<comments>http://codingexperiments.com/why-web-20-applications-deserve-the-permanent-beta/#comments</comments>
		<pubDate>Sun, 09 Nov 2008 01:56:56 +0000</pubDate>
		<dc:creator>Rishabh Mishra</dc:creator>
				<category><![CDATA[Internet]]></category>
		<category><![CDATA[Security]]></category>
		<category><![CDATA[web 2.0]]></category>
		<category><![CDATA[beta]]></category>

		<guid isPermaLink="false">http://codingexperiments.com/?p=481</guid>
		<description><![CDATA[The web application in permanent beta is the latest fashion in today&#8217;s Internet world. Some folks believe that after several years of testing, that web applications ought to shed the beta tag and call themselves stable. I disagree. Open source desktop software is significantly more flexible than a closed source web application in terms of [...]]]></description>
			<content:encoded><![CDATA[<p>The web application in permanent beta is the latest fashion in today&#8217;s Internet world. Some folks believe that after several years of testing, that web applications ought to shed the beta tag and call themselves stable.</p>
<p>I disagree.</p>
<p>Open source desktop software is significantly more flexible than a closed source web application in terms of giving what users want. Desktop applications have extensibility through plugins, extensions, themes, and so forth. Web applications currently have only a weak extensibility through Greasemonkey.</p>
<p>Facebook Apps are closer to true extensibility, but Facebook remains in control over Facebook Apps, <a title="Venture Cyclist: Facebook to remove all third party apps?" href="http://venturecyclist.blogspot.com/2008/07/facebook-to-remove-all-third-party-apps.html">which results in rumors that Facebook is going to close down third party apps</a>. Developers creating extensions of desktop applications usually do not have to worry about their extensions being wiped off the face of the Earth.</p>
<p>Also regarding Facebook, some users are not happy with <a href="http://blog.facebook.com/blog.php?post=30074837130">Facebook&#8217;s transition to a new user interface</a>. There is even a <a href="http://www.facebook.com/group.php?gid=21213297178">petition for the old user interface to return</a>. I suggest you compare Facebook to WordPress. Nobody is going to force a blogger to upgrade to the latest version of WordPress, but there is little one can do if Facebook decides to switch to a different (and worse, in the mind of the user) UI.</p>
<p>Does my blog post ring a bell? Oh yeah, this blog post sounds roughly similar to <a href="http://news.cnet.com/8301-1001_3-10054253-92.html">Richard Stallman&#8217;s opinions on cloud computing</a>. Stallman is dead right. One should only truly trust open source software on hardware within the ownership of the user.</p>
<p>So where does the whole &#8220;keep Web 2.0 apps in permanent beta&#8221; idea come into play? My point is that Web 2.0 apps ought to keep themselves in permanent beta as a reminder to users that no Web 2.0 app outside of the user&#8217;s control is as safe as an application within the user&#8217;s control.</p>
<p>Use Web 2.0 apps responsibly™.</p>
]]></content:encoded>
			<wfw:commentRss>http://codingexperiments.com/why-web-20-applications-deserve-the-permanent-beta/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Winning the CodingExperiments Worst Website of the Year Is&#8230; Every Website Coded Entirely in Adobe Flash!</title>
		<link>http://codingexperiments.com/winning-the-codingexperiments-worst-website-of-the-year-is-every-website-coded-entirely-in-adobe-flash/</link>
		<comments>http://codingexperiments.com/winning-the-codingexperiments-worst-website-of-the-year-is-every-website-coded-entirely-in-adobe-flash/#comments</comments>
		<pubDate>Sun, 05 Oct 2008 13:27:23 +0000</pubDate>
		<dc:creator>Rishabh Mishra</dc:creator>
				<category><![CDATA[Internet]]></category>
		<category><![CDATA[Best Practices]]></category>
		<category><![CDATA[firefox]]></category>
		<category><![CDATA[flash]]></category>
		<category><![CDATA[Javascript]]></category>
		<category><![CDATA[usability]]></category>

		<guid isPermaLink="false">http://codingexperiments.com/?p=386</guid>
		<description><![CDATA[Introduction Adobe Flash, while it appears to be buggier on Linux, is a neat thing. I can watch animations and play games right through my web browser. Now, I would prefer that Adobe Flash not be put to the use of making entire websites, or even major parts of websites, such as a navigation menu. [...]]]></description>
			<content:encoded><![CDATA[<h2>Introduction</h2>
<p>Adobe Flash, while it appears to be buggier on Linux, is a neat thing. I can <a title="Original JibJab Animations" href="http://www.jibjab.com/originals">watch animations</a> and <a title="Orisinal : Morning Sunshine" href="http://www.ferryhalim.com/orisinal/">play games</a> right through <a title="UserFriendly: Cartoon for Sep 06, 2008" href="http://ars.userfriendly.org/cartoons/?id=20080906">my web browser</a>. Now, I would prefer that Adobe Flash not be put to the use of making entire websites, or even major parts of websites, such as a navigation menu.</p>
<p>Flash usability hasn&#8217;t had major improvements in eight years, as evident by Jakob Nielsen&#8217;s similar article on <a title="Jakob Nielsen's Alertbox, October 29, 2000: Flash: 99% Bad" href="http://www.useit.com/alertbox/20001029.html">Flash and usability</a>.</p>
<h2>Why too much Flash is bad</h2>
<h3>1) The user interface is nonstandard.</h3>
<p>Flash websites have a tendency to make their own (shinier) scroll bars to help me navigate large amounts of text.</p>
<p>A web designer creating his or her own scrollbar, and then refusing to let me use the browser&#8217;s scrollbar is like the web designer poking holes in my car&#8217;s tires and replacing the tires with cardboard boxes. Well, perhaps I&#8217;m being a bit dramatic with the metaphor.</p>
<p>Interaction with the user interface also totally gives the user unexpected surprises. Most Flash websites do not allow me to right-click*, middle-click, or use my web browser&#8217;s scroll bar.</p>
<p><img class="alignnone" src="/comics/comic29.png" alt="" width="311" height="312" /></p>
<p><em>*Whenever I say, &#8220;no right-click&#8221;, I mean that the user cannot access a context menu from right-clicking.</em></p>
<h3>2) Flash websites often take longer to load.</h3>
<p>Oftentimes, I want good ol&#8217; fashioned text coming down the pipeline to my screen. I do not want:</p>
<ul>
<li>text animations.</li>
<li>animations of somewhat related images.</li>
<li>sound.</li>
<li>a screen that tells me that the above three are loading.</li>
</ul>
<h3>3) Ctrl+F doesn&#8217;t work on Flash websites.</h3>
<p>I cannot use text manipulation tools to edit or search the webpage. I cannot type Ctrl+F and then search the text of the page. Greasemonkey would not work well in all-Flash websites. Neither would bookmarklets or Firefox extensions that allow me to manipulate the page.</p>
<h3>4) OS-specific Flash Player bugs</h3>
<p>I recently visited a website that had a bug with an embedded Flash slideshow. The bug was only visible when using the Linux Flash Player. On Windows, even on Firefox, the Flash slideshow worked perfectly.</p>
<p>The bug was that the Javascript drop down navigation was being hidden under the Flash slideshow on Linux, which made most of the menu inaccessible.</p>
<p>Designers shouldn&#8217;t have to test on multiple operating systems, because the vast majority of designers probably do not have the time or resources to do so.</p>
<h3>5) Redundancy</h3>
<p>Plenty of website designers will provide a plain HTML version of the content on the website for users that do not have Adobe Flash. I just don&#8217;t understand why there needs two versions of a webpage, with one being flashier than the other.</p>
<p>The main usability issue here is that any text or link pointing to the HTML version is often in very small text and sometimes only visible to users that do not use Flash. Users that do have Flash and want to use the text version might have a hard time finding the text version.</p>
<h3>6) Redundancy</h3>
<p>Sorry, I couldn&#8217;t resist.</p>
<h2>Conclusion</h2>
<p>I would rather visit an ugly webpage full of HTML hacks that were inserted by a <a title="CodingExperiments: Noobs Called. They Want Their WYSIWYG Editor Back." href="http://codingexperiments.com/archives/107">poorly coded WYSIWYG editor</a> than an impressive looking (but completely unusable) Flash website.</p>
<p>Why?</p>
<p>Because in an HTML website, the defaults are more usable because defaults in HTML pages are what most users are used to. In an HTML page, developers would have to go out of their way to create some of the annoyances that are common on Flash websites.</p>
<p>The vast majority of people that create HTML pages don&#8217;t have an impulse to disable right-clicking in the browser, or to make their own scrollbar when the browser has a scrollbar that works just fine.</p>
<p>So, please. I beg you to start an HTML page with a DOCTYPE tag, end it with &lt;/html&gt;, and make sure that the only uses of Flash in between are not for displaying text and images.</p>
]]></content:encoded>
			<wfw:commentRss>http://codingexperiments.com/winning-the-codingexperiments-worst-website-of-the-year-is-every-website-coded-entirely-in-adobe-flash/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
		<item>
		<title>Blogging Tip: Work on Posts One at a Time</title>
		<link>http://codingexperiments.com/blogging-tip-work-on-posts-one-at-a-time/</link>
		<comments>http://codingexperiments.com/blogging-tip-work-on-posts-one-at-a-time/#comments</comments>
		<pubDate>Wed, 24 Sep 2008 22:19:36 +0000</pubDate>
		<dc:creator>Rishabh Mishra</dc:creator>
				<category><![CDATA[Internet]]></category>
		<category><![CDATA[web 2.0]]></category>
		<category><![CDATA[Blogging]]></category>
		<category><![CDATA[Tips]]></category>

		<guid isPermaLink="false">http://codingexperiments.com/?p=402</guid>
		<description><![CDATA[You know why I haven&#8217;t posted in a while? No, it is not because I&#8217;m really busy, but because the CodingExperiments team has been churning draft after draft and ping-ponging back and forth between them to make updates. The result is a massive amount of half-baked blog posts. Working on posts one at a time [...]]]></description>
			<content:encoded><![CDATA[<p>You know why I haven&#8217;t posted in a while? No, it is not because I&#8217;m really busy, but because the CodingExperiments team has been churning draft after draft and ping-ponging back and forth between them to make updates. The result is a massive amount of half-baked blog posts. Working on posts one at a time and not starting another post until you have finished or given up on an existing post is a good way to prevent a barrage of blog post drafts from raining down on you.</p>
<p>While plenty of people say that producing good content is more important than posting regularly, plenty of new bloggers, including me, feel guilty when they do not post regularly.</p>
<p>Now, there have to be exceptions to this rule. Bloggers that write mostly time-sensitive material, then following this rule could possibly hurt them by delaying the publishing of the posts. Taking a look at this blog&#8217;s archives will show that whenever I try to cover something time-sensitive, I always end up covering it a few days later.</p>
<p>Also, if you would like more extremely obvious (or extremely brilliant, depending on your perspective) tips on blogging, you might like reading some of this blog&#8217;s other posts covering bloggi&#8211;oh don&#8217;t bother, I know nothing on blogging.</p>
]]></content:encoded>
			<wfw:commentRss>http://codingexperiments.com/blogging-tip-work-on-posts-one-at-a-time/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>My Plans for a New RSS Reader</title>
		<link>http://codingexperiments.com/my-plans-for-a-new-rss-reader/</link>
		<comments>http://codingexperiments.com/my-plans-for-a-new-rss-reader/#comments</comments>
		<pubDate>Sun, 07 Sep 2008 23:31:53 +0000</pubDate>
		<dc:creator>Rishabh Mishra</dc:creator>
				<category><![CDATA[Internet]]></category>
		<category><![CDATA[rss]]></category>

		<guid isPermaLink="false">http://codingexperiments.com/?p=380</guid>
		<description><![CDATA[Sorry I was unable to post for a while. I wasn&#8217;t busy, but wrote a bunch of drafts and decided I wouldn&#8217;t publish them. I shouted to the Internet that I am unhappy with existing RSS readers. Now, let&#8217;s use our prediction skills to see what will happen next. Hmm&#8230; Programmers like to solve problems. [...]]]></description>
			<content:encoded><![CDATA[<p><em>Sorry I was unable to post for a while. I wasn&#8217;t busy, but wrote a bunch of drafts and decided I wouldn&#8217;t publish them. </em></p>
<p>I <a href="http://beta.friendfeed.com/e/deb13cb2-2889-bf55-26ab-a3f8b8a84030/cieffe-Yes-I-am-I-am-completely-unhappy-with-the/">shouted to the Internet that I am unhappy with existing RSS readers</a>. Now, let&#8217;s use our prediction skills to see what will happen next.</p>
<p>Hmm&#8230; Programmers like to solve problems. I appear to have a problem with RSS readers. The title also gives a hint that I&#8217;m making plans for an RSS reader. Considering all that evidence, it is pretty likely that I&#8217;m going to make an RSS reader, right?</p>
<p>Yup. You guessed correctly. I&#8217;m going to build an RSS reader.</p>
<p><img class="alignnone" src="/images/nowai.jpg" alt="" width="400" height="300" /></p>
<p>Because I want to access my RSS reader from anywhere, I will be creating a web RSS reader.</p>
<p>Below is the list of features that I have planned for the RSS reader.</p>
<ul>
<li>Tagging of feeds as well as individual posts.</li>
<li>A <a href="http://codingexperiments.com/archives/313">recommendation engine</a> for posts.</li>
<li>Integration with:
<ul>
<li>Google Reader</li>
<li>FriendFeed</li>
<li>Delicious</li>
</ul>
<ul>
<li>and possibly more</li>
</ul>
</li>
<li>The ability to experiment with possibly dozens of user interfaces.</li>
</ul>
<p>Wait, &#8220;experiment with possibly dozens of user interfaces&#8221;? Now why would I want to do that? The main reason that I want to experiment with a large amount of user interfaces is because no user interface for an RSS reader (both desktop and web-based) have ever satisfied my need for large amounts of data to come down the pipeline and be displayed in a good looking manner.</p>
<p>I am also interested in getting feedback from users to see which user interface is the most easy to use.</p>
<p>Now all I have to decide is what language to write it in. I&#8217;m thinking of either writing it in PHP or Python. I&#8217;m leaning towards PHP, as I haven&#8217;t actually done any real web programming in Python. I might try Ruby on Rails, as I know a small amount of Ruby.</p>
<p>Because of my limited resources, my RSS reader would be restricted to private alpha, though making the RSS reader open source would allow other folks to try it out on their own servers.</p>
<p>Any comments and suggestions on my RSS reader? Comment below.</p>
]]></content:encoded>
			<wfw:commentRss>http://codingexperiments.com/my-plans-for-a-new-rss-reader/feed/</wfw:commentRss>
		<slash:comments>30</slash:comments>
		</item>
		<item>
		<title>A Beginner&#039;s Guide to Firefox Extensions</title>
		<link>http://codingexperiments.com/a-beginners-guide-to-firefox-extensions/</link>
		<comments>http://codingexperiments.com/a-beginners-guide-to-firefox-extensions/#comments</comments>
		<pubDate>Wed, 27 Aug 2008 23:17:12 +0000</pubDate>
		<dc:creator>freezewarp</dc:creator>
				<category><![CDATA[Internet]]></category>
		<category><![CDATA[firefox]]></category>

		<guid isPermaLink="false">http://codingexperiments.com/?p=162</guid>
		<description><![CDATA[Note from possible248 (main author of CodingExperiments): freezewarp is a new author here. You won&#8217;t find much info on him by Googling his nick because he recently abandoned his old one. If you want to guest post on this website too, send me an email at possible248@gmail.com. Intro One advantage Firefox has in the web [...]]]></description>
			<content:encoded><![CDATA[<p><em>Note from possible248 (main author of CodingExperiments): freezewarp is a new author here. You won&#8217;t find much info on him by Googling his nick because he recently abandoned his old one. If you want to guest post on this website too, send me an email at possible248@gmail.com.<br />
</em></p>
<h2><span style="underline;"><strong>Intro</strong></span></h2>
<p><span style="underline;"><strong></strong></span>One advantage Firefox has in the web browser world is the large community of developers all contributing to Firefox by building extensions for it. Most of these developers post their extensions on <a title="Firefox Extension Homepage" href="https://addons.mozilla.org/en-US/firefox/" target="_blank">Firefox&#8217;s official extension homepage</a>. Here you will nearly 5,300 extensions, referred to as addons, though this is an unfair count. On the whole 600 are themes, 3,000 have no support for Firefox 3, and 600 do not work with linux. Though this means that some users will not be able to utilize all Firefox extensions, they will still be able to the best.</p>
<h2><span style="underline;"><strong>Best Addons</strong></span></h2>
<p><strong><a href="https://addons.mozilla.org/en-US/firefox/addon/1865" target="_blank">Adblock Plus</a></strong></p>
<p>My Rating: 5/5</p>
<p>Community Rating: 5/5</p>
<p>Weekly Downloads: 480,000</p>
<p>Best Suited For: Pretty much anybody.</p>
<p>Last Updated: July 17, 2008 (Version .7.5.5)</p>
<p>Works with: 1.5 &#8211; 3.0.x (Older versions having support for Firefox versions as early as .7)</p>
<p>Summary: Adblock does one thing, and it does it better than anyone else, it blocks adds. Be it pop-ups, google adds, or the annoying flashy adds, it blocks them all.</p>
<p>Snapshots:</p>
<div id="attachment_285" class="wp-caption alignnone" style="width: 310px"><a href="http://codingexperiments.com/examples/wp-uploads/2008/08/adblock1.png"><img class="size-medium wp-image-285" src="http://codingexperiments.com/examples/wp-uploads/2008/08/adblock1-300x152.png" alt="The Adblock Extension in Action" width="300" height="152" /></a><p class="wp-caption-text">The Adblock extension in action.</p></div>
<p><a href="https://addons.mozilla.org/en-US/firefox/addon/3006" target="_blank"><strong>Video Download Helper</strong></a></p>
<p><span style="underline;">My Rating</span>: 5/5</p>
<p>Community Rating: 5/5</p>
<p>Weekly Downloads: 390,000</p>
<p>Best Suited For: People who want their favorite content to go right with them.</p>
<p>Last Updated: July 22, 2008 (Version 3.2)</p>
<p>Works with: 1.5 &#8211; 3.0.x</p>
<p><span style="underline;">Summary</span>: Download Helper gives you the power to download embedded videos from almost any site. In more recent versions you even have to power of instant video conversion through FFMPEG or MEncoder. Using it on older versions of Firefox with little memory, however, can else be troublesome.</p>
<p><a href="https://addons.mozilla.org/en-US/firefox/addon/201" target="_blank"><strong>DownThemAll</strong></a></p>
<p><span style="underline;">My Rating</span>: 5/5</p>
<p>Community Rating: 5/5</p>
<p>Weekly Downloads: 280,000</p>
<p>Best Suited For: People with a slow internet connection and those who download excessively.</p>
<p>Last Updated: June 07, 2008 (Version 1.0.3)</p>
<p>Works with: 2.0.8 &#8211; 3.0.x (Older versions having support for Firefox versions as early as 1.0)</p>
<p><span style="underline;">Summary</span>: DownloadThemAll is simply a download manager. It integrates directly into Firefox, allowing faster downloads in the default download manager in addition to many features in the newly existing one, such as page download and integrity checking with MD5Hashes.</p>
<p>Snapshots:</p>
<div id="attachment_167" class="wp-caption alignnone" style="width: 310px"><a href="http://codingexperiments.com/examples/wp-uploads/2008/07/downloadthemall.png"><img class="size-medium wp-image-167" src="http://codingexperiments.com/examples/wp-uploads/2008/07/downloadthemall-300x265.png" alt="Downloadthemall Extension" width="300" height="265" /></a><p class="wp-caption-text">The Downthemall extension.</p></div>
<p><a href="https://addons.mozilla.org/en-US/firefox/addon/6076" target="_blank"><strong>Better Gmail 2</strong></a></p>
<p>My Rating: 5/5</p>
<p>Community Rating: 5/5</p>
<p>Weekly Downloads: 95,000</p>
<p>Best Suited for: People who use GMail online.</p>
<p>Last Updated: August 20, 2008 (Version 0.6.1)</p>
<p>Works with: Firefox Versions .8 &#8211; 3.0.x</p>
<p>Summary: Better Gmail 2 adds a better look to GMail that will make it sleeker and often easier to use. Functionality wise you won&#8217;t see a change.</p>
<p>Snapshots:</p>
<div id="attachment_289" class="wp-caption alignnone" style="width: 310px"><a href="http://codingexperiments.com/examples/wp-uploads/2008/08/bettergmail2.png"><img class="size-medium wp-image-289" src="http://codingexperiments.com/examples/wp-uploads/2008/08/bettergmail2-300x148.png" alt="The BetterGmail2 extension in action." width="300" height="148" /></a><p class="wp-caption-text">The BetterGmail2 extension in action.</p></div>
<p><a href="https://addons.mozilla.org/en-US/firefox/addon/3456" target="_blank"><strong>WOT</strong></a></p>
<p><span style="underline;">My Rating</span>: 5/5</p>
<p>Community Rating: 5/5</p>
<p>Weekly Downloads: 80,000</p>
<p>Best Suited For: Pretty much anybody.</p>
<p>Last Updated: August 11, 2008 (Version 20080811)</p>
<p>Works with: 1.5 &#8211; 3.1a2pre</p>
<p><span style="underline;">Summary</span>: WOT is a relatively new extension to me, though so far I&#8217;ve founded it to be nothing but exceptionally good. In turn you are the one powering it as it ranks sites based on what users think of them. Anyone can rate a site on four aspects, trustworthiness, vendor reliability, privacy, and child safety. This means that you now can make important transactions and ensure your child is safe on the Internet rather easily. If in the case a site has poor reliability, it will bring up a warning screen questioning if you would like to continue to the site or go back. Here are some examples of sites that have been rated:</p>
<table border="1">
<tbody>
<tr>
<th>Site</th>
<th>Trustworthiness</th>
<th>Vendor Reliability</th>
<th>Privacy</th>
<th>Child Safety</th>
</tr>
<tr>
<td>Myspace</td>
<td>4</td>
<td>4</td>
<td>4</td>
<td>3</td>
</tr>
<tr>
<td>Yahoo</td>
<td>5</td>
<td>5</td>
<td>5</td>
<td>5</td>
</tr>
<tr>
<td>Google</td>
<td>5</td>
<td>5</td>
<td>5</td>
<td>5</td>
</tr>
<tr>
<td>Freedownloadscenter.com</td>
<td>2</td>
<td>2</td>
<td>2</td>
<td>2</td>
</tr>
<tr>
<td>KDE.org</td>
<td>5</td>
<td>5</td>
<td>5</td>
<td>5</td>
</tr>
<tr>
<td>CodingExperiments.com</td>
<td>5</td>
<td>NR</td>
<td>5</td>
<td>5</td>
</tr>
</tbody>
</table>
<p>Snapshots:</p>
<div id="attachment_287" class="wp-caption alignnone" style="width: 310px"><a href="http://codingexperiments.com/examples/wp-uploads/2008/08/wot2.png"><img class="size-medium wp-image-287" src="http://codingexperiments.com/examples/wp-uploads/2008/08/wot2-300x134.png" alt="WOT warning you of the danger of the page you are trying to view" width="300" height="134" /></a><p class="wp-caption-text">WOT warning you of the danger of the page you are trying to view.</p></div>
<div id="attachment_288" class="wp-caption alignnone" style="width: 310px"><a href="http://codingexperiments.com/examples/wp-uploads/2008/08/wot3.png"><img class="size-medium wp-image-288" src="http://codingexperiments.com/examples/wp-uploads/2008/08/wot3-300x141.png" alt="The WOT danger level icon beside search results." width="300" height="141" /></a><p class="wp-caption-text">The WOT danger level icon beside search results.</p></div>
<p><a title="Web Developer Toolbar" href="https://addons.mozilla.org/en-US/firefox/addon/60" target="_blank"><strong>Web Developer Toolbar</strong> </a></p>
<p><span style="underline;">My Rating</span>: 5/5</p>
<p>Community Rating: 5/5</p>
<p>Weekly Downloads: 70,000</p>
<p>Best Suited for: People who develop the web.</p>
<p>Last Updated: May 19, 2008 (version 1.1.6)</p>
<p>Works with: 1.0 &#8211; 3.0.x</p>
<p><span style="underline;">Summary</span>: The Web Developer Toolbar adds many great features for all users, though as the title would imply, it is best employed by web developers. You can easily gather information about a web page&#8217;s source, structure, style sheets, scripts, and other miscellaneous attributes of a page. Additionally, validation of a web page, from its HTML to its accessibility can be done instantly. If your a regular user you can also easily reap the benefits of showing hidden passwords, disabling images, styles, JavaScript, Java, and pop-up blockers, and magnifying the page.</p>
<p>Snapshots:</p>
<div id="attachment_165" class="wp-caption alignnone" style="width: 310px"><a href="http://codingexperiments.com/examples/wp-uploads/2008/07/webdev.png"><img class="size-medium wp-image-165" src="http://codingexperiments.com/examples/wp-uploads/2008/07/webdev-300x7.png" alt="The Web Developer Toolbar." width="300" height="7" /></a><p class="wp-caption-text">The Web Developer Toolbar.</p></div>
<p><strong><a href="https://addons.mozilla.org/en-US/firefox/addon/684" target="_blank">FireFTP</a></strong></p>
<p>My Rating: 5/5</p>
<p>Community Rating: 5/5</p>
<p>Weekly Downloads: 55,000</p>
<p>Best Suited For: People who frequently use FTP.</p>
<p>Last Updated: August 15, 2008 (Version 1.0.2)</p>
<p>Works with: 3.0 &#8211; 3.0.x (old versions support Firefox versions as early as 1.5)</p>
<p>Summary: FireFTP integrates a mediocre FTP client directly into Firefox. I find it to be a good choice as its often easier to view the changes your making as you make them. It offers standard FTP access, though with the addition of SSL Encryption, SFTP, filtering, file hashing, and other features. None the less normal desktop FTP clients do tend to have more features, and so may be a better choice for people who want the most out of an FTP client..</p>
<p>Snapshots:</p>
<div id="attachment_336" class="wp-caption alignnone" style="width: 310px"><a href="http://codingexperiments.com/examples/wp-uploads/2008/08/fireftp.png"><img class="size-medium wp-image-336" src="http://codingexperiments.com/examples/wp-uploads/2008/08/fireftp-300x134.png" alt="The FireFTP extension in action." width="300" height="134" /></a><p class="wp-caption-text">The FireFTP extension in action.</p></div>
<p><a title="Scrapbook Extension" href="https://addons.mozilla.org/en-US/firefox/addon/427" target="_blank"><strong>ScrapBook</strong></a></p>
<p><span style="underline;">My Rating</span>: 5/5</p>
<p>Community Rating: 5/5</p>
<p>Weekly Downloads: 20,000</p>
<p>Best Suited For: People who want their favorite content to go right with them.</p>
<p>Last Updated: June 28, 2008 (Version 1.3.3.7)</p>
<p>Works with: 2.0 &#8211; 3.0.x (Older versions having support for Firefox versions as early as .9)</p>
<p><span style="underline;">Summary</span>: The Scrapbook extension has the general purpose of archiving web pages to your local computer. Though it lacks features it is great as what is does. Simply enter a number of links to spider and the content to store (images, CSS, JavaScript) and it will download every page it finds. Unfortunately large loads can do a computer in that lacks memory in.</p>
<p>Snapshots:</p>
<div id="attachment_166" class="wp-caption alignnone" style="width: 276px"><a href="http://codingexperiments.com/examples/wp-uploads/2008/07/scrapbook.png"><img class="size-medium wp-image-166" src="http://codingexperiments.com/examples/wp-uploads/2008/07/scrapbook-266x300.png" alt="ScrapBook Extension" width="266" height="300" /></a><p class="wp-caption-text">The ScrapBook extension dialog for advance downloads.</p></div>
<p><a href="https://addons.mozilla.org/en-US/firefox/addon/722" target="_blank"><strong>NoScript</strong></a></p>
<p><span style="underline;">My Rating</span>: 4/5</p>
<p>Why I Rate It Lower: It can be very tiresome having to allow scripts for every site you go to.</p>
<p>Community Rating: 5/5</p>
<p>Weekly Downloads: 350,000</p>
<p>Best Suited For: People who prefer to be security conscious, such as those working for large companies.</p>
<p>Last Updated: July 15, 2008 (Version 1.7.7)</p>
<p>Works with: 1.5.0.4 &#8211; 3.1a1 (Older versions having support for Firefox versions as early as 0.7)</p>
<p><span style="underline;">Summary</span>: Noscript also ensures security like with WOT, however rather than simply warning you, it stops scripts, such as JavaScript, Flash, and Java cold, while still allowing you to view all the content of a page. Naturally this does come at a price, though. Since all it does is prevent scripts, harmless scripts are blocked just the same. Even worse you have to allow scripts for every site one by one. This means that on many sites you will have to click allow multiple times, once for the local site and the rest for embedded content. For many people who have constant problem or malware this is a small price to pay, but if you&#8217;ve never had to deal with malware then you probably don&#8217;t have much need for it.</p>
<p><strong><a href="https://addons.mozilla.org/en-US/firefox/addon/1027" target="_blank">All-in-One Sidebar</a></strong></p>
<p>My Rating: 4/5</p>
<p>Why I Rate It Lower: AiOS often closes or opens unexpectedly, making it harder to use.</p>
<p>Community Rating: 5/5</p>
<p>Weekly Downloads: 130,000</p>
<p>Best Suited for: People who are often unorganized or those who find FireFox confusing.</p>
<p>Last Updated: June 24, 2008 (Version 0.7.6)</p>
<p>Works with: 2.0 &#8211; 3.0.x (Older versions having support for Firefox versions as early as 1.0)</p>
<p>Summary: All-in-One Sidebar is nothing greater than a sidebar that acts as a control panel for all of Firefox. By combining downloads, history, bookmarks, page info, add-ons, and more all in one place it makes Firefox much simpler, easier, and quicker to use.</p>
<p>Snapshots:</p>
<div id="attachment_286" class="wp-caption alignnone" style="width: 234px"><a href="http://codingexperiments.com/examples/wp-uploads/2008/08/allinonesidebar.png"><img class="size-medium wp-image-286" src="http://codingexperiments.com/examples/wp-uploads/2008/08/allinonesidebar-224x300.png" alt="The All in One Sidear" width="224" height="300" /></a><p class="wp-caption-text">The All-in-One Sidebar.</p></div>
<p><strong>A few other good addons you may like if&#8230;</strong></p>
<p>You are big on Internet Relay Chats: ChatZilla</p>
<p>You are big on Podcasts: FoxyTunes</p>
<p>You like to be in tuned to the weather: ForcastFox</p>
<p>You never type the URL right: URL Fixer</p>
]]></content:encoded>
			<wfw:commentRss>http://codingexperiments.com/a-beginners-guide-to-firefox-extensions/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Midori 0.19 Patch</title>
		<link>http://codingexperiments.com/midori-019-patch/</link>
		<comments>http://codingexperiments.com/midori-019-patch/#comments</comments>
		<pubDate>Fri, 15 Aug 2008 17:30:05 +0000</pubDate>
		<dc:creator>i80and</dc:creator>
				<category><![CDATA[Internet]]></category>
		<category><![CDATA[Programming]]></category>

		<guid isPermaLink="false">http://codingexperiments.com/?p=297</guid>
		<description><![CDATA[Recently I&#8217;ve been playing with Midori in the wake of being informed that it&#8217;s now an Xfce project.  A nice enough browser, albeit quite solidly still in the development stage.  However, on systems such as mine that lack GLib 2.16 (and therefore GIO), there is a compilation error.  Specifically, there are two problematic zones.  The [...]]]></description>
			<content:encoded><![CDATA[<p>Recently I&#8217;ve been playing with <a href="http://www.twotoasts.de/index.php?/pages/midori_summary.html">Midori</a> in the wake of being informed that it&#8217;s now an <a href="http://www.xfce.org/">Xfce</a> project.  A nice enough browser, albeit quite solidly still in the development stage.  However, on systems such as mine that lack <a href="http://gtk.org/">GLib</a> 2.16 (and therefore GIO), there is a compilation error.  Specifically, there are two problematic zones.  The first is a confusion in the macros that check for GLib 2.16 and GtkSourceView that result in a failed compile if you have an older version of GLib in combination with GtkSourceView. Secondly, Midori will attempt to use GLib 2.16 symbols without first checking if the user has GLib 2.16.</p>
<p>So I wrote a patch and submitted a bug report.  The bugs are now fixed in git master, but for the existing stable release (0.19), you can find <a href="http://www.twotoasts.de/bugs/index.php?getfile=53">my patch</a> at the <a href="http://www.twotoasts.de/bugs/index.php?do=details&amp;task_id=88&amp;project=2">relevant bug report</a>.  To apply it, move it into the Midori 0.19 directory and then run</p>
<pre>cat midori-glib216.patch | patch -p1</pre>
]]></content:encoded>
			<wfw:commentRss>http://codingexperiments.com/midori-019-patch/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>A Detailed Guide for Web Designers on Dealing with Different Screen Resolutions</title>
		<link>http://codingexperiments.com/a-detailed-guide-for-web-designers-on-dealing-with-different-screen-resolutions/</link>
		<comments>http://codingexperiments.com/a-detailed-guide-for-web-designers-on-dealing-with-different-screen-resolutions/#comments</comments>
		<pubDate>Wed, 13 Aug 2008 23:37:30 +0000</pubDate>
		<dc:creator>Rishabh Mishra</dc:creator>
				<category><![CDATA[Internet]]></category>

		<guid isPermaLink="false">http://codingexperiments.com/?p=267</guid>
		<description><![CDATA[UPDATE: If you saw the screenshots messed up in this post, it is now fixed. 1. Table of Contents 2. Introduction 3. Mobile screen resolutions 3.1. Creating and designing mobile web pages 3.2. Redirection to mobile webpages 3.2.1. User agent detection 3.2.2. Screen resolution detection 4. Desktop screen resolutions 4.1. Creating more webpages for different [...]]]></description>
			<content:encoded><![CDATA[<p><em>UPDATE: If you saw the screenshots messed up in this post, it is now fixed.</em></p>
<h2>1. Table of Contents</h2>
<ul>
<li><a href="#sec2">2. Introduction</a></li>
<li><a href="#sec3">3. Mobile screen resolutions</a>
<ul>
<li><a href="#sec3_1">3.1. Creating and designing mobile web pages</a></li>
<li><a href="#sec3_2">3.2. Redirection to mobile webpages</a>
<ul>
<li><a href="#sec3_2_1">3.2.1. User agent detection</a></li>
<li><a href="#sec3_2_2">3.2.2. Screen resolution detection</a></li>
</ul>
</li>
</ul>
</li>
<li><a href="#sec4">4. Desktop screen resolutions</a>
<ul>
<li><a href="#sec4_1">4.1. Creating more webpages for different screen resolutions</a></li>
<li><a href="#sec4_2">4.2. Using fluid width designs</a></li>
<li><a href="#sec4_3">4.3. Using limited fluid width designs</a></li>
<li><a href="#sec4_4">4.4. Using narrow fixed width designs</a></li>
<li><a href="#sec4_5">4.5. Intelligently using horizontal scrolling</a></li>
<li><a href="#sec4_6">4.6. Having small desktop screens view the mobile pages</a></li>
</ul>
</li>
<li><a href="#sec5">5. Conclusion</a></li>
</ul>
<p><a name="sec2"></a></p>
<h2>2. Introduction</h2>
<p>Handling screen resolutions is a difficulty for web designers simply because there are so many screen resolutions. There are small screens on mobile devices and freakishly large and expensive screens now finding their way into the desktop market.</p>
<p>This post will give some guidelines which may make it easier for a web designer to deal with the vast differences in screen resolutions.<br />
<a name="sec3"></a></p>
<h2>3. Mobile screen resolutions</h2>
<p>It&#8217;s common to browse the Internet on a cell phone, especially now that the Apple iPhone (and other devices) make(s) it so easy. Many normal websites work fine or almost fine on iPhones, but for some mobile devices with different web browsers, web browsing can be a difficult task.</p>
<p>How can one web page be designed in such a way that it elegantly displays the content on mobile and large screens? It is possible for mobile and large screens to view the same webpage, but it is rather difficult for the content to be displayed <em>elegantly</em>.<br />
<a name="sec3_1"></a></p>
<h3>3.1. Creating and designing mobile web pages</h3>
<p>To solve this problem, a separate version of the webpage with the design tailored specifically for small screens can be created. Usually, the same content is displayed, unless the content is something that is currently problematic to display on mobile devices.</p>
<p>I believe that mobile web pages work best if they are fluid width, and do not strictly specify a font size. Towards the end of this post, you will see why I recommend this.</p>
<p>You might want to check out the W3C&#8217;s draft <a id="title" title="W3C: Mobile Web Application Best Practices" name="title" href="http://www.w3.org/TR/2008/WD-mwabp-20080729/">Mobile Web Application Best Practices</a>&#8220;.<br />
<a name="sec3_2"></a></p>
<h3>3.2. Redirection to mobile webpages</h3>
<p>A problem with creating another webpage, or having server side scripting (such as PHP or Python) generate the mobile web page on the go, is that the user has to be aware of the mobile web page.</p>
<p>Redirection can help reduce the awareness problem. User agent and screen resolution detection can be used to redirect the users to the proper page for the user&#8217;s screen resolution.<br />
<a name="sec3_2_1"></a></p>
<h4>3.2.1. User agent detection</h4>
<p>This can be done either with client side scripting (Javascript) or server side scripting. The user agent of a mobile web browser is detected and is either redirected, or the same page is filled with different content.</p>
<p><a name="sec3_2_2"></a></p>
<h4>3.2.2. Screen resolution detection</h4>
<p>With screen resolution detection, only client side scripting can be used because the screen resolution is not passed to the server. Either the mobile users can be redirected, or the users with desktop screen resolutions.</p>
<p>I find it less reliable to rely on a mobile web browser&#8217;s Javascript capabilities, so I think it would be smarter to redirect the users with larger screen resolutions.<br />
<a name="sec4"></a></p>
<h2>4. Desktop screen resolutions</h2>
<p>Assuming that the mobile screen resolution problem has been solved, there still are a good variety of screen resolutions on the desktop market. The problem is that larger screens are being created and bought while some people can&#8217;t or don&#8217;t upgrade.</p>
<p>This results in screen resolutions from 800&#215;600 (though 640&#215;480 might still be seen) up to&#8230; Oh, I can&#8217;t give a top number. Somebody will point me to a place where larger screens are available.</p>
<p>Below are the various solutions for handling the differences in desktop screen resolutions.<br />
<a name="sec4_1"></a></p>
<h3>4.1. Creating more webpages for different screen resolutions</h3>
<p>Basically, use the techniques for mobile screen resolutions and use them again for desktop screen resolutions. This is not a very good solution, and is only used in the mobile situation because of the extremely small mobile screens.<br />
<a name="sec4_2"></a></p>
<h3>4.2. Using fluid width designs</h3>
<p>Because the size of desktop screens are pretty big, compared to mobile screens, a fluid-width layout might work. But if a fluid-width layout is not designed properly, problems can occur.</p>
<p>If the fluid with layout isn&#8217;t built with smaller screens in mind, the layout can look scrunched in smaller screens. Conversely, if the fluid with layout isn&#8217;t built with larger screens in mind, the layout can look overly <em>spaced out</em> (for the lack of a better term). Long lines of text, which can happen with fluid-width layouts on large screens, are hard to skim through.</p>
<p>Another problem with fluid width designs is that the content may contain fixed width elements, such as images. Should the fluid width container shrink to a size that is smaller than the fixed width container, the layout can get severely messed up.<br />
<a name="sec4_3"></a></p>
<h3>4.3. Using limited fluid width designs</h3>
<p>Cascading style sheets are quite powerful, and have the capability to limit the stretching and shrinking of fluid width designs.</p>
<p>The CSS properties <em>min-width:</em> and <em>max-width:</em> can be used to restrict the flexibility of a fluid width layout. But how can these properties be used in order to make webpages look good for large and small webpages?</p>
<p>Well, the use of <em>max-width:</em> can be used to prevent those long lines of text that was described earlier. The property <em>min-width:</em> can be used to force horizontal scrolling in the smaller screen resolutions. While horizontal scrolling is typically not a good thing, there is more below about how to intelligently use horizontal scrolling (not the style of scrolling seen at <a href="http://www.thehorizontalway.com/">http://www.thehorizontalway.com/</a>).<br />
<a name="sec4_4"></a></p>
<h3>4.4. Using narrow fixed width designs</h3>
<p>This is the solution that is, at the time of this writing, used by this blog&#8217;s template. This blog is neither scrunched up 800&#215;600 nor does it have overly long lines. The major problem that this solution has is that fixed width content can mess up the layout. The fixed width content issue can be observed by looking at posts on this website that contain images that are wider than about 500 pixels will cause horizontal scrolling.</p>
<p>Also, due to the problem with fixed width content, the more columns that a design has, the narrower the fixed width content has to be in order for it to fit with the layout.<br />
<a name="sec4_5"></a></p>
<h3>4.5. Intelligently using horizontal scrolling</h3>
<p>This section is an extension of section 4.4, but modified slightly to allow for three or more columns with a decent width. Basically, use horizontal scrolling. As I said in section 4.3, I am not referring to the horizontal scrolling demonstrated at <a href="http://www.thehorizontalway.com/">http://www.thehorizontalway.com/</a>.</p>
<p>In my opinion, horizontal scrolling is a thing that should be avoided, but here I say that minimal horizontal scrolling should be okay for screens with small resolutions.</p>
<p>Basically, create a fixed width design for&#8230; perhaps 1024&#215;768.  The goal is to get all of the <em>main</em> content (like the content of a blog post) visible on 800&#215;600. Use somewhere from 700 to 750 pixels for the content. Don&#8217;t get too close to 800 pixels, because some space will be taken up by the scrollbar and you also want <em>a portion of a sidebar</em> or something displayed to show the user that horizontal scrolling is needed in case the user does not see the scrollbar at the bottom.</p>
<p>For more reading on horizontal scrolling, check out <a title="Jakob Nielsen's Alertbox: Scrolling and Scrollbars" href="http://www.useit.com/alertbox/20050711.html">Jakob Nielsen&#8217;s alertbox on scrolling</a>.<br />
<a name="sec4_6"></a></p>
<h3>4.6. Having small desktop screens view the mobile pages</h3>
<p>Section 4.1 talks about creating more pages for different screen resolutions, which is not optimal in most cases. But assuming a mobile page is already created, why not have users with small screen resolutions go to the mobile page?</p>
<p>To some of you, that might sound crazy, but look at my below demonstration.</p>
<p>Below is my FriendFeed page at 800&#215;600 in Firefox 3.0.1.</p>
<p><a href="/images/screen_res/friendfeed.png"><img class="alignnone" src="/images/screen_res/friendfeed_thumb.png" alt="" width="500" height="390" /></a></p>
<p><em>Click on the above screenshot to view it full size.</em></p>
<p>The sidebar completely messes up the design. I would not want to use FriendFeed at such a low resolution.</p>
<p>Now, let&#8217;s see what Benjamin Golub&#8217;s FFToGo (a FriendFeed API app for mobile devices) looks like at 800&#215;600 in Firefox 3.0.1.</p>
<p><a href="/images/screen_res/fftogo.png"><img class="alignnone" src="/images/screen_res/fftogo_thumb.png" alt="" width="500" height="390" /></a></p>
<p><em>Click on the above screenshot to view it full size.</em></p>
<p>Hey&#8230; not too shabby. It&#8217;s a clean and simple design that looks a whole lot better than the FriendFeed website.</p>
<p>Assuming that the mobile web page</p>
<ul>
<li>does not force a tiny font size,</li>
<li>does not force a width,</li>
<li>is not uglier than the main page,</li>
</ul>
<p>it might be a good alternative for folks at 800&#215;600. Of course, user agent detection will not work because there are very few people out there that are using a desktop browser with a mobile browser&#8217;s user agent. Screen resolution detection, or in the case of FFToGo, simple advertising will have to do.</p>
<h2>5. Conclusion</h2>
<p>None of these designs are for everybody. Designers creating a website for a very small audience might know what sort of hardware users would be using to access the webpage. The larger the audience, the more likely that the screen resolutions visiting the webpage will be more varied.</p>
]]></content:encoded>
			<wfw:commentRss>http://codingexperiments.com/a-detailed-guide-for-web-designers-on-dealing-with-different-screen-resolutions/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>An In-depth Look at Cuil</title>
		<link>http://codingexperiments.com/an-in-depth-look-at-cuil/</link>
		<comments>http://codingexperiments.com/an-in-depth-look-at-cuil/#comments</comments>
		<pubDate>Fri, 01 Aug 2008 00:32:46 +0000</pubDate>
		<dc:creator>Rishabh Mishra</dc:creator>
				<category><![CDATA[Internet]]></category>

		<guid isPermaLink="false">http://codingexperiments.com/?p=230</guid>
		<description><![CDATA[Psst. If you&#8217;re on dialup, you might as well disable images in your browser and then try loading this page. This page is going to take forever if you attempt to load all the images. Introduction When people think about search engines and privacy, the might think of incidents such as AOL publishing the searches [...]]]></description>
			<content:encoded><![CDATA[<p><em>Psst. If you&#8217;re on dialup, you might as well disable images in your browser and then try loading this page. This page is going to take forever if you attempt to load all the images.</em></p>
<p><img class="alignnone" src="/images/cuil/cuil13.png" alt="" width="373" height="191" /></p>
<h2>Introduction</h2>
<p>When people think about search engines and privacy, the might think of incidents such as <a href="http://news.cnet.com/2100-1030_3-6103098.html">AOL publishing the searches of more than 650,000 users</a> and the <a title="The New York Times: A Face Is Exposed for AOL Searcher No. 4417749 " href="http://www.nytimes.com/2006/08/09/technology/09aol.html?pagewanted=1&amp;ei=5090&amp;en=f6f61949c6da4d38&amp;ex=1312776000">New York Times identifying a woman based on her AOL searches</a>. Google isn&#8217;t well-known for privacy either. <a href="http://www.privacyinternational.org/">Privacy International</a> did a study and <a href="http://www.privacyinternational.org/issues/internet/interimrankings.pdf">gave Google a failing grade (PDF)</a>. Nowadays, Google seems to be getting itself into privacy troubles all the time with <a title="Times Online: All-seeing Google Street View prompts privacy fears" href="http://technology.timesonline.co.uk/tol/news/tech_and_web/article1870995.ece">projects such as Google Street View</a>.</p>
<p>What&#8217;s that? It&#8217;s a bird! No. It&#8217;s a plane! No. It&#8217;s Cuil! <a href="http://www.cuil.com/">Cuil</a> is a new search engine that was a major subject of discussion this week. Cuil claims to have indexed a <em>whopping</em> 121,617,892,992 webpages.</p>
<h2>Cuil&#8217;s successes</h2>
<p><strong>1) Privacy</strong></p>
<p>Not only does Cuil claim to have a massive index, Cuil also apparently <a href="http://www.cuil.com/info/privacy/">does not keep logs</a> of user search activity.</p>
<p><a href="http://flickr.com/photos/dogseat/1616129603/"><img class="alignnone" title="I iz Cuil. Cuil protects ur rite to privacy." src="/images/cuil/cuil_lolcat.jpg" alt="" width="500" height="332" /></a></p>
<p><em>Cuil protects your privacy. Click on the photo to view the original image. Original image created by Flickr user <a href="http://flickr.com/photos/dogseat/">dogseat</a>. No I will not put an lolcat in every blog post.</em></p>
<p><strong>2) The user interface</strong></p>
<p>Cuil&#8217;s user interface brings something new to the table. Other search engine result pages (SERPs) are somewhat lacking in the type of fresh design that Cuil has.</p>
<p><a href="/images/cuil/cuil14.png"><img class="alignnone" src="/images/cuil/cuil14_thumb.png" alt="" width="500" height="338" /></a></p>
<p><em>Click on the above image to view it full-size.</em></p>
<p><strong>3) Suggesting different keywords</strong></p>
<p>Cuil, while it may or may not give you good results on the first query, will give you some example queries to narrow or expand your searches.</p>
<p><img class="alignnone" src="/images/cuil/cuil7.png" alt="" width="324" height="298" /></p>
<p>Of course, the feature has some flaws.</p>
<p><a href="/images/cuil/cuil11.png"><img class="alignnone" src="/images/cuil/cuil11_thumb.png" alt="" width="500" height="225" /></a></p>
<p><em>Click on the above image to view it full-size.</em></p>
<p>An interesting Cuil feature is that the links bring up tooltips that have more information about whatever the link is.</p>
<p><a href="/images/cuil/cuil12.png"><img class="alignnone" src="/images/cuil/cuil12_thumbpng.png" alt="" width="500" height="216" /></a></p>
<p><em>Click on the above image to view it full-size.</em></p>
<p>The tooltips appear to be the from first sentence from the word&#8217;s Wikipedia page.</p>
<p><strong>4) Generating hype</strong></p>
<p>Man, it seems like <em>everybody</em> is talking about Cuil. You can see a list of other blog posts and articles at the end of this post.</p>
<h2>Cuil&#8217;s mistakes</h2>
<p><strong>1) Irrelevant images next to search results</strong></p>
<p>Cuil puts what it thinks to be relevant images next to search results. This isn&#8217;t very accurate, as the below screenshot shows.</p>
<p><img class="alignnone" src="/images/cuil/cuil1.png" alt="" width="312" height="206" /></p>
<p><a title="TechCrunch: How To Lose Your Cuil 20 Seconds After Launch" href="http://www.techcrunch.com/2008/07/29/how-to-lose-your-cuil-20-seconds-after-launch/">TechCrunch has more on this issue</a>.</p>
<p>This is a huge problem, as other people are very upset when they see irrelevant images when searching for their own names.</p>
<p>Of course, Google News has had similar problems.</p>
<p><img class="alignnone" src="/images/cuil/mrburns.gif" alt="" width="400" height="185" /></p>
<p><em>I found this above image on this <a title="Google Operating System: Top 10 Funny Google News" href="http://googlesystem.blogspot.com/2006/06/top-10-funny-google-news.html">Google Operating System post</a>.</em></p>
<p>The wisest approach for Cuil would have been to only suggest images when Cuil is <em>really</em> sure that the images are relevant. Google will often display a few image results along with the standard web results if the algorithm believes that the images are very relevant.</p>
<p><a href="/images/cuil/cuil10.png"><img class="alignnone" src="/images/cuil/cuil10_thumbpng.png" alt="" width="500" height="356" /></a></p>
<p><strong>2) A bad first day</strong></p>
<p>On the first day that Cuil launched, Cuil went down. Given how important a user&#8217;s first impression of a website is, it&#8217;s rather unfortunate that it went down. Again, I&#8217;m going to link to TechCrunch, where there&#8217;s a <a title="TechCrunch: And….Cuil Goes Offline" href="http://www.techcrunch.com/2008/07/28/andcuil-is-down/">post on Cuil&#8217;s downtime</a>.<br />
<strong>3) The name</strong></p>
<p>I&#8217;m fine with the name <em>Cuil</em>, but some people have been very vocal about the name. Nobody can come up with a name to please <em>everybody</em>, but perhaps Cuil should have spent more time thinking about whether Cuil was a good name or not.</p>
<p><strong>4) The result count for queries<br />
</strong></p>
<p>While Cuil claims to have have the most pages indexed, some queries in Cuil give far fewer results than other leading search engines.</p>
<p>This isn&#8217;t absolute proof that Cuil has barely any pages indexed; it could be the algorithm filtering out results that appear in other search engines.</p>
<p>Regardless of what causes the fewer results, users are disappointed.</p>
<p>&#8212;&#8212;&#8212;-</p>
<p>On a side note, <a title="CodingExperiments: Phoenix 0.3 vs. IE 7" href="http://codingexperiments.com/archives/180">i80and continues displaying his interest in old browsers</a> and tried out Cuil in Phoenix (Firefox) 0.3. The result is below.</p>
<p><a href="/images/cuil/cuil15.png"><img class="alignnone" src="/images/cuil/cuil15_thumb.png" alt="" width="500" height="300" /></a></p>
<p><em>Click on the image to view it full-size.</em></p>
<p>Above, I promised a list of blog posts and articles that have covered Cuil. I obviously cannot list them all, so the below are just the ones that I believe are the highest quality blog posts covering Cuil.</p>
<ul>
<li><a href="http://www.time.com/">Time Magazine</a> &#8212; <a href="http://www.time.com/time/business/article/0,8599,1827331,00.html">Why Cuil Is No Threat to Google</a></li>
<li><a href="http://www.readwriteweb.com">ReadWriteWeb</a> &#8212; <a href="http://www.readwriteweb.com/archives/cuil_good_but_not_good_enough.php">Cuil: Good, But Not Great</a></li>
<li><a href="http://gigaom.com/2008/07/27/cuil/">GigaOm</a> &#8211;  <a href="http://gigaom.com/2008/07/27/cuil/">Cuil Finally Gets Going</a></li>
<li><a href="http://www.louisgray.com/live/">Louis Gray</a> &#8212; <a href="http://www.louisgray.com/live/2008/07/can-cuil-built-for-long-term-win.html">Can Cuil, Built for the Long-Term, Win the &#8220;Instant Analysis&#8221; Battle?</a></li>
<li><a href="http://searchengineland.com/">Search Engine Land</a> &#8212; <a href="http://searchengineland.com/080728-000100.php">Cuil Launches &#8212; Can This Search Start-Up Really Best Google?</a></li>
<li><a href="http://bits.blogs.nytimes.com/">Bits (a New York Times blog)</a> &#8212; <a href="http://bits.blogs.nytimes.com/2008/07/29/no-bull-cuil-had-problems/">No Bull, Cuil Had Problems</a></li>
<li><a href="http://www.businesspundit.com">Business Pundit</a> &#8212; <a href="http://www.businesspundit.com/cuil-not-up-to-snuff/">Cuil vs. Google? Not exactly.</a></li>
<li><a href="http://www.pcmag.com/">PC Magazine</a> &#8212; <a href="http://www.pcmag.com/article2/0,1895,2326643,00.asp">The New Cuil Search Engine Sucks</a></li>
<li><a href="http://coolcatteacher.blogspot.com/">The Cool Cat Teacher Blog</a> &#8212; <a href="http://coolcatteacher.blogspot.com/2008/07/cool-cat-teachers-take-on-cuils-new.html">Cool Cat Teacher&#8217;s Take on Cuil&#8217;s New Search Engine</a></li>
</ul>
<p><em>Disclaimer: Cuil search result pages seem to change fast. Actual search results may vary. Do not submerge a computer with this blog post in water. Do not submerge any computer in water, unless it is waterproofed.</em></p>
]]></content:encoded>
			<wfw:commentRss>http://codingexperiments.com/an-in-depth-look-at-cuil/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

