Driving vs. Being Driven : The reason you fail to get good at anything!

It doesn’t matter how many times I’ve gone somewhere. I only know the route when I’ve driven there myself. Everything makes sense when you see someone else do it. You don’t realise how distracted you are, and how much you’ve missed until you have to do it for yourself.

When we have consultants on site to help us with something new, I assume I’m going to drive and they are going to give directions. I make notes as necessary, but the main thing is *I’ve done it*, not them. If I’m told I have to “observe and make notes”, I say I’m not willing to support it, as experience tells me there will be important stuff that gets missed as the consultant rushes through it. Once again, it’s the difference between driving and being driven.

I’ve written a lot about Learning New Things, and I think it always starts with learning to learn for yourself. If you are always relying on other people to lead the way, they are driving and you are being driven. They are getting better and you are just drifting.

I suppose the obvious retort to this is,

“Only a fool learns from his own mistakes. The wise man learns from the mistakes of others.”

Otto von Bismark

There is some truth in that, but the import thing in the second sentence is the wise person *learns* from the mistakes of others. There is still something active going on here. You are learning, not just being passive and waiting to be told what to do.

Standing on the shoulders of giants requires you to climb up on to the shoulders in the first place!

Cheers

Tim…

Video : Vagrant : A Beginner’s Guide

Today’s video is an introduction to Vagrant, which I use to build test systems with VirtualBox.

This video is based on the following article.

The star or today’s video is Christian Antognini, who is being drowned out by the noise of a plane. 🙂

Cheers

Tim…

PS. Sorry if you kept getting part way through, only to have the video be removed. I kept spotting mistakes, rendering artefacts and strange things YouTube was doing to the uploaded video.

An Eye for Efficiency : Why you are crap at your job!

One of my colleagues says that I think everyone is crap at their job, and to be honest that’s probably true. Most people are terrible, but they have so little self awareness they actually think they are good. The few people I think are good are those that have some self awareness and have an eye for efficiency. This isn’t just about technology, you can exercise these muscles in everyday life. I mentioned one example of how people approach parking barriers here, but here are some other things I’ve witnessed/experienced.

Shop Checkout

There’s a small, but busy, shop I go to several times a week. The process all the checkout staff go through is like this.

  • Scan all items, leaving them balanced on the checkout in a rather messy fashion.
  • Ask if you want a bag.
  • Pack all those scanned items into the bag.
  • Ask how you want to pay. If you pay by card, which most people do, they type in a code, wait a couple of seconds, then you touch your card to pay.

This drives me insane for a couple of reasons.

  • If they asked about the bag at the start, they could scan straight into the bag. This would save a significant amount of time in itself.
  • They could ask, “Are you going to pay by card?”, whilst they are scanning, and type in the code immediately once the last item is scanned.

Both items would shave quite a number of seconds off the transaction time. For each basket it might be just 30 seconds or so, but when there is a queue of people, which is very often, it makes a big difference. I stand there going crazy wanting to say something, but realising they will think I’m being a dick…

I worked in shops as a kid. I know how you should handle a checkout. In my day we didn’t have the scanners, so you would memorise the prices of popular items so you could get them through the checkout quicker than having to read the price tag then type it.

It amazes me the people on the checkout can’t see this and fix it themselves. It saddens me that their boss hasn’t taken the time to observe them and see this issue, then correct it. I guess they think they just need more staff. 🙁

Production Line

I’ve done a couple of production line jobs in summer holidays during University. In one job I worked packing garlic bread for 3 months. There were several stations in the line, and not surprisingly the line manager tried to move people between the stations to keep the flow of product consistent between all stations. I worked on the last station, which involved putting the packaged garlic bread into a cardboard sleeve. It was murder on your hands. Although the line manager would add and remove people from our station, they never dealt with the final link in the chain, which was the real problem. Once we filled up a crate, someone had to walk it over to the other side of the room and bring back a new empty crate. That was one person missing from the station a lot of the time. I moved the crates next to our station and it was like I had done some witchcraft. It seemed like an obvious waste of time to me, so I dealt with it. I’m sure as soon as I left the crates were moved back to their original location, because that’s where they were meant to go…

In both these cases, and in the case of the parking barrier, all I’ve done is observe what is happening and think how it could be done better. I don’t think this needs a brain the size of a planet. It’s more about having the desire to see things running smoothly. Unfortunately, most people don’t seem to give a crap about that, which is why most people are crap at their jobs…

Now I could link this back to some discussion on automation, or the principle of flow in devops, but you should already be able to make that connection for yourself, and if you can’t, I don’t think me telling you is going to make a difference…

Cheers

Tim…

Video : Oracle Linux 8 Installation

Today’s video is a quick run through a manual installation of Oracle Linux 8.

I put out a number of articles about Oracle Linux 8 when the beta was first released. I’ve now updated them where appropriate.

I’ve also gone through my Vagrant builds for 18c on OL8 and 19c on OL8. They work fine, although there isn’t a Vagrant box for OL8 yet, so I had to make my own using the method similar to this.

Remember, OL8 has only just come out, so the database is not certified on it yet. I’ve put at note a the top of the database installation guides saying as much.

The star of today’s video is Mahir M. Quluzade. He was grinning most of the way through filming this. 🙂

Cheers

Tim…

VirtualBox 6.0.10

VirtualBox 6.0.10 has been released.

The downloads and changelogs are in the usual places.

I’ve installed it on my Windows 10 laptop at work. I’ll install it on my Windows 10, macOS Mojave and Oracle Linux 7 hosts tonight and update here. (see update below)

I’ll be working through my Vagrant builds over the coming days, to check everything works OK. I’ll report back here if something comes out of the woodwork.

Cheers

Tim…

Update: The installations on Windows 10, macOS Mojave and Oracle Linux 7 worked fine. So far, all Vagrant builds are working as expecting.

Dbvisit 9.0.02 : Automatic Failover

I recently wrote about the release of Dbvisit 9, where I included a simple installation article and Vagrant build to get it up and running.

Yesterday I got an email about version 9.0.02, or 9.0.2 depending on how you want to write it. The interesting thing about this release is the introduction of an observer, which enables automatic failover. If you want to try it, there is a free trial available here.

Not surprisingly, the installation is very similar to the previous version, so I’ve updated my original article, and added the observer installation, setup and a quick automatic failover test.

I had to redo the screen shots as the “Configuratons” screen has changed a little to include the observer. I really don’t like taking screen shots!

My existing Vagrant build (here) worked fine. All I had to do was swap the version of the software in the directory, and Bob’s your uncle! Of course, that didn’t install and start the observer, so I did a couple of tweaks and now it does. If you fancy having a play with Dbvisit Standby, this Vagrant build is a really easy way to do it.

Happy days!

Cheers

Tim…

Video : CORR : Problem Solving using Analytic Functions

In today’s video we take a look at the CORR aggregate and analytic function.

This video is based on the information found here.

The star of this video is Vikki Lira, who used to be part of the team keeping the ACE program moving, but is now a Client Engagement Marketing Manager at Businessolver.

Cheers

Tim…

It’s not my job to do your job for you!

I’m currently drowning in a sea of requests for a number of things, including people wanting me to help them with specific issues, which feels a bit like they want me to do their job for them. I feel a little bit uncharitable saying that, but that’s how it feels.

Let me start by saying I understand what it’s like to be asked to do stuff in your job that you don’t know anything about, and also don’t care about. Sometimes, if you can Google a solution and move on it’s a happy day. Having said that, I’m also aware that I can’t expect every article and blog post I come across to contain exactly what I’m looking for. You have to do a certain amount of digging, mixing & matching and it involves a certain amount of trial and error to get to a solution.

Here’s an example I’ve had recently. I’m not saying this was a case of “do my job for me”. The person in question was very polite and not at all demanding, so I feel safe to use this example, and I’m hopefully not going to offend them.

The interaction started with a question about XMLTABLE. It became clear over time this was actually several points wrapped into one.

  • Basic usage of XMLTABLE, explained here.
  • Usage of XMLTABLE with a variable, rather than from querying a table, explained here.
  • Populating a variable (presumably an XMLTYPE) with XML from a URL, explained here.
  • Dealing with network ACLs, which was mentioned in the previous link, but explained more fully here.
  • Making HTTPS calls from the database, explained here.

All these pieces were already explained on the website, but there wasn’t one page that put them all together. As a result of that question I added a bunch of extra links between articles to make the situation a little more obvious.

People contact you and from their perspective it’s a one-to-one interaction, but from your perspective it’s a one-to-many, as they are not the only person requesting your time. You end up feeling guilty you can’t help more, and I’m sure some of them think you are being a dick because you are not helping them. This situation just doesn’t scale.

It’s almost impossible for anyone to be an expert these days. You have to mix & match information to get to a solution. If you want a job in IT, you have to develop this ability to find information from several sources and combine it to get to a final solution. If you are expecting someone else to do that for you, you are never going to get anywhere.

Cheers

Tim…

PS. In my response to a comment below, I am reminded of some words from Tom Kyte who said, “The more you do, the more people want you to do!” 🙂

Visibility vs Results

If you speak to my colleagues you will know one of my regular topics of conversation at meetings is the “judgement of worth” within the company. I get quite annoyed when I see people who I believe are adding value, but always seem to get ignored, while others who talk a great talk, but ultimately can’t walk the walk, seem to catch all the breaks. It seems visibility is more important than getting results these days.

One of my colleagues sent me a link to this article and it really sums up what I keep saying.

I’ve spent the last 18 years telling the internet what I think, so I couldn’t deny a tendency for self-promotion, but I like to think I can actually deliver, not just talk about it! Of course, you will never really know unless you work with me, and that’s the point. It certainly seems people believe what they are told, regardless of whether there is any factual basis to it.

So what should you do? Well in my opinion, maybe this is a start.

  1. Actually learn your subject in the first place. I hope your aim isn’t to be one of these creeps. I hope your aim is to continuously improve and deserve any good breaks you get.
  2. Learn to speak about your subject in a clear, concise and professional manner. Don’t sit there silently, then blame the world for being unfair. The world is unfair! Deal with it! Make a positive change! If you need some pointers, I’ve written some public speaking tips here.
  3. Learn to write in a clear, concise and professional manner. If you write unintelligible emails, people are going to assume you are dumb. I happen to think blogging is a good way to improve your writing skills. I’ve written some pointers about blogging here. Ultimately, it doesn’t matter how you get there, but you must be able to make yourself understood.
  4. Don’t let other people take the credit for what you do. I’m not suggesting you write an email to the CEO every time you deploy an application, but by the same token, don’t let someone else stand up and take the credit you deserve, especially if it’s because you are too scared to actually stand up and speak for yourself, and instead rely on others to present your work.
  5. For the bosses out there, try to start judging people by actual results, rather than by what they say they can/have done.

I realise I sound kind-of narky in this post, but I think it’s really important. It really gets on my nerves when I see people taking the credit for other people’s work, and I’m equally annoyed when I see other people letting it happen.

I’m not suggesting you bully the perpetrators, or make a big show of the situation. Just don’t give them the opportunity to steal your moment in the sun!

Good luck folks!

Cheers

Tim…

PS. The wife said something in a Facebook comment that reminded me of something I wanted to say. I regularly get accused of name dropping, because I say things like, “I was chatting with X, and they said…”. This isn’t me trying to brag about all the “famous” people I know. It’s because I don’t want to come over as having these ideas for myself. I’m going to name-check people, even if you think it makes me look like I’m bragging, because they deserve the credit for their work and their ideas. If they tell me the origin of their idea, I’ll say, “I spoke to X, who said they heard Y say…”. Sorry if this annoys you personally, or you want to make a negative judgement about why I do it, but I think it matters…

Oracle Code : Paris 2018

Oracle Code : Paris started with a short walk from the hotel to the venue. After signing in it all began…

The first session of the day was a keynote by Lonneke Dikmans called “What Happened to My Order? The Need for Orchestration in Modern Architectures”, comparing BPEL orchestrations with orchestrations and choreography used in microservices and serverless architectures. It was a really good introduction to the concepts.

Next up was James Allerton-Austin with “Building a Chatbot Front-end for Blockchain Transactions and Serverless Functions APIs”, which included a description of the stack offered by Oracle and a demo of selling Larry’s car. During this session there were also brief stints by Karim Zein and JeanMarc Hui Bon Hoa.

From there I went to the speaker room and started to feel decidedly odd. I sometimes get migraines that don’t give me a headache, but make me feel dizzy and nauseous. The following couple of hours were mostly lying on the floor and going to the toilets to puke.

I did pop in to see “Build a Decentralized Blockchain Application with Hyperledger Fabric and Composer” by Robert van Mölken, hoping it would distract me.

I also popped my head in to Women in Technology (WIT) session to see what the turnout was like. It was very busy. It was in French, so I could understand what was going on. 🙂

After that I went back to the speaker room floor, then before I knew it, it was time for my session, but not before another conversation with the toilet bowl…

Adrenalin is a wonderful drug. I warned the audience I might have to leave suddenly, but I managed to get through my session without any major problems. I lost the internet connection a couple of times, and had to reconnect to my 18c DBaaS instance on Oracle Cloud. The new laptop behaved itself though. Once my talk was over the Adrenalin started to subside and I felt worse again, but not as bad as before. I was sitting still and chatting to some of the folks in the speaker room for the rest of the afternoon, and I only remember puking once more after my sessions, which was an improvement…

Pretty soon it was time to leave for the airport and Oracle Code : Paris was over for me. Thanks everyone for making it happen. Sorry I wasn’t able to participate more. This year’s conference curse seems to be continuing.

I’ll write about the journey home in a separate post as that is already proving “interesting”, in a conference curse style… 🙂

Cheers

Tim…