Thursday, December 20, 2012

PDI: Pass Parameters to Jobs/Transformations

I had been working on trying to get a process to run for each file. I used the Get File Names step followed by the Copy rows to result step. I had placed this in front of my Text file input step, which is where you define the file for further processing.

That method produced a stream (that's what it's called in PDI) with each and every file and each and every record in those files. If I were just loading that into a table, it would have worked. However, I was assigning a identifier to each file using a database sequence. I needed a sequence for each file, but I wasn't getting it.

With some help and pointers from the ##pentaho IRC channel, I found this post (more on that one in the future), Run Kettle Job for each Row. I downloaded the sample provided to see how it worked.

The calc dates transformation just generates a lot of rows. Not much to see there. The magic, at least for me, was in the run for each row job entry.

Specifically, the Write to log step. (I have this need to see things, since I don't understand everything about the tool yet, Write to log provides me that ability.)

See date, better, ${date}? That's how you reference parameter and variables.

I ran the job and watched the date scroll by. Nice. Then I tried to plug it into my job.

Zippo. Instead of seeing, "this is my filename: /data/pentaho/blah/test.csv" in the log output, I just saw "this is my filename:" Ugh. I went back to the sample and plugged in my stuff. It worked. Yay. Went back to mine, it didn't. Gah! I tried changing the names, then I'd just see "this is my filename: ${new_parameter_name}" so it wasn't resolving to the value.

Finally...after comparing XML for the sample file and mine and finding no real differences, I just about gave up.

One last gasp though, I went to the IRC channel and asked if there was some way to see the job or transformation settings. No one was home. I tried right-clicking to bring up the context menu and there was Job Settings

Job Settings brought up this one:

date is defined there. I checked mine. Nothing defined. Added filename to mine, ran it, Success!

Wednesday, December 19, 2012

Learning Pentaho Data Integrator

aka Kettle, aka PDI.

I've recently taken on a data integration gig and I'll be using Pentaho Data Integrator (PDI). I've read about Pentaho for years but never got around to actually using it. I'm excited about the opportunity.

What is PDI?

...delivers powerful Extraction, Transformation and Loading (ETL) capabilities using an innovative, metadata-driven approach. With an intuitive, graphical, drag and drop design environment, and a proven, scalable, standards-based architecture, Pentaho Data Integration is increasingly the choice for organizations over traditional, proprietary ETL or data integration tools.

I'll be using the enterprise edition (EE), which is supported, similar to how RedHat works...I think.

This post if mainly for me, naturally. I'm going to list out the references I've found so far and add to it over time. Similar to what I do (err, did) for Learning OBIEE.

Actually, I'll just start with the helpful email I received after being added to the account.
I love that you can download and play with the software yourself. Of course the Community Edition (CE) is open source, so that makes sense. I'm not sure if you can get the EE version for free though.

There's a community page as well with links to a lot of great resources. So far, my favorite has to be the IRC channel hosted at freenode. Note, there are two hashtags as in ##pentaho. I've been lurking there for a few weeks and finally got up the nerve (what? me shy?) last week. HansVA and mburgess_pdi helped get me moving again on a particular problem. Good stuff.

I'm sure I'll add more as time goes on. That's it for now.

Update after original posting...
  • (Kettle, aka PDI) Wiki

Friday, November 9, 2012

VirtualBox 4.2.4

I was working on my OBIEE Test Lab today. Having network issues, because I'm prone to those. I decided to look up The Fat Bloke as he seems to be the resident expert on all things VirtualBox. As to my network issues, The Fat Bloke had this great post back in June, which helped me understand how VirtualBox network interfaces work.

So, as I said, I was looking for some new articles. I ran across this one, What's New in Oracle VM VirtualBox 4.2?. There was this section on Groups. I tried it out on didn't work. I check my version, 4.1.something. Hmmm. The article was dated September. I should have this. No sooner did I think that, I got an update message from VirtualBox saying a new release was available. Sweet!

So now I'm running the latest:

So what is this group stuff? You can go read the article, but I'll quote the important stuff here:

Groups allow you to organize your VM library in a sensible way, e.g. by platform type, by project, by version, by whatever. To create groups you can drag one VM onto another or select one or more VM's and choose Machine...Group from the menu bar. You can expand and collapse groups to save screen real estate, and you can Enter and Leave a group (think iPad navigation here) by using the right and left arrow keys when groups are selected.

But groups are more than passive folders, because you can now also perform operations on groups, rather than all the individual VMs. So if you have a multi-tiered solution you can start the whole stack up with just one click.

Very cool stuff. Now I can logically group my OBIEE Test Lab VMs. If I ever get around to having the software (database, OBIEE) start automatically, I'll be rocking.

Lots of cool new stuff there. Read the article and go get the software.

Thursday, November 8, 2012

BIWA Summit 2013

I meant to write about this sooner...

If you're looking for a good BI/DW/Analytics focused event, check out the BIWA Summit which takes place in January of 2013. If you're interested in speaking at the event (and you know you are), hurry up and get your abstract in here, it closes tomorrow (November 9th).

Day 1 will give us Tom Kyte who will talk about What's new from Oracle in BI and Data warehousing. Day 2 will feature Vaishnavi Sashikanth, Vice President, Development, Oracle Advanced Analytics at Oracle who will speak on Making Big Data Analytics Accessible.

For more information, go here and here.

Tuesday, October 30, 2012

SOUG: Tampa Oracle Day

Life has been busy and I haven't been to a meeting in a while. There's a good one coming up though. If you're in the area you should make plans. RSVP here.

Here are the rest of the details from the email blast:

I wanted to give everyone an early head's up that we have a whole day of Oracle info coming up next week on Thursday, November 8th. We will have the Tampa Oracle Day and Product Fair at Raymond James Stadium from 9am-4pm. Following a brief intermission, our November Suncoast Oracle Users Group meeting will begin at 6pm in our regular Rocky Point location.

The Oracle Day event will include separate tracks with 4 sessions each for Simplify IT, Social/Mobile/Cloud, and Customer Experience. There will also be a Solutions Pavilion/Demo Grounds, breakfast and lunch, and a couple of Keynotes. In one of the Keynotes, I'll be relating some of our experiences at Nielsen in Leveraging Exadata for Consolidation and Business Growth.

You can register for the Tampa Oracle Day by calling 800.820.5592 ext.10942 or online at :

One of the most recent additions to Oracle's ever growing line of Engineered systems is the Oracle Database Appliance. The ODA is a 2-node RAC cluster with 4TB of storage all buttoned up in a 2U chassis. They've combined this hardware with a slick web interface management layer that allows you to stand up a 2-node RAC cluster in less than an hour with just a few clicks of the mouse. For our SOUG meeting this month, we will have one of these boxes in hand for a live demo and further discussion of the technology.

The Thursday evening SOUG meeting begins with refreshments and an opportunity for networking with your peers from 6:00-6:30pm followed by a presentation from 6:30-8:30pm. The meeting will be held in the Knowledge Services facilities at:

3031 North Rocky Point Drive West, Suite 275
Tampa, FL 33607

Hope to see you there.

Thursday, October 25, 2012

OBIEE: 14006 Unsupported Predicate

My favorite Admin tool error:

In one of our subject areas, we recently changed the physical source from one system to another. No big deal right?

One of my colleagues figured out this neat little trick using Fragmentation content on the Content table of a logical table source. Basically, if the date was yesterday or greater, use Table_A, if not, use Table_B. Worked like a charm.

With the change to the physical source, it no longer worked. WTH?

I suspected the Fragmentation content because the data types changed, well, one was no longer the driver, if that makes sense. See, we had to do this work-around because the original source system wasn't designed with date date types. We had to pass a string in the YYYY-MM-DD format.

With the new source, that was resolved. We now had a date data type, awesome.

Not so awesome, because it broke. By broke I mean all the facts were doubling for everything but the current day (today).

If you're wondering, here is the logic in the Fragmentation content section for Table_A:

"BMM"."Dim - Date"."YYYY-MM-DD Column" >= VALUEOF( "INIT_BLOCK"."YYYY-MM-DD" )
For Table B:

"BMM"."Dim - Date"."YYYY-MM-DD Column" < VALUEOF( "INIT_BLOCK"."YYYY-MM-DD" )
The only thing different is the operator.

Since we now had a true date data type, I tried to use that, which is how I came across the 14006 Unsupported Predicate issue. You see, now I didn't have to use a repository variable, I could simply use OBIEE date functions. I came up with this to mimic the same behavior:

Of course I changed the operator for each LTS. Save RPD, Transaction Update Failed. Check Consistency,

It's a valid formula. Works in Answers (or whatever it's called these days). Perhaps someone with far more experience can spot the mistake.

Tuesday, October 23, 2012

the katezilla t-shirt

Been thinking about doing this for a long time. No particular reason, just seems natural. Note the awesome font style I chose and how much it differs from the regular oraclenerd font. I'm very creative.

All proceeds go to support katezilla in all her awesomeness.

$25 (US Only, for now)

the katezilla

Erotic Problem Solving

by Michael O'Neill
Posts on oraclenerd, Twitter, Facebook

Writing code well is hard enough. Does it have to be boring too?

Business problems can be boring. This is perpetually true for the professional responsible for authoring the code to solve them who is technical-expertise-first and business-expertise-second. Emotional motivation and individual energy is a tremendous factor in the results of any problem solver.

In my career, I have repeatedly faced boring problems and successfully mucked through them with boring solutions. Sometimes though, I have faced interesting problems and unsuccessfully met them with boring solutions. Failure required a twist in my thoughts and energy to regain the upper hand on achieving a solution. Here is an example:

How do you code an effective solution with an ineffective domain model? Sophisticated social applications require a complex network model. Network models are difficult enough to document and even harder to conceptualize beyond a certain complexity. And when doubt creeps in on a modeling effort, the problem solver's all too frequent retreat is into previously reliable modeling techniques. Even if those techniques are an ill-fit at best. In a recent application, the problem ahead of me was building an intricate and robust human trust, credibility and reputation engine.

I experienced project-crippling difficulty during the initial modeling efforts. My mind was constantly circling the boring drain of popular technical trust models, like public-private keys and centralized certificate authorities. Every model fell apart eventually. My models required hierarchies that meant nothing in the real world of human trust. My models introduced single points of dependency that do not exist in human interactions.

I took a step back. I ended the boring. I turned myself on.

I imagined a small community of nonmonogamous individuals and their social sexual lives. How did they decide to hook up? How did they decide to break up? Did they like another, or like-like another? Were the states of those feelings returned? How did they decide whether to exchange bodily fluids or not? What were the layers, causes and watersheds of lust, love, trust, sacrifice, distrust? How was deceit employed? Did absolute trust exist? How did feelings of love affect everything?

I was able to configure a myriad of practical models, all intertwined based on a community of people I made up with my pencil. Right or wrong about how people work, it didn't matter. Its complexity and the energy I was able to pour into understanding the possibilities was what was valuable. It was adventure that proffered understanding of the solution required for my work. My intricate thoughts expressed in an exciting context was an excellent conversation with everyone I knew, eager every one of them to have themselves chatted up about sex. Each person I included in the discussion introduced a valuable complexity I was able to model. I remembered the what ifs shared over a pint were the reason I do what I do for a living.

I am not advocating having multiple simultaneous sexual partners to get through a modeling effort. Well, alright I am, but that is beside the point. Approaching a complicated business modeling problem required that I stop circling the boring drain and leverage the energy of thinking of all the complexities of people, emotions and how they interact - something in which I already had knowledge, intuition and interest.

Sunday, October 21, 2012

My First Triathlon (in 11 years)

A couple of months ago I talked a friend through her first triathlon. Yesterday (Saturday), was my turn.

1/3 mile swim. 10 mile bike. 3.1 mile run.

It was my first race in 11 years, to the day. On October 20th, 2001, I competed in the Great Floridian, an ultra-distance (i.e. ironman) triathlon, 2.4 mile swim, 112 mile ride followed by a 26.2 (marathon) mile run. I quit at about mile 20 or 21, it was 10:30 PM, 15+ hours after starting the day. The biggest reason I quit was because it was a loop run, we ran around a lake three or four times. After the second time around and coming up towards the finish line (for everyone else), I was applauded and cheered for...but I had two more laps. I simply couldn't take it anymore. The smaller reasons were; I didn't really train that year and I didn't feel like losing my mind that evening. Results for that race are here.

Anyway, I competed and completed my first race in over 11 years. I entered as a Clydesdale, a polite way of saying "fat guy" division. Results can be found here. I finished 7th in the group and 307th (top 56%) overall. I'll sum it up though.

Swim, 1/3 mile, 12:27, 3rd out of 20 (Clydesdale Group). Considering this is the second time I've swam in many, many years, I'm happy. I didn't have to tread water at all. I'm really glad I got in that great swim in San Francisco.

Transition 1, 4:02, 10th out of 20. I took my sweet ass time. I was tired. I was also able to finally get my glasses on, so I could see again. Sucks being blind.

Bike, 10 miles, 34:37, 12th out of 20. Overall, I'm pleased. I did this on a mountain bike (15.91 17.33 mph) while (most) everyone else had road/tri bikes. Looking at the times in my group alone, I probably would have been at or near the top. Winning time was 27:30 (in the group).

Transition 2, 2:18, 14th out of 20. Meh, I've never been good at transitions. I didn't care much about this one anyway. I was just there to finish the race.

Run, 3.1 miles, 27:55, 3rd out of 20. That's a 9 min/mile pace. Caught my tri-buddy (John Thompson) within the first quarter mile. Left him and was feeling mighty chatty. So I ran and talked with some other guy further up. When I realized that I was still talking, I told him I shouldn't be talking because my heart would explode and left him. I might have finished a minute or two faster had I not been so chatty. Who knows? I managed to actually run the entire thing too, no stopping for me. I can't remember the last time I ran 3.1 miles in a row.

Now, I can lose about 19 lbs and still compete in the Clydesdale division and possibly place. Get a "real" bike and I can take off about 7 or 8 minutes. Stop lolly-gagging in transition and I can shave off another minute or two. Get down to 7 minutes/mile on the run and that's another 6 minutes. Now the fun begins.

Lest you think I'm getting all cocky...I did this race in 1:21:07. I've done this same distance in well under an hour before. I think my best time was just under 54 minutes. I'm one or two years older and just one or two pounds heavier now...I don't expect to be there again. It'll certainly be fun (and healthy!) trying though.

Friday, October 19, 2012

Random Idea #1


I'd like to start posting my random (rambling?) ideas here in short form more often. Here's idea #1.

I'd like to do a presentation with Cary Millsap while playing catch. I'd ask questions about instrumentation and stuff and he'd opine while trying to catch my knuckle-ball.

This would achieve 3 objects:
1. Presenting (with Mr. Millsap)
2. Playing catch
3. Playing catch indoors (technically this would be Mr. Millsap's completed objective).

Wednesday, October 17, 2012

OBIEE: Where'd my SQL Go? Part II

Back in July I wondered where my SQL went when I deployed an opaque view to the database. I found it.

Recently, I was introduced to a person at the client site I'll just call The Process Queen™. I had written some code (pipelined table function) that was to be deployed to the database, she was making helping me get it into SVN and showing me how they deployed code. The Process Queen™

In that regard, I wanted to get everything that we could into SVN. Those opaque views (now deployed as database views) were a perfect candidate.

The client impressed me with their deployment tools, I hadn't seen anything like it. I wish I could say more, of course...perhaps I can talk The Process Queen into a guest post?

Anyway, so there I was, following my own guide Where'd My SQL Go? and then I noticed this

and this.

Notice those SQL statements are different. Apparently in OBIEE you can add a SQL statement in to each and every database type that you want.

An interesting, if not scary, find. Which begs the question, why would you need this kind of functionality?

Wednesday, October 10, 2012

The Fun of Oracle OpenWorld

Another one in the books.

What did I accomplish while there?
  1. I helped organize a Sunday Symposium for ODTUG. I convinced 9 very busy, talented and gracious people to speak. I couldn't have imagined that just a few short years ago.
  2. Oracle ACE Dinner
  3. Interview with Bob Rhubart
  4. I swam in the Bay with other crazy people.
  5. Caught a few sessions at Oak Table World
    • Karl Arao
    • Cary Millsap
    • Tanel Poder
  6. RAC Attack
  7. ...
I had this long list in my head, but I can't remember everything I did.

I got to play catch with Mr. Millsap. That's two conferences in a row, I plan on keeping that streak alive.

What I remember most are the people. Shocking, I know.

- Lunch with Floyd Teter and Jake
- Seeing my old (first IT) boss for the first time in years.
- Being yelled at by people who said I was mean, that I never gave them props for their hard work. Ahem.
- Walking around San Francisco with Jeff Smith and testing the water for Monday's swim.
- The view. Man, everywhere had a gorgeous view (I know, that's not a person).
- The ODTUG crew. Mike, Crystal, Monty, Lauren, Bambi, Jerry, John and Barbara. It's a fun group of people who make work fun, and it shows.
- Catching up with Bex.
- Hanging out with Lillian and Vikki.
- The Blogger's meet-up sponsored by Pythian (among many events). Fuad Arshad has the best pictures too. I'll end up stealing a few of those I'm sure.
- Dinner at the Pier Market with an incredible group of people. Dirty jokes ensued (jam vs. jelly) and then Connor McDonald brought down the house. I couldn't breathe for about 5 minutes I was laughing so hard.
- The walk home from the Pier Market listening to Cary and Greg Rahn talk.
- Foley's. Joe, Tom and Bex.
- Dinner with Jake, David and Terrence. A repeat of 2 years ago. It felt like it had only been a day. That's pretty cool.
- Bjoern Rost. Wow, that guy is full of life. So much fun to be around.
- Tim and Kellyn. Good people.
- And my remora, Alex. I mean that in a good way too. His first time at OOW and he wasn't shy, that's not always easy to do.
I'm sure I could do this all night.

I learned a lot of cool things in San Francisco which I can use immediately. For me it's the opportunity to meet a lot of fun, intelligent, kind people in a very short amount of time.

Tuesday, October 9, 2012

Oracle OpenWorld - Swim in the Bay 2012

Last Monday at 7:30 AM PST, 17 brave souls joined me in the First Annual Oracle OpenWorld Swim in the Bay, a refreshing swim in San Francisco waters.

To be precise, it was at the Aquatic Part near the Dolphin Swim & Boat Club. OK, here's the map to make it easier.

And here's a pretty panoramic:

From Oracle Open World 2012

At my very first OOW, I did this swim 3 or 4 times. I was in much better shape back then. This time, I just thought it would be a fun, easy diversion with a chance to bond with fellow travelers. On Saturday, Jeff Smith and I wandered over to the "beach" and got our feet wet. Here's my interview with him:

Here's part of the crew before disrobing

Note John Hurley's cow hat, that's John in the lime green tank top over to the left. Others pictured here from left to right: Kent Graziano, John Hurley, Bjoern Rost, Gustavo Rene Antunez, I believe the yellow green jacket is Henning Voss, Stanley the ACE Director sitting on Debra Lilley's lap, another Bjorn (help please?) Björn Ole Voß, Connor McDonald and Mogens Norgaard. Now Connor had an unfair advantage, he's currently training for an English Channel Crossing, so I'll photoshop all future pics of him to make him look less like a superhero.

Now, here's the big group shot, disrobed this time. If you have an issue with bright lights, cover your eyes now.

From left to right: Me, Gustavo, Alex Crane, Jeremiah Wilton, Connor McDonald (who we made stand in the back so we wouldn't look so bad), Debra Lilley and Stanley the ACE Director, Bjoern Rost, Bjorn (help again), Sheeri Cabral, Henning Voss, John Hurley, I can't remember his name, help Björn Ole Voß and finally Mogens again. Not pictured: Kent Graziano and Tom Wurzbach (the guy who gave you me, i.e. my first boss).

Debra getting her feet wet...sparing Stanley the cold. In the background, you can see Sheeri Cabral and Alex Crane (I think).

And finally Kent Graziano all wet.

Good times.

Did you notice I said First Annual up at the top? Well, I did. We're doing this again next year and we have sponsors! Nothing terribly fancy, perhaps a ribbon for your badge saying, "I swam in the Bay." Or ORACLENERD swim caps. Or coffee, lots of coffee after the swim to warm up. The goal is 50 people. If you're planning on going to OOW next year, join us!

Friday, October 5, 2012

Fun with United Airlines

I'm currently broadcasting from a very small hotel room in Houston, TX. My flight out of SFO was delayed (Blue Angels and other traffic) which caused me to miss my flight into Tampa. Ugh.

United automatically booked me on a flight leaving IAH at 1 getting into Tampa at 4:14, PM. To top it off, they wouldn't cover my hotel room, they said it "wasn't there fault" that the reason was "Air Traffic Control" (i.e. Blue Angels and stuff) so they weren't responsible. No food voucher, no hotel voucher. Thanks United. Reminds me of work sometimes where someone just points the finger at someone else..."it's the database" or "it's the network" or some other way to shift blame. Whatever.

I understand that it wasn't there fault. If it were me though, I would have helped out more. Pilar, from United at IAH, was very helpful, but I believe she was handcuffed by their corporate policy, you know, shift the blame. Pilar did put me on standby for an earlier flight (7:22 AM) and did book me on an earlier flight that gets in at 1:30 PM. Better than 4:14 PM.

I'll miss out on taking the kids to school. I'll miss out on katezilla's speech therapy meeting and I won't get to pick up my son from school (assuming I don't get on the standby flight). The 1:30 arrival also puts me in jeopardy of not being able to pick up katezilla. Sucks.

I know travel is hard. I expect things like this to happen once in awhile. I don't blame United for the traffic at SFO and I don't think it was their fault. However, I think they could have done a bit more to keep the customer happy. If I were in their shoes, I would have. It seems like a moment to make a great fan and they missed it. Had they helped in the smallest of ways, I would be singing their praises...opportunity lost.

Tuesday, October 2, 2012

Origins of ORACLENERD, katezilla and Stuff

On Sunday I attended the Oracle ACE dinner. This is an annual gathering at OOW of the ACE and ACE Directors who are in attendance (lots). The venue was the San Francisco Yacht Club. Very nice. They made me take off my hat, which I usually do inside, so it was fancy too.

Bob Rhubart of OTN Architect Community fame, asked if I would share the story of the origins of ORACLENERD, how it came about. Since I have a problem saying No, I agreed.

I wasn't very concise about the origins, I rambled for a few minutes finally getting on point. Then I started to talk about katezilla...

Long, tiring day, plus an adult beverage on board and I was just spilling my guts. Near the end, I think I cried, on TV. I asked Bob if he could see tears, he said No.

The following morning a friend of mine in Europe told me he saw the video. I asked him if he saw tears. He said, "No, I was at work, trying not to show emotions, but it was very powerful."

To which I replied, "I was talking about me. :)"

Anyway, katezilla comes on about 6:00 minutes, skip to there if you don't want to hear the whole thing.

Tuesday, September 25, 2012

Running for Brews

Anything that combines my enjoyment of beer with a positive activity is a good thing in my opinion. A couple of weeks ago a friend and I (he was in town for work from San Diego) were walking around downtown St. Pete. We noticed this large gathering of jogging attired folks, so we wandered over.

By large gathering I mean 50 or more people. Not too shabby. I've been running a bit lately (but mostly biking, it's not as hard on the body) and was soon to be moving to St. Pete. A perfect storm for me.

The group is called Running for Brews. Not to be confused with Beer & Blog of course. While fun, it's not as healthy as getting in a run before your beer. Actually, put beer in front of any other word and I'm sure you'll have fun.

Now that I'm living in St. Pete, I decided to partake in the event with friend and now neighbor, John Thompson and his dog Jake.

Why We Do What We Do
We are runners, but we love delicious craft beers. Running for Brews began with a small group getting together for beers after a relaxing run. Everyone could use a little motivation when it comes to finding the energy to get out and exercise. And what motivation is better than beer and friends? Running for Brews has found a way to merge healthy living, good drinking, and great conversation with our running/craft beer club. Find an event near your location and join a free Running for Brews to enjoy great beers and great company. Find a weekly run – Click Here

As for the networking part, I met a fellow Gator and his wife last night. He moved to NYC after college where he worked in the entertainment industry. I asked him about a talent agency up there, and he knew it. He then asked me if I knew Don Epstein. Nope, but hold on. I texted my friend in NYC who works said talent agency asking if she knew Mr. Epstein. Yeah, she did, it was her uncle. Small world indeed.

I know a few of you who are runners or starting to run again and who happen to enjoy the occasional craft brew. Perhaps you should combine those two things and start your own chapter? (I'm looking at you Jeff).

Thursday, September 20, 2012

ODTUG/Kscope Content Chair

So I have a problem saying No (No, No, etc, etc.).

ODTUG came calling this year and of course, I couldn't say no. I was asked to be the Content Chair for ADF/Fusion, APEX, The Database (like The Ohio State), Developer's Toolkit and Building Better Software. There is an entirely different track for BI/EPM stuff, that's being handled by Natalie Delemar.

Just in case I never mentioned it, I was the 4th (or was it 5th?) choice to lead the Developer's Toolkit track last year. My handlers made sure I knew that, presumably to keep me in line. Thankfully Lewis was much nicer, he never told me I was a 4th or 5th choice.

What do I do? Well, I have to get (wrangle) people to run each of those tracks mentioned above. They in turn will get (wrangle) 5-10 people to do their bidding, and by bidding I mean read and rank abstracts for Kscope 13. Then scheduling those sessions that were selected. Fun stuff.

Let's go over that list again: Seems appropriate to add the sub-topics for each of those tracks too, so here goes.

ADF and Fusion Development
- ADF for Beginners
- Advanced ADF: Mobile, Cloud, Web, Services, etc.
- Customizing Fusion Apps
- SOA and Fusion Middleware

Application Express
- The Basics
- Advanced
- Infrastructure/Management/Security
- Plug-ins & Dynamic Actions

Developer's Toolkit
- Forms and Beyond
- IDEs
- Languages
- Version Control and Continuous Integration
- .Net

The Database
- Tuning

Building Better Software
- Agile
- Business Rules
- Code Generation
- Instrumentation
- Modeling
- Testing

Easy right?

I'm still trying to tie down people for The Database and Developer's Toolkit. If you're interested in leading a track, or just simply participating, yell at me.

It's a great way to get involved. It's a great way to help shape the direction you believe we're all headed. Do it. Get involved.

Wednesday, September 19, 2012

Oracle OpenWorld 2012 Schedule

Still working on my general sessions throughout the week, but it's pretty packed already.

Sunday's events are part of ODTUG @ OpenWorld.

The Swim event.

If you have any suggestions for me, let me know.

Tuesday, August 28, 2012

Custom ORACLENERD T-Shirts

Jeff Smith has said for some time now that I need to market the t-shirts better than I do. Selling them has never been a priority. Yes, it's pretty cool seeing the t-shirts out and about. It's cool that people can express their inner oraclenerd like I seem to do on a daily basis. The real reason I put effort into t-shirts and the like, is katezilla.

Recently we got hit with a couple of things: 1, a $190 iPad app for Kate and 2, her ABA therapy co-pays finally came due. For #1, I ran a GoFundMe campaign and encouraged you to buy t-shirts. The GoFundMe campaign raised $420 in less than a day, more than covering the cost of Kate's iPad app. I used the remaining funds to make a payment on #2, her ABA co-pays. I also sold about 10 shirts just after that post and close to 20 in total since.

I am constantly humbled at your generosity.

What does all of this have to do with the title? Well, people have asked for shirts either through Twitter, IM or email. Shirts with specific sayings or different styles. Two weekends ago on a Friday night, Don Seiler suggested a hoodie. Living in Florida I had never thought about it, but he lives in Wisconsin where it gets a little cold. We went back and forth on twitter, I would go on Spreadshirt and spin something up, screenshot it, and send it across the wire. On Monday I had a final product and I named it after Mr. Seiler.

Mr. Seiler (picture) ordered one and so did Mr. Smith. Awesome.
The Don Seiler Hoodie The German Austrian
The other shirt there is the German Austrian edition. Martin Berger was responsible for that one (I have a Cyrillic and Russian version in the hopper for Greg Rahn).

Late last week I talked to Lisa Dobson. She got one last year for OpenWorld and wanted a new one, with a twist.
The Lisa Dobson The Lisa Dobson Pink

Upside down logo (she's British). So I named it after her. Note, the pink version is only available in the US, that brand isn't carried on the European Spreadshirt site.

So, if you have an idea (Mr. Seiler has designed two now, the long sleeve baseball jersey and the hoodie), send it to me and I'll spin something up for you.

How could I forget the APEX version (Joel Kallman)? Or the OBIEE version (Adrian Ward)?

Because I'm forgetful. I'm sure there are others.

Just so it's clear, there are two shops: North America and Europe. They're not exactly the same as it's two separate systems, but I'm trying to keep them in sync.

Send me your suggestions...all proceeds go to a great cause katezilla.

Monday, August 27, 2012

ODTUG @ Oracle OpenWorld

I really need to learn how to say no.

I, somehow, got roped (pun intended) into helping to put together a Sunday Symposium for ODTUG at Oracle OpenWorld this year. If you've been following along for the last couple of years, you'd know that I have this thing for DevOps (devops to me). For KScope 2011, I tried to put together a Sunday Symposium on this very topic. Lewis slapped me down though, "Tools Justice, tools." So we amended the Sunday Symposium to focus on the tools while doing those devopsy kind of things. Much better.

This year I tried to do the same thing. (Side note: The reason I am so "obsessed" with this topic is because I think things like testing, source control, and testing are done very poorly in the database world, the Oracle database world specifically. I know there are places that do it right, my first organization did it right, and then made me a bitter old cynic at each successive organization I came across. I also realize that doing some of these things on/in the database are much more difficult than wrapping up a binary or a web application. Data. It usually comes down to the data. Blah blah blah.). Kris Rice of Oracle SQL Developer fame ran KScope 12's Sunday Symposium...I gave him the topic, and he made it happen. Bonus points for Kris as he won the ODTUG Volunteer Contributor of the Year Award. You can find the slides from that Symposium here.

So here I am again, pushing the methodology or process involved around Oracle Database development. I think it's important. Very important. Fortunately I have a mentor who has spent way more time thinking about this than I. That would be Dominic Delmolino. Cary Millsap had sent me a presentation that Dominic had done at UKOUG in 2010. It was fantastic and about 23 hours worth of material. That was the original inspiration behind the 2011 KScope Sunday Symposium and I have tried to kept it going ever since.

So, back to the ODTUG Sunday Symposium at Oracle OpenWorld this year.

When: Sunday September 30th, 2012, 8:00 AM - 4:30 PM
Where: Moscone West - 2009
Who: Anyone can attend (provided you have an OOW pass of course)
Title: From Dev to Ops and Back Again: Insight into the Development Lifecycle from the ODTUG Experts
  • Gwen Shapira - Pythian, Oracle ACE, Oak Table
  • Dominic Delmolino - Agilex, Oak Table
  • Timothy J. Gorman - Evergreen Database Technologies, Oracle ACE Director, Oak Table
  • Robyn Sands - Oracle, Oak Table
  • Stewart Bryson - RittmanMead, Oracle ACE
  • Kellyn Pot'vin - Enkitec, Oracle ACE
  • Dan Norris - Oracle, Oracle ACE Director Alumnus, Oak Table
  • Cary Millsap - Method R, Oracle ACE Director, Oak Table
Pretty impressive line-up isn't it?

I'll be posting more details in the days and weeks to come. If you're heading to Oracle OpenWorld this year, check out one or more of these sessions, you won't be disappointed.

Tuesday, August 14, 2012

Pearl Jam + Oracle OpenWorld

So, it was announced today that Pearl Jam would be playing at Oracle OpenWorld's appreciation event today. You can read the news here.

For about 6 months now I've been thinking how cool it would be to get someone from the band to wear an oraclenerd shirt. Originally I had approached staff at Oracle about somehow getting in touch with the band, but that wasn't to be. "Think, McFly, think." Umm, Twitter anyone? How about a campaign on twitter? Yeah, that'll do it.

Did I mention that all of this helps pay for katezilla? Yeah, it does. Let Eddie know!

Help me out here. Let's see if we can make this happen.

Sunday, August 5, 2012

katezilla + AAC

About 8 months ago one of the staff at Sydney's School suggested we let katezilla try out one of the Augmentative and Alternative Communication (AAC) iPad apps. My parents let us use their iPad (v1) and bought the app that was suggested, My First AAC.

She's mostly used this at school, only really getting into it at home over the last month or three.

Fortunately, she has outgrown it. I say fortunately because it's great for her, but "bad" for us. I like to joke and say that Kate will have to pay for her own college and wedding as she's spent all of our money (I've been saying this since she was two). Of course, it's not true. I would spend all the money in the world on Kate if I had it.

So she's outgrown the current app. Her teacher has suggested that we upgrade to Proloquo2Go. Here it is on iTunes.


Now, our insurance has been great, a lot better than we initially expected. Most of her therapy is covered...but we've learned recently that we've missed her co-pays...going back to January. Ugh. Would have been way easier to deal with on a weekly or monthly basis, but staring at it with 6 months, not so fun.

More bright side, her tuition has gone down this month and for the upcoming year. Yay for that!

So how can I help?

Great question. I figured I'd do a t-shirt drive to help pay for Kate's AAC app. Oracle OpenWorld is coming up and if you're going, you need a shirt. Even if you're not going, you want one of these...I know you do. Go here if you're in the US.

I've heard from a few of you that shipping across the pond is simply cost-prohibitive. It should be easier for you now, I created a European "shop" which you can find here. No more excuses. Go buy one.


There are a few others (and I obviously need to study my geography a bit better).

Go buy one. Please.

(Apologies to those in other countries, India for example. Or continents, Latin America. Working on that. Hit me up if you're going to OOW, I'll bring some shirts with me so you don't have to pay for shipping.)

Update 2012/08/06 01:22 EST

Some people don't want or already have a t-shirt. If you'd like to simply donate, you can. Here. Actually, everything has a widget these days:

Update 2012/08/06 12:20 EST
Wow! Made goal in less than 12 hours. How awesome is that?

Finally, some katezilla goodness. Just in case you needed a reminder of why I do this stuff. She's interspersed throughout the video. The girl with the long black hair with a flower in it is one of Kate's friends.

Wednesday, August 1, 2012

Building an OBIEE Test Lab - Part II

So it's taking a little longer than I anticipated. That's a good thing (for me anyway). In Part I, I tried to diagram out what my plans were. My drawing was crude, and remains so. Mike Durran left me a link to the drawing below which is found here in the docs.

Now I'm an ambitious lad, but not that ambitious. This is for fun and amusement, perhaps I'll learn a thing or two along the way.

So how does this qualify as Part II? Well, I finally created the database. (No, I'm not going RAC like the diagram and docs say. Like I said, I'm not completely nutters.) This is an accomplishment for me as it's been quite some time since I've built anything, close to a year. So I'm celebrating by writing.
Oracle Enterprise Linux 64 bit, 5.8
Database host: oracle-db
I used OEL 5.8 because that's the latest version I could find that was certified for (straight from OTN). I was unable to find a single document that listed out the supported OSes, but I'm not that adept at searching through MOS yet (LOWER( DBA )). If you know where it is, please link it up.

This database will serve as the repository home for OBIEE and perhaps something like Identity Manager (OVM, OAM). I'll probably end up using it as a source and target for various projects as well.

Thursday, July 19, 2012

My First Triathlon?

Not sure why I felt this post-worthy...

A friend and co-worker of mine is doing her first triathlon this weekend. I think she saw some of my posts about my first (in a million years) being in October, so she called me out. I told her I would sign up for one on July 28th, but I waited to long and the entrance fee was close to a million dollars.

What follows is our (edited) conversation.

Erica: I'm going to need a triathlon pep talk before saturday.
Me: is it the 21st? I'm sure I can do that.
Erica: yeah, I'm nervous as hell. I want to be able to finish the race and not humiliate myself
Me: wait...I've got something.
Me: and you're not even close to where she was during the ironman

Side note, I taped and watched the 2011 Hawaii Ironman recently. I cried almost the entire show. I do that.

Erica: I can't imagine doing a 14 hour race. that's crazy you're crazy.
Me: yeah, i know. the point is, you can manage < 2 hours doing a swim/bike/run no problem.
Erica: 2 hours is my goal.
Me: things to prepare for: 1. as soon as you get in the water, you'll think to yourself, "WTF am I doing?" Just keep swimming just keep swimming.
Erica: thanks Dory
Me: You'll be out of the water in 20 minutes or so.
You'll get out of the water and your legs will be wobbly, sea legs. You'll think to yourself, "WTF am I doing?"
but you'll jog, or walk up to your bike, put on your shoes and get on anyway.
About 5 minutes into the bike you'll be thinking, "so that's why they have aero bars, so they can rest their arms after the swim."
followed quickly by, "WTF am I doing?"
But you'll keep going...enjoying the breeze and freedom the bike provides.
About 30 minutes into the bike, you'll wonder, again, why you're doing this. as you're passed by someone twice your age (you'll know, as everyone has their age painted on the back of their least they used to do that).
Erica: they still do
Me: and you'll be embarrassed and want to quit
then you'll think...wait, if this old effer can do it, why can't I?!!
and you'll keep pedaling hear the roar of the crowd...or not, but you realize you're about a mile out of the bike/run transition.
you drop into a lower (easier) gear and spin so that your legs won't be so full of lactic acid after doing squats (pedaling) for an hour.
you'll cruise into transition, park your bike and sit down to put your shoes on.
after your shoes are tied, or slipped on (like I do, I hate socks, and tying shoes)
you'll start to jog out of the transition area
and your heart will explode...
and you'll think to yourself, "WTF am I doing?"
you'll then decide to give it a minute or two and slow down your pace so you can slow down your heartrate
but your legs are screaming at you...saying "WTF are YOU doing!??"
and "I effing hate you!"
"stop moving!!"
but you'll keep moving forward
Erica: omg, you're not helping. :p
Me: about every 4 minutes on the run this will happen. "WTF am I doing?"
The pain from the bike will leave you after about 10 minutes...
then it's just a matter of willing yourself, Green Hornet style, to keep going.
If you have to walk, walk. Do it for a minute or 2 minutes. It's OK.
Stop for water.
Then you'll think...well this is a convenient place to stop...
but you won't.
Best part about most runs is they are out-and-back...makes it harder to quit as you have to get back somewhere, you might as well finish.
Actually, every minute or so you'll be thinking to yourself, "WTF am I doing?" which is quickly followed by, "Hey, I'm on the run already, awesome!"
Drink water at the stations.
Pour water on your head.
It will help, physically.
But I doubt the physical will be the hard part...the hard part is ALWAYS the mental. If you're goal is to finish, just finish. Take your sweet ass time out there. Enjoy the scenery, hot bodies scantily clad.
Erica: LOL
Me: And realize that everyone is going through EXACTLY the same thing as you...because they are.
Erica: yeah, but they all get to enjoy the beer at the end

And then it devolved from there, shocking, I know.

For whatever reason, I found it an intriguing chat session. You're the (un?)lucky recipient.

I'll post Erica's results here when she finishes. Wish her luck!

For the record, I'll be doing my first triathlon in over 11 years this October.

Tuesday, July 17, 2012

Kscope 2012 Recap

The Venue

The event took place this year in hotter-than-Hades San Antonio, Texas. Fortunately for all of us, the hotel and conference were in a single (Texas-sized) building; the JW Marriott San Anonio.

Just 20 minutes from downtown San Antonio and the airport, the JW Marriott Resort is situated in Texas Hill Country in Cibolo Canyons, where crystal clear streams and towering oak and cedar trees meet the majesty of the hills. The elements of authentic roots, hacienda style, beautiful views and healing waters serve as the inspiration in bringing this magnificent resort to life. The Hill Country resort features 265,000-square-feet of meeting and event space, the 36 hole TPC San Antonio and the sophisticated Lantana Spa.

Let's not forget the Lazy River, where many of my compatriots...lost themselves.

The River Bluff Water Experience offers six acres of heated pools, fountains, waterfalls, rivers, and an abundance of poolside lounges to soak in the sun.

Pretty awesome.

One other thing about the venue, I don't recall a single complaint or tweet about wi-fi. I've not been to a conference where someone doesn't complain about that. Well done Marriott, well done.

The People
If you known me for any length of time, you probably know this is my absolutely favorite part. To me, people are bright shiny objects. This sums it up nicely as well, a friend said this:

Tough to argue with that.

Day -1 I met Jeff Smith and Dan McGhan at the airport. Well, we didn't plan on meeting at the airport, but we happened to be there at the same time. Anyway, Jeff gave us a ride to the Marriott.

In the lobby we met Patrick Barel and Galo Balda, who we had been planning (via Facebook) on going to The Riverwalk and The Alamo that day. Unfortunately for Patrick, he's of the Dutch persuasion and I had recently seen Austin Powers in Goldmember. Now, I really have no context for the "hatred" of the Dutch, but it's funny, so I went with it. I'm sure others would be proud.

Where do you get a chance to publicly torture Don Seiler? Kscope. I'm sure this battle will escalate.

You can see all the pictures I took at Kscope here.

The Party
Armadillo racing? Check.
Sitting on a Texas Longhorn. Check.
Barbeque. Check.
Bull Riding (mechanical). Check.
Rodeo. Check!

Last year it was on the Queen Mary with Busta Move artist Young MC. This year, a full blown rodeo at the Knibbe Ranch. I'll spare you the picture of my war-wound from being thrown by the bull. In my defense, it was night. I may or may not have imbibed an adult beverage or two.


A friend and co-worker was even spotted chasing after a small bovine for a chance to win a pass to Kscope 2013. You should see the video. Fun. Speaking of videos, there are videos of Lisa Dobson riding the bull, Jeff Smith, Tim Gorman and Kellyn Pot'Vin out there. If you're nice, maybe I'll share.

My favorite moment though is definitely this one:

That's Danny Bryant awesomesauce.

The Staff

The YCC staff, minus Kathleen McCasland. From left to right: Aimee, Brianne, Larissa, Lori, Bo (err, Lauren), Melissa, Heather and Crystal (the new Executive Director).

It's difficult to say enough about this team. They're excellent at what they do and have a lot of fun doing it.

Let's not forget the ODTUG Board.
  • Monty Latiolais (pronounced like Frito-lay) - President
  • Barbara Morris - Vice President
  • Jerry Ireland - Treasurer
  • Bambi Price - Secretary
  • John King - Director
  • Cameron Lackpour - Director
  • Mike Riley - Director (and former President)
  • Tim Tow - Director
  • Martin D'Souza - Director
  • Edward Roske - Not Sure (site's been updated, and I'm lazy right now. I just know that he's everywhere and part time comedian.)
The Board members are all volunteers. They give up a significant amount of their own time to help put this event together. They are one of the bravest groups too...they got on stage for the General Session in singlets, you know those things wrestlers wear? I know way too much about some of them. Consider yourself lucky I am not including a picture.

I think that's part of what makes them great though, their ability to put themselves out there like that.

So maybe now you're starting to think, "Man, that would be a great conference to geek out at." You're in luck because early bird registration is open and next year's event is in New Orleans.

Thursday, July 12, 2012

Fun with OBIEE SQL

I posted a couple of tweets yesterday about this crazy query I had to work with. I won't Storify you to death, so I'll sum it up quickly. 1269 lines (formatted, of course). 13 WITH clauses. 8 base tables.

The error that was occurring was an Oracle one: ORA-00937, "not a single-group function."

That's interesting because OBIEE, the BI Server, generates/builds the SQL based on the logical model you've created. It's doing it wrong, in this instance. I'm willing to wager that it's a bug, in one way or another.

Now, if the logical model doesn't support this particular combination of columns, grain, or whatever, it will tell me so immediately. It will usually tell me while working in the RPD, so I won't even get this far (presentation layer).

Anyway, I found the offending piece of SQL, right at the bottom in the SELECT statement. There were 2 analytic functions, MIN and SUM and no GROUP BY. So I took the non-analytic columns, created a GROUP BY and added them in. It worked.

That didn't solve my problem though. Sure, I could run it in SQL Developer, but that doesn't do the end-user much good.

I tried to trace those 2 columns back up through the SQL...and then my eyes bled. With help from the user, I identified the column (measure) that was breaking the report. Now, could I trace this back through the SQL and figure out where? Not likely, but I tried.

I needed a visual representation, so I tried out FreeMind, a mind mapping software. This is what I came up with:

Nodes in Yellow share the same base tables. Ditto for the other color coded nodes. I couldn't figure out a way to get them to connect or share those child nodes.

Ultimately a fun little exercise (in futility?). Anyone else tried to do something like this?

Wednesday, July 11, 2012

OOW 2012 Twitter List

I've been urged to provide a Twitter list for OOW 2012 attendees. You can see last year's list here.

Check out the Storify story of how it unfolded on Twitter (love Storify).

Tuesday, July 3, 2012

OBIEE: Where'd my SQL go?

With the introduction of 11g, you can now deploy your opaque views to the database as, well, database views. It will simply wrap up your SQL statement inside a CREATE OR REPLACE VIEW... and run that statement using the connection pool you specified. Of course this means your connection pool has to have privileges to create objects, which may not be the case if you are using "read only" connections.

Anyway, if your development environment is refreshed from production on a regular basis, objects and all, you'll need to redeploy those views. Naturally, you saved that ad-hoc like SQL in subversion or some other source control tool...oops, you didn't?

All is not lost.

First, it's relatively easy, if you have a magnifying glass, to pick out the deployed views, they look like this:

Now, just go into the table properties, General tab and go to the dropdown box:

Select the Select selection (hah!). If you're a bit uptight about putting it in the correct location (like I am), you may have to navigate to the appropriate database version. For me, Oracle 10g R2:


Another option that you could use would be to Copy (Ctrl+C) the object in question and then paste (Ctrl+V) into notepad or some similar tool. Should be fairly easy to spot the SQL.

Thursday, June 14, 2012

TRUNC Time Off Date in OBIEE

"How do I get a prompt to display the day, minus 3 hours?" was the question.

This was a dashboard prompt (calendar widget) with a default value that used the following SQL:
FROM "Subject Area"
OK, easy enough.

We just needed to add a predicate or WHERE clause. What would I compare it with?

OK, I have a date column (with the no time component), so I can use that. I also have to use OBIEE (Logical) SQL. Gah. I wrote it in Oracle SQL first, day_column = sysdate - ( 3 / 24 ). Wait, I have to TRUNC the date to compare it to a date or else I won't get anything back. day_column = TRUNC( sysdate - ( 3 / 24 ) ). Better. I test it out and it does what I need it to do.

Now, to convert it to OBIEE SQL.

Instead of SYSDATE, I'll use CURRENT_DATE. Now I need to subtract 3 hours. TIMESTAMPADD for that.
[nQSError: 22025] Function TimestampAdd is called with an incompatible type. (HY000)
Oops. How about CURRENT_TIMESTAMP? Yeah, that works. Here's what I have so far:
That doesn't work either. Ah, the time component, need to get rid of that. TRUNCATE? Nope, it's for numbers. Hmmm...wait, CAST! I'll just cast it to a date which should remove the time component.
Awesome. The final logical SQL looks like this:
FROM "Subject Area"

Wednesday, June 6, 2012

KScope 2012 Advanced Registration Ends June 9th!

It's almost here. Kscope 2012. Just 18 more days.

What's that? You're not going?

Need to justify the trip? Check out the bottom of the registration page here. There are some helpful hints for Developers, Managers and BI/EPM Professionals.

On June 9th, Advance Registration ends. If you hurry, you can save $300. Go now.

If you do sign up in the next three days AND show proof of such, I'll bring you an ORACLENERD T-Shirt (white on black, the classic). Limit 5. Donations always accepted (joke, I won't make you donate...unless I've had a beer, then I'll maybe hassle you for a few minutes, but nothing too harsh, I promise).

Thursday, May 31, 2012

Building an OBIEE Test Lab

About 1.5 years ago I bought myself a nice little desktop. The only issues I've had with this computer over that time are the OS upgrades (Ubuntu). It has been an outstanding machine. I currently have 3 "computers" running, 2 Windows VMs and the host machine. I've had upwards of 5 running at once. That's with only 24 GB of RAM. I plan on upgrading to 48 in the near future (max of 96).

One of the motivators for buying the machine was the recent (at the time) release of OBIEE 11g, which required significantly more power. I've installed OBIEE 11g a number of times in virtual machines, but usually just put everything on a single machine (Oracle Enterprise Linux).

Now, I'd like to build out a machine for each component. Why? I have no earthly idea. Fun perhaps?

So here's my starting point:

There are no lines or anything yet, I'm just trying to get it down on paper before I start.

There are 4 distinct sets of software there: That means you can ignore the "Oracle LDAP" and replace it with Oracle Identity Management. I'll figure out later what all the components will be.

Also, you could split that up into 5 software components. You can install WebLogic by itself and then install (software only) OBIEE on top of that. Doubt I'll go that route for this first go, but we'll see. None of this includes source systems either. Somewhere around here I have a fresh install of EBS. Then I would have to install Informatica and the DAC. I'm sure I could get this up to 10 machines. I must watch out for scope creep. Bah, who am I kidding?

As I update my Visio doc I'll update the blog as well and share the progress with you.

I'll start by creating a snapshot of Oracle Enterprise Linux (5.7 I believe is the latest compatible release with OBIEE) and then use that as the base for everything else (database, web tier, etc). If I'm missing something or you think I should add something, leave a comment.

Friday, May 25, 2012

SOUG: That Developer Guy

Not sure if you've heard of this guy. I've written about his tool, err...I mean his former tool...gah, I mean his former IDE before.

Jeff Smith left the dark side to join the mothership, Oracle, late last year. Last night, he visited us down here in Tampa.

He was here once before, when he worked from that other company. You can read about that visit here.

For those who have come to our user group, it's heavy on the DBA side. Not may developers. Not sure what that really has to do with anything, just thought I'd mention it.

You can find him on Twitter and his blog. If you don't know who he is, then you've probably never 1, used Toad, 2, used SQL Developer or SQL Developer Data Modeler C, you don't drink beer and F, you're not from West Virginia. You might count yourself lucky on that last point.

In a surprise twist, for me anyway, I'm not the first to write about Jeff's visit to Tampa. Jon Bloom from Bloom Consulting BI beat me to the punch. I concur with everything that Jon says.

Jeff was his usual self, maybe a Stephen Wright of Presenting. Dry and always funny with great audience interaction. I'm hoping my presence helped as he picked on me quite a bit, but I'm sure he'd have found someone if I wasn't there. I picked up a few cool new tricks. We talked about Twitter (naturally), had debates about the cloud (seriously derailed there) and whether or not you should write code (procedures, functions, packages) directly in the database. Good times.

Jeff is a must see.

Of course there was an after party. I had planned on spending some more time with Jeff than I did, but I had production issues to take care of. Besides, I think he was busy napping. Anyway, Troy (SOUG President), the aforementioned Dan McGhan, Michael (I'm not allowed to print his real name, this is a family blog), myself and Jeff headed over to Ybor city. Jeff wanted a cigar and while in Rome...We sat outside of King Corona for an hour or two and chatted about lots of things. Jeff told us all the cool new features coming out in 12c (OK, I lied...we tried to ply him with beer but he wouldn't divulge any secrets).

No pictures for you today. I wasn't in a picture taking mode. I did try to take a panoramic of the presentation, but my phone/camera borked.

Oh yeah, Jeff yelled at me for replacing his kid's I put it back up (for at least a day).

Monday, April 16, 2012


No technical stuff here today...let's call it a focus on the soft skills.

Been pondering this one for some time now. I wanted to add some of it to a recent post, but ultimately left it out.

How to Take Compliments
I've struggled with this one myself at times. Someone says something very nice to me and I'll hem and haw. It feels...embarrassing. Maybe I don't really deserve it? Am I conceited to accept this? Etc.

I try to accept the compliment, when given now, with grace. "Thank you, I appreciate that." instead of deflecting the attention away (from myself, as I'm wont to do).

Here's 8 easy steps...
  1. Understand what deflecting a compliment is really about
  2. Think about taking a compliment as an exercise in being assertive
  3. See accepting a compliment as a compliment in itself
  4. Decide how you'd like to take the compliment
  5. Smile
  6. If you suspect that the sincerity of the compliment is questionable or the compliment is confusing, you might want to open up an opportunity to explore it
  7. Return a compliment later
  8. Give credit where credit is due - I like this one. I usually have a lot of help at work and I try to make sure that others are included, if not by the complimentor then at least by me. I'm sure it has something to do with playing a lot of team sports growing up too.
How to Say You're Sorry
I dislike but-monkeys. What is a but-monkey? Someone who says something like, "I am sorry for what I did, but..." - the ellipsis could be something like, "you brought this on yourself" or "you did x, y and z." This isn't an apology. Say you are sorry and don't make excuses, period. I have become good at apologizing. I'm not sure that's a good thing as it implies I've made a lot of mistakes. Well, guess what? I have made mistakes in my life. Whether I realize it immediately or some time in the future, I do my best to accept responsibility and apologize.

The most common cause of failure in an apology--or an apology altogether avoided--is the offender's pride. It's a fear of shame. To apologize, you have to acknowledge that you made a mistake. You have to admit that you failed to live up to values like sensitivity, thoughtfulness, faithfulness, fairness, and honesty. This is an admission that our own self-concept, our story about ourself, is flawed. To honestly admit what you did and show regret may stir a profound experience of shame, a public exposure of weakness. Such an admission is especially difficult to bear when there was some degree of intention behind the wrongdoing.

I had one more but it seems to have escaped me at the moment.

Wednesday, March 28, 2012

Random Thoughts: #22

I haven't written much lately, six months in fact. Just trying to get my life in order...priorities.

Strangely, traffic to the site has increased during that time. I would think that any post during this period would slightly increase traffic. Nope. Opposite effect.

I like traffic (only child, I need attention), but it's not why I do any of this. If that were the case, I wouldn't post at midnight on Saturday. Anyway, amusing.

Here's a random video for you: Larry Smith - Why you will fail to have a great career

I have this really strange fascination with this one, Cheap Flights with subtitles

Finally this one which I have watched every other day (it seems) for the past 4 months: Jeb Corliss " Grinding The Crack"

If you made it this far. I'm sorry.

Sunday, March 25, 2012

Real Time BI with Kevin & Stewart

I was lucky enough to be invited to participate on the inauglural [sic] episode of Real Time BI with Kevin & Stewart. Believe it or not, I managed not to curse during the entire episode!

Wednesday, February 29, 2012

On Consulting

I've been thinking about this for quite some time now. 2+ years ago I joined a small, boutique consulting shop that focused on OBIEE. If you've been around her for any length of time, that 2+ years is a lifetime for me.

I've had the pleasure of meeting quite a few, very skilled, Oracle people over the last few years. I've shared beers with them and I've been able to pick their brain...a lot.

I ask questions, lots of them. Both my parents were journalists and boy did they ask a lot of questions. Wasn't the best thing, especially when I hit those teenage years (leave me alone!), but I can look back now and appreciate what they passed on to me.

I guess I'll go through my thoughts, pros and cons, of consulting. Fill in the blanks where necessary in the form of comments.


Let's start with the bad stuff, maybe that means you'll stick around to hear the good stuff below.
  1. Travel - This is both pro and con in my opinion. If you have a family, especially young children, travel is not fun. If you don't like to fly on airplanes, it's not fun. If you don't like living out of a suitcase, it's not fun. If you like coaching your son's baseball team, it's not fun. If you like having a schedule of any sort, it's not fun. I miss my family when I am gone.
  2. Food - Again, will be on both lists. If you try to watch what you eat, it's not easy to do while traveling. You have to work pretty hard to find good, healthy food while traveling. Sometimes it's just too easy to eat whatever is easiest. Heck, your tired from traveling, just make it easy. Easy <> Healthy.
  3. Exercise - It's incredibly tough to get into a groove when you travel a lot. You have to go out of your way, at times, to find either a decent running trail or decent gym equipment. Not easy.
  4. Benefits - No company provided health insurance. No time off. No sick days. If you aren't working, you aren't getting paid. If you suck at time management, like I do, this can be quite painful.
  5. The Hourly Wage - Pay is down there as a pro, as it should be. The part that I hate, is that if you aren't careful, you'll begin to think of all of your time as time you aren't billing. That ain't healthy. I think I've finally broken this mindset, but it wasn't easy.

Pros are easier.
  1. Pay - You get paid by the hour. I prefer this to the salaried positions...I would work upwards of 65 to 70 hours a week as a salaried employee. I'd end up making like $3 per hour. Blah. That sucks.
  2. Travel - If you like to travel, you'll get to do lots of it. I traveled a fair amount when I was a kid, I enjoy it (except the plane part, transporter technology needs to be invented soon). The first year with this consulting company included quite a bit of travel. I was a platinum member (75+ nights) at Marriott. I will be losing that status shortly as I have only traveled one time in the past 18 months for work.
  3. People - It should be no surprise that I like people. Well, with consulting, you get to meet a lot of new people from all over. I was a military brat, moved 8 times before I graduated high school, I really enjoy meeting new people.
  4. Problem Solving - I'll call this the AskTom effect. I have no doubt that Mr. Kyte was a pretty smart fellow prior to starting up that little site, but I think that forcing yourself to answer approximately 10 questions a day, has increased his breadth of knowledge by an order of magnitude. Granted, many of the questions he could probably answer of the top of his head, but...a big but, he constantly provides examples for those easy ones. And what about the hard ones? He answers those too. How often are you asked questions that test your knowledge limit in your particular area of expertise? He does that on a regular basis. I think the same goes for consulting, only on a smaller scale.

    Each and every client you go to has their own unique set of challenges. Things you wouldn't otherwise see if you stayed at one place your entire career. I believe you learn a lot more than the average person if you spend time in consulting simply because of those unique challenges.

    Here's another example. Cary Millsap estimates that he went to client sites about 35 times a year, for 10 years, during the 1990's. That's 350 different environments, different challenges all of them. Do you think that has had an impact on his knowledge and experience? I certainly do. I'll say the same thing about Mr. Millsap, he was a smart guy before doing all that, but I argue that it made him that much better at what he does/did.

    As does consulting in general.

    I've been through a few jobs in the past few years. Each job I learned something new. I was exposed to different problems. It made me better at what I did.

    The beauty of consulting, is that now I don't have to "change" jobs every now and then, I just get new clients. It is possibly one of the reasons I stayed in Gainesville, FL for so long, I got to stay in one place but everyone else came and went (it's a college town for those that don't know, a very transient population).
So, in summary, I really love the problem solving aspects of travel. Being paid for the time you actually work is a bonus, but there are trade-offs. I'm not sure I'll do this forever...I think it would be awesome to be at a job for years on end where you know everything about the business. I just don't see that in my very near future.

Monday, January 23, 2012

OBIEE 11g: Where's the Compare Repositories Dialog?

Recently I decided to try out the new patching capabilities for the metadata in OBIEE 11g. The big reason for me was to avoid having to reset my connection pools. Each time I did a 3 way merge, the connection pools would get over-written with their development credentials. When I was doing the merge, I could never find a way to isolate (leave out) those objects, so it was off to try the patching.

What this patching does is creates an xml file of the differences between 2 RPDs. You can then edit that XML file if you so desire. Most of my duties over the last couple of years have centered around the RPD and front-end stuff, not nearly as much on the administrative side (i.e. migrations). So I need to catch up with the rest of the world.

Reading through the docs, I'm told that I need to use the "Compare repositories" dialog. OK, easy enough.

Where is my entry for it?

OK, let's try the Compare entry.

Since I'm using the prod_20120122 RPD, I select the dev_20120122 RPD.

I'm prompted for the Repository Password and then it spins for a few seconds, then gives me this

I select Yes.

OK...where's the Compare Repositories Dialog like the docs say?

I see the icons have changed signifying differences, but no dialog as mentioned in the docs.

What if I select No?

Ah, there it is.

Interestingly, if I maximize that Compare Repositories Dialog, the next time I run the Compare, I can see it plain as day.

Hopefully you'll find this next time you endeavor to learn how to patch your RPD and can't seem to find the Compare Repositories Dialog.