#ChatGPT4 Writes a #SciFiNovel: #TheBronzeIncursion

I’ve been fooling about with ChatGPT 4.0 for the last couple of days, and it occurred to me to see how creative the AI chatbot can get, so I wrote this prompt”

Write a one-page treatment for a science fiction novel, set in 2053, when astonomers on earth using radio, visual and satellite telescopes spot panet-sized objects entering the solar system. Over the first part of the novel, the governments on earth discuss what they want to do, and start to receive communications from the approaching alien race – christened the bronze men. In the second part of the novel, the 12 planets arrive in orbit around the sun taking position in an earth orbit. Embassies from the 12 planets are then received in New York by the United Nations. All seems peaceful until it becomes apparent that the three furthestmost planets are harvesting the sun. The embassies are rejected by Earth and the planet must decide how to defend the sun from this incursion. The aliens are so technologically advanced that their manipulation of physical space seems magical. All seems lost until a renegade faction of the bronze men contact individuals on earth to begin a resistance to the sun-harvest. Using a cast of characters with names from Shakespeare’s plays Macbeth, Hamlet and the Tempest for the humans, and character names from Beowolf for the aliens, create an intricate plot wherein the initially suspicious humans start to believe in the three alien contacts and utilising the alien technologies begin to resist the alien incursion.

ChatGPT’s answer was as follows:

Title: The Bronze Incursion

In 2053, Earth’s astronomers detect twelve planet-sized objects entering the solar system using radio, visual, and satellite telescopes. Panic and curiosity grip humanity as they try to understand this unprecedented event. World governments come together to discuss how to handle the approaching objects, which they soon learn are inhabited by an alien race called the Bronze Men.

The novel unfolds in two parts. In the first part, Earth receives communications from the Bronze Men, who express their desire for peaceful contact. The world watches with bated breath as the twelve planets take their positions in orbit around the sun, with Earth at the center.

Embassies from each of the twelve planets are received at the United Nations headquarters in New York. Diplomatic relations seem to be going well, until it becomes apparent that the three furthest planets are siphoning energy from the sun. Earth’s leaders reject the Bronze Men’s embassies, and humanity must decide how to defend its life-giving star from the alien incursion.

In the second part of the novel, Earth faces the seemingly insurmountable challenge of outsmarting an alien race with technology so advanced that it appears magical. Hope seems lost until a renegade faction of the Bronze Men contacts select individuals on Earth to form a resistance against the sun-harvesting.

The human characters are named after Shakespearean figures from Macbeth, Hamlet, and The Tempest, while the alien characters bear names from the epic poem Beowulf. These characters find themselves entangled in an intricate plot that tests the limits of trust and cooperation. Suspicion and fear initially permeate the alliance between the renegade Bronze Men and the human resistance, but as the story unfolds, they learn to believe in each other and work together to save the sun.

Using alien technology provided by their Bronze Men allies, the human resistance devises a plan to counter the sun-harvesting and protect Earth’s future. The novel reaches its climax in a gripping, high-stakes battle between the united human-alien forces and the sun-harvesting Bronze Men. Through the power of trust, camaraderie, and shared goals, the resistance faces the seemingly invincible alien threat, ultimately deciding the fate of Earth and its solar system.

The Bronze Incursion is a thrilling, character-driven science fiction novel that explores themes of trust, unity, and the lengths we will go to protect our home. Rich in literary references and complex relationships, the story delves into the nature of fear, friendship, and the power of cooperation in the face of seemingly insurmountable odds.

At this point I sat up. The title, now that was not what I had in mind: “The Bronze Incursion”. I quite liked it. I read through the treatment, thinking, “Okaaay, so this is generic, its readable but not too original … what is the next step?” Here’s my next prompt within the same chat.

Write a chapter-by-chapter outline of the Bronze Incursion, allocating names to a cast of characters including the individuals on earth who become allies of the renegade bronze men

It came back with this:

Chapter 1: Celestial Intruders

  • Astronomers detect twelve planet-sized objects entering the solar system.
  • Main human characters introduced: Macbeth (military strategist), Hamlet (scientist), Miranda (diplomat), and Prospero (engineer).

Chapter 2: The Bronze Men

  • Earth receives communication from the alien race, the Bronze Men.
  • Alien characters introduced: Grendel (renegade Bronze Man leader), Hrothgar (main embassy ambassador), and Beowulf (renegade Bronze Man warrior).

Chapter 3: The Diplomatic Dance

  • The twelve planets take their positions in orbit around the sun.
  • Bronze Men embassies received by the United Nations in New York.

Chapter 4: A Troubling Discovery

  • Scientists, including Hamlet, discover that the three furthest planets are harvesting the sun.
  • Earth’s leaders reject the Bronze Men’s embassies.

Chapter 5: The Renegades

  • Macbeth, Hamlet, Miranda, and Prospero are contacted by Grendel, who seeks to form a human-Bronze Man alliance.
  • The renegades reveal the full extent of the sun-harvesting threat.

Chapter 6: Building Trust

  • Suspicion and tension between the human characters and the renegade Bronze Men.
  • A risky joint operation brings the two groups closer together.

Chapter 7: The Resistance Rises

  • The human characters recruit more members for the resistance, including Ophelia (Hamlet’s love interest) and Banquo (Macbeth’s best friend).
  • The renegade Bronze Men provide alien technology to aid the resistance.

Chapter 8: Ingenious Strategies

  • Prospero and Beowulf work together to understand and reverse-engineer the alien technology.
  • Macbeth and Grendel devise a plan to counter the sun-harvesting.

Chapter 9: The Eve of Battle

  • The resistance prepares for a daring, high-stakes attack on the sun-harvesting operation.
  • Hamlet and Ophelia share a tender moment before the battle.

Chapter 10: The Battle for the Sun

  • A gripping battle ensues between the united human-alien forces and the sun-harvesting Bronze Men.
  • The resistance uses their newfound understanding of alien technology to their advantage.

Chapter 11: Unlikely Heroes

  • The tide of the battle turns in favor of the resistance, but at a cost: Banquo sacrifices himself to protect Macbeth.
  • Grendel and Hrothgar confront each other, revealing a deep, personal history.

Chapter 12: A New Dawn

  • The sun-harvesting operation is defeated, and the remaining Bronze Men leave Earth’s solar system.
  • The renegade Bronze Men choose to stay on Earth, beginning a new era of cooperation between the two species.

Chapter 13: Epilogue: The Legacy of Trust

  • A memorial is held for Banquo, and Earth begins rebuilding with the help of the renegade Bronze Men.
  • Macbeth, Hamlet, Miranda, and Prospero reflect on the importance of trust and unity in the face of adversity.

At this point I am chuckling to myself, thinking, “Yep, it’s written screenplays before”. I mean obviously I wasn’t looking for a screenplay, but the beats are the same, the structure is pretty standard and the last bullet for chap 13 says it all.

But then I had to do the next one to confirm my suspicions …

Write a detailed brief for Chapter 1: Celestial Intruders, including outlines of scenes in which the planet-sized objects are discovered, the main characters are introduced and earth responds to the shattering news that there are aliens and they are en route.

Chapter 1: Celestial Intruders

Scene 1: The Discovery

  • Setting: International Space Observatory
  • Astronomers detect the twelve planet-sized objects entering the solar system. Dr. Hamlet, a leading scientist, is among those who witness this unprecedented event.
  • Tension builds as the astronomers attempt to understand the nature and purpose of the objects.
  • News about the mysterious celestial bodies spreads, creating a mix of excitement, fear, and curiosity among the general public.

Scene 2: Introducing the Main Characters

  • Setting: Various locations, highlighting each character’s expertise
    • Macbeth at a military base, demonstrating his strategic prowess.
    • Hamlet in his lab, investigating the celestial objects and their potential threat.
    • Miranda at the United Nations headquarters, working on diplomatic strategies.
    • Prospero in a research facility, developing cutting-edge engineering solutions.

Scene 3: The Shattering News

  • Setting: Major cities worldwide, showcasing diverse reactions
  • News breaks out that the celestial objects are inhabited by an alien race, the Bronze Men.
  • The world is shocked and enthralled, with people reacting in various ways, ranging from fear and panic to fascination and excitement.
  • Governments scramble to address the situation, with global leaders calling for an emergency meeting.

Scene 4: Emergency Meeting

  • Setting: United Nations Headquarters
  • World leaders, including Miranda, gather to discuss how to approach the rapidly approaching alien race.
  • The room is filled with a sense of urgency, and differing opinions create tension among the leaders.
  • Ultimately, the leaders agree to establish a unified front to communicate with the Bronze Men, while also preparing for any potential threats.

Scene 5: Mobilizing Earth’s Defenses

  • Setting: Military bases and research facilities across the globe
  • Macbeth is tasked with coordinating the defense forces of multiple nations, preparing for any possible aggression from the approaching planets.
  • Prospero and his team of engineers work on developing new technologies and strategies that could be used to protect Earth.
  • Hamlet continues to study the celestial objects, searching for any information that might help Earth in the upcoming interactions with the Bronze Men.

Scene 6: The World Awaits

  • Setting: Public squares and homes worldwide
  • As the alien planets draw nearer, people all over the world anxiously wait for further news.
  • Family and friends gather together, discussing their hopes and fears about the future.
  • The chapter ends with a sense of anticipation, setting the stage for Earth’s first contact with the Bronze Men in the following chapters.

And then finally:

Write Scene 1: The Discovery beginning with a lowly assistant noticing something odd has appeared in the data from the International Space Observatory

Scene 1: The Discovery

Setting: International Space Observatory

[INT. INTERNATIONAL SPACE OBSERVATORY – NIGHT]

The International Space Observatory is buzzing with activity as astronomers and scientists are busy analyzing data and monitoring the night sky. A young, lowly assistant named LUCIUS is hunched over his workstation, reviewing the latest data from the observatory’s telescopes.

LUCIUS (muttering to himself) Hmm, that’s odd…

He leans in closer to his screen, analyzing the unusual pattern. Lucius hesitates for a moment, then decides to call over his supervisor, DR. HAMLET.

LUCIUS (excitedly) Dr. Hamlet, could you please take a look at this? I found something peculiar in the data.

Dr. Hamlet, a middle-aged scientist with an air of authority, approaches Lucius’s workstation, intrigued by the young assistant’s discovery.

DR. HAMLET (curious) What have you found, Lucius?

Lucius points at the screen, where twelve distinct blips are visible on the data graph.

LUCIUS (nervously) I was going through the data from the deep space telescope, and I found these twelve strange objects. They appeared suddenly, and they’re moving towards our solar system at an alarming speed.

Dr. Hamlet’s eyes widen as he examines the data. He immediately recognizes the significance of Lucius’s discovery.

DR. HAMLET (astonished) Incredible! This could be the most significant astronomical event of our time. We must alert the other observatories and confirm our findings.

The room erupts into a frenzy of activity as the scientists scramble to verify the existence of the twelve celestial objects. Dr. Hamlet takes charge, coordinating efforts with other observatories around the world.

[INT. INTERNATIONAL SPACE OBSERVATORY – LATER]

The confirmation comes quickly. The twelve planet-sized objects are indeed approaching the solar system. As the news spreads throughout the observatory, the atmosphere becomes electric with anticipation and anxiety.

DR. HAMLET (addressing the room) Ladies and gentlemen, we stand on the brink of a monumental discovery. Our lives, and the lives of everyone on Earth, will never be the same. We have a responsibility to ensure the safety of our planet and to share our knowledge with the world. Now is the time to act.

The scene ends with a shot of the observatory’s massive telescope, pointed at the distant stars, as the team prepares to investigate the celestial intruders further. The camera slowly pans upwards, revealing the vastness of space and the unknown that lies ahead.

So, its obviously all very sketchy, badly written, and definitely generic, but in these responses to the four prompts – which I purposefully made relatively undetailed in the cases of the ones subsequent to the first – I see an awful lot of potential. For example, I did not make any comment about tone, style or characterisation. Nor did I look at any underlying themes or agendas. My thinking is that I should rewrite the prompts to cater for some of these ideas as well as including using obscure names for the characters, with vowels changed – Mic Both anyone?

Lastly, I *know* its all a bit meta, a bit SF, using a computer to write a SF novel. Perhaps I should choose in the style of Philip K Dick in the next run, and see what that produces? Really, Do Androids Dream of Electric Sheep?

What do you think? Should I continue prompting ChatGPT to create a more detailed less generic story called “The Bronze Incursion” or is the game a bogey?

Obviously I am asserting my rights as author for the above – afterall I wrote the prompts 😉

#HowtoRestoreACastle: Beware Your First #MidgeEncounter. Ours was truly awful!

If you do not live in a temperate, coastal location with high rainfall, you may not know about the midge. You see, the midge is a wee blood-thirsty beastie which rises in late May and spends the next three to four months feeding on any piece of exposed flesh available to it.*

*Please note: Midges occasionally drive their victims to using bad language, and this post is no exception.

The midge bite is small but persistent, itching out of all proportion to the size of the mandibles which cause it. Or at least this is the case for the first three years of exposure – which is no use to visitors of course, but explains why West Coasters born-and-bred barely bat an eyelid under the onslaught of these multitudinous airborne pests. Because, while the bites are an incessant irritant after the fact, the initial onslaught can be truly excruciating.

Imagine an early summer evening, when the light is limpid and louche, falling toward a gentle, welcoming darkness – soft in the virtually tactile way that only the ocean ward coast of Scotland can produce.

Imagine that you are coming home to your newly finished, glorified garden shed after a weekend away with friends. It’s just the two of you, content to come home after a long journey full of conversation, insight and laughter.

You turn your battered soft top Vitara into the drive and allow gravity to take you down to the bridge. You want to keep the car’s progress slow because the unfinished drive rocks the short-wheelbase of the four-by-four such that your already sore backs will be further jarred (the Vitara was never a comfortable ride), and you note as you cross the bridge that the castle is looking particularly pretty, the tops of the chimneys are caught in the last light of the setting sun, and the foot of the ruin seems to accentuate this by being sunk in a deeper, darker shadow than you’d expect. Both of you glance at the stand of tall trees across the ravine from the castle to see if they account for the visual contrast, but nothing unusual strikes you.

The slight rise to the last corner wakes the bassets who immediately become animated with home fever. You glance at one another and smile, anticipating much low-slung and hilarious scooting around by the doe-eyed duo as they reacquaint their patch with them. The drive levels out, and you slip quietly down the avenue of, on one side, overgrown Leylandii and on the other five gargantuan exotics – led by what has come to be known as the ‘Harry Potter’ tree – although I am sure it looks nothing like the Whomping Willow. It’s nearly fully dark under the trees and you put on the headlights. They meet a thick veil of insects which move in mildly hypnotic wave delineating the full beam of the lights to their utmost extent 200 yards away to the foot of the castle. You glance at one another not quite understanding (a) how such insect-life could have arisen in the 72 hours you have been away and (b) amazement at the fecundity of nature even in these hills where the ground is notoriously poor, water-logged and inimical to anything other than pine, rhododendron and rashes.

Imagine that despite your wonder at this sudden irruption of natural phenomena into your life at Dunans, you allow your car to coast at approximately 2 metres per second down the drive and into the gravelled embrasure on which the red shed stands. The quality of the light improves and you see that the entire foliage delimited quadrangle is thick with a floating mass of insect-life fluctuating to an altitude of about 8 feet. It is at this stage, when you slow the car to the point that it will roll at, maybe, half-a-metre a second to its place before the shed, that two things become apparent. First, the canopy of the soft-topped car, which covers boot, rear seat and ceiling above really isn’t airtight, and second that driving so slowly means that this wondrous, slowly and softly dynamic layer of insect-life is in fact able to find admission into our coolly comfortable capsule of car air.

The time between the slowing and the screaming was perhaps all of 5 seconds.

When the red mist of midge rage descends rational thought becomes absolutely impossible.

The bastards bite.

The bastards get into your ears.

Into your nose.

Up your nose.

Into your eyes.

The creases at the corners of your eyes.

You scream. You run. You swear. You slam doors.

You open doors to let the dogs in.

You remember your baggage. You remember the shopping. The milk which needs the fridge.

You swear. Find a balaclava. Run out to the car. Get the shopping bags.

The milk bag splits. The cartons spill over the drive.

You swear. You cry.

You pray to God that the Balaclava is working. It isn’t. You throw it off.

You scrabble for the milk.

You weep.

You run in.

Throw milk at your wife.

Return outside for the bags.

You are hollering like Rambo. And choking on midges.

And still running.

Doors slam more.

There’s the tinkling of glass.

You run in. Slam the door.

Drop the bags.

Look at your wife who is scrabbling at one of the windows.

The windows.

They are covered in midges.

Billions of them.

We can’t see out.

And some of them, some of these bastards are on the bastarding inside.

An hour later we find ourselves sitting in the dark, in close proximity to two floor standing fans and one desktop fan in the centre of the red shed. We are trying really, really hard not to scratch ourselves. I am trying not to weep. My lovely wife is holding her head her hands, her jaw set. I can see she is calculating our next move. I cannot hold my head because my hands are covered in a mixture of silicone sealant and midges. I have a cut across one of my hands where the scissors slipped as I cut organza fabric, and at my feet are several thousand unused staples, an industrial staple gun and all the plasters we own. We know we have to venture into the bedroom to fight the midge invasion, and we also know that because of the variable level of the foundations, there is a big (bastarding) gap between wall and window bottom in that room. We look at one another and ask simultaneously, “What the hell have we done?”

That first year, in the hut with single-glazed windows of approximate fit, without airlock (AKA porch) for the shaking out of insect-life from hair, clothes and dog, without any through-breeze onsite of any kind, the midges were sanity-threatening awful. If I have subsequently called the castle a glorified mouse-breeding box, then the rash-filled paddock next to the red shed, with its sundry hollows, its deeply scored quad bike tracks, the miscellaneous divots and other depressions, all causing the retention of water to the point walking in it required waders, was similarly termed the midge-breeding box. We identified this area as the main problem and that was where we focussed our attention, to begin with.

To wage a successful war against the midge one needs to remember two things: first, this is a long-term campaign and second, there are no short-term solutions. You’ll also need to remember two further things: first, as alluded to in our very first swarming encounter, midges cannot withstanding a breeze of more than one point five metres per second, they are literally blown away, and second, they are crepuscular.

You can walk a swarm off – they literally cannot keep up. If you spot several Scots in a field having an agricultural chat, they’ll not be leaning on a five-bar gate (mostly because three of the five are rotten and the top is so patched with scraps of kindling that its actually quite uncomfortable to lean against) they’ll be walking in an ever-increasing spiral. Obviously, you’ll not want a decreasing spiral because the Pygmy flies will then end of concentrating in the correct space. Also, these voluble West Coast farmers, because, believe me, they can be very voluble, will avoid their livestock. Livestock generally have their own domestic swarm, a colony of midges, who for the summer describe a cloud or halo around their chosen beast.

Now concerning the crepuscular element of the equation (while ensuring we reference the Fire Sermon as the only reason I had any notion as to what this poly-syllabic term meant before the advent of midges into my life) the reasons midges are dusk and dawn-favouring are two-fold, first, the lack of sun. They, like moles, mice and marmots do not like direct sunlight. Well, mice might, but they prefer cover from marauding predators than full sunlit exposure. Not having researched the subject, I am not sure why midges don’t like sunlight, but (vast) experience shows this to be the case. Second, at dusk and dawn, any air movement generally falls away. There may of course be a third reason. Midges feed on blood. Any blood. They are not fussy. Human, deer, coo, sheep, dog, cat. At dawn and dusk these creatures are not wont to rush about madly, they slow, they prepare for the onset of night or begin the process of waking. The midge prey are therefore not moving at more than 1.5 metres per second, and therefore are available.

How is it you may ask that such tiny creatures can find their prey with such alacrity? Midges are attracted initially to the carbon dioxide their prey emits, then by movement, colour and odour. Finally, once a midge finds prey it emits a pheromone which attracts other midges.

It may be the pheromone which finally persuaded us that midge magnets weren’t for us. Either that, or the thought of using a can of gas every couple of months to produce a constant stream of carbon dioxide to clear a quarter acre of ground. While we awaited the effect of the changes we began soon after that tortured evening of the soul, we invested in a midge magnet. Now, quite apart from my inability to

(a) remember to check the gas canister on a regular basis

(b) empty the nets of midges as they neared full

(c ) light the magnet (once I’d managed to remember to check the canister, see that it’d been empty for some time – given the deliquescence of midges in midge-net – get to Strachur to replace the canister, order a canister because I was the only person using that particular type, forget to remember to return the following week once the gas co. had delivered said preferred type, remember a further week later to get the last canister of the preferred type given that four other households “ …. were giving these midge magnet thingies a try”).

No, midge magnets weren’t the solution, not at Dunans, not with our infestation, not with my record of replenishment and maintenance. There is a far flung corner of a shed where several hundred-pounds-worth of kit moulders paying tribute to our commitment to rid ourselves of midges and also, to our eventual success.

Note to those who visit midge-infested areas only infrequently: Do not – I repeat – do not sit around a midge magnet. It’s a magnet. Midges, seeking the carbon dioxide exhaled by animals are attracted to it – as if its a …magnet. By sitting there you’re creating a HUGE target for midges, even those outside the quarter acre of midge-free atmosphere. It’ll not be pretty. You’ll spill your beer, knock the prosecco for six, throw down your burgers in panic, trample small children – all the time swearing, “Bloody-bastarding-thing doesn’t bastarding work. You said they worked! Only reason I agreed to come here. Right, I have had enough Mildred, WE ARE LEAVING!” You will then jump into your seven year-Old Volvo and never return, even to retrieve the youngest’s purple unicorn pillow called Tilly, which a week later a family wanting respite from a midge infested patch of grounds near a castle not 20 miles away, finds in the porch, hanging rather forlornly on a coat-hook.

Over three or four years following, we reduced the incidence of midge deluges markedly, such that now, it is only of passing interest when we have a bad day. My paltry efforts, along with mighty shifts by folk like VBF, Chris, Stuart, Min and Tino, have led to policies in which it is possible to picnic, or to barbecue, in comparative comfort with only an occasional surfeit of airborne bitery. We do still dress our open windows in organza, practice a lights-out policy during late-May, June and July, as well as utilise floor and desk-mounted fans day and night.

#HowToRestoreACastle: Remember to use appropriate #quotemarks in #html/JSON forms before even attempting to solve the #Royal Mail #Click&Drop #foobar that is #EuropeanPostDeliveries

Frustrating day yesterday. Not only did I have an html form which would not display compiled JSON encoded data for the Royal Mail “Parcel API v1.”, but when I finally worked out that I needed to use a single apostrophe rather than a double on the POST-ing form because the browser was parsing a second double apostrophe as completing the data variable, the compiled data also threw out multiple errors when sent to the Royal Mail endpoint (or startpoint) (or whatever). A day – a whole day – on when to use a single apostrophe, a double apostrophe, a numeral, a null, a false or a string. Gah!

And then – then – in the final half-an-hour – also attempting to the issue I started with, which is to say the labels that Click & Drop deliver in PDF format do not have anywhere for a sender to add phone number or email of the recipient.

Its that extendedCustomsDescription variable …

Now, I know there are GDPR implications in this, but we have continual requests from Post operators in Europe particularly to include (a) IOSS numbers and (b) recipient’s email / mobile phone numbers on the address form or CN22. The only – the ONLY – space available for this using the API RM provides is in the Customs Description space.

So in the 50 characters we have we now print the following:

“PrintedPapers
+44777000777
a.person@gmail.com”

Will this work? Will EuroPosties see the details? I know not.

What I do know is that it gives us a chance of reducing our present v. high return rate – 25% or so.

I’ll report back here if we manage that reduction!

#Update on #whackingWPYII2, the #fakeplugin invading #wordpress #wp

Have to say I was a *little* premature on declaring success. I’ve got a couple of updates to my previous post about this pernicious WordPress hack (Disinfecting for WPYII2 – the #fakeplugin invading WP and how to kill it #wpyii2 #killwpyii2).

  1. Do get rid of all the excess .htaccess, but if they keep reappearing in directories where they aren’t necessary (a) delete the code and insert some harmless text eg. #boil your head wpyii2# to stop them affecting the function of your website and (b) you’ve definitely missed some of the fake app’s php files, see (2) below.
  2. Fake php files are hidden in a variety of directories where you may not be familiar with what *should* be there. Obvious vector directories are in the plugins – particularly the ones everyone has. Akismet is an obvious one to examine. File names include a series of numerals, as well as the following that I’ve seen: index2.php, content.php, radio.php. The latter, non-numeral files, tend to be c. 4.41kb in size and will have a date last modified later that the files in which they sit. As previously mentioned wp-admin is also often used, particularly /wp-admin/css/colors/
  3. Some recommendations for those of you that can’t upgrade to the latest (greatest) version of WP – which you should absolutely do if you haven’t a very VERY good reason not to.
    1. Use a fully configurable firewall app such as WordFence – this has a bunch of very useful features straight out of the can. But it is subscription so you might want to also implement the plugins like following instead, or as well as:
    2. Login No Captcha reCAPTCHA (Google) by Robert Peake and Contributors – this will stop hackers getting into the admin area by force – or at least it has so far.
    3. WP Force SSL by WebFactory Ltd if you have SSL – which you should by now.
    4. BBQ Pro (as recommended in the last post) by Jeff Starr 
    5. Make sure you have in your “define( ‘DISALLOW_FILE_EDIT’, true );” config file, and that this file is linked in to your WP install’s directory rather than hosted there.

I am happy to report all websites are now clear and functioning perfectly, even the ones on deprecated versions of WP, plugins and themes.

Disinfecting for WPYII2 – the #fakeplugin invading WP and how to kill it #wpyii2 #killwpyii2

I’ve just spent a week disinfecting my server from this pernicious bit of ruskyhack. Not only has it completely derailed my working week, its meant that my team have had very little work over that period as my websites have been unable to process orders. Whoever the surnames Skorobogatov, Serebryakov and Biryukov refer to, well, they should be ashamed of themselves.

The context is this. On a server (not the one this blog is hosted on) I have c. twenty installs of WordPress, plus several apps which are collected in three or four directories. I’ve got a variety of domains and subdomains, as well as password-protected directories for particularly sensitive work apps.

Now if I say that some of these apps take data from my WP install DB repackage it and spit it out via the Royal Mail API into their Click and Drop app, you will get why this fake plugin has completely disrupted that workflow. And of course the problem with some of the WP installs I am using is that, because of its wide integration into our production systems, I cannot upgrade either the WordPress version or the plugins associated with it.

WPYII2 found its way onto the server mid-week last week and the first I knew about it was some code appearing at the top of the homepage of several of my sites.

The damage was extensive. I lost three separate bespoke apps we use regularly for business because the fake plugin deletes top level ‘index.php’ files when they are not associated with a WP install. Luckily I had different earlier iterations available on the server so I could cobble together replacements – which ended up improving on the earlier versions.

As for the WP installs, well, they all fell over, repeatedly. I ended up playing whack-a-mole for a couple of days while trying to understand what the hell was going on. It didn’t help that there were plenty of posts from security firms saying, yes, this is a thing, and we’re here to help you get rid of it, but very few saying this is how you do it. I *think* I have done it, and the solution has ended up being cobbled together through trial and error and some helpful non-specific security posts from a variety of sources [for example]

So how to rid your WP install of this vicious fakery?

  1. Open top-level index.php and delete the machine code sitting in lines 1-3
  2. Delete any ‘new’ files at top-level that you don’t expect to see.
  3. In cpanel use phpmanager to flip between php version to disable the fake plugins chron jobs
  4. Replace the .htaccess file text with the single or multiple install vanilla code from here: https://wordpress.org/support/article/htaccess/
  5. Delete all .htaccess files below the top level on the WP install.
  6. Delete any folder in plugins which isn’t something you have installed eg. the folder called “wpyii2”
  7. Look for any folders / files which have a recent ‘last modified’ date which you don’t recognise as being something you did.
  8. Repeat 1 through 4 if at anytime the website won’t display / shows the code at the top of the page again.
  9. Check 5-7 if you have to repeat 1 through 4
  10. Once you have a clean install, or at least as clean as you can make it, and you don’t have to maintain an outdated version of WP, upgrade to the latest version of WP.
  11. Upgrade all your plugins and themes. If you have made bespoke versions of themes by changing the code, I’d recommend trying to find a different way of creating the same effect through the customization options for that theme rather than altering the php.
  12. Protect the ‘wp-admin’ directory with a password (check to see whether this works for your install of WP – I’ve had mixed results)
  13. Install a firewall plugin – eg. BBQ Pro or similar
  14. Install a 2FA plugin
  15. Install captcha on login plugin.
  16. Install a SSL/HTTPS force plugin – assuming you have a live SSL certificate for the relevant domain.
  17. For 13-15 remember to do this for all iterations of a multisite – although BBQ Pro will activate across the network without further configuration (which I like).
  18. With your wp-config.php file, add the following code before the ‘Happy Blogging’ message –> “define( ‘DISALLOW_FILE_EDIT’, true );” – this stops all editing of php / css / html within the WP environment (see note 11 re: editing themes etc.)
  19. Consider moving the config file to the top level of your server, ie. above the ‘public_html’ directory, using the php code ‘require_once ‘/home/username/wp-config.php’;’ on the ‘wp-config.php’ file within the WP install directory.

As of 15th June 2022 I seem to have reached a stable environment with the fake plugin effectively being locked out by the abovenoted steps. However, I continue to monitor the server, and use downnotifier.com to give me immediate intel if things go awry. Any recommendations on other steps to keep this stuff away, let me know!

The cost of all of this to my business? Who knows? My time / stress? The lost orders? The lost IP? Those who black hat hack should reflect on their lives and wonder whether their skills could be better used elsewhere.

#putinisawarcriminal, the #wolfinthewoods, the #destroyerofchildhood, #clearandpresentdanger

Over the last month, watching the horror of Putin’s unwarranted invasion of Ukraine, the horror has emerged on the page. The mad bear was obvious. Dancing While No-One is Watching and Lost In The Woods not so much until the gimlet eyes starting appearing.

Sub100Club #Podcast Launches with 2 episodes, Lotsa #NewMusic & #DonaldSutherland’s Bottom*!

Delighted to announce a new music podcast hosted by the CharlesCharlieCharles himself with songs by bands and artists who have under 100 monthly listeners.

Episode#1 which is all about testing out whether the podcast actually works, features songs from Zapaian, Ruby Rodgers, PINLIGHT and Enslave the Zombie.

Episode#2 sees Charlie get into his stride and begin to think about both how Spotify curates musical taste, and how bands themselves work with listeners’ expectations. We also get to hear about Donald Sutherland’s bottom* … featuring music from Leagues Apart, No Room for Giants and Petty Cassettes.

To listen and enjoy click here

Two #Landscapes and a #Cityscapes in #Scotland at www.selwyn-and-ink.com

Over the last year or two, I’ve been working on a series of images from the Scottish landscape – here are the first three.

#Instagram #Live for #AIP #Jammers: Repairing #DunansBridge and #DunansCastle

This week I was asked to update the Adventures in Preservation Volunteers (or jammers) on our projects for 2021, so on Friday at 5pm I livestreamed from the bridge and then took my viewers on a short walk to the castle to give them a flavour of what the project would consist next year.

The details are that we will be welcoming jammers for a fortnight in May and September – the details are available here.

Refurbishing Dunans Bridge …

The repairs to the bridge are wonderful progress toward the full refurbishment of this Telford-designed A-listed structure. It seems amazing to me that these are the first thorough-going repairs to the bridge since the 19th Century when the stanchions were reinforced with concrete. It just shows how durable Mr Telford’s design is.

Of course, the plan had been to refurbish the bridge in one season through funds acquired from Historic Scotland and the Heritage Lottery Fund. Our efforts were stymied by our inability to engage with our neighbours on the management plan our team had designed. With a deed of servitude over the bridge, our neighbours agreement to the plan was critical to the granting of funds of £750,000. As it is we have managed a programme, funded privately by the ScottishLaird project, which has achieved a great deal, but in a piece-meal fashion.

Volunteers in 2019

Our Jammers have been a Revelation!

Having said all that, working on the structure in this episodic manner has been a blast – not only because I have developed skills I never thought I’d need (rope-work, lime mortar mixing and scaffolding), but we have been introduced to some of the loveliest heritage fanatics – sorry, jammers – one could ever hope to meet (Brian, Lindy, Richard and Holly, I am looking at you!!).

With help from volunteers from SPAB and Historic Scotland during weekends either side of each sessions, we think we may even get a shot at repointing the ‘softer’ north face of the bridge (sounds like North Face of the Eiger doesn’t it?). This will then leave the main arch and the bottoms of the stanchions for 2022 – although whether we will have to engage a professional team for this as well, we are not sure. However we progress though, we wouldn’t have managed to get so far with the bridge without our volunteers!

… and the Castle!

But of course for 2021, the bridge isn’t the only story, and in the livestream I showed our jammers (and some Lairds and Ladies) into the main turret of the castle. This 4m circular tower was designed to be capped by a huge candle-snuffer conical slate roof, and the project for next year will be to repair the apertures, consolidate the doorways and, perhaps, work on the circular parapet at the top of the tower. I am hopeful that by the time the jammers get to it, we will have floors and temporary stairs all the way up the inside of the turret! Should make for a really memorable project!

Both Eland and Nigel are lined up to come back – and looking forward to meeting lots of new faces (and some familiar ones too!) And we are also back at the very popular HomeFarm Cottages with all of our preferred apartments.

I’ll be running the excursions again (because I really enjoyed them last time) and Anne and Sadie will be on hand to make sure you are all fed and I don’t eat more than my fair share.

For more details on the ScottishLaird project please click here.

For more details on Adventures in Preservation, please click here.

#Poem: Thoughts on Encountering #Dunoon’s ‘#JimCrow’ for the First Time. #blacklivesmatter

Racism should have no place in our society. Othering is a pernicious and vile practice – one which affects communities across Scotland. Gossip, innuendo and rumour all contribute to conduct which results in bullying, discrimination and disempowerment. It may not be full-blown racism, it might be sexism, or homophobia, or sectarianism – whatever it is, we are better than this and the campaign to deal with Dunoon’s ‘Jim Crow Rock’ is proof-positive that change is being demanded.

Thoughts on Encountering Dunoon’s ‘Jim Crow’ for the First Time

At first it seems it is Crow,
That sharp-faced Corvid –
Yellow-eyed, black-billed,
Black-footed and Wing-tipped
In iridescent black-blue –
Perhaps hooded in sombre
Grey – seen against a scudding
Winter sky - a darkling flag
Tumbling low over the waves to-
Ward a deep copse roost.

But no –
This ‘crow’ is anchored
Upon the foreshore, stilted
Mid-step, painted by the
Unkind brush of local
Tradition, shaping an Other
With a vile cartoon graffito
Of red lips and white tooth
Strip – it is an indecent dis-
Memberment of that
Which we all share.
X