Breaking up with Microsoft is hard to do. Just ask Peter Hofmann, the man leading the City of Munich's project to ditch Windows and Office in favour of open source alternatives.
The project took close to a decade to complete, has seen the city wrestle with legal uncertainties and earned Munich a visit from Microsoft CEO Steve Ballmer, whose pleas to the mayor of Germany's third largest city not to switch fell on deaf ears.
Munich says the move to open source has saved it more than €10m, a claim contested by Microsoft, yet Hofmann says the point of making the switch was never about money, but about freedom.
"If you are only doing a migration because you think it saves you money there's always somebody who tells you afterwards that you didn't calculate it properly," he said.
"That was the experience of a lot of open source-based projects that have failed," Hofmann noted. They were only cost-driven and when the organisation got more money or somebody else said 'The costs are wrong' then the main reason for doing it had broken away. That was never the main goal within the City of Munich. Our main goal was to become independent."
Munich is used to forging its own path. The city runs its own schools and is one of the few socialist, rather than conservative governments, in Bavaria.
Becoming independent meant Munich freeing itself from closed, proprietary software, more specifically the Microsoft Windows NT operating system and the Microsoft Office suite, and a host of other locked-down technologies the city relied on in 2002.
The decision to ditch Microsoft was also born of necessity. In 2002 the council knew official support for Windows NT, the OS used on 14,000 staff machines at the council, would soon run out. The council ordered a study of the merits of switching to XP and Office versus a GNU/Linux OS, OpenOffice and other free software.
As well as being tied to Windows upgrades, Munich faced becoming more tightly locked into the Microsoft ecosystem with each passing year, Hofmann said.
"Windows has developed from a pure PC-centred operating system, like Windows 3.11 was, to a whole infrastructure. If you're staying with Microsoft you're getting more and more overwhelmed to update and change your whole IT infrastructure [to fit with Microsoft]," according to Hofmann, whether that be introducing a Microsoft Active Directory system or running a key management server.
Free software was ruled the better choice by Munich's ruling body, principally because it would free the council from dependence on any one vendor and future-proof the council's technology stack via open protocols, interfaces and data formats.
The prospect of such a high profile loss, and other organisations following Munich's lead, spurred Microsoft to mount a last ditch campaign to win the authority back. A senior sales executive at the time told general managers in EMEA "under NO circumstances lose against Linux." Steve Ballmer himself took time out of a skiing holiday to make a revised offer in March 2003, followed two months later by Microsoft knocking millions of Euros off the price of sticking with Windows and Office.
The lobbying failed to change Munich's mind, and in June 2004 the council gave the go-ahead to begin the migration from NT and Office 97/2000 to a Linux-based OS, a custom-version of OpenOffice, as well as a variety of free software, such as the Mozilla Firefox browser, Mozilla Thunderbird e-mail client and the Gimp photo editing software. It became known as the LiMux project, after the name for the custom Linux OS the council was rolling out.
Making sense of the IT zoo
Nine years is a long time for a desktop migration by anyone's standards, but the LiMux project was always going to be more than a simple transition.
Originally planned as a soft roll out that would be complete by 2011, the project was extended when it became clear that the migration to free software would be more challenging than first thought.
The complexity came down to the way IT was managed at Munich: twenty two different units handling IT for different parts of the council and each with differences in the Windows clients and other software they used, varying patch levels and no common directory, user, system or hardware management.
"[The council] had 22 different units with their own IT, with totally different kinds of systems for the networking, operating and user directories. It was all a big zoo," said Hofmann, adding there was no detailed overview of the hardware each user relied upon or the software they needed to do their job.
Without a clear picture of its IT estate, Munich found it was taking too long to deal with unexpected problems thrown up when rolling out LiMux.
"If you set up an old PC with the new system you'd start recognising 'Whoops, that isn't there or there's hardware that needs to be reconfigured' and at that stage that's clearly too late. You have to know what's going on before you roll it out."
Munich chose to standardise processes for capturing each department's infrastructure and requirements and for testing and release management, at the cost of adding several years to the project's completion date.
"That took a large amount of time to get over these heterogeneous systems," said Hofmann.
A single unit was put in charge of maintaining and supporting the LiMux client, as well as implementing and providing common tools for user and system management.
The nature of the project had changed, from a desktop migration to cleaning up much of Munich's IT infrastructure and the way it was managed - a move in keeping with the council's motto for the project: "Quality over time".
In spite of the delay in completing the project, Hofmann said the authority had always planned to take its time.
"We never planned to carry out a big bang migration. From the start we planned a slow migration, carrying out the migration and the development of our LiMux client in parallel."
The time taken to complete the project is one of many reasons that Microsoft has attacked Munich's move to LiMux. A report criticising the project, produced by HP for Microsoft, claimed the Redmond software giant could migrate 50 to 500 desktop PCs per day if upgrading to a Microsoft OS and office, suite compared to the eight per day it said was being achieved under the LiMux project.
However, by Hofmann's reckoning, that slow and steady migration is one of the reasons the project has largely managed to stay within its budget with minimal disruption. The project finished within budget in October 2013, with more than 14,800 staff migrated to using Limux and more than 15,000 to OpenOffice.
Retooling for Linux
A myriad technical challenges emerged as Munich tried to reconfigure an infrastructure littered with proprietary formats and protocols to play nicely with LiMux and free software.
Large chunks of the software used by the council were built using Microsoft technologies. For example, a sizeable proportion of Microsoft Office macros were written in Microsoft's programming language Visual Basic, while other departments were tied to Internet Explorer by a dependence on ActiveX. This preponderance of lock-in interfaces was described as "awful" in 2010 by then deputy head of the LiMux project Florian Schiessl.
As would be expected, the council has had to shell out a chunk of change on getting applications to work on LiMux - a custom-build of the Ubuntu flavor of Linux - some €774,000 as of last year.
At the time the migration started, the council used about 300 common office software programs, such as web browsers and e-mail clients, and 170 specialised apps tailored to different roles performed by the council. These specialised apps ranged from large-scale IT systems down to macros and templates linked to Microsoft Office.
Understandably, migrating these apps to run on the LiMux OS is one of the areas where choosing LiMux over Windows cost Munich, with the work on migrating apps to LiMux costing €200,000 more than porting them to a newer version of Windows.
Offsetting that is the estimated €6.8 million savings the council says it had made as of last year from not having to licence a new Microsoft OS and office suite.
The lion's share of Munich's applications, about 90 per cent, are accessible via LiMux. Most have been ported, while others are running as web apps, inside virtualised containers or via terminal servers.
A small number of apps have proven impossible to port, make accessible or switch away from - particularly software whose use is mandated by the German government - and have to be run directly on Windows machines.
While the council has weaned itself off the majority of Microsoft technologies, Munich still experiences friction where it rubs against proprietary software in widespread use elsewhere.
One of the main complaints from Munich staff using LiMux and OpenOffice is about incompatibilities with Microsoft Office. Documents, spreadsheets and other files display some fonts, pictures and layouts differently in OpenOffice than in Microsoft Office, and changes to some documents are not properly logged.
Munich hopes to ease some of these problems by moving all its OpenOffice users to LibreOffice, a process which will get underway at the end of this year. Munich has worked with other users of LibreOffice, including authorities in the German city of Freiburg and the Austrian capital Vienna, to pay for updates to LibreOffice that should improve interoperability with Microsoft's office suite.
The complexity of moving from proprietary software after years of being a Microsoft shop might explain why more organisations haven't followed in Munich's footsteps, and why some, like the German municipality of Freiburg, have given up on their own shift to open source. Last year Freiburg scrapped plans to move to OpenOffice claiming it would have cost up to €250 per seat to resolve interoperability issues.
"We thought from the start we would have other organisations follow us but it's really not easy," said Hofmann.
Hofmann's warning against justifying the jump to free software on cost alone seems well-grounded given how hotly Microsoft has contested costings for the programme.
Microsoft claims that, by its estimation, the LiMux project would have cost considerably more than Munich has said. The HP report for Microsoft put the project's price at €60.6m, far more than the €17m Microsoft claimed it would have cost to shift to Windows XP and a newer version of Microsoft Office.
Munich stands by its assertion that it has cost the council less to drop Microsoft than it would have to have stuck with it, and says Microsoft's figures are based on bogus assumptions.
The final cost will be released at the end of 2013, but in August 2013 Munich said it had cost €23m to shift to LiMux and OpenOffice. Munich says this is far less than the estimated €34m it said it would have cost to upgrade to Windows 7 and newer versions of Microsoft Office.
Where does the truth lie? Well Munich makes a good case for why much of the work carried out during the LiMux project would have been necessary if the council had decided to opt for a newer version of Windows, and how it has saved money on top.
By choosing to swap to LiMux and OpenOffice Munich was able to keep using its old PCs for longer, something that Hofmann said would not have been possible if it had chosen some of the recent versions of Microsoft Office and Windows 7.
Extending the lifespan of its PCs in this way had saved the council some €4.6m as of last year, according to its official figures.
And by Munich's reckoning, the same standardisation of the council's tech infrastructure and administration would have eventually been necessary whatever the OS and office suite chosen, said Hofmann.
Training thousands of the council's staff to use a new OS and software is another area where Munich believes the council would have faced equivalent costs for both Microsoft and LiMux - claiming it would have set them back €1.69m regardless of the system.
"If we would have switched to Microsoft Office, the costs for the e-learning platform would have been the same, and the new GUI for MS Office would have required the same amount of training," said Hofmann.
"[In fact] the GUI in OpenOffice is much more like MS Office 2000 than the new MS Office GUI."
Similarly the €6.1m bill for personnel to oversee the migration process would have remained the same regardless of whether the council moved to LiMux or a future Windows OS, in Munich's estimation. Currently up to 18 people work at any one time work on development and maintenance tasks relating to the operating system and office software for LiMux and Windows.
Freedom to work
While many businesses might balk at the thought of not having a support contract to pick up the pieces when their OS and office software goes wrong, Munich feels far from adrift, said Hofmann.
A team of just 25 people at Munich develop, roll out and provide final support for the Ubuntu-based LiMux client. A larger number of people look after the everyday administration of the city's PCs but far fewer than the 1,000 people cited in the Microsoft/HP report as implementing the LiMux project.
The authority doesn't have a support deal for the LiMux client, but instead handles support itself with the help of various free software communities, such as those supporting Ubuntu, KDE, LibreOffice and OpenOffice.
"We are using the community way of support," said Hofmann. "We are finding it to be effective, mostly."
The model is allowing the council to help develop the software it uses in order that it better suit its needs.
"If you're only a customer with a support contract, it doesn't give you the ability to change how things are put into Ubuntu or LibreOffice," said Hofmann.
"That becomes more possible when you work with the community."
The same staff who develop LiMux are also responsible for the last level of support, Hofmann said, adding the authority prizes the freedom it has to work out how to resolve problems on its own.
"We had an issue with OpenOffice in the past and a support contract wouldn't have helped us because nobody else has this sort of problem, so we would have had the choice to live with it or forget about it," said Hofmann.
Instead Munich paid a company to resolve the issue for them, and put the patch upstream.
"The only downside is there's no-one to blame when things do go wrong, but what's the advantage of that?" Hofmann said.
What does the future hold?
Now that the migration to LiMux is complete, Munich plans to continue developing LiMux (the next version is due out in summer 2014) and continue to incorporate changes made to the Ubuntu LTS release it's based upon. The authority will also continue to identify opportunities to migrate other apps to run on the LiMux client so it can further reduce its Microsoft footprint.
Now that Munich is on a path to freeing itself from proprietary ties, Hofmann says he sees no compelling reason for the authority to ever go back.
"We saw from the start that if you're only relying on one contributor to supply your operating system, your office system and your infrastructure, you're stuck with it. You have to do what your contributor tells you to. If they say 'There's no longer support for your office version', you have to buy and implement a new one. You're no longer able to make those kinds of decisions by yourself."
He is hopeful that Munich will show other large organisations that it is possible to make the jump to free software and, while it is a difficult and time-consuming process, making it happen doesn't mean shutting down your IT.
"It's the best thing you can do. I've been asked 'How come you say you're up and running when Microsoft says you're already dead'," he said.
Hofmann's response: "It is possible to do an open source migration and still have the citizens not left alone. We're far from being dead."
Nick Heath is chief reporter for TechRepublic UK. He writes about the technology that IT-decision makers need to know about, and the latest happenings in the European tech scene.