Two Years Into Retirement July 2, 2025
Posted by mwidlake in Private Life.Tags: family, life, retirement
1 comment so far
It’s two years and a day since I fully retired. On the 1st July 2023 I changed my LinkedIn profile to indicate my new, permanent, non-working status. I cancelled my business insurance, started throwing out old manuals & notes, and I mentally checked out from fixing corporate Oracle databases. So, how has retirement gone?

Firstly, I think a few of my friends expected that, after a break, I’d start doing the odd bit of consultancy again, writing the occasional technical post – after all, I have “retired” a couple of times before, only to soon be doing some more work. However, what I mostly retired from in those earlier times was from doing the awful commute into London or agreeing to commitments of more than a couple of months. The retirement 2 years ago was a total, 100%, end of 34 years working with IT and database. I’ve not logged into an Oracle database once in the 2 years since that retirement, let alone issued a SQL statement or looked at an AWR report.
Do I miss it? No.
Well… a bit. But not enough to make me go looking for work or replying to the occasional enquiry other than to say “sorry, no, I’m retired”. I do miss fixing issues and making systems run better. I was never even close to being one of the best in the business, but I was pretty good. I like to think I improved every system I looked at (bar one or two exceptions). Every client I had either extended my contract or offered me more work (bar one or two exceptions, and I had had over 25 clients). If the clients were happy, I class that as doing a good job. I do still feel bad about that one role where I could not do a table join(*). There was always a real sense of satisfaction in finishing an engagement and knowing I had done what I’d been asked to do, and often a lot more besides. It was especially fulfilling if I’d been able to teach people and explain things. But, for me, the time had come to call it a day.
I also miss doing technical presentations and the conference circuit, but I struggle with flying now. Besides, I can’t present on technical subjects if I’m not doing technical work. I don’t even have a test database now to check things out before I present on them. I would hate telling people how things work if I’m not 95% confident I have tested it enough to be sure I understand what is going on. I know, I could set up a cloud account or install Oracle on my home machine, but I’d only start playing with the bloody thing again.

So what do I do? Too much! This seems to be a common “complaint” from people I know who have retired, we start to wonder how the heck we found time to do all the paid work and we never seem to get to that happy nirvana of long days sat in the sunshine just drinking tea (or whatever) and reading a book.
Part of why I retired was that I now find it so much harder to force new knowledge into my head, and constant learning is vital to keeping up with the endless steamroller of progress made in all aspect of IT. This difficulty was not a slow decline with age (well, part of it probably was) but more a sudden drop in my ability to understand new things and remember it long enough to slot it into my existing knowledge, caused by my illness back in 2019. However, I am still capable of learning new stuff, though at a slower rate. If I can only force so much into my head, I’ll reserve it for stuff I am really interested in which is mostly science. I still read a magazine called “New Scientist” and when it prompts me to want to know more about something, I can drift around the internet for as long as I like, trying to piece it together.
My wife has totally changed direction and is now a milliner. She does not just create hats, she also runs workshops and does a lot of talks. This take a lot of time & energy, which is a bit of a problem as Sue also has long covid and that makes the energy part very demanding. So I do a lot more of the domestic stuff, I’m pretty much a house husband and cat carer. Which is OK by me, over the last 30 something years of marriage we have taken it in turns to do the majority of the housework, depending on the varying demands of our individual jobs. But, all in all, I think Sue did more historically.
I might not do anything technical anymore or present, but I’m still active in the Oracle community. I’m still president of SYM42 and most of my online interaction is with my Oracle community friends. Many of my closest friends are from the Oracle community, you really do get more out of the communities you engage with than you put in. I do miss being part of the Oracle ACE community but then it’s right and proper that you only stay an ACE if you are doing ACE things, like giving product managers feedback, writing blogs etc. I especially miss the free t-shirts and hoodies!
The rest of my time is spent on DIY and gardening. Old, interesting houses on large plots seem like a nice idea – before you buy one! Then you realise that old equals high maintenance, large equals lots of. I honestly thought that after 2 years I would be on top of it all. How wrong I was! But then, there is the last item.

A lot of my time and energy over the last two years has been spent looking after my mother. Mum was diagnosed with dementia in 2022 and dementia only goes in one direction, which is down. For a couple of years before I retired I was having to go and see my mum more and more often, initially about once or twice a month and by the last year of work, pretty much weekly. It took all day as it was a three-hour drive each way and I could not stay over as her heavy smoking seriously impacted my weakened lungs. I was forced to sleep in her house once as she needed to be monitored for 24 hours after a minor hospital procedure. That night sleeping in her house meant I spent the next 2 days pretty much non-functional. My GP told me not to do that again.
My brother is also retired and this meant we could play tag-team and be at mum’s often enough to keep her going and eventually she relented and let us organise some home help and socialising events for her – which of course she initially hated (and boy did she tell us). Oddly enough, if we could not be there to get her to, say, the lunch club she “hated”, then she was strident in how much she liked it and we had failed her. Bad tempered, old ladies, what do you do with them?
This level of support for mum was only enough for a while, though, as she lost more and more of her capabilities. Thankfully, mum decided she needed looking after full time before we had to force her to be looked after full time (it was a close-run thing), so we helped her choose a care home and move in. It was a great relief to know she was safe, her medication was being properly monitored, and she was picked up when she fell over. We also no longer had the emergency visits, which had been becoming more and more regular.
But now we had to not only make the journey to go and see mum, but also to start the process of selling her house (in order to pay for her care). To do that we had to clear the house, go through all of her possessions and take anything she might want back to our own homes. And we had to maintain the place while we sold it, her garden was getting more attention than my own. We finally got the house sold at the end of last year, so mum is set up for however long she lives and we now have sort-of got our lives back. It’s OK, we do still go and see her! We turn up, she swears at us and gets us mixed up, we take her for lunch or a cup of tea, and she introduces us to the stolen spoon in her handbag “He’s Mr Spoon!!!”

If I was not retired, I have no idea how I’d have coped with looking after mum – in reality I’d probably have done a much worse job of it, so it’s fortunate I did retire.
I’m hoping that now Mum is sorted I can properly start on all that DIY and maintenance around my house that I was going to start doing 2 years ago. I might even blog about some of it. I know, most of the people who were interested in my Oracle content will have no interest in my lawnmower maintenance, but it’s my blog and I’ll write what I want!
(* don’t ask about the table join! It’s a bit of an in-joke with some people who I know will read this blog, sorry).
Five Years (as David Bowie once sang) – How Covid-19 started for me. January 10, 2025
Posted by mwidlake in biology, COVID-19, Private Life, science.Tags: biology, covid, COVID-19, health, perception, private, science, vaccine
add a comment
It was about now (10th Jan) 5 years ago when I first became aware of something a little bit wrong happening in China. There was a news article in “New Scientist” (a weekly general science magazine produced in the UK) about how at least 59 people were ill with a new sort of pneumonia. Seven were seriously ill and the illness was not ‘flu, SARS, MERS or bird flu. It was not a long article but it described how the Chinese and Hong Kong authorities were taking it very seriously, keeping people in isolation, and introducing checks on people travelling in the area.

This article really caught my attention – not because I am some sort of visionary genius who saw it all coming (well, not at that point) but because less than 3 weeks earlier I had been in intensive care, talking with a doctor who told me my ‘flu was no longer potentially fatal. “No longer” he said… none of them had mentioned the fatal bit to me until then! Anyway, given my recent experience at that time, I’m sure you can see why, as I sat on the sofa still recovering, this article caught my eye.
I knew a little about SARS and MERS, how they didn’t spread very well in humans but both were very dangerous if you did happen to catch it. It struck me as odd that the situation described in New Scientist would have been quite a large initial outbreak for either of those two diseases. But, given the lack of fatalities, maybe this illness was not that serious? But then, why the strong response by the authorities? The situation seemed a little confused to me.
There were one or two mentions of the situation in China in the mainstream UK press around the same time, the BBC mentioned it first on the 3rd of January – but I don’t think I noticed it, I was mostly sleeping!
The next article I clearly remember reading described how this mysterious disease was now known to be due to a corona virus in the same family as SARS and MERS, but it was a different, new virus. People were now described as critically ill and suspected cases outside China had been found. Interesting, concerning maybe, but not worrying.
Within a few more days the first deaths were reported. Another New Scientist article described how six people were now reported to have died. But what grabbed my attention more was that 15 healthcare workers were amongst the 60 new cases, which meant this new disease spread easily from human to human. MERS does not, MERS probably has a reproduction number below 1, which means you need a bit of statistical bad luck for a breakout to occur and the breakout will then fizzle out. Which is damned lucky as MERS has a case fatality rate of 30% – of the 2,494 cases known about by the end of 2019, 858 people had died. Healthcare workers take precautions, they wash a lot, they wear masks, they avoid contact with body fluids. And they were getting this new illness. Now I was worried.

As a result of my recent illness making me very sensitive to the topic, I had paid a lot of attention and I was worrying about Covid-19 for a while before most normal people were, just by accident really. I’m not sure this was a good thing as there was nothing I could do about it!
Recently I was musing on how it was now 5 years since I became aware of Covid-19, and it got me thinking about how, from my position on the sofa, this thing that has massively impacted us all, started to unfold. Of course, the real experts like doctors and epidemiologists were already aware and worried, but I’m just a computer programmer with an ancient (but relevant) degree.
At that time I did not follow many (any?) epidemiologists, virologist and similar on social media. I did follow some geneticists and I had friends in that area of biological research from my time working at the Sanger institute. I can’t swear to it, but I think I was aware of the first full genome sequencing of this disease not long after it being published about the 12th January, and I think the Sanger sequenced it quite soon after that, but I could be wrong – I would have thought carrying out the preparation for the sequencing would have required biosafety level 4 (BSL-4) facilities and I thought the Sanger only went up to BSL-3. Anyway, I soon started following a few experts in epidemiology because I knew enough to make me worried but not enough to know if I should be worried. It turned out I should have been worried.
We all know how it went from then. By mid-January the mainstream world press was paying quite a lot of attention to what was going on in China, more so than it did on MERS or SARS outbreaks, and cases were being found across Asia during the latter half of January. By the end of that month the first cases in nations right across Europe were being announced. The number of people dying from this new disease was increasing, and the number dying each day was increasing – rapidly. It was not the actual number of people dying that was unerving, that was still low, it was that each day the number went up and the number of new cases was higher each day too. This thing had an R number quite a bit above 1. I kind of knew what was coming by then, I think most of us with any knowledge of biology and science did. Sadly, most politicians seemed to be struggling to get it into their heads.
Covid-19 was basically worldwide by the end of February with just a few island nations yet to have their first case.
Going back a little, it was in mid January (the 17th according to my diary) that my wife asked me what was going on with this illness in China and should we be worried. And had I had it?
I said I was worried due to the way the Chinese had jumped on it and it was spreading. I even voiced the thought that I suspected China had known about this disease for longer than they were saying and it might even be a lab out-break (at that time I was still having periods of low oxygen and had some weird thoughts – I now think it is highly unlikely to have been a lab outbreak. But I would not be utterly amazed though).
As it turned out, China had known about the disease for a few weeks before they made any mention of it to the World Health Organisation (WHO), it seems that some information about it leaked out to the worldwide epidemiological community on the 30/31st December and that was passed on to the WHO. The WHO started querying the Chinese authorities on the 1st January 2020. It took China a couple of days to admit there was a new disease and even longer that it appeared to be spreading from person to person. I can only assume that this is why China seemed so proactive and worried so early in January, they already knew what might be coming. WHO announced the First Disease Outbreak News on it on 5th January, though it said no deaths or human-to-human transmission had been confirmed (it was only suspected, though it turns out China knew!)
As I already said, by late January I was very worried as the R number seemed to be high (3.5) and the CFR also seemed quite high, maybe 1 to 1.5%. Much higher than ‘flu (I wonder why I knew the CFR for ‘flu!). This CFR was not as high as some diseases but if everyone in the UK got ill with this disease in one year, it was going to kill as much as twice the number of people who die naturally every year. I never thought it would be that bad (for various reasons, one being the disease seemed to hit those with underlying illnesses hardest, and they made up a fair chunk of the people who die every year, which is horribly brutal of me but is just reality). But I was absolutely sure it was going to swamp the health service and hospitals would not cope. That’s pretty much what happened.
By the time we got into March I think any sane person was pretty worried, so I was no longer an annoying Voice Of Doom within my social circles. But a lot of people had asked me about this new disease and why I was going on about it, so I started writing some articles about it, which people told me they found useful. I was mostly writing for my own sake though, when something worries me I study it, and so I did. I joined the band of “armchair epidemiologists”!
The other question Sue had asked me was, had I had Covid 19? Was I an unknow, very early case in Europe? Since then I have been asked that by a lot of people. I’ll save that for a later post.
Sometimes Tech Is Not In Our Best Interest September 24, 2024
Posted by mwidlake in ethics, humour, Perceptions, technology.Tags: Apps, Humour, perception, smart phone, technology
1 comment so far
Tech, we are led to believe, will improve our lives. Sometimes it undoubtedly does. But more and more often it seems to me that tech is making our lives considerably more complex and frustrating. Really, bloody frustrating.
As an example, last year our local council decided to replace all the parking ticket machines in its public carparks for more modern ones. Up until then the way (and the only way) to buy a ticket to display was to put some coins in the machine to the value for your planned stay, press the button, and the machine would promptly print you a ticket to display. The only down side was if you did not have enough or the correct change, but usually that simply led to one of those pleasing little interactions with another person parking who would swap you some change. I think most of us just kept a bit of change in the car for buying the tickets, I certainly did.
Then, without any warning, over about a week all the ticket machines across all carparks got swapped out for the below. These new machines (apparently “POWERED BY IPS TECHNOLOGY”, isn’t that lovely) would accept a credit card. And CARD ONLY. Despite the new machines clearly having a slot for coins, coins were not allowed. Every machine, every carpark, suddenly went from only coins to only cards.


I know, some of you are probably thinking “Hey! That’s an improvement! No more hassles with change, just get out one of your cards and pay!”. Well, yes, if (a) you have a credit card and (b) the machine was able to handle the payment in under 30 seconds. But they could not.
First of all, the machine was badly programmed. If you look at the picture on the left, you will see that it says to press the blue buttons to increase and decrease the time. They didn’t, they increased and decreased the payment. The old machines all had a clear sign on them saying “up to 1 hour 80p, up to 2 hours £1.20, up to 4 hours £2.00” or whatever. These new machines, despite having a nice, large, dynamic screen, gave no clue as to how much time you were or could buy. You had to look over at the board to work out what time you were paying for. The boards were sometimes facing away from the machines…
Secondly, the card reader was very poor, it could take several attempts to get it to read the card. And the only way you initially knew it has read the card was it beeped. No visual clue, so useless for deaf people, especially as the card reader could get confused if you kept presenting a card after it has been detected and beeped. A few seconds after the beep the machine told you it was contacting your bank. I hoped not, the card was not for my bank. Aaaannndd Iiiiiittt’sss sloooooowwww. The machine ccould take 20 seconds or more to authorise a payment… of 50p.
I’d noticed when waiting my turn to use the machine (and waiting was way more common now of course, as they took so much longer to buy your ticket than the “old, rubbish ones”) that it really did not like some types of credit card. So not only did you have to have a credit card to use the machine (and I know this will surprise some of you, especially my friends in European countries that have mostly gone cashless, quite a few old or poor people in the UK either don’t have a credit card or want to use it), it had to be one it liked. I’m not sure what people did if they could not get their card to be read, after all every single carpark in the town had been “upgraded”, but judging by the foul language and furious looks, it was something violent.

And just to add the icing on the cake – these new machines broke down. A lot. More than a few times I’ve tried every machine on one floor of the multi-storey carpark and had to go up a level to find a working machine.
I’m not sure what “POWERED BY IPS TECHNOLOGY” is supposed to mean, I reckon the machine is actually powered by electricity. But I do now know that IPS appear to produce some pretty crap machines.
So in summary, the local council had swapped out old tech that was simple, quick, and just worked, for something slower, more complex, and less reliable. I’m sure it was sold to them as simpler & cheaper for them, after all no one needed to go around emptying the machines of coins and processing them.
OK, would I be happy if the new machines were fast & reliable? After all, I have credit cards that work with them and I’m not going to care about anyone old or poor or whatever who does not.
No.
As the local train station, who’s carpark used to accept coins or card (which I think is the best option to move us from a cash to a cashless society), had swapped to accepting neither. They now insisted on you using the owning company’s app. You have to have a smart phone and you have to have downloaded and set up the app and given the company your car and card details. I’ve worked in IT for almost 4 decades and I read the papers, I am absolutely sure their IT security is not great. I would not even be surprised if they sold the data to 3rd party companies.
Not everyone has a smartphone!!!! My brother does not, my mother would not know a smart phone if I hit her on the head with it. Even a “cheap” smartphone is not really cheap, and not everyone is comfortable or capable with technology. Again, older, poorer and now less capable people are being disenfranchised.

OK, OK, I have my credit cards that work, I have a smartphone with the app on it and I’m now going to forget I care about old, poor, less capable people, or people who forgot or lost their smartphone today. Am I happy?
NO!
As if I go to the town next door, to catch a train on the very same line run by the very same train company as my local train station (more trains stop at that larger station), their car park is owned by a different car park company who, of course, have their own app. And there is absolutely NO WAY they are going to let a rival’s app handle me paying for parking in their carpark. So I need to download another app and create another account and give them my details as well.
I think my wife has four different apps to cover all the train stations she might use. If I go somewhere else in the country to visit someone, I’ll usually have to download yet another parking app, maybe two if I travel about.

This is NOT a step forward for us as a species. This explosion of apps just to park a car is not in any way improving my life, it is making it more complex and more bloody frustrating. I suspect it is making life a lot, lot more frustrating & limiting for those who cannot join in with the smartphone revolution.
What we need is a simple, quick way of paying for parking, and other things. Maybe interchangeable tokens of fixed value that work in all machines. You walk up to a machine, put in some tokens, get a ticket for your car and then get on with the rest of your day. No need to wait on computers to talk to each other, no ever-increasing apps, no giving a dozen companies your details, no need to have a chunk of expensive technology with you at all times.
Yes, I want coins to be accepted AS WELL AS the tech option. I’m all for the tech option, if it is an easy-to-use, added-benefit tech option. Not if it a forced, crap option that is just adding to the list of forced, crap options I have to deal with in my life.
I’m not against using tech to improve our lives. I’m utterly against it making it shitter.
Fixing My Instrumentation September 17, 2024
Posted by mwidlake in DIY, Instrumentation, off-topic.Tags: DIY, Power Tube, Watchman
add a comment
I’m sorry, this is nothing to do with code instrumentation 😀. Our central heating runs on oil, we have a big tank in the garden and a little electronic “Watchman” in the house that tells us what the oil level is, from F(ull) through 9 to 1 and then E(mpty), when a little red light flashes. Like all the best instrumentation, it is simple, tells us the most important thing, and increases the feedback when it is critical; Only, last week it started looking like this, and the red light was flashing:

What the heck did that mean? A quick Google and I had the answer, it meant that the display unit could not detect the sensor on the tank. Google also told me that it was almost certainly that the “Power tube” had failed – and the general consensus was that they were ridiculously expensive (40-60 £/$/€) for what they really are, which was a copper tube with a coaxial connector at one end and four AAA batteries inside. Four standard AAA batteries. And though there were lots of hits on what the power tube was, how expensive they were, there were very few on where to buy one. Hmmm.
Interestingly, there were several videos on how to open the tube and replace those batteries yourself, such as this one https://www.youtube.com/watch?v=e-InqIMtqRQ .
Watch the video if you want but, basically, you have to knock the firmly-attached copper cap off the top of the tube by running something like an adjustable spanner along the tube to hit against the copper cap – as it’s copper, trying to use a monkey wrench or similar to screw or pull off the cap just chews up the copper and ruins it. Each blow of the spanner on the cap hardly moves it but by smacking it for 5 or 10 mins while rotating the tube, the cap eventually pops off. I added a little oil to help, I have no idea if it did or not.




As I had watched the video, I knew to look out for the spring inside pinging across the shed when the cap came off, so I was able to retrieve it. You need that spring to ensure all the batteries are in good contact.

And, lo, inside was a plastic sleave full of grease, with four bog-standard Duracell AAA batteries in it. “Procell” batteries suggest they are special, super-reliable, long-lasting batteries for professional purposes. The internet tells you they are the same as standard, consumer Duracell batteries with a different label on them. The “Duracell Plus” brand basically.


So I popped four Duracell Plus AAA batteries in the tube (having checked carefully which way they needed to be!), tapped the cap back on and re-attached it to the sensor in the tank.



Success, I now knew how much oil was in the tank again.
What is slightly maddening about this is how much of a rip-off the power tube is. The copper pipe is a small length of standard 14mm copper tube, as used for plumbing. The connection to the sensor is a simple coaxial connector. The tube’s batteries, as discussed, are standard batteries. The only “bespoke” part of it is the plastic inner to reduce the bore down to the size of the batteries, and that the unit is sealed with a cap that is a bugger to get off. Maybe that is why the power tubes are no longer used or, indeed, sold. Watchman maybe got so much stick that they swapped to using easily replaceable button batteries. Given that the tube I have just re-powered lasted for at least 20 years (the old batteries were “best before 2010”!!!) I’ll hopefully never have to replace them again. And, if I do, it’s probably time for a new sensor anyway. One where you can easily change the battery…
When is an Oracle ACE not an Oracle ACE? March 12, 2024
Posted by mwidlake in ACED, SYM42, User Groups.Tags: ACE, community, SYM42
5 comments
As of this week (11th March 2024) I am no longer a proper Oracle ACE – and this is exactly as it should be.
I am now an ACE Alum (I would prefer Alumnus but it’s their program, their titles) which means I am no longer counted as active and will no longer be invited to the updates, meetings, and meals at conferences. More importantly, it indicates that I am no longer doing the advocacy on Oracle products that result in you being an ACE. The ACE Alum is, as I see it, simply a “thank you for past services rendered”. Which is still very nice.
I’ve been a member of the Oracle ACE program since 2011 and I was made an ACE Director (the highest level – see the box for more info on what the Oracle ACE program is) in 2015. I actually dropped to ACE Pro (the middle level) in 2022 and I’ve just noticed I never altered my badge for ACE level here on my blog! Naughty Martin.
The ACE program recognises people who contribute to the Oracle community. You need to know what you are talking about to be recognised as an ACE but just because someone is an ACE does not mean they know more than a load of other non-ACE people about a given topic. And being an ACE Director does not mean you know more than an ACE Pro or that an ACE Pro knows more than an ACE Associate. The levels give more of an indication of how engaged, how active the person is – although ACE Director requires a few other things such as providing direct feedback to Oracle Product managers.
The ACE levels are based on points you get for activity – blogging, writing articles, helping on forums, feeing back to product managers. The more activity, the more points, the higher the ACE level. It’s not perfect but there needs to be some sort of system. It’s just a bit of a shame that some members get utterly fixated on Points and will argue endlessly about them. They don’t seem to understand that the points are a guide and there are other factors, such as demeanour maybe and help you give that has no direct points value.
Anyway, as I moved towards retiring I did less presenting and less blogging and less, well, everything. I recorded fewer points and it soon became obvious I was not hitting the level of ACE Director. However, I was given a bit of leeway and kept at that level, partly due to past efforts I think (my work for UKOUG, my support of smaller user groups) and also I was knocked sideways by a period of illness. But come 2022, by mutual agreement, I dropped down to ACE Pro.
This year, as the reminders came in to do my points, I made the decision I was really not active enough to justify any level of ACE. I contacted Jen (who runs the program) and asked to become Alum.
I think this is exactly how such a multi-level recognition program of community support should work. As people become more or less active, they get a higher or lower level in the program. And if they go and retire (or move tech (or totally change job)) they should drop off the program.
I’ll miss being an active ACE, especially the meals and meetings and get-togethers at conferences etc. I’ve got some nice “swag” from the program over the years, I especially like my hoody I use when I go for my regular walks around my village. Interestingly, I don’t think I’ll miss the content creation, I cannot get the focus to do it anymore and I find it very draining.
I’m proud and appreciative of my time as an Oracle ACE, and especially proud I was at the Director level for a few years. I think I understand how much work goes into running the program and I thank Jen and her team for all the hard work.
I’m still part of the Oracle community, but in a different way. I help run Symposium 42, which is an independent recognition program for content providers & event organisers in the Oracle user community. Hopefully I will still meet old and new friends at the few events I will get to.
What Were You Doing 24 Years Ago Today? December 31, 2023
Posted by mwidlake in development, humour, Testing, working.Tags: behaviour, Humour, system development, technology, Y2K
4 comments
Yes, I know, some of you were still at school 24 years ago, a couple of you were not even born! But for many of you, 24 years ago today you hasd a job in I.T, it was the last day of the 20th century, December 31st 1999 – and you were either at work or on call!
Those of us in the I.T. industry at the time remember not only the media frenzy over the “Y2K” bug, where computer systems were predicted to crash because two-digit year dates had been stored not four, but also the shear tedium of fixing these systems or proving they would not crash (by doing that old-school thing called “testing”).
I did my fair share of that work, it almost seemed that all IT contract work in 1998 and 1999 was about the Y2K bug. I knew of several large development or hardware refresh projects that were cancelled or put on hold so that Y2K work could be done instead. A couple of the systems I worked on at the time would definitely have had issues without the remedial work, a couple would have not. In the end Y2K in computer systems was almost a non-event, some systems crashed or went wrong but most did not. And, of course, because the issue was not as bad as the end-of-the-world media made out it would be, there were loads and loads of people afterwards claiming it was all a hoax. Probably the same people who claim Covid-19 is just a ‘flu and the moon landings did not happen 😊. They were oblivious to just how much money and resource was spent fixing the issue.
In any case, the end result for many of us I.T people was that more (though dull) work was availabe on the run-up to the day and on the 31st December 1999 itself we were forced to be in an office or on-call & (theoretically) sober in order to handle any missed issues. While 95% of the world was partying and 4% were in their basement surrounded by 2 thousand tins of soup and bottles of water (waiting for world catastrophe or some religious thing or both), we were supposed to be in a fecking office.
Were you?
I wasn’t. I was in a big country house with a load of friends, having a good time. You see, when I took on the role that I was still in come 31st December 1999, I had put a clause in my contract that I would be unavailable the week that the Y2K night fell in. Other technical people in the company had booked holiday for then, but it nearly all got cancelled (I noticed at the time this did not seem to apply to senior management). But it was in my contract so, though they tried to bully me, their only real option would have been to fire and re-hire me (which they tried to make happen). Just occasionally, I would actually plan ahead and make a smart move. Occasionally.
Symposium 42 – Who? What? So Many Technical Experts. November 8, 2023
Posted by mwidlake in SYM42, User Groups.Tags: community, oracle, SYM42, User Groups
add a comment
Some of you may have become aware of a group called Symposium 42 – or SYM 42 for short, especially if you have been to a European Oracle user group conference in the last 12 months. But maybe not even then 😀. Symposium 42 has been created by a group of conference presenters & bloggers together with conference and community organisers. If you are reading this blog you probably know the names of a lot of the members of SYM 42, even though you do not know they are members of it. You can see a list of members at This Link Here.

So what actually *is* SYM 42? What does it do? It recognises people within our community (currently focused on the world of Oracle) who either share their knowledge or organise events. These people do this for free – they blog, write articles, present at conferences and events, or they organise those conferences and events. There are plenty of “recognise the expert” programs in the world of IT but most of them ignore those who work behind the scenes, making the community happen. Organising conferences is a lot, lot more work than people who have not done it realise. I’ve helped do it and it takes less work to organise a conference than become an expert at Exadata. SYM 42 recognises both the technically skilled and the organisational powerhouses – and sometimes a single person does both (hat tip to the likes of Kamil Stawiarski, Sabine Heimsath, and Neil Chandler, amongst others).
Of course, the names most people will recognise are those who present, write, help on the forums & are active on social media. There are three criteria for a technical expert to be recognised by SYM 42:
- Be recognised as technically strong.
- They share their expertise with others.
- If challenged, they will justify what they say – and not charge for it.
That last point is key. Stating something about technology, such as having a table with over 255 columns is a bad idea, is only an opinion unless the person can back it up with some supporting evidence that can be tested, such as saying it causes multiple row pieces that can then result in more physical IO.


This might sound very similar – it sounds a lot like the OakTable. Hopefully most of you will have at least heard of the OakTable, and might even have been to OakTable Sunday at past UKOUG conferences or OakTable World that ran alongside Oracle Open World for several years. The OakTable used to provide rich, deep content at Oracle conferences – especially those where there was just too much marketing fluff instead of critical technical content.
However, they are not the same. For one thing, the OakTable still sort-of exists, and SYM 42 was not created to rival the OakTable. Some members of SYM 42 are also Oakies, one is even a member of the original “Junta” that created the OakTable. However, I think it is fair to say that the OakTable was mostly for the prior generation, many of the key members have retired or moved onto new challenges, the OakTable no longer has a website or organises events.
Another difference is that OakTable was utterly focused on the technical side of things. One of key reasons it was created was to counteract a lot of the BS that was being stated by “experts” in the 90’s & 2000’s who, frankly, were spouting rubbish. SYM 42 recognises community leaders as well as technical experts.
One thing that SYM 42 and the OakTable share is they are utterly independent and have no affiliation with Oracle Corporation. Some members of SYM 42 currently work for Oracle but SYM 42 receive no funding, no support from Oracle Corp. As such, SYM 42 members can ignore the sales & marketing direction of Oracle Corp. If a member of SYM 42 thinks part of Oracle Cloud Infrastructure is crap, they are free to say so. And if a member says an aspect of Oracle technology rocks, it’s because they believe it does rock. (This of course does not necessarily hold for SYM 42 members who are also Oracle employees – but the world is complex and we decided to not exclude members based on who employs them).
You can read more about Symposium 42 at their web site linked here.
So, that is Symposium 42. It’s of course not perfect, for example membership is currently focused on Europe with a few North American people and slight odd slice of Aus influence. This is because the group was formed by a group of friends based in those places. Not being a member of SYM 42 means nothing – they might not have been invited yet, they might have said no, they might not be known by the small clique who started the group.
But something you can be assured of is that a member of Symposium 42 is either a key person in organising the Oracle community, a technical expert who shares their knowledge, or both.
Don’t Forget Old Features – Materialized Views #JoelKallmanDay October 11, 2023
Posted by mwidlake in Architecture, database design, development, Knowledge, performance, SQL.Tags: JoelKallmanDay, Materialized Views, performance, SQL, system development, user group
add a comment
People who spread knowledge on technical subjects tend to focus very much on the new, shiny features and enhancements. Maybe as a result of this, old features get forgotten about – like Table Clusters. How many of you know what Oralce Table Clusters are and how they might improve performance? Who has used Table Clusters in Oracle in the last 20 years? (Apart from everyone – as the data dictionary still uses them!). Table Clusters are maybe worth leaving in the past as, apart from the niche use of Single Table Hash Clusters to give a very efficient selection path for a row in a static table via the PK, they generally have more issues than benefits I think.
Well, an old feature I do think is worth revisiting is Materialized Views. This is where you create a real table based on a SQL query. The SQL query can be simple or complex, it can join two or more tables together, it can even group data and select min, max, avg, analytical funcitons etc to summaries large data sets.
Consider the below query:

A Materialized View can be created that does the main, expensive join and includes SOME of the filters:

This query iu run and the yellow “MV_BF_BD” table is physically created and populated. It is “Just” a table.
If the data in the underlying tables change, the Materialized View is marked as unusable and won’t be used. Used for what?
If the SQL statement used to create the Materialized View is a SQL statement the application uses or, more significantly, is a common part of several larger, more complex SQL statements, Oracle can use the Materialized View (which is just a table remember) to help satisfy the query.
In the below we see two SQL statements. One will certainly use the Materialized View and will, as a result, run more quickly. The second query might use the MV, the opitimizer will decide.

If this Materialized View takes a lot of time or resource to be generated (say it joins a million row table to a 100 millon row table and then filters out 50% of the joined rows) then by generating it once and then using the RESULTS only in half a dozen queries then it will make that half a dozen queries run faster.
I know I have not explained Materialized Views in enough detail to help you use them (though I might come out of retirement to write about them based on real world experience I had with one of my last clients), but that is not my point, it is just an example of something that can really help certain Oracle systems run more efficiently. But is hardly used anymore, possibly as it is old and not talked about much.
Just because an Oracle feature is old, it does not mean it is not still of use. How do you find out about these features? Well, I have a load of old performance and database design manuals I am throwing out that you could buy… 😄. Being serious, go have a look at the concepts manual. I used to always recommend all DBA-types and Oracle Developer types read the concepts manual for their version of Oracle. I still think it is a good idea (though I have not done it for a few years as, in my opinion, the manuals got a bit crap for a while – they seem better now). Alternatively, go to speak with someone really experienced (and thus probably quite old, but there are exceptions), describe the issue you have, and they might say something like “ohhh, that sounds like Results Cache could help – but be aware of these 3 terrible drawbacks of them”.
This post is in honour of Joel Kallman, who was a tireless advocate of learning & community. Just like him, I think the more we share our knowledge and help each other, the better we will all become.
Creating a Cabinet for Sue’s Birthday October 9, 2023
Posted by mwidlake in DIY, off-topic, Private Life, Woodwork.Tags: cabinet, construction, DIY, Woodwork
6 comments
Last year I cooked Sue a hedgehog cake for her birthday. It was not what you would call an unmitigated success… So this year I thought I would ditch the culinary for carpentry! When we first got married I made a few bits and pieces, mostly simple sets of shelves to fit in gaps it was hard to find a (cheap) commercial item for. They were never brilliant but they did the job, and I have more tools now, so surely I can do a better job? 😁
The intention was to build a wide, deep cabinet with several shelves to hold awkward, large (but light) things like sheets of card, large envelopes, and hat boxes. The hat boxes are carboard and come flat-packed, so they are pretty big and take up a lot of space if stored flat, and are liable to get damaged or slowly bow if stored upright. You sometimes see antique furniture like I had in mind that was used to hold maps or posters, but they tend to be very, very expensive as they are so sort after.
I decided to build the unit out of plywood. This is because it is much stronger and durable than either Medium Density Fibreboard (MDF) or chipboard (also known as particle board or low density fibreboard) -both materials I dislike – and you can screw into the end of plywood and it does not split or fail so easily. Also, plywood has an outer skin of relatively nice wood and I think it looks OK left as it is.
First, I did a plan. Just as with designing a database or application, creating a plan before you touch any tools means you can visualise what you want and potentially spot mistakes. For example, I realised that if I had constructed the unit as originally envisioned the back panel would be larger than the panels I can buy that fit in the back of my car.

Having come up with the plan I went and got the sheets of plywood I would need and some glue. I had more than enough screws, sandpaper, and anything else I would need. The first thing I did was cut the side panels, which were made from chunky 18mm ply – as the sides need to be the strongest part of the unit. 18mm also allowed me to screw the base panel directly into the end “grain”.

I’m not in any way an expert on carpentry or cabinet making (my grandfather was a cabinet maker though he never said a word about it to me) but a few things I have learnt over the years are:
- Keep the sawing/sizing of things to a minimum. Each cut is a chance to mess it up and, as I use hand tools (standard hand saw or a jig saw primarily) the cut is not always perfectly smooth. To reduce sawing I tend to make things to the size of the raw product I am buying, so this cabinet will be 605mm deep, the size of the panels.
- Put masking tape along the cut. I used blue masking tape in the above shot so you can see it but the blue can stain the cut end, so use neutral coloured masking tape. The tape goes on the side the blade is cutting “towards”, so the bottom of the panel if using a hand saw and the top if using a jig saw. Why use masking tape? It reduces the tearing of the wood and gives a smoother cut end.
- Always measure twice! And mark the cut line clearly in pencil – never pen! (Pencil lead can be sanded away, ink stains).
- You can mark the cut THEN put on the masking tape, you can see the line through the tape. But if you want to put on the tape and then mark the cut, the woodwork police will not come visit.
- Use a saw with as small a tooth size as you can face. It takes longer and is harder to do the cut but it is worth it for the smoother cut end.
- For cabinet work you have to be as millimetre perfect as you can, else the end unit can be all a bit misaligned, or have proud edges. And you should take into account the width of the line. If I want to cut at 600mm, the inside side of the line is at 600mm, I cut along the outside of the line. I then plane/sand the end which brings it back from 601mm towards 600mm.
The side panels needed runners for the shelves to sit on. I decided early I wanted shelves than can be taken out (and easily replaced or flipped over when they warp a bit). I considered routing grooves inthe side panels for the shelves to slot into, but given the width of the unit the shelves would not need to bend much to pop out of such grooves! And I was not so sure my skill levels were to be relied on for that level of accuracy…



When I am attaching reltively small or thin bits of wood like this I always pre-drill the holes and make the hole about the same total width of the screws I am using. This so that the screw does not bind to the piece of wood I am attaching, which can lead to the screw holding the (in this case the runners) slightly away from the wood, you have a gap, and the fixing is not firm or secure. By having a pre-drilled hole as wide as the screw, the screw is biting only into the side panel and the head of the screw pulls the runner tight against the side panel. I always countersink the holes, though with the softwood (standard pine battens) being used here they would sink into the wood as I tighten the screws and end up flat with the wood.
The screws I used were 30mm. The battens were 18mm so the screws went 12mm into the 18mm side panels, so would remain hidden. I pre-drill thin pilot holes into the side panels and I used some wood glue between the battens and side panels for extra strength. I don’t tend to use glue as it pretty much stops you taking things apart, but I had no intention of ever taking the runners off.
You might notice that I cut the ends of the battens at an angle and they are set about 40mm back from the edge of the side panel. This is so the runners “disappear” from sight.
I wanted carry handles on the side (and top) of the unit. It’s a big piece of furniture and plywood is relatively heavy.




I’m not the best with a jig saw, but you can neaten up the job later. I found an oblong object about the width I wanted the handle to be but, most importantly, I found a little pot that was also the width I wanted, so I was able to draw the outline I wanted (otherwise I would have had to have gone and found a drawing compass). The trick to jig sawing curves is to use as thin a saw blade as you can find, take it slowly, and try not to pause as you do the curve. The trick to jig sawing a nice, straight line is to use as deep a blade as you have. The curve was most critical so I went narrow. I drew two pilot holes and cut the hole. What I should have done was only drill one pilot hole but hey ho.
You might notice that the jig saw plate had slightly marked the surface of the wood. It was not a problem, a quick rub with very fine sandpaper got rid of it.
I should add, I smooth visible edges and surfaces as I go, with fine sandpaper. The surface of plywood is usually acceptable as a finish, but going over it with fine sandpaper really brings the grain out and makes the surface more tactile.
The hand hole was nothing like as neat and smooth as shown above after I had used the jig saw, but I used wood files and a Dremel (hand-held power tool with 2 thousand different bits available, including sanding disks) to flatten the sides, improve the curves, and give a bit of a bevel to the edges. One disadvantage of ply is that, as it has layers, it can accentuate any unevenness with bevelled edges, so I took a lot of effort over that bit. I then used the first hole as a template to mark the hand hold on the other side panel and the top panel.
Next I cut the bottom panel but that was simply a case of cutting a sheet of 12mm ply to 1000mm long and pre-drilling/countersinking a row of holes along each short edge at 9mm in, so I could scew up into the side panels (18mm wide remember). As I was going to screw into the end of the ply side panels there was a danger I could split the ply, so 2.5mm pilots holes were drilled to take the 3mm wide screws, and I used 40mm long screws to give a good, strong join.
I then cut another sheet of 12mm ply to 1050mm. Why 1050mm? I wanted a small overhang for the top panel to disguise any mm inaccuracy which would be shown up by making the top panel a perfect fit to the sides. I could make the bottom panel a perfect fit as attaching it to the side panels would be the first part of the build. I did not think it was wise for me to attempt a perfect fit with the last and most visible part that would be added to the cabinet.


Have you ever walked into a low cabinet? It really hurts your shins. As for catching the sharp corner, it tends to rip a gash in the skin! To reduce this risk, I routed a bevel around the sides and front of the top panel, and added a grab hole. The router can cause small burn marks on wood, especially ply, but it’s OK as the edge got a really good sanding down and that removes any scorch marks.
The final panel to construct was the back panel. Even though the pack panel was not going to be seen it was actually the most important part of this cabinet:
- The back panel gives the whole unit it’s rigidity.
- It also keeps the sides, top, and bottom panels at 90 degrees to each other – so long as the panel is itself a perfect oblong!
- It cannot stand proud, it would ruin the whole look of the piece.
- It cannot be too small, it has to be fixed securely to all the other panels.
- It will have runners on it to support the shelves and help prevent them from sagging.
The runners were the tricky part as they have to be at exactly the right height and that height had to take into account the thickness of the base. I could not add them after construction as I needed to screw through the back panel into the runners (the panel was too thin to do it the other way around, being 9mm ply. I’ve tried to add them to a constructed cabinet before and usually made a right mess of it.
To add the runners I had to measure and pre-drill holes in the back panel, then align the runners on the top surface and screw “up” into them. I used a little glue again.
(Hint – if drilling up into a piece of wood that you have to hold down, try not to rely on either not holding it above where you are drilling or not accidentally drilling too deep. Drilling your hand/palm hurts like heck. Either set the drill bit to a length too short to go all the way through or hold a block of thick wood on top of what you are drilling!)




I now had all the structural parts made and I was ready to construct. And this is when I screwed up.
I was running out of time to get this cabinet ready for Sue’s birthday (the next day) and when I drilled and countersunk the holes on the top panel (the only screws that would be visible) I failed to do that “measuring twice” thing. I had made a lovely row of very visible, countersunk holes too close to the edge, the screws would be just outside each side panel. Bloody, bloody hell! I did not have time to go buy another panel.
I knew how to fix it – I could re-cut the top panel to be an exact fit to the sides of the cabinet (1000mm), something I had been trying to avoid as I did not trust my skills to manage the accuracy, and I would need to add battens on the top of side panels to fix the top to. Remember, I had bevelled the sides of the top panel, screws would stand proud in that bevel and it would risk being too weak if I screwed close enough to the edge of the top panel to go directly into the side panels.
Now, if I had decided to use joining battens from the start I would have not needed to have visible screws on the top, I could have screwed from underneath, through the battens and into the top. But I was not sure I’d get a strong enough joint screwing into only 12mm ply. Anyway, I now added the battens to the side panels (using glue and screws), as can be seen in the below shot of all the bits ready for construction:

I was also now having to work in the shed as it was raining. Bugger.
In a brief break in the rain, I got the top panel out onto my work bench in the garden, cut it to exactly 1000mm (well, actually, 1001mm), smoothed the end, routed the end, smoothed it again (thus that extra mm!). I put in the second set of countersunk holes and got it back into the shed just as the rain started again.
It was now time to construct the cabinet. This usually takes a lot less time than constructing the individual parts.
The first step was to attach the side to the base panel. At this point I realised the base panel was slightly warped, so I used a heavy plant pot to hold it down! I had to get the cabinet up on the workbench so I could screw into the bottom panel (think about it, if it was on the floor there would be no space to line up the drill/screwdriver flat to the bottom panel.) Once attached to the side and bottom panels, the back panel held the bottom panel flat and I removed the pot! I checked the back runners were at the right height and they were perfect. Well, perfect enough. Almost perfect :-).


Finally, I put on the top panel and, to my relief, it fitted pretty well. So I screwed it in place.
The final thing to do was cut the shelves. There were three of these, made of 5.5mm ply. They all wanted to be the same width, they were all getting a notch at the front and it would have looked bad if those notches were not all in the same place, the same size, the same shape. So I put the three panels on top of each other, bound with masking tape, and cut them As One. I used the jig saw for all the cuts and I made the shelves about 2mm too wide. I then used an electric plane to shave off the edge off the shelves until they just fit into the cabinet. I had to take about 1mm more off the back of the side than the front as, well, the “box” of the cabinet was skewed by 1mm. Not bad for something 1000m*615mm (side panels are 605, the back panel adds 9mm 😁). They slotted in lovely once done.

And that was it, cabinet made!

I have to confess, I am pretty pleased with it! The end result is much better than the cake was last year.
I am pretty sure I am going to end up strengthening the shelves but I have the battens to do that already, and I might give the whole thing a light layer of wax. The top fits exactly, there are no proud edges, it’s a shame about the screws in the top but I made a decision from the start to sacrifice a little aesthetic appeal to make the construction easier. If I did it again, that top would be attached from underneath and no screws would be visible. And yes, in the pictures below I have not pushed the top shelf all the way in. It does fit really!











