Sr. Content Developer at Microsoft, working remotely in PA, TechBash conference organizer, former Microsoft MVP, Husband, Dad and Geek.
161040 stories
·
33 followers

Every Database Has These Seven Tables

1 Share

You can walk into any company on earth, open the production database, and find the same seven tables. Different industry, different continent, different decade. The same seven tables.

Nobody planned this. There is no standard, no committee, no ISO number, no working group that ever met. And yet the convergence is total. Blindfold me, drop me into any company in any industry, and I will find at least five of these before the coffee arrives.

I have personally created four of these. I named one of them after myself, which at the time felt efficient. It is, as far as I know, still there.

1. Customers_new

Created in 2019 to replace Customers.

Both are still here. Both had rows added yesterday.

Nobody can tell you which one the application actually reads. Finding out would mean opening something, and the person who last opened something is the reason we have Customers_new.

In the tidier organisations there is also Customers_new_final. In the honest ones there is Customers_new_final_v2. I have seen Customers_new_final_USE_THIS_ONE, and I want to be clear that the shouting did not work.

In about a third of the databases I have opened there is also a view called vw_Customers that quietly unions both tables together. Somebody built that view to solve the problem.

The view is now the problem.

Every Database Has These Seven Tables customers-new

2. Sheet1

Somebody imported a spreadsheet. The wizard suggested a name and they accepted it, because it was four in the afternoon and the meeting was at half past.

It has a column called Column3. Column3 holds the regional discount percentages. There is no other copy of the regional discount percentages anywhere in the company.

No primary key. No constraints. No NOT NULL on anything at all, including the column that decides what your customers pay. It is one of the most load bearing objects in the finance system and it is named after a tab.

Somewhere nearby there is also a table called Sheet1$. The dollar sign is not a typo. It is a fossil left by the import wizard, and it means this happened twice.

The contractor who imported it was here for six weeks. Nobody wrote down the surname.

It has never failed an audit. Nobody has ever found it.

Every Database Has These Seven Tables sheet1

3. tmp_fix_20180312

Temporary.

The date in the name is the night of the outage. The fix went in at two in the morning, the incident was closed at four, and the table was going to be dropped first thing.

That was seven years ago. It has been backed up about two and a half thousand times. It has been carried through three server migrations, each time by somebody who assumed the person before them had checked.

It appears on a cleanup ticket roughly once a year. The ticket is always closed by somebody who has correctly worked out that nobody alive knows what it is.

Nobody has ever queried it. Everybody has moved it.

Every Database Has These Seven Tables tmp-fix

4. Settings

One row. Forty one columns.

Twelve of them are called Flag1 through Flag12. Four more are called Flag1_New through Flag4_New, which tells you roughly when the second developer arrived.

Nobody knows what Flag7 does. On the single occasion somebody set it to 0, the warehouse stopped printing labels within eleven minutes.

Flag7 has been 1 ever since. It is 1 in production, in staging, in the two environments nobody uses, and in the disaster recovery site that has never been failed over to.

There is also a column called Temp. It is a bit. It is 1. It has been 1 since the table was created in 2014, and the word Temp has never in the history of computing done more work.

The table has no primary key, because there is one row and there will only ever be one row. In 2021 somebody inserted a second row. The company could not take orders for forty minutes.

There is still no primary key.

Every Database Has These Seven Tables settings-flag7

5. AuditLog

Nine hundred million rows.

It has never been read. Not rarely. Never.

I have checked this more than once, because I did not believe it either. The usage statistics show writes and nothing else, year after year, in a straight line. The compliance team who asked for it moved on. The person who replaced them assumed somebody else was already reviewing it. Nobody was.

It is backed up nightly. It is replicated to two secondaries. It is the most faithfully maintained object in the entire organisation, and it exists to be examined on a day that has not yet arrived.

Roughly once a year somebody proposes archiving it. The meeting reaches the question of what the retention policy actually is. Nobody in the room knows. The meeting ends. The table adds another hundred and forty million rows.

It also has no index on the date column. So on the day it finally matters, when somebody official is standing behind you asking what happened on the fourteenth, it will not work.

Every Database Has These Seven Tables auditlog

6. Backup_DoNotDelete

Forty gigabytes.

Nobody knows what it is a backup of. The columns do not match anything currently in the database. The newest row in it is from a Tuesday in 2019.

There is no permission stopping you from dropping it. No extended property, no documentation, no ticket, no owner in any system. The protection is entirely the name, typed in capitals by somebody who had just been badly frightened.

A stranger left a note, and for six years every one of us has obeyed it.

I once sat in a migration planning meeting where a team spent two hours on whether to bring it across.

They brought it across.

Every Database Has These Seven Tables backup-do-not-delete

7. AKTest

Or jm_temp, or priya_wrk, or three initials nobody can expand any more.

Four rows. Two of them contain the word test. One is empty. One says asdf.

That person left in 2017. The account was disabled, the laptop was wiped, the desk has been reassigned twice, and the table is still here, backed up every night, consuming eight kilobytes and a surprising amount of everybody’s courage.

Nobody will drop it. Dropping it feels like something.

It is eight kilobytes and it is somebody’s name, and it turns out that is enough.

Every Database Has These Seven Tables the-empty-desk

Honourable Mentions

Not universal enough for the main seven, but present in far more places than anybody would like.

Users and tblUsers. Both populated. Different row counts. Nobody is investigating.

Orders_20190417_BEFORE_MIGRATION. The migration was a success and we have never once deleted the parachute.

ZZ_Old_Orders. Prefixed with ZZ so it sorts to the bottom of the object list, which is our version of sweeping it under a rug.

Copy of Sheet1. Yes, with the spaces. Yes, it needs square brackets. Yes, somebody has written production code containing square brackets around the words Copy of Sheet1.

Archive. Contains nothing. Has contained nothing since 2018. The nightly archiving job still runs, and still reports success.

Test. Created by somebody who is now a director.

Table1. No further information is available and none is coming.

DELETE_ME. Created in 2016.

What You Are Actually Looking At

Nobody designed your database. It accumulated.

Every one of these tables was a person solving a Tuesday. The naming was not carelessness, it was speed, and speed was the right call at the time. Customers_new was made by somebody who fully intended to come back and finish. AuditLog was made by somebody who was told to. Backup_DoNotDelete was made by somebody who had just watched a bad thing happen and typed in capitals so it would not happen again.

None of them were being sloppy. They were being fast, on purpose, on a day when fast was worth more than tidy.

Which is why I would gently suggest doing something about it, and why I know you will not. I have four of my own out there. One has my name on it. Some intern in a city I have never visited is going to find it in 2031, decide it is probably important, and back it up for another decade.

One more thing and then I will let you get back to it. There is nobody inside the machine, which is the whole argument of my book AI: Nobody’s in There. But we’re still in here. There are, on the other hand, an enormous number of people inside your database, and you have just met seven of them. All thirty essays are free to read at pinaldave.com, and there is a paperback on Amazon if you would rather hold something real.

Nobody designed your database. It accumulated, one Tuesday at a time, and every name in it is a message somebody did not know they were leaving.

Reference: Pinal Dave (https://blog.sqlauthority.com/), SQL Server Humor, X

First appeared on Every Database Has These Seven Tables

Read the whole story
alvinashcraft
just a second ago
reply
Pennsylvania, USA
Share this story
Delete

What Is A Pastiche & Why Should You Write One?

1 Share

Learn what a pastiche is, how to write one, and why this form of fiction can help you master style, character, setting, and craft.

Binge-reading your favourite author is great, until the author stops writing. Lucky for you, there is a remedy: read a pastiche! If you’re wondering what a pastiche is, and why every author should write one, this article will help you.

What Is A Pastiche & Why Should You Write One?

What Is A Pastiche?

The word ‘pastiche’ sounds French but it’s actually from the Italian ‘pasticcio’, meaning pie or pasty. It usually consists of many things mixed together, like a potpourri. A literary pastiche is a potpourri of an existing work of art with the narrative talent of a modern author.

This technique is used whenever authors write. They all draw on their ancestors to create a text in their unique trademark style. Readers can sometimes find literary allusions but no more than that.

In a pastiche, however, authors aim to adapt the style of the original to such an extent that they negate their own style. A reader will find it hard to distinguish between the pastiche and the original. A pastiche is:

  1. Written by a fan of the original but it is not fan fiction.
  2. Admiring the original story (in contrast to a parody, see below).
  3. Imitating a pre-existing literary text in style and subject-matter.
  4. Continuing or expanding an existing storyline, sometimes adding new characters.
  5. Hiding the personal style of its writer.
  6. A work of fiction in its own right (unlike fan fiction, and unlike a parody).

Theoretically, pastiches can be written of any story. Here are three famous examples:

  1. Tom Stoppard’s Rosencrantz and Guildenstern Are Dead (a pastiche of William Shakespeare’s Hamlet)
  2. Alexandra Ripley’s novel Scarlett (a pastiche of Gone With The Wind by Margaret Mitchell)
  3. John Banville’s Mrs Osmond (a pastiche of Henry James’s Portrait Of A Lady)

There’s no official statistic on which text sparked off most pastiches, but Conan Doyle’s Sherlock Holmes would definitely be among the top of the list. Wikipedia has even devoted a whole article to its pastiches! We’ll look at some examples later. 

How Do I Write A Pastiche?

Writing a pastiche, let alone a successful one, is very hard. Why? Because its author needs great skill as a reader and as a writer. Here are four tips on how to do it.

1. Lay the groundwork for your own story. What will be the basic storyline of your pastiche? Here are three basic ideas (with examples from Sherlock Holmes pastiches):

    • A continuation of the original story: Laurie King’s Mary Russell-series takes place after Sherlock Holmes has retired to Sussex. The famous sleuth even gets married!
    • A part of the original story: Nicholas Meyer’s Seven-Percent Solution uses the original cast of characters, the setting, even certain elements of the storyline. It comes across as a story that Conan Doyle simply forgot to write.
    • A minor character from the original plays a major role in the pastiche: Carole Nelson Douglas did that in her series on Irene Adler. A variant on that is to invent a character that simply fits well into the original universe (Nancy Springer’s Enola Holmes-series does that where Sherlock Holmes suddenly has a sister). 

2. Start reading and analysing the original. Act like a literary scholar. Know the story inside out. Analyse the style: What made the original such a compelling story? That’s what fans will look for in your pastiche. If you, as a modern author, are unable to satisfy these expectations, your readers will probably be disappointed. For example: if Sherlock Holmes is a completely logical and unemotional man in the original Conan Doyle stories, then he can’t be wallowing in his emotions in a pastiche. When Laurie King started to write her Mary Russell-series, she had to come up with a heroine who was able to spark a credible romantic emotion in Holmes. She was successful, just look at the sales figures for this series!

3. Analyse the setting. Where does the original take place? Where will your pastiche be set? What are the characteristic words and phrases of the period? What about props, like clothes, machines, forms of transportation? If you get the setting right down to the smallest detail, this will help to give your pastiche the feel of the original.

4. Don’t disappoint your readers. Pastiches are not ‘fan fiction’ (see this article for the difference), but their readers are likely to be hardcore fans of the original. They will compare your pastiche to its source. If you haven’t done your homework (see points 1-4), they will know and turn into your harshest critics.

What’s The Difference Between Pastiche And Parody?

Some say a pastiche is like a parody without the tongue-in-cheek attitude. The modern author’s attitude towards the original, either reverence or irreverence, decides largely whether the new text will be a pastiche or parody.

Both genres are closely related, both are imitations of the original text. But they’re not copies! They are too elaborate to be called plagiarism, they both recognise their original template. Both use allusions as stylistic devices.

  1. Pastiches are written because the demand for the original can no longer be met by its author. It’s this historical template that the modern author uses to continue the story in the original vein. A well-written pastiche is a work of fiction in its own right.
  2. Parodies are also imitations, but they use techniques of satire, like exaggeration, caricature, and ridicule to make fun of the original. To understand a parody, you need to know the original.

The mindset of the author of a parody is therefore completely opposed to the author of a pastiche.

What’s The Difference Between Fan Fiction And A Pastiche?

Fan Fiction is written for fans by fans. That makes it sound like a pastiche, doesn’t it? But they’re still very different.

  1. Fan Fiction is usually non-commercial. These stories reach their readers through non-traditional platforms such as Wattpad or Commaful. They are usually of lesser literary quality (with an enormous readership; check the numbers of Harry Potter-fan fiction!). Fan fiction authors often write for their own fun and even include idealised versions of themselves into the cast of characters.
  2. Pastiches try to get published traditionally. Imitating the style of the original author, they tend to be of a higher literary quality. The pastiche has an author invisible to the reader.

Fan fiction, parodies, and pastiches bring up questions of copyright. If you intend to publish one of them, check with the original author! They can react very differently. Anne Rice, for example, absolutely forbids using her characters, whereas J.K. Rowling does not object to non-commercial fan fiction, as long as its authors bear in mind that her Harry Potter-universe caters to underage children.

Why Should Every Writer Write A Pastiche?

It’s so much fun to make your all-time favourite story go on and on and on. Writing a pastiche also hones your craft as a writer. After all, you learn from a master! You slip into another writer’s fictional universe and navigate inside it, you learn to adopt different literary styles, and you are trying to convince the most critical readers: the ones dedicated to another author. If you can write a successful pastiche, you can probably write anything!

Here’s An Exercise For You:

The French writer Raymond Queneau once wrote a small story and then rewrote it 99 times in different styles. He called his pastiches Exercices de Style! Why don’t you follow his example? Write a short piece of flash fiction, no more than 100 words. Then rewrite it in different styles (here’s a list of Queneau’s styles). It’ll definitely get your creative juices flowing!

The Last Word

Writing a pastiche is a fun way to step into another writer’s world, experiment with style, and sharpen your own skills. Find a story you love, study how it works, and then make it your own. You can also find a list of pastiches on Goodreads.

Image by Brigitte Werner from Pixabay

Susanne Bennett
By Susanne Bennett. Susanne is a German-American writer who is a journalist by trade and a writer by heart. After years of working at German public radio and an online news portal, she has decided to accept challenges by Deadlines for Writers. Currently she is writing her first novel with them. She is known for overweight purses and carrying a novel everywhere. Follow her on Facebook.

More Posts From Susanne

  1. What Is Steampunk? How To Write Steampunk Fiction
  2. How To Write A Space Opera
  3. What Is Dystopian Fiction & How Do I Write It?
  4. What Is Utopian Fiction & How Do I Write It?
  5. How To Write Alternate History: A Complete Guide For Writers
  6. How To Create Tension In Storytelling
  7. 7 Benefits Of Keeping A Diary – For Writers
  8. 7 Gripping Dystopian Plot Ideas For Writers
  9. Poets On Writing Poetry: Insights & Inspiration
  10. Poetry Made Easy: How To Read & Interpret Poems

Top Tip: Sign up for our free daily writing links.

The post What Is A Pastiche & Why Should You Write One? appeared first on Writers Write.

Read the whole story
alvinashcraft
just a second ago
reply
Pennsylvania, USA
Share this story
Delete

Daily Reading List – September 10, 2026 (#864)

1 Share

You might find that a couple of items below change how you’ve been thinking about something. That happened to me.

[blog] The Anatomy of Harness Engineering: How to Evaluate, Iterate, and Guard AI Coding Agents. Very cool. If you’re just looking at end to end benchmarks to evaluate a harness (or agent) you might be missing something. Read this to learn about behavioral evaluations.

[article] The five important tools for controlling AI costs. Seems fair to me. I wonder if models are now training on data like this, and if the recommendations will be different by the time a model actually reaches the market.

[blog] Introducing the Google Cloud Developer Plugin for AI Coding Agents. This is a smart way to build a gateway/starter experience that dynamically inflates as you need more from the target platform.

[article] AI accelerates output, not innovation. Makes sense. I can do more, which may (MAY) translate into faster learning. But AI also doesn’t replace the human brain’s ability to do recombination and identify real innovation.

[blog] Skills CLI 1.0: Bundle and distribute AI agent skills for your packages. Great idea! Ship skills with your package. And devs aren’t stuck trying to independently load the right skill for your latest version.

[blog] Migrating Shop app from React Native to native. Super interesting. Is “native” the future of mobile instead of multi-platform frameworks? Yes and no, probably. Depends on your use case, engineering prowess, and business need.

[article] Suddenly I’m a Go developer. It’s weird that any of us can be any type of developer. Even if temporarily, and with virtually no depth. I think it’s a good thing overall, and maybe encourages professional developers to expand their horizons.

[blog] Debugging Serverless Apache Spark using Gemini with MCP. Yes, you can just paste errors into an AI chat tool and hope for the best. But context matters, and we should give your tools access to the information that encourages more than guessing.

[article] Anthropic promised 20x more usage. Then developers hit a weekly ceiling. Not necessarily unique to Anthropic. It’s hard to offer fixed subscriptions for such fluid consumption.

[article] OpenClaw Power, MacBook Simplicity: Five Days With Grok Bot. Terrific look at Grok Bot, which has many fans. I’m going to use it more myself (on my non-work machine).

[blog] Taking Advantage of Cloud Run Sandboxes with Google Apps Script for Google Workspace. Get ready to see “sandbox” everywhere. Whether you’re running Codex, executing some custom code, or serving an agent, secure isolation matters.

Want to get this update sent to you every day? Subscribe to my RSS feed or subscribe via email below:



Read the whole story
alvinashcraft
39 seconds ago
reply
Pennsylvania, USA
Share this story
Delete

September Patches for Azure DevOps Server

1 Share

We are releasing new patches for our self‑hosted product, Azure DevOps Server. We strongly recommend that all customers stay up to date with the latest, most secure version of Azure DevOps Server.

The most recent release, Azure DevOps Server, is available on the download page.

The following versions have been patched. For more details on these updates, see the release notes:

⬇Azure DevOps Server Patch Download

Version Patch Download Release Notes
Azure DevOps Server Download Patch 8 Release notes

✅Verifying Installation

To verify that the patch is installed, run the following command on the Azure DevOps Server machine using the patch installer you downloaded:

<patch-installer>.exe CheckInstall

Replace <patch-installer> with the name of the patch file you downloaded. The command output will indicate whether the patch is installed.

The post September Patches for Azure DevOps Server appeared first on Azure DevOps Blog.

Read the whole story
alvinashcraft
43 seconds ago
reply
Pennsylvania, USA
Share this story
Delete

Introducing Projects

1 Share
Read the whole story
alvinashcraft
2 minutes ago
reply
Pennsylvania, USA
Share this story
Delete

Microsoft 2.5: EVP Pavan Davuluri wants to remake Windows for both human and agent users

1 Share
Pavan Davuluri says Windows will keep serving human users while adding agentic workloads. (Microsoft Photo)

GeekWire is profiling over the next few weeks some of the people and teams that are shaping the evolution of Microsoft in what we’re calling its “Microsoft 2.5” era.

Just Don’t Call It an ‘Agentic OS.’ Given Microsoft’s one-pointed AI focus these days, it’s not surprising that the Windows organization is on the agentic train.

But Executive Vice President of Windows + Devices Pavan Davuluri has learned the hard way not to call Windows an agentic OS. He did so back in November 2025, via a tweet and blog post, and the customer backlash was quick and biting.

But Davuluri has not done a complete U-turn because of the criticism. Instead, he has changed how he talks about where Windows is going — which is still in an agentic direction.

“The user of Windows going forward will continue to be users … but it’s also going to add these agentic workloads,” the nearly 26-year Microsoft veteran Davuluri told GeekWire in a recent interview.

During his time at Microsoft, he’s held a variety of roles, from intern to General Manager of Surface, to Corporate Vice President of Windows Silicon & Systems Integration. He was appointed Executive Vice President of Windows + Devices in March 2026, reporting directly to CEO Satya Nadella.

Windows needs to evolve to support agentic workloads through new platform capabilities that the team is building under the covers, Davuluri said. These low-level capabilities, or “primitives,” affect how Windows handles security, identity, governance, observability, and performance when it comes to building and running agents natively.

These coming changes likely will affect the Windows file system, security model, PowerShell, and other foundational components.

Microsoft already is working on Windows identity and manageability to make them better able to service agents. Windows can assign agents a local ID, or a cloud-provisioned identity backed by Entra.

And it also has an early preview of technology known as Microsoft Execution Containers, meant to help secure agents by running untrusted code in sandboxes or virtual machines. It’s these system-level areas where the team is focusing first in preparation for a human+agent future, Davuluri said, rather than the UX/UI level.

Going Back to Basics. Windows has had a lot of very different leaders over the years, with very different management styles and priorities.

For his part, Davuluri said he plans to run the Windows and Surface teams with four principles in mind: Maintaining customer obsession; treating Windows as a complete end-to-end system (“full stack”); focusing on complete user experiences and workflows rather than individual features; and building Windows openly and transparently, with clearer communication about plans and priorities.

On the heels of his promotion to EVP, Davuluri committed publicly to the much-needed goals of improving Windows quality and reliability. In a blog post, he outlined some of the requested changes that his team would be making to Windows, ranging from fixing the way the Insider test program works, to more granular improvements like allowing users to reposition the Windows task bar.

And since then, the team largely has been delivering to the surprise and delight of many long-time Windows users.

Davuluri has also been working to shift the conversation from which new features are coming to a specific build to what are the outcomes Microsoft wants to enable for specific groups of Windows users.

“There is no one single sort of ring for a billion-plus users on the platform,” Davuluri said. Windows users encompass people who use the product in a variety of different ways, so “we need to get clarity in our minds on the things that we do that lift all boats that raise the entire platform — and things that we have to go do that are specific and unique to each of our sets of users based on how they primarily or typically use the device.”

Full-Stack Thinking. Is there still a role for Microsoft as a PC maker in the coming agentic future? Not surprisingly, given his heavily hardware-focused background, Davuluri insisted there is.

When Microsoft debuted its first Surface devices in 2012, officials said the company needed to build its own hardware to create reference designs and innovative form-factor examples for other Windows PC makers.

These days, most Surfaces that ship arguably are not better, spec- or design-wise, than other PCs. But Microsoft still needs to keep a hand in hardware design to understand the full stack, Davuluri claimed.

Surface plays a key role in how Microsoft develops platform abstractions, incubates support for technologies like pen, facial-recognition, and neural-processing units that later spread across Windows, and optimizes for silicon-to-cloud, he said.

While the company’s attempt to create a distinct category of “Copilot+” AI PCs fizzled, Microsoft continues to try to find AI-centric reasons to convince customers to choose Windows devices. Davuluri and others have referred to the idea of “unmetered intelligence” to attempt to make the case for running AI models locally on PCs.

This fall, Microsoft (and other Windows PC makers) plan to roll out new PCs built on the Nvidia RTX Spark platform. The coming Surface Laptop Ultra, which will be optimized for RTX Spark, is aimed at creators, developers and AI builders, all of whom — Microsoft is hoping — will be fueling the growth of its next target user category: Agents.

Read the whole story
alvinashcraft
15 hours ago
reply
Pennsylvania, USA
Share this story
Delete
Next Page of Stories