Thursday, December 22, 2005

Friday, December 16, 2005

Pet peeves at work

Some things I have no patience for in a work environment (more relevant to the indian scenario):

Type 1]"I'm taking a break => so must you"

This is the number one kind of pest in the Indian corporate setup that you can come across. People who keep peering at their screens for hours at end, finally decide they need a break. So, what do they do? Barge into someone else' cubicle, nose around, pass comments in general, play the fool and expect the other person to reciprocate. Remember, that person has no work except to entertain this moron.

Type 2] "What's he doing to get an edge over me?"

This kind of a pest has NO RESPECT WHATSOEVER FOR ANYONE'S PRIVACY. Has to keep peeping into everyone's screen, finding out what great tech article the other guy is reading (& getting an edge over this moron?Who cares? ) They constantly have this insecurity that they're losing the edge & the other guy is going one up over this loser. So, whether you're writing code ("it's our product's code that he's keying in - i have a right to see it too"), reading an article ("this guy refuses to waste time on orkut like i do. Doesn't he have a life?") or composing a mail("ah, finally"), he must look into your screen. My response is generally one of these:

1)That's none of your business sucker.
2)You call yourself a professional?
3)"Etiquette" - ever heard of it?
4)"Self respect" - not heard of this either?
5)I'll tell you when you're allowed to play sherlock & look over my shoulder.
6)Do your own thing
7)Spending a year in the industry doesn't make you "experienced". It takes mental maturity to understand how a professional work environment functions. This isn't your college. Time to grow up/
8)(And if push comes to shove..) Go fly a kite.

Type 3] Hypocrisy

The same pest who has admirable qualities 1] & 2] also talks of how the Indian IT industry "isnt't professional enough compared to that in the US of A " - look who's talking.

The bottom line -you need to mature dear, and mature fast. Poke your nose into other' biz only when you're asked to. Don't impose your schedule, your mood & your state of mind on others. Do your own thing. If your feeling bored, go to the rooftop,get some fresh air or even better, fly away from there. But learn to be professional, for christ sakes. This isn't your damn college!! Get the message, yes?





Wednesday, December 07, 2005

The Niagara thunders down in full force

The enormity of Niagara's processing capability & it's power efficiency are simply overwhelming every other system in it's class built to date. The amount of buzz it's deservingly generated is quite amazing, to say the least. And HP, as usual, has shown it's class by resorting to FUD. Alan Hargreaves has responded fittingly. Some more information on the niagara boxes & the records that they've been setting. btw, Sun's open sourcing the design & validation code for the UltraSparc T1 (Niagara). More links:

http://www.eweek.com/article2/0,1895,1896866,00.asp

http://blogs.sun.com/roller/page/dagastine?entry=ultrasparc_t1_screams_running_java

http://blogs.sun.com/roller/page/jclingan?entry=simply_refreshing


Technorati tags: , ,

Thursday, November 17, 2005

Capturing Screenshots in GNOME on Solaris

Ever tried capturing a screen shot of a menu in an UI application on GNOME? Notice how the menu gets de-selected (or loses focus & disappears) as soon as you hit the print-screen button. The way to get around this is to use the gnome-panel-screenshot command at the console with the --delay= option. This switch makes the screen capture occur automatically after the specified delay, by which time you can "prepare" your application UI for the screen shot.

Technorati tags: , ,

Monday, November 14, 2005

22 Dell Boxes = 2 Galaxies

That's right. A former dell shop just replaced 22 of it's servers with 2 four core galaxy boxes.

Technorati tags: Sun, Galaxy,Dell

Created a new technorati profile

This is my profile. Go fetch!

Monday, November 07, 2005

"Titanic" Itanium

Itanium's "titanic" characteristic - of going down in cold waters - is becoming more obvious by the day.
Sun responds .

Technorati tags: Sun, Itanium,HP

Thursday, November 03, 2005

netbeans 5.0:What's cooking?

Charles ditzel writes about some cool new additions to netbeans 5.0

Friday, October 28, 2005

Fleeing temptation..

"Those who flee temptation generally leave a forwarding address."
- Lane Olinghouse

Brilliant quote, isn't it? :-)

Thursday, October 27, 2005

Meeting Geoff Arnold

This is why i just love working at Sun. If you swear by distributed computing, could you ask for anything more than a meeting with one of the Jini Engineers? That's right, I got to meet Geoff Arnold. I mustered enough courage to ask him about decentralized discovery in Jini and querying/aggregating partial results in a distributed computing system (like project neuromancer). He was in Bangalore to talk the JBI folks, and set aside some time for a talk on "the future of distributed computing". Need i say that it was nothing short of enlightening and inspiring? And does someone have to tell me that I'm working at exactly the right place? :-)

Correction: I had previously (erroneously) stated that Geoff Arnold was one of the *original* Jini team members. (See the comments.)
Sorry about the gaffe, Geoff. :-)

Update: Geoff Arnold has since moved to Amazon

Monday, October 24, 2005

Cool quotes

Found these on my (custom) google home page -

The only thing that sustains one through life is the consciousness of the immense inferiority of everybody else, and this is a feeling that I have always cultivated.
- Oscar Wilde
My definition of a free society is a society where it is safe to be unpopular.
- Adlai E. Stevenson Jr.
Preserving health by too severe a rule is a worrisome malady.
- Francois de La Rochefoucauld
The best car safety device is a rear-view mirror with a cop in it.
- Dudley Moore

Friday, October 21, 2005

Town hall with John Fowler

Just came back from a town meeting with John Fowler at the cafeteria. Man, does he speak fast. He probably provides a stiff competition to Bryan Cantrill in speed of speech. And he really is earning is salary - every cent of it. The fact that he's an Engineer-turned-manager showed up on several occasions when he answered technical questions in the Q&A with great ease (including a rebuttal to HP's claims on cache pollution in the Niagara). He must've been a good engineer. But is he a good orator ! He had the audience in a trance during the whole session, treating us to delightful technical tidbits, interesting stats, marketing theories and an amusing old story on how he first me Andy Bechtolsheim.
Sun is in good hands - you can be sure of that.

Thursday, September 22, 2005

The Sun cares for Planet Earth

Some environment friendly initiatives by Sun highlighted here

Friday, September 02, 2005

Java trivia

Brilliant piece of Java trivia
I could figure out the answer (wink wink). Could you?

Tuesday, August 30, 2005

Feel the power (outage) of Dell

Good analysis of power consumption by Dell machines.

Tuesday, August 23, 2005

A verse very relevant to me

Found the complete text of Robert Frost's "Stopping by Woods on a Snowy Evening" here:

Whose woods these are I think I know.
His house is in the village though;
He will not see me stopping here
To watch his woods fill up with snow.

My little horse must think it queer
To stop without a farmhouse near
Between the woods and frozen lake
The darkest evening of the year.

He gives his harness bells a shake
To ask if there is some mistake.
The only other sound's the sweep
Of easy wind and downy flake.

The woods are lovely, dark and deep.
But I have promises to keep,
And miles to go before I sleep,
And miles to go before I sleep.

Monday, August 22, 2005

Linux trademarked

I hope this isn't a rumour.
Cry, my dear zealots on slashdot :-)

Tuesday, August 16, 2005

If you can't join them

"If you can't join them, beat them." - They didn't want me to join them. Granted. I'll now beat them whenever we face-off. That's a promise. I'll make them regret this. Promises to be fun.

Thursday, July 21, 2005

Good Quote

Found this excellent quote on the google home page:

"Getting ahead in a difficult profession requires avid faith in yourself. That is why some people with mediocre talent, but with great inner drive, go much further than people with vastly superior talent."
- Sophia Loren

Friday, July 15, 2005

Application Versioning

Tom ball explains how class loading can be used to achieve simple application versioning -

Versioning, which I'm defining for this entry as how a Java application manages its external library dependencies, has been a tough issue ever since Java first released. Back when Java was born, the vision was that each machine would have a single Java runtime and standard libraries which would always be fully backwards-compatible. The reality has been that for most apps, the only reasonable alternative to testing a full matrix of released JREs and libraries is to instead package everything the app needs, install the whole hairball on each customer's system and use a custom classpath to access it. The problem with a custom classpath is that it is easy for your customers to break in subtle (and not so subtle) ways, which makes them cranky and can drive your tech support engineers crazy. Some work has been done in the JDK via its Package Versioning Specification and API, but there are still times when your app really needs to keep specific libraries under tight control.

NetBeans has this problem with its javac bridge, which allows its editor and refactoring modules access to javac's error checking and parsing support. The problem is that javac doesn't have a public API, so while a tool can leverage a specific version of javac, it cannot rely on whatever is on the customer's machine since its internal API may be radically different. We have a recent version of javac that works with our bridge, but just adding it to the NetBeans classpath won't work for two reasons:
  • NetBeans supports many different JDKs, each of which have their own version of javac; and
  • The Mac OS X includes the javac classes in its bootclasspath (and supportable products shouldn't whack the bootclasspath if possible).
The solution proved fairly trivial to implement while being quite robust: define a ClassLoader to isolate the bridge's use of javac classes from the rest of the IDE. Here is the ClassLoader implementation we use; NetBeans has several similar loaders for specific modules, but Tomas Hurka wrote this Factory class for the javac bridge:

    private static class GJASTClassLoader extends URLClassLoader {
private final PermissionCollection permissions = new Permissions();

public GJASTClassLoader(URL gjastJar) {
super(new URL[] {gjastJar}, Factory.class.getClassLoader());
permissions.add(new AllPermission());
}

protected Class loadClass(String n, boolean r) throws ClassNotFoundException {
if (n.startsWith("com.sun.tools.javac") || n.startsWith("org.netbeans.lib.gjast")) {
// Do not proxy to parent!
Class c = findLoadedClass(n);
if (c != null) return c;
c = findClass(n);
if (r) resolveClass(c);
return c;
} else {
return super.loadClass(n, r);
}
}

protected PermissionCollection getPermissions(CodeSource codesource) {
return permissions;
}
}
As you can see, we rely on URLClassLoader to do all the heavy lifting. Our version isolation support is in loadClass(), where a test is made of the requested class name to see if it is in one of the packages to be isolated (here, we test whether the class is a javac or bridge class). If it is an isolated class, URLClassLoader.findLoadedClass() and findClass() look it up in the jar file we supplied in the constructor; otherwise we let URLClassLoader.loadClass() delegate to the parent classloader.

Now, we need to interact with classes loaded by this classloader. What works best for us is to define a simple interface which the versioned classes and their client code shares, and a factory class that uses reflection to load the class which implements that interface (in 1.0, you needed a default constructor and used Class.newInstance()). Here's a simplified example (from the same Factory class):

public interface ErrorChecker {
int parse() throws CompilerException;
}

public final class Factory {
private static Factory instance = null;
private static Constructor newErrorChecker;

public static synchronized Factory getDefault() {
if (instance == null) {
instance = new Factory();
Class[] newCheckerTypes = new Class[] {
ECRequestDesc.class
};

File gjastJar = InstalledFileLocator.getDefault().locate("modules/ext/gjast.jar", "org.netbeans.modules.javacore", false);
try {
ClassLoader loader = new GJASTClassLoader(gjastJar.toURI().toURL());
Class c = Class.forName("org.netbeans.lib.gjast.ASErrorChecker", true, loader);
newErrorChecker = c.getConstructor(newCheckerTypes);
} catch (Exception e) {
}
}
return instance;
}

public ErrorChecker getErrorChecker(ECRequestDesc desc) {
try {
return (ErrorChecker) newErrorChecker.newInstance(new Object[] { desc });
} catch (Exception e) {
Throwable t = e.getCause();
throw new RuntimeException("Cannot create errorChecker: " +
t != null ? t : e);
}
}
}
In the above, we fetch the ASTErrorChecker constructor via reflection, then use it whenever the client requests a new ErrorChecker implementation. Because the interface doesn't directly or indirectly reference any class types in our private javac copy (CompilerException is also shared), objects created using its classes can interact with the client without conflict.

There is one thing to watch for (there always is), however: sometimes you can find yourself pondering the impossible, like I did yesterday:

debugshot.png

What caught me off-guard is that the debugger shows the type of "ex" is EmptyScriptException, but if it were that type then it should have been caught by previous catch block. Worse, a "(ex instanceof EmptyScriptException)" watchpoint returns "false", when it "obviously" should be true. The issue is that a class isn't just defined by its bytecode (the classfile's contents), but by the combination of bytecode and classloader. Here, there were two copies of EmptyScriptException loaded: once by Jackpot's private classloader, and once by the NetBeans one. Instances of one class copy will fail instanceof and catch tests with the other. I frequently forget this subtlety until reminded by a few head bangs against my monitor. The fix is to add the class to your list of classes which your classloader ignores and therefore shares with its parent classloader.

Over time, I have learned the value of this behavior (the classes not mixing, not the head banging). Since I'm pretty lazy, the extra work required to share classes between classloaders means that my designs do as little class sharing as possible. It is easier to maintain a really strict isolation with only a few, simple interfaces, than it is to maintain a big list of shared classes and deal with the headaches of managing their dependencies. A nice bonus is that this sort of isolation lends itself to distributed and parallel designs, where the more lightly coupled remote objects are to each other, the better they work together. Besides, it's hard to convince your manager you need the latest fire-breathing multi-processor workstation if your design is hopelessly interlocked.

This blog entry is way too long. I hope however that it dispells the idea that writing a classloader is rocket-science or limited to a few obscure uses. Managing application versioning is a problem many application teams face, and some judicious classloading can make it much easier.

Remember, no rocket science, this. :-)

Tuesday, July 12, 2005

Eclipse craves for matisse

Eclipse users are desperate for an answer to netBeans' "Matisse" gui builder. But there's no solace and no respite in sight.
I want to hear the eclipse zealots respond to this one.
Here's the bug report that begs for it. (Sadistic pleasure, this.)
The old order changeth. :-)

Friday, July 08, 2005

Task queues in Solaris

Good blog on deferred processing of kernel level tasks in Solaris.

Thursday, July 07, 2005

MIT Blog Survey

Found this survey on one of the sun blogs. Will make for interesting stats, I'm sure -

Take the MIT Weblog Survey

Tuesday, June 28, 2005

Sun's truce with IBM (for now)

InfoWorld reports -
In detailing IBM’s renewal of its Java agreement, Schwartz acknowledged that there has been “a little bit of a chill” in the relationship between the two vendors. But IBM and Sun announced an 11-year extension to their Java technology agreement. IBM will continue to license Java technologies from Sun including the Enterprise, Standard and Micro editions of Java as well as Java Card technologies. IBM also will continue participating in the Java Community Process.

In addition, IBM will port its DB2, Tivoli and WebSphere middleware to Sun’s Solaris 10 OS. The agreement, said Robert LeBlanc, general manager of the WebSphere product line at IBM, shows that IBM and Sun are in Java for the long haul.


Peace - and prosperity - for the community

Positive reviews for the Sun App Server 8.1

Good review/comparison with WebSphere

Friday, June 24, 2005

Eclipse's "external" contributors

A good flame war on IBM's hypocritical claims of "the huge number of external contributors in Eclipse"

Friday, June 10, 2005

Good DTrace introduction (flash)

http://snpnet.com/sun_DTrace/dtrace.html

netBeans Abbreviations

You can add your own abbreviations (i.e editor shortcuts) to NB by creating/modifying the abbreviations.xml under [user-home-netbeans-dir]\4.1\config\Editors\text\x-java\.
Roman Strobl explains.

Thursday, June 09, 2005

NetBeans overtakes Eclipse

NetBeans has surpassed Eclipse on the Daily Traffic Rank Trend on June 7th.
Here's the evidence.

Contributing to the J2EE SDK (RI)

If the title interests you, this is where you should be headed - https://glassfish.dev.java.net

Wednesday, June 08, 2005

Sun CTO on divergent processor ISAs

Worth a read

Tree felling around Sankey

I was alarmed to see trees lining the walking-track around Sankey Tank being felled this morning. But, on enquiring at the Deccan Herald office, I found out that they're following a carefully laid-out development plan for the peripheral areas of the lake. A committee is supposedly in place to carry out the planning & implementation of this. The reporter was kind enough to provide details about this. He even said that 2 new trees will be grown in place of every OLD tree chopped there. But, when I asked him if such "committees" were not acting as per their own whims & fancies, he just said, "We're hopeful that that's not the case & that all this is not an eyewash.We're keeping an eye on developments".
In retrospect, the press is probably the last powerful institution that's capable of protecting Bangalore's ecological balance. (Sigh)

Tuesday, June 07, 2005

A Mac laptop running on Niagara?

Read this blog on ZDNet that goes like-

"So what can Apple do? What they should have done two years ago: hop into bed with Sun. Despite its current misadventure with Linux, Sun isn’t in the generic desktop computer business. The Java desktop is cool, but it’s a solution driven by necessity, not excellence. In comparison, putting MacOS X on the Sun Ray desktop would be an insanely great solution for Sun while having Sun’s sales people push SPARC based Macs onto corporate desktops would greatly strengthen Apple.

Most importantly, SPARC is an open specification with a number of fully qualified fabs. In the long term Apple wouldn’t be trapped again and in the short term the extra volume would improve prospects for both companies. Strategically, it just doesn’t get any better than that.

Niagara rocks. You want low power use for a laptop? How about an eight way 1.4Ghz SMP core with TCP/IP and cryptography done in hardware - at 65 watts flat out. There are some serious software issues, but get past them and you’ve got eight to ten Xeons in the box - at 65 watts.

Sun’s president, Jonathan Schwartz, put a nice invitation for you in his blog last Sunday. Maybe you should think about it..."


Sun folks(you need to pursue this...) & Apple folks, ARE YOU LISTENING??? Isn't this worth a try?

Monday, June 06, 2005

Sun:leading everywhere

Some really heartening developments :

1)The E20K kicks IBM's 32 way power 5 based server and one from HP that has a similar (but in the end - inferior) configuration.

2)The new netBeans gui builder simply rocks!!!

3) netBeans draws level with eclipse

4)Sun acquires storagetek to add to the procom IP acquisition and tarantella(on the secure,remote desktop front).

Hopefully, all these will see sun hitting back hard at its competitors in the quarters to come.

Tuesday, May 31, 2005

Why clone is slower than newInstance

Ken Russell from the Java HotSpot VM Group, Sun Microsystems writes in java.net forums:
"Actually in the HotSpot JVM Object.clone() is not currently heavily optimized, while new instance is. You can feel free to file an RFE about this in the bug database. You can work around this problem by overriding clone() and manually allocate the new instance and assign the data into it. In fact, I think this is already probably necessary once your data structures get more complicated, which is why slow performance of Object.clone() hasn't shown up on our performance radar.
P.S. Here's a revised version of your test case which gets rid of startup transients:"


public class Main {
private boolean flag = true;
private String string = "Hello";
private int i = 0;

static class Child extends Main implements Cloneable {
private boolean flag2 = false;
private String string2 = "World";
private int i2 = -1;
}

private static int count = 1000000;

public static void testClone() throws CloneNotSupportedException {
Child child = new Child();
int res = 0;
long startTime = System.currentTimeMillis();
for (int i = 0; i < count; i++) {
Child child2 = (Child) child.clone();
res += child2.i2;
}
long stopTime = System.currentTimeMillis();
System.out.println("" + count + " clones took " +
(stopTime - startTime) + " ms (dummy result = " + res + ")");
}

public static void testNewInstance() {
int res = 0;
long startTime = System.currentTimeMillis();
for (int i = 0; i < count; i++) {
Child child = new Child();
res += child.i2;
}
long stopTime = System.currentTimeMillis();
System.out.println("" + count + " new operations took " +
(stopTime - startTime) + " ms (dummy result = " + res + ")");
}

public static void main(String[] args) throws CloneNotSupportedException {
testClone();
testClone();
testClone();
testNewInstance();
testNewInstance();
testNewInstance();
}
}

Friday, May 27, 2005

Slashdot: In 72 Hours, Your Ban Will Be Lifted

Has this happened to you?
"Your Headline Reader Has Been Banned".Your RSS reader is abusing the Slashdot server. You are requesting pages more often than our terms of service allow. "Do Not Bother Contacting Us For 72 Hours".Very funny.
The faq page says this

Wednesday, May 25, 2005

Cartoon blogging

This is simply fantastic. This guy's got talent.

Friday, May 20, 2005

Thursday, May 19, 2005

Netbeans mobility pack ROCKS!!!!!

Sat through the Sun tech days session on writing MIDP apps with netBeans. Chuk-Munn Lee simply rocks!! Now, the NB mobility pack is an amazing piece of software -beautifully crafted and shockingly productive. It made me want to give up J2SE dev & take up J2ME full time. :p

More on the J2ME capabilities of NB here and here.

Friday, April 29, 2005

Good Q&A on Jini

An interview with Jim Waldo
An old one, but answers a number of questions that people continue to ask even now.

btw, he blogs here

Monday, April 25, 2005

The first Dual core Opteron servers are out.

Sun announces V40z's with dual core opterons. Sets performance records with the new irons.

netBeans build

Just built netBeans from the sources on my machine. :-)
Check these links for more info...

http://www.netbeans.org/kb/articles/buildAndRun.html#adding_modules
http://www.netbeans.org/kb/articles/start_dev_NB.html

Thursday, April 21, 2005

DTracing Java

If you're a java developer & you haven't read this entry of Bryan Cantrill's blog, you really have missed something.
One word - IT ROCKS!!!
Such level of profiling & so many intricate details of the method calls, all in a very comprehensible manner is, like the blog says, without precedent.

Wednesday, April 13, 2005

Yet another tp survey

A survey that tries to guess "What kind of a movie you belong to"...

I belong to....
Pirates of the Caribbean!

What movie Do you Belong in?(many different outcomes!)
brought to you by Quizilla
Took a toefl-like quiz that measures the extent to which one's english is americanized (read polluted). I didn't do very badly, actually, considering my exposure to american claptrap - ;-)

English Genius
You scored 92% Beginner, 100% Intermediate, 100% Advanced, and 93% Expert!
You did so extremely well, even I
can't find a word to describe your excellence! You have the uncommon
intelligence necessary to understand things that most people don't. You
have an extensive vocabulary, and you're not afraid to use it properly!
Way to go!

My test tracked 4 variables How you compared to other people your age and gender:
You scored higher than 37% on Beginner
You scored higher than 72% on Intermediate
You scored higher than 88% on Advanced
You scored higher than 98% on Expert

The Commonly Confused Words Test on Ok Cupid

Thursday, April 07, 2005

Why slashdot plays home to the anti sun flame-throwers

This is the first plausible reason you'll find when you try figuring out why the slashdot editors so readily approve anti-sun posts - like this anonymous comment at Grisanzio's(opensolaris community manager) blog suggests -
"I think Slashdot has been specifically targetting Sun, lately, probably because their behind-the-scenes financial interests revolve around Linux." Isn't that obvious?

Wednesday, April 06, 2005

Excerpts from Tom Ball's Blog: Exceptional Debugging

A rather clever way of checking whether a class exists in the current class path:

public boolean classExists(String name) {
String resource = name.replace('.','/') + ".class";
return getClass().getClassLoader().getResource(resource) != null;
}
This was suggested by a java.net use "brucechapman" in response to Tom Ball's latest blog entry - Exceptional Debugging

Thursday, March 24, 2005

Solaris Sys admin guide collection

Useful link if you want to tune a few parameters for your app (not that i do.. :-) )
Sys admin guide collection
Here's a good collection of Zone demos.

Tuesday, March 15, 2005

Why Eclipse users are moving to NetBeans

Good read...http://cld.blog-city.com/read/1126337.htm
No surprises there. Eclipse's SWT sucks on Linux while NetBeans behaves like the angel that it is even on Windows. Why? NetBeans' UI It's pure java. No native code at the Window Manager Level. It doesn't try to make native calls for showing every small widget (like SWT does). SWT, that wy, is an antithesis to the java philosophy (where you have all the native code only at the VM level and avoid, to the extent, possible, native calls at your app level to keep your code truly class platform). Naive windows users fall for the "oh so windows-like" look and feel on exlipse on Windoze. Try it on Linux or Mac and you'll know the difference (in speed & LAF) between Eclipse and NetBeans. Eclipse looks broken & frayed on all other platforms except Windows. And if like Eclipse's "native" LaF so much, i'm afraid, you're tending towards an C++ based Java IDE like MS J++ (and you have not right to call yourself a true blue Java dude).

Monday, March 14, 2005

Vintage Jonathan!

Jonathan is simply awesome in his latest blog.

I'm quoting the entire entry here, just for the reader's benefit...

Quoted blog Begins:


The Economies of Scale - The Scale in Economy



One of my best friends in life started his professional career at Carnegie Mellon University, where for a while he worked (back in the 80's) on the challenges surrounding parallel computing. Back then, it was a relatively esoteric field, in which one of the challenges was finding problems that lent themselves to parallel approaches, and another was trying to build programming models that made those problems tractable.


Spooling forward about 20 years (yipes), during the recent Boston Red Sox victory, MLB.com served 100,000,000 page views to 10,000,000 unique visitors. Each doing roughly the same thing. Talk about massive parallelism, it's in front of our eyes. The internet itself has yielded the world's largest parallel applications - from instant messaging, to bidding on beanie babies.


Now Sun has long been an investor in parallelism. First, we built systems capable of managing tremendous load (we're honored to supply the infrastructure under America's baseball addiction); and as importantly, we built an operating system that knew how to manage multiple threads of execution. Managing parallel "threads," historically one per CPU, is key to scalability - simply put, the more work you've got to do, the more CPU's you throw at the problem. And having an operating system that knows how to run efficiently across 100's of cpu's is a handy thing, at the core of Solaris's reputation for "scalability." Standing on the shoulders of giants, the Java platform was built with parallelism in mind, too.


Now oddly enough, despite the crises introduced when businesses have insufficient capacity, more often, businesses have too much capacity - average utilization in a datacenter is something like 15%. Which means most businesses waste enormous sums of the money on systems (not to mention the concomitant waste in power to keep dormant systems on, cooled and housed). Mainframes, historically, had very high utilization. Why? They were (and are) incredibly expensive, but they also have a feature called "logical partitioning" (LPARs) which allows big systems to be divided into many smaller mainframes. Until this year, no non-mainframe operating system offered logical partitioning. (Paraphrasing Gilder, "you waste what's cheap." Jonathan's corollary, "Until you build your whole datacenter out of it.") That is, until a few weeks ago.


One of the key features in Solaris 10 is just this - "containers" are logical partitions that allow a single computer to behave like an unlimited number of smaller systems, with little/no overhead. Reboot a partition in 3 seconds, keep disparate system stacks on the same computer, assign different IP addresses or passwords to each, treat them like different computers, and use them to consolidate all those otherwise 15% utilized machines - sky's the limit (on any qualified hardware platform), and with it, customers can now drive utilization through the roof. With no new licensing charges. (And personally, I'm a fan of 3 second reboots.)


But back to baseball. One thing to recognize with businesses like MLB.com (and Google and Amazon and eBay) is that system level performance is now all about parallelism - defined as the art of behaving well when 3,000,000 baseball viewers (or searchers or shoppers or bidders) arrive to use your service. Sun, in fact, saw two years ago what Intel saw this year, that the gigahertz race was over. So we biased our entire system roadmap to "thread level paralellism," and started designing systems with many, rather than one, thread per CPU. Most SPARC systems now ship with two threads of execution per socket (standard in all UltraSPARC IV systems). But that's just a baby step toward true parallelism.


How parallel can we get? Niagara chips, built into our upcoming Ontario systems, will feature 8 cores, each with 4 parallel threads of execution - 8 times 4 yields a 32 way system - on a single chip. These systems will consume far less electricity and space than traditional system designs - and will be optimized for MLB.com style applications: thread sensitive, big data, throughput oriented apps. Moreover, they'll drop our customers' power bills and real estate costs - which may not sound like the class of problem today's CIO cares about... until you actually talk to a CIO. Massive power and space bills are a big problem, and the physics of cooling a space heater is a more popular topic than you'd think. (btw, a dirty little secret - remember California's power crisis a few year's back? One of the leading suspects? Computers chewing up huge amounts of power, and producing heat, which required air conditioners, which chewed up even more power...)


As we scale out these systems, it's perfectly reasonable to expect greater and greater levels of parallelism. And the good news is not only do Solaris and Java (and most of the Java Enterprise System) eat threads for lunch, but with logical partitioning, we can deploy multiple workloads on the same chip, driving massive improvements in productivity (of capital, power, real estate and system operators).


But let's not stop there. Simultaneously, much the same inefficiencies described above have been plaguing the storage world. A few years back, "SSP's," or storage service providers, began aggregating storage requirements across very large customer sets, providing storage as a service. Most SSP's found themselves stymied by the diversity of customer they were serving. Each customer, or application opportunity, posed differing performance requirements (speed vs. replication/redundancy vs. density, eg). This blew their utilization metrics. Before the advent of virtualization, SSP's had to configure one storage system per customer. And that's one of the reasons they failed - low utilization drove high fixed costs.


So that was the primary motivation behind the introduction of containers into our storage systems. The single biggest innovation in our 6920's is their ability to be divvied up into a herd of logical micro-systems, allowing many customers or application requirements to be aggregated onto one box, with each container presenting its own optimized settings/configurations. This drives consolidation and utilization - and when linked to Solaris, allows for each Solaris container to leverage a dedicated storage container. Again, driving not simply scale, but economy.



On top of all this, the same challenge has plagued the network world - diverse security requirements, and a desire to partition networks into functional or application domains, have driven a proliferation of "subnets" for applications, or departments. HR, Finance, Operations and Legal, for example, each require their own VLANs (virtual local area networks), the result of which is a gradual increase in partitioning, paired with a creeping inefficiency in network utilization - as the static allocation of subnets outpace anyone's ability to manage them. (If you recall, prior to their downfall, Enron - one of the beneficiaries of California's power crisis - was setting out to create a market for surplus network capacity - nice idea, turned out to be tough to execute).


This was the primary motivation behind Sun's building containers in to our application switches - the devices that now sit in front of computing and storage racks, to help optimize performance of basic functions (network partitioning, security acceleration and load balancing, for example). The network itself can be divided into individual network containers, or virtual subnets, and programatically reprovisioned as loads change.


Meaning that a customer can now divide any Sun system into logical partitions or containers, each of which draws on or links with a logically partitioned slice of computing, storage and networking capacity. Which presents the market with an incredible opportunity to drive utilization up, and exit being one of the most inefficient (and environmentally wasteful - where are the protests?).


Which is a long way of saying the internet is the ultimate parallel computing application - millions, and billions, of people doing roughly the same thing, creating a massive opportunity for companies that solve the problems not only with scale, but with economy. A unit of computing has been detached from a CPU, to whatever a baseball fan wants at MLB.com. Or a bidder wants at eBay. Or a buyer at Amazon. Can you imagine how big a datacenter MLB.com would have to build if we were still in a mode of thinking each customer got their own CPU?


Just think about that power bill.


_________________


Some other thoughts:



What happens to software licensing in a virtualized world? What's a CPU in a per-CPU license when the system you're running has 32 independent threads? An anachronism in my book. Can you imagine if MLB.com charged by the CPU? That's why all software from Sun, from the OS to the middleware, will be priced by the "socket" or employee. We believe the rest of the industry should move in the same direction.


Who's the ultimate beneficiary of this mass virtualization? In the short run, customers who can now both recover dormant capacity and boost productivity (consolidate to Solaris 10, UltraSPARC IV, our 6920's or our app switches - have yourself a "look at all this capital I freed up!" experience, and guarantee yourself a spot at your CFO's summer party).


But the ultimate beneficiary may be the company that deploys all these systems - and can link together, as well as dynamically provision across, it in its entirety. The combinatorics are staggering - thousands of containers, against thousands of threads against the same orders of magnitude in storage and network partitions. That's some serious scale. Requiring some serious economy in provisioning and operation.


So what business could possibly require or operate infrastructure at that scale? Sun's Grid, of course. No reason to think we won't be serving one of the largest markets in the world - driving utilization to be both prudent, and responsible.




(End of quoted Blog)

This man has SOME talent, doesn't he? How can you not be his fan???

S10 installtion walkthrough

There's a nice walkthrough (with screenshots) of S10 installation here. Really cool.
btw, i installed S10 on friday on a test machine at office. Absolute bliss. That's the phrase. More on that later...

Thursday, March 10, 2005

Arrogance is still the #1 characteristic of IBM

Author/Freelancer Dave Taylor writes:


But then Gerstner comes across as remarkably arrogant and elitist as he shares the "tedious obligation" of having to go to formal fundraising events for major charities, the experience of having a fancy multi-story apartment in a chic area of New York City and a second house on the beach in Florida. Yet when he joins IBM, Gerstner complains about the stodginess of the executive team but has no compunction flying around on the IBM corporate jet or having his "driver" show up in the morning to chauffeur him to the office.

I realize that when you're the boss of a multi-billion-dollar corporation, there are certain perquisites that not only go with the job, but are expected, but it seems awful disingenuous to talk about cutting costs, rethinking executive reporting structures, and maximizing the cash reserve of a company when you can't hop on a commercial flight or drive yourself to work...

On the plus side, the book is compelling, interesting listening so far, and Gerstner shows that he had a keen eye for corporate dysfunction and that IBM really was a company on the rocks, stifled and drowning in a frozen bureaucracy rife with "lifers". His description of how senior management meetings were nothing so much as the IBM version of multinational diplomatic negotiations is quite fascinating, for example.


Hmm.. any surprises there? The dinosaur is still the most arrogant animal in the forest (if only prehistoric & irrelevant).

Tuesday, March 08, 2005

The Solaris album of white papers.

An excellent compilation of articles on Solaris' implementation of various OS sub systems.


Published by Sun's Ozan yigit> :

Shared Libraries in SunOS


Virtual Memory Architecture in SunOS


SunOS Virtual Memory Implementation


Realtime Scheduling in SunOS 5.0


SunOS Multi-thread Architecture


Beyond Multiprocessing: Multithreading the SunOS Kernel


Implementing Lightweight Threads

Symmetric Multiprocessing in Solaris 2.0 [link not found]
Proceedings of the thirty-seventh international conference on COMPCON,
San Francisco, California, 1992

Vnodes: An Architecture for Multiple File System Types in Sun
UNIX


Evolving the Vnode Interface


Efficient User-Level File Cache Management on the Sun Vnode Interface


Extent-like Performance from a UNIX File System



Design and Implementation of the Sun Network Filesystem


The Sun Network Filesystem: Design, Implementation and Experience


Virtual Swap Space in SunOS


Profiling and Tracing Dynamic Library Usage Via Interposition


tmpfs: A Virtual Memory File System

The Translucent File Service [link not found]

The Automounter

The Automounter: Solaris 2.0 and Beyond [link not found]

The Autofs Automounter


Enhancements to the Autofs Automounter

Removable Media in Solaris,
Proceedings of the Winter 1993 USENIX
Technical Conference, San Diego, California,
USA , January 1993.
USENIX Association.

Zero-copy TCP In Solaris

The Process File System and Process Model
in UNIX System V

[link not found]
Evolution of the SunOS Programming Environment,
Proceedings of the Spring 1988 EUUG Conference,
Cascais, Portugal, 1988.


Implementing Berkeley Sockets in System V Release 4


Secure Networking in the Sun Environment


Fast Consistency Checking for the Solaris File System


System Isolation and Network Fast Fail Capability in Solaris


CPU Time Measurement Errors


Solaris Zones: Operating System Support for Server Consolidation


Solaris Zones: Operating System Support for Consolidating Commercial Workloads


The Slab Allocator: An Object-Caching Kernel Memory Allocator


Magazines and Vmem: Extending the Slab Allocator to Many CPUs
and Arbitrary Resources


Automatic Performance Tuning in the Zettabyte File System


Existential QoS for Storage


Dynamic Instrumentation of Production Systems


FireEngine - A New Networking Architecture for the Solaris Operating System


Some of these papers are like chapters from a book on modern OS concepts. Brilliant.

Tuesday, March 01, 2005

S10 beats Linux on network performance


A comparison between the network performance of Linux(RHEL) and S10. Evidently, S10 beats Linux, except in the low end single cpu(32 bit) category, by a good margin. Cheerio!!

Friday, February 25, 2005

Oscillating between literature and music

This came as a bit of a surprise to me, but the blogthing questionnaire says:





Your Dominant Intelligence is Musical Intelligence



Every part of your life has a beat, and you're often tapping your fingers or toes.
You enjoy sounds of all types, but you also find sound can distract you at the wrong time.
You are probably a gifted musician of some sort - even if you haven't realized it.
Also a music lover, you tend to appreciate artists of all kinds.

You would make a great musician, disc jockey, singer, or composer.



I was totally taken aback; shocked, in fact. But, guess what, I went back to the questionnnaire and changed just one answer to indicate that i enjoyed writing more than i did singing a solo, and this is what turned up -





Your Dominant Intelligence is Linguistic Intelligence



You are excellent with words and language. You explain yourself well.
An elegant speaker, you can converse well with anyone on the fly.
You are also good at remembering information and convicing someone of your point of view.
A master of creative phrasing and unique words, you enjoy expanding your vocabulary.

You would make a fantastic poet, journalist, writer, teacher, lawyer, politician, or translator.

Thank you, thank you. Now,that's a relief.Whewww!!

Thursday, February 24, 2005

Sun #1 Unix seller in 2004

This article quoted the yearly gertner report that just came out, stating:
"Sun retained the top Unix sales position, with $5.14 billion in sales, compared to HP's $4.89 billion and IBM's $4.32 billion. If IBM's current 7 percent Unix growth rate for 2004 holds and HP's and Sun's Unix sales continue to shrink by their respective 7.8 percent and 5.3 percent, Sun will still be the number one Unix vendor in 2005, but HP will drop to number three behind IBM."

And the report corresponds to a time when Sun hadn't even unleashed the power of Solaris10. Hopefully, things can only get better hereon. What will HP & IBM do? Run for cover and take refuge under Linux and Windows to escape the wrath of Solaris.The battle has only just begun (with Sun changing the rules of the game, again) :-)

Tuesday, February 22, 2005

A parody on HP

This site is the most hilarious spoof i've read/watched. Especially these pages -

1) Corporate news
2)New CEO candidates
3) Brand strategy
4) Offices of the future

Simply brilliant. What else can I say?!!

Monday, February 21, 2005

Some real good quotes from fortune

1)Q: How many Micro$oft programmers does it take to screw in a light bulb?
A: 472. One to write WinGetLightBulbHandle. One to write
WinQueryStatusLightBulb. One to write WinGetLightSwitch-Handle...

2)On the Internet, nobody knows you're a dog.
-- Cartoon caption

3)It may be bad manners to talk with your mouth full, but it isn't too
good either if you speak when your head is empty.

4)
"I made the decision to name the Justice Department building after Robert
Kennedy because he's deservant."

George W. Bush
November 20, 2001
Speaking to reporters in the Oval Office about his decision to name the
Justice Dept. building after former U.S. Attorney General, Robert Kennedy.
Aired on CNN.
(NOTE: I'll be updating this particular entry with new quotes as & when i find them.)

Friday, February 18, 2005

James Gosling on SWT

Some good points by Gosling on why SWT is a fast, light weight way to (porting) hell...

"The SWT thing was just…it pissed me off beyond words. So, if you wind back the clock a few years, the original toolkit in Java was this thing called AWT, the Abstract Window Toolkit. It’s still there, and it’s a fairly simple, straightforward toolkit, and it’s based on using the widgets from the underlying (inaudible). It had a wide variety of really, really ugly problems, things like how to get semantics consistent from platform to platform, and some of the little fringe things like cut and paste. Trying to get cut and paste to operate correctly between text widgets, like between the Mac text widgets, the Motif text widgets and the Windows text widgets. When you’re actually trying to use those text widgets in their native homes, it’s just a nightmare. How do you deal with things like subcopying, how do you make a button extensible? How do you deal with the more advanced features that people want, like being able to do tables where you can control the rendering of components and cells and that kind of stuff?

A lot of those things were completely precluded by the AWT architecture. IBM in particular was really upset about the way that the AWT architecture had gone, and they were one of the leading agitators that caused Flame to be created. In fact, about half of the engineers on the Flame team were actually from IBM -- they actually got IBM pay cheques. IBM built Apple Flame, and actually then Swing was quite successful, it’s been successful for quite a while. The biggest problem with Swing was that it can do so much that it’s kind of become like the 747 cockpit if you like APIs. There’s a lot of complexity there, and the hard part is figuring out how to use it. It’s in this weird situation where pretty much anything you can want to do in Swing, you can do easily. But what’s hard is to figure out the easy path through all of the different options, the different ways you can do things. Once you figure out the one true path to get what you want done, then it’s pretty easy. People often say “Why don’t you just make it easier by simplifying it?”, and say, “so you simplify it in this way, it would make my life better”. But then for the next guy it would be worse, because he wants to not go there, he wants to go on this particular path. So it’s been difficult to manage the complexity right.

So, wind the clock forward a few years, and there’s (inaudible) from IBM (inaudible) “Swing is too complicated, let’s do AWT all over again”, and if you look at the SWT architecture, it’s almost exactly the same as AWT. It has all the AWT problems: it’s way simple, it doesn’t port very well. And its API is somewhat different, because essentially what they did was they made the Windows version really easy by making their API pretty much a clone of the Windows API. And then on Linux, they tried to make Motif look like the Windows toolkit. They’ve got those mapping layers that are just like, really horrible, and it only kind of works. And same thing in OS X, their porting problems from platform to platform is a nightmare, their consistency (inaudible) is a nightmare. And it’s sort of like, “You were there seven or eight years ago. It was a bad place to be, don’t go back!”. The problem is that IBM is like three hundred and some-odd thousand people, so there’s like a cluster of people. Most of the people we were working with back then were in North Carolina and New York State, like Westchester, and they actually understood things pretty well."

Original Q& A transcript - James Gosling Q & A

Thursday, February 17, 2005

Autoboxing - Some home truths

Quoting some examples ...

1)
Integer i1 = 123;
Integer i2 = 123;
System.out.println(i1 == i2); //true

2)
Integer i1 = -129;
Integer i2 = -129;
System.out.println(i1 == i2); //false!!

The fact of the matter is that autoboxing is just an automatic wrapping & unwrapping of the primitives. == was never supposed to be used for comparing values. And autoboxing does not change those semantics (rightly).

P.S: While I'm talking about equality, here's how an IdentityHashMap differs from thae normal HashMap semantically (quoting from the docs)...

"in an IdentityHashMap, two keys k1 and k2 are considered equal if and only if (k1==k2). (In normal Map implementations (like HashMap) two keys k1 and k2 are considered equal if and only if (k1==null ? k2==null : k1.equals(k2)) .)"

(Remember, the contract b/w an hashCode() and equals() of an object requires that if you override the hashCode calculation, it is for you to handle the equality comparison as well, failing which, most HashMap implementations will bomb)

Idiosyncrasies of the == String comparison

Some fun with String equality ... (and btw, that's why it is advisable to use string.equals() instead of == )

String s1 = "True";
String s2 = "True";
s1 == s2 == true //compiler uses one instance for string literals

String s3 = new String("False");
String s4 = new String("False");
s3 == s4 == false //two forced instances

String s5 = "True";
String s6 = "Tr" + "ue";
s5 == s6 == true //compiler evaluates and uses same instance

String s7 = "False";
String sx = "F";
String s8 = sx + "alse";
s7 == s8 == false //compiler won't evaluate where a second reference is involved

Pretty much summarizes various possiblities that arise in the == string comparison. Found this in a discussion on
Autoboxing in J2SE 5 on TSS.

Monday, February 14, 2005

Building a new Bangalore (on a green graveyard)

Background first: BDA has announced a grade separator at South End Circle. And, curiously enough, the grade separator's arms will span South End road and the road leading to Madhavan Park. Doesn't make sense? Well, as residents & shopkeepers in the vicinity of south end circle say, the traffic at this "gateway to the south" is quite manageable and hasn't gone out of hand compared to, say, Diary circle or Bannerghatta road. Let’s assume, for a moment, that the locals don't have an iota of an idea about the traffic situation and the BDA is genuinely concerned about the citizens' welfare. Now, why would you have two arms of the grade separator on 2 of the calmest roads that lead to the junction? Why have the grade separator at all then? The answer to that lies in the answer to why the National College flyover was "conceived": It turns out that the private contractors involved in civil works are fast running out of projects. And there won't be any new projects coming up unless an artificial need for such projects is created. But, who is to decide whether a certain project is indeed required? Well, the civic bodies are wise enough to decide what's "good" for the people (and their own pockets), aren't they? That's why we're seeing a deluge of flyovers and grade separators being "synthesized", "planned" and executed. Of course, the contractors compensate the approving bodies appropriately (goes without saying). Obviously, since the amount of money involved is so huge, the flyover juggernaut rolls on inexorably - like it did in case of the national college flyover. The college itself, once surrounded by a verdant fortress, now lies partly buried under several inches of dirt and dust. Feeling powerless, and finding myself incapable of doing anything to save those trees from certain destruction, I rang up Suresh Heblikar last evening, looking for some guidance. He was kind enough to spend 15 mins explaining various possibilities and listing out options. Some take-home points at the end of the discussion-

  1. There is NO formal means of tackling this menace. You cannot waste your time bringing in stay orders from the court.
  2. Be specific – address the civic org that has approved this project. (The BDA in this case.) Shouting yourself hoarse on M.G road will have little impact.
  3. Make yourself heard –
    1. The least you can do is write to local papers about this. The Kannada papers are more vociferous when it comes to protesting for the environment and are more likely to publish your letter.
    2. Gather your friends/ other likeminded people and stage a protest. (You’ll first have to shed all your inhibitions to do that, though.) Try to get the press involved. Maybe invite a few reporters over to the place where you plan to stage the protest. In the past, Mr.Heblikar has helped resident groups get easier access to the press.
    3. If option b is not to your liking, gather residents of your area and organize a signature campaign. Submit the memorandum to the “Babu” involved.

  1. You do NOT have to belong to the affected area or be a native of Bangalore to lodge a protest. Remember, destruction of the environment affects every one of us, no matter which place we belong to. Mr.Heblikar gave a very good example of how a few Bengalis living around Bannerghatta road decided to protest the condition of the road and how it resulted in increased dust levels, reduced visibility around their apartments, and even induced respiratory disorders in their children. They approached him for guidance and he helped draw attention to their cause. When I expressed surprise over this incident, he said, “We wait for a messiah to appear out of nowhere and rescue us. We seldom take the initiative. We need to change the attitude and take ownership. It’s for our own good.” That’s something that we ALL need to bear in mind.

And you wouldn’t be hampering “development” by protesting against these project (the BDA loves to use this to respond to activists). We can do without such development in most cases. Would you prefer to wait the extra 10 minutes at the traffic signal (you might have to wear a mask then) or wake up gasping for breath every morning (what with all the trees gone) and wear a mask all day long? And I haven’t even started talking about the beauty that these trees lend to our city. In fact, they define (or defined?) our identity.

So, please, whatever your means, spend a few minutes of your spare time for a worthy cause. Make your voice heard and protect our green cover. Every individual does matter. Every person makes a difference. And remember, it’s for our own good.

First stop – The south end circle grade separator.

Some information that might help –

1) ToI editor – lettersbg@indiatimes.com

2) Deccan Herald – editor@deccanherald.com

3) Mr.Suresh Heblikar - 26553422

Friday, February 11, 2005

Here comes the sun(db)

At Sun Microsystems' annual meeting for analysts, Scott McNealy showed this slide and raised the possibility of Sun offering customers its own database software...

Well, that was the one thing everyone said sun was missing.Now what will Mr Milunovic have to say? I don't know about that, all I can say is "Here comes the Sun..." :-)

Friday, February 04, 2005

The Linux jihad against SUN (Read:bite the hand that wants to feed you)

Excellent blog by one Sid art on why the penguins are scared stiff by Solaris and keep comforting themselves by flaming Sun and labelling Sun "evil"
Random Thoughts: The Linux jihad against SUN: "The Linux jihad against SUN".
A followup on it by Simon Phipps is also really lucid.And, of course, i happened to read all this through Alan Hargreaves' entry. My comments posted there...

" Wise guy stallman has added more fuel to the fire, further misleading the already confused,terrified,insecure slashdot crowd. As simon phipps righty pointed out, they find themselves ill equipped to understand CDDL, and find solace in blindly attacking Sun. You need not be a lawyer to understand that OSI approval implies patent protected for the relevant IP.You need to remember that they've already done the legal homework on behalf of the community.So, why panic (or blindly flame Sun, Mr.Stallman)?"

Wednesday, February 02, 2005

Be an angel, throw the linux word on slashdot

Alan Hargreaves pointed out a couple of appalingly biased articles on ZDNet. Quite infuriating, really.This is what i posted under the comments...
"The first (anonymous) comment couldn't have said it better. The community blindly,desperately wants to "see sun revealed as the evil one". That's just not going to happen. Why?Because there ISN'T any evil,ulterior motive behind sun's moves. The community (read slashdotters) loves dancing to the tunes of IBM & HP. Just throw the Linux word and they'll fall head-over-heels. It's so distressingly easy to manipulate them. Which is exaclty what IBM did with their 500 patents, as jonathan pointed out. And what do they do when they're gifted a better operating system? Call the benefactor "evil" and "a bed-fellow of MS". The bias became even more obvious when a story-submission regarding the relevance of IBM's patents was simply rejected outright at slashdot.No surprises there.
-Bharath"

Monday, January 31, 2005

IBM's "donations" to the community (which community?Medical?Mechanical Engg?Gel embodiment?)

Quoting Jonathan:

"ps. You've got to love IBM's ability to play the community. Going through some of the patents they "donated" to the open source community a few weeks back, it looks as if they all, curiously, seem to be due for payment - and thus potential expiration - this year. Were they destined for the bit bucket (turns out IBM is among the largest patent expirers in the world, along with its largest issuer).

And some of the patents have nothing to do with open source software - my favorite in the heap is this one. Not sure that's going to be quite the comfort the community's looking for. Here are a few others - for those working in gel embodiments; and for the open source doctors in the crowd.

We know we need to help the community understand how to take advantage of our grant - but at least all 1600 of the patents we've granted to the world were for operating systems and software (USPTO 700, for the wonks in the crowd)."

Thursday, January 27, 2005

Nothing like snubbing a slashdotter

Got really infuriated by a posting by stupid linux-only idiots on slashdot (on the eve of sun releasing the sources for solaris.) This was my reply...

Numbskulls like you deserve to be sued the shit ouf of, by someone like SCO. Learn to give credit where it's due. All you ingrates at slashdot will one day realise that calling sun evil & throwing the Linux buzzword takes you nowhere. Can you count upto 10 million? No? That's how many lines of code sun will be giving up. They're opening up their crown jewel.They didn't have to do that. S10 has enough great features to make it scorch the market, beating your low end, kick ass cheap linux servers hollow. They did that to reiterate their commitment for the community. They've ALWAYS given more to the community that IBM or HP. The latter 2 are the evil ones, hoodwinking shortsighted slashdotters by throwing the Linux word. Yes. Linus torvalds did a great thing by giving away the kernerl free. But so will sun now. FREE.OPEN SOURCE. Enough is enough. You now have a SUPERIOR OS open sourced. Go with it or be left behind, using some ancient linux version and dancing to the tunes of IBM & HP. btw, look at the 500 patents IBM has given out & the 1670 that sun has.You'll see that sun's patents pertain to current,hot, bleeding edge technologies. And of course, i shouldn't even mention HP. Who cares even they give out the code for ALL their rickety management software and the legacy HP-UX. They're just an integrator, an imaging & printing company. They never have & never will matter.Time you saw the light, ungrateful, dim witted slashdotters!I'm sick of your brainless anti-sun rhetoric.Use some logic.Get your grey cells working. There's nothing wrong in supporting another open source initiative for a superior OS. And this has nothing to do with M$, for chistsake.

Here's the original thread...
http://slashdot.org/article.pl?sid=05/01/25/2116230&tid=102

Tuesday, January 25, 2005

Amazing quote by Swami Vivekananda

This is the actual source : "We are what our thoughts have made us; so take care about what you think. Words are secondary. Thoughts live; they travel far."

Sun's the #1 Unix server seller. Really comforting. :-) (I didn't know this.What an idiot!!)

I read about that in this article that talks about the release of DTrade sources.That's the first installment of OpenSolaris:Sun to release first OpenSolaris tidbit Tuesday .


"Rivals have responded differently to the arrival of Linux. Hewlett-Packard and IBM, the No. 2 and No. 3 sellers of Unix servers after Sun, embraced the operating system years before Sun and did so with more enthusiasm. IBM and HP see Linux as a way to advance their favored processor designs--IBM's Power and Intel's Itanium, respectively..."

Tuesday, January 18, 2005

And the geek shall inherit the earth...

Hee Haww!!!I found the link to this test on Alan Hargreaves' page and took it up.And,guess what...

I am nerdier than 83% of all people. Are you nerdier? Click here to find out!


What does it mean?Well, this was the final verdict, after the test...
"Overall, you scored as follows:
17% scored higher (more nerdy), and
83% scored lower (less nerdy).

What does this mean?
Your nerdiness is:

High-Level Nerd. You are definitely MIT material, apply now!!!"
Now, how flattering is that? :p