1. Everybody is doing it
- I just threw that in there for the high school affect. I'm really not a follower (well, I am on twitter). You can definitely argue that I am on the bandwagon a bit late. But, better late than never. In all seriousness, I read a lot of interesting blog articles from Oracle professionals, venture capitalists, Social networking sites etc. I think I have something to offer and give back to the community.
2. More Blogging = Less TV time
- I love TV, I really do. The DVR was the best (and worst) invention to come in the past 5-10 years. Although, now that I think about it, I can sit in front of my laptop with a favorite TV show in the background. Maybe I should find a better hobby :)
3. What goes better with beer than blogging?
- I've seen lists like "Best Beer Drinking Sports" and the like. Well, blogging is a perfect fit for beer drinking. I love beer, I love making it, drinking it, and finding new beer. The thought of sittin back, relaxing with a cold one, and writing the thoughts in my head seems like a perfect blend.
4. Time to increase my Oracle breadth
- I spent my most of my days working on company-related database issues. There doesn't seem to be nearly enough time to do R&D. Keeping an Oracle-related blog is a great way to force me to do my own research and improve my Oracle DBA skills on my own. Now I just need to get this laptop's memory increased so I can get Oracle 11g running on VirtualBox and I'll be in business. I've started keeping a daily list of topics I want to blog about. The next step is to get that done.
5. Aspirations
- I have aspirations to present at Oracle technical conferences. I look at blogging as a great first step to getting to that goal. This will force me to come up with ideas and not only find my voice, but also an audience (I hope).
6. Peer Pressure
- I suppose that sounds an awful lot like reason #1. However, it is a bit different. I look at peers and see the amazing things they are doing on their blogs and the great content they are creating and sharing with the oracle community (Look at Dan Norris, Eddie Awad, Greg Rahn, Don Seiler to name a few) and I say "hey, I can do that, and can hopefully add my own perspective".
- An interesting aside related to Greg Rahn. He probably doesn't realize it, but without Greg Rahn, I probably wouldn't even be an Oracle DBA. In 2000, I had just been hired on as a full-time developer at a local utility. Greg was a DBA there. He resigned later that year , I think to find his fortunes out west during the Dot Com boom. That left an opening on the DBA team. I was approached by one of their Senior DBAs to be a DBA. I thought it was a crazy idea. Those DBAs didn't do anything ;) I was a C developer, I knew it all. Luckily, I decided to take the leap and have been loving it ever since. Thanks Greg for resigning and opening up that door to me ;)
7.Twitter: Sometimes 140 characters just isn't enough
- I love twitter. It is a somewhat emerging social networking idea. Some think blogging is dead and microblogging is the wave of the future and replace blogging. I'm not sure I agree at this point but I do find it a very useful medium to share ideas and expand my horizons. Sometimes (okay, a lot of times) my thoughts take up more than 140 characters. That is where the Prestidigation of Oracle needs to take over.
8. Unload some of those brain cells.
- I'm a big believer in the Use It or Lose it Principle. I think this applies to daily life. Whether it be that new whiz-bang Oracle feature you just read about, the latest training class you are thinking about taking or documenting that new package you just wrote.
9. Comfort Zone
- I think it is real easy to get into a comfort zone. Life can get hectic and it is simple to get into a routine. You need to challenge yourself and shake things up to grow. I look at blogging as a natural way to do this. While I feel I've always been a decent writer, it has generally been with little purpose (essays, papers, etc). I need to find a purpose and hopefully this can get me on the right track.
Cross the Bay Bridge and Discover What Nobody in San Francisco Will Tell You
In this second of four posts on San Francisco Bay Area getaways, we'll travel east. Know what you'll find there? Sunshine. Easy (or at least easier) parking. World-class—and hugely diverse—dining and music venues. The Raider Nation and the Oakland A's. Charming, strollable neighborhoods. And countless parks and nature areas.
Check it out.
TO THE EAST
Berkeley: There are all sorts of music venues, the Tony Award-winning Berkeley Repertory Theater, and all the tie-dye you could ever want. Try to get a reservation at Chez Panisse, which was ground zero for California Cuisine. Take a walk around the Cal campus.
Oakland: Just as cool—if not cooler—than Berkeley, with better parking, its own baseball and football franchises, and quite possibly the best pizza (Arizmendi, Pizzaiolo, Zachary's) and strawberry shortcake (Bakesale Betty) on the face of the earth.
East Bay Parks: Discover miles and miles of hiking and biking; remarkable vistas, lakes, and picnic areas; and off in the distance, Mount Diablo.
If we reveal more, the Let's-Keep-the-East-Bay-to-Ourselves Coalition will come after us in force. On the other hand, if you have some great East Bay haunts, or want to recommend something to the Oracle OpenWorld community, leave your comments.
Otherwise, we'll get back to you after the next A's game.
Recently Oracle has created a customer snapshot for our database environment and recently published it on Oracle Website

I had a couple hours spare today and threw a quick concept for a MOD website (MODern Housing Solutions) that was in need of an urgent facelift. (Left img is their current site)
Didn’t have a spec, so it will probably be all wrong but for 2hrs work it isn’t bad for a draft concept of possible branding and design schema.
It’s taken me awhile to come up with my list. My colleagues are just so much more interesting than I am!
1. I was born in Northwest Indiana; I grew up in Northwest Indiana; I currently live in Northwest Indiana. See - I’m not kidding about being boring. I did branch out and live in Chicago for four years – which is about 40 miles away, quite an adventure which required crossing a state line! Also spent a couple of years sampling apartments in various suburbs of Chicago. So I have used every mode of public transportation in what we call “Chicagoland” in order to get to my jobs in downtown Chicago. That was back in the days when I actually had to commute to work. Now I walk three steps from my bedroom to my office.
My mom lives less than 2 miles from me. My sister lives about 3 miles from me. And my brother lives about 4 miles away. It’s nice having family nearby.
2. Growing up I had four imaginary friends. First there is the trio of Candy, Uh-um and Apadasadum, they always hung out together. I am not sure how to spell their names since I didn’t know how to read/write/spell when I met them. The fourth was Danger. He took the heat for anything bad that happened. “Danger did it”.
3. I have an unusual musical background. My mom always wanted me to take piano lessons, which I resisted because I thought it was too nerdy. I seriously don’t know why I thought that would put me over the edge into nerdiness, because the straight A’s and goody-two-shoes behavior already pretty much sealed it. So instead I played the viola (sure, being in orchestra isn’t nerdy!). Viola is unusual because it uses alto clef, which doesn’t help you read music for any other instrument. So you can figure the rhythm but nothing else if you try to read,say, music for a piano.
My other musical skill is handbells. I loved playing in handbell choir at church (no that’s not nerdy either…). I even performed as part of the Purdue University Musical Organizations Handbell choir, and got pretty good at the four-in-hand technique. This was a blast despite the hideous tuxedo-looking, long black skirt /cumberbund/bow-tie uniforms we had to wear.
Oh, and when I was in high school I finally thought it would be cool (sigh, I have no idea what cool is) to learn piano so I took lessons for two years. So I know how to play some very easy songs very poorly. On the bright side, I have the piano that my parents bought for this purpose and one day I’m going to learn how to play it properly (if only the music came in alto clef, I’d be set)!
4. I am skilled in Mirror Writing. I do not know why I can do this.
5. In college, my friends and I came in 2nd place in a lip synch contest.
6. I lived/worked in Munich for a spell back in the mid 90’s. My apartment was a block away from the Oktoberfest fairgrounds. I loved, loved, loved Oktoberfest and spent many nights there over the course of two seasons. It combined a few of my interests such as Beer and Singing Loudly While Standing on a Table. My all time favorite Oktoberfest songs was John Denver’s “Take Me Home Country Roads”. One day my friends pooled their money and paid for me to get up on stage and conduct the Oompa band, to, what else…Take Me Home Country Roads.
Also while working in Munich, I was part of the infamous Bleifrei Incident but I am sworn to secrecy on that one.
7. I am a fan of the show The Bachelor (and The Bachelorette). These shows are just so stupid but I really like them. I used to watch the even worse variations such as Joe Millionaire and Average Joe but after a couple of seasons where the bachelor(ette) picked the “wrong” person, I vowed never to watch them again.
8. My stepsons have a Wii. When they first got it, they showed me how to create my own Mii. Seemed fun — so I brought up the default female Mii to start. Hmmm, that looks like me already. That can’t be. So I tried changing some things – nope now it looks less like me. So, yes, I am the default Mii. I did change her to a purple outfit just to jazz things up. See, I told you I was boring!

One of the questions I noticed recently was on full outer joins. How do you do that in OWB. Well it is quite simple, but I guess not that obvious. So here is a quick post on how to do this.
Here we have a simple mapping, where I join on code. I want to get all records (yeah not a great business case I know) from both tables, so I know if there are records on either side without matches.
My join looks like this:
Now if I complete the mapping to look like this, I can generate code.
As you see by default (this is OWB 10.2.0.3) you get an ANSI join syntax:
Want something not ANSI, go to configuration on the mapping and uncheck the ANSI SQL Syntax code option. Note that if you are doing Multi Config, you can change this per deployment of the mapping...
There has been a number of emails posted to the bugtraq and full-disclosure mailing lists in the last few days detaling some of the vulnerabilities fixed in the recent Oracle Critical Patch Update July 2008. It is worth detaling some....[Read More]
Posted by Pete On 22/07/08 At 09:29 PM
Outsourcing is no longer just for Fortune 500 companies. Small and mid-sized firms, as well as busy professionals, can outsource their work to increase their productivity and free time for more important commitments. It's time for the world to take advantage of this revolution.
Vivek Kulkarni (CEO Brickwork India and former IT Secretary, Bangalore)
Tuxedo for batch
We know that Tuxedo gives Oracle a great advantage for rehosting IMS and CICS COBOL from the Mainframe on to Open Systems. With TUX we can now provide Mainframe Quality of Service on the entire stack for CICS and IMS. So that means, our customers can gain a lot of savings from high cost hardware and OS from Z/OS by running on Linux (Even z/linux too) while opening up more standards...etc. All the good stuff we talk about.
What if you want to rehost batch programs? Is Tux good for that too? You may think the main advantage of using Tux for rehosting is that it provides the ability to do transaction processing and two phased commits, but for batch you can just use a standard COBOL compiler for linux or windows (Like MF/Accu..Fujitsu...etc)
Well, you miss out on some key RAS featuers. Let's look a bit closer.
What makes up Mainframe Batch? Let's look at this for a second. Batch on the mainframe usually looks like --> Z/OS + JES + LPRS +JCL + COBOL
Now, if you rehost batch with Micofocus Cobol only you get --> Distrubted OS (good) + JCL + COBOL
Tux looks like --> Distrubuted OS (Still good) + Tuxedo (Z/OS Like features...LPRS, JES Like runtime) + COBOL + JCL
Tuxedo provides also provides:
Connection Pooling
Clustering
Failover
Scalability
So, ask yourself, would you run a production batch system off the mainframe without these features? It's great to rehost and save money, but you CAN'T sacrifice RAS.
So here are some great reason for Batch with Tuxedo:
:: RAS (reliability, availability, scalability) built in
:: Sizable number of implementations
:: Over 2,000 implementations
:: Provides a ‘Java like’ container for COBOL applications
:: Supports C/C++ so languages like PL/1 and Assembler can be migrated to C/C++ instead of COBOL
:: SOA enabled out of the box
:: Can use any Job Scheduler you want including the free Oracle Scheduler solution
One excellent feature of the new EPM 11.1 release is that one can now add cell level/report level comments in Hyperion Financial Reporting. Since Hyperion Financial Reporting(HFR) is primarily used for creating financial reports out of Essbase, this feature makes a lot of sense wherein users can add attachments/comments to a report which other users can see & comment/reply upon. For example, consider a scenario wherein there are 2 users admin1 and admin2 who are analyzing the same HFR report. Consider admin2 to be a financial analyst and admin1 to be an Essbase/HFR Administrator. Now, lets assume that the HFR administrator has created the below shown report based on the DMDemo data which one would get by default after installing EPM 11.1.
As you see, the above is a very simple report wherein users can analyze the product sales across different years for different scenarios. Now, once this report has been created admin1 would then publish the report out to admin2 so that he/she can do the analysis on the report. Admin2 user, after doing an analysis realizes that there is a huge mismatch in the data. There are some negative numbers which is not possible since sales can only be positive or zero. In a normal scenario, if admin2 wanted to raise a flag to the Report Administrator (admin1), he would have to send an email to admin1 stating that the report data is wrong. Now with the introduction of Annotations, one can add comments to a report at the report level, cell level, grid level and individual member levels. So, admin2 would basically come inside the HFR report and would enable the Annotations window.
The annotation window would look similar to the screenshot shown below.
Now, the admin2 user would click on New to create an annotation.
One can assign different categories to the annotation. Also, one can assign contexts and also attach an URL or a custom document to the annotation.
In our example, admin2 realizes that 2003 numbers are totally wrong (since they are all negative). Hence he would be creating 2003 Year member level annotation indicating to the admin1 user that 2003 data is wrong.
He would also assign a 2003 member context to the above annotation.
Now, the annotation would automatically come on the 2003 member as a cell document (shown in the below screenshot)
The admin2 user would then set a permission on this annotation so that admin1 can see this annotation.
Now if we log in as admin1, we should be seeing an annotation on the 2003 member. Now, admin1 user can reply back to this annotation, informing admin2 that he would look into the reporting issue.
A very interesting feature. I believe this was part of the Hyperion Planning product before and this has now been incorporated into Hyperion Financial Reporting. It would be very interesting to see how this feature comes over to BI EE since dashboard commentary is something that is lacking currently in BI EE. Though i have blogged about the method of implementing the dashboard commentary for BI EE here, the major problem there is it maintains all the commentary in the database which should typically not be the case. Report and member level commentaries should be maintained only in the report metadata.

getSoap = function(data){
var dat = [];
dat[dat.length] = '<?xml version="1.0" encoding="UTF-8"?>';
dat[dat.length] = '<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas-xmlsoap.org/soap/envelope/" xmlns:oblix="http://www.oblix.com">';
dat[dat.length] = '<SOAP-ENV:Body>';
dat[dat.length] = '<oblix:request function="workflowSaveCreateProfile" version="NPWSDL1.0">';
dat[dat.length] = '<oblix:params>';
dat[dat.length] = '<oblix:ObWorkflowName>obworkflowid=672fcf2e9c5946a8b5b225b349acd46b,obcontainerId=workflowDefinitions,OU=Oblix,OU=apps,DC=company,DC=com</oblix:ObWorkflowName>';
dat[dat.length] = '<oblix:ObDomainName>OU=people,DC=company,DC=com</oblix:ObDomainName>';
dat[dat.length] = '<oblix:noOfFields>5</oblix:noOfFields>';
dat[dat.length] = '<AttributeParams xmlns="http://www.oblix.com/">';
dat[dat.length] = '<GenericAttribute>';
dat[dat.length] = '<AttrName>uid</AttrName>';
dat[dat.length] = '<AttrNewValue>'+data.uid+'</AttrNewValue>';
dat[dat.length] = '<AttrOperation>ADD</AttrOperation>';
dat[dat.length] = '</GenericAttribute>';
dat[dat.length] = '<GenericAttribute>';
dat[dat.length] = '<AttrName>cn</AttrName>';
dat[dat.length] = '<AttrNewValue>'+data.cn+'</AttrNewValue>';
dat[dat.length] = '<AttrOperation>ADD</AttrOperation>';
dat[dat.length] = '</GenericAttribute>';
dat[dat.length] = '<GenericAttribute>';
dat[dat.length] = '<AttrName>mail</AttrName>';
dat[dat.length] = '<AttrNewValue>'+data.mail+'</AttrNewValue>';
dat[dat.length] = '<AttrOperation>ADD</AttrOperation>';
dat[dat.length] = '</GenericAttribute>';
dat[dat.length] = '<GenericAttribute>';
dat[dat.length] = '<AttrName>givenName</AttrName>';
dat[dat.length] = '<AttrNewValue>'+data.givenName+'</AttrNewValue>';
dat[dat.length] = '<AttrOperation>ADD</AttrOperation>';
dat[dat.length] = '</GenericAttribute>';
dat[dat.length] = '<GenericAttribute>';
dat[dat.length] = '<AttrName>sn</AttrName>';
dat[dat.length] = '<AttrNewValue>'+data.sn+'</AttrNewValue>';
dat[dat.length] = '<AttrOperation>ADD</AttrOperation>';
dat[dat.length] = '</GenericAttribute>';
dat[dat.length] = '</AttributeParams>';
dat[dat.length] = '<oblix:obactorcomment>IDXML from browser via Javascrip</oblix:obactorcomment>';
dat[dat.length] = '</oblix:params>';
dat[dat.length] = '</oblix:request>';
dat[dat.length] = '</SOAP-ENV:Body>';
dat[dat.length] = '</SOAP-ENV:Envelope>';
return dat.join("");
};
var userdata = {
uid:"marmil",
cn:"Mark Miller",
mail:"mark[at]nulli.com",
givenName:"Mark",
sn:"Miller"
};
var createUserSoapRequest = getSoap(userdata);
// process the request
$.ajax({
type: "POST",
dataType:'xml',
url: "/identity/oblix/apps/userservcenter/bin/userservcenter.cgi",
data: createUserSoapRequest,
contentType:"text/xml",
processData:false,
success: function(idxmlResponse){
// crude
alert(idxmlResponse);
// better
$("ObConfirmation",idxmlResponse).find("ObValue").each(function(i,o){
alert($(o).text());
});
// in the real world, employ dom trickery to keep the user oriented...
}
});
check out wordle - a word clouding tool. This is the start of an interesting kind of concept mapping. It displays words and sizes based on frequency. This is the Wordle cloud of this blog's rss feed: (click it for a bigger version)
WALL-E is probably one of the most impressive CGI films I’ve ever seen. The first thing that struck me was how realistic everything looked. At times you could be fooled into thinking it was live action with a computer generated character superimposed. That’s Pixar Animation Studios for you. The second half of the film looks less real, but that’s due to the nature of the scenery, not the quality of the animation.
The story isn’t too bad. It’s quite funny at times, but overly mushy in my opinion. I’m not totally sure what the target audience is for this film. It’s a “U” rating, but I can’t see my nephews being happy watching it. At the start there are long periods where it’s visually interesting, but not entertaining as such, so I don’t think it would hold their attention. The cinema was deathly quiet for most of the film, so I guess the adult audience were hooked. The second half of the film becomes more like your standard kids cartoon. I guess you could say it feels like a film of two halves.
Cheers
Tim…
Server Builds
My room is full of servers again. I’m still rebuilding loads of kit to send to the new site. Yesterday I installed RHEL4 on two servers ready for 10gR2 installations, and RHEL3 on three servers ready for AS10g (9.0.4) installations. The versions, especially App Server, may sound strange, but this is to duplicate the current environment, so my hands are tied.
The three application servers are all going to be installed as 1 node clusters, so we can configure and test them before releasing the remaining nodes. Just trying to reduce the impact of the move.
Hopefully, by the end of today we will have at least one node for every layer in the new production and test environments.
It’s not long until I leave this company, so I’m really keen to get everything moved and bulletproof.
Presenting
OpenWorld: Booked, and I’m ready to go.
AUSOUG: I’ve just received confirmation of my conference presentations in Australia. I’m presenting two papers at both the Perth and Gold Coast events.
NZOUG: I’ve been confirmed for the New Zealand conference in Rotorua, but I don’t know how many papers I’m presenting yet.
One of my friends is trying to sort out a presentation at a local user group in New Zealand after the main conference is over. Seems a shame to go all that way and not do as much as possible.
So it looks like the world tour is back on.
By the end of the year I will have been to Austria, Denmark, Estonia, America, Australia and New Zealand. I guess this seems a little tame for some of the consultants out there, but for a regular Joe DBA / Developer from Birmingham it seems a bit crazy.
Cheers
Tim…