I’ve just seen Elysium at the cinema…

The Good: Let’s start by saying it is visually stunning! Earth is now a sprawling shanty town with people living hand to mouth. In contrast Elysium is futuristic, high-tech, clean and inhabited by the ultra-rich. The shots of Elysium in space are great. That’s what sci-fi films should be all about. The scenes on earth have a very real quality about the special effects and are very reminiscent of District 9, which is hardly surprising as it’s the same writer/director. The contrast between Earth and Elysium is very striking and works well. There are some robots that remind me of the old units in I Robot, except these ones have a serious attitude problem. All this makes for some very nice stuff I would like to see again.

The Bad: The characters are really weak and lack consistency. They just don’t have a proper identity and it is hard to really give a crap about them. They throw in a sick child for a sympathy vote, but it lacks anything that really makes me attach with the characters. Admittedly, the “rich verses poor”, “them verses us” thing does get to a working class boy like me, so I naturally wanted all the rich people to die. 🙂

The Ugly: At times it really goes overboard on the shaky camera crap, which just bores me. There are a few very odd scenes where they quickly cut between long distance clean shots and shaky close-up crap, which is really quite strange. I would have expected someone at the studio to notice it looks really stupid, but apparently they didn’t. Perhaps it’s art, or something like that. A few of the fight scenes degenerated into Rock ‘Em Sock ‘Em Robots, which did nothing for me.

So believe it or not, I actually did enjoy the film, but there were lots of flaws that could have been fixed quite easily to make it amazing. Such a pity! Of course, I’m probably wrong because I heard the guy sitting next to me tell his girlfriend/wife, “That’s the best film I’ve ever seen!”  🙂



Quick Pluggable Database (PDB) Update…

I’ve been playing around with using SQL Developer and Cloud Control 12cR3 for managing pluggable databases (PDBs) this morning. I’ve added a couple of quick references to my PDB article.

If you understand the DBCA and SQL*Plus approach, the SQL Developer and Cloud Control screens are pretty self explanatory, so I’ve made my references to them brief. 🙂



Oracle 12c Multitenant Option : CDBs and PDBs…

I started trying to play with the Oracle multitenant option (all that pluggable database stuff) a little while ago and gave up. It’s wasn’t that it was that difficult. More than anything my problem was I didn’t know what to focus on first. There is so much to it and it’s all interrelated, so you start to write about one small piece and before you know it your article has lost focus and is growing too big. As a result I decided to let it simmer in the background and start looking at some of the other smaller 12c new features first…

My next stumbling block was just about everything in 12c seems to relate back to pluggable databases in some way. So you either pretend it doesn’t exist and have gaping wholes in everything you write, or you have to bite the bullet and get to grips with pluggable databases. So back I came to pluggable databases…

Even with my new found commitment to getting to grips with it, I was still struggling to decide how to break this stuff up into manageable pieces so I could write concise articles and order my thoughts on this functionality. Writing is part of my learning process, so if I can’t see how to break down and structure the articles I’m a little lost. Then the recently released OCP syllabus came to the rescue. I always try to write revision notes for the OCP upgrade exam, so I decided the way they break it down will be my template. I’m probably going to write a separate article per bullet point, and try and keep them as directed as possible.

So the first couple of articles have gone live.

Now I’ve got a plan of attack I feel a lot happier.

As always, I will make multiple passes and keep adding things to articles as I encounter things of interest. It’s always a fine balance between being too brief on one hand or regurgitating the manual on the other. The important thing is the content constantly evolves.

The other thing to consider is the OCP syllabus is only a starting point. There is lots of cool stuff that is not on the OCP syllabus, so I’m not going to be a slave to it. As I’ve said before, the OCP syllabus is a nice framework to start you on your journey, but it is not the final goal, it’s just a stepping stone…

I’m not sure why I felt the need to write this little 12c mission statement. Probably to help me solidify in my head how I’m going to tackle the next 18 months while I’m getting to grips with this new version. So that’s the plan, until I come up with a better one… 🙂



Please, please, please instrument your code!

I’m always telling people to instrument their code. Invariably they don’t. Then this happens:

  • Dev: Why is this call failing?
  • Me: What are the parameter values you are calling it with in your code?
  • Dev: Values X, Y and Z.
  • Me: Have you called the routine directly with those values?
  • Dev: Yes, and it worked fine.
  • Me: That would suggest those are not the values you are really using then.
  • Dev: But they are.
  • Me: How do you know. Have you traced the variable values before you made the call.
  • Dev: No, but they are the correct values.
  • Me: Can you put in some trace messages to check?
  • Dev: (walks away) … grumble … grumble … stupid trace … wasting my time …
  • Me: (some time later) So what values were you passing in?
  • Dev: One of the values was not what I was expecting, which is why it broke.

No matter who you are or how cool you think you are at programming, you can never know exactly what is going on in your code unless you instrument it. Just shut up and do it!


  1. Use DBMS_APPLICATION_INFO to indicate exactly what your code is doing at all times. The information can be used for targeting SQL tracing (DBMS_MONITOR), it shows up in the performance reporting (ADDM, AWR, Cloud Control) and some of it gets added to the audit trail, which is very handy. You might prefer to use the Method-R wrapper called ILO.
  2. Put tracing messages into your code. You can use DBMS_OUTPUT directly, but it is probably better to use one of the wrappers that allows you to do clever things, like redirecting the output to different destinations. I wrote my own wrapper code (dsp.pks and dsp.pkb), but there are a few out there. You might want to consider log4plsql or logger.
  3. You can even direct messages to the alert log or trace files using the undocumented package DBMS_SYSTEM, if you are feeling brave. 🙂

Experience tells me you will read this and ignore it, but that is a big mistake! A real professional *always* comments and instruments their code!



LAOTN Tour (Southern Leg) : It’s a wrap!

After fluking a business class flight out to Latin America, I wasn’t looking forward to a cattle-class ride home, but when I got to Sao Paulo airport I got a free upgrade to business class. 🙂 A number of things did not go well during my outbound journey with AirFrance and I was extremely critical on my customer satisfaction survey. I can only imagine this was the reason for my upgrade on the way back, but maybe I just got lucky…

I had an aisle seat, which is a must for me. Just before we took off, the steward asked me if I would swap with a child so it could be near to it’s mother. I foolishly said yes, and ended up in a middle seat. When I am in a window or middle seat, even a business class one, I feel trapped and spend my whole time wondering how I can get out of the seat without disturbing the people around me. Normally I get out at the first opportunity and just stand up for the rest of the flight. I managed to sit down for some of the flight, but spent a long time standing, so I didn’t get any sleep. It was a bit of a waste of a business class seat really. Also, no vegetarian food again…

Sunday/Monday ended up being one very long day for me. I left for Sao Paulo airport about midday on Sunday. I flew home via Paris over night, landing at Birmingham at about 11:00 on Monday morning. I got a taxi home, scrubbed the smell of aeroplane of myself, then went in to work. A little after 17:00 I went to the gym with one of my work buddies, then went home in a daze. I still feel slightly other-worldly now, due to the jet lag… 🙂

Here are the blog posts I wrote during the tour:

I feel like the tour was a big success. All the organisers and attendees I spoke to seemed really pleased with how things went. I’ve also received a lot of positive comments through email and social media, which is no doubt going to make my head swell. 🙂

The sessions I presented during the tour were based on these articles:

The titles of the presentations don’t match the article names exactly, but the content covered is the same. I would rather point attendees at a follow-up article as my slides are quite brief because I use lots of demos.

A number of people have asked me to comment on the safety/security aspects of visiting some of the countries in Latin America, as the security warnings from Oracle Travel would have you believe you will be shot the minute you leave the plane. As with any city in the world, if you rock up dressed and acting like a tourist, you are likely to draw the wrong type of attention. Provided you take sensible precautions things are going to be fine. As some of the guys (Alex and Dana) know, I am cautious to the point of paranoia. 🙂 Having now done both the northern and southern leg of the OTN Latin America Tour I can say that I would have no worries about revisiting any of those countries again. On the other hand, there are places in my home city I would not consider visiting. 🙂

I’ve done a lot of thank you messages in the individual posts, but I would just like to take this opportunity to thank some people again.

  • Thank you to the organizers of the events for inviting me and making me feel very welcome. It takes a lot of effort to organize any event, but the level of support provided for us overseas speakers is fantastic.
  • Thanks to the Oracle ACE Program for actually getting me to these events. Without them I would not be able to take part in these events. I am very grateful for everything I’ve experienced over the last 7 years.
  • A big thank you to my fellow speakers who put up with me for so long. Thanks for all the advice and support. I constantly try to improve myself and a big part of that is the advice I get from fellow speakers.
  • I guess the biggest thank you must go to all those people that attended my sessions. If you ladies and gentlemen did not actually come to these events, people like me wouldn’t be able to show off and pretend we are important for a few days before returning to our regular jobs. 🙂

I’m keeping my fingers crossed that I will get a chance to return next year!



Update: Rusty Schmidt noticed I had missed out the word “no” from the second-to-last sentence on the paragraph about safety/security, which made the sentence read like I would be worried about visiting these countries again. It was a typo. I would be happy to visit these countries again and hopefully will soon. I’ve corrected the typo. Sorry. 🙂

LAOTN Tour (Southern Leg) : GOUB…

The journey from Buenos Aires, Argentina to Sao Paulo, Brazil was quite straight forward. Just a 3 hour flight and I found myself in Brazil. I got one of the official taxis from the airport to the hotel, but if I told you the price you would think I had booked a private helicopter ride! Brazil is very expensive. 🙂

I dumped all my stuff in the hotel and took a walk around the shopping mall next door. Wow! This place is really expensive! If I lived here I would be skinny because I couldn’t afford to eat. 🙂

The morning of the conference started with a bit of a panic. I came back from breakfast, started up all my stuff ready for my talk and my VM was missing! Gone! Aaaarrrrgggghhhh! I have no idea how I managed to delete it. Out came the external hard drive and I recovered the VM using time machine. About 20 minutes later I had a VM again. Phew!

About 40 minutes later I was doing my first GUOB presentation to about 200 people, with my working VM. 🙂 The presentation seemed to go well. I got a lot of questions during the following coffee break, as well as photos with some of the attendees. Proper rockstar stuff. 🙂

I attended a few presentations, including Dana Singleterry‘s session on ADF 12c, which looks pretty cool, and Mike Dietrich‘s session on upgrading to 12c, which gave me a couple of ideas about things I need to add to my article about 12c upgrades.

My second session was followed by a coffee break, which allowed me to extend the question and answer session with the audience. People seemed happy at the end of the session, so I think I did OK. 🙂

It seems lots of people have questions they want to ask, but not in front of the room, so I spent a lot of time answering questions between sessions. I can’t emphasise enough how important networking time is at a conference. I love chatting to people about technology, so the question and answer stuff is really good fun for me.

In the evening we went out to a Brazilian barbecue restaurant. There was loads of veggie stuff to eat, so I stuffed myself, whilst watching everyone else devouring a heard of cows. They like their meat in Latin America!

I got back just in time to see Soulja Boy arrive at the hotel. How the mighty have fallen. There were only about 20 fans there to meet him and he was travelling in the hotel minibus. He’s really small! He looks like a skinny little 10 year old, so I guess the hotel minibus felt like a giant tour bus to him. 🙂

I was only in Brazil long enough to present at the conference, so I didn’t get any shots of the city. You can see a few photos of the conference here, as well as a few pictures I’ve downloaded from twitter.

So that is the last event of the LA OTN Tour (Southern Leg) complete. I’ll be checking out of the hotel in a few minutes and starting the long trip home.

Thanks to everyone at GUOB for inviting me to the event and thank you to the Oracle ACE Program for making it possible for me to take part in the event.

I’ll write a wrapping up post about the tour once I get back home.



LAOTN Tour (Southern Leg) : ArOUG Day 2…

I was determined to get on a bus tour of Buenos Aires this morning. The plan was to do this yesterday, then spend this morning revisiting a few parts of the city in a bit more detail. Unfortunately, my inability to follow basic directions scuppered that plan… 🙂

So this morning I got myself to the tour bus and rode the loop of the city, taking photos as I went. You will see lots of blurred images and lots of pictures containing parts of the bus, but I don’t care because they are still good memories. 🙂

I got back from the tour bus, had a quick shower, then walked to the conference venue to do my last presentation of the ArOUG event. Everything went smoothly and people seemed really happy with it. I got to speak to more of the attendees, which is always fun, and pose for a bunch of photos with people. Everyone in Latin America has such nice skin tones, then there is me looking like casper the friendly ghost next to them. I think I will get a fake tan before I come next time. 🙂

After saying goodbyes to a few people, a few of us went out to a local bar to toast the end of another event. Alex would be proud of me, as I drank a pint of the local equivalent on Guinness, while eating chips (fries) with a cocktail stick. What a great idea! No sticky fingers. 🙂

I’m now back at the hotel and I leave for Sa0 Paulo, Brazil tomorrow. That’s four out of five events done. It hardly seems real…

Thanks to everyone in Buenos Aires and the ArOUG that looked after me and made me feel welcome during my stay. I hope to see you again soon. Also thanks to the Oracle ACE Program for making this happen.



LAOTN Tour (Southern Leg) : ArOUG Day 1…

I arrived in Buenos Aires, Argentina late last night. The ferry ride from Montevideo took about 3 hours.

This morning I got a taxi to the ArOUG conference venue and did my first presentation of the conference. I was originally scheduled to do both my presentations today, then have tomorrow off, but Alex Gorbachev needs to leave earlier tomorrow, so I’ve swapped slots with him and my second presentation is now tomorrow afternoon.

Feeling adventurous, I decided to walk back from the conference venue. The directions seemed pretty straight forward, but I managed to get myself lost. I walked around for quite a while, thinking I must be close to the hotel, but not managing to find it. I eventually decided the only way to get back was to get a taxi. As I walked to find one, I noticed I was standing next to my hotel. Bonus!

The plan was to spend the afternoon on a city tour bus, but unfortunately I got lost on the way to the pickup point and I just walked around for a few hours until I found myself again, standing next to the hotel. 🙂

After reading a bunch of security messages from Oracle I felt quite nervous of taking photos and making myself look even more like a tourist, so I didn’t take many photos. If I can get on the bus tour tomorrow, and not get lost again, I will take loads.

In the evening went out to a barbecue-style place to eat. Everyone ate a little bit of salad and fish to start, then guys brought a procession of different meat out on large skewers, more like swords really, then it was a meat-fest for the rest of the night. I’m a vegetarian, so I kept eating the veggie stuff while I watched a herd of assorted animals get devoured. Everyone was very happy and full by the end of it. Even so, Alex still managed to eat some food from a street vendor on during the walk back to the hotel. I have no idea where he puts it all! 🙂



LAOTN Tour (Southern Leg) : UYOUG…

The trip from Lima to Montevideo took quite a long time. First I flew back to Santiago, then from there to Montevideo, Uruguay. The drive from the airport to the hotel was pretty cool. It was dark, but we were driving along the coast and the city was all lit up. We arrived quite late, so we dropped off our stuff at the hotel and went out to eat.

The next day was the UYOUG conference. I did three presentations at this event. My laptop died during my first session, so I had to fill while waiting for it to restart. The second session went without any problems. I managed to mangle my DB before the third session and I didn’t have enough time to recover it as I only noticed as my session started. Fortunately I have an article associated with each presentation, so I used the examples in the article to demonstrate how the features worked. It always pays to be prepared! 🙂

After my last session I went back to the hotel to get my bags, then it was a quick dash to the ferry port to get the ferry to Buenos Aires.

One bit of culture I did manage to encounter was Mate. When I was walking to the conference venue I noticed lots of people walking with what looked like bongs in their hands, which seemed a bit strange. Later I found out these were used for drinking Mate. I got a chance to try it. It tastes like a mixture of tea and tobacco and has a slightly smokey taste. It was quite an interesting taste, but not like anything I’ve tried before.

So I was in Montevideo for less than 24 hours, which was a shame as the people were great and the city looked interesting. Hopefully I will get a chance to visit again and take a proper look at the city next time.

Thanks to the organisers of the UYOUG conference for inviting me, and of course the ACE Program for getting me to the event!

I’m now in Buenos Aires for the 4th leg of the tour…



LAOTN Tour (Southern Leg) : Day off in Lima, Peru

I actually got a day off from travelling and presenting yesterday. I would have loved to see Macchu Picchu, but that would take more time than I had available, so instead I went to see Pachacamac, which is about 30 minutes from the city. It is a really big site, about 10 hectares. It must have looked amazing in its heyday. One part of the site is a cemetery, where they estimate there are 40,000 mummies. What with that and the whole human sacrifice thing, it was kind-of freaky. I shall have to get some more information about it and scare my nephews with the story. 🙂

I took quite a lot of photos, but they don’t really do the site justice.

After the tour I took my second visit to Wong (a supermarket), to embarrass myself by trying to buy food without knowing the language. The people in Peru are really friendly, so I hope they find my cluelessness amusing, rather than annoying.

After stuffing myself with bread, fruit and Inca Kola, I spent a few minutes in the hotel gym. I think I probably burnt off about one tenth of the calories I ate. 🙂


This morning was a very early start. My alarm went off at 03:45. I was showered, packed and out of the hotel by 04:30. The trip back to the airport was not as much fun as the trip from it. The roads were very quiet, so there were no Fast & Furious moments to write about. 🙂

The hotel told me to be at the airport 3 hours before the flight. Although the place was really busy when I arrived, I got through check-in, security and immigration control really quickly, so as I write this, I have about 2 hours until my flight. The journey is a 3-4 hour flight back to Santiago, Chile, followed by a 2+ hour flight to Montevideo, Uruguay.