Friday, May 29, 2009

ORACLENERD T-Shirts in the Wild

I had a few shirts printed up for COLLABORATE 09, 15 of them to be exact. Yes Jake, I still owe you one. It's on the counter and I blame my wife.

One of those shirts I gave to Chuck Meyers who was the OAUG rep for Williams Mills. He was the "handler" for Jan Wagner. Chuck had asked for the shirt to give to Sarah Wroble, who was my initial contact with William Mills and who could not make it to the event. I only had XLs, but Chuck said she could probably use it as a night shirt or something.

Since that was the intended purpose, I didn't really want to ask for a picture in her ORACLENERD T-Shirt, lest she think me a complete pervert. I asked anyway, but somewhat tactfully.

Here are the results:

First up, Sarah Cannon


Chuck Meyers


And finally Sarah Wroble, who said, "don't judge the orange skin...didn't realize the photo shoot would take place that day and went spray tanning the day before." No judging here.


Thanks Sarah, Sarah and Chuck for being such good sports. You are the first!

SOUG: Oracle OLAP - John Paredes

I just returned from the SOUG meeting. Yes, it's 3 or 4 hours after the meeting officially ended. I needed to relax and enjoy the company of one Mr. Dan McGhan. I'll get to that in a minute though.

Tonight's presentation was on Oracle's OLAP capabilities by John Paredes who is the author of The Multidimensional Data Modeling Toolkit. John's education is in Electrical Engineering and Statistics. He's scary smart. Scientist smart. The first five minutes he demonstrated a sharp wit and a great sense of humor. Unfortunately he didn't go into the details that I was hoping for with OLAP.

I asked if he could explain the difference between OLAP and a product like OBIEE. I'm not sure he gave me an exact response, but I believe I was able to glean how OLAP fit into the Data Warehouse world. Now, I could be wrong, but OLAP essentially sits atop the data warehouse similar to a aggregate materialized view, only it's a cube...which apparently can have 5 dimensions. I thought a cube was 3, but admittedly I don't know enough about OLAP (or how it relates to data warehousing).

Ultimately his presentation was interesting. I would have preferred fewer slides and more of the technical stuff, but that's me. He discussed the role of an analyst in being able to turn this data into information that the business could then use. I did like the term Exploratory Data Analysis, which basically means, let me see the data and then I might figure something out.

The short of it, I would like to have beers with John, he just needs to utilize his natural skills a little better.

Oh yeah, Dan McGhan. I "presented" with Dan last year on Application Express at SOUG. By "presented" I mean I let him do all the talking and I not so quietly threw small problems at him by not installing Flash or dropping a table or something fun like that...I just wanted to see how he would handle it.

So we finally got out of there around 8 and headed over to Selmon's, a local eatery (more importantly though it has a bar). He described a project he's working on, to basically create PL/SQL libraries that will eventually be released into the wild. He's already released TapiGen, which generates code to do UPDATE/INSERT/DELETE on specific tables (which I'm not a huge fan of, but can at least appreciate his initiative) and also plRecur which generates dates based on recurrence. Modeled after the syntax used in DBMS_SCHEDULER. Thankfully, thankfully, Dan has seen the light and finally switched to putting commas where they belong...at the end of the line. I've been after him for that since we met. I told he we couldn't hang out until he changed.

Dan is an incredibly resourceful guy and very much under-appreciated. He's got a million ideas about future projects that I had to have a beer or 2 just to keep up with them.

It was a good night, some nice technical content and good (Oracle) conversation afterwards.

Wednesday, May 27, 2009

Ubuntu: The Jaunty Jackalope

I think I'm manic or something. Perhaps it was just saying it out loud finally. Or maybe it was just that time of...well, you know where I was going with that.

Though it is 2 AM EST...still can't sleep.

So I finally made the jump from Windows to Linux. I had been using the dual boot option since January. We (read: I) had to get a new computer because my 7 year old Dell 4300 wasn't quite cutting it anymore. Last year I bought I nice Dell XPS with 3 GB of memory...I could use that one. So I went searching for a laptop for wifey. I now "own" the XPS so I can actually run Oracle and other such memory intensive software.

At COLLABORATE 09, I didn't use Windows at all. Ubuntu seemed to boot quicker and I wanted to be cool at the conference. :)

The last couple of weeks I finally got around to removing Windows completely. Since I purchased Vista Ultimate, I wanted to keep some of the cool Media Center functionality (that I never use) because I paid for. I'm convinced now there is a Linux derivative. If I needed it, I could just run it in VirtualBox or some other virtual machine right? Right.

When I first booted up Windows Vista Ultimate, I checked memory consumption and it was a tad over 1 GB. Really? I haven't even installed my virus stuff yet (avast!). Thankfully I got 3 GB of it.

What's the point of all this?


And here's a snapshot of the resources consumed:



Eight percent? Nice. Now I just have to figure out how to install Oracle (the Database) and all is right in the world.

Tuesday, May 26, 2009

Burnout

After about 5 years of near constant activity I'm finally beginning to feel the effects.

In 2004 I started a business. I would work over 100 hours a week including my day job trying to get that thing going (which never happened). The birth of Kate in December of that year really changed my life. Pretty much every since Kate has been to keep our heads above water financially.

Early 2005 I took a different job. They (graciously) allowed me to work up to 60 hours at for time. That certainly help alleviate some of the financial pressure.

In the last quarter of 2006 I got a call from a recruiter saying I could make two and a half times that money in Tampa. I took it. Unfortunately the contract only ended up lasting about 5 weeks before I rolled into a permanent position. That was WellCare.

About 1 year ago to the day, I was fired from WellCare, ostensibly for blogging about their layoffs. Strangely, last week they announced another round of layoffs.

I then took a contract (temp to perm) position at RevolutionMoney. My hopes were very high as it was still in the start-up phase and they were looking to compete with the likes of Visa and MasterCard. Less than 2 months later though I was let go.

Five weeks after that I was brought back as a permanent employee. Only to be furloughed 3 months later and brought back 4 days later.

In April I resigned and took a position with a new company.

Oy...

Where's the burnout?

I think all of this has led to a bit of burnout. I use to come home and after the kids went to bed starting work on some other side project. Now I just catch up on all the movies I've missed over the past 5 years. The desire to do new and different things is there, just not the will. I get on the computer and start doing other, more trivial stuff.

Lately I'm trying to get Oracle installed on Ubuntu. Mostly screwed that up and will probably have to reinstall everything. I know enough to be very dangerous.

At work I've lost a bit of my fight. I'm still passionate, I just don't have the desire to argue my point all the time. Yes, I know, choose your battles and all that. Most of the fights I've had though are fundamental, like constraints. Without a position of authority (Lead or Architect or DBA or something), I'm not sure I can get others to listen.

It's not like I'm socially inept. I know how to get along and work with others. I just don't know how (anymore) how to change their minds. I've tried proving my ideas out, but it mostly doesn't matter. I'm up against something larger here.

So, I'm a bit burned out. I have not posted a technical article here in more than a month. That's frustrating.

Have you had burnout similar to mine? How do you handle it? What do you do to get over it?

Tuesday, May 19, 2009

Why You Should Blog

At COLLABORATE 09, Dan Norris introduced me to Ian Abramson, the President of IOUG, author and Data Warehouse guy.

The topic of conversation was blogging (naturally, as I was there on a media/blogging pass). Ian had just recently taken up blogging and was struggling a bit to find a reason to continue blogging.

I then (beer induced) launched into the "whys" and "what fors" for him to blog. I even sent him an email (what? he can't fire me...) which I reprint here.
We talked about this briefly in the exhibit hall. You have a very unique perspective, you are President of the IOUG, 22,000 strong. You are also the Director of the Enterprise Data Group at Thoughcorp. Both positions, and your view of them, are unique. Think of all those people who are striving for success in their life. You are a success, whether you realize it or not. What you have accomplished is no small task. I believe there are many people out there who could benefit from your thoughts and views.

I shared the story of Tom Kyte with you but I'll rehash it here. I began reading AskTom in January of 2002, just before I was to start as my new job in an Oracle shop. At first I thought it was a joke, because my boss' name was Tom as well. After getting in trouble for reading at work (non-work related of course), I began to read AskTom for "pleasure," so I wouldn't get in trouble. That site was often (and still is) the first site I would go to seeking an answer. In 2005 after I had moved on from my first job, he began to blog. As I had read just about his entire site, it was a welcome retreat. His blog contained the occasional technical articles, but more importantly to me, he began to share his approach. Why do that this way? Why instrument your code? So on and so forth. I think I got far more out of his blog, from a big picture perspective, that I ever got from AskTom.

That's why I believe it is important, if you are so inclined, for you to blog.
Is it legal to quote yourself?

I also added a section (I'm not usually known for begin succinct) about blogging in general.

August will be the 2 year mark since I began blogging. My initial reasons were to share what I have learned from my unique perspective. Someone, somewhere could get something out of it. Since then, my reasons have evolved.

1. Knowledge Base - I now find myself searching my own site for problems I have solved in the past, the use of DBMS_CRYPTO being one of them. It has become my own knowledge base.
2. Communication - It has helped me refine my ability to communicate. I now have to articulate my views in a way that other people can understand. That helps me in every facet of life.
3. Peer review - If I post something that isn't correct or is misguided, there are plenty of people out there to tell me I am wrong. I view that as a good thing.
4. Community - I have a small following (barely double digits) whom I can communicate with through the blog. I like the fact that I am plugged in or in touch with other people who do what I do.

Blogging got me fired about a year ago. It wasn't my proudest moment in life, but I definitely learned something from it. Blogging got me into COLLABORATE 09. Blogging will hopefully get me into OOW in October. Blogging hasn't helped me land a job yet, but again, it will eventually.

The point of all this rambling is that everyone, I mean everyone, has a unique perspective on the world. Someone out there will find your stuff interesting. You probably won't make money off of it ($67.45 in 21 months so far!), but if you dedicate yourself to it, you'll certainly get something out of it.

Indexing High Transaction Tables

I haven't had many opportunities for the past couple of months to write code, something I sorely miss. Since I changed jobs, I've been doing mostly analysis (aka learning all about the data). I think the last time I wrote any PL/SQL was March...wow.

One thing I have been tasked with doing is re-designing how we process payments. Many of the core tables have been bastardized in that entities are mixed up with attributes...or at least I think that's how you describe it. I'll show you an example and maybe someone can tell me what I am trying to explain.

Let's take a lookup table like payment types. You'd have Check, ACH and Credit Card. I'm sure there are others, I'm just trying to get the point across. Fairly simple right? Well, what has happened is that the business has expanded and in order to handle it, new payment types were created.  Now we have Company 1 Check, Company 1 ACH and Company 1 Credit Card. Those lookup records have now been imbued with a different meaning.  What's the term for that?

Oh, you were interested in the title? I'm getting there.

We store a payments in a "transaction" table with a few different lookup tables (like payment types) hanging off of it. We're not talking about Visa volume or anything, but a modest multiple of 10 thousand transactions a day. We hope to be getting a lot more soon. When considering the design of these types of tables, I have tended towards denormalization. You want to get in and out real quick without the need to lookup (I typically use codes for the lookup keys as opposed to the number, "ACH" or "CREDIT_CARD" for example) or write data to a bunch of different tables. One INSERT and done.

Hold on, I'm almost there.

As I was analyzing the data, I found that many of the columns I was grouping on or trying to filter on were not indexed. I suppose someone could make the case that leaving indexes off of this type of table would be good. My intuition is that they should be indexed, that the "overhead" of the index is nominal, but of course I have no proof one way or another.

I'd like to know what the DBAs out there think. A small aside, I consider myself a "dba" (note the lowercase) in that I have some crossover skills, but they tend to be from the application standpoint. "DBA" are people that keep the database running all the time. The ones that can perform a recovery (I can do backups, but I have yet to perform a recovery). The ones that love to dig into the internals of Oracle to see what's going on.

What do the DBAs think? Index a high volume table or leave them off? Either way, please explain yourself so I might learn something. ;)

Tuesday, May 12, 2009

Top Ten Grammatical Errors That Make People Look Stup--Silly....

I had been planning and scheming to be the "first" to have a guest blogger...but Lewis beat me to the punch. Yes, yes, I know, neither of us were the first to think of it.

I'm part of this the Network with Gators group on LinkedIn and one of the daily digests came through my email titled, "How many Gators are making the leap to entrepreneurship or business owners?" (I've probably done the quotation marks wrong). Anyway, I saw one of the comments by one Tiffany Morgan and decided to reply to her privately.


I liked the fact that she was creating something all her own, especially that she was so young in doing so. I was probably face down...I mean, doing something else, something non-constructive, at her age. (Seriously, it's not like I'm 70 or something, so why does early 20's sound so young?)

Anyway, I thought many of us could use some good writing tips. If you're like me, you won't necessarily go looking for them. So I'm bringing right to you.

Without further ado, Tiffany Morgan.





Words are one of the few things in this world that aren’t discovered—they are entirely manmade. Because of this, those of us who love the things fight among ourselves (and with those who hate the things) to form some semblance of consistency through them, to make the words that make the world make sense be sensical themselves, to give them empirical, scientific substance when they inherently have none. So we draft up things like dictionaries, thesauruses, and style books. Few people read them, fewer love them, but everyone needs them. A typo can be easily overlooked, but not knowing the difference between “who” and “whom” or “its” and “it’s” can make the difference between acceptance and rejection, publication and dismissal, credibility and incredibility. It’s not necessary to beat yourself up memorizing the rules, but it is helpful to know at least some of the common issues our tenth grade English teachers should have taught instead of harping on the state assessment exam.

Top Ten Grammatical Errors That Make People Look Stup—Silly... .

I just received a tongue lashing from Tiffany because I tried to give her crap about the ellipsis

10. Putting quotation marks inside periods and commas – This is never, ever right. No matter what anyone tells you, quotation marks (and yes, they are called "quotation" marks, not "quote" marks) always (times infinity squared) go outside periods and commas. This rule does not always apply to other punctuation marks, however, so just memorize it for these two for now.

Wrong: "I love Twitter", she said.
Right: "I hate Twitter," he said.

9. Using "and" when you mean "to"

Wrong: I’m going to call my dad and wish him a happy Father’s Day.
Right: I’m going to call my dad to wish him a happy Father’s Day.

8. Mixing up "then" and "than" – "Then" denotes time, sequence, or addition. "Than" is a comparative word.

Example:
I’m going to school, and then I’m going to work.
She likes cake better than ice-cream.

7. "Lose" v. "Loose" – "Lose" means something is or may no longer be possessed. "Loose" means something is slack.

Example:
I don’t want to lose my job.
My shoelace is loose.

6. There, Their, and They’re – "There" refers to a place, stage, or relation. "Their" is possessive for a group. "They’re" is the contraction form of "they are." No examples here. They are seriously self-explanatory.

5. Saying "whether or not" – The word "whether" means there is an option. To say "whether or not" is redundant.

Wrong: I don’t care whether or not you like my Hammer pants!
Right: I don’t care whether you like my Hammer pants!

4. Using "of" when you mean "have" – We might say it this way, but writing it this way is a big no-no.

Wrong: You should of listened to your boss.
Right: You should have listened to your boss.

3. "Affect" v. "Effect" – People who have never learned the difference between these words generally use "effect" for everything, but I promise you: They are different! "Affect" is a verb and means "to influence," but "effect" is a noun (except when it’s a verb, meaning "to cause," but we’ll leave that alone for now).

Example:
Having the puppy in the house positively affected her mood.
The cute puppy had no effect on her mood.

2. "You’re" v. "Your" – "You’re" is the contraction of "you are," and "your" is possessive. Once again, no examples here. We can do this, people!

And the number-one-please-never-get-this-wrong-again-or-the-world-might-implode-grammatical-error-that-makes-people-look-stupid-er-I-mean-silly error is:

1. "Its" v. "It’s" – "Its" is possessive. "It’s" is the contraction form of "it is."

Example:
It’s going to be a rainy day.
The dog wagged its tail.

There are others, and maybe we’ll get to those if Chet is gracious enough to invite me back. This is by no means an exhaustive list, and I barely even began to touch on word usage, which is actually more bothersome in some ways than misusing contractions and possessives. Until then, try remembering these rules in your day-to-day activities—when writing papers, preparing memos, e-mailing, and if you want to get really fancy, texting. When you don’t have time to get it completely right, though, just get it written, and contact a professional. I’m a professional editor, and you can contact me through my website, www.WriteWordEdit.com, for an extra set of eyes or for extensive editing of pretty much anything (personal statements, essays, research papers, resumes, fiction, non-fiction, and more).

Lastly, as a general disclaimer, any errors or typos found herein are the sole fault of an early a.m. dysfunctional brain. Coffee, please?

Happy writing,

Tiffany Morgan
Write Word Edit
Founder/Editor in Chief
www.WriteWordEdit.com

Friday, May 8, 2009

COLLABORATE 09: The Wrap Up

Finally...I'm actually tired of writing. Thank goodness it's over.

First off I would like to thank the OAUG staff for providing me with the opportunity to attend. I hope in some small way I was able to help them out. I'd also like to thank Jake for the encouragement he's provided over the last year or so...this would not have happened if he had not convinced me to give Twitter another go.

If you couldn't tell, I like conferences. I like the opportunity to learn new things and I especially like the chance to meet new people. I love what I do for a living, but I like the interactions with others even more. Conferences are a natural fit for me (minus ALL the writing).

I also love the idea of user generated content, which is what these events are about. Not all the presentations are given by the fore-most experts in their field. They are given by people who love what they do and want to share that knowledge. That's one reason I blog, to share.

I still need to figure out where I fit the best. I'm not really sure it's OAUG because it's not as technical as IOUG. Is IOUG for me? I'm not sure about that either. Maybe I fit better with Oracle Development Tools User Group (ODTUG). I know I can fit in with any of those groups because that's what I've done my whole life (always being the new kid). Oracle Open World (OOW) is a combination of all 3...so that's probably where I belong (Hey Oracle, where's my pass?).

To make things easy for people looking for COLLABORATE stuff, I'm including the complete list of articles I wrote about the event in this post.

Thanks again to everyone involved.

Posts
What's Your Schedule?
What's Your Latest Schedule?
Registration, Bearings, etc.
Anatomy of a Database Attack
Data Security Challenge
Convert Forms to ApEx
Other Stuff
Day 1 (Wrap-up)
SwingBench
OAUG - Jan Wagner
Day 2 (Wrap-up)
ECM and Rocking Out
It's a Roller Coaster
Day 3 (Wrap-up)
Other Blogs
RAC Attack!

COLLABORATE 09: RAC Attack!

Last day of the conference and I had the pleasure of attending RAC Attack! Unfortunately for me it was at 8:30 AM, but my excitement for the class got me there ahead of schedule (that and I finally learned how to get to the OCCC).

What is RAC Attack!?
Here's the official conference abstrace (stolen from Mr. Norris):
Whether you’re new to or familiar with Real Application Clusters (RAC), you do not want to miss the IOUG RAC Attack! hands-on lab. The hands-on lab will cover: cluster installation prerequisites on Linux, installing Oracle clusterware, installing Oracle RDBMS, creating RAC database, failure testing and backup/recovery testing.

Also, you’ll have a chance to interact with some RAC experts from IOUG, Oracle and the RAC SIG, as they’ll be available to help you as you navigate the hands-on exercises. These volunteers are sharing their knowledge to help you be successful with your learning experience. This opportunity doesn’t come along often, so don’t miss a chance to pick the brains of our experts!
Who are these so-called experts?

The Organizer, Dan Norris. Oracle Certified Master, winner of thousands of awards, future Oracle employee and overall good guy.

The Class Master, Jeremy Schneider. Also known as Doogie Howser. Also known as the mad scientist. See his experience here.

RAC Experts:
Michelle Malcher, member of the IOUG Board of Directors.
Barb Lundhild [ linkedIn ], Product Manager for RAC (Oracle naturally).
George Trujillo, [ blog ] MySQL and Oracle DBA, Presenter at COLLABORATE 09.
The Other Guy, whose name I did not write down unfortunately. I'm sure Dan or Jeremy will chime in for me.

The Class
Here's the setup. Each participant is given a laptop with VMServer, Oracle Enterprise Linux and a bunch of scripts to build and teardown the installations, at different points in the process. From memory, here are the different points at which you could start:
1. Load the OS (OEL)
2. Load the Clusterware
3. Load the Oracle Database software
4. I can't remember 4...I said this was from memory. Oh wait, 4 was everything installed and configured with a series of labs to perform.

I decided on starting at #3 and #5 (yes, I know it's not listed above). From a bird's eye view, I can understand what RAC is, but I wouldn't be able to give any specifics other than Oracle Database installed on 2 or more computers that talk to each other. For instance, I had no idea that Clusterware sat on top of the OS and below the database. Something learned? Check.

Like I said, #3 and #5. I commandeered another laptop so I could multi-task. I wanted to install the Oracle Database so that I could see how the installation works and get a better idea of how they talk to each other. I also wanted to try out some of the SQL (Parallel Query) and PL/SQL tests to see how it worked.

Sadly, I have virtually no non-Windows experience. I had to ask how to get out of vi (stop laughing). I just tested it again (exitting vi), Escape + : + q + !

At least I hope that's right.

Back to class.

As I waited for #3 to complete (about 15 minutes or so to rebuild), I read the lab on SQL and PL/SQL. After blowing up my #5 computer, I continued reading through the lab. Number 3 finished so I was back there. Error. What did I do wrong? I'm installing the Oracle software and it can't find the second instance. Why not? Maybe I messed up the build. I went back and read up on installing the Clusterware and made sure all the pieces were in the right spot, whatever that means.

I ended up not completing a single lab. But that was OK. It forced me to read through the entire lab manual and got me thinking about other things. I now possess the rough knowledge of a RAC installation...well, I could do it, if given more time (this was a half day class, a little more than 3 hours for me). Anyone wanna hire me to architect and install their future RAC systems? :)

I learn by doing. Trial and error. Throw it against the wall and see if it sticks. Once I do that, I backfill the reading and research on how to do it right. This class was perfect for me, albeit short. I doubt however, that any of them would have wanted to hang out for at least 3 more days until I got it right. The other highlight of the class is that it forces you to learn and step outside your safe zone. You really can't do anything wrong because you will learn something.

It was definitely worth it for me to wake up (super) early and take part in the class. Once I get it working at home, I'll try again so I can impress my friends and colleagues with my super big "DBA" skills (I'm just a "dba").

Thursday, May 7, 2009

COLLABORATE 09: Other Blogs

I found a whole bunch of other blogs about COLLABORATE 09 (shocker, I'm not the only one), so I figured I would publish them here as well.

Todd Sheetz:
Collaborate 09 - Day 1: Charles Phillips
Collaborate 09 - Wednesday

Mark Rittman:
Collaborate’09, and the BI Survey on Project Critical Success Factors

Jonathan Lewis:
IOUG Day 1
IOUG Day 2

Dimitri Gielis:
Collaborate 09 - Monday
Collaborate 09 - Tuesday

Billy Cripe:
Top 10 Components for Oracle UCM
How To Become an Oracle UCM Rockstar

George Trujillo:
Twittering at Collaborate 09
MySQL Presentations at Collaborate 09
Outstanding Presentations on Day 1

Collaborate 09 - Day 2

Collaborate 09 - Day 3

World of WebCenter Interaction:
Collaborate 09 – Orlando, FL

Tom Kyte
Collaborate09 thoughts...

IOUG Blogs (Ian Abramson)
IOUG Forum at COLLABORATE09
IOUG at COLLABORATE09.....Day 2
IOUG at COLLABORATE09.....Day 3
Thanks for COLLABORATE09

I'm am quite sure there are others...please link them up as I am just one man. :)

COLLABORATE 09: Day 3 (Wrap-up)

Slow day for me. I did not attend a single session. However, it was no where near dull.

First stop, the Oracle Press room. May I go to Oracle OpenWorld this year?

Finished writing up my post on Billy Cripe's session following that.

This is my 12th post for the conference. I've posted about 200 tweets over the last 4 days. I've done a lot of writing. It's not as easy as I thought it would be. For instance, I spent about an hour and a half on my interview with Jan Wagner. I think the longest non-technical post has taken about 15 minutes, because it's usually just a rant straight from the brain. The reason the post took so long is that I was trying be as professional as I could. OAUG provided me with a free pass to the event so the least I could do was take my time and get it right. So far the feedback has been good.

Back to the story. I went into the exhibit hall to finish up some work and up walks Mr. Cripe. He sat down and we chatted for awhile before he went into silent mode to finish up his upcoming presentation (or was it his book signing zone?). I then see @jtdavies reply to @cpurdy. I wonder if that's Cameron Purdy, formerly of Tangosol and now with Oracle? The only reason I know his name is because of this post from last year, Application Developers vs. Database Developers. I click through and it is him, so I follow him.

I then get up to go to lunch and end up at the table right next to my previous one. I start talking with the people (there were 3) at the table, then tell them I am there as a blogger. Sure enough, the guy to my left is on the Board of Directors for IOUG. I met the President of the Board last night. Weird.

When I mention my blog, the other guy chimes in, "Hey, I've read something from your blog...App dev vs. Database Devs". Turns out he is an engineer on the Coherence team. Wow.

So we get to talking, and talking, and talking. I then ask for a demo of Coherence...around 2 o'clock, my legs and back had had enough and I had to finish up some other work, so I left, reluctantly. It was so nice to have an intelligent discussion without the religiousity (is that a word?) usually involved in such discussions. We talked about those that say a database is no longer needed and perhaps why and also about some who don't use databases or decide to roll their own in a flat file or something. I certainly came away with a much better idea of what Coherence was/is. I wanted to see a GUI or something, but it's really just a set of libraries (I also asked if I could load it into the database :).

Small freaking world isn't it?

I spent the rest of the (short) day catching up on email, twitter and other writing. Wifey and LC came and picked me up and then we were on our way back to the Roller Coasters.

Wednesday, May 6, 2009

COLLABORATE 09: It's a Roller Coaster

Tonight was the big customer appreciation event at Islands of Adventure at Universal Studios. My goal for the evening was acquiring a bracelet for Kris and fortunately a new friend gave me his. He left this morning so he wasn't going anyway.

Despite living about an hour or two away for the past 20 years or so, I've never been to Universal in Orlando. Universal in California, a million times.

Nothing better than going to a theme park with 2 or 3 thousand people...compared to the usual 20 or 30 thousand. No lines for anything. Free food everywhere and drinks were modestly priced (I can't complain about paying for my own beer now can I?).

We ran into 2 people we met on Monday and walked around for awhile. We then parted ways and I sat and people watched...talking to whomever sat next to me. Since we parked it next to the Hulk, Kris decided to take it for a spin, 5 times.


Good times.

If you can't tell, I enjoy these types of events (conferences). It is nice to be able to meet new people and people you've only known online.

COLLABORATE 09: ECM and Rocking Out

I was told by Jake that I needed to meet Billy Cripe.

Who is Billy Cripe? This guy:

From jkuramot

Kilts are awesome. I wish (I probably could actually) I could wear one every day. I'll have to try it out.

Anyway, Billy is the Director of something or another at Oracle. I decided to attend his presentation yesterday, entitled, "How To Become An Oracle ECM Rock Star".


Not your normal bullet point presentation. WIN.

I'm sure he's been called it before, but he's definitely an evangelist for his product. He worked at Stellent and they were acquired (what new) by Oracle a few years ago. Rumor has it, he has a new book out as well. (As I was standing in a fairly long line for lunch, he walked through the line telling everyone about it. WIN.)

His enthusiasm is infectious. I now want to know more about ECM. WIN.

He's a big advocate of the social web, empowering users. The part that most stuck with me was his example on creating mashups, not the integrate with Google Maps kind necessarily, but allowing everyone to put together the data in a way that best suits them. WIN.

We've talked a bit since his presentation and I like the idea of unstructured data (Billy says something like 80% of an enterprise's information is unstructured). Something like this (I think).

From oraclenerd

How does it fit in with the database world? Does it at all? Interesting questions to ponder. I've always had this nagging feeling about all the email, documents and other materials that people have...how do you find them? How do you share them? How do you turn that raw data into something meaningful? You could be missing out on a new idea without all this information right?

If you get a chance to see Billy speak, take it. You won't be disappointed.

Read more about Oracle's Enterprise Content Management system here.

COLLABORATE 09: Day 2 (Wrap-up)

Another long day at COLLABORATE. I'm not complaining, I'm just out-of-shape. I've walked about a million miles with a 40 lb backpack. Good news, I've lost 3 lbs. :)

After a long night, I got in kind of late today. Add to that the fact that I got lost on the way...with GPS. Sad really.

I attended a short presentation on SwingBench, grabbed a quick lunch and then headed on down to the Press Room with David Peake (ran into him in the exhibit hall). He's a funny (and fun) guy. Well traveled to say the least.

After fighting with my computer for 30 minutes I went old school and used a pen and paper to prep for my interview with Jan Wagner. While waiting, I read every single OAUG packet I could find.

I spent a little more than 30 minutes with Mr. Wagner and headed back downstairs to get online. I may or may not have stopped in the exhibit hall for snacks.

I (finally) heard from Billy Cripe [ blog | twitter ] and decided to attend his session on ECM. What is that? I have no idea. ECM stands for Enterprise Content Management. Not only did I want to meet Billy (at Jake's suggestion) but I wanted to see what else was out there. I thought Oracle only had a database?!

Which reminds me, I need to write up his session. Let's just say he's an infectious speaker. Well worth the trip to the edge of the OCCC (again, no internet connection).

Billy then invited me to the ECM party and I gladly accepted.

In between Billy's session and Billy's party, I got a demo from Sue Harper [ blog ], the Product Manager for SQL Developer. She showed me some tips and tricks with both SQL Developer and the SQL Developer Data Modeler. I even submitted an enhancement request, though she already had that one queued up.

Ran into Dan Norris talking to Sue Harper. He introduced me to Ian Abramson, the President of IOUG and I tried to convince him he should let me come to all of his events...for free. Dan and I presented the case for allowing bloggers (not that they weren't allowed, there's just no policy yet) to attend. Especially super cool ORACLENERDs.

Off to the ECM party which had a Cinco de Mayo theme. Margaritas, Mojitos and beer. I think there was food...and some guy in the corner hand-rolling cigars. Fun was had by all. I had to retire early so I could come home and write. Tomorrow night I'll be getting a ride home so I won't have to worry about drinking or getting lost...

Tuesday, May 5, 2009

COLLABORATE 09: OAUG - Jan Wagner

I had the opportunity to interview Jan Wagner, the past president of OAUG (2007 and 2008). This was my first interview, ever. I was nervous and didn't want to ruin any future opportunities, so I came prepared. Well, I thought I had. All my notes were online and I could not get a connection in the Press Room. Thankfully I got there early, I even skipped the ApEx SIG - Ask The Experts panel (John Scott, David Peake, Dimitri Gielis, et. al). After fighting with the stupid computer for 30 minutes, I just decided to write down my questions so I wouldn't look like a complete fool.

As I write, I'm still debating on the format, so I may switch between the narrative and a Q&A style. So bear with me.

First, Mr. Wagner's bio
Jan Wagner, OAUG (past) President

North Atlantic Treaty Organization

Board member since 2004

Jan Wagner is the immediate past president of the OAUG and currently is an OAUG board member for 2009. He was first elected president of the Oracle Applications Users Group (OAUG) in January 2007 and was re-elected the following year. As a member of the OAUG since 2004, he has spent the last several years on the OAUG board of directors.

Wagner is currently the chair of the Communications Committee. He previously served as the co-chairman of the organization’s Pricing Council, chairman of both the Governance and Finance committees and treasurer of the Executive Committee.

A native of Denmark, Wagner currently serves as the branch chief for operations and internal review for the North Atlantic Treaty Organization (NATO). In this position, he oversees the management of the Oracle E-Business Suite as well as financial planning and corporate governance at the Allied Maritime Component Command Headquarters Northwood outside of London.
Let's start with the basics. There are 2,000 Member Companies in OAUG. Unlike IOUG, OAUG is made up of Member Companies. A company signs up and all of their employees have access to the OAUG resources. Individuals are a part of OAUG, but their role is usually that of a one-person consulting company. Thirty five (35) of the top 100 on the Fortune list are members. Funny, I asked what percent that was. Um, 35? Yeah, I know.

I'm fairly new to the conference/group world. I am a passive member of SOUG and have presented there. I've never been real clear on the differences between IOUG and OAUG, so I asked. Paraphrasing Mr. Wagner:
OAUG's main focus are the applications, Siebel, PeopleSoft, Hyperion, etc. The majority of members are from the Business side like Accountants or HR, but there is definitely some crossover in that some of our members are Information Technology (IT) professionals. Mainly Business types or Power Users.

IOUG is more database specific and the members are DBAs or Developers typically.
. Since OAUG is application related and Oracle is trying to take over the world (of software), I thought it appropriate to ask him how they manage all those acquisitions. Again, paraphrasing:
It's not easy (laughs).

We work with Oracle very closely to integrate the new application users. In some instances, they have independent groups and others are supported by the particular vendor. Siebel for instance fully supported their user groups providing all the necessary resources including content. Independent groups (like OAUG) are community driven in that the users are the experts and provide the content (educational sessions and such).
I had other questions but I believe I captured some of the most important points. OAUG, through their Customer Support Council, has done a fabulous job of keeping pace with the Oracle acquisitions and integrating the respective user groups. Oracle, through their Global Customer Program, has provided the necessary access to OAUG to help accomplish their mutual goals.

I'm spent. That's the most thinking I've done on an article in awhile. I tend to just write what's on my mind. I know it's not perfect and could probably be better, but I'm happy with the result.

View my notes on the interview here.

Let me know what you think. Do I have the chops to pursue a career in journalism or should I stick to my day job? Be honest...brutally honest. It'll only make me better.

COLLABORATE 09: SwingBench

Session: Q352
Presenter: Debra Scarpelli
Time: 12:15-12:45
Room: 224 G
Title: A "Stress-Free" Free Stress Testing Tool From Oracle

I saw this on the schedule "free" jumped out at me. I don't believe the schedule made any mention of the tool, but I could be wrong.

Swingbench

I've read or seen about this somewhere but never got around to investigating it.

For those that don't know, it's a level load testing tool for the Oracle database. It was written by Dominic Giles (of Oracle). It has been used by Oracle internally for a time that I am unable to determine. You can find the page for it here. This tool is free but it is not supported by Oracle.

Specifics
- Currently works against 9i, 10g and 11g
- Built in Java and works on Unix, Linux and Windows
- Can use against RAC, TimesTen and Stand-alone databases.
- Three interfaces, command line (charbench), a mini GUI (minibench) and SwingBench (full fledged GUI)
  - SwingBench interface provides real-time feedback

There are 4 supplied (pre-configured) benchmark tests:
- Calling Circle with a read/write ratio of 70/30
- Order Entry with a read/write ratio of 60/40
- Stress Test with a read/write ratio of 50/50
- Sales History with a read/write ratio of 100/0

You can also write your own.

To run it you need to have Java (not sure which version) and the Oracle client installed on your machine. The output is xml so you can do pretty much anything you want with that.

There are some other tools that you can use in conjunction which you can find on Dominic Giles site.
- Data Generator
- BMCompare (yes, I snickered too) which compares the results of 2 benchmark tests.
- TraceAnalyzer

Pretty cool little tool. I'm definitely going to give it a try to see how it works and what it can teach me.

COLLABORATE 09: Day 1 (Wrap-up

The exhibitor hall opened up at 5 PM (EST). I've been to two conferences so far...Open World (2002) and this one. Wow. All the cheap schwag I could handle, including 2 really annoying monkeys that make really annoying sounds (which will eventually drive me crazy, but not yet). Sushi. Indian food. All the (brie) cheese I could ever want. Beer.

The last being the most important of course. Beer. Mmmmmm...beer.

I walked around for an hour and couldn't find anyone. Finally, I took off my "nice" shirt to display my ORACLENERD shirt and within 5 minutes found @jdanton. The @dannorris walked up like he knew me...he doesn't look like his twitter profile picture. I was looking for some guy with a big coat tugging on the collar.


It took me a second to realize who it was. Nice to meet you. I read earlier that he had been recently acquired (hostile takeover) by Oracle.

Kris (wifey) joined me right after it closed and we headed over to the Peabody where I got to meet @toddsheetz (best...last...name...ever). I have this sneaking suspicion though that my wife was a bigger hit than I was. She's a tad better looking than I.

Met David Peake of ApEx fame. He's the Product Manager for ApEx and gave the Oracle Forms conversion presentation I attended earlier. He's a hoot.

Then I saw a shiny object which I wanted (for LC), but it was attached to some girl. She wouldn't give it to me. Bollocks.

Nice 16 hour day though. Learned a lot, had fun and met some great people. Looking forward to tomorrow.

Monday, May 4, 2009

COLLABORATE 09: Other Stuff

I woke up late today so I missed the Charles Phillips keynote. I'm hoping to catch it online somewhere.

I've been to 3 sessions today.
Anatomy of a Database Attack by Josh Shaul
Data Security Challenge by Paul Needham and Tammy Bednar
Converting Oracle Forms to ApEx by David Peake

Not a bad day.

At lunch I saw Tom Kyte sitting by himself at a table in front of one of the giant OCCC halls. I did not bother him though some suggested I do so. That's why I am here right? To network and meet people? One person even suggested giving him an ORACLENERD T-Shirt (yes, I have a few).

Now I'm waiting to "network" with Dan Norris, Jeremy Schneider, John Scott, Dimitri Gielis and maybe Billy Cripe.

I met John and Dimitri outside the OCCC yesterday as I waited for my ride. I was one of John's first customers at shellprompt.net way back in 2005. I took my 75 page J2EE app and ported it to ApEx in about 2 weeks. It took 6 months to write the J2EE application.

COLLABORATE 09: Convert Forms to ApEx

David Peake
Oracle Application Express 3.2 Forms Conversion

Stupid laptop battery. This would have been done during.

Anyway, it was a tad depressing to see this presentation. All ApEx all the time. The first 20 minutes were an overview of ApEx. Yeah, I know, it's cool. Thanks for reminding me that I can't sell it to anyone. I had Miladin interested in it, but I left before we could really do anything.

I attended because my new place has Oracle Forms and there doesn't seem to be a lot of experience with them. The Forms Converter is part of the latest release, 3.2.

First, you convert your OLB or menu files using the forms2xml utility.
Next, create a workspace and associate it to your Forms application schema.
Create a conversion project.
Analyze the Oracle Forms application.
Generate the Oracle ApEx application.

Voila! You're done. Now all you have to do is customize to suit your needs. Very nice stuff indeed.

You can find a tutorial on Oracle-by-Example (OBE) here.

COLLABORATE 09: Data Security Challenge

I had planned on attending the class on running Oracle in the Amazon EC2 Cloud, but scanning the classrooms on my way, I found another security related class.

Data Security Challenge: Be the Winning DBA
Paul Needham and Tammy Bednar
Oracle Database Security Product Management
Oracle

This presentation is similar to the DBA 2.0 presentation, you know, the old school (SQL scripts) vs. the new school (OEM).

Paul played the part of the old school. Tammy was new school.

The Problem
Data breach in a competitor's company forced the CEO to bring in Paul and Tammy as security experts. They were directed to encrypt the data by 9 PM.

Naturally, Paul wanted to use DBMS_CRYPTO. He altered the table changing the column to RAW and then encrypted the data. They got a "call" about 1 minute later...all the applications are broken. Nice.

Tammy steps in and using OEM, turns on Data Vault and sets up a realm on the affected table. Though not before flashing back Paul's table so the applications would work again. The table (column really) is not encrypted.
ALTER TABLE oe.customer_orders MODIFY ( credit_card ENCRYPT USING 'AES128' );
This is part of the Advanced Security option. Very cool stuff. The change is immediate and it won't break your application.

Data Vault was pretty cool. Tammy locked Paul out in just a couple of clicks. Something about realms going on there...I'll have to do some research.

Audit Vault was next up. Own, separate server which can collect from any Oracle database, some Microsoft SQL Server versions and a few SYSBASE versions. Audit Vault also has separate login for the admistrator (who's watching the watcher?).

Next up, Forms Conversion (--> Application Express).

COLLABORATE 09: Anatomy of a Database Attack

This morning I attended Anatomy of a Database Attack Through Forensics, presented by Josh Shaul of Application Security, Inc.

I've always been interested in the security aspects of Oracle going back to their start at the CIA. I've even gotten myself into trouble proving these types of things to others (I'll never do that again without saying something to someone prior). I've read David Litchfield's The Oracle Hacker's Handbook.

Mr. Shaul went through 2 attack vectors one against 10gR2 and one against 11g. In the 10g attack, the user only had the CREATE SESSION and was able to gain access utilizing a sys package that has a SQL Injection vulnerability. One anonymous block and the DBA role was acquired. I could have sworn that packages in SYS had to be given explicitly? Hmmm...

Attack 2 the user had CREATE SESSION and CREATE PROCEDURE. Creating a procedure within their schema that used Invokers rights. This one was in fact fixed in the most recent (April) CPU. So patch 'em up.

Some other notes from his presentation:

Database Vulnerabilities
Default accounts and passwords
Easily guessed passwords
Missing patches
Misconfigurations
Excessive privileges

External Threats
Web app attacks (sql injection)
Insider mistakes
Weak or non-existent audit controls
Social engineering

He also discussed The Heartland data breach which forced us to take a second look at how we did things and ended up tightening up our controls. VPD, Least Privilege, and others were used.

I'm off to Running Oracle in the Amazon EC2 Cloud.

Sunday, May 3, 2009

COLLABORATE 09: Registration, Bearings, etc.

When I found out I would be attending, I decided to make it a family affair. So we have peepaw and grandma (my parents), wifey and the kids. Staying at a condo about 10 miles from the Orange County Convention Center (OCCC).

Got into town last night. It was a rough 80 minute drive from Tampa. I feel bad for all those who don't have it so easy.

Finding the OCCC
I had wifey bring me to the OCCC since I wouldn't need a car during the day. As we were leaving the condo, we stopped at the guest services building to get on their wifi. Frustrated with their crappy connection, I jumped back in the car and off we went. Wifey had directions there via her iPhone so we tried to follow those. If I have directions I will typically follow them, if I don't, I wing it. That makes me adventurous (or stupid). About an hour later (remember, 10 miles away) we finally arrived.

Registration
Having scored a media pass, I figured I would get some sort of cool, all-access pass reserved only for the "special" people. Nope. Though not a shocker...I still have a hard time thinking of myself as media (I do know that I am "special" though). I found my booth to register (seriously, I had to do my ABCs in my head to make sure I wasn't going to the wrong one...I did that in November while voting). One minute later off to get my backpack, aka schwag.

Etc.
I'm sitting outside the Speaker Ready Room on a bean bag, charging my battery, watching people and using the wifi. At 3:15 I'm going to check out the OAUG New Speaker Orientation. I can ask questions and meet a few past speakers.

I'm scheduled to do an interview with Jan Wagoner on Tuesday. All I know now is that he is the past president of OAUG. I have no angles yet. What the heck am I going to write about? I'll have to find some others around here that know him or just wing it (as I do way too often...I'm thinking being prepared is far easier and less stressful).