Der Untergang der Titanic. Willy Stöwer (1912)

Harbinger of Things to Come

In 2006 or 2007, a software upgrade of the disk controllers on the principal systems went wrong. For a week, they were out of operation. It was one of the biggest crises in the history of the government office CJIB, and perhaps the biggest of all. At the time, Kees and I were working on the systems renewal project at another location. The other database administrators dealt with the issue, as did many others. I knew there was a serious problem because we received regular email updates, but I didn’t realise how serious it was. After a week, the telephone rang at home. It was 9 PM. My wife, Ingrid, took up the phone. It was the IT director. He said there was an emergency and asked me to come to the office. His voice reflected fear. ‘As if the Titanic had hit the iceberg,’ Ingrid later noted.

I hurried to the office and arrived by 9:30 PM. Many people were still in. It was a massive crisis. There was an atmosphere of fear. The database administrator on duty, Dirk-Jan, brought me up to speed. I searched the database log files, found the error messages, and typed them into the Google search bar. In this way, I found an online document with the remedy. I then repaired the failures and brought the systems online one by one. Board members and senior managers were standing around me, watching me type. Solving the issue wasn’t complicated, but few people used Google to find the answer at the time.

I learned that the last backup was over a week old, and the mirror copy was offline. You may know what backups are and why you might need them, but you may not know what a mirror copy is. A mirror copy is a safety measure. If you own a computer or a mobile phone, it contains data. That data is on a device. In the early 2000s, it was usually a hard disk. If that disk fails, your data may be gone forever. If you lose some photographs of your late cat, you might feel sad about it, but after a few years, you get over it, perhaps after consulting your psychiatrist and taking a lot of pills.

Corporations can’t afford to lose their data. That would bankrupt them. Their business is their data. Without it, they are out of business. If you have a backup, only data after the latest backup may be lost, but that can still kill you, especially if you haven’t backed up for a week. We were a government agency, so loss of data wouldn’t have bankrupted us, but it would have been a national political scandal.

Corporate computers have multiple data storage groups in different locations. If one group catches fire or stops operating because of a failed software upgrade, the other groups still have the data. These groups are called mirror copies. We had two groups: the original and the mirror. You can imagine my bewilderment. We had no backup, and the copy wasn’t available. So much had gone wrong that it was a miracle that I succeeded in recovering all the data. But having no mirror and no backup meant we were still on the brink.

An even greater surprise was yet to come. The managers and the board wanted to return to business as usual and run the backlog of batch jobs. Then I said, ‘This is perhaps the most important advice I will ever give in my entire career. Don’t start the batch jobs yet. We are on the proverbial edge of the precipice. Running the jobs might just push us over. Everything went wrong for a week and there is no guarantee whatsoever that it will be all right now. We should bring the mirror copy back online and make a backup first.’

They planned to ignore my advice. Bringing the mirror copy back online and taking a backup would take eighteen hours of precious time. It was a lot of data to back up, as it was everything we had. I was a low-ranking official while the IT director had claimed there was nothing to worry about. But he had left the building. I kept stressing that making a backup was the right thing to do. ‘If something goes wrong that could finish us,’ I told them. It was the worst crisis ever. And so, I pressed for an extensive check-up to see if everything was in order. On that, they could agree.

During the check-up, I found another failure that everyone had overlooked. That scared the managers and the board, prompting them to start another meeting. And then they followed my advice. The IT director was no longer there, and they faced a determined saviour who told them in no uncertain terms that they were about to do something stupid. The operators brought the mirror copy online and made a backup before we resumed normal operations. In this way, rational decision-making prevailed. Nothing went wrong anymore, but no one could have known that beforehand.

If it had gone wrong, the agency would have survived. Operations would likely have had to stop for several weeks—that had already happened for a week—and it may have been impossible to recover all the data. That would have made the headlines. But it never came to that. When the local newspaper’s journalists smelled a rat, the board could tell them that the situation was under control and that the data was safe. My wife’s comparison of this situation to the Titanic hitting an iceberg was not entirely apt. Saving the Titanic once it had hit the iceberg was technically impossible. It would have required a miracle. What I did may have appeared to be a miracle, but it was technically possible.

The audit department later evaluated the crisis. The auditors noted that after a week of failures, all the problems suddenly vanished, which they found already hard to believe. What they found even more difficult to fathom, and they stressed the inconceivability of it during a meeting, was that after a week of irrational decision-making, sanity suddenly took hold as we had brought the mirror copy back online and made a backup. They couldn’t figure out why that happened. Our management had kept them entirely in the dark. I didn’t enlighten them either, as it would make our management and board appear incompetent.

My manager, Geert, complimented me for handling the situation. He stressed that my colleagues had been content with me. ‘I was a pleasant colleague,’ he added. Strangely enough, Geert didn’t say something like, ‘Your contribution was critical in saving us from a disaster.’ It reveals something about Geert’s thinking. To him, it was teamwork. Geert wasn’t present that evening, so he may not have learned the details of what transpired. And so, it didn’t help my career. A few years later, the senior database administrators received a higher salary grade, except me. Geert was involved in that decision. If you save people from their own stupidity, you shouldn’t expect gratitude. In this case, the truth had remained hidden because it would have hurt the egos of those in charge. My dealings with the crisis could be a harbinger of things to come.

Latest revision: 25 February 2026

Featured image: Der Untergang der Titanic. Willy Stöwer (1912). Wikimedia Commons. Public Domain.

Grapevine snail. Jürgen Schoner.

Learning Opportunities

In 2005, my employer embarked upon an ambitious systems renewal project. The IT director aimed to make a mark by replacing our existing IT systems with a brand new solution. As the story goes, the IT director had visited Oracle headquarters near San Francisco. He could get a steep discount on the Oracle ERP solution. I wasn’t a firsthand witness, but several colleagues gave similar accounts. And so, it could be the truth. ERP can administer an entire business. It is a total-for-everything solution, but only if you model your business the way ERP prescribes. In other words, every department must change how it conducts its affairs. It is like a straitjacket. That makes ERP awkward to use.

It wasn’t a good idea to purchase an enterprise solution without first considering whether you need it. But instead of the IT director admitting he had bought the ERP on a whim and writing off the license fee, which would have been a minor loss of a few hundred thousand euros, perhaps, he sought to justify the purchase. Possibly, the IT director wanted to save face, but you wouldn’t expect that kind of vanity from a religious person like him. Business consultants came to assess the quality of our IT systems and to write a report proposing a solution. Unsurprisingly, the report stated that our systems were obsolete and that we should switch to Oracle ERP to save lots of money. And now I spill some beans. These outdated systems were still doing fine fifteen years later.

A strategic information planning phase preceded the project. Cap Gemini business consultants organised brown paper sessions where employees could help identify the business requirements. It was different from what I had learned as a student. I had a good grade, but as a student, I was naive and believed good grades mattered. We had to list our components by writing them on brown paper and sticking them to the wall. The consultants would then call them ‘services’. I wrote the word database on brown paper and stuck it to the wall, and the Cap Gemini business consultant concluded that we needed a database service. That didn’t seem like a proper strategic business analysis to me. Anyone could paste the word ‘service’ after a component’s name. It dawned upon me that it might not end well. Cap Gemini charged over €150 per hour for its consultants, who dressed in suits, leading managers to believe it possessed expertise in strategic information planning.

There were political troubles early on. A Cap Gemini project leader left because she didn’t share the IT director’s vision. He surrounded himself with yes-men. And you can’t have competent people standing in the way. In the Information Planning course at the university, we learned that you must first define the business requirements and then select a solution based on these requirements. It can save you a lot of trouble. The business consultants did the opposite, trying to justify a choice already made. Over time, it grew into an all-encompassing megalomanic plan. Most departments didn’t want the IT department dictating their operations. And so, the consultants planned to supplement the Oracle ERP with several special-purpose modules. Making special-purpose software would render ERP pointless, as the whole point of using ERP was to avoid building such software.

We didn’t dive into the deep end without first testing the waters, so we initiated a pilot project to develop a basic ERP-based system. It was a brand-new system for administering Plukze, a law that allowed the government to confiscate criminals’ assets. Plukze was a straightforward bookkeeping system, and ERP can keep books well, so the pilot succeeded. It was like sending a rocket into the sky and then, after a successful test, deciding to put a man on the Moon. That is an entirely different ballgame.

They trained me to become an ERP system administrator, and then I started as a junior under the guidance of an experienced administrator who was a temporary hire from a software consultancy firm. Once, I made a mistake by putting a database index on maintenance while the ERP system was running. The ERP proved more sensitive to regular database maintenance than the Designer/2000 systems, so it began to malfunction. I mentioned my index maintenance as a likely cause. We restarted the system, which resolved the issue. I remarked that I hadn’t anticipated the problem as regular systems could handle such an operation, which implied criticism of the new system. For all kinds of ordinary operations, the ERP had lengthy instruction sets that you could find on the Oracle support website.

You couldn’t do maintenance work while the system was operational, not even simple, unintrusive things that other systems could deal with. The situation is comparable to Windows failing after moving a file to another directory, and the solution is to restart the computer. You wouldn’t expect it. I had yet to learn that. Yet the ERP was the IT director’s pet project, and it hung in the balance, so everyone was on edge. The project leader, likely fearing for his career, complained about me to higher management, labelling me unfit. I had been open about my mistakes and views, but that is quite problematic in a politically charged environment. They took me off the project. Fear was in the air. A circulating story was that the IT director had once threatened a manager in the lift who had openly disagreed with him during a meeting.


After the pilot proved a success, the enterprise systems renewal project took off. Once it had started, Oracle began to determine its direction. Oracle consultants soon found that we needed additional solutions from Oracle and, of course, the latest technology. Some of these technologies were still in the marketing phase and had not yet proven to work. Our decision-makers, the architects and managers, agreed. So when the special-purpose software proved cumbersome and inadequate, they tried new ideas, such as using BPEL, a business process model language, on top of ERP. This way, the business model could be tailor-made while still using ERP, or so they promised.

No one had done that before, for good reasons, as it turned out. Captain Kirk might have ventured there, but more cautious captains who cared for their crew and ship wouldn’t have. The consultants were there to make money for their employers by making the customers happy, so they tried the idea. Those who were critical would undoubtedly be first in line for a Professional Skills course. Despite working in information technology, I was never keen on using new technologies. Do not use them more than necessary. And so, I had no smartphone until 2020, and I only got one because my employer gave me one to log in to systems from home during the coronavirus pandemic lockdowns. By then, functioning in society without one had become practically impossible.

The project’s pointlessness began to demoralise me. Goals were constantly changing as ideas were always failing. IT employees became stretched to their limits for years in a row. Software releases that took one person and a few minutes with Designer/2000 took hours or even days, and required a dozen specialists working according to a script of up to fifty steps. Working late or on weekends became a regular occurrence, including ordering pizza, Chinese food, or other food, since you can’t bring the system down for so long during office hours. The database administrators bore the brunt of the pressure as the job role expanded to everything related to Oracle. Everything we did was Oracle, so database administration became the focal point for all the advanced stuff. And that began to take its toll, and I started to suffer from stress and repetitive strain injury.

My colleague Kees, the tech genius, was kind and always helpful. You could call him at home anytime, and he would help you. One evening, a year before the system renewal project had started, it seemed that I had messed up a database during a maintenance operation. I called him at home. He came over and helped me check it. But Kees was too helpful. He enthusiastically jumped on every crazy plan our management came up with. He was an innovator and loved new technologies. That made him the darling of management. I lagged behind Kees, but the other database administrators couldn’t keep up at all. It was like having a Trojan horse in our department as the project pushed more and more unmanageable technology into it. Kees didn’t look after the department’s interests but the project’s. The things he invented and built had to be kept up and running by the others. Kees didn’t take many notes, but was always willing to help us. Indeed, the entire system’s renewal project might have collapsed had Kees gone missing.

Our managers had no clue what they were doing and believed that more advanced technology like Oracle RAC clusters would fix things, but that only aggravated our troubles. RAC was pointless, required additional knowledge, and was still prone to failures, even though much less than previously, as the technology had matured and the new systems were on Unix. And so, I would sometimes sarcastically note, ‘The most reliable RAC cluster is one with one machine.’ That was the same as not having RAC at all. Pesky problems piled up on my desk. I constantly had to learn new skills. Project leaders pressured me to work on plans that were bound to fail. That couldn’t go on. I wanted to help people, but it was better not to fix other people’s problems or work on ideas that would fail. People were creating problems at a much faster pace than I could fix them. There was too much work, and most of it was pointless.

The escalating stress compelled me to make radical changes, focusing on the most critical issues while avoiding those that were pointless or doomed to fail. Whenever multiple project leaders pressured me, I referred them to my manager, saying, ‘He should set the priorities.’ Whenever a colleague tried to bequeath his pesky problem to me, I explained how he could fix it himself. ‘It begins with using Google,’ I said repeatedly. At the time, not everyone used search engines. Many still relied on their knowledge, manuals, and support from Oracle. Google has helped me solve more issues faster. Often, someone else has had the same problem and posted the solution on the Internet. But if you solve more problems, you get even more. It was a learning opportunity. If you solve other people’s problems, they stop thinking for themselves. I had to stop doing that.

As things spiralled out of control, our management decided we needed more qualified database administrators. Our salaries were too low to attract the right people, so they gave the new hires and Kees a higher salary grade while leaving me out. They also increased the number of temporary positions. The headcount went from four to fourteen database administrators. And still, we couldn’t handle the workload. Kees was a brilliant technician, and despite that, or perhaps partly because of that, things went downhill.

Kees was quicker on the job than I was, except for one notable occasion when a system administrator had wiped out a disk containing several crucial databases. It caused a crisis, prompting all the database administrators to scramble and restore the data, bringing the systems back online. I was the first to develop a working procedure for restoring databases and getting them back online, which the others then used. It doesn’t seem a mere coincidence. It was the third major crisis that the database administrators had to fix.

Temporary hires came and went. One of them was Ronald Oorlog. His last name means war, and he was ill when the World Peace temporary tattoo from the candy vending machine ended up in my hands. Rene H was the one who often joked about a master copy of the ERP system containing the settings, quoting a line from The Lord of the Rings, ‘Master precious… master precious…’ Another, Chris, told me he had met Jesus in his effort to evangelise me. He said it as if he had encountered Jesus in person. In hindsight, it was a noteworthy coincidence.

As things spiralled out of control, our management decided we needed more qualified database administrators. Our salaries were too low to attract the right people, so they gave the new hires and Kees a higher salary grade while leaving me out. They also increased the number of temporary positions. The headcount went from four to fourteen database administrators. And still, we couldn’t handle the workload.

Yet another colleague, database administrator Raoul, had roots in the former Dutch colony, Suriname. He once made a surprisingly frank statement. He worked for his uncle, he told me, who also came from Suriname. Apart from him, his uncle only hired Dutch people. ‘That is because the Dutch are more reliable,’ he added, ‘They do the job as agreed. You don’t have to check on them.’ That probably was true. Otherwise, he wouldn’t have said it. Surinamese don’t take life as seriously as the Dutch. The Dutch might call the Surinamese relaxed or even lazy, as many of them seem to think you can do what you failed to do today tomorrow. Don’t read this as only criticism. Doing nothing is better than doing something stupid, which we were busy doing at the time.

The year 2008 neared its end, and things took an unexpected turn. God seemed to have a message for me. Long-lasting stress can cause psychosis, so here is the probable cause. My perspective on what mattered changed profoundly. The job became a sideshow, and most of what we did at work was pointless. It was time to set the right priorities, cut my working hours and work on the project I gradually came to name ‘The Plan For the Future.’ Despite that, my performance at the job remained acceptable. We had so many database administrators that database administration became a separate department, headed by a manager who knew the job because he had previously been a database administrator.

This manager held me in high regard because I tried to manage the workload by focusing on what mattered and halting foolish plans. In 2011, he called me an example for all the others in front of everyone. He shared my view that Kees acted like a Trojan horse, causing trouble for the database administration department. Even fourteen database administrators couldn’t handle the workload, indicating that something was seriously wrong. Still, Kees was only a facilitator, not the culprit, because it was the IT director’s pet project, and our systems architects let Oracle drive the agenda. The focus was on new technologies rather than building a functional system. Everyone else went along with it, so sometimes it felt like being the only rational person in an insane environment.

After several years and over 100 million euros spent, the new system finally went into operation. That brand-new system, which had cost so much effort, accepted only incoming messages and acknowledged their receipt. Over a hundred people had worked on it for years. An experienced programmer might build a programme capable of doing only that in one day. It was a bloated set of software and machines with the latest technology, including RAC databases, but it was capable of nothing. The IT director had organised a party in which he proudly announced that we finally had a system made ‘under architecture.’ By phrasing it that way, he made it seem as if architecture was the project’s main objective. It made me think that our architects were incompetent. Those I saw in meetings didn’t dispel that impression, as they spoke vaguely and made simple things seem complicated. It would take me years to nuance that prejudice.

Again, as the story goes, our board then made a politically brilliant move by selling the project to the government in The Hague as a success, arguing that after spending more than 100 million euros, they needed a few million more to fix a few remaining issues. It worked. Appearance can go a long way to hide the facts. The board used that money to hire a software company to rebuild everything in Java. From then on, the ERP handled only financial administration, but they succeeded in making it appear that the new Java software was just an add-on to the ERP. There was so much lipstick that you couldn’t see the pig anymore. The budget was tight, with little money for testing and fixing bugs.

Unsurprisingly, the new Java systems crashed nearly every day, and the problem lists grew so long that no one could keep track of them. The Java systems consumed massive resources and generated large volumes of data, including millions of messages that no one dared to discard. Perhaps you could use them to find out what went wrong. And so much went wrong. These systems were dreadful, not only for us but also for those who used them. They split the database administration department into Oracle Designer 2000 (Boring Old Stuff), the ERP and Java systems (Enterprise Architecture), and the problem-generating department (New Developments), where the cool, advanced stuff happened. We had a say and could give our preferences. I didn’t want to work on the problem systems of Enterprise Architecture, but ended up in that horror show with Sico, since no one else wanted to. So much for having a say in matters. Sico was our ERP specialist, and I had some ERP knowledge, so my fate was sealed.

Over the years, I had grown cynical about everything our board and management were doing. During the crisis and the strategic information planning phase, they had proven to be a bunch of clueless clowns. The systems renewal project confirmed that impression. Only one project succeeded in those years, building an old-fashioned Designer/2000 system. Had we made the other systems using Designer/2000 or its successor, APEX, from the start, it might have cost less than 5% and succeeded. But then again, that was old technology without a future. We switched to Java, which seemed a good choice. My problem was that I looked too far ahead. With Java, you could do much more than with Oracle Designer or APEX, allowing the systems to grow more complex, which would eventually bring us down, or so I surmised. Fifteen years later, that premonition is gradually materialising.

The new Java systems used a hundred times as much memory and disk space as the Designer/2000 systems for doing the same job. That was an understatement. Making a fair comparison was difficult. The outcome of my calculation was 3,000 to 16,000 times as much. However, the new systems initially processed low transaction volumes and would scale up over time. Our architects didn’t see resource consumption as an issue. The price of memory and disks went down over time. Cheap resources make us wasteful. We can do without over 99.99% of the data we store. Imagine that sending an email costs €0.10 per recipient. That would eliminate all wasteful email and spam. And over 99% of the emails I receive, either at work or at home, are not worth reading.

Unsurprisingly, the data storage became overburdened. We were too far ahead of our time. The IT director then fired the manager responsible for data storage, citing that corporations like Google and Facebook can scale up quickly. Only, we weren’t Google, but an insignificant government agency with a few hundred IT employees. I was on leave when it happened, learned about it the following Monday, and thought, ‘The IT director is responsible for the mess. He is the one who should be fired.’ A few hours later, a soccer club, VVV from Venlo, fired its trainer, who had the same first and last name as our IT director.1 Now that is a remarkable coincidence.

The failed systems renewal project became a learning experience. The government in The Hague had smelled the rat and had sent someone to oversee the CJIB and reorganise it. The IT director had to go. Geert replaced him. He was the manager who had promised to restore my confidence in my employer, but left me out for the promotion that the other senior database administrators received. Geert didn’t have a bureaucratic mindset. Rather than depending on procedures, he gave us responsibility and confidence.

We began working in smaller teams, handling a few systems owned by a single department. As a side benefit, there was less hassling between business units competing for resources. And we began working in smaller steps. That makes software development manageable. This way of working is agile. The symbol of agile is a snail. You know, as agile as a snail. Just kidding. Twenty years earlier, the insurer FBTO had already organised its IT department in a similar fashion, which worked well.

The IT department got its act together under Geert’s leadership. Most other government offices have yet to catch up. Red tape still makes our work harder than it needs to be, but rules aren’t an excuse for evading your responsibilities anymore. This story comes with a few learning opportunities. First, if your vision is wrong, hard work can’t make up for it. Second, you can’t change everything at once. It is better to work step by step. Third, things hardly ever go according to plan. You must make adjustments on the way. Fourth, giving people responsibilities with confidence helps to get the best outcomes. We all make mistakes, and if we can be open about them, we can learn from them. Only those who keep making them are unsuitable for their job.

Latest revision: 6 April 2026

Featured image: Grapevine snail. Jürgen Schoner (2005). Wikimedia Commons. Public Domain.

1. VVV-Venlo ontslaat trainer Van Dijk. Nu.nl (20-12-2010). [link]

Jokers on Files.

Joking Jokers

In 2002, I began working as an Oracle database administrator at a government agency. Most people in the Netherlands know about the agency because it processes traffic fines. Therefore, it isn’t popular with the general public, just as the Internal Revenue Service isn’t. If someone asked who my employer was, I kept it vague and said the government or the Department of Justice. It didn’t take long before something went seriously wrong. On my second day on the job, one of the production systems crashed after running the batch jobs, leaving the database corrupt. In hindsight, that was a bit peculiar. After three days of searching, which included a weekend, I still hadn’t found the exact cause. When the operator restored the backup of the previous evening, which was still valid, and ran the batch jobs, the database became corrupt again. It was probably a software bug, so I advised restoring the backup from the previous evening and upgrading the database software to see if that would solve the issue. Instead, the IT director declared a crisis and set up a multidisciplinary task force to address it.

The head of the task force was a corpulent project leader who decided we should find the cause, which I hadn’t uncovered. I just wanted to fix the problem. Every day at 10 AM, there was a meeting to discuss the state of affairs. Every day, I proposed to upgrade the database software to see if it would help. And every day, my proposal was brushed aside. I would have done it myself, but I was a brand-new hire and didn’t have sufficient access rights. And the agency used VAX VMS, an unfamiliar operating system, so I couldn’t install software or restore backups myself. Two weeks later, after the experts had weighed in and after hiring a database corruption expert from Oracle, the cause remained elusive, and managers were getting desperate. Finally, they were willing to consider my suggestion. And it solved the problem. It was a harbinger of things yet to come. During the review, they grilled me for not being interested in researching the cause. I was not a team player and said solving a crisis was more important because it was a production system, so the users needed it to work. And the upgrade demonstrated that it was a software bug.

If you had prejudices about the government, my employer didn’t dispel them. You expect red tape, risk-avoidance, rule-following, and the like. It was all there. One department excelled. If you made the request incorrectly, they would do nothing, even when it was clear what they had to do. You couldn’t disturb them between 10 and 11 AM when they were discussing the work. They didn’t seem to do much, so what did they discuss for 1 hour a day? Some colleagues may remember my so-called crusade against bureaucracy. I often made jokes about bureaucracy and solved problems while ignoring red tape. Still, we perform our job effectively and efficiently, as traffic offenders would agree. And results matter most. Governments are bureaucratic because they implement rules.

Everywhere you go, some people work hard, while others take it easy. I have seen people doing little in corporations for profit as well. At my first project at Cap Volmac, we did nothing for months. Still, I have the impression that the pace of work in the government bureaucracy is, on average, slower than in the private sector. It is hard to put a number on it, but there is a difference. There is less pressure. Decisions take time and require more meetings. This is not a representative picture of the entire public sector. Police officers and teachers may experience stress. But most bureaucrats live calm lives. The hours you work for your employer are working hours. Cap Volmac required me to invest private time in education and corporate meetings. Finally, government employment is more secure.

When I came to work there, another database administrator, Dirk-Jan, a senior who had done several other jobs and hadn’t been a database administrator for long, was already there. After two months, Kees arrived, and from then on, we were three. Kees had a technical background. A few years later, Rene also joined the team. The agency also hired a security officer, a guy in a suit who soon began to make our work harder with unnecessary procedures. For instance, we had to lock up our Oracle manuals in a secure location after work and bring the keys to the porter’s lodge. But our manuals were public information like Windows manuals. Today, you can find this information on the Internet.

At the same time, the system that processed traffic fines had a superuser named after the system itself, with a password equal to the system’s name. Several other systems had the same issue, so the superuser and its password were the system’s name. I notified the security officer, but, being a true bureaucrat, he had more important things to do, such as attending meetings, inventing procedures, and preparing management reports. He added the issue to his list. But an issue like that called for immediate action. And so, I contacted a few senior programmers, and together we fixed that problem.

There were other issues with access rights as well. As they would say in the Professional Skills course, ‘There was room for improvement.’ If a new employee came in, the service desk made a ticket stating, ‘Create user account X as a copy of account Y,’ and sent it from one department to another. Usually, it took two weeks for the ticket to pass through all our departments, and system administrators made errors along the way. Hence, account X was rarely identical to account Y. If people switched departments or left, the defunct access rights were usually not deleted. Perhaps the audit department had figured this out, as our management soon launched a role-based access rights (RBAC) project.

RBAC works like so. You have a role in a department. In ordinary language, it is your job. For your job, you need access to an array of systems. Your job description determines which rights you need, for instance, to read specific data or change it. As a rule, employees should not receive more access rights than necessary to perform their tasks. RBAC is about the rights an employee in a specific job role needs. Business consultants came in and defined job roles and access requirements. A programmer then built an administrative database. However, the database didn’t connect to our systems, so there was no guarantee that the access rights in our systems matched the administration. And if you know how things fare in practice, you know that the administration would soon become stale and pointless. People are lazy, prone to errors, and forgetful. That would change once the administration and our systems are connected. If the administration was wrong, people couldn’t do their jobs properly, so it had to be accurate.

In 2004, I began building DBB, an account administration system, using Designer/2000, while keeping the bureaucrats out of the loop because they would likely stand in the way and make it harder for me. Only my manager and a few colleagues knew about it. DBB automated granting and revoking access rights in our systems, the RBAC way. It took me nine months, as I also had to do my regular work as a database administrator. But when I was ready to implement DBB on the production databases, bureaucrats became aware of what was happening and tried to block it. In their eyes, this was wildcat development. There had been no meetings, nor were there piles of reports to justify it. In early 2005, I introduced it sneakily with the help of the people from the service desk who wanted to use it. They installed the DBB client programmes on their personal computers. And I was a database administrator, so I could install anything I wanted on any database.

The results exceeded anyone’s expectations, including mine. The service desk created the accounts, so the tickets didn’t have to pass through all those departments. We could issue accounts in one day instead of two weeks. The service desk could reset passwords on the spot instead of relaying the request to a department, reducing the time to reset passwords from hours to seconds. And the access rights accurately reflected job roles. So, once DBB was operational, the opposition crumbled, and DBB became a regular application, even though not an official one, which was an essential distinction for bureaucrats. And so, we had RBAC fully implemented.

The DBB logo was a drawing by my wife. She had made it for another purpose. It features several jokers grinning at a set of file folders. To me, these folders symbolised bureaucracy. DBB joked with the bureaucrats, who considered it a rogue system. Supposedly, I was one of those jokers, so I made one of them my avatar on the Internet. DBB was my love child, just like Fokker once was Jürgen Schrempp’s, and for a while, I was overly attached to it. I ensured DBB could survive if I left my employer by producing design documents and manuals. I also built DBB in accordance with accepted Designer/2000 practices. We employed Designer/2000 programmers to maintain DBB. However, I hadn’t followed the proper procedures when building and implementing it, so it never became official. If something went wrong, it was not a mere incident, as would be the case with an official system, but a reason to replace DBB. That is bureaucratic reasoning at its finest. Something went wrong once, which allowed a high-ranking bureaucrat to block further development of DBB.

There have been two projects to replace DBB. In 2006, the first effort stalled because the planners had underestimated the complexity of the matter. They might have thought, ‘If one guy can do it, how difficult can it be?’ In 2016, a new project team realised it was pointless to replace DBB, as it was doing fine, while doing so would have been costly. The newer Java systems ran on Postgres databases and used web access. They did not use DBB. Our management planned to decommission the old Designer/2000 systems so DBB could retire by then. By 2024, DBB finally retired after nearly twenty years of service.

Bureaucrats have a unique way of doing things. In the case of serious incidents, they began filling out a ticket in the incident administration and discussing who should do what, while I pursued the issue. And sometimes, I had fixed it before others had finished filling in their forms. And I didn’t bother filling in forms. The system for which uptime was the most critical went down the most often. The solution was to reboot the system, but the operators hesitated and waited for a management decision. I said, ‘Just do it!’ And then they did. If it went wrong, they could blame me. I didn’t have the rank to make the decision for them and would have received a grilling if it went badly. But time was of the essence. The database was on an Oracle RAC cluster, a cutting-edge technology that had yet to mature. And that was so for a reason. It had to be operational at all times.

American software corporations like Oracle usually launch their products fast and aggressively market them. If customers buy them, they use the sales proceeds to improve these products and make them work properly. That gave American software corporations the lead over their European counterparts because Europeans believed you needed a good product before you could sell it. That was quite naive. Long before their product was good enough, the Americans owned the market and had the budget to make it better than the European product. In this way, Americans discarded failed products without investing much in them, saving costs. So, Oracle RAC on VAX VMS was not a great idea because RAC was in its infancy. At the same time, VMS was an exotic operating system with few customers, making fixing RAC bugs on VAX VMS a low priority for Oracle.

Not surprisingly, the system regularly malfunctioned, preventing users from accessing it. RAC is a cluster of machines accessing the same database. The idea behind RAC was that if one of those machines crashed, the others would remain operational and the database would remain accessible. In reality, the machines often went down in unison because of communication errors caused by the RAC software. And because the whole point of Oracle RAC was to have less downtime, you could do better without it. The crash corrupted the machine’s memory, and looking for the cause was pointless because it was a bug in Oracle software for which there was no fix. The only thing we could do was reboot these machines, which meant shutting them down and restarting them. That would wipe the memory clean, and the system would work again. I figured that out after one time, so the next time, when the symptoms were the same, I didn’t hesitate. The system was critical. It had to be up always. That was why it was our only RAC system. Otherwise, the police might not identify criminals. It was a database with the records of criminals dubbed Reference Index Persons, and the Dutch acronym was VIP, so the Very Important Persons for the Department of Justice.

Bureaucrats often seem to value rules over outcomes, which made me wonder what they were thinking. It could be something like, ‘If I mess things up, no one can blame me if I stick to the rulebook. But if I do the right thing but do not follow procedure and something goes wrong, my job is on the line.’ If something goes wrong, the government hires consultants to investigate the issue and propose changes to the procedures to prevent it from happening again. Consultants thus write piles of reports and make a lot of money on government contracts. Sadly, the next time, the situation may be different, and then it goes wrong again. Over time, the proliferating rules grow unwieldy.

It might make you think it is better to do away with procedures, but that is not a good idea. The proliferation of rules reflects the increasing complexity of society. It is not a problem that you should see in isolation. When a large apartment building burns out, you see once again why there are strict building regulations concerning these skyscrapers. If you aim for fewer regulations, you build these things in the first place. The government’s task is to provide and enforce these rules. There may be room for improvement. It begins with not creating the problem that gave rise to the regulation. Our office processes traffic fines. If we stopped driving cars, most of our work would be redundant. And perhaps, we should give people more responsibilities, but that means accepting that things sometimes go wrong. The result may be that fewer things go wrong.

DBB not only joked with the bureaucrats, but also with me. In June 2010, I received a highly unusual request from a system administrator to manually drop a user account. That hadn’t happened for several years. DBB usually handled that, but it failed to drop this particular account for an unknown reason. The username was ELVELVEN. If you read that aloud, you say eleven elevens in Dutch, referencing the 11:11 time-prompt phenomenon that had once haunted me for a while. Usernames consisted of the first one or two characters of the employee’s first name, followed by the employee’s last name. In this case, the user’s last name was Velven. I don’t remember the first name, but it wasn’t Elvis. To me, 11:11 signals a combination of two related unlikely events. And indeed, the joke had a part two, and it was even more peculiar.

In 2014, during testing of an improvement to DBB, the test indicated that an unauthorised account had infiltrated our systems. The username was the first character of the first name, followed by the last name of the Lady from the Dormitory. Had She been employed by us, this would have been Her username. Her name isn’t common, so this was unnerving, especially since it was the only username that popped up in this list of sneakily inserted accounts. It couldn’t be Her, or could it? It turned out that a guy with the same last name as Hers had worked for us. His first name began with an A as well. And the account wasn’t illegal. I had mixed data from two different dates in the test, which made it appear that this account had sneaked in illegally. But imagine the odds of only this account popping up on that list.

In 2005, after completing DBB, my manager wanted to give me a promotion, and he only wanted to give it to me. My colleague Kees was a tech genius, and he set up the RAC system while I made DBB, so I said he was better than me. My manager responded with the prophetic words, ‘You have the right vision and make it happen despite the opposition. That is far more important than technical skills.’ DBB solved pressing problems using proven technology, while the RAC system only created problems. We used to reduce system downtime, but it produced system crashes, resulting in more downtime. Somehow, I had become his favourite, and that wasn’t because he was exceptionally good as a manager. Many of my colleagues weren’t particularly thrilled. He seemed the type of career guy who never stays long in one job. You know the type. He says he will clean up the mess and then hares off after a year or two towards his next challenge, claiming he has put things on track, only for the next manager to come in and claim he will clean up the mess.

He never put his promise in writing, despite my repeatedly requesting that he do so. Just before he left, I pressed him again. As the promotion had not yet come through, he wrote that there would only be a minor wage increase, then filed it with the human resources department for processing. A few weeks later, they summoned me to the human resources department. A personnel officer had raised a technicality. It wasn’t against the rules, but against their policies. And so, I couldn’t even keep the minor wage increase. That was a breach of contract, plain and simple, but to a bureaucrat like a personnel officer, only rules and procedures count. It would have been possible to fix this within the rules, but there was also a thing called policy, so they didn’t. My previous manager had already left, and they blamed him for not following proper procedure. His temporary replacement didn’t care, as he was also on his way to another job. After putting a lot of effort into getting it in writing and with my manager already fobbing me off with a minor wage increase, they gave me nothing. I was angry and walked out of the meeting.

After arriving home, Ingrid told me that a freelance agency had called to offer me a job. It was the first offer of this kind in several years and the first time since working for the CJIB. As I was already considering leaving, I made a rash decision and resigned. In hindsight, it was a noteworthy coincidence that the freelance agency had called me precisely on this particular day. It didn’t take long before I did get second thoughts. Out of the blue, a strong feeling emerged that the decision was wrong. I can rationalise it by saying there weren’t many jobs near home for me. The issues with my son prevented me from working far away from home. That may all be true, but these considerations were not decisive. And I had done freelance work before, so it was not fear of being self-employed. And a government job didn’t seem right for me. But the feeling grew so strong that there was no choice but to reverse course and try to undo my resignation.

Life had taught me that pride is poor counsel. A new manager, Geert, had come in, and he accepted my change of mind. He pledged to do his best to restore my confidence in my employer. He seemed trustworthy and acted like he was my friend. It turned out that the process of creating a new job position was underway, and that the personnel department had misled me, likely because the employee didn’t know the situation. Geert promoted Kees only because there was one position that my previous manager had promised me. That didn’t inspire my confidence, as even a written promise proved not to be good enough. Yet Geert was planning to promote me as well. He gave me financial compensation, so that the delay didn’t result in a financial loss. And after several years of bureaucratic wrangling, the promotion finally came through.

Latest revision: 2 December 2025

Confucius. Gouache on paper (ca 1770)

Morality Clause

Legal is not always fair

Legal is not always fair. The role of morality in law may be too small. People have different views about right and wrong, so the prevailing view in many Western societies is that people should be free to do as they please unless their actions harm others. Even that view can justify an increased role of ethics in judicial matters. And if moral viewpoints converge, this becomes easier. That begins with setting priorities.

We can get trapped in contentious issues. People reason according to their beliefs and political views. Debates are often framed to make the opposing view look evil:

  • Leftists might be concerned with the rights of criminals in jail but not with the rights of unborn children who are innocent of any crime.
  • Conservatives might be concerned with the fate of unborn children but as soon as they are born in misery their compassion suddenly vanishes.

Science indicates that the degree to which a fetus is a baby gradually increases during the pregnancy. If you are religious and presume that an unborn child has a soul, it becomes a discrete process. When the soul enters the fetus, it instantly becomes a baby. These are two fundamentally different views. If you have one of those particular views, it may be hard to stay moderate. If there is a soul then abortion is killing an unborn child. If there is no soul, and a fetus has an awareness similar to a mouse, it is about the right of women to decide about what happens inside their bodies.

Moral issues are often complicated. Euthanasia can be an act of compassion but it can become a way of getting rid of undesired people. Perhaps criminals have mental issues, but making them suffer can give victims a sense of justice. In business, morality long took the back seat. In other words, in business, you can do as you please as long as it is legal, and making money is a virtue.

In some areas, ethics are needed urgently. Research has shown that CEO is the job with the highest rate of psychopaths while lawyer comes in second,1 possibly because traders in financial markets were not included in the survey. Media came in third because it was a British research. Salespeople make a rather unsurprising fourth position.

Vulture capitalism

Rural areas in the United States are turning into an economic wasteland. Closed-down factories and empty malls dominate the landscape. Communities are ravaged and drug abuse is on the rise. One reason for this to happen is that jobs are shipped overseas. Several factors contributed to this situation, but a major cause is CEOs not caring for people and communities. In many cases other solutions were possible.

Paul Singer is wealthy hedge fund owner. He made a fortune by buying up sovereign debt of countries in trouble such as Argentina and Peru at bargain prices and starting lawsuits and public relation campaigns against those countries to make a profit on these debts at the expense of the taxpayers of these countries.2

In the United States Singer bought up stakes of corporations in distress. He then fired workers so that the price of his shares rose. In the case of Delphi Automotive he and other hedge fund managers took out government bailouts, moved jobs overseas, and cut the retirement packages of employees so they could make a huge profit.2

Vulture capitalists prey on patients too. They buy patents on old drugs that are the standard treatment for rare life-threatening diseases, then raise the price because there is no alternative. Martin Shkreli was responsible for a 6,250% price hike for the anti-retroviral drug Daraprim. Many people died because of his actions.3 Perhaps he should be in jail for being a mass murderer but he is not because what he did is legal.

Profiteering at the expense of the public

In the years preceding the financial crisis of 2008 there was a widespread mortgage fraud going on in the United States. Few people have gone to jail because much of what happened was morally reprehensible but legal. Financial executives and quite a few academics share this view.4 And so nothing was done. Perhaps fraud can be proven some day but that may take years if it ever succeeds.

Healthcare is another domain for fraudsters and unscrupulous corporations. Patients are often not in a position to bargain. Perhaps that is why privatised healthcare performs poorly compared to government organised healthcare. In 2015 the Dutch government introduced the Social Support Act, making municipalities responsible for assisting people who are unable to arrange the care and support they need themselves.5

The municipalities were ill-prepared so fraudsters took advantage of the situation. Most businesses are legitimate but several private contractors enrich themselves at the expense of taxpayers and people in need. The Dutch prosecution is overwhelmed by fraud cases and it is not always possible to get a conviction because of loopholes in the law. Until these loopholes are fixed, several schemes remain legal.6

In the United States hospital bills are feared. A routine doctor visit for a sore throat can result in a $ 28,000 medical bill.7 And so many people in the US go without healthcare because they can’t afford it. Efforts to reform healthcare in the US haven’t succeeded, perhaps because those who send $ 28,000 bills for sore throats have plenty of money to bribe politicians into keeping the US healthcare system as it is.

Attributes of the law

First we have to recognise why it is so hard to prevent these things from happening. On the political front it is because once politicians are elected, they can do as they please until the next election. Lobbyists prey on them. Citizens have few means of correcting politicians, except in Switzerland. The Swiss have direct democracy. Swiss citizens can intervene in the political process when they see fit and fix laws if they think that is needed. Direct democracy might help to fix many of these issues.

Laws are often made with the best intentions but it is not possible to test them in a simulation to see how they will work out in practice. So once laws are enacted, unexpected problems pop up. The process of law-making is slow and it can take years before issues are fixed, at least if they are fixed at all because law-making is often political process, and that can make it rather complicated.

Even more importantly, the underlying principles of law benefit the savvy. The system of law is the way it is for good reasons. No one should be above the law and people as well as businesses should not be subject to arbitrariness. The rule of law implies that every person is subject to the law, including lawmakers, law enforcement officials, and judges. It is agreed that the law must be prospective, well-known, and general, treat everyone equally, and provide certainty. Only, in reality, not everyone is treated equally.

Laws being prospective means that you can only be convicted for violation of laws in force at the time the act was committed. Legal certainty means that the law must provide you with the ability to behave properly. The law must be precise enough to allow you to foresee the possible consequences of an action. Businesses prefer laws to stable and clear. Corporations invest for longer periods of time. If laws change they may face losses. If laws are not clear, investments won’t be made, and a country may end up poorer.

With the rise of neo-liberalism came the era of shareholder capitalism. Making profits became a goal in itself. Greed was considered good. Wall Street traders and CEOs were seen as heroes even when they were just psychopaths outsourcing jobs for profit. There was little consideration for the planet, people and communities. Consumers preferred the best service at the lowest price so businesses were pressed into cutting costs and moving jobs to low-wage countries. Ethics in business were a marginal issue at best.

A bigger role for ethics

More and more people believe that ethics should play a bigger role in business. Activists pressure corporations. That may not be enough. Corporations must be competitive and can’t make real changes if that increases their costs. Levelling the playing field with regulations is an option but that may not be sufficient. The law needs a morality clause, making unethical behaviour unlawful, even though the action itself is not explicitly stated as forbidden in the law. That increases the cost of unethical behaviour.

A randomly selected jury of laypeople could make verdicts on these issues. Perhaps the legal profession should stay out of these matters because it is not a legal matter in the first place. There are a few issues that come with a morality clause. Ethics in business can be a political issue. People may differ on what kind of behaviour is ethical and people may differ on what kind of unethical behaviour should be punished.

Introducing a morality clause to enforce ethical behaviour in business affects legal certainty. It will be harder for businesses to predict whether or not a specific action is legal. Business owners may incorrectly guess moral sentiment and believe they did nothing wrong. The uncertainty that comes from that might reduce the available investment capital for questionable activities. But that may not be so bad. And if immoral profits and bonuses from the past are to be confiscated, it affects the prospectiveness of the law.

International treaties like the Transatlantic Trade and Investment Partnership (TTIP) have been set up to accommodate the unethical practices of corporations and to protect those corporations from making those unethical practices unlawful. That is often what reducing the regulatory barriers to trade like food safety laws, environmental legislations and banking regulations often amounts to in practice.

In most cases, it can be known beforehand what actions are unethical. For instance, investors in corporations that extract fossil fuels should know that burning fossil fuels causes climate change. They are gambling on the future of humanity. So if some countries decide to outlaw the use of fossil fuels then these investors should not be compensated.

Perhaps you have serious doubts about this proposal as it upsets the very foundations of the current system of law. And I can imagine that you think: “Where does this end?” But there is something very wrong with the current system of law. Business interests often take precedence. So do you want the law to protect the psychopaths who maximise their profits at the expense of people and the planet? And do you really think that the law can be made without failures so that corporations and savvy people can’t exploit them?

Featured image: Confucius. Gouache on paper (ca 1770).

1. The Wisdom of Psychopaths: What Saints, Spies, and Serial Killers Can Teach Us About Success. Kevin Dutton (2012).
2. The death of Sidney, Nebraska: How a hedge fund destroyed ‘a good American town’. Charles Couger, Alex Pfeiffer (3 December 2019). Fox News. [link]
3. Vulture capitalists prey on patients. The Sacramento Bee (22 September 2015). [link]
4. How Mortgage Fraud Made the Financial Crisis Worse. Binyamin Appelbaum (12 February 2015). New York Times. [link]
5. Social Support Act (Wmo 2015). Government of the Netherlands. [link]
6. Gemeenten starten onderzoek naar Albero Zorggroep. Eelke van Ark (31 October 2019). Follow The Money. [link]
7. How a routine doctor visit for a sore throat resulted in a $28,000 medical bill. CBS News (31 December 2019) [link]

Master of my own destiny?

It’s a miracle

In early 1993, I began looking for a job. The first application was for an IT traineeship at Cap Gemini Pandata. The company was in the process of merging with Volmac, the largest Dutch software consultancy company at the time. Cap Gemini was an international company. The new company’s name soon became Cap Volmac. Years later, it became Cap Gemini again. They had sixteen vacancies. Some 1,600 people applied, of which they selected 200 for intelligence tests. One of them was me. Before the tests began, other applicants shared discouraging tales about assessments and job interviews they had undergone. The economy fared poorly, so there weren’t many jobs. Many graduates had been searching for a long time. It was discouraging, so I expected to remain unemployed for quite a while. But that wasn’t meant to be.

The intelligence tests went well, despite my impression that I had messed them up. They were mostly about pattern recognition, which was to my advantage. They then invited me to an interview and to take some additional psychological tests. On my way to the appointment, Dirk from dormitory DANT took the seat across from me on the train. That was a bit of a coincidence. I hadn’t seen him for years, and I lived in Hengelo at the time, so not on the campus. Dirk asked me why I was wearing a suit. I told him about the interview. He started laughing loudly. ‘Your tie is a mess,’ he said, ‘Let me fix it for you.’ He then arranged the tie correctly.

Had this particular event, which appeared purely accidental at the time, not transpired, Cap Gemini may not have hired me. The interview and the tests also went well. My misfortune, stemming from not fitting in during my student years, led me to investigate and understand cultures and cultural differences, so it wasn’t hard to translate Cap Gemini’s expectations for its future employees into test answers. The tests demonstrated that I fit perfectly into Cap Gemini’s new corporate culture, which they had just formulated during the merger process. Many senior employees didn’t fit that profile, it soon turned out. Cap Gemini also stressed that I was the master of my own destiny. It was one of their company slogans. Master of my own destiny. Wow! I had never felt like that before.

Cap Gemini hired me and sent me to a junior programming class to prepare for the first assignment. My self-confidence was low because I had manipulated the test to make it seem like I fit in. And it was after five years of everything in my life having gone wrong, leaving me with zero self-confidence. I felt unfit for the job and was afraid to turn up. But then again, if you don’t show up, you have already lost, so I took my chances. These feelings receded once the class had started. They taught us that programmes need a structure: a setup to do things like initialising variables, the body where the real action is, and a conclusion where you report on the results, so like printing output. They also said that it was good practice for the programme’s name to say what it does. So, if the programme prints output, you could name it PrintOutput. That helps make programmes easier to understand.

We learned to work with Oracle by creating screens and reports. I made jokes about a programme nicknamed DoeAlles (DoEverything) that I planned to write. It was to have a setup, a body and a conclusion, so much was already clear at the time. The programme was supposed to do everything, as the names suggest, and everything really meant everything. I was starting my career, so there seemed to be plenty of time to work on it. It is noteworthy because we exist inside such a programme. It was, of course, a practical joke. Programmers make them quite often. More were to follow. I could indulge myself in test scripts, like making a SOAP call containing a message called ‘Good Times Bad Times’, the name of a soap series on television in the Netherlands. Or Mr Huge Overweight Bear ordering an automatic bee milking machine.

My classmates usually discussed what car they would choose once they were on the job. They hardly talked about anything else. I was the only one planning to use public transport. Not surprisingly, I was not a model employee. One classmate, Ad, a cheerful guy from the Eindhoven area, expressed his amazement at the company having hired me. ‘There were 1,600 applicants. And they picked you? How could it happen? It’s a miracle!’ Ad and I had a good laugh about it. His last name, Bourgonje, referred to Burgundy. In the Netherlands, a Burgundian lifestyle denotes enjoyment of life and good food, most often found near Eindhoven. And Ad radiated this lifestyle. He seemed the personification of it. His first name, Ad, and his coming from the Eindhoven area are a noteworthy coincidence as A******* D****** chose to live there, and AD are Her initials.

With regard to the work that awaits us

My first assignment was on a project at the former Cap Gemini’s Groningen office. Volmac had been a centralised corporation with a large office in Utrecht. Groningen was a remote corner of the country, so they didn’t have much business there. The people working in Groningen all came from the Cap Gemini Pandata branch. The Groningen office became vacant as the merger company centralised in the Utrecht office. That made it possible to station programmers in the office in what would become a new concept called a software factory, putting us at the cutting edge of innovative organisational development.

The Volmac people wore suits. Cap Gemini Pandata was the product of mergers of smaller software corporations, so it is a mixture of cultures. Some wore a suit, but most didn’t. The merger company Cap Volmac didn’t require you to wear a suit unless it was the dress code of the corporation they sent you to. I had worn a suit at the programming classes, but arriving at the Groningen office in one made me an oddball. The office was close to home, allowing me to change into casual clothes during the noon break.

On the first day, my colleagues asked me to familiarise myself with the functional designs of a project system named PROBIS that we were to maintain. These were folders with diagrams and formal language. After browsing them for several hours, I was done. Someone said, ‘Oh no! You have depleted your work stockpile for this month entirely.’ On the wall was a printout of the PROBIS data model. It was a tangle of arrows named relations and blocks named entities with obscure names. And inside these blocks was a list of the entity’s attributes.

I had become part of a team of six with a few colourful personalities and a project leader, Arno. KPN’s real estate department, a Dutch telecommunications company, hired us to work on Oracle screens and reports. Only, they didn’t come up with work. There was nothing to do for several months. But we had a lot of fun, and I had far more fun in five months than in five student years. Our project manager, Arno, was an ambitious career guy wearing a suit. He was not a local and stayed in a hotel. Arno organised project meetings and demanded progress reports he could present to senior management, even though we did nothing.

One team member, a graduate linguist, produced eloquently written progress reports. He once wrote, ‘Concerning the work that awaits us, we can only assume a wait-and-see attitude.’ We also mocked the new corporate culture and measured each of us against the scales of the corporate values. I was definitely ‘daring’, a colleague noted. Another team member, Pieter, was an anarchist. He had previously been in the squatters’ movement and always wore the same orange sweater. Perhaps he had two orange sweaters and switched them regularly, but that remains unclear. He was the type of guy who might wear the same sweater for months.

Pieter lived 400 metres from the Cap Volmac office and walked to work. When the project ended, he had to go to another office building in Groningen. He complained jokingly that the distance was twice as long. Pieter often mocked Arno and his ambitions. Once, when Pieter was in the elevator with Arno and a few others, he said, ‘Arno, as the project leader of this project, you have it doubly difficult.’ You could see Arno cheering up. Finally, some recognition. And then Pieter continued, ‘First, you have absolutely nothing to do, and second, you don’t radiate any authority.’

At the time, Windows was gradually becoming the standard operating system. It had new features, like WAF files for sounds. Some team members played around with these features, so if I started my computer, it sometimes made an unexpected noise. I had so much time on my hands that I familiarised myself with Oracle database administration. I also took some courses and did a few exams. But there was so much time and nothing to do, so I sometimes went out late and then caught up on my sleep at the office. Once, I lay down underneath my desk to take a nap.

Then, Arno came in. He planned to give me a pointless assignment, but didn’t see me sitting behind the desk. So he asked Bert-Jan, who sat at the desk opposite, ‘Does B*** sit here?’ In Dutch, sitting can have the same meaning as being. This particular choice of words gave Bert-Jan an escape, so he answered, ‘No, he does not SIT here.’ And that was correct. I was lying there. And so, Arno proceeded to bother someone else with the redundant task. Bert-Jan also came from a remote place, Enschede, close to the German border, so when there was an assignment in Poland, they offered it to him. The managers in Utrecht may really have thought that Enschede was close to Poland.

At some point, high-ranking managers from Utrecht came over to visit us. They planned to set up a software factory in which people at the Cap Volmac office would develop software for the company’s customers. We were the only team in the entire company already doing that. Okay, we weren’t doing that already because work hadn’t come in yet. In any case, we were at the cutting edge of innovative organisational development, and Groningen was the place to see it happen. And so, the Utrecht management big shots, for once, made the arduous trip to the edge of civilisation, Groningen.

Arno was soon busy preparing the office for the visit. He divided the team into departments, including functional design, programming, and testing, each with two employees, and management, which was himself. Arno ordered us to clean up the office, create signs for functional design, programming, testing, and management, and display them on the doors. The managers from Utrecht came by and were impressed. They said, ‘This is how we are going to do work in the future.’ We later made jokes about it, ‘This is how we are going to do work in the future. Doing nothing all day.’

After a few months, the work came in, so Arno was busy managing our work. He constantly demanded progress updates. It soon became apparent we would miss our deadline at the end of July. Before Arno went on holiday, he discussed the situation with our customer and arranged a new deadline for the end of August. Once Arno was gone and no longer bothered us, things suddenly went smoothly, so we met the original deadline in July. When Arno returned, the programmes were already running at the customer’s site. His superiors praised him for delivering a month ahead of schedule. He was on his way to a stellar career. Perhaps he received a nice bonus as well.

There is room for improvement

After nine months, the project ended. My manager was a good one, which proved a stroke of luck, as management roles attract individuals pursuing status and money, so not the best people. And so he took a hint. The next assignment would be in the COBOL programming language. Having only experience in Oracle, I was about to do another course, this time in COBOL. My manager gave me a bulky COBOL book. I browsed it for a while. COBOL seemed tedious compared to Oracle. A few days later, he asked me my opinion about the book. I answered that it didn’t inspire me and that Oracle seemed more fun. He immediately cancelled the course, and from then on, I only worked with Oracle.

My next job was restructuring a database at the telecommunications company KPN. I had some database knowledge. And my managers were impressed that I had familiarised myself with database administration. And so, I did get that job. The company doubted the capabilities of their database administrator, so they hired me to reorganise one of their databases. They took this delicate task out of their database administrator’s hands and gave it to me, a novice with little experience. And so, their database administrator didn’t like me from the start. And I didn’t follow his advice because he was a bungler. After all, that was the reason they hired me. And he showed off his expertise using incomprehensible language, so I often had no clue what he was talking about anyway.

It was a politically sensitive environment. The telecommunications company had previously been a government operation. It was also why the office was in Groningen, as the government had relocated its headquarters to promote regional economic development in this lagging outskirt. The government recently privatised it and put its shares on the stock market. The board wanted to purge the old-fashioned government bureaucrats from management positions to replace them with boastful people in suits. At least, that seemed the plan if you looked at KPN’s job advertisements. A former fellow student of business administration recognised me, even though I didn’t recognise him. He asked me what I was doing there, so I said something about my IT job. That was clearly beneath his station. He worked at KPN as a manager and boasted about the number of people working under him. He fitted the profile of the people KPN was recruiting.

Six years later, KPN nearly went bust because of excessive risk-taking during the Internet bubble. Mission accomplished. Billions of euros went down the drain. And burdened with 55 billion euros of debt, the company had to fire thousands of employees. But that was six years into the future. The head of the department I worked for was a risk-averse bureaucrat fearing for his job. If something went wrong, his head might roll. The database administrator might have felt that his position was on the line, too. He often complained about me to the department head. And the head passed on these complaints to Cap Volmac. I also had a team leader who more accurately reported how I was doing to the department head and my account manager, so they didn’t take me off the job.

Yet, I caused a major accident. To reorganise the database, I needed a list of the tables in the production database and their sizes. Production is the database that matters. The data in the production database is precious. For that reason, I had no access to the production database. There are also databases for development and testing. However, the job required production data, so I prepared a file named tablelist.sql containing a query that returned it. And for once, they allowed me to access the production database using a tool called SQL Plus. I could start the script by typing @tablelist and pressing enter. I started typing @t. The system didn’t respond.

And so, I pressed enter to see if there was any response at all. A few seconds later, the system responded: table dropped, table dropped, table dropped. I cancelled the script, but it was too late. Some precious data was already lost. Back then, in 1994, it wasn’t possible to restore the database to the moment before the accident, which was a new feature that was about to be introduced. Today, you also don’t need to perform database restructuring because the database software does it automatically. The operators had to restore the backup from the previous night, so a day’s work was lost. The database administrator had left a file named t.sql in the SQL*Plus directory, which dropped the tables. Only a bungler would do something like that. It thus wasn’t my fault. Everyone knew, but it reflected poorly on me nonetheless. And it was odd. How much bad luck can you have?

The fuss made Cap Volmac send me to the Professional Skills course. I was not politically sensitive. I was aware of that because of my troubles during my student years, so I found it a good idea. And the course taught me something. Positive framing can contribute to a better atmosphere. You can call it political correctness. If it is a complete mess, you can say, ‘There is room for improvement.’ It is the same mess, but it sounds a lot better. A consultant’s primary responsibility is not to solve problems but to make money for Cap Volmac by making the customer happy. Careers depend to a large degree on social skills. That comes with a drawback. Problems don’t get solved if the required measures are unpopular. I let it all pass me by, focused on my task, and finished the database restructuring job.

The next assignment was at the real estate department of the same telecommunications company. They had hired me to make database queries in their financial system for management information and assigned me to the financial department. Usually, managers or salespeople desired their reports promptly. It was always very important and, of course, very urgent, so I jokingly called them life-and-death queries. It took a few hours to write a query, verify the output, and deliver the report. By then, it was often no longer needed. The availability of the data, rather than necessity, created a demand for these reports. In other words, the reporting usually wasn’t that important. Over time, I found patterns in their requests, so I made a set of standard queries with parameters and delivered 90% of the reports on the spot. No one had ever thought of that, so they saw me as a genius and hired me for longer.

There was a reorganisation at the time. All the departments laid off people, and the financial department I worked for had assigned one employee for dismissal. Then came the accountants to check the administration. And there was, as you can say, ‘Room for improvement.’ Only one individual had done his work properly. It was the man who was about to be fired. That didn’t matter. They fired him nonetheless. He was in his late fifties, about six years away from retirement, and had received a sizeable inheritance. He probably also received severance pay, allowing him to retire early, so he didn’t care. Someone must have selected him. He was a loner. It made me think that the best employees can be the least popular with management.

There was also an opportunity to learn from the department’s management, which usually took a wait-and-see approach. Once, I alerted them of a looming problem, and they answered, ‘We will address the problem when it arises.’ At the time, I jumped on looming issues like a tiger, trying to surprise the problem before it surprised me, so I found their attitude quite funny and jokingly called it ‘management by doing nothing’. But most problems you anticipate never materialise, and if they do, often in a different manner than expected. And so your preparations are nearly always in vain. I was too on edge and had to calm down.

Hit the moving target

Cap Volmac emphasised employability. You were responsible for your employment by ensuring your skills remained in demand and up to date. That was what they meant by being master of your own destiny. And in the constantly changing market for skills, you had to ‘hit the moving target,’ they called it. You must go where the demand for skills is, and anticipate what is coming. During a company meeting, they once gave us toy guns to aim at moving targets on a large projection screen in the front of the room. Times were changing, and I had been working on the real estate department’s obsolete systems for a few years. My manager and I agreed that catching up with the latest developments was better than maintaining outdated software.

In 1995 and 1996, Oracle introduced two new development tools, Developer/2000 and Designer/2000. They sent me far away from home, to Zeist, where Cap Volmac had just started an Oracle Developer/2000 software factory modelled after the example we had previously set in the Groningen office when we were pioneering on the cutting edge of innovative organisational development. They were a group of people working with Oracle Developer/2000. Zeist was far from home, so they put me in Hotel Heidepark in nearby Bilthoven. On Mondays, I took the first train from Groningen to Den Dolder, where I had a parked bicycle at the train station. From there, I went to work at Zeist.

In the evening, I went to the hotel in Bilthoven, where I parked my bicycle between the expensive cars. I stayed there during the week, and on Friday afternoons after work, I took the bicycle back to Den Dolder and took the train from there to Groningen or Sneek to visit Ingrid, or to Nijverdal to visit my parents. You could eat at the hotel, and they had a posh lady with a German accent who would advise you on the menu. The Cap Volmac budget allowed me to eat there only twice a week, and only the cheapest menu, so she soon left me alone. Bilthoven was the posh village A******* came from, and She had repeated the word Zeist many times for no apparent reason. That was peculiar, a bit magical even. If witches did exist, which seemed unlikely, A******* had to be one. It intrigued me.

There was a booklet issued by the university with the home addresses of the students’ parents in my belongings. Because I stayed in Bilthoven for several months, and had a lot of time on my hands, I cycled to the street where A******* had lived and looked at the house where She had lived two or three times, and once checked the name on the front door to see if the name tag matched Her last name. It was not far from the hotel. Her parents still lived there, it seemed. I didn’t expect to run into. It was a weekday, and She would probably visit Her parents during weekends. On one of those trips, an elderly lady walked a dog near that house. The dog pooped. I saw it happening. The lady said, with that typical hot potato in her mouth, ‘He never does that.’ It was the kind of village where dogs don’t poop. It illustrated how different A*******’s life must have been from mine.

After a few months, Cap Volmac relocated the software factory to Utrecht, so I moved there as well and ended up in a posh neighbourhood, Maliebaan. The rent was high but less than a hotel. The latest tool was Oracle Designer 2000, which Oracle introduced around that time. It had a promising future. Designer/2000 could generate Developer/2000 programmes, so you didn’t need to write them yourself. I gained experience with Developer/2000 and Designer/2000 and took several additional courses. The Cap Volmac management hyped a new buzzword, OTACE, which stands for ‘On Time Above Customer Expectations’. With a fixed deadline, you could lower the customer’s expectations by promising less than you plan to deliver. Making as few promises as possible is always a good idea, as lowering the bar increases the chance of success.

After a year, I hoped for a Designer/2000 assignment near home. My manager agreed. Yet, there was trouble brewing once again. An account manager came up with a prospective assignment. I knew him. He was a rough guy who only cared about his bonus. People like him might have done well in the Wild West, playing poker, staring down opponents and engaging in brawls in saloons. I told him I had specifically aimed for a Designer/2000 assignment because I had invested a lot of time and effort in it. He said, ‘The customer is planning to switch to Designer/2000, and you can play a role in that process.’ He didn’t disclose any additional information. His vagueness put me on high alert, and I presumed he was planning to dupe me. And so, I warned him that I would decline the job if it weren’t Designer/2000.

I contacted my manager and discussed the situation with him, telling him that something did not seem right. I had invested a lot of time in Developer/2000 and Designer/2000 and had been away from home for a year. I would rather stay in Utrecht for a few months to get a proper Designer/2000 assignment. Designer/2000 was just released, so work had yet to come in. If you intend to hit a moving target, you must aim just in front of it, considering the direction of the movement. It takes time for the bullet to arrive at the target. By then, the target had already moved a bit further. So, I was already there, where the target would soon arrive. And there was plenty of work at the software factory. And so, I asked him if I could decline the job if it weren’t Designer/2000. He said that sales targets were important and we all must do our bit. But I was supposed to be the master of my own destiny. Knowing that my Designer/2000 skills would soon be in high demand, I said I would look for another employer if that was his stance. He then gave in.

The account manager pressed on, ready to make the kill. Before the interview with the customer, another department of the telecommunications company, we once more discussed the assignment. And again, he didn’t say much more than, ‘They are planning to switch to Designer/2000, and you can play a role in that process.’ It seemed he was planning to ruin my career for his bonus. Once more, I warned him in no uncertain terms. And despite his name being Warner, he didn’t appear to understand what a warning was. Then came the interview. The department manager told me they planned to use Designer/2000, but their people would do the Designer/2000 work. They needed me to maintain their obsolete systems. And my resume was perfect as I had been looking after the old programmes of their real estate department for a long time. That was the role I could play in the process. And the account manager knew that all along.

Assuming the account manager was ready to close the deal and seal my fate, I declined, saying I hadn’t been informed of the assignment’s nature. And so I humiliated the account manager in front of the customer, making Cap Volmac lose face. The account manager probably believed he could get away with it. Indeed, I didn’t want to cause a fuss again, but I thought Designer/2000 to be crucial for my future employment. Life is a bitch. If you end up with obsolete skills, you end up unemployed. Later, my manager said that my actions had raised several eyebrows in higher management. I was a model employee, a true master of my destiny, but more than Cap Volmac had hoped for.

A job in Groningen soon came. At the KPN pension fund, they were in the information planning stage, determining whether rebuilding their pension system in Designer/2000 would be possible. I was there for only a few months to make the pilot programmes in Designer/2000. Their data model missed a crucial component, registration dates, allowing you to recalculate claims using the most recent data or go back in time and do the pension calculation based on the available data of that time. People could make errors that need correction or change the calculation rules, perhaps even retroactively, making registration dates a crucial feature in pension calculations. You also needed a complete account of the previous registrations so you couldn’t overwrite them. It was not that difficult to figure out. Once I had done it, a pension fund employee told me the old system had that feature as well. If the wheel hadn’t existed yet, I might have invented it.

Soon afterwards, I went to the Niemeijer tobacco factory. The head of the production department desired a planning system. He didn’t trust the old-fashioned IT department. He had the budget and preferred to spend it on a system he wanted rather than on what the IT department would offer him. And so we had a room in the factory rather than in the office building where the IT department was. Niemeijer had hired an information analyst, Feikje, from a local IT bureau named Vertis. Vertis primarily operated in the province of Groningen. It specialised in factory production and Oracle, as it was a spin-off from a local potato-flour factory’s IT department, which ran its systems on Oracle. And so, they knew factory production planning. That was indeed a specialism.

The system dealt with products and production lines. The production lines had speeds and options that allowed them to produce specific products, so if there was a production requirement for a period, such as a week, the system could plan production, knowing which production lines could make these products and at which speeds. I could never have designed such a system. Feikje was unwilling to compromise on quality, so the system became much better than the head of production had anticipated. It showed all the possible options for which production lines to use for which product, some of which no one had ever considered. Feikje had the backing of the production department, so there were feuds with the IT department. Their chief information architect was near retirement and didn’t understand what we were doing. He bothered Feikje with silly questions that annoyed her.

Feikje had married a dentist. She had previously lived in the same neighbourhood, Lewenborg, where I lived at the time. There, she had a conflict with the same dentist I had left because I didn’t trust him. After moving to Lewenborg, I selected this dentist. At the first visit, he took X-rays and said a cavity was developing beneath a filling. He showed me the picture and pointed at a dark spot. Another filling had a similar dark area beneath it, which he claimed was not a cavity. I was unqualified to evaluate these X-rays, but the areas were alike, so the dentist lied. Feikje was already dating her future husband, who was a dentist-in-training at the time. They also realised something was wrong there, which adds some credibility to my suspicion. In hindsight, it was a noteworthy coincidence.

Walking out of Paradise, once again

Ingrid and I began planning to live together. Meanwhile, I considered becoming an EDP auditor as my graduation assignment was on EDP auditing. It could benefit my career, as programming would not lead to higher ranks or salaries. That made it a dubious choice as I like programming, not desk work and telling others what to do. EDP auditing also meant switching employers and joining an accountancy firm. Despite having heard about those firms’ long work hours and elitist attitudes, I applied to Moret Ernst & Young. They invited me to an interview. They expected me to work at least 40 hours per week and then study 20 hours without compensation. Had the idea of becoming an EDP auditor truly inspired me, I would have done it, but programming was fun, making the sacrifice unattractive. Their arrogant attitude also turned me off. I said that the prospect of working such long hours didn’t excite me, and expected not to hear from them again.

A few weeks later, at 11:30 PM, the telephone rang. The phone awoke me, making me wonder what kind of idiot was calling me in the middle of the night. It was Moret Ernst & Young begging me to work for them. The guy on the phone said he couldn’t discard my resume. I had skills that were in high demand. He seemed to consider midnight regular working hours, so I declined again. He didn’t realise that calling someone in the middle of the night was insane. I remember him saying they were desperate and even tried to hire leftists like me. So, people who didn’t like to be called at night were leftists. Shortly afterwards, their firm had a recruitment advertisement in a magazine with a giant picture of a salmon with an arrow pointing at its nose and the text, ‘We are only interested in the salmon’s nose. We have no interest whatsoever in the rest of the salmon.’ They only wanted the cream of the crop and were not at all interested in the remainder. Ingrid and I laughed about their smug arrogance while they had been begging me to work for them.

In 1997, I moved to Sneek. After moving, I looked for a job nearby because the long bus rides to Groningen soon proved a drag on my physique. There was a vacancy for a functional designer at FBTO, an insurer in Leeuwarden. They invited me for an interview, but I wasn’t entirely sure whether the job was right for me. It was not programming but writing out specifications, so I hesitated. The salary was also low, leading them to think that was the reason, so they raised the offer, which was still low. Taking a job only because it is close to home is not the wisest of decisions. Months later, I decided to do it against better judgment as there were few jobs in the area. And because they also lacked alternatives, they hired me despite my hesitations, which wasn’t the smartest idea either. I later learned that the personnel officer had warned them against it. Once on the job, my task turned out to include serving as a project leader, which also proved quite uninspiring.

The insurer had split the IT department into smaller teams working for a business unit. Every three weeks, we planned our tasks for the coming three weeks, and a business unit representative determined the priorities. It worked well because there were fewer political games, such as business units competing for resources. The IT department was exceptionally well organised compared to what I had seen elsewhere. They had done an excellent job. This way of running IT departments became commonplace in the following decades and is known as Agile.

The people in the team knew what they were doing, making me redundant as a project leader. There is no point in managing people who know what to do. The atmosphere was friendly. Having grown accustomed to challenging conditions and people trying to make my life miserable, I soon felt out of place. I could get used to the friendliness, but not the job itself. All those documents, meetings, and priorities were dreadful, making me jealous of the cat, Sandor, who didn’t go to work and lay around doing nothing. I had cheerful thoughts like, ‘Only 35 years left until retirement.’ If that is optimism, then that is not a good sign. Programming was much more fun. I was qualified for Oracle, but FBTO didn’t use it. I decided to try my luck as a freelance Oracle specialist in Designer/2000 and database administration. And so, I walked out of Paradise again, but this time out of free will. After all, Cap Volmac had taught me to be the master of my own destiny. But an ominous incident would soon suggest I was not.

Freelance jobs

After contacting a few freelance bureaus, which led to an ominous incident that further suggested A******* interfered with my life using magic, I began working for a small bureau named Betamax, led by Martien, a retired manager. He talked as if he had a hot potato in his mouth, so an elite accent, but was nonetheless an agreeable man. He made lots of money but was probably in it for fun, to have something to do rather than watching out of the window at how the grass grows on the neighbour’s lawn and playing bingo with his colleagues-in-age in some hall with orange juice on the table.

He had a sense of humour, so we had a good laugh after I had once answered the phone with ‘Superb***’ because I had expected a call from Ingrid. And he said that I was a man of few words, but that everything I said was meaningful, meaning that I didn’t engage in small talk, so a keen observer he also was. The first year, I worked at the insurer Univé in Zwolle. They were outsourcing their IT department and needed someone to monitor their remaining databases until the system transfer was complete. I was there just in case something happened, so there wasn’t much to do. To pass the time, I studied to become an Oracle-certified professional database administrator.

It was easy money. I made €70 an hour for doing close to nothing. My colleague, a regular employee, might have been jealous, and understandably, as I made twice as much as he did for doing nothing. He constantly criticised me. I regularly did extra things I wasn’t supposed to do to prevent problems. If you get paid handsomely, you make the most of your task. His criticism began to annoy me, so on one occasion, I did not fix an issue. I could have done so, but it was not my job. He criticised me for that also. Having extensive experience with similar situations, I said, ‘If I had done it, you would have criticised me for that, as it is not my job. Whatever I do, I can’t do it right anyway. So, what is the point of trying?’ He took the hint, and the criticising stopped.

Univé was one of the few organisations that still had a time clock. You had to check in if you arrived at work, and check out if you left. I had not seen that for a long time. I had no car, but one of the Univé employees lived in Sneek, so I often drove with him and paid for the trips. It was quite a distance, and I didn’t like travelling every day. Travelling wore me out, even when someone else drove. And so, I rented a room outside Zwolle in the countryside and stayed there a few nights every week. The landlady, Ms Mallinckrodt, was a divorcee, and as I remember, her former husband had been a CEO or owned a business. He ran off with his secretary, who was probably much younger than she was and likely good-looking as well, so it was a classic script. She had two sons who were already grown up and no longer lived with her. She had an air of elite status and sometimes said her home was worth over a million guilders. One remark made it clear she viewed me as a kind of peasant. ‘He is not a man of the world,’ she once confided to my wife, Ingrid. Ingrid was pregnant at the time, and sometimes came over, later also with our baby.

Ms Mallinckrodt told me that she had little income and needed tenants for that reason. She also seemed to desire male companionship, not for a relationship, but a man in the house to talk with. And as a woman alone in a home, with strangers roaming about, you never know. She lived in the countryside, so I cycled to work and sometimes went on bicycle trips in the area, thinking my life had turned for the better. I had a family and was making a lot of money. I couldn’t have imagined that in late 1989. It wouldn’t get any better than that, I surmised. Ms Mallinckrodt was also kind. She once lent us her car during an emergency. Ingrid had come over, but she had left the heating on because we had a tenant, the infamous Mr V, but she had closed the radiator valve near the thermostat, making me fear the installation would overheat. We returned home late in the evening. If we had used public transport, we might not have made it home.

At the end of 1999, a software consultancy firm named CMG hired me to work on the euro preparations for the Friesland Bank, a small independent bank in Leeuwarden. It was still independent, perhaps because the Frisians were proud nationalists. They had their own language and supported local businesses, such as their bank and insurers. The people from CMG wore suits, and since the job was at a bank, I wore one too. One of their systems required special attention as it was a perfect example of feature creep. The bank had a system bloated with exotic features but lacked people who understood it. It was the marketing department’s wet dream, but the IT department’s nightmare. It was a company savings system. Its customers were employers who could open savings accounts for their employees. The account managers at Friesland Bank offered their customers a wider range of options than those at other banks.

On top of that, Oracle had built the system on a fixed price, so Oracle had given minimal effort to maximise its profits. Oracle had used inexperienced programmers and cut back on testing. As people at the bank didn’t understand the system, they got away with it. And so, there was as much room for improvement as there could possibly be. The following issues made the conversion complex:

  • Each account could have three monthly balances: a savings balance, a premium balance and an accrued interest balance.
  • Employers could negotiate interest rates and their terms, so there were hundreds of different combinations.
  • The interest could be added to the month’s balance, paid out, or deposited on a separate interest balance in the account.
  • There were bugs in the system, so the balances didn’t add up, and, as it later turned out, the system didn’t calculate the interest correctly.
  • The balances were the sum of all the transactions on that balance. One euro was 2.20371 guilders, leading to tricky rounding errors.

Converting that system to the euro was cumbersome because all transactions and balances had to be in balance, month by month and by category within each month, whereas the other systems had only one balance. And, contrary to the other systems, many balances didn’t already match due to system bugs. The project leader from CMG first asked me to investigate the system and write a plan, which I did. It was a global plan with approaches to known issues. It was impossible to foresee what other problems might arise, but the plan had the promise of success.

It took me over a year to build the conversion, and the conversion programme ran for four days, while the other euro conversions ran for a few hours at most. The programme could crash due to insufficient memory, perhaps caused by a leak in Oracle PL/SQL, which was relatively new at the time. Yet, the programme was restartable and would resume where it had stopped. The project leader didn’t like the idea of the conversion taking so long. He pressed me to improve the conversion’s performance.

That was a waste of time and resources, so I told him that it took so long because of the system’s complexity. It was not a current account system that had to be operational, but a savings system that could be down for a week without customers noticing. There was no internet access to bank accounts at the time. The contributions came in once per month, and at the end of the month, so it could remain out of operation for four days. There was no reason to worry. He wasn’t satisfied with my answers, so he hired a performance expert to review the programme. The expert couldn’t make it run faster, either.

The bank was close to home, so I took the train every day. One day, on the way to Leeuwarden, the train suddenly halted in the middle of the countryside. The train driver hared into the meadows to a sheep in distress. It lay upside down. After returning, the driver explained on the intercom that the sheep might have died otherwise. If it couldn’t get upright, it might suffocate. Then, the train continued its trip. It was the first time I had seen a sheep upside down and also learned what to do about it. That came in handy, a few years later, when Ingrid and I were walking with my son Rob near the Weerribben, when a sheep had ended up in this unfortunate position. I jumped over the fence and put the sheep on its legs. That was my first sheep saved.

Meanwhile, a serious calamity had occurred. An overzealous account holder with some calculation skills had verified the complex interest calculations and found a discrepancy. And it soon proved to be a symptom of a much bigger problem. Many interest calculations had gone wrong. Some were too low, while most were too high. The bank had paid 500,000 guilders in interest too much, which it then decided to collect. Account holders received letters requesting them to refund the excess interest. Some employees found it unwise because it wasn’t much money and would reflect poorly on the bank. It might have been better to fix the problem by quietly giving people what they were due when their interest calculation was too low, and leaving the rest as it was.

That was not what the bank’s board decided to do. They gave me the task of correcting the interest calculation, as I was the only one who understood the system. It included calculating discrepancies in collections or payments. The problem was not only in the interest rate calculations but also in data faults, such as missing or duplicate interest rates or balances that didn’t add up. As they would have said at the professional skills course, there was room for improvement. More plainly stated, it was a total mess. No one understood what was happening. And no one seemed to care. I found myself in a morass, alone. No one else could help me. That didn’t unnerve me, but I had to be careful. If I made a mistake, no one would notice until it was too late. Patching the interest calculations became nearly as time-consuming as the euro conversion.

There was even more room for improvement than I had previously feared. Once the improvements for the interest calculations were ready, the tester ran the usual test cases and gave the changes her blessing, much to my dismay. I was amazed at the sloppy attitude of the people responsible. These test cases hadn’t uncovered these errors in the first place. I told the manager responsible for the operations, ‘If we make another error, and the bank has to correct it again, you will have a major public relations disaster. More testing is required.’ I proposed doing the tests myself by loading a selection of data covering all known situations into an Excel sheet, performing the interest calculations in Excel, then running a test and investigating any differences to determine whether the error was in Excel or in the system itself. My manager agreed, and so we did it like so. It was not 100% testing, but in all likelihood, all the significant errors would manifest. After performing these tests, we implemented the changes. Subsequent interest calculations showed no errors. After the euro conversion had finished in January 2002, they let me go.

It seemed that not everyone liked me. I focused on getting the job done and had to work around other people’s sloppiness. I never used harsh words, but saying that the testing is insufficient can rub people the wrong way. You could interpret that as incompetence. It doesn’t necessarily mean the tester was incompetent. The system was far more complex than those at larger banks, so the decision-makers had made a judgment error to begin with. And I had a deviant working schedule, and worked fewer hours. When my manager once grilled me on the train for leaving 30 minutes early for an appointment, I answered that the bank only paid me for the hours worked and that it wouldn’t cost them anything. And that it was agreed upon.

She didn’t seem okay with the answer. I had made the agreement with the software bureau CMG, so not with the bank itself, so she may not have known about it. They had their rules, and deviating from them was not appreciated. Ingrid had once worked at the bank as a cleaning lady before we met. She sometimes took her mother’s car. They didn’t allow her to park in their garage, saying it was for employees, but they had already left the building. Only after Ingrid quit her job and the bank couldn’t find a replacement did they offer her a parking spot. I had tried to get a regular job there, but they had turned me down. That turned out to be my good fortune. The bank went under after the 2008 credit crisis. A larger bank took over their operations.

The economy fared poorly. I couldn’t find a new project, and remained unemployed for several months. Officially, Betamax still employed me. I had worked for Betamatch on temporary projects for more than three consecutive years, which automatically made me a regular employee. Martien, the owner, asked me to quit my job, but that would make me ineligible for unemployment benefits. And I had warned Martien several times about the situation that might arise, which he believed was so remote a possibility that he didn’t seem to care, and so he let it happen. I asked him to fire me instead. There is no work, so that wouldn’t be an issue. Martien, a gentleman whose business was still doing well, didn’t like to fire people, so he offered me a contract with a low salary and a bonus if I brought in money. Yet, without improvement in sight, I started seeking regular employment. After a few months, I found a job at a government agency that processes traffic fines.

Latest revision: 7 April 2026

Featured image: Cap Gemini logo