2.8.08

Who is the winner ..Nice comparison


nice comparison here from here

1.8.08

Fake news from Scuderia Stables

Fake news from Scuderia Stables , resemblance to authentic news is obviously unintentional ... more here http://fakeferrarinews.wordpress.com/

finally it comes true !!

huh ..finally i done it ..i had two bets with my best friends ..i agreed those ..when i was drunk ....the first one was to beat the best bowling score in our friends league ( We used to go out for bowling ) , second go out with a girl for a Date !!! ( huh ..very very challenging one )

finally i managed to win the former bet , i scored 222 against the very best till before the best score, 209 , against my best friend ..huh ..its a great achievement .... i was sure like i can beat the record ( 209 ) but i was not expecting that this soon..

bowling is a game which is really sporty and fun..getting strikes and spares are fun ..you need strikes and spares to be in a better scoring position throughout the frames ...today i scored spares or strikes in each frame ....finally managed to get 222 ...simply great at least for me ...i won finally :)

lets talk about the second ...its not a great bet for most , but its very difficult and challenging one for me ..i need to find a girl , so i can go out for a coffee or a pub or a sports bar .i haven't found anybody , but i am not sure i can find somebody or not ..i have 10 more days to go ..is there any body around who can share a coffee with me ( only gals :) ) .....who knows !!!

29.7.08

SWT - Detecting Ctrl +C key combination

One of my colleague had a requirement to detect the Ctrl +C key combination in a Eclipse View .

I wrote this sample snippet which works

import org.eclipse.swt.*;
import org.eclipse.swt.events.KeyAdapter;
import org.eclipse.swt.events.KeyEvent;
import org.eclipse.swt.widgets.*;

public class CtrlCTest{

public static void main(String[] args) {
Display display = new Display();
Shell shell = new Shell(display);
shell.addKeyListener(new KeyAdapter() {
@Override
public void keyPressed(KeyEvent e) {
if (e.stateMask == SWT.CTRL && e.keyCode == 99) {
System.out.println("CTRL +C");
}
}
});
shell.setSize(200, 200);
shell.open();
while (!shell.isDisposed()) {
if (!display.readAndDispatch())
display.sleep();
}
display.dispose();
}
}

28.7.08

An inside (personal) view of the Symbian deal

There is quite a lot of buzz around Nokia's buyout of symbian and unify s60,UIQ ,MOAB , and the new Open source mobile platform . What this deal meant to the mobile space ? Does it mean that open source model is getting accepted in mobile space ? i guess yes .

Nokia involved in a few open source projects ( most importantly Maemo ) , but this is a strategic and important move from nokia. It looks they open sourcing massive amount of symbian and s60 code , its a good news atleast for the licencess .

Recently i read an article in Nokia conversations where they talking with Janne Jalkanen about the Symbian deal . Its a good read . More here . He not only has experience with the inner workings of S60 in Nokia, but he was the creator of JSPwiki, a popular open source Java-based wiki sofware.

Few excerpts from article here

"I doubt that open sourcing Symbian is going to help in the community building though. There are two kinds of OSS developers: the guys who do things for fun, and the guys who do OSS because they are paid to do so. In order for an open source project to really flourish and take over the world, you need both.

"The problem with Symbian is that very, very few people touch it for fun. So I believe that while we can open source it, it is going to be very difficult to get people participate out of their own free will, unless we are prepared to make very serious refactorings to the entire system.

"Still, it is going to keep Symbian in the game a little longer. While many people dislike it (just go to any Finnish IT newspaper discussion board to verify this), the fact is that it does carry a significant amount of gold home every day. So we must be doing something right, and my bank account would very much like to us keep doing that."

keep reading here .


PS : If you dont know what maemo is , Excerpts from wikipedia here . The Maemo platform is the software stack for Nokia Internet Tablets, which includes Internet Tablet OS and the Maemo SDK. The Maemo platform is developed by the Maemo Software department within Nokia.The Maemo platform includes the Internet Tablet OS, which is based on Debian GNU/Linux and draws much of its GUI, frameworks, and libraries from the GNOME project. It uses the Matchbox window manager, and like Ubuntu Mobile, it uses the GTK-based Hildon as its GUI and application framework.The Maemo SDK is based around the Debian-oriented Scratchbox Cross Compilation Toolkit, which provides a sandbox environment in which development may take place. Scratchbox uses Qemu to emulate an ARMEL processor or sbrsh to remotely execute instructions. Scratchbox-compatible rootstraps are available for both x86 and ARMEL, so the majority of development and debugging takes place on x86, with final packaging being for ARMEL.

27.7.08

High performance collections for Java

If you are on look out fpr a high performance collection libray , then here is one for you GNU Trove .The Trove library provides high speed regular and primitive collections for Java

Few excerpts from Trove website here

The GNU Trove library has two objectives:

  • Provide "free" (as in "free speech" and "free beer"), fast, lightweight implementations of the java.util Collections API. These implementations are designed to be pluggable replacements for their JDK equivalents.
  • Provide primitive collections with similar APIs to the above. This gap in the JDK is often addressed by using the "wrapper" classes (java.lang.Integer, java.lang.Float, etc.) with Object-based collections. For most applications, however, collections which store primitives directly will require less space and yield significant performance gains

Some Info:) : It looks Trove's TLongIntHashMap uses only 27 bytes per entry , where as original java impl uses around 100 bytes per entry ,stated here

Minimal Perfect Hashing

Have u heard of 'Minimal Perfect Hashing' , if not , Perfect hashing guarantees that you get no collisions at all. It is possible when you know exactly what set of keys you are going to be hashing when you design your hash function. It's popular for hashing keywords for compilers. (They ought to be popular for optimizing switch statements.) Minimal perfect hashing guarantees that n keys will map to 0..n-1 with no collisions at all

More info here .

SourceForge.net Community Choice Awards

SourceForge.net announced the finalists of the 2008 SourceForge.net Community Choice Awards.

There are different categories like Best Project , Best Project for the Enterprise ,Educators,
Gamers,multimedia ' and many more

More info and details of the project can be found here