I have switched my online feed/news reader from Bloglines to Google Reader. Bloglines has always been my favorite, but I wanted to use GReader’s unique features – which you can read all about at the GReader blog.
The GReader’s newest feature allows you to add your reading list (or any label of your choosing) as a module to your Google Personalized Homepage. What’s more cool is that you can add more than one instance of the GReader module and tell them to display different labels, use different sorting orders, etc…
So, in addition to powering OraNA, GReader now powers my Google Personalized Homepage:
Speaking of feeds, if you want to share your OPML, or browse the subscription lists of other people, head to share.opml.org. I just uploaded my OPML from GReader, here it is.
Read more about share.opml.org.
2 Comments | Filed in Google, Personal | Tags: aggregator, GoogleHere is my blog’s spam harvest for the weekend:

Most of the spam comments start with:
And then followed by tens of links to you know what…
What have I done to deserve such love from spammers?
I’m sure I’m not alone.
Thank you Akismet.
6 Comments | Filed in WordPress | Tags: spam, WordPressSteven Chan has just published a couple of useful posts. The first is a high level map of Oracle’s latest E-Business Suite Release 11i technology stack architecture:

The second is a cheat sheet that explains the relationships between Oracle marketing brands, products, product families, versions, and patchsets. He gives simple term definition to the following:
Thanks Steve.
Comments Off | Filed in Oracle | Tags: cheat-sheet, EBSI stumbled upon this really interesting game that uses artificial intelligence to guess the word you are thinking about by just asking you 20 questions. I thought of “cucumber” and it guessed it right! Take a break and play it now.
Did it correctly guess your word?
(via)
4 Comments | Filed in Interesting Stuff, Technology | Tags: game, softwareConnect to your Oracle database and try the following:
SELECT 'hi there' AS mycol FROM DUAL WHERE lnnvl (1 = 2)
You should get :
MYCOL ---------- hi there
Now, you ask, what is LNNVL? You search the Oracle documentation, but you cannot find any mention of it in releases prior to 10gR1, yet you successfully execute the above query in your Oracle 9.2 (or even 8.1.7) database!
LNNVL had been an undocumented SQL function until Oracle database version 10gR1. Let’s go back in time a bit and read what Jonathan Lewis and Lex de Haan wrote about it:
From: Jonathan Lewis
Date: Sun, Nov 2 2003 10:18 am
To: comp.databases.oracle.server
Message:
lnnvl(predicate) is true if predicate is false or null. I can’t say "for sure", but I believe it appeared somewhere around 7.3, or maybe 7.2 to handle problems arising from the SQL generated by a query co-ordinator for its parallel query slaves when Oracle was trying to get partition elimination on partition views. (And if it really is there for PQ problems, I’d second Richard’s advice – don’t use it, you never know when it’s going to disappear).
From: Lex de Haan
Date: Sat, 29 May 2004 21:27:53
To: oracle-l
Message:
The ANSI/ISO SQL standard offers the three operators you need: "IS TRUE", "IS FALSE", and "IS UNKNOWN". But as far as I know, no vendor has implemented these. Note the power of these operators; they accept a Boolean argument. The "IS NULL" becomes very clumsy as soon as multiple predicates are involved. One nice Oracle function (that has been around for quite a while, but was undocumented until 10g) is the LNNVL function.
The Oracle’s LNNVL function:
So, if you’re stuck with Oracle 8i or 9i, you can safely use the undocumented LNNVL function, knowing that it has become documented and supported in 10g and above.
Related Oracle documentation.
6 Comments | Filed in Oracle | Tags: function, sql, undocumented… In Saudi Arabia, FoxNews reports. So, the Saudis now will be paying about 60 U.S. cents a gallon.
In Beaverton (Oregon, USA), I’m paying $2.97 a gallon, today. That’s not fair
How much are you paying?
19 Comments | Filed in Interesting Stuff | Tags: gas