<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/atom10full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><feed xmlns="http://www.w3.org/2005/Atom" xmlns:openSearch="http://a9.com/-/spec/opensearch/1.1/" xmlns:georss="http://www.georss.org/georss" xmlns:gd="http://schemas.google.com/g/2005" xmlns:thr="http://purl.org/syndication/thread/1.0" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" gd:etag="W/&quot;C08CRXcyfCp7ImA9WhRQEEs.&quot;"><id>tag:blogger.com,1999:blog-7626566</id><updated>2011-12-05T10:41:04.994+05:30</updated><category term="Gadget Dreams" /><category term="Tools" /><category term="Android" /><category term="Technology" /><category term="Animation" /><category term="Google Wave" /><category term="Mobile Development" /><category term="Maemo" /><title>Geek Whorled</title><subtitle type="html">Techy stuff that catches my interest from time to time</subtitle><link rel="http://schemas.google.com/g/2005#feed" type="application/atom+xml" href="http://geekwhorled.blogspot.com/feeds/posts/default" /><link rel="alternate" type="text/html" href="http://geekwhorled.blogspot.com/" /><author><name>Rajesh J Advani</name><uri>http://www.blogger.com/profile/10728053229392465570</uri><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>25</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/atom+xml" href="http://feeds.feedburner.com/GeekWhorled" /><feedburner:info uri="geekwhorled" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><entry gd:etag="W/&quot;AkQHQX87eCp7ImA9Wx9TEUs.&quot;"><id>tag:blogger.com,1999:blog-7626566.post-8606527573709479834</id><published>2010-11-19T17:35:00.002+05:30</published><updated>2010-11-19T17:35:30.100+05:30</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-11-19T17:35:30.100+05:30</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Technology" /><category scheme="http://www.blogger.com/atom/ns#" term="Android" /><title>Tata Docomo 3G Settings for Nexus One/Android</title><content type="html">My previous article on BSNL 3G APN settings for use with the Nexus One, was among the more popular posts on this blog, so I thought I should do the same for other 3G providers in India. The same settings should work on any Android phone - like the Samsung Galaxy phones, Motorola Milestone, or HTC Desire.&lt;br /&gt;
&lt;br /&gt;
The first private player to launch 3G services in a big way in India has been Tata Docomo. If you have a Tata Docomo 3G plan, you can use the following settings to use 3G from your Nexus One/Android phone.&lt;br /&gt;
&lt;br /&gt;
&lt;ol&gt;&lt;li&gt;Open the &lt;b&gt;Settings&lt;/b&gt; application&lt;/li&gt;
&lt;li&gt;Click on &lt;b&gt;Wireless &amp;amp; Networks&lt;/b&gt;&lt;/li&gt;
&lt;li&gt;Click on &lt;b&gt;Mobile networks&lt;/b&gt;&lt;/li&gt;
&lt;li&gt;Click on &lt;b&gt;Access Point Names&lt;/b&gt;&lt;/li&gt;
&lt;li&gt;Bring up the Options menu (the second button from the left on the soft-touch pad, the one with the horizontal lines) and click &lt;b&gt;New APN&lt;/b&gt;&lt;/li&gt;
&lt;li&gt;Use the following settings &lt;ul&gt;&lt;li&gt;Name: &lt;em&gt;Give any name here. For example, &lt;b&gt;Tata Docomo 3G&lt;/b&gt;&lt;/em&gt;&lt;/li&gt;
&lt;li&gt;APN: &lt;b&gt;TATA.DOCOMO.INTERNET&lt;/b&gt; &lt;em&gt;This is the only thing you really need to set to access the internet over 3G.&lt;/em&gt;&lt;/li&gt;
&lt;li&gt;Proxy: &lt;em&gt;Leave this as &lt;b&gt;Not set&lt;/b&gt;&lt;/em&gt;&lt;/li&gt;
&lt;li&gt;Port: &lt;em&gt;Leave this as &lt;b&gt;Not set&lt;/b&gt;&lt;/em&gt;&lt;/li&gt;
&lt;li&gt;Username: &lt;em&gt;Leave this as &lt;b&gt;Not set&lt;/b&gt;&lt;/em&gt;&lt;/li&gt;
&lt;li&gt;Password: &lt;em&gt;Leave this as &lt;b&gt;Not set&lt;/b&gt;&lt;/em&gt;&lt;/li&gt;
&lt;li&gt;Server: &lt;em&gt;Leave this as &lt;b&gt;Not set&lt;/b&gt;&lt;/em&gt;&lt;/li&gt;
&lt;li&gt;MMSC: &lt;em&gt;Leave this as &lt;b&gt;Not set&lt;/b&gt;&lt;/em&gt;&lt;/li&gt;
&lt;li&gt;MMS Proxy: &lt;em&gt;Leave this as &lt;b&gt;Not set&lt;/b&gt;&lt;/em&gt;&lt;/li&gt;
&lt;li&gt;MMS Port: &lt;em&gt;Leave this as &lt;b&gt;Not set&lt;/b&gt;&lt;/em&gt;&lt;/li&gt;
&lt;li&gt;MCC: 404 &lt;em&gt;(This was the default value on my phone. I didn't change it)&lt;/em&gt;&lt;/li&gt;
&lt;li&gt;MNC: 64 &lt;em&gt;(This was the default value on my phone. I didn't change it)&lt;/em&gt;&lt;/li&gt;
&lt;li&gt;Authentication type: None&lt;/li&gt;
&lt;li&gt;APN type: &lt;em&gt;Leave this as &lt;b&gt;Not set&lt;/b&gt;&lt;/em&gt;&lt;/li&gt;
&lt;/ul&gt;&lt;/li&gt;&lt;/ol&gt;&lt;br /&gt;
Do let me know in the comments whether this helped, or if you needed to do anything different.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7626566-8606527573709479834?l=geekwhorled.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/8HX_PReeGMmAJdVKemVWpltrKWI/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/8HX_PReeGMmAJdVKemVWpltrKWI/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/8HX_PReeGMmAJdVKemVWpltrKWI/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/8HX_PReeGMmAJdVKemVWpltrKWI/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/GeekWhorled/~4/Kv3I-oRz_ow" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://geekwhorled.blogspot.com/feeds/8606527573709479834/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=7626566&amp;postID=8606527573709479834" title="2 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/7626566/posts/default/8606527573709479834?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/7626566/posts/default/8606527573709479834?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/GeekWhorled/~3/Kv3I-oRz_ow/tata-docomo-3g-settings-for-nexus.html" title="Tata Docomo 3G Settings for Nexus One/Android" /><author><name>Rajesh J Advani</name><uri>http://www.blogger.com/profile/10728053229392465570</uri><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>2</thr:total><feedburner:origLink>http://geekwhorled.blogspot.com/2010/11/tata-docomo-3g-settings-for-nexus.html</feedburner:origLink></entry><entry gd:etag="W/&quot;D0MFRn49eyp7ImA9WxFVFUU.&quot;"><id>tag:blogger.com,1999:blog-7626566.post-3406601524257644512</id><published>2010-06-14T18:30:00.003+05:30</published><updated>2010-06-15T12:33:37.063+05:30</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-06-15T12:33:37.063+05:30</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Technology" /><category scheme="http://www.blogger.com/atom/ns#" term="Tools" /><category scheme="http://www.blogger.com/atom/ns#" term="Mobile Development" /><category scheme="http://www.blogger.com/atom/ns#" term="Maemo" /><title>Setting Up Maemo 5/N900 Dev Environment on Windows</title><content type="html">I've been learning to write applications for a number of mobile platforms, one of them being Nokia's &lt;a href="http://maemo.nokia.com/n900/"&gt;N900&lt;/a&gt; smartphone. To that end I was trying to setup the Maemo 5 SDK, but it's taken me more than a week to do so. Let's see why, and what I did to finally get a Maemo 5 emulator up so that I could test code I wrote for the device, without having to install it on the device itself.&lt;br /&gt;&lt;br /&gt;I've called the N900 a "smartphone" because that's what Nokia is calling it but it's really a UMPC with a phone built-in. The N900 runs the ARM port of Maemo 5 (a.k.a. Fremantle). Maemo 5 is a Debian based operating system, so you'll be using apt-get to install software onto the device. The N900 even ships with an "X Terminal" app pre-installed. That is probably one of the things that tells you that the phone was built by geeks.&lt;br /&gt;&lt;br /&gt;Anyway.&lt;br /&gt;&lt;br /&gt;The Maemo 5 SDK is really an emulated environment that allows you to write and compile code for testing. It uses scratchbox as the cross-compilation toolkit. You login to scratchbox, which has emulated environments (targets) for both x86 and ARM setup using a rootstrap (think of it as an operating system installer) for each platform. You write code and test it on the emulated x86 target. You can then compile in the ARM target, and deploy it on the phone for final testing. &lt;br /&gt;&lt;br /&gt;The reason for this is that compilation and execution is faster in the x86 target as it uses native compilation tools. Compilation for ARM would be slower.&lt;br /&gt;&lt;br /&gt;The documentation points to multiple ways of installing the Maemo SDK.&lt;br /&gt;&lt;ol&gt;&lt;li&gt;If you are not using Linux, you are pointed to a VMWare image that has been created for you with all the tools already setup.&lt;/li&gt;&lt;li&gt;If you are using Debian-based installation of Linux, you can setup the SDK in three different ways:&lt;ol&gt;&lt;li&gt;The GUI installer&lt;/li&gt;&lt;li&gt;The automated command-line installer&lt;/li&gt;&lt;li&gt;Manual Installation&lt;/li&gt;&lt;/ol&gt;&lt;/li&gt;&lt;/ol&gt;&lt;br /&gt;Which sounds great until you find out that only one of the above actually works - The manual installation.&lt;br /&gt;&lt;br /&gt;I wanted to set this up at work, where I only have Windows PCs. So I jumped for the VMWare image. The link takes you to a page on the nokia.com domain, where you need to accept the EULA before you can see the list of available downloads. Sadly though, for the past few weeks, the vmware image has been missing from this list.&lt;br /&gt;&lt;br /&gt;I did find the image on this page at one point, and went ahead and downloaded it. However, there was a problem with the image and it was deleted the next day. For the curious, the problem I saw was that when you ran the emulator, all the apps on the emulated device started up fine, but you could only see their title-bars. The body of the window was blank.&lt;br /&gt;&lt;br /&gt;So I had to create my own virtual machine. Below are the instructions on how to do that using &lt;a href="http://www.vmware.com/products/server/"&gt;VMWare Server&lt;/a&gt; on a Windows PC. I prefer to use the old VMWare Server 1.0 release, but the instructions should work the same on new versions and other virtualization software too.&lt;br /&gt;&lt;ol&gt;&lt;li&gt;Download the ISO file for the 32-bit x86 version of &lt;a href="http://releases.ubuntu.com/9.10/ubuntu-9.10-server-i386.iso"&gt;Ubuntu Server 9.10 Karmic Koala&lt;/a&gt;. I would recommend using this specific version since that's what Maemo's developers seem to use as their development environment. I'm choosing the server edition to keep the VM light. The desktop edition will also work but will be slower.&lt;/li&gt;&lt;li&gt;Create a VM in VMWare Server, with at least 5GB of hard disk space (I used 10GB). If you don't allocate all diskspace at the time of creation, the VM will slow down everytime it needs to grow the disk file. This might be acceptable if you are low on disk. I suggest 512MB of RAM though less will probably work for most development needs. I use bridged networking so that the VM has its own identity on the network. The VM will need access to the internet, so make sure you set this up.&lt;/li&gt;&lt;li&gt;Setup the ISO file as the CDROM drive for the newly created VM.&lt;/li&gt;&lt;li&gt;Start the VM, and it will boot from the ISO file&lt;/li&gt;&lt;li&gt;Install Ubuntu onto the VM as a full server install. I don't recommend using the JeOS/Virtual Server option, as I had some problems with dependencies that probably came from using a kernel optimized for virtual environments.&lt;/li&gt;&lt;li&gt;Towards the end of the installation, choose to use the installation as an "SSH Server". This will make sure that you can login to the virtual machine using SSH instead of using the VMWare Server Console.&lt;/li&gt;&lt;li&gt;Install an X-Server of your choice. I prefer Cygwin/X. I've been using it for years, and I've never had a problem with it.&lt;ol&gt;&lt;li&gt;The instructions to install Cygwin/X can be found at &lt;a href="http://x.cygwin.com/docs/ug/setup-cygwin-x-installing.html"&gt;this page&lt;/a&gt;.&lt;/li&gt;&lt;li&gt;I've found it necessary to ensure selection of the following additional packages to get Cygwin/X working optimally: &lt;code&gt;font-adobe-dpi75&lt;/code&gt;, &lt;code&gt;font-encodings&lt;/code&gt;, &lt;code&gt;fontconfig&lt;/code&gt;, &lt;code&gt;xwinwm&lt;/code&gt;.&lt;/li&gt;&lt;li&gt;You'll also need the &lt;code&gt;xhost&lt;/code&gt; package.&lt;/li&gt;&lt;li&gt;I like using Cygwin to connect to the virtual machine instead of using additional tools like putty. If you want to do the same, also install the &lt;code&gt;openssh&lt;/code&gt; package.&lt;/li&gt;&lt;/ol&gt;&lt;/li&gt;&lt;li&gt;Once all the installation is done, boot into your newly setup VM, and log in using the user you created at installation.&lt;/li&gt;&lt;/ol&gt;&lt;br /&gt;I tried to install Maemo SDK using the automated command-line scripts (which is pretty much the same as the GUI tool). However, this didn't work for me. So at my third attempt, I created a fresh new VM, and used the &lt;a href="http://wiki.maemo.org/Documentation/Maemo_5_Final_SDK_Installation#Manual_Installation"&gt;manual installation&lt;/a&gt; instructions. I'll be repeating those instructions here with my comments on what worked and what did not.&lt;br /&gt;&lt;br /&gt;The first thing we need to do is to install scratchbox. Ubuntu's universe repositories have version 2 of scratchbox available that can be easily installed, but this doesn't work well with Maemo 5. There is a Maemo Garage project called &lt;a href="http://maemo-sdk.garage.maemo.org/"&gt;Maemo SDK+&lt;/a&gt; that is currently trying to make the SDK compatible with Scratchbox 2. As of now, I don't recommend using it.&lt;br /&gt;&lt;br /&gt;We will install directly from the scratchbox project repository. For this we have to add the scratchbox repository to our apt sources file.&lt;br /&gt;&lt;br /&gt;Use the following command to edit the file, or use any editor you're comfortable with. (Remember, that sudo will ask you for the password of the user currently logged in. Ubuntu doesn't have the root user by default, and this is a good thing. All root access is by preceding commands with sudo.)&lt;br /&gt;&lt;blockquote&gt;&lt;code&gt;$ sudo vi /etc/apt/sources.list&lt;/code&gt;&lt;/blockquote&gt;&lt;br /&gt;Add this line to the bottom of the file.&lt;br /&gt;&lt;blockquote&gt;&lt;code&gt;deb http://scratchbox.org/debian/ maemo5-sdk main&lt;/code&gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;&lt;a name="proxy"&gt;&lt;/a&gt;If you are behind a firewall, you need to first tell the tools what your proxy is. Use this command:&lt;br /&gt;&lt;blockquote&gt;&lt;code&gt; export http_proxy=http://[username]:[password]@[proxy-host]:[proxy-port]&lt;/code&gt;&lt;/blockquote&gt;&lt;br /&gt;If your proxy doesn't authenticate, just use&lt;br /&gt;&lt;blockquote&gt;&lt;code&gt; export http_proxy=http://[proxy-host]:[proxy-port]&lt;/code&gt;&lt;/blockquote&gt;&lt;br /&gt;Now you'll need to refresh the apt cache with the newly added repository.&lt;br /&gt;&lt;blockquote&gt;&lt;code&gt;$ sudo apt-get update&lt;/code&gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;Scratchbox doesn't work when VDSO is enabled. It is enabled in Ubuntu 9.10, so we need to turn it off.&lt;br /&gt;&lt;br /&gt;To disable VDSO support in Ubuntu, use this command to edit the sysctl file.&lt;br /&gt;&lt;blockquote&gt;&lt;code&gt;$ sudo vi /etc/sysctl.conf&lt;/code&gt;&lt;/blockquote&gt;&lt;br /&gt;Add this line to the bottom of the file.&lt;br /&gt;&lt;blockquote&gt;&lt;code&gt;vm.vdso_enabled = 0&lt;/code&gt;&lt;/blockquote&gt;&lt;br /&gt;To load these changes, run the following command:&lt;br /&gt;&lt;blockquote&gt;&lt;code&gt;sudo sysctl -p&lt;/code&gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;You can now install scratchbox. Run the following command (all on one line). The apt-get tool will download all files and dependencies (there will be around 400MB of them), and install the software.&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;&lt;code&gt;$ sudo apt-get install scratchbox-core scratchbox-libs scratchbox-devkit-qemu scratchbox-devkit-debian scratchbox-devkit-doctools scratchbox-devkit-perl scratchbox-toolchain-host-gcc scratchbox-toolchain-cs2007q3-glibc2.5-arm7 scratchbox-toolchain-cs2007q3-glibc2.5-i486 scratchbox-devkit-svn scratchbox-devkit-git scratchbox-devkit-apt-https&lt;/code&gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;I sometimes got 503 errors while downloading some of the dependencies, but re-running the command allowed it to proceed smoothly.&lt;br /&gt;&lt;br /&gt;Now we need to setup the currently logged in user as a scratchbox user. Run the following command.&lt;br /&gt;&lt;blockquote&gt;&lt;code&gt;$ sudo /scratchbox/sbin/sbox_adduser $USER yes&lt;/code&gt;&lt;/blockquote&gt;&lt;br /&gt;$USER should expand to the name of the user currently logged in. If you have created another user on the VM, and want to set up that user instead, replace $USER with the username of the user you want setup.&lt;br /&gt;&lt;br /&gt;Some Nokia applications (which will be running inside the emulator) look for the home directory of the logged in user to be named "user", like it is on the device. To get around this problem, run the following command&lt;br /&gt;&lt;blockquote&gt;&lt;code&gt;$ sudo ln -s /scratchbox/users/&amp;lt;username&amp;gt;/home/&amp;lt;username&amp;gt; /scratchbox/users/&amp;lt;username&amp;gt;/home/user&lt;/code&gt;&lt;/blockquote&gt;&lt;br /&gt;where &amp;lt;username&amp;gt; is the username of the currently logged in user. This creates a symbolic link called "/home/user" in scratchbox, which points to the home directory of the user you setup. This means that if you want multiple users setup in scratchbox, they'll have to replace the symbolic link every time they log in.&lt;br /&gt;&lt;br /&gt;At this point, the documentation suggests running the &lt;code&gt;newgrp&lt;/code&gt; command to ensure your current session is in the &lt;code&gt;sbox&lt;/code&gt; group. Call me superstitious, but I recommend simply logging out of your session and logging back in.&lt;br /&gt;&lt;br /&gt;Once you are logged back into the VM, you must login to scratchbox to setup the Maemo SDK. Use the following command&lt;br /&gt;&lt;blockquote&gt;&lt;code&gt;$ /scratchbox/login&lt;/code&gt;&lt;/blockquote&gt;&lt;br /&gt;This takes you into the scratchbox environment. However this is a brand new environment, and we will need to setup Maemo here. First, we will need to create the two targets (for X86 and ARM). Use these commands.&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;&lt;code&gt;[sbox-&gt;:~]&gt; sb-conf st FREMANTLE_X86 -c cs2007q3-glibc2.5-i486 -d perl:debian-etch:doctools:svn:git -t none&lt;br /&gt;[sbox-&gt;:~]&gt; sb-conf st FREMANTLE_ARMEL -c cs2007q3-glibc2.5-arm7 -d qemu:perl:debian-etch:doctools:svn:git -t qemu-arm-sb&lt;/code&gt;&lt;/blockquote&gt;&lt;br /&gt;At each command you will get a message saying that no target is currently selected. This is expected, so ignore it.&lt;br /&gt;&lt;br /&gt;Again, if you are behind a firewall, you'll need to setup your proxy. Use the same command used &lt;a href="#proxy"&gt;above&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Now, download the rootstrap files.&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;&lt;code&gt;[sbox-&gt;:~]&gt; wget http://repository.maemo.org/stable/5.0/armel/maemo-sdk-rootstrap_5.0_armel.tgz http://repository.maemo.org/stable/5.0/i386/maemo-sdk-rootstrap_5.0_i386.tgz&lt;/code&gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;Remember, these are the installers of the two targets (emulated operating systems) you just created. Now you need to switch to the X86 target and install the rootstrap.&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;&lt;code&gt;[sbox-&gt;:~]&gt; sb-conf se FREMANTLE_X86&lt;br /&gt;[sbox-FREMANTLE_X86:~]&gt; sb-conf rs maemo-sdk-rootstrap_5.0_i386.tgz&lt;br /&gt;[sbox-FREMANTLE_X86:~]&gt; sb-conf in -edFL&lt;br /&gt;[sbox-FREMANTLE_X86:~]&gt; apt-get update&lt;br /&gt;[sbox-FREMANTLE_X86:~]&gt; fakeroot apt-get install maemo-sdk-debug&lt;/code&gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;This will again download and install a large number of packages. If you get 503 errors downloading some files, just rerun the last command. The "fakeroot" prefix is required because apt-get checks whether you have root permissions before it will run.&lt;br /&gt;&lt;br /&gt;You now want to install the Nokia restricted binaries. To setup the repository for this, go to &lt;a href="http://tablets-dev.nokia.com/eula/index.php"&gt;this&lt;/a&gt; page. Accept the EULA. You will then see the line in the repository that looks something like this &lt;br /&gt;&lt;blockquote&gt;&lt;code&gt;deb http://repository.maemo.org/ fremantle/xxxxxxxxxxxxxxxx nokia-binaries&lt;/code&gt;&lt;/blockquote&gt;&lt;br /&gt;Add this line to the bottom of the apt sources file. You can use this command:&lt;br /&gt;&lt;blockquote&gt;&lt;code&gt;$ vi /etc/apt/sources.list&lt;/code&gt;&lt;/blockquote&gt;&lt;br /&gt;Now you need to refresh the repository catalog and install the required binaries.&lt;br /&gt;&lt;blockquote&gt;&lt;code&gt;[sbox-FREMANTLE_X86:~]&gt; apt-get update&lt;br /&gt;[sbox-FREMANTLE_X86:~]&gt; fakeroot apt-get install nokia-binaries nokia-apps&lt;/code&gt;&lt;/blockquote&gt;&lt;br /&gt;This will again download a little more than 100MB of files and install them.&lt;br /&gt;&lt;br /&gt;You need to repeat these steps for the ARM environment setup.&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;&lt;code&gt;[sbox-FREMANTLE_X86:~]&gt; sb-conf se FREMANTLE_ARMEL&lt;br /&gt;[sbox-FREMANTLE_ARMEL:~]&gt; sb-conf rs maemo-sdk-rootstrap_5.0_armel.tgz&lt;br /&gt;[sbox-FREMANTLE_ARMEL:~]&gt; sb-conf in -edFL&lt;br /&gt;[sbox-FREMANTLE_ARMEL:~]&gt; apt-get update&lt;br /&gt;[sbox-FREMANTLE_ARMEL:~]&gt; fakeroot apt-get install maemo-sdk-debug&lt;/code&gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;Edit the apt sources file using this command &lt;br /&gt;&lt;blockquote&gt;&lt;code&gt;$ vi /etc/apt/sources.list&lt;/code&gt;&lt;/blockquote&gt;&lt;br /&gt;and add the line provided by Nokia, to the end of the file.&lt;br /&gt;&lt;br /&gt;Then install the Nokia binaries.&lt;br /&gt;&lt;blockquote&gt;&lt;code&gt;[sbox-FREMANTLE_ARMEL:~]&gt; apt-get update&lt;br /&gt;[sbox-FREMANTLE_ARMEL:~]&gt; fakeroot apt-get install nokia-binaries nokia-apps&lt;/code&gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;Scratchbox should now be properly setup with the Maemo 5 SDK.&lt;br /&gt;&lt;br /&gt;You need to now understand how to run the emulator so you can see how your application would look on the device. The Maemo UI is a desktop environment just like any in other Linux installation. This means you need an X Server running for the desktop to load in.&lt;br /&gt;&lt;br /&gt;The Maemo documentation talks about installing Xephyr. However, it assumes you are running Linux. Xephyr isn't available on Windows, but you can use Cygwin/X instead.&lt;br /&gt;&lt;br /&gt;One important point is that N900's screen has 16-bit color depth. So your X Server also needs to be running at 16-bit color depth. However, since Cygwin/X only supports controlling color depth for full-screen X Servers, you will need to reduce the color depth of your Windows desktop. If you don't, the emulator screen will not look accurate, and some widgets will not display properly. To set the color depth on Windows XP, right-click on your desktop, and click on Properties. Select the Settings tab. Change the Color Quality dropdown to 16-bit, and click Ok.&lt;br /&gt;&lt;br /&gt;First, start two instances of Cygwin Bash Shell. You'll find the shortcut to this in your Start Menu under "Cygwin". Alternatively, you can use the shortcut "XWin Server" under "Cygwin-X". This will open an xterm, which is a lot more convenient to use than the Cygwin Bash Shell. You can start another xterm by clicking on the shortcut for the same in the sample where you found the shortcut for "XWin Server". Remember we need two terminals running.&lt;br /&gt;&lt;br /&gt;We now need to start a separate X Server, that has the dimensions of the Nokia N900 device. Use this command in the first Cygwin Bash Shell/xterm to start this server.&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;&lt;code&gt;$ XWin :2 -screen 0 800x480 -clipboard&lt;/code&gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;The ":2" above specifies the "screen number" that the X server uses. If you've started "XWin Server", you'll see an icon in your system tray that says "Cygwin/X Server:0.0" when you hover over it. Since screen number "0" is already used, I've arbitrarily used "2" instead. You can use any number you like.&lt;br /&gt;&lt;br /&gt;This will open an 800x480 sized blank window on your screen. The background may be gray, checked, or black. The command will not exit, so keep your shell open.&lt;br /&gt;&lt;br /&gt;In the other Cygwin Bash Shell, run the following commands.&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;&lt;code&gt;$ export DISPLAY=:2&lt;br /&gt;$ xterm&lt;/code&gt;&lt;/blockquote&gt;&lt;br /&gt;Remember to use the same sceen number as the value of the DISPLAY variable as you used to start the X Server.&lt;br /&gt;&lt;br /&gt;This will start an xterm in the newly opened X Server window. In this xterm, run the following command&lt;br /&gt;&lt;blockquote&gt;&lt;code&gt;$ xhost + 192.168.0.100&lt;br /&gt;$ exit&lt;/code&gt;&lt;/blockquote&gt;&lt;br /&gt;where 192.168.0.100 is the IP address of the VM. This step authorizes processes from the VM to write to this X Server. The exit command closes the xterm since we don't need it anymore.&lt;br /&gt;&lt;br /&gt;Now login to the VM, and to scratchbox. If not already set, set the target to the X86 version, using the command:&lt;br /&gt;&lt;blockquote&gt;&lt;code&gt;[sbox-&gt;:~]&gt; sb-conf se FREMANTLE_X86&lt;/code&gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;Now we want to start the Maemo UI. Set the DISPLAY variable and start the UI.&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;&lt;code&gt;[sbox-FREMANTLE_X86:~] export DISPLAY=192.168.0.50:2&lt;br /&gt;[sbox-FREMANTLE_X86:~] af-sb-init.sh start&lt;/code&gt;&lt;/blockquote&gt;&lt;br /&gt;where 192.168.0.50 is the IP address of your Windows machine, and :2 is the screen number where your X Server is running.&lt;br /&gt;&lt;a style="float: right;" href="http://3.bp.blogspot.com/_VE_mli0pJvM/TBD1mW37AJI/AAAAAAAACkI/fKdD34urwHc/s1600/n900-screen.jpg"&gt;&lt;img style="cursor:pointer; cursor:hand;width: 320px; height: 203px; padding: 10px; padding-right: 0;" src="http://3.bp.blogspot.com/_VE_mli0pJvM/TBD1mW37AJI/AAAAAAAACkI/fKdD34urwHc/s320/n900-screen.jpg" border="0" alt="" id="BLOGGER_PHOTO_ID_5481150785833861266" /&gt;&lt;/a&gt;&lt;br /&gt;You may get a number of warnings about HAL, a VolumeMonitor and a cellular operator. You can safely ignore these.&lt;br /&gt;&lt;br /&gt;You should now be able to see the N900's home screen.&lt;br /&gt;&lt;br /&gt;That's it! Now &lt;a href="http://wiki.maemo.org/Documentation/Maemo_5_Developer_Guide/Development_Environment/Maemo_SDK#Writing_GUI_Hello_World"&gt;read the documentation&lt;/a&gt; and start programming!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7626566-3406601524257644512?l=geekwhorled.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/jN8zYwtNCXTqbx2jzCnsJwNGBh0/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/jN8zYwtNCXTqbx2jzCnsJwNGBh0/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/jN8zYwtNCXTqbx2jzCnsJwNGBh0/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/jN8zYwtNCXTqbx2jzCnsJwNGBh0/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/GeekWhorled/~4/iaX6ISWOcmw" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://geekwhorled.blogspot.com/feeds/3406601524257644512/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=7626566&amp;postID=3406601524257644512" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/7626566/posts/default/3406601524257644512?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/7626566/posts/default/3406601524257644512?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/GeekWhorled/~3/iaX6ISWOcmw/setting-up-maemo-5n900-dev-environment.html" title="Setting Up Maemo 5/N900 Dev Environment on Windows" /><author><name>Rajesh J Advani</name><uri>http://www.blogger.com/profile/10728053229392465570</uri><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/_VE_mli0pJvM/TBD1mW37AJI/AAAAAAAACkI/fKdD34urwHc/s72-c/n900-screen.jpg" height="72" width="72" /><thr:total>0</thr:total><feedburner:origLink>http://geekwhorled.blogspot.com/2010/06/setting-up-maemo-5n900-dev-environment.html</feedburner:origLink></entry><entry gd:etag="W/&quot;A0MBRX06eyp7ImA9WxFTFEo.&quot;"><id>tag:blogger.com,1999:blog-7626566.post-5474446188917666872</id><published>2010-04-05T20:25:00.000+05:30</published><updated>2010-04-05T20:27:34.313+05:30</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-04-05T20:27:34.313+05:30</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Technology" /><category scheme="http://www.blogger.com/atom/ns#" term="Android" /><title>BSNL 3G Settings for the Nexus One</title><content type="html">So I just got the Google Nexus One phone over the weekend, and decided to get a BSNL 3G connection to use with it. I picked the Rs 399/month plan which has a 1GB data limit.&lt;br /&gt;&lt;br /&gt;The SIM was activated within a few hours, but the problem was getting the access point settings for BSNL 3G for my phone. The Nexus One isn't sold in India, so when you send a "&amp;lt;MAKE&amp;gt; &amp;lt;MODEL&amp;gt;" SMS to 58355, BSNL doesn't recognize your phone.&lt;br /&gt;&lt;br /&gt;A lot of Googling and experimentation later, I finally have 3G working. This post is for those of you who want to use BSNL 3G with the Nexus One. Please note, this is for a Chennai post-paid connection. Settings might vary for other cities.&lt;br /&gt;&lt;br /&gt;&lt;ol&gt;&lt;li&gt;Open the &lt;b&gt;Settings&lt;/b&gt; application&lt;/li&gt;&lt;li&gt;Click on &lt;b&gt;Wireless &amp;amp; Networks&lt;/b&gt;&lt;/li&gt;&lt;li&gt;Click on &lt;b&gt;Mobile networks&lt;/b&gt;&lt;/li&gt;&lt;li&gt;Click on &lt;b&gt;Access Point Names&lt;/b&gt;&lt;/li&gt;&lt;li&gt;Bring up the Options menu (the second button from the left on the soft-touch pad, the one with the horizontal lines) and click &lt;b&gt;New APN&lt;/b&gt;&lt;/li&gt;&lt;li&gt;Use the following settings &lt;ul&gt;&lt;li&gt;Name: &lt;em&gt;Give any name here. I used &lt;b&gt;BSNL 3G&lt;/b&gt;&lt;/em&gt;&lt;/li&gt;&lt;li&gt;APN: &lt;b&gt;bsnlnet&lt;/b&gt; &lt;em&gt;(This might be the only thing you need to change depending on your city)&lt;/em&gt;&lt;/li&gt;&lt;li&gt;Proxy: &lt;em&gt;Leave this as &lt;b&gt;Not set&lt;/b&gt;&lt;/em&gt;&lt;/li&gt;&lt;li&gt;Port: &lt;em&gt;Leave this as &lt;b&gt;Not set&lt;/b&gt;&lt;/em&gt;&lt;/li&gt;&lt;li&gt;Username: &lt;em&gt;Leave this as &lt;b&gt;Not set&lt;/b&gt;&lt;/em&gt;&lt;/li&gt;&lt;li&gt;Password: &lt;em&gt;Leave this as &lt;b&gt;Not set&lt;/b&gt;&lt;/em&gt;&lt;/li&gt;&lt;li&gt;Server: &lt;em&gt;Leave this as &lt;b&gt;Not set&lt;/b&gt;&lt;/em&gt;&lt;/li&gt;&lt;li&gt;MMSC: &lt;em&gt;Leave this as &lt;b&gt;Not set&lt;/b&gt;&lt;/em&gt;&lt;/li&gt;&lt;li&gt;MMS Proxy: &lt;em&gt;Leave this as &lt;b&gt;Not set&lt;/b&gt;&lt;/em&gt;&lt;/li&gt;&lt;li&gt;MMS Port: &lt;em&gt;Leave this as &lt;b&gt;Not set&lt;/b&gt;&lt;/em&gt;&lt;/li&gt;&lt;li&gt;MCC: 404 &lt;em&gt;(This was the default value on my phone. I didn't change it)&lt;/em&gt;&lt;/li&gt;&lt;li&gt;MNC: 64 &lt;em&gt;(This was the default value on my phone. I didn't change it)&lt;/em&gt;&lt;/li&gt;&lt;li&gt;Authentication type: None&lt;/li&gt;&lt;li&gt;APN type: &lt;em&gt;Leave this as &lt;b&gt;Not set&lt;/b&gt;&lt;/em&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;/ol&gt;&lt;br /&gt;I'll probably want to figure out the MMS settings some day, but for now I don't need them.&lt;br /&gt;&lt;br /&gt;Do leave comments about whether this helped!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7626566-5474446188917666872?l=geekwhorled.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/rgZTLFdpaClBICtzNiLrjUx7h-A/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/rgZTLFdpaClBICtzNiLrjUx7h-A/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/rgZTLFdpaClBICtzNiLrjUx7h-A/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/rgZTLFdpaClBICtzNiLrjUx7h-A/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/GeekWhorled/~4/ECveheZvbYk" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://geekwhorled.blogspot.com/feeds/5474446188917666872/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=7626566&amp;postID=5474446188917666872" title="21 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/7626566/posts/default/5474446188917666872?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/7626566/posts/default/5474446188917666872?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/GeekWhorled/~3/ECveheZvbYk/bsnl-3g-settings-for-nexus-one.html" title="BSNL 3G Settings for the Nexus One" /><author><name>Rajesh J Advani</name><uri>http://www.blogger.com/profile/10728053229392465570</uri><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>21</thr:total><feedburner:origLink>http://geekwhorled.blogspot.com/2010/04/bsnl-3g-settings-for-nexus-one.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CUQEQXg6eSp7ImA9WxNUFE8.&quot;"><id>tag:blogger.com,1999:blog-7626566.post-7261124035345765731</id><published>2009-11-05T17:45:00.002+05:30</published><updated>2009-11-05T17:45:00.611+05:30</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-11-05T17:45:00.611+05:30</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Technology" /><category scheme="http://www.blogger.com/atom/ns#" term="Tools" /><category scheme="http://www.blogger.com/atom/ns#" term="Google Wave" /><title>Google Wave tips - 3 : Manage Your Inbox</title><content type="html">Google Wave's interface is similar to your average modern email client, in that it has an Inbox, allows you to create Folders, and allows you to Search for waves with various keywords.&lt;br /&gt;&lt;br /&gt;The important thing then, becomes that just like email, when a wave you are interested in gets updated, you should know as soon as possible. And if you are not interested in something anymore, you should be able to make it go away.&lt;br /&gt;&lt;br /&gt;&lt;dl&gt;&lt;dt&gt;Mark waves as Read/Unread&lt;/dt&gt;&lt;dd&gt;Just like Email, you can mark a Wave as Read or Unread. To do so, click the "Read" or "Unread" button in the toolbar on the wave pane. Unread waves show up in bold text in your inbox. Once you marking a wave as Read, you will see further updates marked differently when you open it. Newly inserted text will show up in yellow, deleted text will show up in red with a strike-through, and new blips will show up with a green vertical bar to the left.&lt;/dd&gt;&lt;dt&gt;Use folders to keep your Inbox clean&lt;/dt&gt;&lt;dd&gt;Reading Public waves is a good way to learn about how to use Google Wave, and discover gadgets, and robots, or find solutions to problems. However, as soon as you read a public wave, it will show up in your inbox. Read a few public waves, and your inbox gets cluttered, since every update to these waves sends them to the top of your inbox.&lt;/dd&gt;&lt;dd&gt;&lt;img style="float:left; margin:0 0 10px 10px;width: 192px; height: 139px;" src="http://3.bp.blogspot.com/_VE_mli0pJvM/SvKmigysPUI/AAAAAAAACi4/sTqNf5w0NgA/s400/gwave-add-folder.gif" border="0" alt=""id="BLOGGER_PHOTO_ID_5400562015018958146" /&gt;You can create folders, by clicking the (+) button next to the word "Folders" in the Navigation pane. &lt;img style="float:right; margin:0 0 10px 10px;width: 101px; height: 172px;" src="http://2.bp.blogspot.com/_VE_mli0pJvM/SvKnNUKwylI/AAAAAAAACjA/ixxoyrysrRU/s400/gwave-move-to.gif" border="0" alt=""id="BLOGGER_PHOTO_ID_5400562750364633682" /&gt; To move a wave to a folder, select the wave, then click "Move to" and select the folder. A wave that's moved to a folder, will show up in your inbox again when updated. Moving waves to folders makes it easier to find them later, if they've been archived. (more on that below)&lt;/dd&gt;&lt;dt&gt;Don't want to follow a wave anymore?&lt;/dt&gt;&lt;dd&gt;If you are no longer interested in knowing about updates to a wave, open that wave, and click the "Mute" button in the toolbar of the wave's pane. &lt;img style="float:right; margin:0 0 10px 10px;width: 116px; height: 39px;" src="http://4.bp.blogspot.com/_VE_mli0pJvM/SvLASFOXTfI/AAAAAAAACjI/dA-Ce1lKOqY/s400/gwave-mute-button.gif" border="0" alt=""id="BLOGGER_PHOTO_ID_5400590320043249138" /&gt; (Remember to use the Mute button in the toolbar rather than the one in the Search pane. The buttons in the Search pane don't always work as expected.) Doing this will remove the wave from your inbox, and you will never be notified of updates to it. This is also true of waves you may have edited, or even started. Also, at this time other followers of that wave will have no way of knowing that you have muted it, so they may continue with the conversation assuming you are reading their updates. However, muted waves still appear in your search results.&lt;/dd&gt;&lt;dd&gt;If you want to see all the waves you've muted, search for "is:mute".&lt;/dd&gt;&lt;dd&gt;If you want to search waves you've muted, append "is:mute" to the search query.&lt;/dd&gt;&lt;dd&gt;If you want to excluded muted waves from search results, add "-is:mute" to the search query.&lt;/dd&gt;&lt;dt&gt;Make a wave disappear till someone updates it&lt;/dt&gt;&lt;dd&gt;The lesser the number of waves that appear in your inbox, the easier it is to manage. So once you have read all the latest updates in a wave, you might not want it to show up in your inbox till someone updates it again. To do this, select the wave, and click the Archive button in the toolbar of the wave's pane.&lt;img style="float:right; margin:0 0 10px 10px;width: 120px; height: 39px;" src="http://1.bp.blogspot.com/_VE_mli0pJvM/SvLAlYdrUhI/AAAAAAAACjQ/qf3FUDCm0zo/s400/gwave-archive-button.gif" border="0" alt=""id="BLOGGER_PHOTO_ID_5400590651625263634" /&gt; (Again, remember to use the button on the wave pane, not the one on the Search pane.)&lt;/dd&gt;&lt;dt&gt;Ignore a wave and stop it from showing up in searches&lt;/dt&gt;&lt;dd&gt;&lt;img style="float:right; margin:0 0 10px 10px;width: 156px; height: 199px;" src="http://3.bp.blogspot.com/_VE_mli0pJvM/SvLA8uH84lI/AAAAAAAACjY/rkUo_7TM9E0/s400/gwave-trash-button.gif" border="0" alt=""id="BLOGGER_PHOTO_ID_5400591052576711250" /&gt; Muting a wave allows you to ignore any updates to a wave, but such a wave will still show up in your searches - with a small box with the word "Mute" near the title of the wave. If you are sure you have no interest in a wave anymore, you can send it to Trash. Just click the Trash button in the toolbar of the wave's pane. If your wave pane is too narrow, the Trash button might be hidden. Click the "..." button to show the remaining buttons on the toolbar. Just like Mute, other participants on a wave will not know you've sent that wave to your trash.&lt;/dd&gt;&lt;/dl&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7626566-7261124035345765731?l=geekwhorled.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/pjhYaIfvtTEVR27o8H89JtgTDcM/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/pjhYaIfvtTEVR27o8H89JtgTDcM/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/pjhYaIfvtTEVR27o8H89JtgTDcM/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/pjhYaIfvtTEVR27o8H89JtgTDcM/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/GeekWhorled/~4/KziBSEQHZD0" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://geekwhorled.blogspot.com/feeds/7261124035345765731/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=7626566&amp;postID=7261124035345765731" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/7626566/posts/default/7261124035345765731?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/7626566/posts/default/7261124035345765731?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/GeekWhorled/~3/KziBSEQHZD0/google-wave-tips-3-manage-your-inbox.html" title="Google Wave tips - 3 : Manage Your Inbox" /><author><name>Rajesh J Advani</name><uri>http://www.blogger.com/profile/10728053229392465570</uri><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/_VE_mli0pJvM/SvKmigysPUI/AAAAAAAACi4/sTqNf5w0NgA/s72-c/gwave-add-folder.gif" height="72" width="72" /><thr:total>0</thr:total><feedburner:origLink>http://geekwhorled.blogspot.com/2009/11/google-wave-tips-3-manage-your-inbox.html</feedburner:origLink></entry><entry gd:etag="W/&quot;D04MQXo_fSp7ImA9WxNUEkg.&quot;"><id>tag:blogger.com,1999:blog-7626566.post-6131046928476730052</id><published>2009-11-03T19:15:00.000+05:30</published><updated>2009-11-03T19:16:20.445+05:30</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-11-03T19:16:20.445+05:30</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Technology" /><category scheme="http://www.blogger.com/atom/ns#" term="Tools" /><category scheme="http://www.blogger.com/atom/ns#" term="Google Wave" /><title>Tips for new Google Wave users - 2</title><content type="html">So you are one of the lucky few who got a Google Wave invite, but you've been letting it go to waste because you just can't figure out how to use it.&lt;br /&gt;&lt;br /&gt;This is the second in my series of tips for Google Wave users, which should make it a little easier for you to start taking advantage of this new technology.&lt;br /&gt;&lt;br /&gt;&lt;dl&gt;&lt;dt&gt;Easily read new updates to a wave&lt;/dt&gt;&lt;dd&gt;If you're following a busy wave - one with a large number of users for example - the frequency of updates may make it difficult to follow the conversation, because Google Wave allows you to add replies anywhere, not just at the bottom of the wave. To go through all unread updates, us the SPACE key on your keyboard. Pressing will take you through all unread updates since they last time you read the wave, one by one.&lt;/dd&gt;&lt;dt&gt;Increase your screen real estate&lt;/dt&gt;&lt;dd&gt;If you have a monitor with a resolution of only 1024x768, you probably think the Google Wave user interface is very cramped. This is true. At such a low resolution, the existence of so many panes - Navigation, Contacts, Search, etc - leaves very little space for the wave you might be interested in. There are different ways of increasing how much you see on your screen.&lt;ul&gt;&lt;li&gt;Maximize the wave - This is the simplest way to see more of your wave. To do this, click the "Maximize" button (the square one) on the top right of your wave pane. &lt;img style="float:right; margin:0 0 10px 10px;width: 74px; height: 39px;" src="http://1.bp.blogspot.com/_VE_mli0pJvM/SvAv-NeiYKI/AAAAAAAACig/WeLLeC9OhI8/s400/gwave-wave-size-controls-max.gif" border="0" alt=""id="BLOGGER_PHOTO_ID_5399868699033362594" /&gt;The disadvantage of this, is that you can no longer see the other panes like Navigation and Search.&lt;/li&gt;&lt;li&gt;Resize the other panes - You can resize the other panes to make more space for your wave view pane. To do this, hover over the space between two panes, and you should see your mouse pointer turn into a resize icon.&lt;img style="float:right; margin:0 0 10px 10px;width: 108px; height: 257px;" src="http://3.bp.blogspot.com/_VE_mli0pJvM/SvAxp5E9IUI/AAAAAAAACiw/wyRYsIW-Hp0/s400/gwave-resize-control.gif" border="0" alt=""id="BLOGGER_PHOTO_ID_5399870548983226690" /&gt;&lt;/li&gt;&lt;li&gt;Decrease your browser's font size or Zoom Out - Most browsers allow you to reduce the font size of the content in a web page, or even zoom out the page completely. The default fonts used in Google Wave can seem a little large if your monitor is at a low resolution. Both Firefox 3.5 and Chrome, support 'Zoom Out', and using it (click Ctrl and '-' together) allows you to see more of your wave on a small screen. Using Zoom Out in Chrome, prevents you from resizing any panes for some reason. This is probably a bug in Google Wave that should get fixed at some point. It works well in Firefox though. Do note that many websites aren't tested to work well with browsers' Zoom Out feature, so it's possible that your experience might not be perfect.&lt;/li&gt;&lt;/ul&gt;&lt;/dd&gt;&lt;dt&gt;More easily make a wave public&lt;/dt&gt;&lt;dd&gt;There seems to be a new robot that makes waves public, which works a little better than public@a.gwave.com, which I mentioned in my previous post on Google Wave tips. The new robot has the address easypublic@appspot.com and doesn't continuously disappear from your contacts. However, easypublic is a user contributed robot, so there's no guarantee that it will always be around. Also, it seems a lot slower. I also expect public@a.gwave.com's issues to get fixed soon.&lt;/dd&gt;&lt;dt&gt;Keep your wave small&lt;/dt&gt;&lt;dd&gt;A lot of processing in the Wave UI is handled by Javascript, which runs in your browser. So a wave with a lot of data, or a large number of updates/blips, will be slower, since it is your browser on your desktop/laptop/netbook that processes it all. A large number of active participants can also slow your wave down.&lt;/dd&gt;&lt;dt&gt;Be careful about making a wave public&lt;/dt&gt;&lt;dd&gt;Once a wave is made public, it's not possible to make it private again (at least right now). And a public wave's history can be seen by anyone who has access to Google Wave. In the future, it'll probably be viewable by anyone whether they have Google Wave access or not. So if you added some private information to a wave, and then deleted it before making it public, anyone can playback your wave to see your data before it was deleted. This is true about adding any new participants to a wave. Everyone who has access to a wave, will be able to view all its history, no matter how late they were added.&lt;/dd&gt;&lt;/dl&gt;&lt;br /&gt;That's all for now. I will be back with new tips soon. Watch this space!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7626566-6131046928476730052?l=geekwhorled.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/IoI2yM8W5BrzU0r9GwxCEc7fyRo/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/IoI2yM8W5BrzU0r9GwxCEc7fyRo/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/IoI2yM8W5BrzU0r9GwxCEc7fyRo/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/IoI2yM8W5BrzU0r9GwxCEc7fyRo/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/GeekWhorled/~4/3Ytq1bXdkOA" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://geekwhorled.blogspot.com/feeds/6131046928476730052/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=7626566&amp;postID=6131046928476730052" title="1 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/7626566/posts/default/6131046928476730052?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/7626566/posts/default/6131046928476730052?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/GeekWhorled/~3/3Ytq1bXdkOA/tips-for-new-google-wave-users-2.html" title="Tips for new Google Wave users - 2" /><author><name>Rajesh J Advani</name><uri>http://www.blogger.com/profile/10728053229392465570</uri><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://1.bp.blogspot.com/_VE_mli0pJvM/SvAv-NeiYKI/AAAAAAAACig/WeLLeC9OhI8/s72-c/gwave-wave-size-controls-max.gif" height="72" width="72" /><thr:total>1</thr:total><feedburner:origLink>http://geekwhorled.blogspot.com/2009/11/tips-for-new-google-wave-users-2.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DUUAQno8fCp7ImA9WxNXFU8.&quot;"><id>tag:blogger.com,1999:blog-7626566.post-3122540684195387370</id><published>2009-10-03T05:15:00.000+05:30</published><updated>2009-10-03T05:17:23.474+05:30</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-10-03T05:17:23.474+05:30</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Technology" /><category scheme="http://www.blogger.com/atom/ns#" term="Tools" /><category scheme="http://www.blogger.com/atom/ns#" term="Google Wave" /><title>What's with Google Wave invites?</title><content type="html">There seems to be a lot of confusion with the 8 Google Wave invites that Google Wave Preview (not sandbox) users seem to have. I just thought I'd give my impressions of how they work.&lt;br /&gt;&lt;br /&gt;Quoting from the &lt;a href="http://googleblog.blogspot.com/2009/09/surfs-up-wednesday-google-wave-update.html"&gt;Google Blog&lt;/a&gt;&lt;br /&gt;&lt;blockquote&gt;Starting Wednesday, September 30 we'll be sending out more than 100,000 invitations to preview Google Wave to:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Developers who have been active in the developer preview we started back in June&lt;/li&gt;&lt;li&gt;The first users who signed up and offered to give feedback on wave.google.com&lt;/li&gt;&lt;li&gt;Select business and university customers of Google Apps&lt;/li&gt;&lt;/ul&gt;We'll ask some of these early users to nominate people they know also to receive early invitations — Google Wave is a lot more useful if your friends, family and colleagues have it too. This, of course, will just be the beginning. If all goes well we will soon be inviting many more to try out Google Wave.&lt;/blockquote&gt;&lt;br /&gt;My impressions -&lt;br /&gt;&lt;ol&gt;&lt;li&gt;They intend to quickly ramp up to 100,000 users, but quickly doesn't necessarily mean on Day 1.&lt;/li&gt;&lt;li&gt;They are aware of negative impressions that have already been aired, like Anil Dash's post on why he thinks &lt;a href="http://dashes.com/anil/2009/08/what-works-the-web-way-vs-the-wave-way.html"&gt;Google Wave will not catch on&lt;/a&gt;. Google Wave is complicated. The average user won't &lt;em&gt;get&lt;/em&gt; it yet.&lt;/li&gt;&lt;li&gt;It's really a Preview, not Beta like GMail when it first came out. GMail was fully functional. With Wave, even the requirements are still being worked out.&lt;/li&gt;&lt;li&gt;Google Wave is not an application or a service. Well not yet, anyway. Lars and his team are first trying to put a whole new type of infrastructure in place. They expect the user community to build the actual applications on top of it, given a few samples to show what's possible.&lt;/li&gt;&lt;li&gt;The reason for the preview is to figure out what the world wants to do with Wave. Look at the types of people they're inviting. Only Early Adopters. Not your average joe.&lt;/li&gt;&lt;li&gt;Security features aren't really that great on Google Wave yet. If it becomes easy for spammers to get on Google Wave, it could bring the whole thing down.&lt;/li&gt;&lt;li&gt;Invites aren't a "gift for someone you love". Invites are a necessity in Google Wave. They are the only way you can collaborate with people you already know. Collaboration with strangers is simply too chaotic. The public wave ecosystem in Google Waves is mostly a mess.&lt;/li&gt;&lt;li&gt;Given all this, they wouldn't want to use Invites the same way they did with GMail. They want to be very careful about who they actually hand out invites to. They want people who can take their vision, and shape Wave into something useful. And yet, they can't let these constraints get in the way of allowing people to create communities of people of their own choice, to collaborate with.&lt;/li&gt;&lt;/ol&gt;&lt;br /&gt;&lt;br /&gt;Now look at the Wave that allows you to invite others.&lt;br /&gt;&lt;br /&gt;&lt;img style="cursor:pointer; cursor:hand;width: 412px; height: 452px;" src="http://3.bp.blogspot.com/_VE_mli0pJvM/SsZ8UuOAR0I/AAAAAAAACho/QXY1asI1-oM/s1600/google-wave-invites-screen.gif" border="0" id="BLOGGER_PHOTO_ID_5388130699641374530" /&gt;&lt;br /&gt;Notice the following in this Wave -&lt;br /&gt;&lt;ol&gt;&lt;li&gt;&lt;b&gt;Invitations will not be sent immediately&lt;/b&gt; - They don't say how much of a delay there will be, though.&lt;/li&gt;&lt;li&gt;&lt;b&gt;Lot of stamps to lick&lt;/b&gt; - This makes it sound like invites will either go through a special process (approval?) before being sent out, or that they might send invitations out in phases ramping up at a pace they are more comfortable with.&lt;/li&gt;&lt;li&gt;&lt;b&gt;People you've &lt;em&gt;nominated&lt;/em&gt;&lt;/b&gt; - The word "nominated" here must mean that you don't make the choice of who gets on Wave next, but that you only make a suggestion. I see two possibilities. Either they use nominations to create a priority list for sending out invites, or they have some kind of approval workflow before accepting a nomination.&lt;/li&gt;&lt;/ol&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7626566-3122540684195387370?l=geekwhorled.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/JclQTWYQn_7wWvHFdbZrebuWZvM/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/JclQTWYQn_7wWvHFdbZrebuWZvM/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/JclQTWYQn_7wWvHFdbZrebuWZvM/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/JclQTWYQn_7wWvHFdbZrebuWZvM/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/GeekWhorled/~4/uEVhb9q7-8c" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://geekwhorled.blogspot.com/feeds/3122540684195387370/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=7626566&amp;postID=3122540684195387370" title="2 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/7626566/posts/default/3122540684195387370?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/7626566/posts/default/3122540684195387370?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/GeekWhorled/~3/uEVhb9q7-8c/whats-with-google-wave-invites.html" title="What's with Google Wave invites?" /><author><name>Rajesh J Advani</name><uri>http://www.blogger.com/profile/10728053229392465570</uri><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/_VE_mli0pJvM/SsZ8UuOAR0I/AAAAAAAACho/QXY1asI1-oM/s72-c/google-wave-invites-screen.gif" height="72" width="72" /><thr:total>2</thr:total><feedburner:origLink>http://geekwhorled.blogspot.com/2009/10/whats-with-google-wave-invites.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DEEASHc4fyp7ImA9WxNXFU8.&quot;"><id>tag:blogger.com,1999:blog-7626566.post-7812817463135200508</id><published>2009-10-03T05:00:00.002+05:30</published><updated>2009-10-03T05:07:29.937+05:30</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-10-03T05:07:29.937+05:30</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Technology" /><category scheme="http://www.blogger.com/atom/ns#" term="Google Wave" /><title>Google Wave: Embedding</title><content type="html">This post is just to demo the use of the Google Wave Embed API, to embed a Google Wave on this blog. At the time of this writing, you will only be able to see the Wave on this blog, if you have access to Google Wave.&lt;br /&gt;&lt;div style="width: 450px; height: 200px;" id="mywaveframe"&gt;&lt;/div&gt;&lt;br /&gt;&lt;script src="http://wave-api.appspot.com/public/embed.js" type="text/javascript"&gt;&lt;/script&gt;&lt;br /&gt;&lt;script type="text/javascript"&gt; var wavePanel = new WavePanel('http://wave.google.com/wave/'); wavePanel.setUIConfig('white', 'black', 'Verdana', '10px');   wavePanel.loadWave('googlewave.com!w+RhSPBtyUB'); wavePanel.init(document.getElementById('mywaveframe')); &lt;/script&gt;&lt;br /&gt;The code I've used for embedding this wave here is -&lt;br /&gt;&lt;div style="text-align: left; font-family: monospace"&gt;&lt;br /&gt;&amp;lt;div style="width: 450px; height: 200px;" id="mywaveframe"&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;&amp;lt;script src="http://wave-api.appspot.com/public/embed.js" type="text/javascript"&amp;gt;&amp;lt;/script&amp;gt;&lt;br /&gt;&amp;lt;script type="text/javascript"&amp;gt;&lt;br /&gt; var wavePanel = new WavePanel('http://wave.google.com/wave/');&lt;br /&gt; wavePanel.setUIConfig('white', 'black', 'Verdana', '10px');&lt;br /&gt; wavePanel.loadWave('googlewave.com!w+RhSPBtyUB'); &lt;br /&gt; wavePanel.init(document.getElementById('mywaveframe'));&lt;br /&gt;&amp;lt;/script&amp;gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7626566-7812817463135200508?l=geekwhorled.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/uP7ZB12_kOVI_LuyTdqb63G6cIU/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/uP7ZB12_kOVI_LuyTdqb63G6cIU/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/uP7ZB12_kOVI_LuyTdqb63G6cIU/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/uP7ZB12_kOVI_LuyTdqb63G6cIU/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/GeekWhorled/~4/hHIyO_2S9AQ" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://geekwhorled.blogspot.com/feeds/7812817463135200508/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=7626566&amp;postID=7812817463135200508" title="1 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/7626566/posts/default/7812817463135200508?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/7626566/posts/default/7812817463135200508?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/GeekWhorled/~3/hHIyO_2S9AQ/google-wave-embedding.html" title="Google Wave: Embedding" /><author><name>Rajesh J Advani</name><uri>http://www.blogger.com/profile/10728053229392465570</uri><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>1</thr:total><feedburner:origLink>http://geekwhorled.blogspot.com/2009/10/google-wave-embedding.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CkINQHo5fyp7ImA9WxNXFEk.&quot;"><id>tag:blogger.com,1999:blog-7626566.post-4700281159949899947</id><published>2009-10-02T05:10:00.001+05:30</published><updated>2009-10-02T05:13:11.427+05:30</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-10-02T05:13:11.427+05:30</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Technology" /><category scheme="http://www.blogger.com/atom/ns#" term="Google Wave" /><title>Tips for new Google Wave users - 1</title><content type="html">I've been using Google Wave on the sandbox off and on for a couple of months now, and like quite a few people, I got my Google Wave invite today. I just thought I'd provide some tips on using Google Wave for those of you who are new to it.&lt;br /&gt;&lt;br /&gt;Before I start though, if you have a Google Wave sandbox account already, just look in your Google Wave Inbox, for a wave titled "Enable your Google \/\/ave account". That's your Google Wave invitation!&lt;br /&gt;&lt;br /&gt;So, you've got the invite, and logged on to Google Wave. What next? &lt;br /&gt;&lt;br /&gt;&lt;dl&gt;&lt;dt&gt;See all Public waves&lt;/dt&gt;&lt;dd&gt;To get started, you can type "with:public" into your Wave search box. This allows you to see all public waves. Click around to see how people are using Google Wave.&lt;/dd&gt;&lt;dt&gt;Read the "Welcome Waves"&lt;/dt&gt;&lt;dd&gt;search for "tag:welcomewaves". These waves provide a good amount of information for new users.&lt;/dd&gt;&lt;dt&gt;Add robots&lt;/dt&gt;&lt;dd&gt;Robots are Google Wave extensions that can act on different events in a Wave (like adding a participant, or editing the wave). Try some of the robots at the &lt;a href="http://wave-samples-gallery.appspot.com/results?api=Robots"&gt;Wave Samples Gallery&lt;/a&gt;&lt;/dd&gt;&lt;dt&gt;Want to make your wave public?&lt;/dt&gt;&lt;dd&gt;To make a wave public, you need to add the "Public" robot as a participant. To do this, first click on the "+" in your Contacts panel, and add "public@a.gwave.com" to your contacts. If it gives an error saying the address is not a valid Google Wave account, ignore this, and just press Enter (the submit button is disabled, but pressing Enter submits the form anyway). The public bot should show up in your contacts. Now you can drag the public bot to your wave to make it public. Please note, at this time, making your wave public is a permanent change. There is no way to hide your Wave from others again. And deleting wave contents will not work either, since anyone can play back the history of the wave to see the Wave's contents before your deleted them.&lt;/dd&gt;&lt;dt&gt;Added a robot but want to remove it now?&lt;/dt&gt;&lt;dd&gt;Google Wave doesn't have a built-in way to remove a participant that you have added to a wave. But if you want to remove a robot from a wave, use the Bouncy robot. Add "bouncy-wave@appspot.com" to your wave, just like described above for the Public robot. Then, to remove a robot, type "bounce:robotaddress@domain.com" anywhere in the Wave. For example, if you added Polly the Pollster to a wave, but now want to remove it, you can type in "bounce:polly-wave@appspot.com" anywhere in the Wave.&lt;/dd&gt;&lt;/dl&gt;&lt;br /&gt;&lt;br /&gt;These are the first few tips for new users. If you found these useful, let me know and I'll post more tips.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7626566-4700281159949899947?l=geekwhorled.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/aD0YgNtYCkze3wrKabsfE9I6EYc/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/aD0YgNtYCkze3wrKabsfE9I6EYc/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/aD0YgNtYCkze3wrKabsfE9I6EYc/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/aD0YgNtYCkze3wrKabsfE9I6EYc/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/GeekWhorled/~4/Udq2jeHiG6k" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://geekwhorled.blogspot.com/feeds/4700281159949899947/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=7626566&amp;postID=4700281159949899947" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/7626566/posts/default/4700281159949899947?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/7626566/posts/default/4700281159949899947?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/GeekWhorled/~3/Udq2jeHiG6k/tips-for-new-google-wave-users-1.html" title="Tips for new Google Wave users - 1" /><author><name>Rajesh J Advani</name><uri>http://www.blogger.com/profile/10728053229392465570</uri><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><feedburner:origLink>http://geekwhorled.blogspot.com/2009/10/tips-for-new-google-wave-users-1.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CE4AR3c_cCp7ImA9WxJaEkU.&quot;"><id>tag:blogger.com,1999:blog-7626566.post-5337751650337330543</id><published>2009-08-02T20:45:00.002+05:30</published><updated>2009-08-03T12:32:26.948+05:30</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-08-03T12:32:26.948+05:30</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Technology" /><category scheme="http://www.blogger.com/atom/ns#" term="Tools" /><category scheme="http://www.blogger.com/atom/ns#" term="Google Wave" /><title>Google Wave: 1st Day And An Embedded Wave</title><content type="html">I got my Google Wave invitation yesterday, and didn't waste much time logging in. &lt;br /&gt;&lt;br /&gt;I've spent part of the last 24 hours figuring out how to deploy applications to Google App Engine, because from the little that I've explored on Google Wave, it looks like any robots/gadgets you build would need to be deployed there. I've not done a lot of homework on this so I could be wrong, of course, and will provide updates on this as I make progress.&lt;br /&gt;&lt;br /&gt;The rest of my time online, has pretty much been just exploring the Google Wave interface. The system is in a lot of flux - which is why they call it a 'developer preview' - and it's also such a different concept, that it's going to take the community some time to even figure out how to interact efficiently with the system. My personal project on this new platform is a robot that tries to address at least one aspect of this. I'll explain more once my thoughts are a little more concrete.&lt;br /&gt;&lt;br /&gt;For now, I'll just leave you with an embedded wave from my sandbox.&lt;br /&gt;&lt;br /&gt;&lt;img src="http://4.bp.blogspot.com/_VE_mli0pJvM/SnaJV57EF6I/AAAAAAAACgU/U-nwhddAp6I/s1600/wave-embed.png" border="0" alt="Google Embedded Wave Screenshot" id="BLOGGER_PHOTO_ID_5365627015477335970" /&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Update&lt;/b&gt;: Updated to use a screenshot, since the wave doesn't show up unless you are logged in to Google Wave. Since a majority of you wouldn't have Google Wave right now, I thought embedding an actual wave wouldn't be useful.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7626566-5337751650337330543?l=geekwhorled.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/6UMM4Nr1TMv09U1kxE3AqbQXRjk/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/6UMM4Nr1TMv09U1kxE3AqbQXRjk/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/6UMM4Nr1TMv09U1kxE3AqbQXRjk/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/6UMM4Nr1TMv09U1kxE3AqbQXRjk/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/GeekWhorled/~4/Anqhx2JydnY" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://geekwhorled.blogspot.com/feeds/5337751650337330543/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=7626566&amp;postID=5337751650337330543" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/7626566/posts/default/5337751650337330543?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/7626566/posts/default/5337751650337330543?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/GeekWhorled/~3/Anqhx2JydnY/google-wave-1st-day-and-embedded-wave.html" title="Google Wave: 1st Day And An Embedded Wave" /><author><name>Rajesh J Advani</name><uri>http://www.blogger.com/profile/10728053229392465570</uri><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/_VE_mli0pJvM/SnaJV57EF6I/AAAAAAAACgU/U-nwhddAp6I/s72-c/wave-embed.png" height="72" width="72" /><thr:total>0</thr:total><feedburner:origLink>http://geekwhorled.blogspot.com/2009/08/google-wave-1st-day-and-embedded-wave.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DEAERn0yeip7ImA9WxJWEU4.&quot;"><id>tag:blogger.com,1999:blog-7626566.post-4802233128316884281</id><published>2009-06-15T09:00:00.002+05:30</published><updated>2009-06-16T12:48:27.392+05:30</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-06-16T12:48:27.392+05:30</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Technology" /><category scheme="http://www.blogger.com/atom/ns#" term="Tools" /><category scheme="http://www.blogger.com/atom/ns#" term="Google Wave" /><title>Rosy: The Real Babel Fish</title><content type="html">I only just watched the Google Wave demo from Google I/O a couple of days ago, and the one demo that really amazed me was Rosy - the real-time translation robot.&lt;br /&gt;&lt;br /&gt;&lt;div class="youtube-video"&gt;&lt;object width="530" height="320"&gt;&lt;param name="movie" value="http://www.youtube.com/v/NOHwPgMXsNY&amp;amp;hl=en&amp;amp;fs=1&amp;amp;"&gt; &lt;param name="allowFullScreen" value="true"&gt; &lt;param name="allowscriptaccess" value="always"&gt; &lt;embed src="http://www.youtube.com/v/NOHwPgMXsNY&amp;amp;hl=en&amp;amp;fs=1&amp;amp;" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="530" height="320"&gt;&lt;/embed&gt;  &lt;/object&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;The demo shows two people who speak different languages, having a conversation - like on an instant messenger - with Rosy translating bank and forth, as they typed. Considering that 'Rosy' currently supports 40 different languages, just think of what such an invention would do to the world of communication. Language is no longer a barrier!&lt;br /&gt;&lt;br /&gt;As I was watching this video (or rather the full one at &lt;a href="http://wave.google.com/"&gt;Google Wave Preview&lt;/a&gt;) I realized that Rosy is actually the &lt;a href="http://en.wikipedia.org/wiki/Races_and_species_in_The_Hitchhiker%27s_Guide_to_the_Galaxy#Babel_fish"&gt;Babel Fish from The Hitchhiker's Guide to the Galaxy&lt;/a&gt;. It's currently in a form that works for written text, but mash it up with speech-to-text and text-to-speech tools, and you could do the same for spoken conversation. Pump in faster CPUs, and you could probably do the translation in real time.&lt;br /&gt;&lt;br /&gt;Whether Google Wave is a success or not, I think Rosy is going to really change things for how the world communicates.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7626566-4802233128316884281?l=geekwhorled.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/YVKXKdcIFIhOWXQndl5U57LAR_0/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/YVKXKdcIFIhOWXQndl5U57LAR_0/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/YVKXKdcIFIhOWXQndl5U57LAR_0/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/YVKXKdcIFIhOWXQndl5U57LAR_0/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/GeekWhorled/~4/MGts8LaO-CY" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://geekwhorled.blogspot.com/feeds/4802233128316884281/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=7626566&amp;postID=4802233128316884281" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/7626566/posts/default/4802233128316884281?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/7626566/posts/default/4802233128316884281?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/GeekWhorled/~3/MGts8LaO-CY/rosy-real-babel-fish.html" title="Rosy: The Real Babel Fish" /><author><name>Rajesh J Advani</name><uri>http://www.blogger.com/profile/10728053229392465570</uri><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><feedburner:origLink>http://geekwhorled.blogspot.com/2009/06/rosy-real-babel-fish.html</feedburner:origLink></entry><entry gd:etag="W/&quot;D04HQH04fyp7ImA9WxVaEkU.&quot;"><id>tag:blogger.com,1999:blog-7626566.post-1593975847558044500</id><published>2009-04-09T19:30:00.001+05:30</published><updated>2009-04-09T19:35:31.337+05:30</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-04-09T19:35:31.337+05:30</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Technology" /><category scheme="http://www.blogger.com/atom/ns#" term="Animation" /><title>Motion Capture - The perfect solution for 3D TV?</title><content type="html">I just saw &lt;a href="http://www.amazon.com/gp/product/B000IFRT2Y?ie=UTF8&amp;tag=rjablogs-20&amp;linkCode=as2&amp;camp=1789&amp;creative=390957&amp;creativeASIN=B000IFRT2Y"&gt;Monster House&lt;/a&gt;&lt;img src="http://www.assoc-amazon.com/e/ir?t=rjablogs-20&amp;l=as2&amp;o=1&amp;a=B000IFRT2Y" width="1" height="1" border="0" alt="" style="border:none !important; margin:0px !important;" /&gt; a few days ago on DVD, and had a chance to go through the special features. That was my first introduction to the idea of &lt;a href="http://en.wikipedia.org/wiki/Motion_capture"&gt;Motion Capture&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Monster House does not use traditional animation techniques, where the movements of every character or object in the movie, are essentially &lt;em&gt;programmed&lt;/em&gt; by CG animators. Instead, they use the trick of filming actual actors, wearing special markers on suits all over their body. The position of the markers is recorded by the cameras (at least 2 to ensure 3D data) during filming. This way the film-makers capture the 3-dimensional movement of the actors, and use that to animate the 3-d models on the screen. A similar technique is used to capture facial expressions, and is called Performance Capture.&lt;br /&gt;&lt;br /&gt;Motion Capture or mocap, as it is sometimes called, started as part of biomechanics research in the 70s and 80s. It has applications in education, military and athletics, among others. The use in computer animation is an innovation that greatly simplifies the process of animation. You no longer need to develop high-end mathematics to simulate the movement of characters on the screen. Even camera movement can be motion captured. &lt;br /&gt;&lt;br /&gt;But a lot of people (like the folks at Pixar) consider it 'cheating', since motion capture movies seem to take away the challenge of animation. Creating an animated movie using mocap becomes, to a large extent, simply an engineering exercise once the real actors have done their part. The acting, on the other hand, becomes a lot more challenging. The actors work in a wireframe set (all props are nothing more than wireframes) to allow the cameras to see all markers without obstruction, and the entire exercise feels like acting on stage, where the environment is all in your head.&lt;br /&gt;&lt;br /&gt;What makes mocap interesting to me, though, is its use in the creation of true 3D content. The new &lt;a href="http://www.wired.com/science/discoveries/news/2006/08/71627"&gt;3D TV&lt;/a&gt; technology which allows you to see 3D content without needing those awkward glasses. But the technology to create 3D content - other than pure animation - is currently lacking. It's not possible  to capture a real live action sequence for example, using conventional technology. For this reason, 3D TVs are currently only expected to be used for gaming.&lt;br /&gt;&lt;br /&gt;Using motion capture, though, if you wanted to film a movie where you want to see an action sequence from any angle, you would need to only capture the 3D models of the actors onto the computer, and animate those models from real actions performed by the actors. This would be a lot cheaper than capturing true 3D video, if that ever becomes possible.&lt;br /&gt;&lt;br /&gt;Of course, the technology is still nascent, and the techniques very cumbersome. But large-scale 3D entertainment is still some time away. So there's a lot of time to catch up.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7626566-1593975847558044500?l=geekwhorled.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/69j1aQE4epF2WT6KEKw4lZ_NbCQ/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/69j1aQE4epF2WT6KEKw4lZ_NbCQ/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/69j1aQE4epF2WT6KEKw4lZ_NbCQ/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/69j1aQE4epF2WT6KEKw4lZ_NbCQ/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/GeekWhorled/~4/4RCRlRQtTpE" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://geekwhorled.blogspot.com/feeds/1593975847558044500/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=7626566&amp;postID=1593975847558044500" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/7626566/posts/default/1593975847558044500?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/7626566/posts/default/1593975847558044500?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/GeekWhorled/~3/4RCRlRQtTpE/motion-capture-perfect-solution-for-3d.html" title="Motion Capture - The perfect solution for 3D TV?" /><author><name>Rajesh J Advani</name><uri>http://www.blogger.com/profile/10728053229392465570</uri><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><feedburner:origLink>http://geekwhorled.blogspot.com/2009/04/motion-capture-perfect-solution-for-3d.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DE8AQn45fCp7ImA9WxVaEE8.&quot;"><id>tag:blogger.com,1999:blog-7626566.post-2303141535676028451</id><published>2009-04-06T19:30:00.000+05:30</published><updated>2009-04-06T19:37:23.024+05:30</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-04-06T19:37:23.024+05:30</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Gadget Dreams" /><title>Tablets again</title><content type="html">It's been more than four years since I wrote the last post on this blog, and I thought that it would be nice to write my next post here on a related topic.&lt;br /&gt;&lt;br /&gt;The &lt;a href="http://geekwhorled.blogspot.com/2004/11/real-tablet.html"&gt;Viewsonic AirPanel devices&lt;/a&gt; are probably not coming back, and Viewsonic has even removed information about them from their site. But I seem to have found a replacement. This one is a lot smaller, but is capable of a lot more. Well, it's been 4 years. What did you expect?&lt;br /&gt;&lt;br /&gt;It's called the &lt;a href="http://www.amazon.com/gp/product/B000Y4AH3C?ie=UTF8&amp;tag=rjablogs-20&amp;linkCode=as2&amp;camp=1789&amp;creative=390957&amp;creativeASIN=B000Y4AH3C"&gt;Nokia N810 Portable Internet Tablet&lt;/a&gt;&lt;img src="http://www.assoc-amazon.com/e/ir?t=rjablogs-20&amp;l=as2&amp;o=1&amp;a=B000Y4AH3C" width="1" height="1" border="0" alt="" style="border:none !important; margin:0px !important;" /&gt;. Just like the last post, I'm a year and a half late in noticing the device, but that doesn't take away from the drool factor at all. The features can be summed up as follows: &lt;br /&gt;&lt;ul&gt;&lt;li&gt;Ultra portable computer, with 128MB RAM and 2GB internal storage&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Supports external storage up to 8GB via SD/SDHC/miniSD/microSD/MMC cards&lt;/li&gt;&lt;br /&gt;&lt;li&gt;4.1" screen - 800 x 400px with 64k colors&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Touch screen&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Full QWERTY keyboard&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Built-in webcam&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Wi-Fi Connectivity&lt;/li&gt;&lt;br /&gt;&lt;li&gt;GPS Receiver&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Support for playing a large number of media formats&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Runs Linux, and is hackable! &lt;i&gt;(the geek factor)&lt;/i&gt;&lt;/li&gt;&lt;br /&gt;&lt;/ul&gt;&lt;br /&gt;With those specs, it's a tiny computer, as well as a &lt;a href="http://en.wikipedia.org/wiki/Portable_media_player" title="Portable Media Player"&gt;PMP&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;So how is it a replacement for an AirPanel?&lt;br /&gt;&lt;br /&gt;Well, think about it. It runs Linux, and is hackable. Which means you can run arbitrary software on it. Which in turn means that installing a &lt;a href="http://en.wikipedia.org/wiki/Vnc"&gt;VNC&lt;/a&gt; or &lt;a href="http://en.wikipedia.org/wiki/Remote_Desktop_Protocol"&gt;RDP&lt;/a&gt; client makes it possible to use the device as a hand-held graphical dumb terminal - like the AirPanel. Of course, the small screen may be a constraint for some, but it's so much more portable!&lt;br /&gt;&lt;br /&gt;The improvements that would definitely be noticed (in the n820/n850 if it ever gets made) are:&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;8GB internal storage&lt;br /&gt;&lt;ul&gt;&lt;li&gt;The cost of flash memory is dropping so fast, that this shouldn't be a problem at all.&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;br /&gt;&lt;li&gt;A video output port for devices like the &lt;a href="http://www.amazon.com/gp/product/B001A755Y8?ie=UTF8&amp;tag=rjablogs-20&amp;linkCode=as2&amp;camp=1789&amp;creative=390957&amp;creativeASIN=B001A755Y8"&gt;Myvu Personal Media Viewer&lt;/a&gt;&lt;img src="http://www.assoc-amazon.com/e/ir?t=rjablogs-20&amp;l=as2&amp;o=1&amp;a=B001A755Y8" width="1" height="1" border="0" alt="" style="border:none !important; margin:0px !important;" /&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;The video output port is available on the N95, so Nokia has already done this before.&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;br /&gt;&lt;li&gt;External SDHC support up to 32GB&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Support for up to 32GB external memory via SDHC would put it into direct competition with the high-capacity iPod Touch.&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;br /&gt;&lt;li&gt;24-bit or 32-bit color&lt;br /&gt;&lt;ul&gt;&lt;li&gt;This would make it much better for playing videos.&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;br /&gt;&lt;li&gt;More RAM (192-256MB)&lt;br /&gt;&lt;ul&gt;&lt;li&gt;I'm just getting greedy!&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;/ul&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7626566-2303141535676028451?l=geekwhorled.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/yTRyrjXDUXZQTY3CdvjKDnmhYBM/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/yTRyrjXDUXZQTY3CdvjKDnmhYBM/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/yTRyrjXDUXZQTY3CdvjKDnmhYBM/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/yTRyrjXDUXZQTY3CdvjKDnmhYBM/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/GeekWhorled/~4/Ig-coqwNLjU" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://geekwhorled.blogspot.com/feeds/2303141535676028451/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=7626566&amp;postID=2303141535676028451" title="2 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/7626566/posts/default/2303141535676028451?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/7626566/posts/default/2303141535676028451?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/GeekWhorled/~3/Ig-coqwNLjU/tablets-again.html" title="Tablets again" /><author><name>Rajesh J Advani</name><uri>http://www.blogger.com/profile/10728053229392465570</uri><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>2</thr:total><feedburner:origLink>http://geekwhorled.blogspot.com/2009/04/tablets-again.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DE8NR385fyp7ImA9WxVaEE8.&quot;"><id>tag:blogger.com,1999:blog-7626566.post-109992749082562934</id><published>2004-11-08T19:32:00.000+05:30</published><updated>2009-04-06T19:38:16.127+05:30</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-04-06T19:38:16.127+05:30</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Gadget Dreams" /><title>The Real Tablet</title><content type="html">Yes, I'm a geek.
&lt;br /&gt;
&lt;br /&gt;I drool over all new things electronic. Sometimes, even things mechanical. But then once in a while something comes along that makes me freeze suddenly (so that I end up standing with the posture of a bored gorilla) and raise my hand slowly to point at it, drool dripping in slow motion, splashing to the floor in the manner of giant water missile - saying "I... Want... That!" in long sonorous syllables.
&lt;br /&gt;
&lt;br /&gt;I recently came across something, however, that is not really new. In fact, it's so &lt;span style="font-style: italic;"&gt;not new&lt;/span&gt;, that the idea of the device was dropped by Microsoft a year ago.
&lt;br /&gt;
&lt;br /&gt;What I'm talking about, is &lt;a href="http://www.viewsonic.com/support/mobilewireless/airpanelsmartdisplays/airpanelv150p/"&gt;Viewsonic's AirPanel devices&lt;/a&gt;, which are based on &lt;a href="http://www.microsoft.com/windows/smartdisplay/default.mspx"&gt;Microsoft's Smart Display&lt;/a&gt; technology. The devices came out early in 2003, but got a very cold response.
&lt;br /&gt;
&lt;br /&gt;The Smart Display devices are essentially LCD panels powered by Windows CE, which connect to your desktop over a 802.11b wireless network, allowing you to access your desktop from anywhere in the office or home using the device as a portable screen and the touch-sensitive screen for text-entry. It's like having a laptop, only you don't need to synch data up with your desktop since the files you are using &lt;span style="font-style: italic;"&gt;are &lt;/span&gt;on your desktop.
&lt;br /&gt;
&lt;br /&gt;One of the problems with this device that got some attention from the users, was that it locked up the host PC while using the air panel remotely. If you wanted to access your PC directly, you'd have to disconnect the Smart Display.
&lt;br /&gt;
&lt;br /&gt;The other problem with it, in my opinion, was the cost. A 15" Viewsonic Airpanel cost around $950, and a 10" one cost around $450. There are models of Smart Displays that cost around $1500.
&lt;br /&gt;People would rather buy a laptop for $1000 than spend money on a new device that is really a remote display/keyboard for your desktop PC. All that money for a screen?
&lt;br /&gt;
&lt;br /&gt;And yet, I await the return of the Smart Display. Because if it does return with these two problems fixed, I know I'll be doing my drooling gorilla impression.
&lt;br /&gt;
&lt;br /&gt;&lt;span style="font-style: italic;"&gt;P.S.: Does anyone know of a Linux version of the Smart Display?
&lt;br /&gt;
&lt;br /&gt;P.P.S.: Firefox 1.0 is supposed to be coming out tomorrow. Anything on the rumor mill?
&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/7626566-109992749082562934?l=geekwhorled.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/v6nB2VopGejiryFAM_KvDhkoog0/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/v6nB2VopGejiryFAM_KvDhkoog0/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/v6nB2VopGejiryFAM_KvDhkoog0/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/v6nB2VopGejiryFAM_KvDhkoog0/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/GeekWhorled/~4/yPb5F0iuQzU" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://geekwhorled.blogspot.com/feeds/109992749082562934/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=7626566&amp;postID=109992749082562934" title="1 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/7626566/posts/default/109992749082562934?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/7626566/posts/default/109992749082562934?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/GeekWhorled/~3/yPb5F0iuQzU/real-tablet.html" title="The &lt;i&gt;Real&lt;/i&gt; Tablet" /><author><name>Rajesh J Advani</name><uri>http://www.blogger.com/profile/10728053229392465570</uri><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>1</thr:total><feedburner:origLink>http://geekwhorled.blogspot.com/2004/11/real-tablet.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DUEBRXc6eyp7ImA9WR9aEU0.&quot;"><id>tag:blogger.com,1999:blog-7626566.post-109910765491348555</id><published>2004-10-30T08:34:00.000+05:30</published><updated>2004-10-30T09:10:54.913+05:30</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2004-10-30T09:10:54.913+05:30</app:edited><title>GMail not so secure?</title><content type="html">Apparently, that cool feature of GMail where you needn't login more than once in two weeks, can be used to &lt;a href="http://slashdot.org/article.pl?sid=04/10/29/1830247"&gt;login to GMail accounts without a password&lt;/a&gt;.
&lt;br /&gt;
&lt;br /&gt;All that someone needs to do is get their hands on the cookie that GMail saves on your PC to allow you through without a password, and then they'd be able to access your gMail.
&lt;br /&gt;
&lt;br /&gt;The method mentioned in the linked article is one that uses &lt;a href="http://www.cgisecurity.com/articles/xss-faq.shtml"&gt;XSS (Cross site scripting)&lt;/a&gt;. The other method is sniffing the network to get your cookie, and the third is if someone gets access to your harddrive to get to the locations where your browser stores your cookies.
&lt;br /&gt;
&lt;br /&gt;The problem is that the way GMail has implemented this, means that you can't stop the intruder from accessing your GMail even if you change your password, or log out.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7626566-109910765491348555?l=geekwhorled.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/jG0xoHt0tE1jZcr1k_N24Jpq_Ho/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/jG0xoHt0tE1jZcr1k_N24Jpq_Ho/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/jG0xoHt0tE1jZcr1k_N24Jpq_Ho/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/jG0xoHt0tE1jZcr1k_N24Jpq_Ho/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/GeekWhorled/~4/gn4BQIduTyY" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://geekwhorled.blogspot.com/feeds/109910765491348555/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=7626566&amp;postID=109910765491348555" title="1 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/7626566/posts/default/109910765491348555?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/7626566/posts/default/109910765491348555?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/GeekWhorled/~3/gn4BQIduTyY/gmail-not-so-secure.html" title="GMail not so secure?" /><author><name>Rajesh J Advani</name><uri>http://www.blogger.com/profile/10728053229392465570</uri><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>1</thr:total><feedburner:origLink>http://geekwhorled.blogspot.com/2004/10/gmail-not-so-secure.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DE4BQXgyfip7ImA9WxVaEE8.&quot;"><id>tag:blogger.com,1999:blog-7626566.post-109789931471995104</id><published>2004-10-16T09:31:00.000+05:30</published><updated>2009-04-06T19:39:10.696+05:30</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-04-06T19:39:10.696+05:30</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Tools" /><title>Testing w.bloggar (offline blogging tool)</title><content type="html">I'm testing this blogging tool I downloaded, called &lt;a href="http://wbloggar.com"&gt;w.bloggar&lt;/a&gt;. It's an offline blogging tool so I can write posts even if my laptop's not on the net.&lt;br /&gt;&lt;br /&gt;The thing is, since Blogger's own online posting interface is so good, posting using this offline tool doesn't really make much sense unless you want to write posts offline.&lt;br /&gt;I wonder if writing posts here will break anything on the site...&lt;br /&gt;&lt;br /&gt;But anyway, how in the world do you select a title for the post?&lt;br /&gt;.&lt;br /&gt;.&lt;br /&gt;.&lt;br /&gt;So, I posted the blog using the tool, and then I have to log in on the site to enter a title? Pretty nutty...&lt;br /&gt;.&lt;br /&gt;.&lt;br /&gt;.&lt;br /&gt;Ok. So I goofed up. When you create a new account with w.bloggar (a new account does not mean you sign up with Blogger again), select "Blogger (With Title)". Even though the icon is Blue instead of Orange. Not sure what that "No Title" thing means at all...&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7626566-109789931471995104?l=geekwhorled.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/ZPnACsogMYksyXWth6QzvZ2ZJy8/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/ZPnACsogMYksyXWth6QzvZ2ZJy8/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/ZPnACsogMYksyXWth6QzvZ2ZJy8/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/ZPnACsogMYksyXWth6QzvZ2ZJy8/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/GeekWhorled/~4/QyicLG4eh3w" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://geekwhorled.blogspot.com/feeds/109789931471995104/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=7626566&amp;postID=109789931471995104" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/7626566/posts/default/109789931471995104?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/7626566/posts/default/109789931471995104?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/GeekWhorled/~3/QyicLG4eh3w/testing-wbloggar-offline-blogging-tool.html" title="Testing w.bloggar (offline blogging tool)" /><author><name>Rajesh J Advani</name><uri>http://www.blogger.com/profile/10728053229392465570</uri><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><feedburner:origLink>http://geekwhorled.blogspot.com/2004/10/testing-wbloggar-offline-blogging-tool.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DU8AQXw9eCp7ImA9WR9WEE8.&quot;"><id>tag:blogger.com,1999:blog-7626566.post-109502784026169548</id><published>2004-09-13T03:46:00.000+05:30</published><updated>2004-09-13T03:54:00.260+05:30</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2004-09-13T03:54:00.260+05:30</app:edited><title>Firewalls</title><content type="html">I'm logged on using AOL right now, and thank goodness I've got Norton Personal Firewall installed. People have been trying to access my computer remotely, really frequently. Almost like 30 times every hour. Some IP addresses are specially notorious. It wasn't one-tenth as bad when I had broadband for three months in St Louis.
&lt;br /&gt;
&lt;br /&gt;Lesson for the week? Don't even dare to get on the internet without adequate protection.
&lt;br /&gt;Which, of course, means the internet security suite from a major vendor, like Norton or McAfee.
&lt;br /&gt;
&lt;br /&gt;Of course, if you're using Linux you probably have to do a little more. Or less, depending on your experience with the OS.
&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7626566-109502784026169548?l=geekwhorled.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/SVEaGwvyUPhgKnhCf5eeCGwbH98/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/SVEaGwvyUPhgKnhCf5eeCGwbH98/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/SVEaGwvyUPhgKnhCf5eeCGwbH98/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/SVEaGwvyUPhgKnhCf5eeCGwbH98/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/GeekWhorled/~4/KM5Ng-UuYJE" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://geekwhorled.blogspot.com/feeds/109502784026169548/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=7626566&amp;postID=109502784026169548" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/7626566/posts/default/109502784026169548?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/7626566/posts/default/109502784026169548?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/GeekWhorled/~3/KM5Ng-UuYJE/firewalls.html" title="Firewalls" /><author><name>Rajesh J Advani</name><uri>http://www.blogger.com/profile/10728053229392465570</uri><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><feedburner:origLink>http://geekwhorled.blogspot.com/2004/09/firewalls.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CUYGSXs7fip7ImA9WxFbF0U.&quot;"><id>tag:blogger.com,1999:blog-7626566.post-109162054461830724</id><published>2004-08-04T17:25:00.001+05:30</published><updated>2010-07-10T23:02:08.506+05:30</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-07-10T23:02:08.506+05:30</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="Tools" /><title>Setting Up Emacs - 1 of Many</title><content type="html">&lt;span style="font-style: italic;"&gt;Disclaimer - For conciseness (and to save time), I will skip some details that I consider basic in this series. I may come back to this post later and update it to be more step-by-step, but as of now, I won't do that. Questions are always welcome, and I'll try my best to keep these posts useful to as many people as possible.&lt;/span&gt; &lt;br /&gt;
&lt;br /&gt;
I began using Emacs full-time, in March 2000, so my &lt;span style="font-family:courier new;"&gt;.emacs &lt;/span&gt;file had become somewhat large before I lost it. I guess this may be somewhat Greek to some of you, so I'll also give a bit of Emacs history and background information. For the impatient, this post is divided into the following sections. Just click on the one that interests you. &lt;br /&gt;
&lt;br /&gt;
&lt;a href="#history"&gt;History and background&lt;/a&gt; &lt;br /&gt;
&lt;a href="#using"&gt;Using Emacs&lt;/a&gt; &lt;br /&gt;
&lt;a href="#customize"&gt;Customizing Emacs&lt;/a&gt; &lt;br /&gt;
&lt;br /&gt;
&lt;h4&gt;&lt;a name="history"&gt;History and Background&lt;/a&gt;&lt;/h4&gt;Emacs, has its roots in Unix, though it started out as a set of macros written in 1976 at MIT by RMS (Richard Stallman) for the editor TECO under ITS on a PDP-10. It soon developed into a customizable editor that can today be used for everything from browsing your harddisk, programming (using practically any programming language ever developed), shell programming, accessing a database (including but not limited to Oracle, DB2, MySQL, SQL Server), version control (using CVS, Clearcase, SourceSafe and other tools), browsing the web, checking your mail, playing tetris, and more! Emacs even doubles up as your psychiatrist! (Help -&gt; Emacs Psychotherapist)&lt;br /&gt;
&lt;br /&gt;
Interested? Well, read on! &lt;br /&gt;
&lt;br /&gt;
&lt;h4&gt;&lt;a name="using"&gt;Using Emacs&lt;/a&gt;&lt;/h4&gt;To begin using Emacs (I'm assuming you're using Windows. If you're not, you're probably smart enough to change the below instructions to suit you anyway), you need to do the following: &lt;br /&gt;
&lt;ol&gt;&lt;li&gt;Download the Emacs installer from http://ftp.gnu.org/pub/gnu/windows/emacs/ (download the &lt;span style="font-style: italic;"&gt;fullbin&lt;/span&gt; &lt;span style="font-family:courier new;"&gt;tar.gz&lt;/span&gt; file)&lt;/li&gt;
&lt;li&gt;Extract it (Winzip can extract &lt;span style="font-family:courier new;"&gt;tar.gz&lt;/span&gt; files) to a convenient location on your hard-drive like &lt;span style="font-weight: bold;"&gt;C:\&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;Execute  &lt;span style="font-family:courier new;"&gt;&amp;lt;emacs-folder&amp;gt;\bin\runemacs.exe&lt;/emacs-folder&gt;&lt;/span&gt; to start Emacs.&lt;/li&gt;
&lt;li&gt;Once Emacs has started, press &lt;span style="font-family:courier new;"&gt;Ctrl-h, t &lt;/span&gt;to start the tutorial&lt;/li&gt;
&lt;li&gt;Read the tutorial and follow it. This will teach you basic navigation within emacs - which is very different from how you normally do it in Windows. For example, the standard Ctrl-X, Ctrl-V for Copy/Paste doesn't work in Emacs by default. You can make it work, and there are packages like &lt;span style="font-style: italic;"&gt;cua.el &lt;/span&gt;which enable a large number of windows-type key-bindings, but I don't recommend them. If you're using Emacs, you might as well get used to the default key-bindings, because sooner or later you &lt;span style="font-style: italic;"&gt;will &lt;/span&gt;fall in love with them.&lt;/li&gt;
&lt;li&gt;Read the manual. This is accessible from the menu at Help-&gt;Read The Emacs Manual. &lt;br /&gt;
&lt;/li&gt;
&lt;li&gt;Use Emacs as your editor exclusively for a few weeks (it took me around a month to become fully productive on Emacs with Java. This was mainly because of the time it took me to set up JDEE, so it might not be so bad for you if I can document the JDEE part on this blog). You might be tempted, because of the steep learning curve, to forget about the whole exercise. However, if you are patient, the rewards are indeed great. &lt;br /&gt;
&lt;/li&gt;
&lt;/ol&gt;&lt;br /&gt;
&lt;h4&gt;&lt;a name="customize"&gt;Customizing Emacs&lt;/a&gt;&lt;/h4&gt;The Emacs initialization file - which is what you use to customize Emacs to work the way you want, is called ".emacs". You cannot create a file with this name directly in Windows, so you'll need to create it from within Emacs itself. (The alternative is to call the file "_emacs", but since you &lt;span style="font-style: italic;"&gt;can &lt;/span&gt;create a .emacs file, this is no longer necessary). The location of this file, is your HOME directory. To find out the location of your HOME directory, type the following in a freshly opened command prompt (Type "cmd" under Start-&gt;Run, or "command.com" if you are using Windows 9x/Me). &lt;br /&gt;
&lt;br /&gt;
&lt;span style="font-family:courier new;"&gt;prompt&gt; echo %HOME%&lt;/span&gt; &lt;br /&gt;
&lt;br /&gt;
If it gives you blank output, then you can assume this to be &lt;span style="font-weight: bold;"&gt;C:\&lt;/span&gt;. The HOME environment variable is not commonly found on Windows systems, but is important in the Unix World. Unixy applications assume a location of C:\ if one is not defined in your Environment Variable list. &lt;br /&gt;
&lt;br /&gt;
One of the first things I do when I download Emacs and start with a new .emacs, is add these entries - &lt;br /&gt;
&lt;br /&gt;
&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;(setq default-frame-alist&lt;/span&gt; &lt;br /&gt;
&lt;span style="font-family:courier new;"&gt;      '((top . 0)&lt;/span&gt; &lt;br /&gt;
&lt;span style="font-family:courier new;"&gt;        (left . 190)&lt;/span&gt; &lt;br /&gt;
&lt;span style="font-family:courier new;"&gt;        (width . 130)&lt;/span&gt; &lt;br /&gt;
&lt;span style="font-family:courier new;"&gt;        (height . 66)&lt;/span&gt; &lt;br /&gt;
&lt;span style="font-family:courier new;"&gt;        (font . "-outline-Lucida Console-normal-r-normal-normal-12-90-96-96-c-*-iso10646-1")&lt;/span&gt; &lt;br /&gt;
&lt;span style="font-family:courier new;"&gt;    )&lt;/span&gt; &lt;br /&gt;
&lt;span style="font-family:courier new;"&gt;      )&lt;/span&gt; &lt;br /&gt;
&lt;br /&gt;
&lt;span style="font-family:courier new;"&gt;(global-set-key (quote [f3]) (quote other-window))&lt;/span&gt; &lt;br /&gt;
&lt;span style="font-family:courier new;"&gt;(global-set-key (quote [home]) (quote beginning-of-buffer))&lt;/span&gt; &lt;br /&gt;
&lt;span style="font-family:courier new;"&gt;(global-set-key (quote [end]) (quote end-of-buffer))&lt;/span&gt; &lt;br /&gt;
&lt;span style="font-family:courier new;"&gt;(global-set-key (quote [C-M-down]) (quote View-scroll-line-forward))&lt;/span&gt; &lt;br /&gt;
&lt;span style="font-family:courier new;"&gt;(global-set-key (quote [C-M-up]) (quote View-scroll-line-backward))&lt;/span&gt; &lt;br /&gt;
&lt;/span&gt; &lt;br /&gt;
I've got quite used to them, and find them indispensible. &lt;br /&gt;
The first bit, resizes and positions my emacs window on startup, and sets my default font to Lucida-Console, with a font size of 9. This is quite small but I have a large monitor, so you might want to decide what your favourite font and size are. To find out the right string for your font, do this. &lt;br /&gt;
&lt;ol&gt;&lt;li&gt;Paste this in your *scratch* buffer: &lt;span style="font-family:courier new;"&gt;(insert (prin1-to-string (w32-select-font)))&lt;/span&gt; &lt;br /&gt;
&lt;/li&gt;
&lt;li&gt;Keep the cursor at the end of the line that you just pasted, and press Ctrl-J. This will pop up a Font-selection dialog&lt;/li&gt;
&lt;li&gt;Select the font, size and style of your choice.&lt;/li&gt;
&lt;li&gt;Press Ok.&lt;/li&gt;
&lt;li&gt;The string that Emacs pastes back in the *scratch* buffer, is the full name of your font.&lt;/li&gt;
&lt;/ol&gt;For the resizing and positioning of the Emacs window, you can either delete those sections, or experiment and decide what works for you. The top and left parameters are pixel values, whereas width and height are measured in number of characters in your selected font. &lt;br /&gt;
&lt;br /&gt;
The next bit from my &lt;span style="font-family:courier new;"&gt;.emacs &lt;/span&gt;file sets up my favourite key-bindings. &lt;br /&gt;
&lt;span style="font-weight: bold;"&gt;F3&lt;/span&gt;, is the key I use to change buffers with a single key. The standard Emacs shortcut for this is &lt;span style="font-weight: bold;"&gt;C-x o&lt;/span&gt;. &lt;br /&gt;
&lt;br /&gt;
The &lt;span style="font-weight: bold;"&gt;Home &lt;/span&gt;key on Unix and older versions of Emacs on Windows takes you to the beginning of the file, and the &lt;span style="font-weight: bold;"&gt;End &lt;/span&gt;key takes you to the end of the file. In Windows editors, the standard behaviour is to take you to the beginning or the end of the line. I like the way Unix works, and having it behave differently on Windows confuses me when I have to work on a Linux machine. So I set these keys up appropriately. &lt;br /&gt;
The last two, are for scrolling a file one line at a time, instead of by page. I like the Ctrl-Alt-Up and Ctrl-Alt-Down keys for this. &lt;br /&gt;
&lt;br /&gt;
I also customize the following variables (&lt;span style="font-weight: bold;"&gt;M-x customize-variable&lt;/span&gt;): &lt;br /&gt;
&lt;ol&gt;&lt;li&gt;&lt;span style="font-weight: bold;"&gt;blink-cursor&lt;/span&gt; to &lt;span style="font-style: italic;"&gt;nil&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style="font-style: italic;"&gt;&lt;/span&gt;&lt;span style="font-weight: bold;"&gt;delete-selection-mode&lt;/span&gt; to &lt;span style="font-style: italic;"&gt;t&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style="font-weight: bold;"&gt;global-font-lock-mode&lt;/span&gt; to &lt;span style="font-style: italic;"&gt;t&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style="font-weight: bold;"&gt;transient-mark-mode&lt;/span&gt; to &lt;span style="font-style: italic;"&gt;t&lt;/span&gt;&lt;/li&gt;
&lt;/ol&gt;The first turns off the blinking of the cursor, the second allows me to delete any selected text in one stroke using the &lt;span style="font-weight: bold;"&gt;Del&lt;/span&gt; key, the third turns on syntax-specific colouring for recognized file-types, and the last allows me to see selected text as highlighted. &lt;br /&gt;
&lt;br /&gt;
Setting up Emacs with JDEE, Cygwin and other cool tools will be covered in future posts. &lt;br /&gt;
&lt;br /&gt;
More soon.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7626566-109162054461830724?l=geekwhorled.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/DBUJQ3RADFYRgmMgWLrPS71xRs8/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/DBUJQ3RADFYRgmMgWLrPS71xRs8/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/DBUJQ3RADFYRgmMgWLrPS71xRs8/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/DBUJQ3RADFYRgmMgWLrPS71xRs8/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/GeekWhorled/~4/RYBZyeruG_g" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://geekwhorled.blogspot.com/feeds/109162054461830724/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=7626566&amp;postID=109162054461830724" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/7626566/posts/default/109162054461830724?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/7626566/posts/default/109162054461830724?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/GeekWhorled/~3/RYBZyeruG_g/setting-up-emacs-1-of-many.html" title="Setting Up Emacs - 1 of Many" /><author><name>Rajesh J Advani</name><uri>http://www.blogger.com/profile/10728053229392465570</uri><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><feedburner:origLink>http://geekwhorled.blogspot.com/2004/08/setting-up-emacs-1-of-many.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DUENSHs5fip7ImA9WR9SFUQ.&quot;"><id>tag:blogger.com,1999:blog-7626566.post-109153650097612606</id><published>2004-08-03T16:42:00.000+05:30</published><updated>2004-08-04T11:04:59.526+05:30</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2004-08-04T11:04:59.526+05:30</app:edited><title>Setting stuff up</title><content type="html">After returning from my last trip to the US, I've been trying to setup the programming environment that I had on my PC before July 2003 (yes, I know, it's been a long time).
&lt;br /&gt;
&lt;br /&gt;This &lt;span style="font-style: italic;"&gt;environment&lt;/span&gt;, basically comprises of the following:
&lt;br /&gt;&lt;ol&gt;   &lt;li&gt;Emacs (my editor of choice) set up with the JDEE, GNUClient, Save-Desktop, and a variety of key-bindings I've got used to over the years.&lt;/li&gt;   &lt;li&gt;WinCVS&lt;/li&gt;   &lt;li&gt;The latest JDK
&lt;br /&gt;&lt;/li&gt;   &lt;li&gt;Tomcat (Java Servlet Container from Apache - also the reference implementation of the Servlet/JSP spec)
&lt;br /&gt;&lt;/li&gt;   &lt;li&gt;JBoss (Open Source J2EE server)
&lt;br /&gt;&lt;/li&gt;   &lt;li&gt;Ant (Apache's Java build system - open source)
&lt;br /&gt;&lt;/li&gt;   &lt;li&gt;Keyboard-accessible shortcuts for starting various Windows programs&lt;/li&gt;   &lt;li&gt;Cygwin (Open source Unix emulator for Windows)
&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Cygwin/X - to run GUI Linux apps on my Windows box instead of accessing a Linux PC over telnet&lt;/li&gt; &lt;/ol&gt;This environment, depends on the following infrastructure being available on the network:
&lt;br /&gt;&lt;ol&gt;   &lt;li&gt; 1 Linux PC (preferably the latest version of RHL/Fedora)
&lt;br /&gt;&lt;/li&gt;&lt;li&gt;CVS on Linux (I prefer it that way. Allows a lot of server-side scripting, which I haven't figured out for Windows yet)&lt;/li&gt;   &lt;li&gt;1 Database server (I've chosen MySQL for now, to run on the Linux box)
&lt;br /&gt;&lt;/li&gt;&lt;/ol&gt;Since the backup of my Emacs installation (mainly the .emacs file, but also the specific versions of the various packages that I'd downloaded at various points of time) is in some CD that I currently don't know the location of, and the PC I'm using was previously used by another experimentation-crazy colleague, I have a box that is far from the clean-room-type environment I like to start with, and I've had to start from scratch to set up my so-called &lt;span style="font-style: italic;"&gt;environment&lt;/span&gt;.
&lt;br /&gt;
&lt;br /&gt;I'll be blogging here over the next few days about my progress, and also the various bottle-necks I run into. Hopefully it'll be helpful to some of you out there, and at the very least, will help me set it up again at some point in the future when I once again, lose my backup...&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7626566-109153650097612606?l=geekwhorled.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/zg1DVVazV_Li3_wZs7a75DyJBzA/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/zg1DVVazV_Li3_wZs7a75DyJBzA/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/zg1DVVazV_Li3_wZs7a75DyJBzA/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/zg1DVVazV_Li3_wZs7a75DyJBzA/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/GeekWhorled/~4/iSOrtwXvxAA" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://geekwhorled.blogspot.com/feeds/109153650097612606/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=7626566&amp;postID=109153650097612606" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/7626566/posts/default/109153650097612606?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/7626566/posts/default/109153650097612606?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/GeekWhorled/~3/iSOrtwXvxAA/setting-stuff-up.html" title="Setting stuff up" /><author><name>Rajesh J Advani</name><uri>http://www.blogger.com/profile/10728053229392465570</uri><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><feedburner:origLink>http://geekwhorled.blogspot.com/2004/08/setting-stuff-up.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DE8ER30_eyp7ImA9WR9SFU8.&quot;"><id>tag:blogger.com,1999:blog-7626566.post-109152678584010817</id><published>2004-08-03T15:16:00.000+05:30</published><updated>2004-08-03T15:23:26.343+05:30</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2004-08-03T15:23:26.343+05:30</app:edited><title>New Hit Counter</title><content type="html">A friend of mine pointed out that &lt;a href="http://sidin.blogspot.com"&gt;Sidin&lt;/a&gt; has a hit counter on his site (it's at an impressibe 93,000+ at the time of this writing), and so I went ahead and grabbed one for myself. It's at GoStats.com. It provides statistics, and is free. (What else do I need?)
&lt;br /&gt;
&lt;br /&gt;I've set it up on my &lt;a href="http://rja.blogspot.com"&gt;other blog&lt;/a&gt;, since there doesn't seem to be any support for using the same counter at two blogs, and keeping the counts separate. And I really don't want to sign up for two accounts with GoStats and then try to remember two usernames and passwords. 
&lt;br /&gt;I got a counter face that fit in quite comfortably in my site, though, so that's a good thing.
&lt;br /&gt;I wish Blogger gave stats.
&lt;br /&gt;
&lt;br /&gt;&lt;span style="font-style:italic;"&gt;Question of the week: So what's so techy about this post?&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7626566-109152678584010817?l=geekwhorled.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/8xJQfrTf0Mxj4qYAdtppPjvpeME/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/8xJQfrTf0Mxj4qYAdtppPjvpeME/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/8xJQfrTf0Mxj4qYAdtppPjvpeME/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/8xJQfrTf0Mxj4qYAdtppPjvpeME/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/GeekWhorled/~4/fm0-MnWenK4" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://geekwhorled.blogspot.com/feeds/109152678584010817/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=7626566&amp;postID=109152678584010817" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/7626566/posts/default/109152678584010817?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/7626566/posts/default/109152678584010817?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/GeekWhorled/~3/fm0-MnWenK4/new-hit-counter.html" title="New Hit Counter" /><author><name>Rajesh J Advani</name><uri>http://www.blogger.com/profile/10728053229392465570</uri><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><feedburner:origLink>http://geekwhorled.blogspot.com/2004/08/new-hit-counter.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CEMNSH0-eCp7ImA9WR9SEUU.&quot;"><id>tag:blogger.com,1999:blog-7626566.post-109110757661440318</id><published>2004-07-29T18:22:00.000+05:30</published><updated>2004-07-30T15:44:59.350+05:30</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2004-07-30T15:44:59.350+05:30</app:edited><title>Simple Java Questions - 1 : private static final</title><content type="html">As I learnt recently, every simple question, can have a simple answer, or a quite complex one. Sometimes the simplicity of the question can hide a lot of complexity, and sometimes the answer that is required os so simple, that you don't even believe you could be correct.
&lt;br /&gt; I shall be posting on this some simple java questions, that I shall then proceed to answer, with both, a simple answer, and a complex answer (both of which &lt;span style="font-style: italic;"&gt;I&lt;/span&gt; consider correct, which may or may not stand for anything.). So,
&lt;br /&gt; 
&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;&lt;span style="font-style: italic;"&gt;Question # 1: &lt;/span&gt;In Java, when would you use&lt;span style="font-family:courier new;"&gt; private static final&lt;/span&gt;?
&lt;br /&gt; 
&lt;br /&gt; &lt;span style="font-style: italic;"&gt;Simple Answer:
&lt;br /&gt; &lt;/span&gt;&lt;/span&gt;Whenever you want to use a class-level constant.
&lt;br /&gt; 
&lt;br /&gt; Why? 
&lt;br /&gt; Making a member &lt;span style="font-weight: bold;"&gt;private&lt;/span&gt;, means it's only visible to objects of the same class (unless, of course, expose via a public &lt;span style="font-style: italic;"&gt;getter &lt;/span&gt;method.
&lt;br /&gt; Making it &lt;span style="font-weight: bold;"&gt;static &lt;/span&gt;means that there's only one instance of that particular member variable. This is good since there is no point having more than one instance of a constant.
&lt;br /&gt; Making it &lt;span style="font-weight: bold;"&gt;final&lt;/span&gt;, means that it can only be assigned once, alowing the compiler to optimize the bytecode since it is known that the value of that variable is never going to change once assigned.
&lt;br /&gt; 
&lt;br /&gt; &lt;span style="font-weight: bold; font-style: italic;"&gt;Complex Answer:&lt;/span&gt;
&lt;br /&gt; You need to have a better reason to use&lt;span style="font-family:courier new;"&gt; private static final&lt;/span&gt;. A constant, if ever declared, is wasted if it is private. The basic reason for any constant's existence is to be reused, and to offer a one-point change. And if you want maximum reuse, you want to make that constant public. And probably move all constants to a separate class/interface, where they can be managed much more easily. You might even want to load the values of the constants from a properties or xml file, where they can be edited by someone who doesn't have or need access to the source code.
&lt;br /&gt; 
&lt;br /&gt;A more sensible use of&lt;span style="font-family:courier new;"&gt; private static final&lt;/span&gt;, is for a handle to a component like Log4J's &lt;span style="font-weight: bold;"&gt;Logger&lt;/span&gt; class if you want a category (represented by an instance of the Logger class) per class. You assign it only once and don't need more than one instance for each class. And it doesn't make sense to expose one class's logger object to another class.
&lt;br /&gt; (Of course, you might want to think about having a category per method, rather than a category per class - for increased granularity and better log management.)
&lt;br /&gt; 
&lt;br /&gt; [Comments invited - as always]
&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7626566-109110757661440318?l=geekwhorled.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/29CD9P72RnPGea2IqggaWegfeRM/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/29CD9P72RnPGea2IqggaWegfeRM/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/29CD9P72RnPGea2IqggaWegfeRM/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/29CD9P72RnPGea2IqggaWegfeRM/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/GeekWhorled/~4/LVeBdTjUOVo" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://geekwhorled.blogspot.com/feeds/109110757661440318/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=7626566&amp;postID=109110757661440318" title="9 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/7626566/posts/default/109110757661440318?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/7626566/posts/default/109110757661440318?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/GeekWhorled/~3/LVeBdTjUOVo/simple-java-questions-1-private-static.html" title="Simple Java Questions - 1 : private static final" /><author><name>Rajesh J Advani</name><uri>http://www.blogger.com/profile/10728053229392465570</uri><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>9</thr:total><feedburner:origLink>http://geekwhorled.blogspot.com/2004/07/simple-java-questions-1-private-static.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DE8FQ385eCp7ImA9WR9TEk4.&quot;"><id>tag:blogger.com,1999:blog-7626566.post-109023643647151497</id><published>2004-07-19T16:10:00.000+05:30</published><updated>2004-07-19T17:03:32.120+05:30</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2004-07-19T17:03:32.120+05:30</app:edited><title>Buying a cell phone</title><content type="html">For a few months now, I've wanted to buy a new cellphone. 
&lt;br /&gt; 
&lt;br /&gt; I currently own two Nokia GSM-based phones, both dual band, one of which works in India, and another which works in the US. So having one tri-band phone that works in both places, would make a little sense.
&lt;br /&gt; 
&lt;br /&gt; I'm a big Nokia fan, and no amount of features can tear me away from the brand. I compared the following phones (all Nokia) that are currently available in India:
&lt;br /&gt; 
&lt;br /&gt; 6220 - Rs 14,200
&lt;br /&gt; 6230 - Rs 22,000
&lt;br /&gt; 6610 - Rs 9,200
&lt;br /&gt; 6610i - Rs 11,200
&lt;br /&gt; 7250i - Rs 10,800
&lt;br /&gt; 
&lt;br /&gt; The above-mentioned prices are in INR and were correct as of July 15, 2004 in Chennai, India.
&lt;br /&gt; 
&lt;br /&gt; I compared the phones using &lt;a href="http://nokia.com/phones/comparephones/compare.jsp?location=EMEA&amp;amp;language=EN"&gt;Nokia's Phone Comparison tool&lt;/a&gt;.
&lt;br /&gt;  
&lt;br /&gt; The 6610i is similar to the 6610, with some additional features like the built-in digital camera, and more memory. Though I don't need the digital camera (I have a 5.1 MP Sony Cybershot), I'd still prefer the 6610i for it's larger memory and Silver-grey casing. In my area the 6610 is only available in Black - which looks pretty sleek, but pales in comparison to the Silver-grey.
&lt;br /&gt; 
&lt;br /&gt; The 7250i didn't impress me at all with respect to the other phones, and I dropped that pretty early on during my comparison. The main thing I didn't like was its look.
&lt;br /&gt; 
&lt;br /&gt; I'd had my eye on the 6200 for quite a while when I was in the US. The 6220 is the newer cousin of that phone with a built-in digital camera and video recorder.
&lt;br /&gt; It's also got support for TCP/IP, EDGE and SMTP/POP3/IMAP4, which I'll probably never use, but are features that might prove useful in the long run.
&lt;br /&gt; 
&lt;br /&gt; The 6230 is the new cousin of the 6220 and has Bluetooth capability, a 64k color display (the others only support 4k colors), can play MP3s, and has more memory. The best feature of the 6230 is that is supports addition of an MMC which can be upto 512MB. My laptop (an HP Pavilion zv5000 series) too has a built-in MMC drive.
&lt;br /&gt; The phone is also a little smaller, but doesn't have the good design of the 6220.
&lt;br /&gt; 
&lt;br /&gt; All phones are GPRS-enabled.
&lt;br /&gt; 
&lt;br /&gt; For reasons that I'm somewhat unable to fathom at this moment, I selected the 6220.
&lt;br /&gt; 
&lt;br /&gt; I then went on to compare it with the current hot favourite - the Sony Ericsson T610. The phone costs round Rs 11,000, and has all the features of the Nokia 6230 (except the video recorder and the MMC slot), with a bonus USB port. Which means that I can use a standard USB cable (the same one that connects my Creative Nomad Jukebox Zen NX MP3 player and my Sony Cybershot DSC-P10 Digital Camera to my laptop), to connect the phone to any PC. With Nokia I need to buy a data cable which costs Rs 1,100.
&lt;br /&gt; 
&lt;br /&gt; Which means I could by two T610s for the cost of a Nokia 6230, and (counting the cost of the cable) still have money to spare. The 6220 wouldn't cost as much as the 6230, but would still cost more than the T610, with a significantly lesser number of features.
&lt;br /&gt; 
&lt;br /&gt; You'd think that after all this research I'd be rushing to the Sony-Ericsson store to get that phone. 
&lt;br /&gt; Instead, I'm still thinking about the Nokia 6220, because I don't like the idea of buying any phone other than a Nokia. Call me crazy.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7626566-109023643647151497?l=geekwhorled.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/18YOqhycDVIAEZM6rUum5wmcCIY/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/18YOqhycDVIAEZM6rUum5wmcCIY/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/18YOqhycDVIAEZM6rUum5wmcCIY/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/18YOqhycDVIAEZM6rUum5wmcCIY/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/GeekWhorled/~4/wU-1SGOlk7o" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://geekwhorled.blogspot.com/feeds/109023643647151497/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=7626566&amp;postID=109023643647151497" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/7626566/posts/default/109023643647151497?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/7626566/posts/default/109023643647151497?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/GeekWhorled/~3/wU-1SGOlk7o/buying-cell-phone.html" title="Buying a cell phone" /><author><name>Rajesh J Advani</name><uri>http://www.blogger.com/profile/10728053229392465570</uri><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><feedburner:origLink>http://geekwhorled.blogspot.com/2004/07/buying-cell-phone.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CUMHQHs6eCp7ImA9WR9TEk4.&quot;"><id>tag:blogger.com,1999:blog-7626566.post-109023230323658712</id><published>2004-07-19T15:13:00.001+05:30</published><updated>2004-07-19T16:07:11.510+05:30</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2004-07-19T16:07:11.510+05:30</app:edited><title>Trackbacks on Blog*Spot</title><content type="html">Recently, I saw a blogspot blog where the author had setup Trackbacks. A little exploration got me to &lt;a href="http://www.haloscan.com/"&gt;Haloscan&lt;/a&gt;, which provides a free Comment/Trackback service for blogs that don't support them.
&lt;br /&gt; 
&lt;br /&gt; Using Haloscan is pretty simple. You Login, and then following their &lt;span style="font-style: italic;"&gt;instructions &lt;/span&gt;for which you'll need to select your blogging tool (in my case, this is Blogger). They give you a set of html tags which you paste into your template at the appropriate locations. You might need to hunt around a bit to find the right place for your template, though.
&lt;br /&gt; 
&lt;br /&gt; One thing that I didn't do the default way, was use Haloscan's Comment service. Blog*Spot comes with a comment service which works well enough, and I didn't want to have my comments logged by an external tool when an internal one was available. So I only selected the &lt;span style="font-style: italic;"&gt;Trackback &lt;/span&gt;part of the html that Haloscan provides (the bit after the '|'), and pasted that into my template.
&lt;br /&gt; 
&lt;br /&gt; And Voila! I now have trackback.
&lt;br /&gt; 
&lt;br /&gt;The Haloscan website also allows you to send Trackback pings to other weblogs. (This is the same as the service I mentioned in &lt;a href="http://geekwhorled.blogspot.com/2004/07/trackbacks-when-your-blog-tool-doesnt.html"&gt;Trackbacks when your blog tool doesn't support them&lt;/a&gt;)
&lt;br /&gt; 
&lt;br /&gt; Don't forget to customize your Haloscan account. You can choose the template used for displaying the comments/trackbacks and other stuff. The only pain right now, is that the Time Zone list doesn't include India. There's GMT + 5, and GMT + 6. No GMT + 5:30.
&lt;br /&gt; 
&lt;br /&gt; Until I find another cooler Trackback service, or until Blogger starts supporting Trackbacks, I'll be using this one.
&lt;br /&gt; 
&lt;br /&gt; Let me know if anyone needs help with adding Trackback to their blog. Editing templates can get quite messy. I'd even recommend copying your template to your local disk before you make changes.
&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7626566-109023230323658712?l=geekwhorled.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/d3OSpujPBfj3ZOB0b2RqxzyIG9A/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/d3OSpujPBfj3ZOB0b2RqxzyIG9A/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/d3OSpujPBfj3ZOB0b2RqxzyIG9A/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/d3OSpujPBfj3ZOB0b2RqxzyIG9A/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/GeekWhorled/~4/La57Npzp-3o" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://geekwhorled.blogspot.com/feeds/109023230323658712/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=7626566&amp;postID=109023230323658712" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/7626566/posts/default/109023230323658712?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/7626566/posts/default/109023230323658712?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/GeekWhorled/~3/La57Npzp-3o/trackbacks-on-blogspot.html" title="Trackbacks on Blog*Spot" /><author><name>Rajesh J Advani</name><uri>http://www.blogger.com/profile/10728053229392465570</uri><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><feedburner:origLink>http://geekwhorled.blogspot.com/2004/07/trackbacks-on-blogspot.html</feedburner:origLink></entry><entry gd:etag="W/&quot;AkMGSHg6eCp7ImA9WR5aF0Q.&quot;"><id>tag:blogger.com,1999:blog-7626566.post-108979842960943724</id><published>2004-07-14T15:05:00.000+05:30</published><updated>2004-07-14T15:17:09.610+05:30</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2004-07-14T15:17:09.610+05:30</app:edited><title>Trackbacks when your blog tool doesn't support them</title><content type="html">If you blog at blogspot, and have found yourself wondering how to send a trackback ping to a related post, you might want to try &lt;a href="http://kalsey.com/tools/trackback/"&gt;SimpleTracks&lt;/a&gt;.
&lt;br /&gt;
&lt;br /&gt;Blogger doesn't support Trackbacks yet, and if it is important to you, you might want to try jroller or other more advanced blogging sites, but if you're not fussy (like me, currently) this is a neat workaround. There are others like &lt;a href="http://www.aylwardfamily.com/content/tbping.asp"&gt;Wizbang's Standalone Trackback Form&lt;/a&gt; but that one didn't work for me.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7626566-108979842960943724?l=geekwhorled.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/Q7evWc5TwHx4ExKKCpG6dnkKSMo/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/Q7evWc5TwHx4ExKKCpG6dnkKSMo/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/Q7evWc5TwHx4ExKKCpG6dnkKSMo/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/Q7evWc5TwHx4ExKKCpG6dnkKSMo/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/GeekWhorled/~4/8Sq4EsKL5w8" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://geekwhorled.blogspot.com/feeds/108979842960943724/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=7626566&amp;postID=108979842960943724" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/7626566/posts/default/108979842960943724?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/7626566/posts/default/108979842960943724?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/GeekWhorled/~3/8Sq4EsKL5w8/trackbacks-when-your-blog-tool-doesnt.html" title="Trackbacks when your blog tool doesn't support them" /><author><name>Rajesh J Advani</name><uri>http://www.blogger.com/profile/10728053229392465570</uri><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><feedburner:origLink>http://geekwhorled.blogspot.com/2004/07/trackbacks-when-your-blog-tool-doesnt.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DEQHQnw4fip7ImA9WR5aF0Q.&quot;"><id>tag:blogger.com,1999:blog-7626566.post-108979633323586938</id><published>2004-07-14T13:47:00.000+05:30</published><updated>2004-07-14T14:42:13.236+05:30</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2004-07-14T14:42:13.236+05:30</app:edited><title>GMail - some thoughts</title><content type="html">&lt;a href="http://jroller.com/page/vivekv/20040711#gmail_invite"&gt;A post on Vivek's blog&lt;/a&gt; got me thinking about some of the reasons why a large number of people desperately want to get GMail accounts these days.
&lt;br /&gt;
&lt;br /&gt;There are sites where you can sign up for a lucky draw to get invites. Online communities are full of people requesting, begging and pleading for a GMail account invite. And there's a whole lot of noise all over the place about GMail, and tools for GMail. I even saw a site put up by this guy who wanted to test how long it takes to fill up his 1GB GMail account. It took him &lt;a href="http://gmail.prattboy.net/"&gt;a little over a month&lt;/a&gt;. 
&lt;br /&gt;
&lt;br /&gt;With overflowing webmail accounts limited to as little as 2MB, one does like the idea of having a 1GB webmail account which won't expire when you change service providers, leave school, or leave your company. Aso, now that 7MB mail of my friend's wedding photographs won't choke up my mailbox.
&lt;br /&gt;
&lt;br /&gt;But, as I keep trying to explain to people, a 1 GB mailbox is the least of the reasons to go for a GMail account (Specially with the likes of Rediff and Yahoo increasing their mail account size limits). The features that Gmail provides, makes it almost as user friendly as your desktop email client. Yahoo, Rediff and Hotmail don't even come close. 
&lt;br /&gt;Of course, a lot of the fuss about GMail stems from the fact that thought free, it is not available to everyone right now, and having an account puts you in some kind of elite group.
&lt;br /&gt;
&lt;br /&gt;I got my GMail account invite from a friend without trying too hard, but a lot of people are looking for an account to be able to choose their favourite email address. &lt;strong&gt;billgates@gmail.com&lt;/strong&gt; was among the first to go. An email address with just your first name (like rajesh@gmail.com) is among the more popular reasons to get an account early.
&lt;br /&gt;I wonder why anyone would want to do that, though. I think people with just their first name in their email address are simply asking for mail that was intended for someone else. Inspite of having a hotmail email account that is made up of both my first and last name, I keep getting mails meant for other Rajesh Advani's. There's one in Boston, one in Dallas, one in Canada, one in Ivory Coast, one in New Jersey, and lord knows how many more. People keep congratulating me on my newborn child. Considering that I'm not married yet, that is probably not very good news...
&lt;br /&gt;I now prefer email addresses that no one else is likely to want. Keeps my mailbox cleaner.
&lt;br /&gt;
&lt;br /&gt;For those wanting to know how good GMail is, I think the answer is that it's pretty good. It's still in Beta though, and so it needs some tweaks, but overall it's better to open a GMail account than one with the standard email providers.
&lt;br /&gt;And those of you hunting for invites, I'm sorry but I have none. :)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7626566-108979633323586938?l=geekwhorled.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/L5p4rAPxI1gs6hrJiO10twrAVLg/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/L5p4rAPxI1gs6hrJiO10twrAVLg/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/L5p4rAPxI1gs6hrJiO10twrAVLg/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/L5p4rAPxI1gs6hrJiO10twrAVLg/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/GeekWhorled/~4/Yu3uKVo1-z4" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://geekwhorled.blogspot.com/feeds/108979633323586938/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=7626566&amp;postID=108979633323586938" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/7626566/posts/default/108979633323586938?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/7626566/posts/default/108979633323586938?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/GeekWhorled/~3/Yu3uKVo1-z4/gmail-some-thoughts.html" title="GMail - some thoughts" /><author><name>Rajesh J Advani</name><uri>http://www.blogger.com/profile/10728053229392465570</uri><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><feedburner:origLink>http://geekwhorled.blogspot.com/2004/07/gmail-some-thoughts.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CUcBQXcyeCp7ImA9WR5aF0Q.&quot;"><id>tag:blogger.com,1999:blog-7626566.post-108978165568891845</id><published>2004-07-14T10:37:00.000+05:30</published><updated>2004-07-14T13:47:30.990+05:30</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2004-07-14T13:47:30.990+05:30</app:edited><title>Tanenbaum, Linus, Ken Brown, Santa Claus and the Tooth Fairy</title><content type="html">Interesting Soap Opera:
&lt;br /&gt;
&lt;br /&gt;1. A guy called Ken Brown, President of something called the &lt;a href="http://www.adti.net/index.html"&gt;AdTI&lt;/a&gt;, is writing a book questioning the fact that Linus wrote Linux. Brown believes (no matter what anyone else says) that Linus copied Linux from Minix, which is a for-study-purposes-only Unix-like OS, written by the noted professor and author of famous Computer Science books like &lt;i&gt;Computer Networks&lt;/i&gt; and &lt;i&gt;Operating Systems&lt;/i&gt;, Andrew S Tanenbaum.
&lt;br /&gt;
&lt;br /&gt;2. Brown visited AST in Amsterdam to interview him for the book. AST surprisingly, supported Linus and said there was no reason to believe Linus did not write Linux on his own.
&lt;br /&gt;
&lt;br /&gt;3. Brown hired someone to compare the initial versions of Linux, and the then available versions of Minix. The &lt;a href="http://www.cs.vu.nl/~ast/brown/codecomparison"&gt;conclusion of the comparison&lt;/a&gt; was that no one had copied anything. The details are &lt;a href="http://www.cs.vu.nl/~ast/brown/codecomparison/alexey.html"&gt; here&lt;/a&gt;.
&lt;br /&gt;
&lt;br /&gt;4. Ken Brown didn't care what anyone said (still doesn't) and continued with his book. He published some excerpts of his forthcoming book, titled &lt;i&gt;Samizdat&lt;/i&gt; (the excerpts, not the book). The excerpts, (funnily) can be &lt;i&gt;bought&lt;/i&gt; &lt;a href="http://www.booksurge.com/author.php3?accountID=ADTI00024"&gt; here&lt;/a&gt;. A press-release giving some detail about the study/book is &lt;a href="http://www.linuxworld.com/story/44841.htm"&gt;here&lt;/a&gt;.
&lt;br /&gt;
&lt;br /&gt;5. Linus responded saying that Yes, &lt;a href="http://www.linuxworld.com/story/44851.htm"&gt; "I was just a front-man for the real fathers of Linux, the Tooth Fairy and Santa Claus."&lt;/a&gt;.
&lt;br /&gt;
&lt;br /&gt;6. Tanenbaum also responded with &lt;a href="http://www.cs.vu.nl/~ast/brown"&gt; this information&lt;/a&gt; about his interview with Ken Brown and other clarifications.
&lt;br /&gt;
&lt;br /&gt;7. &lt;a href="http://www.cs.vu.nl/~ast/brown/followup"&gt; Followup&lt;/a&gt; by AST on the issue.
&lt;br /&gt;
&lt;br /&gt;8. &lt;a href="http://www.adti.net/samizdat/brown.reply.june.04.html"&gt; Reply by Ken Brown&lt;/a&gt; to Tanenbaum's response.
&lt;br /&gt;
&lt;br /&gt;9. &lt;a href="http://www.cs.vu.nl/~ast/brown/rebuttal/"&gt; Rebuttal&lt;/a&gt; by AST to Brown's response.
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;The reason Ken Brown approached Tanenbaum in the first place is probably because of Tanenbaum's Jan 1992 post on comp.os.minix called &lt;a href="http://www.oreilly.com/catalog/opensources/book/appa.html"&gt;Linux is Obsolete&lt;/a&gt;. I highly recommend reading the whole thing (if you are a geek) even though it's quite long.
&lt;br /&gt;There's another interesting thread on similar lines which I came across a few years ago. It's related to this thread, I think. If someone knows what I'm talking about, please let me know. I'd printed both the threads out (came to be about 20-30 pages, I think, in small font) and read the whole stack.
&lt;br /&gt;
&lt;br /&gt;I'll be back with more updates on this Soap Opera as it unfolds.
&lt;br /&gt;
&lt;br /&gt;Appendix
&lt;br /&gt;The &lt;a href="http://slashdot.org/article.pl?sid=04/06/08/1657256"&gt; Slashdot post&lt;/a&gt; that pointed me to the latest stuff.
&lt;br /&gt;
&lt;br /&gt;&lt;hr&gt;
&lt;br /&gt;
&lt;br /&gt;This blog is dedicated to my grandmother, who passed away at 5am IST on 9-June-2004. 
&lt;br /&gt;&lt;i&gt;I'll miss you, Nani.&lt;/i&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7626566-108978165568891845?l=geekwhorled.blogspot.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/gIpfgjRCYRH75obRMbYnCvQjCjg/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/gIpfgjRCYRH75obRMbYnCvQjCjg/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/gIpfgjRCYRH75obRMbYnCvQjCjg/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/gIpfgjRCYRH75obRMbYnCvQjCjg/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/GeekWhorled/~4/cmmTJbg0Wuo" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://geekwhorled.blogspot.com/feeds/108978165568891845/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=7626566&amp;postID=108978165568891845" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/7626566/posts/default/108978165568891845?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/7626566/posts/default/108978165568891845?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/GeekWhorled/~3/cmmTJbg0Wuo/tanenbaum-linus-ken-brown-santa-claus.html" title="Tanenbaum, Linus, Ken Brown, Santa Claus and the Tooth Fairy" /><author><name>Rajesh J Advani</name><uri>http://www.blogger.com/profile/10728053229392465570</uri><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><feedburner:origLink>http://geekwhorled.blogspot.com/2004/07/tanenbaum-linus-ken-brown-santa-claus.html</feedburner:origLink></entry></feed>

