Blog in Isolation

There is a radiant darkness upon us

Posts

Dovecot 2.4.2 upgrade

Dovecot recently released version 2.4.2 which required some changes to the configuration file (from version 2.3.x).

I use Dovecot as a personal, local IMAP server which pulls from the corporate Outlook server so I can maintain a local archive not subject to any quota constraints.

As I use Arch Linux and mindlessly update weekly, I was puzzled when Thunderbird suddenly stopped working.

My Dovecot server is local for me only, insecure and hence my configuration file is relatively simple.

Read more

Commonmark_test

This is the famous ‘Hello world’ program written in Python in colour using Markdown.

#!/usr/bin/env python
import sys

def hello(name='world'):
    greeting = "hello " + name
    print(greeting)

if __name__ == "__main__":
    hello(*sys.argv[1:])

This took me a long time to get working.

The music video for Rihanna’s song American Oxygen depicts various moments from American history, including the inauguration of Barack Obama.

Why, sometimes I’ve believed as many as six impossible things before breakfast.

Read more

Oracle SQLcl configuration

I use SQLcl a lot and install it on every environment I work on. It’s fully compatible with SQL*Plus and has useful extensions to interact with OCI, Autonomous Databases and Data Pump.

My SQLcl configuration file is named ’login.sql’ and located in the ‘~/work’ directory. I also keep my ’tnsnames.ora’ file here.

The location of these two Oracle configuration files is configured in ‘~/.bashrc’.

# Oracle TNS location
export TNS_ADMIN=$HOME/work

# SQLCL login file
export SQLPATH=$HOME/work

This is my SQLcl configuration file.

Read more

what I use

I like reading about the hardware and software various people use so here’s my version.

Introduction

I work for Oracle as a technical consultant based in the UK (fully remote). I’m old and evolved from a Unix/C developer to PL/SQL, Oracle DBA and now work on database migrations and Oracle Cloud Infrastructure (OCI).

Hardware

Lenovo ThinkCentre M900.

  • Intel i7-6700
  • Memory 48GB (upgraded from 16GB)
  • Disk 1TB

Samsung Galaxy S24

Expensive phone kindly provided by my employer. I don’t use many apps (Gmail, WhatsApp, BBC Sport, Tusky).

Read more

remapping multiple tablespaces in Data Pump

Occasionally I find myself migrating Oracle databases between environments using Data Pump.

Enterprise applications tend to use multiple tablespaces for logical separation (and historical reasons). However, this isn’t possible when the target database is Autonomous Database (ADB) hosted on Oracle Cloud Infrastructure (OCI).

ADB is a managed service so DBA’s can’t create tablespaces and are limited to ‘DATA’.

However, Oracle 19c Data Pump supports wildcards for the REMAP_TABLESPACE parameter which allows multiple tablespaces from the existing application to be mapped to the ADB DATA tablespace.

Read more

blog questions challenge

I was interested by Kev Quirk’s “Blog Questions Challenge”, so here’s my answers.

To recap, the questions are:

  1. Why did you start blogging in the first place ?
  2. What platform are you using to manage your blog and why did you choose it ?
  3. Have you blogged on other platforms before ?
  4. How do you write your posts? For example, in a local editing tool, or in a panel/dashboard that’s part of your blog ?
  5. When do you feel most inspired to write ?
  6. Do you publish immediately after writing, or do you let it simmer a bit as a draft ?
  7. What’s your favourite post on your blog ?
  8. Any future plans for your blog ? Maybe a redesign, a move to another platform, or adding a new feature ?

Why did you start blogging in the first place ?

I had a web site from 1999 but this was essentially a set of static HTML pages.

Read more

improving the FWP APEX application

Stung by the criticism of our Football Web Pages APEX application, we decide to try to address the various issues raised by end users and peer code review.

  1. When clicking ‘Fixtures’, I get ‘ORA-20999: REST Data Source returned an HTTP error: HTTP 400: Bad request’
  2. If you enter a Competition only, it works fine. If you enter a Team only, it works fine. If you enter both a ‘Competition’ and ‘Team’, the results look weird. Should ‘Team’ be a cascading LOV based on the ‘Competition’ ?
  3. The column names and labels need tidying up. There are a lot of meaningless ID fields displayed.
  4. It would be nice to have the option to review past results separately from fixtures in the future.
  5. Performance - the Popup LOV’s for Competition and Team are sluggish. Why are they so S L O W ?
  6. The navigation menu looks chaotic and ugly.

HTTP 400 error entering Fixtures report

This error is because the REST parameter for ‘Competition’ or ‘Teams’ is required. When we first run this page, there no values defined for the ‘Competition’ or ‘Teams’ parameters which results in the error.

Read more

Your Amazing OrgMode Post

Your Main Content

This is where the magic happens. Write your awesome content here!

Here is the wonderful second paragraph.

Standard text markup

bold

italic

underline

Verbatim

code

StrikeThrough

Lists

Unordered list

  • Apples
  • Oranges
  • Pears

Ordered list

  1. First
  2. Second
  3. Third

Blocks

Sample quote

Everything should be made as simple as possible, but not any simpler –Albert Einstein

Example code block

#include <stdio.h>

int main(int argc, char *argv[])
{
 printf("Hello world"):;
}

Tables

Sample table

Read more

GoToSocial 0.6.0(rc1) upgrade

Flushed after the success of getting GoToSocial 0.5.2 working successfully, I was about to celebrate with a cup of tea when this post appeared in my timeline about the release of 0.6.0 (Release Candidate 1).

Good morning everyone! We just cut the first release candidate for v0.6.0 of GoToSocial: v0.6.0-rc1.

There’s a preposterous amount of changes included in this one (we’ll do a proper organized list when we do the release proper).

Read more