Thursday, January 26, 2006

Keyword Density Checker

Keyword Density Checker: check out this "cool tool" by my friend Amit Bhawnani, webmaster of webconfs.com. "Keyword Cloud is a visual depiction of keywords used on a website, keywords having higer density are depicted in a larger fonts. Ideally your main keywords should appear in larger fonts at the start of the cloud."

webconfs.com is a one stop shop for a number of Search Engine Optimization Tools.

Gmail: Finally, the long awaited delete button is here

delete_btn2

Friday, January 20, 2006

Rails vs TurboGears

Rails vs TurboGears, good comparison of the explicit(TurboGears) and implicit(Rails) framework. And for some java bashing read TurboGears vs Java.

Agreed that Rails is more magical, but once you start using it, you realize that it more intuitive. And at the same time being more explicit is not a good thing, when there is no need to be. One of the reason why java web applications take so long to develop is that its too explicit and verbose, and does lots of XML situps.

So why get into the same trap? What good is explicitness? Rails has got sensible defaults and it allows developer to be more explicit when necessary.

In the end its always about personal preference. But I, for one, don't want to get back in the trap of "unnecessary explicitness".

Java: can null be typecasted to String?

Will this compile and run without any ClassCastException?
 String s = (String) null;
System.out.println((String) null);
Wont typecasting null to String throw ClassCastException?

Answer: Both lines compile and run fine. null can be typecasted to any reference type. But the question is why is this behavoiur allowed?
Here's my explaination:
Consider following line of code.
  String s=null;
This compiles fine, so it means that the String reference can safely hold the value "null". Since null is an valid value for any reference type, casting it to that type will never throw a ClassCastException.

Have a better explaination? feel free to comment.

Thursday, January 19, 2006

Thinking Machine 4

Watch the Thinking Machine plan his next move, while it plays chess with you.

The Java Modeling Language (JML)

Now this is very intresting, I am surprised I have never heard about it before.

"The tools jmlc and jmlrac provide a JML aware compiler and runtime environment. The advantage of compiling and running code with such tools is that JML annotations are converted into assertions which are checked at runtime, making it easier and faster to discover and locate bugs. For the small cost of writing a few annotations you can significantly speed up the testing and debugging cycle." read more...

"The Java Modeling Language (JML) is a behavioral interface specification language that can be used to specify the behavior of Java modules. It combines the design by contract approach of Eiffel and the model-based specification approach of the Larch family of interface specification languages, with some elements of the refinement calculus."
read more...

"Sometimes ideas don't get the attention that they deserve. The Java Modelling Language (JML) is just such an idea. JML is something every Java programmer should know about. That does not mean every project in Java should make use of JML, only that developers should be aware of it so they can use it wherever it does make sense. The fact is that JML provides so many benefits for so little extra work that it deserves far more use than it gets. If you program in Java it could definitely make your life easier" read more...

Have you started "flickr"ing ?

Flickr is an online photo sharing tool. One can upload upto 20mb of photos every month, for free. Flickr is overtaken by yahoo so no need to signup, just login with your existing yahooid. So what are you waiting for? Share your photos and dont forget to add me as your contact at flickr ;)

Find my photos here.

Thursday, January 12, 2006

Ek Chidiya, Anek Chidiya....

Does it ring a bell... Good old summer holidays... When DoorDarshan was the only TV channel. Checkout the video and mp3. It brings back sweet childhood memories.

The Web Developers HandBook

Loads of resources and links for web-developers. Now this is what I needed. Go check it out.

Tuesday, January 10, 2006

TiddlyWiki, version 2.0 is out

Too cool, 2.0 has got tones of new features.

from http://www.tiddlywiki.com/

"Welcome to TiddlyWiki, an experimental MicroContent WikiWikiWeb built by JeremyRuston. It's written in HTML, CSS and JavaScript to run on any modern browser without needing any ServerSide logic. It allows anyone to create personal SelfContained hypertext documents that can be posted to any WebServer, sent by email or kept on a USB thumb drive to make a WikiOnAStick. This is revision 2.0.1 of TiddlyWiki, and is published under an OpenSourceLicense."

Also check out tiddlydesktop.

Monday, January 09, 2006

The greatest pleasure in life is...

... is doing what people say you cannot do.

-- Walter Bagehot

Sunday, January 01, 2006

The Best Idea Of My Life

Finally I have found what I want to do with my life, (at least thats what I think now) . The one thing that will make me truely happy. Ofcource this has much to do with my current passion, but I'll reveal it soon on another post.

My life is about to take a fantastic turn.

Firefox: Google ToolBar Keyboard Shortcuts

Anywhere in browser:

alt+O
gives the search box keyboard focus, (The default firefox search Box can be accessed by ctrl+k)

Inside GoogleToolbar's Search Box

enter
executes the search and displays the Google search results in the current tab

alt+enter
executes the search and displays the results in a NEW tab

shift+enter
"I'm Feeling Lucky"

alt+shift+enter
"I'm Feeling Lucky" in a new tab