Birmingham City University (BCU) Talk #7

Yesterday I went to Birmingham City University (BCU) to do a talk on “Graduate Employability” to a bunch of second year undergraduate IT students. I’ve done this a few times at BCU, and also at UKOUG for a session directed at students.

The session is what originally inspired the my series of blog posts called What Employers Want.

I’ve mentioned before, these sessions are a little different to your typical conference sessions. Perhaps you should try reaching out to a local college or university to see if they need some guest speakers, and try something outside your comfort zone.

Thanks to Jagdev Bhogal and BCU for inviting me again. See you again soon.

Cheers

Tim…

Oracle 18c and 12c on Fedora 29

Danger, Will Robinson! Obligatory warning below.

So here we go…

Fedora 29 has been out for a bit over a week now. Over the weekend I had a play with it and noticed a couple of differences between Fedora 28 and Fedora 29 as far as Oracle installations are concerned. There are some extra packages that need to be installed. Also, one of the two symbolic links that were needed for the Oracle installation on Fedora 28 is now present in Fedora 29, but pointing to the wrong version of the package.

Here are the articles I did as a result of this.

It’s pretty similar to the installation on Fedora 28, with the exception of the extra packages and a slight alteration to the symbolic links.

Once the “bento/fedora-29” box becomes available I’ll probably do a Vagrant build for this, but for the moment is was the old fashioned approach. 🙂

So now you know how to do it, please don’t! 🙂

Cheers

Tim…

Why Automation Matters : Keep Your Auditors Happy

We were having some of our systems audited recently. I’ve been part of this sort of things a few times over the years, but I was pleasantly surprised by a number of the questions that were being asked during this most recent session. I’ll paraphrase some of their questions and my answers.

  • How do you document your build processes? We have silent build scripts (where possible). The same build scripts are used for each build, with the differences just being environment variables. If a silent build is not possible, we do a semi-silent build, and use screen grabs for the manual bits.
  • How do you keep control of your builds and configuration? Everything goes into a cloud-based Git repository, and we have a local git server as a backup of the cloud service.
  • How do you manage change through your systems? Requests, Incidents, Enhancements, Tasks are raised and placed in a Task Board, which is kind-of like a Kanban board, in Service Now. Progression of changes to production require a Change Request (CR), which may need to be agreed by the Change Advisory Board (CAB), depending on the nature of the change.
  • Are changes applied manually, or using automation? This was followed by a long discussion about what we can and can’t automate because of our internal company structure and politics. It also covered the differences between automation of changes to infrastructure and in the development process. 🙂

There was a lot more than this, but this is enough to make my point.

The reactions to the answers can be summarised as follows.

  • When we had a repeatable automated process we got a thumbs up.
  • When we had a process that was semi-automated, because full automation was impractical (because of additional constraints), we got a thumbs up.
  • When we had a manual process, we got a thumbs down, because maintaining consistency and preventing human error is really hard when using manual processes.

In a sentence I guess I could say, if you are using DevOps you pass. If you are not using DevOps you fail. 🙂

Now I am coming to this with a certain level of bias in favour of DevOps, and that bias may be skewing my interpretation of the situation somewhat, but that is how it felt to me.

As I said earlier, I was pleasantly surprised by this angle. It’s nice to see the auditors giving me some extra leverage, and it certainly feels like automation is a good way to keep the auditors happy! 🙂

Cheers

Tim…

PS. This is just one part of the whole auditing process.

Becoming an Oracle ACE

I got asked about this a few times at OpenWorld 2018, so I figured it was about time to visit this subject… Again…

I’m not saying becoming an ACE should be your motivation for contributing to the community, but it is for some people, and who am I to judge. 🙂

Remember, this is just my opinion! Someone from the ACE program might jump in and tell me I’m wrong. 🙂

What do I have to do to become an ACE?

It’s explained here, and if you follow the links. In the past it used to be a bit more “fluid”, but there are still a lot of different types of things that can count towards your “community contributions” with various weightings, but most of the points come from technical content creation and presenting.

If you follow the links provided you can fill in the score card and see if what you currently do adds up to a “reasonable” number of points. I’m not sure if they tell you how many point you need up front, and I’m not going to talk about specifics, but you may be unpleasantly surprised by how few points some contributions get.

Does Oracle User Group work count?

The program was born out of online content. The old timers reading this will remember a time when any user group work, like being on the board, organising conferences and conference volunteering counted for zero. It was not considered as part of your contribution where the ACE program was concerned. Later on it was given a little credit. Now, if you do everything possible with regards to a user group, you can get about half way to qualifying for the ACE program without producing any content. That still means you have to pick up about half of the points from presenting and producing technical content. User group work alone will not get you there.

There are a lot of people who do loads of work for their local user groups. In addition, some write lots of blog posts to promote events. Some are super active on social media to promote events. No matter how much of that you do, from what I can see you qualify for *about* half the points needed to become an ACE. Assuming my calculations are correct, that’s really important, because there are probably some people that think they should be an ACE, and believe they more than qualify, but in fact don’t. You can question the *current judging criteria*, but as it stands, that’s the way it is.

I happen to think this is correct because it’s relatively easy to reach a very wide audience with technical content. In comparison most user groups have a very limited audience. They both have value, but from a “product evangelism” perspective, I think the focus on reach makes sense. Once again, just my opinion. 🙂

Does Twitter (and other social media) count?

No, not really. Technically it does, as you can get 5 points for being super-on-message with your tweets all year. I don’t even attempt to count and submit tweets, because what’s the point? I can get the same amount of points for one technical post. 🙂

If you are using social media to push out your own original content, that’s great. You will get credit for your original content, not the social media posts linking to it. If you are just being “active” on social media, or tweeting out other people’s content, you are not doing something that will earn a lot of points. You are providing a service by introducing people to content they might otherwise have missed, but you will not get a lot of points for it, which means you will not qualify for the ACE program.

Going back to the previous point, it’s mostly about creating original technical content, not curating other people’s content. Some people will feel like they are super active and will feel hard done by if they are not included in the program, but on the *current judging criteria* they should not be included.

What should I spend my time on then?

In my opinion, your time would be best spent on the creation of original technical content.

  • Technical blog posts and articles. Notice the word technical. Blogging random crap doesn’t count, which is why most of my blog posts don’t go on to my score card. 🙂
  • Presenting at conferences and meetups.
  • Videos, webinars and podcasts, but the rules for inclusion mean if you do the 2-3 minute technical videos on YouTube, like I used to, they are not going to count, unless you batch them together into playlists and submit as a single video.
  • Technical books. They get a lot of points, but take a crazy amount of time.

As mentioned, you will get points for other things too, but they are either inefficient, or will not get you “all the way”. 🙂

You get more points for content related to Oracle Cloud. When this was introduced the points difference between regular and Oracle Cloud content was significant and people freaked out. The difference is much smaller now and I don’t think it’s significant. You should be able to make the points easily without doing any cloud content.

But I don’t want to do that!

That’s cool. Do whatever you feel comfortable with, even if that’s nothing. Being an Oracle ACE is not a certification of greatness or a badge of approval. If you love doing this stuff, you get nominated and become an ACE that’s great. If you don’t enjoy creating technical content or presenting, it doesn’t mean you are worse than those that do. Do what you want to do!

I am awesome, but I don’t write/present much!

Remember, this is not a certification. It’s not a measure of how good you are. On countless occasions I’ve read people bleating on about how person X should be an Oracle ACE because they are great, even though they do almost nothing that qualifies for inclusion. It’s about community contribution. If you are great, but you are not out there, you shouldn’t be part of the program.

If you only write a handful of posts a year, even if they are great, you shouldn’t be part of the program because you are not meeting the criteria.

There are a specific set of criteria for entry to, and continued participation in the program. Do you live up to them? If yes, you should be part of it. If not, you shouldn’t.

That’s not to say you have to agree with the *current judging criteria*, but they exist. That is how your contribution is judged.

Conclusion

Don’t project onto the program what you want it to be. It is what it is.

Check out the criteria, rather than making up what you think the criteria should be. They do change over time.

Don’t listen to other people’s interpretation of what counts, even mine. 🙂

Related Posts

As I mentioned at the start of the post, I’ve written about the ACE program a lot over the years, and covered some of these points also. I’ve listed a few of those posts below.

Cheers

Tim…

PS. If I’m factually incorrect, I will gladly make corrections. Differences of opinion may be a little harder to sway me on. 🙂

Autonomous Database : “Hand-tuning doesn’t scale”

I was at a talk by Chris Thalinger at Oracle Code One called “Performance tuning Twitter services with Graal and machine learning”. One of the things he said was, “Hand-tuning doesn’t scale”, and it brought into focus some of the things that have been going on in the Autonomous Database, which is closer to my world. 🙂

In my post called It’s not all about you! I discussed the reaction to a new feature mentioned in the ACE Director briefing. It has been spoken about publicly now, so I guess I’m allowed to mention it by name. The feature in question was Automatic Index Tuning that (insert Safe Harbour slide) might be in Oracle 19c, or in an autonomous database cloud service in the future. Once this feature was mentioned, the list of questions started to pile up, before we even knew what it was or how it was implemented. I mentioned my own reaction to this specific feature, but let’s look at this in the broader sense of autonomous services generally.

As I mentioned, watching Chris’ session brought all this into focus for me. Sorry if I’m stating the obvious, but here goes.

  • Even if I were capable of doing a better job than an automatic performance tuning feature, and I’m not sure I can, that is just me. Is everyone else I work with at my level of understanding or better? Is everyone else who works with the database across the world at my level of understanding or better? If the answer to that is no, then there is a need for feature X, whatever it is.
  • Let’s say I have a group of really skilled people that can do better than automatic feature X. Are they constantly looking at the system, trying to get the best performance possible, or are they working on hundreds or thousands of different targets, and actually spending very little time on each? As their workload grows, which it invariably will, will they be able to spend more or less time looking at each specific feature?

I know there are some consultants that get to go in and solve specific problems on specific systems, and maybe those folks will look down on automatic performance tuning features, but I have to look after loads of disparate systems and I get 30 seconds to get something done before I have to move on. I like to think I’m pretty good at Oracle database stuff, but I need all the help I can get if I want to keep things running smoothly.

When a new automatic feature is announced we always get super intense about it, which usually results in a lot of wailing and gnashing of teeth. Sometimes this is for very good reason, as the early incarnations of some features have been problematic, but over time they often become the norm. Think about the following, and what life would be like without them…

For some people reading this, they may never have experienced life without these features. Believe me, it wasn’t pretty! 🙂

Whether it’s a specific automatic feature, like Automatic Index Tuning, or a grander vision, like the Autonomous Database family of cloud services, this is part of the natural evolution of the database. At *some point* in the future I can see all my databases running on the cloud and all of them being some form of autonomous service, regardless of which cloud provider is running them.

Cheers

Tim…

PS. I hope people understand the spirit of what I’m saying, but I feel the need to include a few statements, as some people on Twitter seemed to get the wrong end of the stick.

  • I’m not saying you can do a rubbish job and leave it up to an automatic tuning feature to fix your crap application. Bad software always runs badly, no matter what you do with it. You might be able to mask some of the problems, but you don’t fix them.
  • I’m not suggesting the development process shouldn’t include proper testing, including unit, integration, UAT and performance testing. See previous point.
  • The more you know about your platform, the better job you can do, even if you have automatic features to help you.

Oracle Enterprise Manager Cloud Control 13c Release 3 (13.3.0.0) Upgrade

A few months ago I wrote about the installation and upgrade Oracle Enterprise Manager Cloud Control 13c Release 3 (13.3.0.0).

At the time I did a clean install and an example upgrade from 13.2 to 13.3. The idea behind the upgrade was basically to practice what I needed to do at work.

Just before I left for OpenWorld I got our virtualization folks to give me a clone of the production Cloud Control VM and I ran a practice upgrade on that. It’s important to do a “real” run through, as sometimes you hit issues you don’t see when upgrading from a clean installation of the previous version. In the past the upgrade of the clean installation of the previous version has worked fine, but the real upgrade failed the prerequisite checks as some of the agents or plugins were too old. The latest test on the clone worked fine, so we had the green light to do the production upgrade.

Post OOW18, my first job on returning to work was to get Cloud Control upgraded. I repeated the process I had done on the clone and it went fine.

In a funny coincidence, while I was doing the upgrade someone retweeted the blog post from a few months ago. Weird.

As a reminder, here are the 13.3 articles.

Cheers

Tim…

Oracle OpenWorld and Code One 2018 : It’s a Wrap!

Here are some top-level thoughts about what happened over the week at Oracle OpenWorld and Oracle Code One.

  • Oracle Cloud Infrastructure (OCI) has come of age. I spoke to a bunch of non-Oracle folks who are using OCI for real workloads and the general perception was that it delivers. Of course the Oracle folks are going to say this, which I why I didn’t ask them. 🙂 It’s taken some time for Oracle to get to this point, but they finally seem to have the infrastructure to move forward with the rest of their services.
  • There was a continued focus on automation and the autonomous services. I understand some people seem conflicted about this, but this is a continuation of what’s been happening over the last 20 years. As I’ve said before, what we have now is not the destination. It’s the start (of this part) of the journey.
  • All the base (on-prem) products continue to evolve. As has been the case in recent years, the evolution of Oracle products seems to be based on the features Oracle themselves need to improve their cloud services, but that is fine as it’s making the products better for us on-prem customers too.
  • Oracle’s support of Cloud Native Computing Foundation (CNCF) is interesting. Allowing people to do the same thing on-prem and in the cloud is good for a couple of reasons. It helps people in the migration from on-prem to cloud. It also stops people feeling trapped on a cloud service. The former is great for cloud providers from an adoption perspective, but the latter is a little scary I guess. It’s important cloud providers don’t give people a reason to want to move off their services!
  • Speaking to non-Oracle folks, there is a perception that Oracle still lags behind on the customer service side of things. I wrote about this a couple of years ago in a post called Oracle: Tech Company or Service Company? I hope Oracle focus on this. There is no point having great tech if people don’t feel confident about using it because of the customer service side of things.
  • I’m a little confused by the re-branding of  “Oracle Groundbreakers” and the “Oracle Groundbreaker Ambassadors”. I miss Oracle Technology Network (OTN). 🙂

Here are the posts related to this trip.

Thanks to the Oracle ACE Program and the Oracle Groundbreaker Ambassadors Program for making this trip possible for me. Let’s see what the coming year brings…

Cheers

Tim…

Oracle OpenWorld and Code One 2018 : The Journey Home

I had the morning in the hotel, trying to catch up on things I missed during this trip and I did a quick visit to the gym. At about 14:00 I checked out of the hotel and got the Bart to the airport.

My boarding pass looked like it said terminal “1”, which sounded a bit odd, but I went there to check anyway. It turned out it was terminal “I”, for “international”, so I got the monorail back to the original place I had started. I got in the queue for bag drop and Chris Thalinger was at the opposite bag drop grinning at me. He was late for his flight. We had a bit of a chat while moving through security, then he went off to catch get his flight. I was still in plenty of time, so I walked down to by boarding gate, to find my flight had been delayed by an hour, so then I was really early. 🙁

The flight from San Francisco to Dublin took about 9.5 hours, which was nearly an hour quicker than it was listed. They were trying to make up for lost time, and we had a medical emergency on the plane, and this time it wasn’t me. After we landed we had to sit on the plane while the medics did their thing. We ended up about 30+ minutes late. I did a little head-nodding on the plane, but not really something I would call sleep. I couldn’t really watch films as there was so little room, my face was pretty much against the screen in front of me. I turned it off and listened to music instead, and stood at the back of the plane, getting in the way a lot.

I originally had a 5-ish hour layover in Dublin, but because of the delay to the first flight that was cut to a bit over 4 hours. Dublin airport is OK, but hanging around at any airport for more than a couple of hours is soul destroying. I could feel myself getting progressively more jittery as time passed. 🙂

The flight from Dublin to Birmingham was less than an hour, but felt like an eternity. I had a window seat on the plane, but someone was sitting in it, so got the aisle instead, which was a good thing.

After a short taxi ride I was home. I put on my first load of washing, and got in the bath (sorry for the mental image)… By the time I got out it was time for the second load of washing, then bed. I woke up in the morning, put on  the third load of washing, and cut my hair. It was only at this point that I started to feel remotely clean.

That’s another OpenWorld done. I’ll write a wrap up post once everything has distilled…

Cheers

Tim…