About

About Me

Hello World, I am a UK based Database Administrator (DBA) I have had a passion for computing for over thirty years, beginning in the early 90’s when I got my first games console, though my journey truly started when I pressed the big beige button on my first (extremely slow!) Windows 95 PC that I had to upgrade piece by piece to play the latest games (Quake 2!) I would spend hours just clicking around Windows and seeing what things did and then had to fix them again when it broke!

I studied Computer Science at University and always envisaged it would just be swapping out graphics cards and building PCs which was all I really wanted to do at the time, however after learning that Computer Science isn’t really that, I found the one thing that stuck with me was working with data (databases, Excel etc) and I took a keen interest in database driven web development, writing a web based menu meal planner (long before meal tracker apps were a thing!) using PHP and MySQL. I have been building / fixing / tuning things ever since.

Throughout my professional career I have always worked with data and databases in some way. My journey really moved up a gear in the mid 2010s when I became a database analyst – using SQL Server to extract information and present it to users to allow them to use it to make real life decisions. It was during that role I happened upon a Youtube video by the great Brent Ozar and was immediately hooked and taken to the next level of this great database rabbit hole, I have loved learning about database internals and performance ever since.

My main interest is performance – I love the process of pro-actively identifying issues, working on fixes and seeing the results – nothing hits quite like changing that inefficient where clause and seeing that painful long running report run in a fraction of the time, seeing the query the developer is looking to deploy to production hit 1000 executions per minute because of your index or resolving that implicit conversion that was your app’s major bottleneck.

My knowledge is just a mere shadow of the greats in the field, however, that is what motivates me – I understand I will not know everything but my passion is chasing that which I do not yet know and a good day ends where I know something I didn’t at the beginning of the day no matter how small or seemingly insignificant.

Whilst SQL Server has been my bread and butter for many years, I am now learning other database platforms also.

I am a believer that knowledge should be democratised and freely available to those with the desire to find it.

My main interests are

  • Database performance tuning
  • Database internals – execution plans / statistics / query optimiser etc
  • SQL Server & PostgreSQL
  • Linux

My other non computing related interests are

  • Classic cars & car detailing
  • Lawn Care
  • Collecting various old tat of many forms!
  • Gym and fitness

About This Blog

I decided to set up this blog to give a more defined focus for my learning and development and as a wild attempt to document everything I know as I found you can forget more than you know over time! Over the years I have learned so much from the SQL Server community, following blogs and YouTube channels of those who are an inspiration to me without which I would not have the the knowledge I have today, with this in mind I decided to take a leaf out of their book and share my own knowledge in the hope that as well as being beneficial for myself, another fledgling database professional may find it useful in the same way I have found the work of others

“You can’t know everything but you should convince yourself you can know anything” – John Carmack

AI Policy

Each post in this blog is written from scratch by me (a human) using pre-existing knowledge of the topic and additional topic specific research undertaken to provide a more thorough understanding. Once complete, the post is passed to a Large Language Model (LLM) for proof reading – the LLM is asked to spot typos, consistency errors, readability issues as well as spelling and grammar mistakes. The response is reviewed and changes made as necessary. In some cases, I may ask the LLM to come up with a clearer, more catchy title for the blog post than I am capable of.

Where an LLM is used to generate content e.g. code snippets or used to help troubleshoot a specific issue, it will be credited as doing so in the post’s body. The LLM is always asked to provide authoritative sources when explaining behaviours of database engines, operating systems etc. An LLM’s output will never be quoted as fact without authoritative sources and / or test cases to prove said fact.

The blog’s logo was generated using an LLM.

I will never use an LLM to outright generate content in full which is then blindly published as this usually results in inaccurate, misleading “slop” and is completely in contradiction to the purpose of this blog, stated above.

Licence

The written content on this blog including articles, explanations, and commentary is licensed under the Creative Commons Attribution 4.0 International (cc by 4.0) licence. You are free to share and adapt it for any purpose, provided you give appropriate credit to the author. All code samples and T-SQL examples published on this site are released under the MIT Licence and may be freely used, modified, and distributed in your own projects.