Moving Hosts
June 18th, 2009
Hey guys, I will be switching hosts today and in the time that the DNS propogates, you may experience a slight downtime. Kindly bear the same. Thanks.
Dev Opera Articles – Full RSS Feed
June 5th, 2009
I’m a big fan of Dev Opera Articles. They have some excellent articles on HTML, javascript and all things web.
The biggest problem is that, their RSS feed doesn’t give the full content. Everytime new articles show up, I have to visit the website by clicking the link on the RSS feed. It soon got very frustrating.
So, here’s the result – http://feeds2.feedburner.com/DevOperaFullFeed. That link contains the RSS feed for Dev Opera Articles in full. That is, there are no one liners any more. This feed will give you the full content of the articles present on the Dev Opera’s original feed. Subscribe to this feed and live happily ever after
Skyfire Review
June 1st, 2009
Skyfire 1.0 is the new kid on the block in the mobile browser war. Its not a kid per se but there are some big boys like Opera Mini and Opera Mobile who don’t give up all too easily. I have been a beta user of it from India since 0.6
and it was fun all this while to keep track of this superb browser. Their main aim is to bring desktop like browsing experience to the mobile browser and they are almost there. So near, yet so far.
Like all other reviews about this browser until now, its safe to tell that it is able to play flash videos pretty well inside the small screen. Here are some notable differences between the earlier betas and this 1.0 version:
- While watching any videos on youtube, my Nokia E51’s rear would just heat up quickly & few minutes down, it would be difficult to hold the phone. This problem has been nearly solved in 1.0. That’s possibly due to power optimization techniques.
- When you scroll very quickly on long web pages, Skyfire usually shows a checkered screen with gray squares (screenshot below), which disappear as and when content appears. Pre 1.0, this checkered screen would take a long time to disappear. With 1.0, this problem has been solved. Same problem used to occur during zoom in/out. Now zoom happens at blazing speed. Neat!

- Its able to handle basic javascript very well. For e.g. its able to display the hover menus that are present on top of my blog. Its also able to show alert boxes.
- Video quality is maintained even during zoom in and zoom out. This was a major drawback in pre 1.0 versions.
- The initial loading and shutdown of the browser would take a long time in pre 1.0 releases. Not so in this current release. This has been drastically improved.
- File downloads happens excellently. Kudos for this. This is a major drawback with the E51’s native browser.
Testing Skyfire with Zoho Writer
However, of all the above, the one feature that Skyfire prides itself in is the use of full blown AJAX apps. Zoho Writer is an AJAX heavy web application, typically used for word processing on the browser. Since I wanted to test out how well Skyfire performs with respect to Zoho Writer, I fired up http://writer.zoho.com/. The initial login page came pretty quickly.
Login was quick and Zoho Writer’s interface loaded up beautifully – as seen in the desktop version. That was a pleasant surprise!
I quickly scrolled down and clicked on “Shared Docs” on the left panel. It slid into view by moving towards the top. Then I clicked on “My Docs” again & the shared docs panel scrolled down and away from view. That was another surprise!
Along each document in “My Docs”, clicking on the “*” icon brought up the context menu for that document as in the desktop version. Since the context menu was overlapping on the editor, editor took preference to get focus rather than the menu. Then I clicked on the editor & in a second, it sprung into action, giving me an editable text area where I can input the document’s contents. I finished typing some stuff and clicked on the “save” icon. Here’s another surprise. Writer’s modal save dialog showed up. I clicked on save and immediately the “My Docs” panel also got refreshed as on the desktop. Neat!
Then I clicked on the “New” icon on left top corner. It opened a new document tab as in the desktop version
Apart from all this AJAXified beauty, there were some problems too:
- I couldn’t switch between documents.
- I couldn’t switch between the menus on the toolbar nor could I see the drop down.
- Deleting documents didn’t happen as expected. I had to go to desktop browser to delete the selected documents.
All in all, if you are on the move and if you are using Skyfire, you can use Zoho Writer to create simple documents. You could also use Zoho Mobile to create text documents. But using a full fledged desktop browser version blows you away. I wonder how collaboration works. May be in upcoming versions of Skyfire, you would be able to live collaborate with your colleagues from the mobile phone on the move (when they are on the desktop version). I think this possibility is not far off.
Testing Skyfire with Sathyam Cinemas
Few months ago, Sathyam Cinemas moved their website from flash to an AJAXified version. Then the world rejoiced because despite Skyfire’s claim of running flash on the browser, you still couldn’t give text inputs that were present inside the flash movies. But now that the site is fully HTML/CSS/JS, it loaded perfectly as in the desktop version.
I was able to flawlessly select the movie I wanted, selected a date on the right side, picked a show and then clicked on “Book Now”. I then gave my username/password and then followed the usual routine of picking up seat, snacks and then clicked on “Pay” button. It took me to Citibank’s payment gateway and I roared away to bliss. This is pretty cool I should say. I didn’t face any problem with this website on Skyfire & all stuff just rolled along. Skyfire is here to stay.
Check out the screenshots. Thanks to the awesome S60 screenshot software by Antony Pranata!
User Agent
An interesting thing with Skyfire is that it uses Mozilla Firefox 2.0’s user agent when a request is sent. This is to prevent web servers from identifying Skyfire as a mobile browser so that they will send full content instead of mobile content. I think Skyfire runs chromeless firefox browser instances on its servers, which send requests on user’s behalf. Moreover once a website sends its HTML response, the to-be-rendered UI is compressed as a bitmap and sent to the client. Along this way, the compressed UI’s coordinates would be mapped to the uncompressed one on the server, with remapping performed during every zoom in or zoom out. So, if any action is performed on the client, the same operation would be performed on skyfire’s servers (on chromeless firefox processes) along the mapped coordinates. Then may be a new bitmap is again generated and sent to the client again after the server finishes processing javascript and AJAX if any.This is probably one of the ways in which the stuff is done. Guess its time Skyfire moved on to FF3.
I wonder how HTTPS connections are handled. That’s because I haven’t seen any dialog popup when accessing websites in HTTPS mode. Not sure what exactly happens. Makes me to be doubly safe with credit cards and email logins.
Battery Usage
Though there had been substantial power optimizations, Skyfire still drinks battery like water; a little less slowly though when compared to earlier versions. When you are done browsing for about 30-40 minutes, the power charge would have gone down by a point or two. I think this has to be improved drastically. Opera Mini is pretty awesome on battery.
Some Gripes
No software is perfect & any software for that matter evolves over a period of time. So, here are my share of gripes. Hope they are addressed in upcoming versions:
- Proxy authentication support. Firefox has it, IE has it & so does any self respecting desktop browser. Its high time mobile browsers started offering proxy support with authentication.
- Speed optimization on GPRS/Edge. GPRS and Edge speeds are pathetic. Even on such speeds, Opera Mini functions very well. But Skyfire doesn’t.
- Skyfire should have more keyboard shortcuts. Opera mini has an awesome bunch of keyboard shortcuts.
- Power consumption. This may take some time to address. But I believe it carries lot of importance.
- No landscape mode. This should be there too. Landscape mode makes watching videos a pleasure.
- Save and open web pages from the phone.
For me proxy authentication support is a must have thing in any modern web browser. Hope it is brought on soon!
How was your experience with Skyfire 1.0? Do share your experience in the comments. Thanks for making it this far
Kalari and Ankle Sprain
May 24th, 2009
It’s been about 8 months now & I’m still going to Kalari class regularly
… Do you know how good it feels when you are doing something consistently and that your body is in pristine condition?
No amount of blogging/reading will get the point across. You can only experience it by doing. So, just bend your head downwards & if you feel guilty at the huge lorry tyre around your tummy, you know what to do. Start exercising for 5 minutes a day and you will see magical results. You may also want to try out Steve’s 30 day trial method. It helps!
So, coming back to topic … during the usual practice sessions we usually do plenty of stuff that involves heavy punching, kicking, diving (am less than an amateur in this) etc. On one such occassion two weeks ago, we were practicing a fighting routine with the help of a lathi. As part of the routine, the taller fighter throws the other one over the head. Since we are just learning, we make sure the diver lands safely. When we do dives, we take the help of our master.
But, on that day, something else took over and I wanted to dive without the help of the master. So, when the tall guy picked me over his head and brought me down, I was slightly happy when I was in mid air, thinking that the landing would be nothing short of awesome! Landing I did .. but it was just the opposite of awesome. Instead of landing flat, both my feet hit the ground vertically. Since the foot is taking the whole body weight, it buckled under pressure and gave a CRACK! sound. Thankfully that was a twig. But both ankles got sprained badly enough that I couldn’t get up.
Immediately one of the guys who has been learning Kalari for 3 years, came for help and did some techniques on my left feet. That released the pain but the strain was there. Same thing to the right leg too. Happily we continued the class. After getting home, it started. Searing pain through both my feet (left foot was slightly tolerable). There was no swelling but the pain was intense. I couldn’t even touch my leg. Then one of my physiotherapist friends came home and treated it back to perfection. I could walk again that day!
That’s how my ankle looked like.
Phew! But I must say it was a worthy experience
Absolutely loved it.
Cancelling default browser events in Javascript
May 23rd, 2009
This one could save you lot of time
In short, the answer is to “return false;”. That’s it. If you want to know more details, read ahead.
Say, you have an awesome page where you want to disable right click and also disable Ctrl+C (copy), Ctrl+S (save page). The process is simple. Just register an event for right click and when the event fires, just return false. Since false is being returned, the browser will cancel the event.
Same goes with keyboard. ‘onkeypress’ event is fired whenever a key is pressed. To reject any key, just capture that event and return false. If you want to do anything special, just do it before returning false. Ctrl+S is interesting. In most web browsers (notably google chrome), it brings up the default Save Dialog. Most web apps have keyboard shortcuts these days & oh! 99% of them don’t return false, only to find the user experience irritating when the save dialog pops up; when something else should occur. Hence, if you wish to customize the functionality of the default browser specific keyboard shortcuts, do the following:
- Create an event handler and capture the event.
- Do something.
- “return false;”
That’s all. Have fun!
Hot Bajji and Philosophy
May 11th, 2009
Few days ago, myself and few of my friends met in Besant Nagar beach. After talking for sometime, we headed to a bajji shop on the beach. There’s nothing to beat the combination of hot bajji with a fiery chutney and cool sea breeze. It was around 9.30 PM. Not many people were around. The lady of the bajji stall served us and went about stacking the chairs so that they could be packed for the day.
As were eating, someone stumbled about 6 feet away from us, near the bajji stall. He appeared to be a middle aged man, with a long thick beard, dusty shirt and a torn lungi … carrying a ragged bag. Some dogs started barking from the distance. He was a rag picker. As he stumbled, he almost fainted. No one noticed it until now, except us. As we got up to see what he was up to, he slowly ambled to a bowl which had water. He held the bowl with this hands, bent down and licked water from it. I had a lump in my throat when I saw that.
By now, the dogs had come near. Hearing the commotion, the bajji stall lady came near and shooed him away, giving him some water packets. All along this episode, he had been mumbling “pasi … thanni … pasi … thanni”; roughly meaning, “I’m hungry. Please give some water.”
Then it dawned upon me. He almost died that day or at least fainted. What prevented him? Is it the will to survive or is it the fear of death? But whatever it is, it remainded me that everybody is born on this planet to fulfill a purpose and we need to find what that purpose is!
Here’s the trick below to open multiple gmail accounts with the same version of firefox.
- Open the Run dialog. In linux, press Alt+F2. On Windows, press WinKey+R.
- In the dialog box, type “firefox -p -no-remote”. This will bring up firefox’s profiles dialog box.
- Click on “Create Profile” and follow the wizard. Lets assume you named the profile as “gmail2“.
- Now close the dialogs and return to desktop.
Now, open the Run dialog again. In the dialog box, type “firefox -p gmail2 -no-remote“.
“-no-remote” option is very important because it creates an isolated session that is different from the currently open firefox windows of other profiles. If -no-remote option is not given, then a new window of the currently running profile or the default profile is opened, where session sharing happens (which we don’t want).
Now, since sessions aren’t shared between different profiles, you can open two accounts and happily have them.
Suggested Improvement for Firefox:
Internet Explorer 8 has this amazing option in the File menu where you can open a completely new session of IE. Sessions are completly isolated and gives lot of relief. Its available at File->New Session. Hope this feature is brought into Firefox as well. Or if this feature is already available as a plugin, please let me know in the comments. Actually speaking, this feature was available in IE since IE 6 (AFAIK). In IE6/7, you can open a completely new session by clicking the IE icon on the desktop.
Nagalapuram Trek 2
April 15th, 2009
Trekking is addictive. Not because its fun to climb hills and mountains, but because every time you are done with a challenge, Nature gets back at you with a tougher one
.
Last trek to Nagalapuram was super fun & challenging. But the only downside was that it all happened too fast and in compressed time. Adrenalin was rushing throughout & before long we were back home. Time flew by. Adventure never ceased until the time we were there. This time though, I wanted to take it more slowly. I wanted to enjoy Nature in all its natural beauty, get soaked in the forest, tune my senses to the smells, sights and sounds of the forest and soothe my aching body in the natural waters.
Arvindh, my Kalari buddy, who accompanied me was gung-ho when I told him what I had in mind for this trek. The actual trek itself wouldn’t be that challenging or tough but surely at the end of it, the mind will be completely relaxed and refreshed; the way that cannot ever happen in the busy city life. And so we started. By 7.30 AM we were at the base of the pristine Nagala jungles, ready for our mind to get relaxed and get recharged. Two mongrels started following us as soon we started into the forest.
The Walk
As we were walking through the foliage, the dogs stopped and started barking wildly to something to our right side. We froze on our tracks. We weren’t even quarter way in to the jungles. We turned to our sides and didn’t see anything fishy. We continued to walk with the dogs barking. After sometime they stopped. Then we heard it. The sound was like a growl. A light one. Then it became heavier; then lighter and similarly oscillating. Suddenly we realized it could be the sound of the wind that were passing through the trees. This growling sound accompanied us for another 30 minutes or so. We picked up 2 reasonably big sticks & proceeded on our way.
We crossed a stream first and hopped on to the first small hill. On that hill, there were some orange markings and we followed them … which led to a dead end. We didn’t know what to do or which route to take. There was a bigger stream to our right side and dense jungle on our left. Either way, there was no clear trail that was visible. Since both of us were on our own, we didn’t bother much and started exploring the area. First we went to our right. The stream’s width would be around 10 feet. But since the water was shallow, we were able to cross it easily. After crossing to the other side, there was partially dense foliage through which we had to cut through. For sure, this wasn’t the way we had taken during the previous trek. So we walked back to the same dead end. This time, we decided to move to the left side from the dead end.
The dogs had left us by now. It was just myself and Arvindh in the jungles with absolutely no one around. There was only a light wind blowing and Sun was shining. The foliage to our left was thicker. Water was flowing down the hill in a very tiny stream. We decided to walk along the stream and did so for about 15 minutes. Along the way, we noticed some toads and huge spider webs. No route there, we headed back to the same place
& had some fruits. Aaahh! The fruit was never ever this tasty before.
The Fishes
We decided to retrace our steps and go back to the top of the hill from where we descended to this place. En route to the hill, the trail split in to two, in the form of the ‘Y’. We decided to take the other path. It was going downhill and not sure as to where it would lead us. Surprisingly, it lead us to an amazing pool. Quickly, putting 2 and 2 together, we realized that the stream described above was the same one coming here & that all along, we were following the stream, albeit along the jungle path. We quickly undressed in to our trunks and jumped in.
The water was cold and the initial contact sent a chill up my back, forming goose bumps on my neck, arms and thighs. As we waded in the water, the bodies got used to the chill and we were able to enjoy the cold water. At about chest deep in to the water, we noticed an awesome rock formation. It was about 7 foot long and about 3 foot wide, slightly inclined…. inclined such that, if you lie down on the rock, all of your body will be under water except your head
. It was fun! I lied down there for sometime, closed my eyes and forgot the world. Tiny fishes started pecking my feet and hands, removing whatever dirt that may have got there. They slowly moved upwards and started cleaning the shoulders and my back. I was getting a tickling sensation. I was enjoying it thoroughly. Few minutes later, we got out of the pool, dried ourselves and headed back to the same dead end.
Food
By this time we were ravenous. Arvindh had brought some delicious bakery bread and dates fruit syrup. Together, it was a heavenly combination. We also had some juicy pears which found its rightful place in our stomach in no time. Done with lunch, we explored some more along to our right, crossing the stream again.
This time, we were determined to go more in to the path. We had two big sticks and a knife to cut through the foliage. At points where there were lot of creepers blocking our way, we would simply swish-swash and they would be gone. We continued like this non-stop for about 30 minutes, without talking or making any sound. We were extremely busy in finding our path. At a certain point I stopped because the foliage was too thick to cut through. There was not enough place to move also. So we decided to rest in that place for sometime and then head back. Sunlight was scanty here. There was a beautiful green pool to our left. A huge one and visibly of great depth. If you are wondering, we didn’t enter this one.
We started back on our path and came to the same dead end. Suddenly, it was like we broke out of a trance and realized this walk in to the thick foliage was the best ever walk we ever had in our life so far. We were quiet, our breathing sounds took over. Our mind was totally tuned to Nature. Senses got sharpened. We could capture every tiny move in the foliage; so carefully that we moved aside to allow a chameleon or two to cross us without being suspicious of us. This walk refreshed us like anything & it was simply beyond words.
The Meditation Pool
We reached the same pool again. This time, after playing in the water for sometime, we thought of meditating. I sat on the same rock where I had lied down earlier, moved my legs into the posture of Padmasana and closed my eyes, my palm facing the skies & resting on my thighs. Within minutes, a bright white light engulfed me and it felt as if I was in dream land. Just imagine this. Sitting on the rocks, with part of my body in the water and torso above the water; fishes pecking at your feet, a small smooth waterfall flowing on the right side, filling the pool with a gurgling sound … a few birds chirping and a bell clinking, of a cow grazing in the distance. Aaaaahhh!! Heavenly! … The white light was engulfing me in waves and I was totally lost into wonderland. After some time, I opened my eyes. Everything seemed brighter and different. This few minutes in my life was awesome. Nature’s energy was flowing through me in its purest form and I enjoyed every moment of it, giving back what I had received.
Sitting neck deep in water, we had some more fruits. Fruits were juicier than ever and we devoured them.
And then it was 3 PM. We got out of the pool, clicked some snaps of us and then got on our way to home sweet home.
What a day it was! Not at all tiring .. it was just the opposite. Totally Energizing!
Some Interesting Twitter Conversations
April 9th, 2009
Hey all,
Its been about 4 months since the conversation lister tool for twitter was implemented. I’m not sure how many of you are using it but then I have surely had many funny moments reading whole conversations with it. Those who have been following me on twitter would have surely gone through some of those funny conversations. Here are some of those conversations for you to relish.
Today is Moyeen’s birthday. So this blog post is dedicated to him.
@Jaggy is a good friend of mine. He’s on twitter pretty much all the time & sometimes he gets ragged
causing many of us to laugh. Here is one such conversation featuring our dear Jaggy getting torn apart by @procoder. Screenshot below:
Here’s the next conversation featuring @lone_observer, @82kg and @adapaavi. In this one, @82kg is teased by @adapaavi after a seemingly *innocent* tweet from @82kg. The first tweet from this thread is missing because @Shillika’s account no longer exists. But anyway, check out the conversation below. Click on the image to view the full conversation.
And then, this awesome discussion on “cum” and “come” between @82kg and @yuvipanda. This conversation was awesome as well. Lol.
Last but not the least, here’s our @procoder getting ragged by myself and @azaxacavabanama based on his college antics few years ago
… Nostalgia kicked in!
Hope you enjoyed the conversations above
. If you wish you generate a conversation like this, its pretty simple. Wait for the conversation to get over. Then obtain the tweet’s number from the permalink of the last tweet in the conversation. This is better shown in the tool’s page itself. Once the conversation is generated, post the conversation’s link to your twitter account.
All in all, this is a pretty basic tool. If you want any feature to be added, let me know in the comments.
Top 5 Gmail Lab Features
April 3rd, 2009
Ever since Gmail launched its Gmail Lab, I have been its fan. Some of its features are so awesome I use them day in and day out. Mentioned below are my favourite lab features:
1. Go to Label
If I were asked to pick one best lab feature from all of them, this would be it. I have set up filters extensively to mark labels to most of my emails. I’m also a keyboard shortcut junkie & expect web apps to have keyboard shortcuts. Retrieving emails based on a given label had never been this easier. Just type ‘g‘ followed by ‘l‘. A small dialog opens and offers suggestions as you type the label names. This is an awesome feature that saves loads of scrolling and clicking.
This is an Excellent lab feature that was announced yesterday. I have enabled it and searching mail using its operators has been made very easy. This also offers suggestions from your contacts as you type. For each letter that you type, if there’s an available search operator, it lists that as well; neatly separating the operators from the contacts with a black line.
3. Tasks
Less is more. This tasks features offers very little features, almost mimicking it to a paper to-do list. Just list the tasks and strike them as you are done with it. There are of course some advanced features tucked in. But they don’t appear at first sight. This is a well executed Labs Feature. There are times when you do not need a full blown task manager & this feature comes in handy. I hope they bring this feature to their gmail mobile app.
4. Youtube, Picasa, Flickr Previews
Recently, I have been trekking/touring a lot. People from the trekking gang send emails with links to Picasa/Flickr albums. They also add youtube video links to the email because there’s no way to actually embed a video inside an email. With this labs feature, I’m able to enjoy all the related photos/videos in one place. Really cool.
5. Quick Links
This is one awesome feature. Many months ago, I posted a question on a mailing list asking for suggestions for buying wireless routers. After a week since the discussion, I was searching high and low for that email but couldn’t find it. Lots of people had given valuable suggestions and how can I lose them all? As soon as I found the email, I activated this quick links feature and clicked on “Add Quick Link” button in its dialog box. Voila! Now I can reach this email directly with a mouse click.
There are also times when I search for “in:inbox is:unread“. This search operator retrieves all mails in your inbox that have not been read yet. I didn’t want to type this operator every time to check for unread messages that are buried somewhere. I just added a Quick Link for this operator and now its just a click away. Happy times!
What are your favourite Gmail Lab features? Let me know in the comments.























