An Interview with Cary Millsap

Me: What functionality will most people in the Oracle community associate you with?

Cary: Tracing.

Me: What is your favourite non-Oracle pastime?

Cary: I like to put see-through paper over a picture and draw around the outline.

Me: Isn’t that called tracing?

Cary: I guess!

Me: What is your favourite fictional character?

Cary: Dick Tracy.

Me: What was your favourite children’s TV show.

Cary: Thunderbirds.

Me: At last. Something that doesn’t relate to tracing. What is it about Thunderbirds that you like?

Cary: I liked watching the adventures of the Tracy family.

Me: Oh. OK. Perhaps we should talk about your family. Tell me about your family.

Cary: I’ve got kids and wife called Mindy. My pet-name for her is Tracey.

Me: I think we are done here…

Oracle OpenWorld 2014 : ACE Director Briefing – Day 1

As I’m sure many of you will know, “the first rule of ACED is to constantly talk about ACED”. So every year they put us in a room for the 2 day ACED Briefing where “the first rule of the ACED Briefing is don’t talk about the ACED Briefing”. You can guess, this is going to be devoid of spoilers! 🙂

I think it is safe to say, the main focus areas of Oracle OpenWorld 2014 are reasonably predictable, but a number of the announcements related to those areas of focus are not so predictable! I think there will be something for everyone next week! That’s all I’m going to say about the ACED Briefing content! 🙂

Now for opinion time. This is obviously affected by what I heard during the day, but also what has been happening for the last couple of years…

In my opinion, Oracle getting into the “cloud business” over the last few years has been one of the best things to happen to the company! Why do I say this? Because “eating their own dog food” while trying to build a portfolio of cloud offerings has given them a very specific focus. Pre-cloud, many of the features that will be spoken about next week would probably not have been on the radar, even though customer’s wanted them. Now, there is a *very* big driver for getting this stuff done. If Oracle need it to build their cloud, it’s going to happen!

“I don’t care about Oracle’s public cloud”, will be the cry from some out there. Fine. You don’t have to care, but their cloud is built on the Oracle database, WebLogic, the Fusion Middleware stack, their engineered systems etc. If you care about any of the individual building blocks, Oracle’s public cloud will have a positive effect on those building blocks. Making those products lean, fast and flexible is a really important focus when you are trying to use this stuff at the scale Oracle are!

So when you are listening to the array of announcements over the coming week, I would like you to ask yourself a few questions:

  • Is this feature good for building Oracle’s cloud?
  • Do I think this feature would exist if Oracle didn’t need it for their cloud?
  • Can I make use of this feature, independent of Oracle’s cloud offering? (If I could afford it)

At the end of OOW14, when you look back as a whole, I think most people will see how Oracle entering the cloud business has had a really good knock-on effect on their product set.

On a personal note, it was fantastic being at the ACED briefing. I missed it last year and it was great to meet up with everyone again. OOW is so big it is easy to miss people. Having so many of my Oracle friends in one room is brilliant! Happy days…

In the evening I was going to go straight to bed, but Carry Millsap persuaded me to go out to eat. Well, I say persuaded me, but really I just wanted to be near him because he’s so pretty! 🙂 Cary, Kerry, Frits, Martin, Bjoern and myself went out to a little Mexican place and I got a brilliant burrito, which I scoffed, whilst teaching them to speak proper English. They now understand the words minger, minging, muggy and bellend.

Cheers

Tim…

PS. As any conspiracy theorist knows, the public denial of the Oracle Games Console (OGC) by Thomas Kurian is proof of its existence. I believe it uses technology reverse engineered from the wreckage recovered from Roswell.

PL/SQL New Features in Oracle Database 12c

I recently put some more PL/SQL new features articles live.

I’ve also posted a top-level new features article.

This contains a number smaller features as well as links to other articles on the site that discuss some of the new features in greater depth.

I’ve got a couple of PL/SQL books I’ve got to read and review, but I’ve been holding back because I wanted to get my take on this subject written before I was influenced by others. I guess I don’t have that excuse any more. 🙂

Cheers

Tim…

Oracle OpenWorld 2014 : The Journey Begins

I did my normal last minute packing last night. After a quick panic this morning, I was off in the taxi I for the airport.

I find it amazing how sense goes out of the window at airports. There was a big sign saying “Put empty trays on rollers”, so people were either leaving them or stacking them up. Either way, they were getting in the way. WTF? RTMF!

The first flight to Frankfurt was fine. While waiting to board I was staring at the guy in front thinking, “I’m sure I could do his fade better than that!” I might have to start hairdresser-base.com… 🙂

The flight to SFO went without incident. I met Joze SenegacnikØyvind Isene, Martin Bach and Harshad Oak during it. 🙂 Once we landed, it was the airport shuttle to the hotel, then straight out with the family for some food. Its sad that we only get to meet at conferences. 🙂

Tomorrow is the ACED briefing, so lots of tweets telling people I can’t tell them what his going on. 🙂

Cheers

Tim…

I must install Oracle on Fedora!

Followers of my blog and website know I play around with installations on Fedora for fun. All of my installation guides on Fedora come with a link at the top that points to this disclaimer.

A few times recently I’ve been contacted by people saying their boss, teacher or customer is insisting they install Oracle on Fedora. Rather than repeat myself, I’ve added another point at the bottom of this disclaimer that reads:

Q: My boss/teacher/customer is insisting that I should install Oracle on Fedora. What should I say to them?
A: Your boss/teacher/customer is making a mistake, probably because they do not understand the implications of what they are asking you to do, or do not know about the free alternatives. You should probably get them to read this Oracle Linux FAQ. If they are still unsure, feel free to put them into contact with me and I will happily educate them.

If you are being asked to do something that is blatantly incorrect, it is your responsibility to educate those around you so they can (hopefully) make better choices in future.

Cheers

Tim…

The Future of PL/SQL : The People Respond

I put out a post yesterday called The Future of PL/SQL : My Opinion.

For an Oracle-related blog, putting something out at the weekend is a sure fire way to get nobody reading it. If I look at my website, the hit rate at the weekend is about 1/5 of that of a week day. By the time most people get back to work on Monday they have a stack of blog posts to read and yours will probably fall into the “mark as read” pit of their RSS reader. 🙂 In a similar fashion, people’s timelines on social media are generally so crowded, your “look what I’ve just written” tweet will probably be lost amongst the talk of alcohol, bad food and photos of the kids…

So having said that, I chose a Sunday to put out my manifesto for the future of PL/SQL and was surprised by the volume of feedback. I know there are a lot of PL/SQL programmers out there, but it’s easy overlook that when many of the other programming communities are so much more vocal in comparison. It’s good to know there are so many people out there who still care about PL/SQL! You’ve made an old man happy. 🙂

Cheers

Tim…

The Future of PL/SQL : My Opinion

Although a lot of my effort at the moment is focused on DBA features, I have written some articles on PL/SQL enhancements. There are a few neat new features for PL/SQL developers in 12c, but you could be forgiven for thinking it is a little underwhelming. There are two ways to look at this:

  1. OMG. Oracle really don’t care about PL/SQL any more. If they did, there would be loads of new features.
  2. Wow. PL/SQL is so mature and cool that there is really not much more to add.

From a base language perspective, I think option 2 is closer to the mark. PL/SQL is a really stable, fast and mature language. There really isn’t very much that you can’t do with PL/SQL these days. So what is the future of PL/SQL in my opinion?

As part of his role as PL/SQL evangelist, Steven Feuerstein contacted a number of people about their opinions of PL/SQL. When he asked me about my wish list, I suggested all functionality in the Alexandria PL/SQL Utility Library should really be in PL/SQL. A quick look at the Alexandria site shows it includes code that supports a large variety of functionality from a variety of authors. Among other things, this library includes:

  • Generating PDF files.
  • Generating Excel files.
  • Generating RTF files.
  • Microsoft Office Integration (OOXML).
  • Zip and Unzip functionality (separate to UTL_COMPRESS).
  • Parse CSV files.
  • Parse RSS feeds.
  • Generate JSON files.
  • FTP support.
  • Email support (SMTP, POP, IMAP, Exchange).
  • Integration with Google services (Google Maps, Google Calendar, Google Translate).
  • Integration with Amazon Web Services.
  • Integration with PayPal.
  • Integration with Twitter.
  • Consuming and publishing SOAP and REST web services.
  • Logging and debugging APIs and frameworks.

You may see some things in that list that look like duplication of functionality we already have. Oracle 10g introduced UTL_MAIL for sending emails from PL/SQL, but the functionality is so limited, you invariably end up coding your own APIs using UTL_SMTP (like this). Oracle 10g also introduced UTL_DBWS for consuming SOAP web services, but once again, it is often easier to do it yourself directly, or using a simpler SOAP_API based on UTL_HTTP. We don’t even have any reasonable tracing functionality. Instead we have to write our own wrappers for DBMS_OUTPUT, or use someone else’s. So although the PL/SQL language is great, when it comes to integration with other technologies you end up having to do a lot of the heavy listing yourself, or rely on using someone else’s unsupported solution.

So in my opinion, the future for PL/SQL is not in major changes to the language itself, but in bringing these sort of support and integration packages into the database. I think we should avoid forcing overly complex frameworks on people. I’m very much talking about simple utility packages. This could be done in one of two ways:

  1. It is literally baked into PL/SQL. The problem with this approach is you will have to wait for a DB upgrade to get the latest and greatest functionality. That would be a shame since most of the functionality works for multiple DB versions.
  2. Oracle produce their own internal version of the Alexandria PL/SQL Utility Library. So you have an Oracle supplied, supported and maintained library of functionality you can download and use, independent of database version. This means updates are independent of major database version changes.

I think option 2 would make a lot of sense. If you think about it, we almost have a precedent for this in the form of APEX.

  • APEX is built on PL/SQL.
  • It ships separately to the main database releases.
  • Each release supports a variety of DB versions.
  • It brings with it a bunch of utility packages. They are there to support APEX, but there is nothing to stop you using them for your own applications, like this example of using APEX_JSON.

Imagine how exciting it would be if part of the Oracle 12cR2 or Oracle 13c announcement included a huge library of support packages like this! 🙂

Cheers

Tim…

Oracle Midlands Event #5 : Summary

Oracle Midlands Event #5 happened last night.

First up was Martin Widlake speaking about clustering data to improve performance. The cool and scary thing about Oracle is you often go into session like this thinking it’s all going to be stuff you already know, then you realise how much you either didn’t know in the first place, or had forgotten. A couple of times Martin asked questions of the audience and I felt myself shrinking back in my seat and chanting the mantra, “Don’t pick me!”, in my head. 🙂

After food and some chatting there was freebie prize draw. I won a RedGate t-shirt. I shall have to remember to take it to OOW and “accidentally” wear it whilst walking past the RedGate booth. 🙂

Next up was Ron Ekins speaking about data virtualization and instant cloning. The session started off with a general introduction to the subject and a quick look at the products available to achieve it. This session also included a live demo of Delphix. The more I hear about Delphix, the more impressed I am. Judging by the Oracle geeks they’ve drawn into the company in recent years (Kyle Haley, Steve Karam and Tim Gorman) it seems I’m not alone in that opinion. 🙂

Thanks to RedGate for sponsoring the event, allowing it remain free.  Thanks to Mike Dirden for organising the event. Thanks to the speakers travelling to Birmingham to teach us some stuff. Thanks also to the attendees, without whom this would not happen. Please keep spreading the word. 🙂

Cheers

Tim…

PS. The next event will be with Bjoern Rost in November. Keep an eye on the Oracle Midlands site for details, which should be appearing in the next few days.

Temporal Validity, ACLs, External Tables, SQL*Loader and more in Oracle 12c

Some more 12c articles have trickled out over the last few days.

I kind-of mentioned this next thing in a post a few weeks ago, but didn’t name names. 🙂 While writing an article about the PDB logging clause in 12.1.0.2 I noticed it didn’t work. I raised an SR with Oracle Support and they confirmed it was a bug. I was not planning to release the article until the bug was patched, but it came up in conversation recently and I decided it was better to release the article with a big fat warning on the top saying it doesn’t work, just so others are not as confused by this as I was. I’m still not sure it is the right thing to do, but what the heck…

When the bug is patched, I will revise the article and probably promote it to the front page of the website as a “new article”. For now it is lurking in the depths of my website. 🙂

The 12c journey continues…

Cheers

Tim…