<?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>Spacebug Open Source Initiative &#187; Open source</title>
	<atom:link href="http://spacebug.com/category/open-source/feed/" rel="self" type="application/rss+xml" />
	<link>http://spacebug.com</link>
	<description>Keeping Software Simple, Open and Pragmatic.</description>
	<lastBuildDate>Mon, 26 Sep 2011 20:07:50 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>The World First Ever HTML5 Advertisement</title>
		<link>http://spacebug.com/the-world-first-html5-dvertisement/</link>
		<comments>http://spacebug.com/the-world-first-html5-dvertisement/#comments</comments>
		<pubDate>Mon, 26 Sep 2011 20:04:56 +0000</pubDate>
		<dc:creator>Amir Shevat</dc:creator>
				<category><![CDATA[Google]]></category>
		<category><![CDATA[HTML5]]></category>
		<category><![CDATA[Open source]]></category>
		<category><![CDATA[web]]></category>

		<guid isPermaLink="false">http://spacebug.com/?p=676</guid>
		<description><![CDATA[We all love new technology, its event better when it is open and standard. But getting your feet wet and actually using the new technology? and in production? and where there is money involved? that is totally a different matter&#8230; Last week I started advertising a big developer event we are holding in November &#8211; [...]]]></description>
			<content:encoded><![CDATA[<!-- Start Shareaholic LikeButtonSetTop Automatic --><!-- End Shareaholic LikeButtonSetTop Automatic --><p>We all love new technology, its event better when it is open and standard. But getting your feet wet and actually using the new technology? and in production? and where there is money involved? that is totally a different matter&#8230;</p>
<p>Last week I started advertising a<a href="http://www.google.com/events/developerday/2011/tel-aviv/"> big developer event</a> we are holding in November &#8211; a countdown clock that counts the seconds till Google Developer Day . We considered a Flash ad like we are all used to, but our marketing team though it would be cool to have<a href="http://html5demos.com/"> HTML5</a> ad&#8230;</p>
<p>I am a little a shamed to say that at first I objected, saying that HTML5 is still not fully supported by all browsers. After much deliberation we decided it was worth the extra budget to serve HTML5 for browsers that support it and Flash Ad to deprecated browsers. The reports from the publisher is that this HTML5 ad beats all Flash ads CTR. This is something worth investigating &#8211; is HTML5 ads perform better than Flash ads?</p>
<p>So get ready &#8211; Here is the first world HTML5 ad (click to enlarge) -<br />
<a href="http://spacebug.com/wp-content/uploads/2011/09/Capture.jpg"><img class="alignnone size-medium wp-image-677" title="Capture" src="http://spacebug.com/wp-content/uploads/2011/09/Capture-300x203.jpg" alt="" width="300" height="203" /></a></p>
<p>For the next few days you would be able to view it (with Firefox and Chrome) <a href="http://www.newsgeek.co.il/">here</a>.</p>
<div class="shr-publisher-676"></div><!-- Start Shareaholic LikeButtonSetBottom Automatic --><div style="clear: both; min-height: 1px; height: 3px; width: 100%;"></div><div class='shareaholic-like-buttonset' style='float:none;height:30px;'><a class='shareaholic-googleplusone' data-shr_size='medium' data-shr_count='true' data-shr_href='http%3A%2F%2Fspacebug.com%2Fthe-world-first-html5-dvertisement%2F' data-shr_title='The+World+First+Ever+HTML5+Advertisement'></a><a class='shareaholic-fblike' data-shr_layout='button_count' data-shr_showfaces='false' data-shr_href='http%3A%2F%2Fspacebug.com%2Fthe-world-first-html5-dvertisement%2F' data-shr_title='The+World+First+Ever+HTML5+Advertisement'></a><a class='shareaholic-fbsend' data-shr_href='http%3A%2F%2Fspacebug.com%2Fthe-world-first-html5-dvertisement%2F'></a></div><div style="clear: both; min-height: 1px; height: 3px; width: 100%;"></div><!-- End Shareaholic LikeButtonSetBottom Automatic -->]]></content:encoded>
			<wfw:commentRss>http://spacebug.com/the-world-first-html5-dvertisement/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Finally I Have a Budget to Support Open Source</title>
		<link>http://spacebug.com/finally-i-have-budget-to-support-open-source/</link>
		<comments>http://spacebug.com/finally-i-have-budget-to-support-open-source/#comments</comments>
		<pubDate>Fri, 19 Aug 2011 20:36:59 +0000</pubDate>
		<dc:creator>Amir Shevat</dc:creator>
				<category><![CDATA[Google]]></category>
		<category><![CDATA[Open source]]></category>

		<guid isPermaLink="false">http://spacebug.com/?p=651</guid>
		<description><![CDATA[I have been an Open Source enthusiast for a very long time. I have written several open source projects, and although I have yet to find a perfect open source revenue model, I still contribute and enjoy the ride. I think that open source, even if still not fully main stream, constantly improves our lives, [...]]]></description>
			<content:encoded><![CDATA[<!-- Start Shareaholic LikeButtonSetTop Automatic --><!-- End Shareaholic LikeButtonSetTop Automatic --><p><a href="http://spacebug.com/wp-content/uploads/2011/08/IMG_0497.jpg"><img class="size-medium wp-image-654 alignright" style="border: 0pt none; margin: 20px;" title="IMG_0497" src="http://spacebug.com/wp-content/uploads/2011/08/IMG_0497-300x200.jpg" alt="" width="300" height="200" /></a></p>
<p>I have been an Open Source enthusiast for a very long time. I have written several open source projects, and although I have <a href="http://spacebug.com/ad-supported-open-source-siteblogs-poor-revenue-model/">yet to find a perfect open source revenue model</a>, I still contribute and enjoy the ride.</p>
<p>I think that open source, even if still not fully main stream, constantly improves our lives, even for those of us who are not a tech-geek like me.</p>
<p>Now things are <a href="http://spacebug.com/leaving-microsoft-and-joining-google/">radically different</a>, it is now part of my job to support and ensure the success of open source in my region. Now I finally have some budget to do what I love and believe in.</p>
<p>Last week was my first (and very humble) contribution in <a href="http://en.wikipedia.org/wiki/August_Penguin">August penguin</a>, a local open source event. The organizers did not want us to officially sponsor the event but agreed that I bring food <img src='http://spacebug.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /><br />
<a href="http://spacebug.com/wp-content/uploads/2011/08/IMG_04941.jpg"><img class="size-medium wp-image-653 alignright" style="border: 0pt none; margin-left: 20px; margin-right: 20px;" title="IMG_0494" src="http://spacebug.com/wp-content/uploads/2011/08/IMG_04941-300x200.jpg" alt="" width="300" height="200" /></a><br />
So here it starts, my first monetary contribution to  an open source initiatives. I hope and plan to support multiple events and projects in order to drive a more open future.</p>
<div class="shr-publisher-651"></div><!-- Start Shareaholic LikeButtonSetBottom Automatic --><div style="clear: both; min-height: 1px; height: 3px; width: 100%;"></div><div class='shareaholic-like-buttonset' style='float:none;height:30px;'><a class='shareaholic-googleplusone' data-shr_size='medium' data-shr_count='true' data-shr_href='http%3A%2F%2Fspacebug.com%2Ffinally-i-have-budget-to-support-open-source%2F' data-shr_title='Finally+I+Have+a+Budget+to+Support+Open+Source'></a><a class='shareaholic-fblike' data-shr_layout='button_count' data-shr_showfaces='false' data-shr_href='http%3A%2F%2Fspacebug.com%2Ffinally-i-have-budget-to-support-open-source%2F' data-shr_title='Finally+I+Have+a+Budget+to+Support+Open+Source'></a><a class='shareaholic-fbsend' data-shr_href='http%3A%2F%2Fspacebug.com%2Ffinally-i-have-budget-to-support-open-source%2F'></a></div><div style="clear: both; min-height: 1px; height: 3px; width: 100%;"></div><!-- End Shareaholic LikeButtonSetBottom Automatic -->]]></content:encoded>
			<wfw:commentRss>http://spacebug.com/finally-i-have-budget-to-support-open-source/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Voice Recognition API in Android Apps Using RecognizerIntent</title>
		<link>http://spacebug.com/voice-recognition-api-in-android-apps-using-recognizerintent/</link>
		<comments>http://spacebug.com/voice-recognition-api-in-android-apps-using-recognizerintent/#comments</comments>
		<pubDate>Thu, 11 Aug 2011 19:59:15 +0000</pubDate>
		<dc:creator>Amir Shevat</dc:creator>
				<category><![CDATA[Android]]></category>
		<category><![CDATA[Google]]></category>
		<category><![CDATA[Java]]></category>
		<category><![CDATA[Open source]]></category>
		<category><![CDATA[Software development]]></category>

		<guid isPermaLink="false">http://spacebug.com/?p=634</guid>
		<description><![CDATA[Voice interface is not a common application user interface, we do not usually interact with application&#160;using&#160;voice. But when it comes to mobile it makes more&#160;sense. We are used to talk to a phone all day &#8211; why not talk to our phone apps? Not all voice interaction should look like this video: Here is how [...]]]></description>
			<content:encoded><![CDATA[<!-- Start Shareaholic LikeButtonSetTop Automatic --><!-- End Shareaholic LikeButtonSetTop Automatic --><p>Voice interface is not a common application user interface, we do not usually interact with application&nbsp;using&nbsp;voice. But when it comes to mobile it makes more&nbsp;sense.<br />
We are used to talk to a phone all day &#8211; why not talk to our phone apps?<br />
Not all voice interaction should look like this video:<br />
<iframe width="425" height="349" src="http://www.youtube.com/embed/l9kKn3mlfV4" frameborder="0" allowfullscreen=""></iframe><br />
<br />
Here is how you use Android Voice Recognition API:</p>
<ol>
<li>Call the RecognizerIntent &nbsp;- your application call the Voice recognition Intent that records the voice.</li>
<li>Intent processes the voice recording &#8211; sends it to the voice Recognition Service and returns</li>
<li>A list of string is passed to an implemented callback method in you&nbsp;application</li>
<li>You process the string and continue the interaction with the user</li>
</ol>
<p>Here is a simple call to the intent:<br />
<code> </code></p>
<pre><code>     /**
     * Fire an intent to start the speech recognition activity.
     */
    private void startVoiceRecognitionActivity() {
        Intent intent = new Intent(RecognizerIntent.ACTION_RECOGNIZE_SPEECH);
        intent.putExtra(RecognizerIntent.EXTRA_LANGUAGE_MODEL,
                RecognizerIntent.LANGUAGE_MODEL_FREE_FORM);
        intent.putExtra(RecognizerIntent.EXTRA_PROMPT, "Speech recognition demo");
        startActivityForResult(intent, VOICE_RECOGNITION_REQUEST_CODE);
    }
</code></pre>
<p><code> </code><br />
And here is the callback:<br />
<code> </code></p>
<pre><code>      /**
     * Handle the results from the recognition activity.
     */
    @Override
    protected void onActivityResult(int requestCode, int resultCode, Intent data) {
        if (requestCode == VOICE_RECOGNITION_REQUEST_CODE &#038;&#038; resultCode == RESULT_OK) {
            // Fill the list view with the strings the recognizer thought it could have heard
            ArrayList matches = data.getStringArrayListExtra(
                    RecognizerIntent.EXTRA_RESULTS);   

          //DO SOMETHING WITH THE MATCHES

        super.onActivityResult(requestCode, resultCode, data);
    }
</code></pre>
<p><code> </code></p>
<p><a href="http://developer.android.com/resources/samples/ApiDemos/src/com/example/android/apis/app/VoiceRecognition.html">Here is a full code sample</a> &#8211; I played with it today and will very little effort created a Pizza ordering application for my next demo session.</p>
<div class="shr-publisher-634"></div><!-- Start Shareaholic LikeButtonSetBottom Automatic --><div style="clear: both; min-height: 1px; height: 3px; width: 100%;"></div><div class='shareaholic-like-buttonset' style='float:none;height:30px;'><a class='shareaholic-googleplusone' data-shr_size='medium' data-shr_count='true' data-shr_href='http%3A%2F%2Fspacebug.com%2Fvoice-recognition-api-in-android-apps-using-recognizerintent%2F' data-shr_title='Voice+Recognition+API+in+Android+Apps+Using+RecognizerIntent'></a><a class='shareaholic-fblike' data-shr_layout='button_count' data-shr_showfaces='false' data-shr_href='http%3A%2F%2Fspacebug.com%2Fvoice-recognition-api-in-android-apps-using-recognizerintent%2F' data-shr_title='Voice+Recognition+API+in+Android+Apps+Using+RecognizerIntent'></a><a class='shareaholic-fbsend' data-shr_href='http%3A%2F%2Fspacebug.com%2Fvoice-recognition-api-in-android-apps-using-recognizerintent%2F'></a></div><div style="clear: both; min-height: 1px; height: 3px; width: 100%;"></div><!-- End Shareaholic LikeButtonSetBottom Automatic -->]]></content:encoded>
			<wfw:commentRss>http://spacebug.com/voice-recognition-api-in-android-apps-using-recognizerintent/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Leaving Microsoft and Joining Google</title>
		<link>http://spacebug.com/leaving-microsoft-and-joining-google/</link>
		<comments>http://spacebug.com/leaving-microsoft-and-joining-google/#comments</comments>
		<pubDate>Thu, 05 May 2011 13:44:43 +0000</pubDate>
		<dc:creator>Amir Shevat</dc:creator>
				<category><![CDATA[Best practices]]></category>
		<category><![CDATA[Google]]></category>
		<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[Open source]]></category>

		<guid isPermaLink="false">http://spacebug.com/?p=619</guid>
		<description><![CDATA[I try to talk about myself as little as possible in this blog, but this is a personal post &#8211; so if you are looking for a tech-post, wait for next week. In the last 5 years I have worked for Microsoft in several positions and done a lot of exciting things &#8211; presenting at [...]]]></description>
			<content:encoded><![CDATA[<!-- Start Shareaholic LikeButtonSetTop Automatic --><!-- End Shareaholic LikeButtonSetTop Automatic --><p>I try to talk about myself as little as possible in this blog, but this is a personal post &#8211; so if you are looking for a tech-post, wait for next week.</p>
<p>In the last 5 years I have worked for Microsoft in several positions and done a lot of exciting things &#8211; presenting at events, doing business development with Startups, and doing technical sessions for developers and architects all the way to managing the sales of Microsoft Cloud Platform, Azure, in Middle East and Africa.</p>
<p>Lately, I have been approached by Google to do a very exciting role of a Developer Relationship Manager – working with developers, startups and enterprises. Last week, I have decided to accept the offer!</p>
<p>Working for Microsoft has been a great learning experience –big corporate mentality, cross group work, presentation skills, breath of technologies, as well as sales management and processes.<a href="http://spacebug.com/wp-content/uploads/2011/05/image-jekyll.jpg"><img class="alignright size-medium wp-image-620" title="image-jekyll" src="http://spacebug.com/wp-content/uploads/2011/05/image-jekyll-300x265.jpg" alt="" height="265" width="300"></a> Having said that, being an open source guy at heart and working for Microsoft was always challenging – I tried to compensate by collaborating with SUN and the open source community and even presented in their events and invested in joined effort, but in general people around me were not as enthusiastic about openness and free software as I was (what great surprise there!!) so I always felt a little like Dr Jackal and mister Hyde.</p>
<p>In my new role in Google, driving open source projects and FOSS development will be an integral part of my job description. This brings me great childlike joy and excitement, something we tend to forget or loss along the way in the high-tech business.</p>
<div class="shr-publisher-619"></div><!-- Start Shareaholic LikeButtonSetBottom Automatic --><div style="clear: both; min-height: 1px; height: 3px; width: 100%;"></div><div class='shareaholic-like-buttonset' style='float:none;height:30px;'><a class='shareaholic-googleplusone' data-shr_size='medium' data-shr_count='true' data-shr_href='http%3A%2F%2Fspacebug.com%2Fleaving-microsoft-and-joining-google%2F' data-shr_title='Leaving+Microsoft+and+Joining+Google'></a><a class='shareaholic-fblike' data-shr_layout='button_count' data-shr_showfaces='false' data-shr_href='http%3A%2F%2Fspacebug.com%2Fleaving-microsoft-and-joining-google%2F' data-shr_title='Leaving+Microsoft+and+Joining+Google'></a><a class='shareaholic-fbsend' data-shr_href='http%3A%2F%2Fspacebug.com%2Fleaving-microsoft-and-joining-google%2F'></a></div><div style="clear: both; min-height: 1px; height: 3px; width: 100%;"></div><!-- End Shareaholic LikeButtonSetBottom Automatic -->]]></content:encoded>
			<wfw:commentRss>http://spacebug.com/leaving-microsoft-and-joining-google/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>Integrating CakePHP with Facebook Graph API</title>
		<link>http://spacebug.com/integrating-cakephp-with-facebook-graph-api/</link>
		<comments>http://spacebug.com/integrating-cakephp-with-facebook-graph-api/#comments</comments>
		<pubDate>Sun, 13 Feb 2011 15:17:26 +0000</pubDate>
		<dc:creator>Amir Shevat</dc:creator>
				<category><![CDATA[Facebook]]></category>
		<category><![CDATA[Open source]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[Wordpress]]></category>

		<guid isPermaLink="false">http://spacebug.com/?p=557</guid>
		<description><![CDATA[I just move my site (Cats Idol) from Drupal to CakePHP. It has definitely been a good move &#8211; in two weeks, working at night, I have gain a lot of control and flexibility I needed and did not have in Drupal. CakePHP is an easy to use and agile development framework that provide an [...]]]></description>
			<content:encoded><![CDATA[<!-- Start Shareaholic LikeButtonSetTop Automatic --><!-- End Shareaholic LikeButtonSetTop Automatic --><p>I just move my site (<a href="http://catsidol.com">Cats Idol</a>) from Drupal to <a href="http://cakephp.org/" target="_blank">CakePHP</a>. It has definitely been a good move &#8211; in two weeks, working at night, I have gain a lot of control and flexibility I needed and did not have in Drupal.</p>
<p>CakePHP is an easy to use and agile development framework that provide an MVC,  a great ORM, and other useful tools for rapid application development.</p>
<p>But more on that in a different post..</p>
<p>Another major feature I needed was integration with Facebook:</p>
<ol>
<li>I wanted to use Facebook Auth and provisioning rather than t write it myself</li>
<li>I wanted users to be able to comment and Like content on the site</li>
<li>I wanted to publish content on users wall when they add content to Cats Idol<img style="float: right;" src="http://cakephp.org/img/cake-logo.png" alt="CakePHP : the rapid development php framework" /></li>
</ol>
<p>I found a very useful plugin, developed by Nick Baker, which provides this functionality and more.</p>
<p>So check the plugin <a href="http://www.webtechnick.com/wtn/blogs/view/238/Facebook_Plugin_v2_0_Graph_System">here</a>.</p>
<p>And you can see a demonstration of it in action <a href="http://catsidol.com">here</a>.</p>
<p>And CakePHP app integrated into Facebook <a href="http://apps.facebook.com/cats_idol/">here</a>.</p>
<p>Thanks Nick, Great Job!</p>
<div class="shr-publisher-557"></div><!-- Start Shareaholic LikeButtonSetBottom Automatic --><div style="clear: both; min-height: 1px; height: 3px; width: 100%;"></div><div class='shareaholic-like-buttonset' style='float:none;height:30px;'><a class='shareaholic-googleplusone' data-shr_size='medium' data-shr_count='true' data-shr_href='http%3A%2F%2Fspacebug.com%2Fintegrating-cakephp-with-facebook-graph-api%2F' data-shr_title='Integrating+CakePHP+with+Facebook+Graph+API'></a><a class='shareaholic-fblike' data-shr_layout='button_count' data-shr_showfaces='false' data-shr_href='http%3A%2F%2Fspacebug.com%2Fintegrating-cakephp-with-facebook-graph-api%2F' data-shr_title='Integrating+CakePHP+with+Facebook+Graph+API'></a><a class='shareaholic-fbsend' data-shr_href='http%3A%2F%2Fspacebug.com%2Fintegrating-cakephp-with-facebook-graph-api%2F'></a></div><div style="clear: both; min-height: 1px; height: 3px; width: 100%;"></div><!-- End Shareaholic LikeButtonSetBottom Automatic -->]]></content:encoded>
			<wfw:commentRss>http://spacebug.com/integrating-cakephp-with-facebook-graph-api/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Ad Supported Open Source Site/Blogs – Poor Revenue Model</title>
		<link>http://spacebug.com/ad-supported-open-source-siteblogs-poor-revenue-model/</link>
		<comments>http://spacebug.com/ad-supported-open-source-siteblogs-poor-revenue-model/#comments</comments>
		<pubDate>Tue, 03 Aug 2010 14:15:29 +0000</pubDate>
		<dc:creator>Amir Shevat</dc:creator>
				<category><![CDATA[Open source]]></category>
		<category><![CDATA[Opinion]]></category>

		<guid isPermaLink="false">http://spacebug.com/?p=530</guid>
		<description><![CDATA[If you are reading these lines, chances are you will not click on any of my ads. In one of my previous articles, I have explored several revenue models for open source projects. I have promised to update on ad-supported revenue model as a way to make money from open source. In this article I [...]]]></description>
			<content:encoded><![CDATA[<!-- Start Shareaholic LikeButtonSetTop Automatic --><!-- End Shareaholic LikeButtonSetTop Automatic --><p>If you are reading these lines, chances are you will not click on any of my ads.</p>
<p>In one of my <a title="how to make money from open source" href="http://spacebug.com/how_to_make_money_from_open_source-html/" target="_blank">previous articles</a>, I have explored several revenue models for open source projects. I have promised to update on ad-supported revenue model as a way to make money from open source. In this article I report back on the relatively poor revenues you get out of this channel.</p>
<p>I have confirmed this fact with many open source bloggers and they all provide the same feedback &#8211; Software developers in general and open source developers even more so, are not interested in clicking on advertisement.</p>
<p>Spacebug, for example, is a dev-blog and has some open source projects hosted in it. <a href="http://spacebug.com">Spacebug.com</a> has moderate popularity &#8211; it gets about 60k unique visits a year. The revenues I see from it is about 100-200$ a year. It covers the expenses but is nothing to write home about.</p>
<p>These are some possible reasons why visitors to dev-blogs do not click ads:</p>
<ul>
<li>Developers are not here to shop – they are not interested in anything other than free content provided in the site.</li>
<li>Developers are so accustomed to ad-supported websites the advertisement are transparent to them.</li>
<li>Developers use ad-blockers and do not get the ads served in the first place</li>
<li>Advertises and ad networks fail to deliver interesting content that fits the developer needs</li>
</ul>
<p>I base these reasons on my behavior as a developer who visit dev-sites and from feedbacks from other open source bloggers</p>
<div class="shr-publisher-530"></div><!-- Start Shareaholic LikeButtonSetBottom Automatic --><div style="clear: both; min-height: 1px; height: 3px; width: 100%;"></div><div class='shareaholic-like-buttonset' style='float:none;height:30px;'><a class='shareaholic-googleplusone' data-shr_size='medium' data-shr_count='true' data-shr_href='http%3A%2F%2Fspacebug.com%2Fad-supported-open-source-siteblogs-poor-revenue-model%2F' data-shr_title='Ad+Supported+Open+Source+Site%2FBlogs+%E2%80%93+Poor+Revenue+Model'></a><a class='shareaholic-fblike' data-shr_layout='button_count' data-shr_showfaces='false' data-shr_href='http%3A%2F%2Fspacebug.com%2Fad-supported-open-source-siteblogs-poor-revenue-model%2F' data-shr_title='Ad+Supported+Open+Source+Site%2FBlogs+%E2%80%93+Poor+Revenue+Model'></a><a class='shareaholic-fbsend' data-shr_href='http%3A%2F%2Fspacebug.com%2Fad-supported-open-source-siteblogs-poor-revenue-model%2F'></a></div><div style="clear: both; min-height: 1px; height: 3px; width: 100%;"></div><!-- End Shareaholic LikeButtonSetBottom Automatic -->]]></content:encoded>
			<wfw:commentRss>http://spacebug.com/ad-supported-open-source-siteblogs-poor-revenue-model/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Auto-suggest jQuery plugin</title>
		<link>http://spacebug.com/auto-suggest-jquery-plugin/</link>
		<comments>http://spacebug.com/auto-suggest-jquery-plugin/#comments</comments>
		<pubDate>Wed, 02 Jun 2010 14:37:28 +0000</pubDate>
		<dc:creator>Amir Shevat</dc:creator>
				<category><![CDATA[AJAX]]></category>
		<category><![CDATA[jquery]]></category>
		<category><![CDATA[Open source]]></category>

		<guid isPermaLink="false">http://spacebug.com/?p=452</guid>
		<description><![CDATA[What is auto complete and auto suggest? Auto complete and auto suggest are a user interface feature that extend search functionality. It basically makes it easier and fast for the user to search structured data. There is sometimes a mixups between Auto complete and Auto suggest. I will try to state what comes to my [...]]]></description>
			<content:encoded><![CDATA[<!-- Start Shareaholic LikeButtonSetTop Automatic --><!-- End Shareaholic LikeButtonSetTop Automatic --><h2>What is auto complete and auto suggest?</h2>
<p>Auto complete and auto suggest are a user interface feature that extend search functionality. It basically makes it easier and fast for the user to search structured data.</p>
<p>There is sometimes a mixups between Auto complete and Auto suggest. I will try to state what comes to my mind when talking about both. I also share a fix/midification I have done for a cool auto suggest jQuery plugin.<br />
<span id="more-452"></span><br />
<br/><br/></p>
<h3>Auto complete</h3>
<p>Auto complete will consider the user input as a prefix to the query so if I type “<strong>spo</strong>”, it will return “<strong>spo</strong>rt” or “<strong>spo</strong>ok” but not “ka<strong>spo</strong>mat”. In SQL term this is an equivalent to saying:</p>
<pre>
WHERE some_column_name LIKE query%
</pre>
<p><br/><br/></p>
<h3>Auto suggest</h3>
<p>Auto suggest will consider the user input as a prefix, suffix and at any other location in the query, so if I type “<strong>spo</strong>”, it will return “<strong>spo</strong>rt”, “<strong>spo</strong>ok”, “ka<strong>spo</strong>mat” and also “sa<strong>spo</strong>”. In SQL term this is an equivalent to saying:</p>
<pre>
WHERE some_column_name LIKE %query%
</pre>
<p><br/><img src="http://spacebug.com/wp-content/uploads/2010/05/jquery.jpg" alt="" title="jquery" width="294" height="101" class="alignright size-full wp-image-442" /><br />
I found a cool auto suggest project written by <a href="http://drewwilson.com/">Drew Wilson</a>, it was good looking and works quite well.<br />
It had however some issues I had to resolve:</p>
<ol>
<li>Very little cross browser support (IE is still alive and kicking) + </strong></li>
<li> It provides a multi select functionality which enables users to select multiple items from the auto suggest box. I needed it to work with the native text box.</li>
<li>The CSS needed to be tuned to work with a small and thin search box</li>
</ol>
<p>I tried to contact drew and to merge my changes with his, but could not get a hold of him.</p>
<p>Lucky for us Drew released his code under the MIT open source license (good on you!). This enabled me, not only to modify his code but also, to share my modifications with you. </p>
<p>Auto–suggest provides a simple, elegant and cross-browser tested auto suggest functionally.</p>
<h2>DEMO</h2>
<p>I have implemented this code on one of our new initiative &#8211; an  <a href="http://choozza.com">automagic product comparison engine</a>, in which we really needed a good auto suggest searchbox. Check it out – really hard to miss the search there.</p>
<h2>Download </h2>
<p>Source code can be found in the <a href="http://spacebug.com/projects/auto-suggest-jquery-plugin/">plugin page</a>.</p>
<p>Note to Drew Wilson- if you like to merge back to your code, be my guest! Also, could not access your site using Firefox 2 or IE 8, only chrome worked for me. </p>
<div class="shr-publisher-452"></div><!-- Start Shareaholic LikeButtonSetBottom Automatic --><div style="clear: both; min-height: 1px; height: 3px; width: 100%;"></div><div class='shareaholic-like-buttonset' style='float:none;height:30px;'><a class='shareaholic-googleplusone' data-shr_size='medium' data-shr_count='true' data-shr_href='http%3A%2F%2Fspacebug.com%2Fauto-suggest-jquery-plugin%2F' data-shr_title='Auto-suggest+jQuery+plugin'></a><a class='shareaholic-fblike' data-shr_layout='button_count' data-shr_showfaces='false' data-shr_href='http%3A%2F%2Fspacebug.com%2Fauto-suggest-jquery-plugin%2F' data-shr_title='Auto-suggest+jQuery+plugin'></a><a class='shareaholic-fbsend' data-shr_href='http%3A%2F%2Fspacebug.com%2Fauto-suggest-jquery-plugin%2F'></a></div><div style="clear: both; min-height: 1px; height: 3px; width: 100%;"></div><!-- End Shareaholic LikeButtonSetBottom Automatic -->]]></content:encoded>
			<wfw:commentRss>http://spacebug.com/auto-suggest-jquery-plugin/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Useful JQuery Plugin to Display Errors, Messages, and Alerts: Gritter</title>
		<link>http://spacebug.com/useful-jquery-plugin-to-display-errors-messages-and-alerts-gritter/</link>
		<comments>http://spacebug.com/useful-jquery-plugin-to-display-errors-messages-and-alerts-gritter/#comments</comments>
		<pubDate>Sat, 24 Apr 2010 02:44:55 +0000</pubDate>
		<dc:creator>Amir Shevat</dc:creator>
				<category><![CDATA[jquery]]></category>
		<category><![CDATA[Open source]]></category>
		<category><![CDATA[Software development]]></category>
		<category><![CDATA[Tips]]></category>
		<category><![CDATA[web]]></category>

		<guid isPermaLink="false"></guid>
		<description><![CDATA[Real estate on your web page could be as important as real estate in real life. You got very little space on your client screen and need to use every inch (or pixels).  Errors and messages take up valuable space that could be better used for more important things.
 
That is why <a href="http://boedesign.com/blog/2009/07/11/growl-for-jquery-gritter/">Gritter</a> is a great <a href="http://jquery.com/">JQuery</a> plugin - it saves real estate on your page by showing alerts, messages and errors in a floating bubble way, that is both informative and (because you can configure Gritter to fade away after a few seconds) non intrusive:

<img style="border:0px"  border=0 src="http://spacebug.com/img/gritter.jpg">

This image was taken from one of our new site's design, we decided to use Gritter instead of putting the errors and notification inline.
]]></description>
			<content:encoded><![CDATA[<!-- Start Shareaholic LikeButtonSetTop Automatic --><!-- End Shareaholic LikeButtonSetTop Automatic --><p>Real estate on your web page could be as important as real estate in real life. You got very little space on your client screen and need to use every inch (or pixels).  Errors and messages take up valuable space that could be better used for more important things.</p>
<p>That is why <a href="http://boedesign.com/blog/2009/07/11/growl-for-jquery-gritter/">Gritter</a> is a great <a href="http://jquery.com/">JQuery</a> plugin &#8211; it saves real estate on your page by showing alerts, messages and errors in a floating bubble way, that is both informative and (because you can configure Gritter to fade away after a few seconds) non intrusive:</p>
<p><img style="border: 0px;" src="http://spacebug.com/img/gritter.jpg" border="0" alt="" /></p>
<p>This image was taken from one of our new site&#8217;s design, we decided to use Gritter instead of putting the errors and notification inline.<br />
<!--break--><br />
Check out Gritter&#8217;s <a href="http://boedesign.com/demos/gritter/">demo site</a> and <a href="http://boedesign.com/blog/2009/07/11/growl-for-jquery-gritter/">project site</a> and, for CakePHP developers, here is an <a href="http://duckranger.com/2010/04/use-gritter-for-jquery-growl-for-flash-in-cakephp/">article</a> about integrating Gritter with CakePHP.</p>
<p>It is open source, looks great, easy to integrate, and is very useful!</p>
<div class="shr-publisher-95"></div><!-- Start Shareaholic LikeButtonSetBottom Automatic --><div style="clear: both; min-height: 1px; height: 3px; width: 100%;"></div><div class='shareaholic-like-buttonset' style='float:none;height:30px;'><a class='shareaholic-googleplusone' data-shr_size='medium' data-shr_count='true' data-shr_href='http%3A%2F%2Fspacebug.com%2Fuseful-jquery-plugin-to-display-errors-messages-and-alerts-gritter%2F' data-shr_title='Useful+JQuery+Plugin+to+Display+Errors%2C+Messages%2C+and+Alerts%3A+Gritter'></a><a class='shareaholic-fblike' data-shr_layout='button_count' data-shr_showfaces='false' data-shr_href='http%3A%2F%2Fspacebug.com%2Fuseful-jquery-plugin-to-display-errors-messages-and-alerts-gritter%2F' data-shr_title='Useful+JQuery+Plugin+to+Display+Errors%2C+Messages%2C+and+Alerts%3A+Gritter'></a><a class='shareaholic-fbsend' data-shr_href='http%3A%2F%2Fspacebug.com%2Fuseful-jquery-plugin-to-display-errors-messages-and-alerts-gritter%2F'></a></div><div style="clear: both; min-height: 1px; height: 3px; width: 100%;"></div><!-- End Shareaholic LikeButtonSetBottom Automatic -->]]></content:encoded>
			<wfw:commentRss>http://spacebug.com/useful-jquery-plugin-to-display-errors-messages-and-alerts-gritter/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>CakeOTP 1.1 &#8211; User Registration with One Time Password for CakePHP Released</title>
		<link>http://spacebug.com/cakeotp_1-1-user_registration_with_one_time_password_for_cakephp_released/</link>
		<comments>http://spacebug.com/cakeotp_1-1-user_registration_with_one_time_password_for_cakephp_released/#comments</comments>
		<pubDate>Tue, 20 Apr 2010 14:05:08 +0000</pubDate>
		<dc:creator>Amir Shevat</dc:creator>
				<category><![CDATA[CakePHP]]></category>
		<category><![CDATA[New Release]]></category>
		<category><![CDATA[Open source]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[release]]></category>
		<category><![CDATA[Security]]></category>
		<category><![CDATA[Software development]]></category>
		<category><![CDATA[Authentication]]></category>

		<guid isPermaLink="false"></guid>
		<description><![CDATA[<img style="border:0px" border=0 align="right" src="http://spacebug.com/img/release.png">

CakeOTP is a reference implementation of User Registration with a <a href='http://spacebug.com/tableless_secure_one_time_password'>secure, table-less and expirable implementation of One Time Password</a> for the popular <a href="http://cakephp.org/">CakePHP</a> development framework.

<h4>New in CakeOTP release 1.1</h4>
]]></description>
			<content:encoded><![CDATA[<!-- Start Shareaholic LikeButtonSetTop Automatic --><!-- End Shareaholic LikeButtonSetTop Automatic --><p><img style="border: 0px;" src="http://spacebug.com/img/release.png" border="0" alt="" align="right" /></p>
<p>CakeOTP is a reference implementation of User Registration with a <a href="http://spacebug.com/tableless_secure_one_time_password">secure, table-less and expirable implementation of One Time Password</a> for the popular <a href="http://cakephp.org/">CakePHP</a> development framework.</p>
<h4>New in CakeOTP release 1.1</h4>
<p>1) Automatic login process, after the account activation- The user is automatically logged into the site and is redirected to an internal page, immediately after activating his/her account.<br />
2) User email validation.</p>
<p>Download this release <a href="http://spacebug.com/cakeotp/release/1.1/cakeotp.zip">here</a>.</p>
<p>Checkout the <a href="http://spacebug.com/cakeotp/demo/">Online Demo</a>, <a href="http://spacebug.com/CakeOTP-One_Time_Password_Reference_Implementation_for_CakePHP">project page</a> and <a href="http://spacebug.com/CakeOTP-CakePHP_One_Time_Password-Getting_Started">getting started page</a>.</p>
<div class="shr-publisher-94"></div><!-- Start Shareaholic LikeButtonSetBottom Automatic --><div style="clear: both; min-height: 1px; height: 3px; width: 100%;"></div><div class='shareaholic-like-buttonset' style='float:none;height:30px;'><a class='shareaholic-googleplusone' data-shr_size='medium' data-shr_count='true' data-shr_href='http%3A%2F%2Fspacebug.com%2Fcakeotp_1-1-user_registration_with_one_time_password_for_cakephp_released%2F' data-shr_title='CakeOTP+1.1+-+User+Registration+with+One+Time+Password+for+CakePHP+Released'></a><a class='shareaholic-fblike' data-shr_layout='button_count' data-shr_showfaces='false' data-shr_href='http%3A%2F%2Fspacebug.com%2Fcakeotp_1-1-user_registration_with_one_time_password_for_cakephp_released%2F' data-shr_title='CakeOTP+1.1+-+User+Registration+with+One+Time+Password+for+CakePHP+Released'></a><a class='shareaholic-fbsend' data-shr_href='http%3A%2F%2Fspacebug.com%2Fcakeotp_1-1-user_registration_with_one_time_password_for_cakephp_released%2F'></a></div><div style="clear: both; min-height: 1px; height: 3px; width: 100%;"></div><!-- End Shareaholic LikeButtonSetBottom Automatic -->]]></content:encoded>
			<wfw:commentRss>http://spacebug.com/cakeotp_1-1-user_registration_with_one_time_password_for_cakephp_released/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>How to: Automatic User Login in CakePHP</title>
		<link>http://spacebug.com/automatic-user-login-in-cakephp/</link>
		<comments>http://spacebug.com/automatic-user-login-in-cakephp/#comments</comments>
		<pubDate>Tue, 13 Apr 2010 19:27:42 +0000</pubDate>
		<dc:creator>Amir Shevat</dc:creator>
				<category><![CDATA[CakePHP]]></category>
		<category><![CDATA[Open source]]></category>
		<category><![CDATA[Software development]]></category>
		<category><![CDATA[Tips]]></category>

		<guid isPermaLink="false"></guid>
		<description><![CDATA[Sometimes you need to enable silent (implicit) login for your users. A good example of this would be this - after a registration process, you would want to automatically login the user, rather then having him retype the user name and password.

In <a href="http://cakephp.org/">CakePHP</a> there is a simple method in the Auth components that lets you login on the user's behave.

Here is how it is done:
]]></description>
			<content:encoded><![CDATA[<!-- Start Shareaholic LikeButtonSetTop Automatic --><!-- End Shareaholic LikeButtonSetTop Automatic --><p>Sometimes you need to enable silent (implicit) login for your users. A good example of this would be this &#8211; after a registration process, you would want to automatically login the user, rather then having him retype the user name and password.</p>
<p>In <a href="http://cakephp.org/">CakePHP</a> there is a simple method in the Auth components that lets you login on the user&#8217;s behave.</p>
<p>Here is how it is done:</p>
<p><code><br />
// assuming $password is the clear text password<br />
$this->data["User"]["password"] = $this->Auth->password($password);<br />
$this->data["User"]["username"] = $username;</p>
<p>// do the login<br />
$login = $this->Auth->login($this->data);</p>
<p>// $login is true is login went well.<br />
// now we can redirect the user to any page:<br />
if($login){<br />
   $this->redirect(array('controller' => "anycontroller",<br />
          'action' => "any_secure_action", null));<br />
}</p>
</pre>
<p>This will be implemented in the next <a href="http://spacebug.com/CakeOTP-One_Time_Password_Reference_Implementation_for_CakePHP">CakeOTP</a> release.</p>
<div class="shr-publisher-92"></div><!-- Start Shareaholic LikeButtonSetBottom Automatic --><div style="clear: both; min-height: 1px; height: 3px; width: 100%;"></div><div class='shareaholic-like-buttonset' style='float:none;height:30px;'><a class='shareaholic-googleplusone' data-shr_size='medium' data-shr_count='true' data-shr_href='http%3A%2F%2Fspacebug.com%2Fautomatic-user-login-in-cakephp%2F' data-shr_title='How+to%3A+Automatic+User+Login+in+CakePHP'></a><a class='shareaholic-fblike' data-shr_layout='button_count' data-shr_showfaces='false' data-shr_href='http%3A%2F%2Fspacebug.com%2Fautomatic-user-login-in-cakephp%2F' data-shr_title='How+to%3A+Automatic+User+Login+in+CakePHP'></a><a class='shareaholic-fbsend' data-shr_href='http%3A%2F%2Fspacebug.com%2Fautomatic-user-login-in-cakephp%2F'></a></div><div style="clear: both; min-height: 1px; height: 3px; width: 100%;"></div><!-- End Shareaholic LikeButtonSetBottom Automatic -->]]></content:encoded>
			<wfw:commentRss>http://spacebug.com/automatic-user-login-in-cakephp/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

