<?xml version="1.0" encoding="UTF-8" standalone="no"?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><rss xmlns:itunes="http://www.itunes.com/dtds/podcast-1.0.dtd" version="2.0"><channel><title>Tech Bits</title><description></description><managingEditor>noreply@blogger.com (Swaminathan Mathivanan)</managingEditor><pubDate>Tue, 10 Sep 2024 15:51:36 -0700</pubDate><generator>Blogger http://www.blogger.com</generator><openSearch:totalResults xmlns:openSearch="http://a9.com/-/spec/opensearchrss/1.0/">8</openSearch:totalResults><openSearch:startIndex xmlns:openSearch="http://a9.com/-/spec/opensearchrss/1.0/">1</openSearch:startIndex><openSearch:itemsPerPage xmlns:openSearch="http://a9.com/-/spec/opensearchrss/1.0/">25</openSearch:itemsPerPage><link>http://techbitss.blogspot.com/</link><language>en-us</language><itunes:explicit>no</itunes:explicit><itunes:subtitle/><itunes:owner><itunes:email>noreply@blogger.com</itunes:email></itunes:owner><item><title>To Burn Fat, You Could Exercise … or Shiver</title><link>http://techbitss.blogspot.com/2014/02/to-burn-fat-you-could-exercise-or-shiver.html</link><author>noreply@blogger.com (Swaminathan Mathivanan)</author><pubDate>Wed, 12 Feb 2014 06:28:00 -0800</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-863373947540145913.post-2500057757865520786</guid><description>&lt;a href="http://news.nationalgeographic.com/news/2014/02/140211-shivering-cold-exercise-brown-fat-white-fat-irisin-metabolism-weight-loss/"&gt;To Burn Fat, You Could Exercise … or Shiver&lt;/a&gt;</description><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></item><item><title>Computer Technology in 2011 - Preview</title><link>http://techbitss.blogspot.com/2011/03/computer-technology-in-2011-preview.html</link><author>noreply@blogger.com (Swaminathan Mathivanan)</author><pubDate>Sun, 27 Mar 2011 10:22:00 -0700</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-863373947540145913.post-468098850761957105</guid><description>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgWk2otgyfdqoDfZWK9_45eH2NdhyCcPt54n_SwO9uo9l0_8CutQIGn9qMH9zLTirr3BWXWSQgU-ixtt6gfXvi8fn7S3TPrmYffkBG9NRpXqP1NFE7Qb9kZID8yVWXgpBwcTfaxwT6WieDW/s1600/MPC1310p032_web.jpg"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 320px; height: 121px;" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgWk2otgyfdqoDfZWK9_45eH2NdhyCcPt54n_SwO9uo9l0_8CutQIGn9qMH9zLTirr3BWXWSQgU-ixtt6gfXvi8fn7S3TPrmYffkBG9NRpXqP1NFE7Qb9kZID8yVWXgpBwcTfaxwT6WieDW/s320/MPC1310p032_web.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5588812415360587154" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Not surprisingly, the PC ethos we all embrace—nonlinear, flexible, interconnected, and constantly evolving—lies at the center of the crossover. We mean that literally and figuratively. Desktops. Laptops. Tablets. Smartphones. Accelerated Processing Units. 60GHz networks. Personal servers. These days, each of us is essentially walking around with a tiny supercomputer, Internet, and cloud-computing scheme in our hands. To which we say, “Bring it on.” We’ve been waiting for this moment for years.&lt;br /&gt;&lt;br /&gt;As always, the near future of PC technology is coalescing around three key axes: performance, power, and interconnectivity. Back in the day, you could sacrifice one or maybe even two of these criteria. Not anymore. Over the next 10 pages, we’re going to explain what, why, when, where, and how&lt;br /&gt;CPUs &lt;br /&gt;2011 will bring a true battle royal for CPU supremacy. Here's an early scouting report&lt;br /&gt;&lt;br /&gt;Yeah, we know: Everyone is hyper-excited about netbooks, tablets, smartphones, phablets, and blah blah blah. We couldn’t care less about that noise, because in 2011, we’re going to see an epic battle between AMD’s new CPU, code-named Bulldozer, and Intel’s Sandy Bridge and Sandy Bridge E procs.&lt;br /&gt;&lt;br /&gt;We know that Bulldozer will be a significant update for AMD and is considered the company’s first all-out “new” chip since the original Athlon was introduced. The major change is the adoption of a new dual-chip “module” approach. Typical CPU cores are stand-alone affairs, isolated islands. If core 1 is busy on a single-threaded application and core 2 is twiddling its thumbs, core 1 won’t be able to access core 2’s resources. With Bulldozer’s dual-core modules, CPU core resources that aren’t being utilized can be thrown at the single-threaded application core 1 is working on, thereby increasing performance.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgXIYycQ29BnKhIT_k2ZYf_13t-BOZRvhLfQ98T6AhkpHMD3_Tcy13yl0zrx9E851_ckPNlMsM6ms1eDpYRA_wVVe0auqZBBIvloTNivAx0tXGfxxCGFka-obiM5hFRgi28s-t3zAkqjRX2/s1600/MPC1310p033_web.jpg"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 400px; height: 305px;" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgXIYycQ29BnKhIT_k2ZYf_13t-BOZRvhLfQ98T6AhkpHMD3_Tcy13yl0zrx9E851_ckPNlMsM6ms1eDpYRA_wVVe0auqZBBIvloTNivAx0tXGfxxCGFka-obiM5hFRgi28s-t3zAkqjRX2/s400/MPC1310p033_web.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5588812806411463378" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Courtesy: http://electronikmade.blogspot.com</description><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" height="72" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgWk2otgyfdqoDfZWK9_45eH2NdhyCcPt54n_SwO9uo9l0_8CutQIGn9qMH9zLTirr3BWXWSQgU-ixtt6gfXvi8fn7S3TPrmYffkBG9NRpXqP1NFE7Qb9kZID8yVWXgpBwcTfaxwT6WieDW/s72-c/MPC1310p032_web.jpg" width="72"/><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></item><item><title>Enabling mod_cgi, python in lighttpd</title><link>http://techbitss.blogspot.com/2010/06/enabling-modcgi-python-in-lighttpd.html</link><category>lighttpd</category><category>mod_cgi</category><category>python</category><author>noreply@blogger.com (Swaminathan Mathivanan)</author><pubDate>Tue, 1 Jun 2010 00:12:00 -0700</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-863373947540145913.post-3129476705127825212</guid><description>Hi Folks,&lt;br /&gt;&lt;br /&gt;Enabling mod_cgi,python in lighttpd &lt;br /&gt;&lt;span style="font-weight:bold;"&gt;&lt;br /&gt;Create cgi-bin directory in /var/www&lt;/span&gt;&lt;br /&gt;mkdir -p cgi-bin&lt;br /&gt;chown www-data:www-data cgi-bin/&lt;br /&gt;chmod 755 test.py&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;&lt;br /&gt;open lighttpd.conf&lt;/span&gt;&lt;br /&gt;vi /etc/lighttpd/lighttpd.conf&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;append .py extension and save the file&lt;/span&gt;&lt;br /&gt;static-file.exclude-extensions = ( ".php", ".pl", ".fcgi", ".py" )&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;&lt;br /&gt;open 10-cgi.conf&lt;/span&gt;&lt;br /&gt;vi /etc/lighttpd/conf-enabled/10-cgi.conf&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;enable mod_cgi&lt;/span&gt;&lt;br /&gt;server.modules  += ( "mod_cgi" )&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;&lt;br /&gt;Change the alias.url for your cgi-bin directory&lt;/span&gt;&lt;br /&gt;$HTTP["remoteip"] =~ "127.0.0.1" {&lt;br /&gt;        alias.url += ( "/cgi-bin/" =&gt; "/var/www/cgi-bin/" )&lt;br /&gt;        $HTTP["url"] =~ "^/cgi-bin/" {&lt;br /&gt;                cgi.assign = ( "" =&gt; "" )&lt;br /&gt;        }&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;$HTTP["url"] =~ "^/cgi-bin/" {&lt;br /&gt;        cgi.assign = ( "" =&gt; "" )&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;## Warning this represents a security risk, as it allow to execute any file&lt;br /&gt;## with a .pl/.php/.py even outside of /usr/lib/cgi-bin.&lt;br /&gt;#&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Uncomment the .py entry and save the file&lt;/span&gt;&lt;br /&gt;cgi.assign      = (&lt;br /&gt;#       ".pl"  =&gt; "/usr/bin/perl",&lt;br /&gt;#       ".php" =&gt; "/usr/bin/php-cgi",&lt;br /&gt;        ".py"  =&gt; "/usr/bin/python",&lt;br /&gt;)&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Restart lighttpd&lt;/span&gt;&lt;br /&gt;/etc/init.d/lighttpd stop&lt;br /&gt;/etc/init.d/lighttpd start</description><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></item><item><title>How to take an ISO from linux machine</title><link>http://techbitss.blogspot.com/2010/02/how-to-take-iso-from-linux-machine.html</link><category>iso</category><category>iso image</category><category>swaminathan</category><category>ubuntu iso</category><author>noreply@blogger.com (Swaminathan Mathivanan)</author><pubDate>Sat, 20 Feb 2010 06:28:00 -0800</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-863373947540145913.post-7284124394703365728</guid><description>Hi Folks,&lt;br /&gt;&lt;br /&gt;If you want to take an iso of the ubuntu/kubuntu machine, Type command in terminal as a root user&lt;br /&gt;&lt;br /&gt;$&gt; remastersys clean&lt;br /&gt;&lt;br /&gt;$&gt; remastersys backup isoname.iso&lt;br /&gt;&lt;br /&gt;It will take some time and the ISO image automatically saved into you /home/remastersys/remastersys folder itself.</description><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></item><item><title>Facebook App Creation</title><link>http://techbitss.blogspot.com/2008/06/facebook-app-creation.html</link><author>noreply@blogger.com (Swaminathan Mathivanan)</author><pubDate>Tue, 3 Jun 2008 02:25:00 -0700</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-863373947540145913.post-3527779321464318018</guid><description>&lt;div class="content_main"&gt;&lt;div class="intro"&gt;&lt;h1&gt;Step-by-step Guide to Creating an Application&lt;/h1&gt;&lt;/div&gt;
&lt;br /&gt;&lt;a name="contents"/&gt;
&lt;br /&gt;&lt;h2&gt;Contents&lt;/h2&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;ol&gt;
&lt;br /&gt;&lt;li&gt;&lt;a href="#intro"&gt;Introduction&lt;/a&gt;
&lt;br /&gt;&lt;/li&gt;
&lt;br /&gt;&lt;li&gt;&lt;a href="#hello"&gt;Integrating Hello World&lt;/a&gt;
&lt;br /&gt;&lt;/li&gt;
&lt;br /&gt;&lt;li&gt;&lt;a href="#pushing"&gt;Pushing FBML to the profile box&lt;/a&gt;
&lt;br /&gt;&lt;/li&gt;
&lt;br /&gt;&lt;li&gt;&lt;a href="#redirect"&gt;Using mock-AJAX in the profile box&lt;/a&gt;
&lt;br /&gt;&lt;/li&gt;
&lt;br /&gt;&lt;li&gt;&lt;a href="#counter"&gt;Using MySQL to create a counter&lt;/a&gt;
&lt;br /&gt;&lt;/li&gt;
&lt;br /&gt;&lt;li&gt;&lt;a href="#together"&gt;Putting the examples together&lt;/a&gt;
&lt;br /&gt;&lt;/li&gt;
&lt;br /&gt;&lt;li&gt;&lt;a href="#downloads"&gt;Downloads&lt;/a&gt;
&lt;br /&gt;&lt;/li&gt;
&lt;br /&gt;&lt;/ol&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;a name="intro"/&gt;
&lt;br /&gt;&lt;h2&gt;Introduction&lt;/h2&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;p&gt;This tutorial describes how we created a platform application called 'tutorialapp' that you can use as a template when creating your own platform app. The tutorial assumes that you have access to a web server running php5.
&lt;br /&gt;&lt;/p&gt;
&lt;br /&gt;&lt;p&gt;The final version of 'tutorialapp' is hosted at &lt;a href="http://tperry256.dreamhost.com/f8/tutorialapp/"&gt;http://tperry256.dreamhost.com/f8/tutorialapp/&lt;/a&gt;.  If you follow this link it will ask you to login to Facebook and add the 'tutorialapp' application.  You can get access to a server like this from a variety of hosting companies for just a few dollars a month.
&lt;br /&gt;&lt;/p&gt;
&lt;br /&gt;&lt;p&gt;When you create your own app, you will using a different &lt;span class="highlight"&gt;application name&lt;/span&gt; and a different &lt;span class="highlight"&gt;server&lt;/span&gt;.  We have highlighted &lt;span class="highlight"&gt;these things that will be different for your application&lt;/span&gt;.
&lt;br /&gt;&lt;/p&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;a name="hello"/&gt;
&lt;br /&gt;&lt;h2&gt;Integrating Hello World&lt;/h2&gt;
&lt;br /&gt;&lt;ol&gt;
&lt;br /&gt;&lt;li&gt;Go to &lt;a href="http://developers.facebook.com/"&gt;http://developers.facebook.com/&lt;/a&gt;
&lt;br /&gt;&lt;/li&gt;
&lt;br /&gt;&lt;li&gt;Click on &lt;span class="itemtitle"&gt;'Get Started'&lt;/span&gt;
&lt;br /&gt;&lt;/li&gt;
&lt;br /&gt;&lt;li&gt;Click on &lt;span class="itemtitle"&gt;'Add Facebook Developer Application'&lt;/span&gt;
&lt;br /&gt;&lt;/li&gt;
&lt;br /&gt;&lt;li&gt;A link to &lt;span class="itemtitle"&gt;'Developer'&lt;/span&gt; should appear in the left nav on Facebook now.  Go to the Developer App.
&lt;br /&gt;&lt;/li&gt;
&lt;br /&gt;&lt;li&gt;Click on the button that says 'Setup New Application'
&lt;br /&gt;&lt;/li&gt;
&lt;br /&gt;&lt;li&gt;Here are the steps for filling out the form:
&lt;br /&gt;&lt;/li&gt;
&lt;br /&gt;&lt;ol&gt;
&lt;br /&gt;&lt;li&gt;&lt;span class="itemtitle"&gt;Application Name&lt;/span&gt;: for our app, we put '&lt;span class="highlight"&gt;Tutorial Application&lt;/span&gt;' - you should put in a different name.
&lt;br /&gt;&lt;/li&gt;
&lt;br /&gt;&lt;li&gt;Check the &lt;span class="itemtitle"&gt;Terms of service&lt;/span&gt; box.
&lt;br /&gt;&lt;/li&gt;
&lt;br /&gt;&lt;li&gt;Click on the &lt;span class="itemtitle"&gt;Optional Fields&lt;/span&gt; link - this will bring up more options.
&lt;br /&gt;&lt;/li&gt;
&lt;br /&gt;&lt;li&gt;&lt;span class="itemtitle"&gt;Support E-mail&lt;/span&gt;: your Facebook contact email may be filled in automatically, but you might not want to give out your personal email to everyone who adds your app!  You do have to put a valid email address that you can check, however.
&lt;br /&gt;&lt;/li&gt;
&lt;br /&gt;&lt;li&gt;&lt;span class="itemtitle"&gt;Callback Url&lt;/span&gt;: for our app, we put '&lt;span class="highlight"&gt;http://tperry256.dreamhost.com/f8/tutorialapp/&lt;/span&gt;' - you should put something DIFFERENT - in particular, you should put the url of the directory on your server where you will create your application.
&lt;br /&gt;&lt;/li&gt;
&lt;br /&gt;&lt;li&gt;&lt;span class="itemtitle"&gt;Canvas Page URL: http://apps.facebook.com/&lt;/span&gt;: for our app, we put '&lt;span class="highlight"&gt;tutorialapp&lt;/span&gt;' - you must put in a different name.
&lt;br /&gt;&lt;/li&gt;
&lt;br /&gt;&lt;li&gt;&lt;span class="itemtitle"&gt;Use FBML&lt;/span&gt;: keep this setting.
&lt;br /&gt;&lt;/li&gt;
&lt;br /&gt;&lt;li&gt;&lt;span class="itemtitle"&gt;Application Type&lt;/span&gt;: leave this set to 'Website'.
&lt;br /&gt;&lt;/li&gt;
&lt;br /&gt;&lt;li&gt;&lt;span class="itemtitle"&gt;Can your application be added to Facebook&lt;/span&gt;: set to 'yes' - this will bring up more options.
&lt;br /&gt;&lt;/li&gt;
&lt;br /&gt;&lt;li&gt;&lt;span class="itemtitle"&gt;TOS URL&lt;/span&gt;: you can leave this blank.
&lt;br /&gt;&lt;/li&gt;
&lt;br /&gt;&lt;li&gt;&lt;span class="itemtitle"&gt;Post-Add Url&lt;/span&gt;: for our app, we put '&lt;span class="highlight"&gt;http://apps.facebook.com/tutorialapp/&lt;/span&gt;' -- you should put something DIFFERENT - in particular, you should put your full canvas page url.
&lt;br /&gt;&lt;/li&gt;
&lt;br /&gt;&lt;li&gt;&lt;span class="itemtitle"&gt;Default FBML&lt;/span&gt;: type in the text 'hello'.
&lt;br /&gt;&lt;/li&gt;
&lt;br /&gt;&lt;li&gt;Leave everything else under &lt;span class="itemtitle"&gt;Installation Options&lt;/span&gt; blank.
&lt;br /&gt;&lt;/li&gt;
&lt;br /&gt;&lt;li&gt;&lt;span class="itemtitle"&gt;Side Nav Url&lt;/span&gt;: for our app, we put '&lt;span class="highlight"&gt;http://apps.facebook.com/tutorialapp/&lt;/span&gt;' -- you should put something DIFFERENT - in particular, you should put your canvas page url here as well.
&lt;br /&gt;&lt;/li&gt;
&lt;br /&gt;&lt;li&gt;Leave everything else under &lt;span class="itemtitle"&gt;Integration Points&lt;/span&gt; blank.
&lt;br /&gt;&lt;/li&gt;
&lt;br /&gt;&lt;/ol&gt;
&lt;br /&gt;&lt;li&gt;Click on the &lt;span class="itemtitle"&gt;'Submit'&lt;/span&gt; button.
&lt;br /&gt;&lt;/li&gt;
&lt;br /&gt;&lt;li&gt;Go the the &lt;span class="itemtitle"&gt;'My Applications'&lt;/span&gt; page and check that your application was created. There are a couple ways to get here depending on where you are in the Developer application.
&lt;br /&gt;&lt;/li&gt;
&lt;br /&gt;&lt;li&gt;Copy the latest version of the php5 client library into your application's directory on the server.
&lt;br /&gt;&lt;/li&gt;
&lt;br /&gt;&lt;li&gt;There are some links to the client library in the &lt;a href="#downloads"&gt;downloads section&lt;/a&gt;. If you are using a unix shell and are currently in that directory, these commands will work:
&lt;br /&gt;&lt;/li&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;pre class="code"&gt;wget http://developers.facebook.com/clientlibs/facebook-platform.tar.gz
&lt;br /&gt;tar zxvf facebook-platform.tar.gz
&lt;br /&gt;cp facebook-platform/client/facebook.php .
&lt;br /&gt;cp facebook-platform/client/facebookapi_php5_restlib.php .
&lt;br /&gt;rm -rf facebook-platform.tar.gz facebook-platform
&lt;br /&gt;&lt;/pre&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;li&gt;Create an &lt;span class="filename"&gt;'appinclude.php'&lt;/span&gt; file that you will include at the top of all the php pages in your app.  Paste this code into the file:
&lt;br /&gt;&lt;/li&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;pre class="code"&gt;&lt;?php
&lt;br /&gt;require_once 'facebook.php';
&lt;br /&gt;
&lt;br /&gt;$appapikey = '&lt;span class="highlight"&gt;[your api_key]&lt;/span&gt;';
&lt;br /&gt;$appsecret = '&lt;span class="highlight"&gt;[your secret]&lt;/span&gt;';
&lt;br /&gt;$facebook = new Facebook($appapikey, $appsecret);
&lt;br /&gt;$user = $facebook-&gt;require_login();
&lt;br /&gt;
&lt;br /&gt;//[todo: change the following url to your callback url]
&lt;br /&gt;$appcallbackurl = '&lt;span class="highlight"&gt;http://tperry256.dreamhost.com/f8/tutorialapp/&lt;/span&gt;';
&lt;br /&gt;
&lt;br /&gt;//catch the exception that gets thrown if the cookie has an invalid session_key in it
&lt;br /&gt;try {
&lt;br /&gt;  if (!$facebook-&gt;api_client-&gt;users_isAppAdded()) {
&lt;br /&gt;    $facebook-&gt;redirect($facebook-&gt;get_add_url());
&lt;br /&gt;  }
&lt;br /&gt;} catch (Exception $ex) {
&lt;br /&gt;  //this will clear cookies for your application and redirect them to a login prompt
&lt;br /&gt;  $facebook-&gt;set_user(null, null);
&lt;br /&gt;  $facebook-&gt;redirect($appcallbackurl);
&lt;br /&gt;}
&lt;br /&gt;&lt;/pre&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;li&gt;Replace '&lt;span class="highlight"&gt;[your app_key]&lt;/span&gt;' and '&lt;span class="highlight"&gt;[your secret]&lt;/span&gt;' with the &lt;span class="filename"&gt;'app_key'&lt;/span&gt; and &lt;span class="filename"&gt;'secret'&lt;/span&gt; for your application that are shown on the &lt;span class="itemtitle"&gt;'My Applications'&lt;/span&gt; page of the Developer app.  You should also replace &lt;span class="highlight"&gt;our callback url&lt;/span&gt; with your callback url.
&lt;br /&gt;&lt;/li&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;li&gt;Create a &lt;span class="filename"&gt;'index.php'&lt;/span&gt; file which will be your application's home page.  Paste this code into the file:
&lt;br /&gt;&lt;/li&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;pre class="code"&gt;&lt;?php
&lt;br /&gt;require_once 'appinclude.php';
&lt;br /&gt;
&lt;br /&gt;echo "&lt;p&gt;hello $user&lt;/p&gt;";
&lt;br /&gt;&lt;/pre&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;li&gt;Type YOUR APP's callback url into your browser's address bar.  You could also type in your canvas page url because going here will also cause your &lt;span class="filename"&gt;'index.php'&lt;/span&gt; to run.  Either way, the only way to get your application added at this time is to type a url into your browser's address bar.
&lt;br /&gt;&lt;/li&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;p&gt;
&lt;br /&gt;here is OUR APP's callback url: &lt;a href="http://tperry256.dreamhost.com/f8/tutorialapp/"&gt;&lt;span class="highlight"&gt;http://tperry256.dreamhost.com/f8/tutorialapp/&lt;/span&gt;&lt;/a&gt;
&lt;br /&gt;&lt;/p&gt;
&lt;br /&gt;&lt;p&gt;
&lt;br /&gt;here is OUR APP's canvas page url:&lt;a href="http://apps.facebook.com/tutorialapp/"&gt;&lt;span class="highlight"&gt;http://apps.facebook.com/tutorialapp/&lt;/span&gt;&lt;/a&gt;
&lt;br /&gt;&lt;/p&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;li&gt;Click &lt;span class="itemtitle"&gt;'I agree'&lt;/span&gt; to accept the terms of service for your application and then click the button to &lt;span class="itemtitle"&gt;'Add [your application name]'&lt;/span&gt; to add it.
&lt;br /&gt;&lt;/li&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;li&gt;You should then be redirected to a canvas page which contains the output of your &lt;span class="filename"&gt;'index.php'&lt;/span&gt; file.
&lt;br /&gt;&lt;/li&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;li&gt;Go to your profile and look for a profile box for your application which contains the &lt;span class="filename"&gt;'hello'&lt;/span&gt; -- this is the default FBML that you set before.
&lt;br /&gt;&lt;/li&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;li&gt;Finally look for a left-nav link that will take you back to your canvas page.
&lt;br /&gt;&lt;/li&gt;
&lt;br /&gt;&lt;/ol&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;a name="pushing"/&gt;
&lt;br /&gt;&lt;h2&gt;Pushing FBML to the profile box&lt;/h2&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;ol&gt;
&lt;br /&gt;&lt;li&gt;Here is an extended version of &lt;span class="filename"&gt;'index.php'&lt;/span&gt;.  When the user submits the form, this code puts the text they submitted in the profile box.
&lt;br /&gt;&lt;/li&gt;
&lt;br /&gt;&lt;li&gt;Note that submitting the empty string causes the profile box to disappear!
&lt;br /&gt;&lt;/li&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;pre class="code"&gt;&lt;?php
&lt;br /&gt;require_once 'appinclude.php';
&lt;br /&gt;
&lt;br /&gt;echo "&lt;p&gt;hello $user&lt;/p&gt;";
&lt;br /&gt;
&lt;br /&gt;if (isset($_REQUEST['profiletext'])) {
&lt;br /&gt;  $facebook-&gt;api_client-&gt;profile_setFBML($_REQUEST['profiletext'], $user);
&lt;br /&gt;  $facebook-&gt;redirect($facebook-&gt;get_facebook_url() . '/profile.php');
&lt;br /&gt;}
&lt;br /&gt;
&lt;br /&gt;echo '&lt;form action="" method="get"&gt;';
&lt;br /&gt;echo '&lt;input name="profiletext" type="text" size="30" value=""&gt;&lt;br&gt;';
&lt;br /&gt;echo '&lt;input name="submit" type="submit" value="Display text on profile"&gt;';
&lt;br /&gt;echo '&lt;/form&gt;';
&lt;br /&gt;&lt;/pre&gt;
&lt;br /&gt;&lt;/ol&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;a name="redirect"/&gt;
&lt;br /&gt;&lt;h2&gt;Using mock-AJAX in the profile box&lt;/h2&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;ol&gt;
&lt;br /&gt;&lt;li&gt;This code pushes a form into the profile box that uses the mock-AJAX feature of FBML to give the illusion that you can dynamically update the content of the profile box.
&lt;br /&gt;&lt;/li&gt;
&lt;br /&gt;&lt;li&gt;Notice how the if statement at the very top of this &lt;span class="filename"&gt;'index.php'&lt;/span&gt; file handles the mock-AJAX call.
&lt;br /&gt;&lt;/li&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;pre class="code"&gt;&lt;?php
&lt;br /&gt;if (isset($_REQUEST['mockfbmltext'])) {
&lt;br /&gt;  echo $_REQUEST['mockfbmltext'];
&lt;br /&gt;  exit;
&lt;br /&gt;}
&lt;br /&gt;
&lt;br /&gt;require_once 'appinclude.php';
&lt;br /&gt;
&lt;br /&gt;echo "&lt;p&gt;hello $user&lt;/p&gt;";
&lt;br /&gt;
&lt;br /&gt;$fbml = &lt;&lt;&lt;EndHereDoc
&lt;br /&gt;&lt;fb:subtitle&gt;This is the subtitle&lt;/fb:subtitle&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;form&gt;
&lt;br /&gt;&lt;input name="mockfbmltext" type="text" size="30"&gt;
&lt;br /&gt;&lt;br /&gt;
&lt;br /&gt;&lt;input type="submit"
&lt;br /&gt;  clickrewriteurl="$appcallbackurl"
&lt;br /&gt;  clickrewriteid="preview" value="Draw text below"
&lt;br /&gt;/&gt;
&lt;br /&gt;&lt;br /&gt;
&lt;br /&gt;&lt;div id="preview" style="border-style: solid; border-color: black;
&lt;br /&gt;  border-width: 1px; padding: 5px;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;br /&gt;&lt;/form&gt;
&lt;br /&gt;EndHereDoc;
&lt;br /&gt;
&lt;br /&gt;$facebook-&gt;api_client-&gt;profile_setFBML($fbml, $user);
&lt;br /&gt;
&lt;br /&gt;echo "&lt;p&gt;the following form was added to the profile box:&lt;/p&gt;";
&lt;br /&gt;
&lt;br /&gt;echo $fbml;
&lt;br /&gt;&lt;/pre&gt;
&lt;br /&gt;&lt;/ol&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;a name="counter"/&gt;
&lt;br /&gt;&lt;h2&gt;Using MySQL to create a counter&lt;/h2&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;ol&gt;
&lt;br /&gt;&lt;li&gt;This example assumes that you have a way to create a mysql database which the php scripts on your server can connect to.&lt;/li&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;li&gt;If you don't already have a database, create one.
&lt;br /&gt;&lt;/li&gt;
&lt;br /&gt;&lt;li&gt;Create a table in the database called &lt;span class="filename"&gt;'counter'&lt;/span&gt; which has a single integer column called &lt;span class="filename"&gt;'count'&lt;/span&gt;.
&lt;br /&gt;&lt;/li&gt;
&lt;br /&gt;&lt;li&gt;Create a new file called &lt;span class="filename"&gt;'dbappinclude.php'&lt;/span&gt; and paste the following code into the file.  Don't forget to replace the items in brackets with your actual db host, user, pass, and name.
&lt;br /&gt;&lt;/li&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;pre class="code"&gt;&lt;?php
&lt;br /&gt;require_once 'appinclude.php';
&lt;br /&gt;
&lt;br /&gt;$dbhost = '&lt;span class="highlight"&gt;[your db host]&lt;/span&gt;';
&lt;br /&gt;$dbuser = '&lt;span class="highlight"&gt;[your db user]&lt;/span&gt;';
&lt;br /&gt;$dbpass = '&lt;span class="highlight"&gt;[your db pass]&lt;/span&gt;';
&lt;br /&gt;$dbname = '&lt;span class="highlight"&gt;[your db name]&lt;/span&gt;';
&lt;br /&gt;
&lt;br /&gt;$conn = mysql_connect($dbhost, $dbuser, $dbpass);
&lt;br /&gt;mysql_select_db($dbname, $conn);
&lt;br /&gt;
&lt;br /&gt;function query($q) {
&lt;br /&gt;  global $conn;
&lt;br /&gt;  $result = mysql_query($q, $conn);
&lt;br /&gt;  if (!$result) {
&lt;br /&gt;    die("Invalid query -- $q -- " . mysql_error());
&lt;br /&gt;  }
&lt;br /&gt;  return $result;
&lt;br /&gt;}
&lt;br /&gt;&lt;/pre&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;li&gt;Now try out this version of &lt;span class="filename"&gt;'index.php'&lt;/span&gt;.  It displays a counter that gets updated every time &lt;span class="filename"&gt;'index.php'&lt;/span&gt; is loaded.
&lt;br /&gt;&lt;/li&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;pre class="code"&gt;&lt;?php
&lt;br /&gt;require_once 'dbappinclude.php';
&lt;br /&gt;
&lt;br /&gt;echo "&lt;p&gt;hello $user&lt;/p&gt;";
&lt;br /&gt;
&lt;br /&gt;$rs = query("select count from counter");
&lt;br /&gt;if ($row = mysql_fetch_assoc($rs)) {
&lt;br /&gt;  $count = $row['count'];
&lt;br /&gt;  query("update counter set count=count+1");
&lt;br /&gt;} else {
&lt;br /&gt;  query("insert into counter values (1)");
&lt;br /&gt;  $count = 1;
&lt;br /&gt;}
&lt;br /&gt;
&lt;br /&gt;echo "&lt;p&gt;the count is $count&lt;/p&gt;";
&lt;br /&gt;&lt;/pre&gt;
&lt;br /&gt;&lt;/ol&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;a name="together"/&gt;
&lt;br /&gt;&lt;h2&gt;Putting the examples together&lt;/h2&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;ol&gt;
&lt;br /&gt;&lt;li&gt;Here's a final version of &lt;span class="filename"&gt;'index.php'&lt;/span&gt; which puts all these examples together.  It assumes that you have created &lt;span class="filename"&gt;'dbappinclude.php'&lt;/span&gt; from the previous example.
&lt;br /&gt;&lt;/li&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;pre class="code"&gt;&lt;?php
&lt;br /&gt;if (isset($_REQUEST['mockfbmltext'])) {
&lt;br /&gt;  echo $_REQUEST['mockfbmltext'];
&lt;br /&gt;  exit;
&lt;br /&gt;}
&lt;br /&gt;
&lt;br /&gt;require_once 'dbappinclude.php';
&lt;br /&gt;
&lt;br /&gt;echo "&lt;p&gt;hello $user&lt;/p&gt;";
&lt;br /&gt;
&lt;br /&gt;$rs = query("select count from counter");
&lt;br /&gt;if ($row = mysql_fetch_assoc($rs)) {
&lt;br /&gt;  $count = $row['count'];
&lt;br /&gt;  query("update counter set count=count+1");
&lt;br /&gt;} else {
&lt;br /&gt;  query("insert into counter values (1)");
&lt;br /&gt;  $count = 1;
&lt;br /&gt;}
&lt;br /&gt;
&lt;br /&gt;echo "&lt;p&gt;the count is $count&lt;/p&gt;";
&lt;br /&gt;
&lt;br /&gt;if (isset($_REQUEST['profiletext'])) {
&lt;br /&gt;  $facebook-&gt;api_client-&gt;profile_setFBML($_REQUEST['profiletext'], $user);
&lt;br /&gt;  $facebook-&gt;redirect($facebook-&gt;get_facebook_url() . '/profile.php');
&lt;br /&gt;}
&lt;br /&gt;
&lt;br /&gt;echo '&lt;form action="" method="get"&gt;';
&lt;br /&gt;echo '&lt;input name="profiletext" type="text" size="30" value=""&gt;&lt;br&gt;';
&lt;br /&gt;echo '&lt;input name="submit" type="submit" value="Display text on profile"&gt;';
&lt;br /&gt;echo '&lt;/form&gt;';
&lt;br /&gt;
&lt;br /&gt;$fbml = &lt;&lt;&lt;EndHereDoc
&lt;br /&gt;&lt;form&gt;
&lt;br /&gt;&lt;input name="mockfbmltext" type="text" size="30"&gt;
&lt;br /&gt;&lt;br /&gt;
&lt;br /&gt;&lt;input type="submit"
&lt;br /&gt;  clickrewriteurl="$appcallbackurl"
&lt;br /&gt;  clickrewriteid="preview" value="Draw text below"
&lt;br /&gt;/&gt;
&lt;br /&gt;&lt;br /&gt;
&lt;br /&gt;&lt;div id="preview" style="border-style: solid; border-color: black;
&lt;br /&gt;  border-width: 1px; padding: 5px;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;br /&gt;&lt;/form&gt;
&lt;br /&gt;EndHereDoc;
&lt;br /&gt;
&lt;br /&gt;$facebook-&gt;api_client-&gt;profile_setFBML($fbml, $user);
&lt;br /&gt;
&lt;br /&gt;echo "&lt;p&gt;the following form was added to the profile box:&lt;/p&gt;";
&lt;br /&gt;
&lt;br /&gt;echo $fbml;
&lt;br /&gt;&lt;/pre&gt;
&lt;br /&gt;&lt;/ol&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;a name="downloads"/&gt;
&lt;br /&gt;&lt;h2&gt;Downloads&lt;/h2&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;ol&gt;
&lt;br /&gt;&lt;li&gt;&lt;a href="http://developers.facebook.com/clientlibs/facebook-platform.tar.gz"&gt;facebook_client.tar.gz&lt;/a&gt; -- the latest php5 platform client library
&lt;br /&gt;&lt;/li&gt;
&lt;br /&gt;&lt;li&gt;&lt;a href="http://www.facebook.com/fbml/tutorialapp.tar.gz"&gt;tutorialapp.tar.gz&lt;/a&gt; -- source fo the final combined example; you need to fill in your own app_key, application secret, and db info to make it work on your server
&lt;br /&gt;&lt;/li&gt;
&lt;br /&gt;&lt;li&gt;&lt;a href="http://www.facebook.com/fbml/tutorialapp.zip"&gt;tutorialapp.zip&lt;/a&gt; -- same as tutorialapp.tar.gz but in a zip file
&lt;br /&gt;&lt;/li&gt;
&lt;br /&gt;&lt;/ol&gt;
&lt;br /&gt;
&lt;br /&gt;&lt;/div&gt;</description><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></item><item><title>Mac Cocoa - Java API</title><link>http://techbitss.blogspot.com/2007/09/mac-cocoa-java-api.html</link><category>Cocoa</category><category>InterfaceBuilder</category><category>Mac</category><category>Xcode</category><author>noreply@blogger.com (Swaminathan Mathivanan)</author><pubDate>Fri, 7 Sep 2007 03:28:00 -0700</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-863373947540145913.post-3438286320679233137</guid><description>Hi all, My new Project is Mac OS Project, Using XCode, Interface Builder..., Its my new Experience in Cocoa application development. its very interesting... i share my experience. First i tell what is Cocoa, it can be following here....&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjhA3vyanpGScwq8qkF3nWhFtyr9V0brfUseMGVvLAnun9L607uXL6e7FHo_pb7k0PNilFWDqORK3npuHE9eg5_-8ah2LmrssucyDHEU-5J7eeMZIh3R8YF9iGXttWjntcIn1OhsTvy4XJz/s1600-h/mac.jpg"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjhA3vyanpGScwq8qkF3nWhFtyr9V0brfUseMGVvLAnun9L607uXL6e7FHo_pb7k0PNilFWDqORK3npuHE9eg5_-8ah2LmrssucyDHEU-5J7eeMZIh3R8YF9iGXttWjntcIn1OhsTvy4XJz/s320/mac.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5107409310724446322" /&gt;&lt;/a&gt;&lt;br /&gt;Cocoa is an object-oriented application environment designed specifically for developing Mac OS X-only native applications. The Cocoa frameworks include a complete set of classes, and for developers starting new Mac OS X-only projects, Cocoa provides the fastest way to full-featured, extensible, and maintainable applications. You can bring applications from UNIX and other platforms to Mac OS X quickly by using Cocoa to build state-of-the-art Aqua user interfaces while retaining most existing core code.&lt;br /&gt;&lt;br /&gt;Cocoa is one of the application environments of Mac OS X and a peer to Carbon and Java. It consists of a suite of object-oriented software libraries and a runtime engine, and shares an integrated development environment with the other application environments. You can write Cocoa applications in either Objective-C or Objective-C++ (there are Java bindings as well) but you can also call Carbon C functions.&lt;br /&gt;&lt;br /&gt;Cocoa is one of the application environments of Mac OS X and a peer to Carbon and Java. It consists of a suite of object-oriented software libraries and a runtime engine, and shares an integrated development environment with the other application environments. You can write Cocoa applications in either Objective-C or Objective-C++ (there are Java bindings as well) but you can also call Carbon C functions.&lt;br /&gt;&lt;br /&gt;First U can download and install the Xcode in ur Mac Os, its also available for opensource in Mac Website &lt;a href="http://developer.apple.com/tools/xcode/"&gt;clickhere&lt;/a&gt;. &lt;br /&gt;&lt;br /&gt;And then u can run the Xcode application, then the same procedure for all other project development, click the File new Project then select the cocoa project, then u can give the project name,&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgZm2Ef-veB9qGd5LkkGkZaqraPi_eVYyDlbA4UhDC6A-4hxJLsCWl26Z6SJY16Q6HOlOf9fqCVDTdJ46laAU-hIf__dMEuptiTv9DfemJdAsWn8OH2kJy-X4zYHJP75Ln_moHOH582vk0p/s1600-h/mac2.jpg"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgZm2Ef-veB9qGd5LkkGkZaqraPi_eVYyDlbA4UhDC6A-4hxJLsCWl26Z6SJY16Q6HOlOf9fqCVDTdJ46laAU-hIf__dMEuptiTv9DfemJdAsWn8OH2kJy-X4zYHJP75Ln_moHOH582vk0p/s320/mac2.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5107409452458367106" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;after that click the finsh button the Project will ready to work... then u click the Main Meni.nib file, u automatically redirected to the Interface Builder. &lt;br /&gt;&lt;object width="425" height="350"&gt;&lt;param name="movie" value="http://www.youtube.com/v/nCdso6JSH7c"&gt;&lt;/param&gt;&lt;param name="wmode" value="transparent"&gt;&lt;/param&gt;&lt;embed src="http://www.youtube.com/v/nCdso6JSH7c" type="application/x-shockwave-flash" wmode="transparent" width="425" height="350"&gt;&lt;/embed&gt;&lt;/object&gt;then what ever u want to build the application window... then save the file, then return back to Xcode click the Build and go button. u can see, what u make the window as like..&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj9StVRE1u9Ft0bbJnX7BJh1ZX_ep13OBzsbUR-ICYtHst3vPbicvu3siu2h7EdGKcNHCzS5cWXd3ZS7yBh1PMTdnv_M2zKntepi9hluvLxIWCl0QEops5nPsWMuejH6w94hrWMbB1V4voG/s1600-h/logic.gif"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj9StVRE1u9Ft0bbJnX7BJh1ZX_ep13OBzsbUR-ICYtHst3vPbicvu3siu2h7EdGKcNHCzS5cWXd3ZS7yBh1PMTdnv_M2zKntepi9hluvLxIWCl0QEops5nPsWMuejH6w94hrWMbB1V4voG/s320/logic.gif" border="0" alt=""id="BLOGGER_PHOTO_ID_5107409701566470290" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Thats all... then we add the business logic and other programming stuffs to this project...&lt;br /&gt;&lt;br /&gt;This is one of the best experience in my project life...</description><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" height="72" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjhA3vyanpGScwq8qkF3nWhFtyr9V0brfUseMGVvLAnun9L607uXL6e7FHo_pb7k0PNilFWDqORK3npuHE9eg5_-8ah2LmrssucyDHEU-5J7eeMZIh3R8YF9iGXttWjntcIn1OhsTvy4XJz/s72-c/mac.jpg" width="72"/><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></item><item><title>JavaFX</title><link>http://techbitss.blogspot.com/2007/08/javafx.html</link><author>noreply@blogger.com (Swaminathan Mathivanan)</author><pubDate>Sat, 18 Aug 2007 22:04:00 -0700</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-863373947540145913.post-2442320501525515263</guid><description>&lt;span style="font-style:italic;"&gt;      This is my next Tech bitssssss..., The JavaFx is a scripting language. Can Create rich content applications for mobile, set-top, and desktop devices with JavaFX. The JavaFX Script™ (hereinafter referred to as JavaFX) language is a declarative and statically typed scripting language. It has first-class functions, declarative syntax, list-comprehensions, and incremental dependency-based evaluation. The JavaFX language makes intensive use of the Java2D Swing GUI components and allows for easy creation of graphical user interfaces or GUIs.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;The Technical Details followed here.,  &lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;At A Glance&lt;/span&gt;&lt;br /&gt;    * The JavaFX product family leverages the Java platform's write-once-run-anywhere portability, application security model, ubiquitous distribution and enterprise connectivity&lt;br /&gt;    * JavaFX initially is comprised of JavaFX Script and JavaFX Mobile&lt;br /&gt;    * JavaFX Script is a highly productive scripting language for content developers to create rich media and interactive content&lt;br /&gt;    * JavaFX Mobile, Sun's software system for mobile devices, is available via OEM license to carriers, handset manufacturers and others seeking a branded relationship with consumers&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhiU2qiOEa2EVwP9r2q9AADkGKNhBUdnubzRDkZKBDlzuZj4JQMVLfz6hn_7MAbzQ0pv9pcQJOuRjUjY_MGvcLNZCiN6QqZUnuhfUUFSVaPSDNxDKO-C0wlRDn7sLqm5It9HVJrwmpLcyg5/s1600-h/ig_javafx_architecture.jpg"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhiU2qiOEa2EVwP9r2q9AADkGKNhBUdnubzRDkZKBDlzuZj4JQMVLfz6hn_7MAbzQ0pv9pcQJOuRjUjY_MGvcLNZCiN6QqZUnuhfUUFSVaPSDNxDKO-C0wlRDn7sLqm5It9HVJrwmpLcyg5/s320/ig_javafx_architecture.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5100275335686051874" /&gt;&lt;/a&gt;The JavaFX product family delivers the ability to create interactive content, applications and services from the desktop to mobile devices to the living room.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Features&lt;/span&gt;&lt;br /&gt;# avaFX Script uses a declarative syntax for specifying GUI components, so a developer's code closely matches the actual layout of the GUI&lt;br /&gt;# Through declarative databinding and incremental evaluation, JavaFX Script enables developers to easily create and configure individual components by automatically synchronizing application data and GUI components&lt;br /&gt;# JavaFX Script will work with all major IDEs, including NetBeans, which is the reference implementation IDE for Java development&lt;br /&gt;# Unlike many other Java scripting languages, JavaFX Script is statically typed and will have most of the same code structuring, reuse, and encapsulation features that make it possible to create and maintain very large programs in Java&lt;br /&gt;# JavaFX Script is capable of supporting GUIs of any size or complexity&lt;br /&gt;# JavaFX Script makes it easier to use Swing, one of the best GUI development toolkits of its kind&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Benefits&lt;/span&gt;&lt;br /&gt;    * Increases developer productivity&lt;br /&gt;    * Offers an intuitive language design&lt;br /&gt;    * Requires less code&lt;br /&gt;    * Enables faster development cycles&lt;br /&gt;    * Zero loss of functionality across devices&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;JavaFX Mobile - Overview&lt;/span&gt;&lt;br /&gt;JavaFX Mobile is a complete, pre-integrated software system for advanced mobile devices designed to enable developers to author rich, high-impact content and network-based services. Built around open and standards-based technologies, JavaFX Mobile enables control and flexibility for the mobile ecosystem.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;JavaFX Mobile Architecture Key Benefits&lt;/span&gt; &lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Device Manufacturers&lt;br /&gt;Business Challenges  &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;    * More advanced architectures and increasingly complex functionality result in significant time dedicated to porting and integration rather than creating value-added services&lt;br /&gt;    * Getting to market quickly with new services and functionality is critical&lt;br /&gt;    * Need a platform that is sufficiently customizable and that can be leveraged across a wide range of devices&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;&lt;br /&gt;Advantages of JavaFX Mobile Software&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;    * JavaFX Mobile is a complete and pre-integrated solution enabling device manufacturers to focus on developing new services&lt;br /&gt;    * Because JavaFX Mobile is built around standard Java APIs, porting costs will be reduced&lt;br /&gt;    * JavaFX Mobile will implement libraries, middleware, and applications in Java and rely on standardized APIs, so porting the software to new hardware and adding/replacing software components is much easier than it would be with proprietary components&lt;br /&gt;    * JavaFX Mobile will simplify and accelerate the development of highly customizable, richly branded and secure user interfaces across mobile feature phone handsets&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Content Developers&lt;br /&gt;Business Challenges &lt;/span&gt; &lt;br /&gt;&lt;br /&gt;    * The proliferation of devices in the mobile space has made it very costly to develop and deploy mobile applications and services&lt;br /&gt;    * Developers want to take advantage of the latest device capabilities, but not all software platforms enable the use of the latest functionality&lt;br /&gt;    * Developer tools that have been loosely coupled with the application platform can present a variety of development challenges and compatibility issues&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;&lt;br /&gt;Advantages of JavaFX Mobile Software&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;    * With more than 1.8 billion handsets running Java, this software will enable developers to validate applications on almost any mobile device with little or no porting&lt;br /&gt;    * Developers can create content using the product's open, standard Java APIs, fully integrated with a complete mobile software system to provide more consistent application behavior and functionality&lt;br /&gt;    * Developers can freely leverage numerous tools available for Java, including the award-winning NetBeans IDE and the Sun Java Wireless Toolkit&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;&lt;br /&gt;Mobile Operators&lt;br /&gt;Business Challenges  &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;    * Proliferation and fragmentation of mobile platforms has resulted in high operational costs and has increased the cost of deploying new content&lt;br /&gt;    * Compelling content and superior customer experience is necessary to fuel subscriber growth&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Advantages of JavaFX Mobile Software&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;    * JavaFX Mobile is highly portable, so it's easy to deploy applications and services in a consistent fashion across a wide range of devices, enabling faster time-to-market and improved customer experience&lt;br /&gt;    * JavaFX Mobile will improve consistency between handsets supplied into the operator's network, resulting in reduced validation, porting, and support costs.&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;&lt;br /&gt;System Requirements&lt;br /&gt;&lt;/span&gt;&lt;br /&gt; Systems Requirements section of the NetBeans IDE 5.5 Release Notes or the NetBeans IDE 6.0 Preview (M10) Release Notes in order to run the IDE.&lt;br /&gt;See More technical details, tutorials, examples,&lt;a href="https://openjfx.dev.java.net/Getting_Started_With_JavaFX.html"&gt;click here&lt;/a&gt;&lt;br /&gt;another&lt;a href="http://www.onjava.com/pub/a/onjava/2007/07/27/introduction-to-javafx-script.html"&gt; link&lt;/a&gt;</description><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" height="72" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhiU2qiOEa2EVwP9r2q9AADkGKNhBUdnubzRDkZKBDlzuZj4JQMVLfz6hn_7MAbzQ0pv9pcQJOuRjUjY_MGvcLNZCiN6QqZUnuhfUUFSVaPSDNxDKO-C0wlRDn7sLqm5It9HVJrwmpLcyg5/s72-c/ig_javafx_architecture.jpg" width="72"/><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></item><item><title>Why i Love Linux Very Much</title><link>http://techbitss.blogspot.com/2007/08/why-i-love-linux-very-much.html</link><author>noreply@blogger.com (Swaminathan Mathivanan)</author><pubDate>Fri, 10 Aug 2007 01:38:00 -0700</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-863373947540145913.post-8041297453306083725</guid><description>&lt;span style="font-weight:bold;"&gt;What is Linux?&lt;/span&gt;&lt;br /&gt;Linux is an operating system for your computer, in a similar way that Microsoft Windows and Apple's OSX are operating systems for your computer. Linux is very different however (and we believe, better!).&lt;br /&gt;&lt;br /&gt;Linux was started in 1992 by then university student Linus Torvalds, who released his software for free, including all of the source code. Because Linus made his source code freely available, thousands of developers around the world have downloaded it, made changes and sent improvements back to him!&lt;br /&gt;&lt;br /&gt;Because of this global collaboration effort, Linux is stable, extremely flexible and well supported. It is the fastest growing operating system in the world and it is freely available for you to install onto your computer! Sound great? It is!&lt;br /&gt;&lt;br /&gt;Linux comes with thousands of free applications, which are maintained by thousands of volunteers around the world. These projects also release their source code, which means they too are 'open source'.&lt;br /&gt;&lt;br /&gt;"But how can they do all this for free?" I hear you ask. The Linux and open source communities do all this for free because they love the software, not because they try to make money from it. They are doing it for prestige, honour and because they believe in open source ideals.&lt;br /&gt;&lt;br /&gt;It is important to note that due to the nature of open source software (the ability to customise it however you like) there are many different version of Linux. This is great because you can find a version that suits you best! These different versions of Linux are called 'distributions'. This is because the creators of the various versions take Linux and make their own changes to it, add their own packages and then distribute it for free. It might sound complicated, but it's not. So don't worry, we'll help you get started on the right track!&lt;br /&gt;&lt;br /&gt;We invite you to look further into Linux and welcome you to 'make the move' into an amazing new world.&lt;br /&gt;&lt;br /&gt;There are many reasons why you might want to 'make the move' to Linux. Here are some of them:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Viruses and Spyware&lt;/span&gt;&lt;br /&gt;Linux does not suffer from virus and spyware problems like Windows does. This is because of the secure way Linux was designed. Imagine not having to worry about getting a virus or opening that email attachment! Feel confident when using your computer.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;&lt;br /&gt;Security and Stability&lt;/span&gt;&lt;br /&gt;Linux is designed to be stable, safe and secure. Due to the nature of open source software, any security flaws are fixed very quickly. The world's best programmers and thousands of people contribute to the programs you would use everyday and this means you get the best software packages available which are continually being improved. In the much less frequent case of an application either misbehaving or crashing, Linux itself rarely fails completely. This results in your computer normally remaining active and usable. No more 'reboot and try again' syndrome! Often these situations can be resolved quite quickly using the tools available within Linux rather than purchased in addition to the operating system itself. You can access helpful log files and if you have the skills even the source code of the software, not to mention there's a great community of users willing to help! Using Linux puts you in control of your computer and you can rest knowing your system is safe, secure, and the software will always exist. Security updates are always available and you don't have to worry about issues like Microsoft no-longer supporting your version of Windows and having to pay for an upgrade (and probably a new computer!).&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Package Management&lt;/span&gt;&lt;br /&gt;You can search for and install software on your Linux computer in a single convenient application. No searching the internet for the files you need or fumbling through the latest CD you got in the mail, just hit the install button to watch Linux download the required files from the internet and install them for you. Not only this, but once you have your system and applications installed, Linux keeps track of all of the application updates automatically, regardless of whether you have used those applications before or even knew that they were installed! So whether it's a security update, a new version of OpenOffice.org, or even the core Linux system itself, it is all handled seamlessly and easily. And, most importantly, being open source you know you can trust the software that is being installed!&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Features&lt;/span&gt;&lt;br /&gt;Linux is often at the forefront of computer technology and innovation. It is not bound by the same pressures as commercial entities and people are free to be creative and innovative. Some examples of where Linux has already included features before Windows are: fancy 3D desktop effects with Xgl and beryl; TV and media centre with mythtv; desktop searching with beagle; desktop widgets with superkaramba; and many more. Plus, Linux is available for free right now!&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Compatibility&lt;/span&gt;&lt;br /&gt;Linux runs on anything. In fact it is the most widely supported operating system in the world! From brand new computers to old ones you were going to throw away there is always a Linux version for you. With Linux you can still browse websites all over the internet, watch movies, listen to your music, access your digital camera, use your scanner and much much more. You can also send emails and create documents that are compatible with Windows systems.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Free (as in freedom)&lt;/span&gt;&lt;br /&gt;Linux is free open source software. This might not mean much to you if you are not a programmer but even if you are just an end user it means you can trust the software (see the section on 'What is FOSS?' for more information). Free open source software is also gaining popularity all over the world and is on the rise. Now is a good time to start learning a valuable new skill set.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;&lt;br /&gt;Free (as in price)&lt;/span&gt;&lt;br /&gt;You might think that your computer came with Windows for free, but you actually did pay for it (unless it's an illegal copy). Linux however, actually is free. Forget worrying about pirated software! From complete office suites to media programs and internet applications, the open source software that comes with Linux is not only fully featured, it doesn't cost a cent.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Easy and Intuitive&lt;/span&gt;&lt;br /&gt;A single 20 minute install of Linux will set up all your software and all your hardware in one go! You don't need to waste time searching for driver disks and going through the frustration of installing all your software. Once your Linux system is installed you will find it is very simple and easy to use. Linux is continually being improved and made more intuitive because people have the freedom to make changes to the software. These are then made available for everyone else to benefit from.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;&lt;br /&gt;Choice and Control&lt;/span&gt;&lt;br /&gt;Linux also puts you in control by giving you choice. Choice about what software to run and how you run it. You don't have to worry about being stuck with one particular program or a set way of doing something. There are thousands of free computer programs available for you to install at the click of a button! Indeed you can even customise the interface to your liking, or choose one of the various Linux versions available that work differently out of the box. Linux is flexible and lets you create a system that works for you. Find or create something that suits you!&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Community&lt;/span&gt;&lt;br /&gt;Everyone using Linux does so because they chose to, not because they had to. People develop Linux because they have a passion for it, not because they do it for money or market share. This means things are done for the right reasons. Users are always willing to help others and Linux is a global collaboration effort. The Linux community is made up of people just like you and it's a great community to be a part of.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;&lt;br /&gt;Fun!&lt;/span&gt;&lt;br /&gt;Linux is also FUN to use. Imagine actually enjoying using your computer again! There's just something great about running Linux on your computer, even computer savvy people will be impressed!</description><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">1</thr:total></item></channel></rss>