<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-2231382102347830254</id><updated>2011-11-27T16:53:43.539-08:00</updated><category term='linux'/><category term='install'/><category term='flash'/><category term='javascript'/><category term='mysql'/><category term='web'/><category term='php'/><category term='ajax'/><category term='free'/><category term='effect'/><category term='change'/><category term='none'/><category term='osx'/><category term='chart'/><category term='library'/><category term='software development'/><category term='restore'/><category term='desktop'/><category term='leopard'/><category term='web 2.0'/><category term='innodb'/><category term='tips'/><category term='start'/><category term='adsense'/><category term='javascript library'/><category term='mac'/><category term='internet'/><category term='script'/><category term='desktop cube'/><category term='jaunty'/><category term='programing'/><category term='compiz'/><category term='ubuntu'/><category term='transform'/><category term='error'/><category term='extjs'/><category term='json'/><category term='database'/><category term='backup'/><title type='text'>eCofe - IT mixed coffee</title><subtitle type='html'>Internet, Website, Networking, Programming, .NET, Java, PHP, C#, C++, Linux, Windows, Open Source, Adsense, Blog, Seo, Tutorial, Javascript, Database, Oracle, PostgreSQL, MySQL, Software, Computer, Graphic, Design</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://ecofe.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2231382102347830254/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://ecofe.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>CoffeeHunter</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>10</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-2231382102347830254.post-6008464829666105478</id><published>2009-08-27T20:47:00.000-07:00</published><updated>2009-08-28T02:05:43.338-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='adsense'/><category scheme='http://www.blogger.com/atom/ns#' term='tips'/><title type='text'>5 Tips for Adsense Registration</title><content type='html'>After waiting in 4 days, finally my blog approved by &lt;a href="https://www.google.com/adsense"&gt;Google Adsense&lt;/a&gt;. This is my first blog with Adsense and I have no experience in registering my blog to Adsense before. I'll share some tips to register successfully. Just follow the simple steps below:&lt;br /&gt;&lt;br /&gt;&lt;ol&gt;&lt;li&gt;Be sure your posts is in English. Although &lt;a href="https://www.google.com/adsense"&gt;Google Adsense&lt;/a&gt; supports several languages, I strongly recommend you to write your posts in English.&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Write your posts by yourself. Don't copy/paste another blog content to yours. It's ok if you can modify them. Make the post look better in language structure and appearance.&lt;/li&gt;&lt;li&gt;Design your blog nicely. Modify the layout and color. Don't use too much color. Keep your blog/site simple. Create a nice banner image with same text as your blog/site address. I think it will make Google more appreciate your work.&lt;/li&gt;&lt;li&gt;Create &lt;a href="https://www.google.com/adsense"&gt;Google Adsense&lt;/a&gt; account after your blog/site has ten or more posts in a week.&lt;br /&gt;&lt;/li&gt;&lt;li&gt;While you're waiting for approval, keep writing some posts. I believe that Google Adsense reviewer is keep watching your blog/site whether your site is always update.&lt;/li&gt;&lt;/ol&gt;That's the simple tips you can do. Don't forget to leave a comment so I know that this post is useful to you. Good luck.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2231382102347830254-6008464829666105478?l=ecofe.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ecofe.blogspot.com/feeds/6008464829666105478/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2231382102347830254&amp;postID=6008464829666105478&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2231382102347830254/posts/default/6008464829666105478'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2231382102347830254/posts/default/6008464829666105478'/><link rel='alternate' type='text/html' href='http://ecofe.blogspot.com/2009/08/google-adsense-registration-tips.html' title='5 Tips for Adsense Registration'/><author><name>CoffeeHunter</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2231382102347830254.post-4157224525096106178</id><published>2009-08-25T23:52:00.000-07:00</published><updated>2009-08-26T02:42:13.227-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='programing'/><category scheme='http://www.blogger.com/atom/ns#' term='javascript library'/><category scheme='http://www.blogger.com/atom/ns#' term='software development'/><category scheme='http://www.blogger.com/atom/ns#' term='ajax'/><title type='text'>Top 10 Javascript Libraries</title><content type='html'>I didn't write this list in order of rank. All of these libraries are often used by many software developers. So check them here:&lt;br /&gt;&lt;ol&gt;&lt;li&gt;&lt;a href="http://extjs.com/"&gt;ExtJS&lt;/a&gt;&lt;br /&gt;If you're bulding rich internet application and need widgets, here is the answer. You can create a nice widget with just a piece of code. It's also has a chart widget.&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://developer.yahoo.com/yui/"&gt;Yahoo UI&lt;/a&gt;&lt;br /&gt;Yahoo UI has a heavy namespaced library and very good documentation.&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://dojotoolkit.org/"&gt;Dojo Toolkit&lt;/a&gt;&lt;br /&gt;This one has an exellent idea of local data storage. It also has a superb infrastructure and good solid written API - one can easily write its own custom widgets.&lt;/li&gt;&lt;li&gt;&lt;a href="http://jquery.com/"&gt;jQuery&lt;/a&gt;&lt;br /&gt;Write less do more. jQuery attempts to halve the amount of code you write compared to the traditional DOM JavaScript. With the chain concept, you can transfom ten lines of code with just one statement.&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://script.aculo.us/"&gt;Scipt.aculo.us&lt;/a&gt;&lt;br /&gt;If you're talking about effects, don't forget this one. It has a easy-to-use effects library.&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://moofx.mad4milk.net/"&gt;Moo.FX&lt;/a&gt;&lt;br /&gt;&lt;strong style="font-weight: normal;"&gt;moo&lt;/strong&gt;.fx is a &lt;em&gt;superlightweight&lt;/em&gt;, &lt;i&gt;ultratiny&lt;/i&gt;, &lt;em&gt;megasmall&lt;/em&gt; javascript effects library, to be used with &lt;a href="http://prototype.conio.net/"&gt;prototype.js&lt;/a&gt; or the &lt;a href="http://mootools.net/"&gt;mootools framework.&lt;/a&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.mochikit.com/"&gt;Mochikit&lt;/a&gt;&lt;br /&gt;MochiKit is a &lt;a href="http://www.mochikit.com/doc/html/MochiKit/index.html"&gt;highly documented&lt;/a&gt; and &lt;a href="http://www.mochikit.com/tests/index.html"&gt;well tested&lt;/a&gt;, suite of JavaScript libraries that will help you get shit done, fast. We took all the good ideas we could find from our Python, Objective-C.&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.prototypejs.org/"&gt;Prototype&lt;/a&gt;&lt;br /&gt;Featuring a unique, easy-to-use toolkit for class-driven development and the nicest Ajax library around. It's also became codebase of other libraries.&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.javascripttoolbox.com/"&gt;JavascriptToolbox&lt;/a&gt;&lt;br /&gt;If you need any other libraries, just visit &lt;a href="http://www.javascripttoolbox.com/"&gt;this site&lt;/a&gt;.&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://ecofe.blogspot.com/"&gt;Jowo&lt;/a&gt;&lt;br /&gt;Finally, this is the best one for me. This is my own library. It's still on production but I have use it in many of my projects.&lt;br /&gt;&lt;/li&gt;&lt;/ol&gt;Why I wrote this post? The reason is that there are so many people confused of choosing which javascript library they are going to use. Why they are confused? Because they're looking for the best one. But unfortunately, there is no the best javascript library in the world. Trust me! Each library has weaknesses. So to get the best one, choose the most appropriate library for your needs.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2231382102347830254-4157224525096106178?l=ecofe.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ecofe.blogspot.com/feeds/4157224525096106178/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2231382102347830254&amp;postID=4157224525096106178&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2231382102347830254/posts/default/4157224525096106178'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2231382102347830254/posts/default/4157224525096106178'/><link rel='alternate' type='text/html' href='http://ecofe.blogspot.com/2009/08/top-10-javascript-libraries.html' title='Top 10 Javascript Libraries'/><author><name>CoffeeHunter</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2231382102347830254.post-5239584684955915273</id><published>2009-08-24T00:48:00.000-07:00</published><updated>2009-08-24T01:48:47.891-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='programing'/><category scheme='http://www.blogger.com/atom/ns#' term='javascript'/><category scheme='http://www.blogger.com/atom/ns#' term='ajax'/><category scheme='http://www.blogger.com/atom/ns#' term='internet'/><title type='text'>How To Redirect AJAX Request</title><content type='html'>There are so many questions out there asking about how to redirect AJAX / XmlHttpRequest. It is usually needed when you provide user login page with AJAX. We ask user for username and password then we send the data to server via AJAX. Server validates user's data. If they are valid we want to redirect user to another page. That's what we want.&lt;br /&gt;&lt;br /&gt;Unfortunately, AJAX cannot do that. Why?&lt;br /&gt;&lt;br /&gt;&lt;span class="fullpost"&gt;AJAX (Asynchronous Javascript And XML) is a kind of asynchronous communication between client and server. The meaning of asynchronous is that the communication is closed after client sending the data. But it's not ending. Client is still waiting for server response. Once the response come, it is retrieved by callback function in client.&lt;br /&gt;&lt;br /&gt;We can make an analogy by sending SMS to your friend. SMS is also a kind of asynchronous communication (while Phone Call is synchronous). When you finish sending SMS to your friend, your mobile phone actually stop sending data to your friend. But the phone is still waiting for the reply from your friend. You cannot know when your friend will reply. It could be in a minute, an hour or there will be no reply.&lt;br /&gt;&lt;br /&gt;That's an example of asynchronous communication. So what the point?&lt;br /&gt;&lt;br /&gt;In web-based communication architecture, if the data is sent asynchronously to server then the response will not be displayed in browser page. It will be passed to callback function that was set just before sending data. That's why we cannot redirect user with AJAX request. The redirection will only occur in server-side not in client-side.&lt;br /&gt;&lt;br /&gt;So if we want to redirect AJAX request, it must be done by javascript on client. The server can just send back status message wheter login is failed or succeded. If success, change the page location by javascript. You can do this by this command&lt;br /&gt;window.location = 'http://www.example.com';&lt;br /&gt;&lt;br /&gt;Don't forget to leave a comment so I know that this post is useful to you.&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2231382102347830254-5239584684955915273?l=ecofe.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ecofe.blogspot.com/feeds/5239584684955915273/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2231382102347830254&amp;postID=5239584684955915273&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2231382102347830254/posts/default/5239584684955915273'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2231382102347830254/posts/default/5239584684955915273'/><link rel='alternate' type='text/html' href='http://ecofe.blogspot.com/2009/08/how-to-redirect-ajax-request.html' title='How To Redirect AJAX Request'/><author><name>CoffeeHunter</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2231382102347830254.post-6319762426939240949</id><published>2009-08-19T05:24:00.000-07:00</published><updated>2009-08-19T06:50:27.830-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='javascript'/><category scheme='http://www.blogger.com/atom/ns#' term='web 2.0'/><category scheme='http://www.blogger.com/atom/ns#' term='library'/><category scheme='http://www.blogger.com/atom/ns#' term='ajax'/><category scheme='http://www.blogger.com/atom/ns#' term='extjs'/><title type='text'>10 New Widgets on ExtJS 3</title><content type='html'>&lt;a href="http://extjs.com/"&gt;ExtJS&lt;/a&gt; is one of the best AJAX/Javascript library in the world. Although the number of its widgets is not as much as other libraries, the superiority of &lt;a href="http://extjs.com/"&gt;ExtJS&lt;/a&gt; comes from very nice user interface. Since version 3, &lt;a href="http://extjs.com/"&gt;ExtJS&lt;/a&gt; introduced several nice widgets. Here they are:&lt;br /&gt;&lt;span class="fullpost"&gt;&lt;h2&gt;1. Row Editor Grid&lt;/h2&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_Yr-eEscd9CM/Sov0kuFbL0I/AAAAAAAAAEI/O3v1bxSzmWs/s1600-h/row-editor-grid.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px; height: 195px;" src="http://3.bp.blogspot.com/_Yr-eEscd9CM/Sov0kuFbL0I/AAAAAAAAAEI/O3v1bxSzmWs/s320/row-editor-grid.jpg" alt="" id="BLOGGER_PHOTO_ID_5371655892252700482" border="0" /&gt;&lt;/a&gt;When you double click any row on this widget, the row will change to a form and allow you to edit the value. Once you finish, you can click the update button or cancel any changes.&lt;br /&gt;&lt;h2&gt;2. Progress Bar Pager&lt;/h2&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_Yr-eEscd9CM/Sov0kGoOTiI/AAAAAAAAAEA/TAZ07b6onkg/s1600-h/progress-bar-pager.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px; height: 169px;" src="http://4.bp.blogspot.com/_Yr-eEscd9CM/Sov0kGoOTiI/AAAAAAAAAEA/TAZ07b6onkg/s320/progress-bar-pager.jpg" alt="" id="BLOGGER_PHOTO_ID_5371655881661238818" border="0" /&gt;&lt;/a&gt;Besides visualizing the number of data that are being displayed, this plugin allows you to change the page by clicking on the progress bar instead of using arrow buttons.&lt;br /&gt;&lt;h2&gt;3. Sliding Pager&lt;/h2&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_Yr-eEscd9CM/Sov1l36nTnI/AAAAAAAAAEQ/C8mWfFNKWs8/s1600-h/sliding-pager.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px; height: 171px;" src="http://4.bp.blogspot.com/_Yr-eEscd9CM/Sov1l36nTnI/AAAAAAAAAEQ/C8mWfFNKWs8/s320/sliding-pager.jpg" alt="" id="BLOGGER_PHOTO_ID_5371657011583209074" border="0" /&gt;&lt;/a&gt;This is the other one of Paging Toolbar plugins. User can change the page by moving the slider instead of typing the page value in text box. When you move the slider, it is snapped to page values.&lt;br /&gt;&lt;h2&gt;4. Group Tabs&lt;/h2&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_Yr-eEscd9CM/Sov0jlb-2sI/AAAAAAAAAD4/XQC-HMXGw3U/s1600-h/group-tabs.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px; height: 146px;" src="http://2.bp.blogspot.com/_Yr-eEscd9CM/Sov0jlb-2sI/AAAAAAAAAD4/XQC-HMXGw3U/s320/group-tabs.jpg" alt="" id="BLOGGER_PHOTO_ID_5371655872751524546" border="0" /&gt;&lt;/a&gt;Vertical tabs group with a nice interface.&lt;br /&gt;&lt;h2&gt;5. Toolbar Overflow&lt;/h2&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_Yr-eEscd9CM/Sov1nMx0WsI/AAAAAAAAAEw/8JEIN--DAfA/s1600-h/tbar-overflow.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px; height: 157px;" src="http://2.bp.blogspot.com/_Yr-eEscd9CM/Sov1nMx0WsI/AAAAAAAAAEw/8JEIN--DAfA/s320/tbar-overflow.jpg" alt="" id="BLOGGER_PHOTO_ID_5371657034363329218" border="0" /&gt;&lt;/a&gt;The previous versions of &lt;a href="http://extjs.com/"&gt;ExtJS&lt;/a&gt; didn't support toolbar resizing so if toolbar has many controls, they will be invisible when panel is resized. But it's not anymore now.&lt;br /&gt;&lt;h2&gt;6. Tab Scroller Menu&lt;/h2&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_Yr-eEscd9CM/Sov1mahvXaI/AAAAAAAAAEg/QtLzEA3gGMA/s1600-h/tabpanel-scroller-menu.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px; height: 125px;" src="http://2.bp.blogspot.com/_Yr-eEscd9CM/Sov1mahvXaI/AAAAAAAAAEg/QtLzEA3gGMA/s320/tabpanel-scroller-menu.jpg" alt="" id="BLOGGER_PHOTO_ID_5371657020874120610" border="0" /&gt;&lt;/a&gt;Inspired by modern web browsers, &lt;a href="http://extjs.com/"&gt;ExtJS&lt;/a&gt; made a new feature that will make our life easier. User can navigate within many tabs opened at once.&lt;br /&gt;&lt;h2&gt;7. Charts&lt;/h2&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_Yr-eEscd9CM/Sov0i5gkG6I/AAAAAAAAADo/qn3wJ4GMmgY/s1600-h/charts.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px; height: 193px;" src="http://1.bp.blogspot.com/_Yr-eEscd9CM/Sov0i5gkG6I/AAAAAAAAADo/qn3wJ4GMmgY/s320/charts.jpg" alt="" id="BLOGGER_PHOTO_ID_5371655860959583138" border="0" /&gt;&lt;/a&gt;I was surprised knowing that &lt;a href="http://extjs.com/"&gt;ExtJS&lt;/a&gt; includes chart library in this version. It's a good start though it still has a few of chart types.&lt;br /&gt;&lt;h2&gt;8. Spinner&lt;/h2&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_Yr-eEscd9CM/Sov1mMVHj_I/AAAAAAAAAEY/tVmQAX1ET2c/s1600-h/spinner.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 211px; height: 93px;" src="http://1.bp.blogspot.com/_Yr-eEscd9CM/Sov1mMVHj_I/AAAAAAAAAEY/tVmQAX1ET2c/s320/spinner.jpg" alt="" id="BLOGGER_PHOTO_ID_5371657017063084018" border="0" /&gt;&lt;/a&gt;It's just an ordinary widget that is also supported in any other desktop application framework. May be &lt;a href="http://extjs.com/"&gt;ExtJS&lt;/a&gt; developers forgot to include this widget on previous releases.&lt;br /&gt;&lt;h2&gt;9. Toolbar Button Groups&lt;/h2&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_Yr-eEscd9CM/Sov1m95-tdI/AAAAAAAAAEo/3UFF4CYaQGI/s1600-h/tbar-button-groups.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px; height: 161px;" src="http://3.bp.blogspot.com/_Yr-eEscd9CM/Sov1m95-tdI/AAAAAAAAAEo/3UFF4CYaQGI/s320/tbar-button-groups.jpg" alt="" id="BLOGGER_PHOTO_ID_5371657030371030482" border="0" /&gt;&lt;/a&gt;I think most of software developers who use &lt;a href="http://extjs.com/"&gt;ExtJS&lt;/a&gt; would be very interested in this widget. This widget mimics Microsoft Office ribbon toolbar that comes since Microsoft Office 2007.&lt;br /&gt;&lt;h2&gt;10. Check Tree&lt;/h2&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_Yr-eEscd9CM/Sov0jZqHgQI/AAAAAAAAADw/4Ha4jBdlYAc/s1600-h/check-tree.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px; height: 182px;" src="http://2.bp.blogspot.com/_Yr-eEscd9CM/Sov0jZqHgQI/AAAAAAAAADw/4Ha4jBdlYAc/s320/check-tree.jpg" alt="" id="BLOGGER_PHOTO_ID_5371655869589586178" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;This widget is usually used by many installers on desktop application.&lt;br /&gt;&lt;br /&gt;Don't forget to leave a comment so I know that this post is useful to you.&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2231382102347830254-6319762426939240949?l=ecofe.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ecofe.blogspot.com/feeds/6319762426939240949/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2231382102347830254&amp;postID=6319762426939240949&amp;isPopup=true' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2231382102347830254/posts/default/6319762426939240949'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2231382102347830254/posts/default/6319762426939240949'/><link rel='alternate' type='text/html' href='http://ecofe.blogspot.com/2009/08/10-new-widgets-on-extjs-3.html' title='10 New Widgets on ExtJS 3'/><author><name>CoffeeHunter</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_Yr-eEscd9CM/Sov0kuFbL0I/AAAAAAAAAEI/O3v1bxSzmWs/s72-c/row-editor-grid.jpg' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2231382102347830254.post-5774036167337524736</id><published>2009-08-18T07:18:00.000-07:00</published><updated>2009-08-19T08:52:02.650-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='free'/><category scheme='http://www.blogger.com/atom/ns#' term='php'/><category scheme='http://www.blogger.com/atom/ns#' term='flash'/><category scheme='http://www.blogger.com/atom/ns#' term='web'/><category scheme='http://www.blogger.com/atom/ns#' term='chart'/><title type='text'>13 Best Web Chart Libraries</title><content type='html'>Few days ago, I got a project that requires to generate a lot of charts as output. And my client needs charts with a great visual. I knew some chart libraries but the visual is not so well so I thought my client wouldn’t be satisfied with it.&lt;br /&gt;&lt;br /&gt;So I began to search and try another chart libraries and I was surprised coz I found so many libraries out there. Some of them are free, some are shareware. Don’t worry if you’re looking at the best free library coz there are several free libraries that are good enough. They have good UI and very simple/easy script to use. Check them here:&lt;br /&gt;&lt;span class="fullpost"&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="http://teethgrinder.co.uk/open-flash-chart/"&gt;Open Flash Chart&lt;/a&gt; (Free) - This chart library is fairly easy to setup and has classes written in PHP, Perl, Python, Java, Ruby on Rails, and .Net to connect to the Chart.&lt;/li&gt;&lt;/ul&gt;&lt;blockquote&gt;Output: SWF Flash&lt;br /&gt;Animation: Yes&lt;br /&gt;Javascript Control: Yes&lt;br /&gt;Charts: Line, Bar, 3D Bar, Glass Bar, Fade Bar, Sketch Bar, Area, Pie, Scatter, CandleStick&lt;br /&gt;&lt;/blockquote&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_Yr-eEscd9CM/SowM_Gnd3dI/AAAAAAAAAGo/Q6bx1838MRs/s1600-h/open-flash-chart.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px; height: 94px;" src="http://4.bp.blogspot.com/_Yr-eEscd9CM/SowM_Gnd3dI/AAAAAAAAAGo/Q6bx1838MRs/s320/open-flash-chart.png" alt="" id="BLOGGER_PHOTO_ID_5371682733793598930" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="http://code.google.com/p/flot/"&gt;Flot&lt;/a&gt; (Free) - Flot is a pure Javascript plotting library for jQuery. The focus is on easy usage , attractive plots and interactive features. With Flot you can interact with the data, look at specific data by zooming in, plot a time series, and other various options.&lt;/li&gt;&lt;/ul&gt;&lt;blockquote&gt;Output: Canvas&lt;br /&gt;Animation: No&lt;br /&gt;Javascript Control: Yes&lt;br /&gt;Charts: Line, Bar, Area&lt;br /&gt;&lt;/blockquote&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_Yr-eEscd9CM/SowKdI6p-LI/AAAAAAAAAFg/qFbVZKCrt8o/s1600-h/flot.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px; height: 98px;" src="http://4.bp.blogspot.com/_Yr-eEscd9CM/SowKdI6p-LI/AAAAAAAAAFg/qFbVZKCrt8o/s320/flot.jpg" alt="" id="BLOGGER_PHOTO_ID_5371679951272147122" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="http://solutoire.com/flotr/"&gt;Flotr&lt;/a&gt; (Free) - Flotr is a javascript plotting library based on the Prototype Framework version 1.6.0.2. Flotr lets you create graphs in modern browsers with features like legend support, negative value support, mouse tracking, selection support, zoom support, event hooks, CSS styling support and much more.&lt;/li&gt;&lt;/ul&gt;&lt;blockquote&gt;Output: Canvas&lt;br /&gt;Animation: No&lt;br /&gt;Javascript Control: Yes&lt;br /&gt;Charts: Line, Bar, Area&lt;br /&gt;&lt;/blockquote&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_Yr-eEscd9CM/SowKdnfJxpI/AAAAAAAAAFo/G3PShhu2Mhg/s1600-h/flotr.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 295px; height: 150px;" src="http://2.bp.blogspot.com/_Yr-eEscd9CM/SowKdnfJxpI/AAAAAAAAAFo/G3PShhu2Mhg/s320/flotr.jpg" alt="" id="BLOGGER_PHOTO_ID_5371679959478290066" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="http://www.jfree.org/jfreechart/"&gt;JFreeChart&lt;/a&gt; (Free) - JFreeChart is an open source Java chart library that makes it easy for developers to display quality charts in their applications. The JFreeChart project was founded seven years ago, in February 2000, by David Gilbert and is used by approximately 40,000 to 50,000 developers. JFreeChart supports many different output types that includes JPEG, GIF, PDF, EPS and SVG. This is a great resource for Java developers.&lt;/li&gt;&lt;/ul&gt;&lt;blockquote&gt;Output: JPEG, GIF, PDF, EPS, SVG&lt;br /&gt;Chart: Line, Bar, Pie, Area, Scatter, Gauge&lt;br /&gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_Yr-eEscd9CM/SowM-pKl4PI/AAAAAAAAAGg/Aj0bqv-x-0k/s1600-h/java.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px; height: 94px;" src="http://2.bp.blogspot.com/_Yr-eEscd9CM/SowM-pKl4PI/AAAAAAAAAGg/Aj0bqv-x-0k/s320/java.jpg" alt="" id="BLOGGER_PHOTO_ID_5371682725887860978" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="http://www.visifire.com/"&gt;Visifire&lt;/a&gt; (Free) - Visifire (Powered by Silverlight) is a set of open source data visualization components. With Visifire you can create charts with ASP, ASP.Net, PHP, JSP, ColdFusion, Ruby on Rails. The charts can be just simple HTML or animated Silverlight Charts.&lt;/li&gt;&lt;/ul&gt;&lt;blockquote&gt;Output: JPEG, Silverlight&lt;br /&gt;Animation: Yes (Silverlight)&lt;br /&gt;Charts: Line, Bar, 3D Bar, Funnel, CandleStick, Area, Pie, Stock&lt;/blockquote&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_Yr-eEscd9CM/SowNAdEl-CI/AAAAAAAAAHA/N14W2GpPA8g/s1600-h/visifire.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px; height: 194px;" src="http://1.bp.blogspot.com/_Yr-eEscd9CM/SowNAdEl-CI/AAAAAAAAAHA/N14W2GpPA8g/s320/visifire.jpg" alt="" id="BLOGGER_PHOTO_ID_5371682757001213986" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="http://extjs.com/"&gt;ExtJS 3.0&lt;/a&gt; (Free) - Since version 3, ExtJS includes chart library in its package. ExtJS supports some basic charts which can be configured via JSON.&lt;/li&gt;&lt;/ul&gt;&lt;blockquote&gt;Output: SWF Flash&lt;br /&gt;Animation: Yes&lt;br /&gt;Javascript Control: Yes&lt;br /&gt;Charts: Line, Bar, Pie, Stacked Bar&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_Yr-eEscd9CM/Sowd0ky-fcI/AAAAAAAAAHY/TpD3ZSj8umY/s1600-h/extjs.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 319px; height: 174px;" src="http://3.bp.blogspot.com/_Yr-eEscd9CM/Sowd0ky-fcI/AAAAAAAAAHY/TpD3ZSj8umY/s320/extjs.jpg" alt="" id="BLOGGER_PHOTO_ID_5371701244614049218" border="0" /&gt;&lt;/a&gt;&lt;/blockquote&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="http://www.liquidx.net/plotkit/"&gt;PlotKit&lt;/a&gt; (Free) - PlotKit is a Chart and Graph Plotting Library for Javascript. PlotKit works with MochiKit javascript library. It has support for HTML Canvas and also SVG via Adobe SVG Viewer and native browser support. PlotKit also has great documentation.&lt;/li&gt;&lt;/ul&gt;&lt;blockquote&gt;Output: Canvas, SVG&lt;br /&gt;Animation: No&lt;br /&gt;Charts: Line, Bar, Pie, Area&lt;/blockquote&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_Yr-eEscd9CM/SowM_wBQw_I/AAAAAAAAAG4/O7btprgazOw/s1600-h/plotkit.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px; height: 98px;" src="http://2.bp.blogspot.com/_Yr-eEscd9CM/SowM_wBQw_I/AAAAAAAAAG4/O7btprgazOw/s320/plotkit.jpg" alt="" id="BLOGGER_PHOTO_ID_5371682744907645938" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="http://www.aditus.nu/jpgraph/"&gt;JpGraph&lt;/a&gt; (Free &amp;amp; Commercial)  - JpGraph is a Object-Oriented Graph creating library for PHP.  The library is completely written in PHP and ready to be used in any PHP scripts (both CGI/APXS/CLI versions of PHP are supported).&lt;br /&gt;Output: JPEG, SGS&lt;br /&gt;Charts: Line, Bar, Pie, Ring, Field, Splines, Geo Map, Stock, Polar, Radar, Gantt, Impuls, Error, Scatter, Ballon, Canvas, Contour&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_Yr-eEscd9CM/SowcFUCtaXI/AAAAAAAAAHQ/wxYOMOzvVSw/s1600-h/jpgraph.JPG"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 256px; height: 214px;" src="http://1.bp.blogspot.com/_Yr-eEscd9CM/SowcFUCtaXI/AAAAAAAAAHQ/wxYOMOzvVSw/s320/jpgraph.JPG" alt="" id="BLOGGER_PHOTO_ID_5371699333151156594" border="0" /&gt;&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="http://www.amcharts.com/"&gt;AmCharts&lt;/a&gt; (Proprietary) - AmCharts are animated interactive flash charts. The charts include Pie Charts, Line Charts, Scatter/Bubble Charts, Bar/Column Charts, and even a stock chart. AmCharts can extract data from simple CSV or XML files, or they can read dynamic data generated with PHP, .NET, Java, Ruby on Rails, Perl and ColdFusion. All the charts are free but they have a link to AmCharts on the upper left.&lt;/li&gt;&lt;/ul&gt;&lt;blockquote&gt;Output: SWF Flash, WPF&lt;br /&gt;Animation: Yes&lt;br /&gt;Javascript Control: Yes&lt;br /&gt;&lt;/blockquote&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_Yr-eEscd9CM/SowKcTHxJzI/AAAAAAAAAFQ/aYoSyYhlXx4/s1600-h/amcharts.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px; height: 136px;" src="http://1.bp.blogspot.com/_Yr-eEscd9CM/SowKcTHxJzI/AAAAAAAAAFQ/aYoSyYhlXx4/s320/amcharts.jpg" alt="" id="BLOGGER_PHOTO_ID_5371679936831629106" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="http://www.ejschart.com/"&gt;Emprise JavaScript Charts&lt;/a&gt; (Shareware) - Emprise JavaScript Charts is a 100% Pure JavaScript Charting Solution that requires no JavaScript frameworks. Emprise JavaScript Charts include charts with zooming, scaling and scrolling ability. Tested and works with all major browsers.&lt;/li&gt;&lt;/ul&gt;&lt;blockquote&gt;Output: Canvas&lt;br /&gt;Animation: No&lt;br /&gt;Javascript Control: Yes&lt;br /&gt;Charts: Line, Area, Scatter, Pie, Bar&lt;br /&gt;&lt;/blockquote&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_Yr-eEscd9CM/SowKcy9n8YI/AAAAAAAAAFY/DcXei8YunfI/s1600-h/emprise-charts.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px; height: 98px;" src="http://1.bp.blogspot.com/_Yr-eEscd9CM/SowKcy9n8YI/AAAAAAAAAFY/DcXei8YunfI/s320/emprise-charts.jpg" alt="" id="BLOGGER_PHOTO_ID_5371679945379017090" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="http://www.maani.us/xml_charts/"&gt;XML/SWF Charts&lt;/a&gt; (Shareware) - XML/SWF Charts is simple yet powerful tool to create attractive web charts and graphs from dynamic data. You can use any server-side script to gather the data and put it into XML. It supports many charts types,. These Charts have some great features like Animated transitions, Printable charts, and more.&lt;/li&gt;&lt;/ul&gt;&lt;blockquote&gt;Output: SWF Flash&lt;br /&gt;Animation: Yes&lt;br /&gt;Charts: Line, Column, Stacked column, Floating column, 3D column, Stacked 3D column, Parallel 3D column, Pie, 3D Pie, Bar, Stacked bar, Floating bar, Area, Stacked area, Candlestick, Scatter, Polar, Mixed, Composite and Joined&lt;br /&gt;&lt;/blockquote&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_Yr-eEscd9CM/SowM_Sx-02I/AAAAAAAAAGw/37FNMqp79_E/s1600-h/phpswf.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px; height: 98px;" src="http://2.bp.blogspot.com/_Yr-eEscd9CM/SowM_Sx-02I/AAAAAAAAAGw/37FNMqp79_E/s320/phpswf.jpg" alt="" id="BLOGGER_PHOTO_ID_5371682737058927458" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="http://www.fusioncharts.com/Free/"&gt;Fusion Charts&lt;/a&gt; (Proprietary)  - FusionCharts is a cross-browser and cross-platform flash charting component that can be used with ASP.NET, ASP, PHP, JSP, ColdFusion, Ruby on Rails, simple HTML pages or even PowerPoint Presentations.&lt;/li&gt;&lt;/ul&gt;&lt;blockquote&gt;Output: SWF Flash&lt;br /&gt;Animation: Yes&lt;/blockquote&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_Yr-eEscd9CM/SowKd1cfZ3I/AAAAAAAAAFw/aQwHKzw0fU4/s1600-h/fusioncharts.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 301px; height: 150px;" src="http://1.bp.blogspot.com/_Yr-eEscd9CM/SowKd1cfZ3I/AAAAAAAAAFw/aQwHKzw0fU4/s320/fusioncharts.jpg" alt="" id="BLOGGER_PHOTO_ID_5371679963225220978" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="http://flycharts.net/"&gt;FlyCharts&lt;/a&gt; (Shareware) - FlyCharts is a set of Adobe Flash (SWF) files that gives you outstanding possibility to visualize your              data. Using FlyCharts you can create compact, interactive and good-looking charts.&lt;br /&gt;Output: SWF/Flash&lt;br /&gt;Charts: Column/Bar, Line/Pipe, Pie, Area&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_Yr-eEscd9CM/SowcFDbZizI/AAAAAAAAAHI/jqQMDgsCFro/s1600-h/flycharts.JPG"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px; height: 158px;" src="http://4.bp.blogspot.com/_Yr-eEscd9CM/SowcFDbZizI/AAAAAAAAAHI/jqQMDgsCFro/s320/flycharts.JPG" alt="" id="BLOGGER_PHOTO_ID_5371699328691309362" border="0" /&gt;&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/span&gt;&lt;span class="fullpost"&gt;&lt;br /&gt;Charts that use SWF is more preferred because they offer great visual and animation though every browser on client must has Flash Player installed. So it’s yours to decide which one is fit your needs.&lt;br /&gt;&lt;br /&gt;If you know of any other charts, please post below.&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2231382102347830254-5774036167337524736?l=ecofe.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ecofe.blogspot.com/feeds/5774036167337524736/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2231382102347830254&amp;postID=5774036167337524736&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2231382102347830254/posts/default/5774036167337524736'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2231382102347830254/posts/default/5774036167337524736'/><link rel='alternate' type='text/html' href='http://ecofe.blogspot.com/2009/08/15-best-web-chart-libraries.html' title='13 Best Web Chart Libraries'/><author><name>CoffeeHunter</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_Yr-eEscd9CM/SowM_Gnd3dI/AAAAAAAAAGo/Q6bx1838MRs/s72-c/open-flash-chart.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2231382102347830254.post-7374410960442809633</id><published>2009-08-18T07:01:00.000-07:00</published><updated>2009-08-19T07:15:57.409-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='compiz'/><category scheme='http://www.blogger.com/atom/ns#' term='linux'/><category scheme='http://www.blogger.com/atom/ns#' term='desktop cube'/><category scheme='http://www.blogger.com/atom/ns#' term='ubuntu'/><title type='text'>3 Steps To Turn-On Desktop Cube</title><content type='html'>In Ubuntu, by default, you cannot see the beauty of compiz desktop cube and desktop rotation. You must turn it on manually. Here are 3 steps to do it:&lt;br /&gt;&lt;span class="fullpost"&gt;&lt;ol&gt;&lt;li&gt;Open Terminal and type: &lt;code&gt;sudo apt-get install compizconfig-settings-manager&lt;/code&gt;This is the GUI tool to easily manage the compiz configuration.&lt;/li&gt;&lt;li&gt;Go to &lt;span style="font-style: italic;"&gt;System-&gt;Preferences-&gt;CompizConfig&lt;/span&gt; &lt;span style="font-style: italic;"&gt;Settings Manager&lt;/span&gt;. On the left panel, click &lt;span style="font-style: italic;"&gt;General&lt;/span&gt;. On the right, click &lt;span style="font-style: italic;"&gt;General Options. &lt;/span&gt;Go to &lt;span style="font-style: italic;"&gt;Desktop Size&lt;/span&gt; tab and set &lt;span style="font-style: italic;"&gt;Horizontal Virtual Size &lt;/span&gt;to 4 then click &lt;span style="font-style: italic;"&gt;Back&lt;/span&gt; button on left panel.&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_Yr-eEscd9CM/SowGk8G9-dI/AAAAAAAAAFI/NbsU_JnWoRc/s1600-h/general.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px; height: 97px;" src="http://3.bp.blogspot.com/_Yr-eEscd9CM/SowGk8G9-dI/AAAAAAAAAFI/NbsU_JnWoRc/s320/general.png" alt="" id="BLOGGER_PHOTO_ID_5371675687226571218" border="0" /&gt;&lt;/a&gt;&lt;/li&gt;&lt;li&gt;Now click &lt;span style="font-style: italic;"&gt;Desktop&lt;/span&gt; on left panel. On the right, tick off &lt;span style="font-style: italic;"&gt;Desktop Cube&lt;/span&gt; and &lt;span style="font-style: italic;"&gt;Rotate Cube&lt;/span&gt; to enable them. Later, if you want to change the appearance of your cube, just enter the &lt;span style="font-style: italic;"&gt;Desktop Cube&lt;/span&gt; menu. While if you want to change the rotation setting, enter the &lt;span style="font-style: italic;"&gt;Rotate Cube&lt;/span&gt; menu.&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_Yr-eEscd9CM/SowGkXkJYFI/AAAAAAAAAFA/RqGyIkvm16U/s1600-h/desktop.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px; height: 101px;" src="http://1.bp.blogspot.com/_Yr-eEscd9CM/SowGkXkJYFI/AAAAAAAAAFA/RqGyIkvm16U/s320/desktop.png" alt="" id="BLOGGER_PHOTO_ID_5371675677416841298" border="0" /&gt;&lt;/a&gt;&lt;/li&gt;&lt;/ol&gt;Now you can try it. Push Ctrl+Alt buttons together then left-click any area on the screen and move your mouse. Wow...look at that. Cool hah?&lt;br /&gt;&lt;br /&gt;But wait...if your desktop form is not a cube (cylinder or sphere) or if you want  to change the form (or effects), follow these steps:&lt;br /&gt;&lt;ol&gt;&lt;li&gt;On the left panel, click &lt;span style="font-style: italic;"&gt;Effects&lt;/span&gt;. On the right, tick off and click &lt;span style="font-style: italic;"&gt;Cube Reflection and Deformation&lt;/span&gt;.&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_Yr-eEscd9CM/SowGj10DBuI/AAAAAAAAAE4/yZ0MgceKbpc/s1600-h/deformation.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px; height: 111px;" src="http://1.bp.blogspot.com/_Yr-eEscd9CM/SowGj10DBuI/AAAAAAAAAE4/yZ0MgceKbpc/s320/deformation.png" alt="" id="BLOGGER_PHOTO_ID_5371675668356728546" border="0" /&gt;&lt;/a&gt;&lt;/li&gt;&lt;li&gt;In &lt;span style="font-style: italic;"&gt;Cube&lt;/span&gt; caps tab, you can change the appearance of top and bottom side of the cube.&lt;/li&gt;&lt;li&gt;In &lt;span style="font-style: italic;"&gt;Reflection&lt;/span&gt; tab,  you can manage the background reflection while the cube is rotating&lt;/li&gt;&lt;li&gt;And in &lt;span style="font-style: italic;"&gt;Deformation&lt;/span&gt; tab, you can change the form of the cube to sphere or cylinder.&lt;/li&gt;&lt;/ol&gt;Don't forget to leave a comment so I know that this post is useful to you.&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2231382102347830254-7374410960442809633?l=ecofe.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ecofe.blogspot.com/feeds/7374410960442809633/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2231382102347830254&amp;postID=7374410960442809633&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2231382102347830254/posts/default/7374410960442809633'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2231382102347830254/posts/default/7374410960442809633'/><link rel='alternate' type='text/html' href='http://ecofe.blogspot.com/2009/08/3-steps-to-turn-on-desktop-cube.html' title='3 Steps To Turn-On Desktop Cube'/><author><name>CoffeeHunter</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_Yr-eEscd9CM/SowGk8G9-dI/AAAAAAAAAFI/NbsU_JnWoRc/s72-c/general.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2231382102347830254.post-6870165804575945263</id><published>2009-08-17T07:31:00.000-07:00</published><updated>2009-08-19T06:59:56.467-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='javascript'/><category scheme='http://www.blogger.com/atom/ns#' term='ajax'/><category scheme='http://www.blogger.com/atom/ns#' term='json'/><category scheme='http://www.blogger.com/atom/ns#' term='web'/><title type='text'>5 Minutes To Master JSON (JavaScript Object Notation)</title><content type='html'>To follow this tutorial, you don’t have to be experienced with Javascript. But it’ll be preferred if you have at least a little bit knowledge about Object Oriented Programming. Put all the scripts below inside the body element enclosed by script tag.&lt;br /&gt;&lt;h2&gt;Minute 1 - Intro to Object&lt;/h2&gt;&lt;code&gt;var myFirstObject = {};&lt;/code&gt;&lt;br /&gt;&lt;span class="fullpost"&gt;&lt;br /&gt;It may not look like much, but those squiggly braces have the potential to record every bit of information humanity has ever gathered, and express the most complex programs computer scientists can dream up. In fact, Javascript itself is stored inside a set of squiggly braces just like that, as are all of its primitive data types -- strings, numbers, arrays, dates, regular expressions, they're all objects and they all started out just like myFirstObject.&lt;br /&gt;&lt;h2&gt;Minute 2 - &lt;span class="fullpost"&gt;Creating A New Object&lt;/span&gt;&lt;/h2&gt;&lt;br /&gt;The old way to create a new object was to use the new keyword.&lt;br /&gt;&lt;code&gt;var myJSON = new Object();&lt;/code&gt;&lt;br /&gt;The above method has been deprecated now in favor of simply defining an empty object with squiggly braces.&lt;br /&gt;&lt;code&gt;var myJSON = {};&lt;/code&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:130%;"&gt;&lt;span style="font-weight: bold;"&gt;Objects as Data&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;code&gt;var myJSON = { "firstName": "Barrack", "lastName": "Obama", "age": 44 };&lt;/code&gt;&lt;br /&gt;&lt;br /&gt;This myJSON object has 3 properties or name/value pairs. The name is a string -- in our example, firstName, lastName, and age. The value can be any Javascript object (and remember everything in Javascript is an object so the value can be a string, number, array, function, even other Objects) -- In this example our values are “Barrack”, “Obama”, and 44. “Barrack” and “Obama” are strings but age is a number and as you can see this is not a problem.&lt;br /&gt;&lt;br /&gt;This data format is called JSON for JavaScript Object Notation. What makes it particularly powerful is that since the value can be any data type, you can store other arrays and other objects, nesting them as deeply as you need.&lt;br /&gt;&lt;h2&gt;Minute 3 - &lt;span class="fullpost"&gt;Accessing Data In JSON&lt;/span&gt;&lt;/h2&gt;&lt;br /&gt;The most common way to access JSON data is through dot notation. This is simply the object name followed by a period and then followed by the name/property you would like to access.&lt;br /&gt;&lt;br /&gt;&lt;code&gt;document.writeln(myJSON.firstName); // Outputs Barrack&lt;br /&gt;document.writeln(myJSON.lastName);   // Outputs Obama&lt;br /&gt;document.writeln(myJSON.age);        // Outputs 44&lt;br /&gt;&lt;/code&gt;&lt;br /&gt;If your object contains an object then just add another period and name&lt;br /&gt;&lt;code&gt;var myAnimals = { “cat”: { “name”: “mojo”, “color”: “white” }, “dog”: { “name”: “twister”, “color”: “gray” } };&lt;br /&gt;&lt;br /&gt;document.writeln(myAnimals.cat.name); // outputs mojo&lt;br /&gt;document.writeln(myAnimals.dog.name); // outputs twister&lt;/code&gt;&lt;br /&gt;&lt;h2&gt;Minute 4&lt;/h2&gt;&lt;h3&gt;Array as A Value&lt;/h3&gt;&lt;br /&gt;If your object contains an object with a type of Array, just specify the index of data after object name. This example will show you how to use a value with type of array&lt;br /&gt;&lt;code&gt;var myAnimals = { “cat”: { “name”: “mojo”, “color”: “white” }, “dogs”: [{ “name”: “twister”, “color”: “gray” }, { “name”: “sweety”, “color”: “brown” }] };&lt;br /&gt;&lt;br /&gt;document.writeln(myAnimals.cat.name); // outputs mojo&lt;br /&gt;document.writeln(myAnimals.dogs[0].name); // outputs twister&lt;br /&gt;document.writeln(myAnimals.dogs[1].name); // outputs sweety&lt;br /&gt;&lt;/code&gt;&lt;br /&gt;&lt;h3&gt;Function as A Value&lt;/h3&gt;&lt;br /&gt;The other power of Javascript is that you can assign a function to a variable directly. This example will create a message box that is called by show function&lt;br /&gt;&lt;code&gt;var myIdentity = { “name”: “joe”, “age”: 23, show: function(){alert(this.name + ‘ ’ + this.age)} };&lt;br /&gt;myIdentity.show();&lt;/code&gt;&lt;br /&gt;&lt;h2&gt;Minute 5 - &lt;span class="fullpost"&gt;Receiving JSON via AJAX&lt;/span&gt;&lt;/h2&gt;&lt;br /&gt;In this minute, if you’ve known a little about AJAX, you’ll figure out that using JSON as data format is much easier than XML.&lt;br /&gt;&lt;br /&gt;Remember that JSON data is simply string received from the server. Suppose that responseText contains string from server that is called by XMLHttpRequest.&lt;br /&gt;&lt;code&gt;var responseText = "fruits = { ‘name’: ‘apple’, 'color' : 'red' }"; // example of what is received from the server.&lt;br /&gt;eval(responseText); // Execute the javascript code contained in responseText.&lt;br /&gt;&lt;br /&gt;document.writeln(apple.color); // Outputs ‘green’&lt;/code&gt;&lt;br /&gt;&lt;br /&gt;eval() function is just a built-in Javascript string compiler which can run very fast.&lt;br /&gt;&lt;br /&gt;I think that’s all the essence of JSON. I suggest you to go to json.org to learn some more advance concept.&lt;br /&gt;&lt;br /&gt;Don’t forget to leave a comment so I know that this post is useful to you.&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2231382102347830254-6870165804575945263?l=ecofe.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ecofe.blogspot.com/feeds/6870165804575945263/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2231382102347830254&amp;postID=6870165804575945263&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2231382102347830254/posts/default/6870165804575945263'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2231382102347830254/posts/default/6870165804575945263'/><link rel='alternate' type='text/html' href='http://ecofe.blogspot.com/2009/08/5-minutes-to-master-json-javascript.html' title='5 Minutes To Master JSON (JavaScript Object Notation)'/><author><name>CoffeeHunter</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2231382102347830254.post-3715149020951749494</id><published>2009-08-16T07:55:00.000-07:00</published><updated>2009-08-19T06:54:29.741-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='restore'/><category scheme='http://www.blogger.com/atom/ns#' term='mysql'/><category scheme='http://www.blogger.com/atom/ns#' term='linux'/><category scheme='http://www.blogger.com/atom/ns#' term='innodb'/><category scheme='http://www.blogger.com/atom/ns#' term='backup'/><category scheme='http://www.blogger.com/atom/ns#' term='php'/><category scheme='http://www.blogger.com/atom/ns#' term='database'/><category scheme='http://www.blogger.com/atom/ns#' term='script'/><title type='text'>MySQL Backup  and Restore Using PHP</title><content type='html'>It is very important to make regular backup of your important data to keep them from data loss. There are several  ways to backup and restore your MySQL database. The easiest way is by copying the database directory in:&lt;br /&gt;&lt;code&gt;/var/lib/mysql&lt;/code&gt;&lt;br /&gt;or&lt;br /&gt;&lt;code&gt;C:\xampp\mysql\data (or MySQL installation folder if you are not using Xampp)&lt;/code&gt;&lt;br /&gt;But you cannot do this if your database table is using InnoDB engine. Your InnoDB table will not be recognized when it is restored in another MySQL server. So I don’t recommend this way to backup your MySQL database. This tutorial will show you how to backup and restore your database safely.&lt;br /&gt;&lt;span class="fullpost"&gt;&lt;br /&gt;&lt;h2&gt;Backup Databases&lt;/h2&gt;&lt;br /&gt;There are at least three ways to backup your MySQL Database:&lt;br /&gt;&lt;ol&gt;&lt;li&gt;Use phpMyAdmin to do the backup.&lt;/li&gt;&lt;li&gt;Run mysqldump from command line or using php system() function.&lt;/li&gt;&lt;li&gt;Execute a database backup query from PHP file.&lt;/li&gt;&lt;/ol&gt;If you want to backup your database from your application (PHP), you can do ways 2 or 3. I prefer to backup with mysqldump and I use this in all of my project.&lt;br /&gt;The format of mysqldump command is like this:&lt;br /&gt;&lt;code&gt;$ mysqldump --opt -u [uname] -p[pass] [dbname] &gt; [backupfile.sql]&lt;/code&gt;&lt;br /&gt;or&lt;br /&gt;&lt;code&gt;C:\xampp\mysql\bin\mysqldump.exe --opt -u [uname] -p[pass] [dbname] &gt; [backupfile.sql]&lt;/code&gt;&lt;br /&gt;&lt;/span&gt;&lt;ul&gt;&lt;li&gt;&lt;span class="fullpost"&gt;[uname] Your database username&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span class="fullpost"&gt;[pass] The password for your database (Note: there is no space between -p and the password)&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span class="fullpost"&gt;[dbname] The name of your database&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span class="fullpost"&gt;[backupfile.sql] The filename for your database backup&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span class="fullpost"&gt;[--opt] The mysqldump option&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;span class="fullpost"&gt;For example, to backup a database named 'Tutorial' with the username ‘root’ and password ‘toor’ to a file tutor_backup.sql, you should accomplish this command:&lt;br /&gt;&lt;code&gt;$ mysqldump -u root -ptoor Tutorial &gt; tutor_backup.sql&lt;/code&gt;&lt;br /&gt;This command will backup the 'Tutorial' database into a file called tutor_backup.sql which will contain all the SQL statements needed to re-create the database.&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;&lt;br /&gt;Backup Certain Tables&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;With mysqldump command you can specify certain tables of your database you want to backup. For example, to back up only php_tutorials and asp_tutorials tables from the 'Tutorial' database accomplish the command below. Each table name has to be separated by space.&lt;br /&gt;&lt;code&gt;$ mysqldump -u root -ptoor Tutorial php_tutorials asp_tutorials &gt; tutor_backup.sql&lt;/code&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;&lt;br /&gt;Backup Certain Databases&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;Sometimes it is necessary to back up more than one database at once. In this case you can use the --database option followed by the list of databases you would like to backup. Each database name has to be separated by space.&lt;br /&gt;&lt;code&gt;$ mysqldump -u root -ptoor --databases Tutorial Articles Comments &gt; t_a_c_backup.sql&lt;/code&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Backup All Database&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;If you want to back up all the databases in the server at one time you should use the --all-databases option. It tells MySQL to dump all the databases it has in storage.&lt;br /&gt;&lt;code&gt;$ mysqldump -u root -ptoor --all-databases &gt; alldb_backup.sql&lt;/code&gt;&lt;br /&gt;&lt;br /&gt;The mysqldump command has also some other useful options:&lt;br /&gt;&lt;code&gt;--add-drop-table: Tells MySQL to add a DROP TABLE statement before each CREATE TABLE in the dump.&lt;br /&gt;--no-data: Dumps only the database structure, not the contents.&lt;br /&gt;--add-locks: Adds the LOCK TABLES and UNLOCK TABLES statements you can see in the dump file.&lt;/code&gt;&lt;br /&gt;&lt;br /&gt;&lt;h2&gt;Restore Databases&lt;/h2&gt;&lt;br /&gt;Above we backup the Tutorial database into tut_backup.sql file. To re-create the Tutorial database you should follow two steps:&lt;br /&gt;Create an appropriately named database on the target machine&lt;br /&gt;Load the file using the MySQL command:&lt;br /&gt;&lt;code&gt;$ mysql -u [uname] -p[pass] [db_to_restore] &lt; [backupfile.sql]&lt;/code&gt;&lt;br /&gt;or&lt;br /&gt;&lt;code&gt;C:\xampp\mysql\bin\mysql.exe -u [uname] -p[pass] [db_to_restore] &lt; [backupfile.sql]&lt;/code&gt;&lt;br /&gt;&lt;br /&gt;Have a look how you can restore your tutor_backup.sql file to the Tutorial database.&lt;br /&gt;&lt;code&gt;$ mysql -u root -ptoor Tutorial &lt; tutor_backup.sql&lt;/code&gt;&lt;br /&gt;&lt;br /&gt;If you need to restore a database that already exists, you'll need to use mysqlimport command. The syntax for mysqlimport is as follows:&lt;br /&gt;$ mysqlimport -u [uname] -p[pass] [dbname] [backupfile.sql]&lt;br /&gt;&lt;br /&gt;Here are my scripts to backup and restore MySQL database through PHP.&lt;ul&gt;&lt;li&gt;&lt;a href="http://www.4shared.com/file/126124411/b580388d/mysql-backup-restore.html"&gt;mysql-backup-restore.zip&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;With this backup script, the output file can be downloaded. Just load the script from browser and save the output file. The output file is compressed in ZIP format.&lt;br /&gt;The restore script gets the file through upload form. Just browse the output file that has been downloaded with backup script and click Upload button.&lt;br /&gt;&lt;br /&gt;Please post below if you get a problem applying this tutorial.&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2231382102347830254-3715149020951749494?l=ecofe.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ecofe.blogspot.com/feeds/3715149020951749494/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2231382102347830254&amp;postID=3715149020951749494&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2231382102347830254/posts/default/3715149020951749494'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2231382102347830254/posts/default/3715149020951749494'/><link rel='alternate' type='text/html' href='http://ecofe.blogspot.com/2009/08/mysql-backup-and-restore-using-php.html' title='MySQL Backup  and Restore Using PHP'/><author><name>CoffeeHunter</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2231382102347830254.post-4822359387944400700</id><published>2009-08-15T09:10:00.000-07:00</published><updated>2009-08-19T08:56:52.346-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='start'/><category scheme='http://www.blogger.com/atom/ns#' term='none'/><category scheme='http://www.blogger.com/atom/ns#' term='compiz'/><category scheme='http://www.blogger.com/atom/ns#' term='linux'/><category scheme='http://www.blogger.com/atom/ns#' term='desktop'/><category scheme='http://www.blogger.com/atom/ns#' term='error'/><category scheme='http://www.blogger.com/atom/ns#' term='effect'/><category scheme='http://www.blogger.com/atom/ns#' term='ubuntu'/><title type='text'>Compiz Error After Setting Desktop Effect To None</title><content type='html'>May be this is one of many reasons why people still thinking that Linux is wearying OS. For example, when you are playing with the system settings or your desktop preferences, your system suddenly stop working and you don’t know what the hell is going on. Then you are shocked and thinking hard what you have to do to make your system works again.&lt;br /&gt;&lt;br /&gt;But it doesn’t matter if you have a big curiosity in Linux. Just open firefox or the other browsers and start to search the solutions of your problems like what I will explain in this post.&lt;br /&gt;&lt;br /&gt;&lt;span class="fullpost"&gt;It was an accident when I click None option in desktop effect setting. I thought it’s not a problem coz I could reset the setting back to Extra option. So I reset the option. But I was wrong, suddenly I got the message telling me that compiz-daemon couldn’t be started. Oh sh*t…what’s the going on?&lt;br /&gt;&lt;br /&gt;After searching for the solutions by using many keywords, I got a nice script to detect compiz problems. The script name was compiz-check. This script doesn’t only detect compiz problems but it can also repair the problems. So if you get this problem just download compiz-check and run in your terminal.&lt;br /&gt;&lt;br /&gt;Before you run compiz-check, change the permission to make it executable:&lt;br /&gt;&lt;code&gt;$ chmod 744 compiz-check&lt;br /&gt;$ ./compiz-check&lt;br /&gt;&lt;/code&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_Yr-eEscd9CM/SorTNFifydI/AAAAAAAAADU/9z7Y6hgjD9w/s1600-h/Screenshot.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px; height: 222px;" src="http://4.bp.blogspot.com/_Yr-eEscd9CM/SorTNFifydI/AAAAAAAAADU/9z7Y6hgjD9w/s320/Screenshot.png" alt="" id="BLOGGER_PHOTO_ID_5371337727371364818" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Don't forget to leave a comment so I know that this post is useful to you.&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2231382102347830254-4822359387944400700?l=ecofe.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ecofe.blogspot.com/feeds/4822359387944400700/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2231382102347830254&amp;postID=4822359387944400700&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2231382102347830254/posts/default/4822359387944400700'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2231382102347830254/posts/default/4822359387944400700'/><link rel='alternate' type='text/html' href='http://ecofe.blogspot.com/2009/08/compiz-error-after-setting-desktop.html' title='Compiz Error After Setting Desktop Effect To None'/><author><name>CoffeeHunter</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_Yr-eEscd9CM/SorTNFifydI/AAAAAAAAADU/9z7Y6hgjD9w/s72-c/Screenshot.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2231382102347830254.post-1350677889700142254</id><published>2009-08-14T07:58:00.000-07:00</published><updated>2009-08-19T06:52:24.517-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='install'/><category scheme='http://www.blogger.com/atom/ns#' term='jaunty'/><category scheme='http://www.blogger.com/atom/ns#' term='transform'/><category scheme='http://www.blogger.com/atom/ns#' term='leopard'/><category scheme='http://www.blogger.com/atom/ns#' term='change'/><category scheme='http://www.blogger.com/atom/ns#' term='osx'/><category scheme='http://www.blogger.com/atom/ns#' term='mac'/><category scheme='http://www.blogger.com/atom/ns#' term='ubuntu'/><title type='text'>Transform Ubuntu Jaunty to Mac OSX Leopard</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_Yr-eEscd9CM/SorK7kubdrI/AAAAAAAAADM/Tc1_hEDY5bk/s1600-h/16.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px; height: 201px;" src="http://2.bp.blogspot.com/_Yr-eEscd9CM/SorK7kubdrI/AAAAAAAAADM/Tc1_hEDY5bk/s320/16.jpg" alt="" id="BLOGGER_PHOTO_ID_5371328630412244658" border="0" /&gt;&lt;/a&gt;I was in my college laboratory yesterday and I got a nice tutorial from &lt;a href="http://maketecheasier.com/turn-your-ubuntu-hardy-to-mac-osx-leopard/2008/07/23"&gt;this site&lt;/a&gt; about transforming Ubuntu to Mac OSX Leopard. Because I was started to get bored with Ubuntu Studio theme that I installed a few weeks ago, I decided to transform my Ubuntu to the new taste of theme.&lt;br /&gt;&lt;br /&gt;As a matter of fact, I'm not PRO enough with the super advanced OS called Linux and it get worse coz I didn't mention that the tutorial I got is for transforming Ubuntu Hardy which is older than my current Ubuntu version (Jaunty). My notebook stuck into trouble while it was in the middle of transforming process. The screen was blinking after login to Gnome and I didn't know which package had caused this suck problem.&lt;br /&gt;&lt;br /&gt;I'm not a type of a loser, so I backup all of my data, reinstalled my Ubuntu and the Mac theme. There as a package that looks suspicious and I didn't reinstalled it. Now I got Mac OSX Leopard running on my notebook.&lt;br /&gt;&lt;br /&gt;Because I'm a good person (lol), I made this this tutorial so you don't fall into the same hole as me. Before we start the transformation you must download all of these files:&lt;br /&gt;&lt;span class="fullpost"&gt;&lt;br /&gt;&lt;/span&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="http://maketecheasier.com/a/Mac4Lin_modified_theme/"&gt;&lt;span class="fullpost"&gt;    Mac4Lin_modified_theme.tar.gz (The base archive of Mac OSX Leopard theme)&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://maketecheasier.com/a/Mac4Lin_Icons_modified/"&gt;&lt;span class="fullpost"&gt;Mac4Lin_Icons_modified.tar.gz&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://downloads.sourceforge.net/mac4lin/Mac4Lin_Wallpapers_Part3_v0.4.tar.gz?modtime=1198007584&amp;amp;big_mirror=0&amp;amp;filesize=12555519"&gt;&lt;span class="fullpost"&gt;Mac4Lin_Wallpapers_Part3_v0.4.tar.gz&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://gnome-look.org/CONTENT/content-files/66381-Elegant_glass.tgz"&gt;&lt;span class="fullpost"&gt;Avant Windows Manager Elegant Glass Theme (Theme for the dock)&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;span class="fullpost"&gt;&lt;br /&gt;Once you finish download the files, follow the steps below:&lt;br /&gt;&lt;h2&gt;1.    Goal: Install the base of Mac OSX Leopard theme&lt;/h2&gt;&lt;br /&gt;1.    I assume you downloaded the files to your home directory (/home/username). Extract Mac4Lin_modified_theme.tar.gz     in that directory.&lt;br /&gt;Go to System-&gt;Preferences-&gt;Appearance then you get this window:&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_Yr-eEscd9CM/SorJj52xXQI/AAAAAAAAABM/v7msCNMzEqk/s1600-h/1.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px; height: 286px;" src="http://1.bp.blogspot.com/_Yr-eEscd9CM/SorJj52xXQI/AAAAAAAAABM/v7msCNMzEqk/s320/1.jpg" alt="" id="BLOGGER_PHOTO_ID_5371327124255890690" border="0" /&gt;&lt;/a&gt;2.    Click Install and select the Mac4Lin GTK theme (/home/username/Mac4Lin_v0.4/GTK Metacity Theme/Mac4Lin_GTK_v0.4.tar.gz).&lt;br /&gt;Click Install again and select the Mac4Lin mouse cursor theme (/home/username/Mac4Lin_v0.4/GTK Cursor Theme/Mac4Lin_Cursors_v0.4.tar.gz). Select “Apply new themes” when prompted.&lt;br /&gt;Next, click Install again and select the Mac4Lin icon theme (/home/username/Mac4Lin_Icons_modified.tar.gz). When prompted, select “Apply new themes“.&lt;br /&gt;Don't worry if your window doesn't look like Mac yet.&lt;br /&gt;Click Customize and choose Mac4Lin_GTK_v0.4. Go to the Window border tab, choose Mac4Lin_GTK_v0.4. Click Close&lt;br /&gt;&lt;br /&gt;3.    Ups...may be you're now wondering why the buttons looks so large and ugly. This is because the new Ubuntu version doesn't automatically hide the button icon so you must manually set the setting.&lt;br /&gt;Press Alt+F2 buttons till you get this window:&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_Yr-eEscd9CM/SorJkWvl8wI/AAAAAAAAABU/kxw7GGjcE5s/s1600-h/2.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px; height: 129px;" src="http://3.bp.blogspot.com/_Yr-eEscd9CM/SorJkWvl8wI/AAAAAAAAABU/kxw7GGjcE5s/s320/2.jpg" alt="" id="BLOGGER_PHOTO_ID_5371327132010410754" border="0" /&gt;&lt;/a&gt;Type gconf-editor and click Run the you meet Gnome Configuration Editor window.&lt;br /&gt;On the left panel, go to desktop-&gt;gnome-&gt;interface. Then on the right panel clear the sign at  buttons_have_icons variable. This change will effect immediately. Your all buttons icon must have gone now.&lt;br /&gt;&lt;br /&gt;4.    Haha, don't be happy yet! Now we will change the window traffic light buttons to the left side. Still in  Gnome Configuration Editor window (if you already close this window, back to step 7 to open it again), on the left panel go to the /-&gt;apps-&gt;metacity-&gt;general. Then on the right panel double click button_layout till you get this window:&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_Yr-eEscd9CM/SorJkrCbgwI/AAAAAAAAABc/QZQ4NX0_cgY/s1600-h/3.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px; height: 179px;" src="http://2.bp.blogspot.com/_Yr-eEscd9CM/SorJkrCbgwI/AAAAAAAAABc/QZQ4NX0_cgY/s320/3.jpg" alt="" id="BLOGGER_PHOTO_ID_5371327137458127618" border="0" /&gt;&lt;/a&gt;Change the Value from menu:minimize, maximize, close to close, minimize, maximize:menu.&lt;br /&gt;&lt;br /&gt;5.    Now, look at your top menu bar panel, we will transform this thing. Remove all the icon and applications on the left side of the top panel. Right-click on the icon and select ‘Remove from panel‘. You will left with something like this:&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_Yr-eEscd9CM/SorJlFycN9I/AAAAAAAAABk/3OmhZqjNm8k/s1600-h/4.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px; height: 10px;" src="http://1.bp.blogspot.com/_Yr-eEscd9CM/SorJlFycN9I/AAAAAAAAABk/3OmhZqjNm8k/s320/4.jpg" alt="" id="BLOGGER_PHOTO_ID_5371327144638822354" border="0" /&gt;&lt;/a&gt;On the right of the top panel, remove the logout icon. Still on the right hand side of the top panel, right click and select ‘Add to panel‘. Scroll down the list and add ‘Search for files‘. This will add the spotlight icon to the panel.&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_Yr-eEscd9CM/SorJleDgvrI/AAAAAAAAABs/ZVcQG0gFwHU/s1600-h/5.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px; height: 298px;" src="http://2.bp.blogspot.com/_Yr-eEscd9CM/SorJleDgvrI/AAAAAAAAABs/ZVcQG0gFwHU/s320/5.jpg" alt="" id="BLOGGER_PHOTO_ID_5371327151152873138" border="0" /&gt;&lt;/a&gt;6.    On the extreme left, right-click and select ‘Add to panel‘. Scroll down the list and add ‘Menu Bar‘. This will add the apple icon on the left.&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_Yr-eEscd9CM/SorKKvZad3I/AAAAAAAAAB4/u49zP_Y3S68/s1600-h/6.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px; height: 297px;" src="http://1.bp.blogspot.com/_Yr-eEscd9CM/SorKKvZad3I/AAAAAAAAAB4/u49zP_Y3S68/s320/6.jpg" alt="" id="BLOGGER_PHOTO_ID_5371327791463298930" border="0" /&gt;&lt;/a&gt;Actually the next step is to install global menu as to display the menu bar for each application just like the real OSX, but this package is not compatible with Ubuntu Jaunty and I think this package that caused my previous Ubuntu stop working. So we won't install this package.&lt;br /&gt;&lt;h1&gt;2.    Goal: Install the Dock&lt;/h1&gt;&lt;br /&gt;At first, we will edit APT repository to point to http://ppa.launchpad.net/. Here are the steps:&lt;br /&gt;&lt;br /&gt;1.    Open Terminal (Applications-&gt;Accessories-&gt;Terminal)&lt;br /&gt;Type this command: &lt;code&gt;gksu gedit /etc/apt/sources.list&lt;/code&gt;&lt;br /&gt;Add the following lines to the end of files&lt;br /&gt;&lt;code&gt;deb http://ppa.launchpad.net/awn-testing/ubuntu jaunty main&lt;br /&gt;deb-src http://ppa.launchpad.net/awn-testing/ubuntu jaunty main&lt;/code&gt;&lt;br /&gt;&lt;br /&gt;2.    Next we will update our new repository and install the dock package. Save and close the file then in your terminal, type:&lt;br /&gt;&lt;code&gt;sudo apt-get update&lt;br /&gt;sudo apt-get install avant-window-navigator-trunk awn-manager-trunk awn-extras-applets-trunk&lt;/code&gt;&lt;br /&gt;&lt;br /&gt;3.    Once the installation is finished you can launch the AWN but before you do that, remove the bottom panel from the desktop first. Right click on the bottom panel and select “delete this panel”. Open AWN via Applications-&gt;Accessories-&gt;Avant Window Navigator. Once it is activated, you can simply drag and drop the applications into the dock.&lt;br /&gt;The dock is running now but we will do some tweak to mimic the real OSX Leopard dock. Go to System-&gt;Preferences-&gt;AWN manager so you got this window:&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_Yr-eEscd9CM/SorKLH9XkEI/AAAAAAAAACA/-nMjzxwyVSk/s1600-h/7.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px; height: 254px;" src="http://4.bp.blogspot.com/_Yr-eEscd9CM/SorKLH9XkEI/AAAAAAAAACA/-nMjzxwyVSk/s320/7.jpg" alt="" id="BLOGGER_PHOTO_ID_5371327798056554562" border="0" /&gt;&lt;/a&gt;4.    First, add the glass theme which you have downloaded. On the left panel, click on the Theme, On the right panel, click Add and navigate to the /home/username/Mac4Lin_v0.4 directory. Select the Elegant_glass.tgz file. Select the Elegant glass theme and click Apply. Next on the left, click on the Applet icon. On the right, scroll down to the Stacks Applet. Highlight it, then click Activate. This will add the Mac Leopard stack to your dock.&lt;br /&gt;&lt;h1&gt;3.    Goal: Install OSX Fonts.&lt;/h1&gt;&lt;br /&gt;Huff, let me guess. You're getting tired or bored with this tutorial. But it's not enough bro! Try to guess what will we do next. Hmm, I'm sure you can't guess it. Ok, do you realize that your fonts taste is still “Very Linux”? Aha...you got it now. Yes, we will change the font. So you must download the package first.&lt;br /&gt;&lt;br /&gt;1.    Open a terminal and type the following:&lt;br /&gt;&lt;code&gt;sudo apt-get install msttcorefonts&lt;/code&gt;&lt;br /&gt;This will Install the Microsoft core fonts.&lt;br /&gt;&lt;br /&gt;2.    Next, copy the OSX fonts to the system fonts directory&lt;br /&gt;&lt;code&gt;cd /usr/share/fonts&lt;br /&gt;sudo tar xvzf /home/username/Mac4Lin_v0.4/Fonts/OSX_Fonts.tar.gz&lt;/code&gt;&lt;br /&gt;3.    Configure the fonts&lt;br /&gt;&lt;code&gt;cd/&lt;br /&gt;sudo tar xvjpf /home/username/Mac4Lin_v0.4/Fonts/fontconfig.tbz -C /etc/fonts&lt;/code&gt;&lt;br /&gt;4.    Open the Appearance window (System-&gt;Preferences-&gt;Appearance) and select Fonts tab. Select the following fonts according to the image below:&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_Yr-eEscd9CM/SorKLkePwPI/AAAAAAAAACI/zt6vLiw16lI/s1600-h/8.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px; height: 308px;" src="http://2.bp.blogspot.com/_Yr-eEscd9CM/SorKLkePwPI/AAAAAAAAACI/zt6vLiw16lI/s320/8.jpg" alt="" id="BLOGGER_PHOTO_ID_5371327805710647538" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;h1&gt;4.    Goal: Transform the login screen&lt;/h1&gt;&lt;br /&gt;Easy bro...easy...it's almost done coz there are only 'sweet'-seventeen steps more to complete this transformation (haha).&lt;br /&gt;&lt;br /&gt;1.    Click on the Apple icon, go to System-&gt;Administration-&gt;Login Window. On the Local tab, click Add. Navigate to the path /filesystem/home/username/Mac4Lin_v0.4/GDM Theme and select the file Mac4Lin_GDM_v0.4.tar.gz. Check the box beside the newly installed theme to activate it.&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_Yr-eEscd9CM/SorKL7GeWkI/AAAAAAAAACQ/XBh8jl1SKO0/s1600-h/9.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 240px; height: 320px;" src="http://2.bp.blogspot.com/_Yr-eEscd9CM/SorKL7GeWkI/AAAAAAAAACQ/XBh8jl1SKO0/s320/9.jpg" alt="" id="BLOGGER_PHOTO_ID_5371327811784956482" border="0" /&gt;&lt;/a&gt;2.    Underneath, there is a color selection field, select it and key in the number E5E5E5 into the color code field. Click Ok. Log out. You should see the login screen as the picture below:&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_Yr-eEscd9CM/SorKMPOlhUI/AAAAAAAAACY/j7E_JIyyYeQ/s1600-h/10.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px; height: 176px;" src="http://2.bp.blogspot.com/_Yr-eEscd9CM/SorKMPOlhUI/AAAAAAAAACY/j7E_JIyyYeQ/s320/10.jpg" alt="" id="BLOGGER_PHOTO_ID_5371327817187689794" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;h1&gt;5.    Goal: Configure Usplash Screen&lt;/h1&gt;&lt;br /&gt;1.    Usplash is the screen that you see when your computer is booting up. We are going to change it to show the white apple screen. Type in your terminal: &lt;code&gt;sudo apt-get install startupmanager&lt;/code&gt;&lt;br /&gt;Go to System-&gt;Administration-&gt;Start-Up Manager Go to Appearance tab.&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_Yr-eEscd9CM/SorKtOeNZvI/AAAAAAAAACk/rTtkj0Ir1FY/s1600-h/11.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 297px; height: 320px;" src="http://2.bp.blogspot.com/_Yr-eEscd9CM/SorKtOeNZvI/AAAAAAAAACk/rTtkj0Ir1FY/s320/11.jpg" alt="" id="BLOGGER_PHOTO_ID_5371328383920465650" border="0" /&gt;&lt;/a&gt;Click on the ‘Manage bootloader theme‘. Click Add and navigate to the file /filesystem/home/username/Mac4Lin_v0.4/GRUB Splash/appleblack.xpm.gz. Check the box “Use background image for bootloader menu” and select ‘appleblack”.&lt;br /&gt;Next, click “Manage usplash theme”. Click Add and add the file /filesystem/home/username/Mac4Lin_v0.4/USplash Theme/osx-splash.so. Click OK. Select osx-splash from the dropdown box.&lt;br /&gt;Now reboot. You should see the following images:&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_Yr-eEscd9CM/SorKtnYcpwI/AAAAAAAAACs/s0VRB_PG9Ik/s1600-h/12.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px; height: 241px;" src="http://3.bp.blogspot.com/_Yr-eEscd9CM/SorKtnYcpwI/AAAAAAAAACs/s0VRB_PG9Ik/s320/12.jpg" alt="" id="BLOGGER_PHOTO_ID_5371328390607185666" border="0" /&gt;&lt;/a&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_Yr-eEscd9CM/SorKt0RzyPI/AAAAAAAAAC0/I9Mn8it5vsg/s1600-h/13.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px; height: 241px;" src="http://3.bp.blogspot.com/_Yr-eEscd9CM/SorKt0RzyPI/AAAAAAAAAC0/I9Mn8it5vsg/s320/13.jpg" alt="" id="BLOGGER_PHOTO_ID_5371328394069002482" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;2.    Cool hah??&lt;br /&gt;&lt;h1&gt;6.    Goal: Creating Dashboard effect.&lt;/h1&gt;&lt;br /&gt;Do you like desktop effects? If you do, then you must be happy to hear this.  We will use a combination of  Screenlets and Compiz widget plugin to achieve the dashboard effect.&lt;br /&gt;&lt;br /&gt;1.     Install Screenlets &lt;code&gt;sudo apt-get install screenlets compizconfig-settings-manager&lt;/code&gt;&lt;br /&gt;Go to System-&gt;Preferences-&gt;CompizConfig Settings Manager.&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_Yr-eEscd9CM/SorKuPBYDrI/AAAAAAAAAC8/rC4ZfD8aif8/s1600-h/14.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px; height: 197px;" src="http://1.bp.blogspot.com/_Yr-eEscd9CM/SorKuPBYDrI/AAAAAAAAAC8/rC4ZfD8aif8/s320/14.jpg" alt="" id="BLOGGER_PHOTO_ID_5371328401247833778" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;On the Left, click on Desktop. On the right, put a check beside ‘Widget layer’&lt;br /&gt;&lt;br /&gt;2.    Go to Accessories-&gt;Screenlets. Activate the widgets that you want to display. Right click on the widget and select ‘Properties’. Go to Options tab and select ‘Treat as widget’. Do this for all the widgets that you have activated.&lt;br /&gt;&lt;br /&gt;3.    You can now see your dashboard in action by pressing F9.&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_Yr-eEscd9CM/SorKujrcx-I/AAAAAAAAADE/anIOW10wCqc/s1600-h/15.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px; height: 200px;" src="http://3.bp.blogspot.com/_Yr-eEscd9CM/SorKujrcx-I/AAAAAAAAADE/anIOW10wCqc/s320/15.jpg" alt="" id="BLOGGER_PHOTO_ID_5371328406793013218" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;h1&gt;7.    Done.&lt;/h1&gt; You have completed the transformation of your Ubuntu desktop to Mac OSX Leopard. Wait...wait...wait, don't forget to change you wallpaper. Using Archive manager, extract the Mac4Lin_Wallpapers_Part3_v0.4.tar.gz. Go to System-&gt;Preferences-&gt;Appearance. On the top, go to the Background tab. Click Add and select the Leopard wallpaper. (/home/username/Wallpapers/Leopard.jpg). Click Close to terminate the Appearance window.&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_Yr-eEscd9CM/SorK7kubdrI/AAAAAAAAADM/Tc1_hEDY5bk/s1600-h/16.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px; height: 201px;" src="http://2.bp.blogspot.com/_Yr-eEscd9CM/SorK7kubdrI/AAAAAAAAADM/Tc1_hEDY5bk/s320/16.jpg" alt="" id="BLOGGER_PHOTO_ID_5371328630412244658" border="0" /&gt;&lt;/a&gt;Don't forget to leave a comment so I know that this post is useful to you.&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2231382102347830254-1350677889700142254?l=ecofe.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ecofe.blogspot.com/feeds/1350677889700142254/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2231382102347830254&amp;postID=1350677889700142254&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2231382102347830254/posts/default/1350677889700142254'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2231382102347830254/posts/default/1350677889700142254'/><link rel='alternate' type='text/html' href='http://ecofe.blogspot.com/2009/08/transform-ubuntu-jaunty-to-mac-osx.html' title='Transform Ubuntu Jaunty to Mac OSX Leopard'/><author><name>CoffeeHunter</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_Yr-eEscd9CM/SorK7kubdrI/AAAAAAAAADM/Tc1_hEDY5bk/s72-c/16.jpg' height='72' width='72'/><thr:total>0</thr:total></entry></feed>
