What kind of variables do we need to study before writing down a migration project?

Before writing down a migration project for any organization, bussiness or public administration, it is critical to develop a methodology that ensures you have all the information needed to be able to design the correct procedure to switch PCs, users and network services from proprietary to software libre. To be able to design that methodology, one of the previous things you need to identify is which data you need to know from the pre-migration picture, how to collect it without having impact in the production process and how do you process it to be able to properly analyze it.

From my point of view these are the major variables (related with the workstation side, not the server side) that must be known. Most of them are obvious.

Hardware

Axioms:

  • The organization that is going to migrate don’t know the hardware they have.
  • Migration is about machines.

We need to know the hardware of the PCs because of, at least, these major reasons:

  • To determine if it is Linux compatible.
  • If it is, which driver or module should be included in the Linux system to install (also which kernel).
  • To determine if we have to install proprietary drivers. This have many legal implications.
  • To determine the optimal parameters related with the monitor and the graphic card.
  • To predict the most obvious performance limitations.
  • To determine the peripheral drivers needed.

System and programs installed

Axiom:

  • Nobody knows what is installed at 100%. You will have to find it out.
  • Migration is not just about machines. It’s also about applications installed

We need to know, at least, this information related with the software installed:

  • The operative system, version and service pack. Probably we won’t be able to migrate every app, so virtualization will be proposed.
  • Applications installed and its version.
  • Plug-ins, virtual machines (like Java) and other “not .exe” programs.
  • Links to local and remote programs, specially those placed on the desktop. Users will want those in the new Linux system.

Everyday used apps

Axiom: migration is not just about machines and application installed but also about programs really used.

The fact that a user have many programs installed, doesn’t mean he/she use them all. The determination of the applications that are really important for the user in his everyday work is required. The interactions (related with apps and data) with other users from the same or different departments, with customers or other companies, will give you clues to determine the migration procedures and the tools needed.

Most of the times, users only use a few apps frequently. If these frequently used apps are shared by some users, the risk increases. You need to know who introduces data in those apps, who stress them the most, who use them for just consulting data, who will use them in the future, if there are plans to change it… It’s critical to find a good solution for those. So, the more you know about them, a better picture you’ll get.

Data and archives

Axiom: data is as important as applications and machines

The data that must be investigated is, at least:

  • Data related with their work.
  • Personal data.
  • Data related with special programs like browsers or e-mail clients, etc.
  • Configuration data, for example, the e-mail client configuration information.
  • Where is the data stored.

Users

Axiom: users are as important as data and apps in a migration process.

Users are an important part of the migration. Maybe the most difficult one to analyze and satisfy.

Leadership

In any group, there are people that leads the rest in every single area. It is needed to determine which users are leaders when you talk about computers. Relations between users within a group should remain the same after the migration process. Changing the hierarchy after the migration means adding a new problem.

To maintain those relations, you have to identify and study those leaders and their relations with the rest of the employees. They will demand more attention from the migration team. If they collaborate, you will have a lot of help when problems begin to show up. If not, they can become your biggest problem.

Knowledge and skills

It is important to find out which users have a better understanding of the Windows system, who knows about linux or, at least, if there is anybody that uses (or know something about) software libre apps under Windows. It is easier now than before to find people that knows what software libre or GNU/linux are. Some uses a Mac or a linux distro at home. For those people, switching to linux is going to be easier. Detect them.

Another interesting variable to know about is the skill users have using computers. There are people that knows a lot about Windows. Those will have a greater resistance since getting the same skills unsing Linux will take them time and a lot of effort. In one second they will go from being independent to not knowing anything about the operative system they will be using. In order to define the education proccess they will have to go through, you need to know the actual picture.

Complains and suggestions

How many people uses gmail at work because their corporative e-mail sucks?

Listen to what every worker has to say about the tools and services they use. Ask them about their wishes. Every single worker has a little clue to make the company more efficient. Be aware of their demands to reduce their resistance to switch to software libre. Tell them the truth. No not increase artificially their expectations about the new system and tools.

Interactions

Axiom: migration is not just about machines, applications, data and users. It’s also about interactions among these four variables. They are not independent.

The administrative structure of an organization sometimes is not exactly ported to the data, services or applications structure. Workers usually end up finding their way to do their job, overpassing imposed restrictions or corporative rules. They get paid for finishing their job, not for changing the rules. Many times is the technical team that allow them (or even help them) to brake some technical corporative rules, since they understand workers’ point of view much better than corporative procedures or general politics.

How many executives use different tools and services than the rest of the workers? Sometimes this happens because of a good reason. But it is usual to see organizations that have people in command that do not give the technical department the credit they deserve, so they do not follow their advices. They do not respect the corporative rules either.

These special cases complicates the migration process since general procedures, politics (or even apps), are not followed by all the organization. It is necessary to understand what’s going on (the workers vision) in every department in order to be successful. If you write down the migration project based exclusively on what technicians and directors tells you….you will probably fail.

Companies are not isolated. They interact with other companies and customers. Those relation must be analyzed, specially if software is involved. IT providers are specially sensible to any change. You need to count on them in order to determine the migration process. This can be a tough problem if those providers work with proprietary software and do not follow open standards. There is no unique solution for these cases.

Since no lost of production is desirable, the migration process is determined by variables like schedules of the organization, bussines high or low season, employees rotation, etc. You must take care of those also. You won’t migrate a toy store during Christmas, right?

The final picture

You need to know what should be final picture from everybody’s point of view. This is important not just to determine where is the final point, but because an evaluation must be done after the process is finished. A lot of parameters must be analyzed in order to make a fair evaluation. Costs, resources and time are important variables to follow, but not the only ones.

Risks

One of the obvious things I’ve learned during the last few years is that a migration process is not just a technical process. This is easy to say but hard to understand. The first impulse is to throw yourself in a technical spiral of solutions, trying to define the requirements as fast as possible, to find out the best product, install it, configure it and teaching users how to use it. On the server side, you can make mistakes and turn back to the original situation without being killed (at least sometimes). But on the PC …

The following risks have to be taken in consideration before writing down the migration project:

  • The loss of data.
  • The loss of functionality.
  • The reduction of performance of the new system.
  • The lost of interaction capabilities (with other users or services). I’m ignoring this one in this report since usually is related with the middle-ware or the back-end as much as with the PC.

The loss of data

You can loose data because of three major reasons:

  • You didn’t save it before installing the software libre system or you lost it during the process.
  • After the installation, the data is not fully accessible or usable.
  • The data was transformed into new formats and part of it have changed.

The loss of functionality

This problem is due to the change of applications and services involved in a migration process to software libre. Is also common in other processes, but in this one is critical.

The reduction of performance

Is common to think that Linux desktops are lighter than Windows but there are scenarios where this is not always true. Most of the times any reduction of performance is unacceptable. There are technical, economical but also psychological implications related with performance that have to be studied in detail.

Conclusions

So computers, apps, data, users and the interactions among these four variables must be carefully analyzed before writing down the project. How to collect and analyze this information is the first step of any migration process. I (and the hold team I’ve been working with) have spent most of the last 7 months collecting data, thinking about these risks, developing a methodology to do it and trying to find out solutions to be able to write down the best migration projetc possible for different public administrations from the south of Spain.

I’ve learned a lot.

Migrating to software libre … not just platform related problems

As some of you know, I’m working on a migration project to software libre of some municipalities close to Málaga. Meanwhile, we have been contracted as part of a group of companies that are migrating the economic department of the Extremadura Regional Goverment. So since March 2008, migration is a familiar word to me. There are some things that are common to many Public Administrations in Spain that has to be taken in consideration at the very beginning so the picture you will have to face can be understood.

Since Microsoft architecture has limitation in controlling the enviromet, and it is so expensive to do so, each technician, each user, has customiced his/her enviroment (department, server, desktop, network…) so much that migrating to any plattform (or even updating) can become a nightmare. The enviroment is heterogeneous.

Regional and local Public Administrations has grown so much in Spain the last 15 years that it has been imposible for most of them to stablish a general and strict politic related with technology and digital services.

Another key factor is that, until citizens has began to demand digital services, technical departments were underdimensioned and overcharged with low level job, due to that lack of that general politic and the way Windows is designed. Old school politics know everything about building houses (the major bussiness in Spain) but nothing about technology. That demand, plus a new generation of politics, are beginning to change this situation.

To migrate, a lot of data that is supposed to be known is not, so you have to collect it.

With this enviroment…linux has risen as an alternative of how things have been done in the past. It brings many advantages to solve some of the problems we have suffered, but not all of them. In fact, the deppest problems are not platform related. Let’s talk about some of those (personal and general ones).

Migrating to linux means an enormous effort for a Public Administration. It has to be well done, by professionals. Big amounts of money and time are needed so usually politics decide to, also, add new services and new procedures. Migrating is not enough. A deep change is needed. So you end up not just migrating to linux, but improving the hold system, adding new services, new apps, new network topology, new methods, etc. The original migration project grows and grows adding pressure and stressing resources. Letting you go is a natural feeling when you believe in software libre and demand a change, but is a wrong way of approaching such a project. Migrating and improving are different concepts. Sometimes you need to take one step to one side (or even back) to be able to take many steps forward in the future.

I’m afraid many of the people I’m involved here in the south of Spain are putting into linux so much illusion that, when reality faces up, they will be a little dissapointed with the result. It is hard to reach 100% of the objetives. Without noticing it, I have ended up telling people to move slow, to be careful with the expectations, to make firm steps instead of running, to improve quality instead of quantity. Working in pioneer projects involve a lot of risk, so you usually need to be intrepid. But when people around has so many expectations, believing so much in what we are doing, in what free software can do for the people, this attitude has to turn into prudence. This is not usually well accepted. People begin to question if you really believe or you have doubts. For them, it is not a question of methodology or resources but a question of faith. So you have to stay strong to stay away of that big wave of illusion and keeping everybody on the ground. It is as risky as it can be an eviroment where no one around believes in software libre. I am used to this second one. I’m a newbie in facing the first one. So I’m learning a lot.

We have developed a new methodology and some simple tools to collect the data we need in order to define with accuracy the migration project. Since Public Administrations have hundreds of computer, not much information from other projects can be used. Scalability is a tough concept. Working in mEDUXa, the linux edu distro from the Canary Islands, have helped me a lot. Still there are many big differences. Schools are not regular Administrations, of course.

We are making a deep inventory of machines and apps installed and interviewing each and every public worker in its own desk, so they show us how they use the computer, share the information and interact with other workers, for example. I’m been doing many of those and it is beeing really interesting. Many conclusions are showing up that weren’t expected. It is taken a lot of effort but it is totally worth it. It has been a money well invested.

After collecting all the the data, a good analysist has to be done (it is being done). Then, the real migration project begins. Technical solutions are well known. Most of them are well tested and have success stories behind them. We are not going to invent anything new in this area, I think by now. The risk is doing the migration smooth and softly, not stopping the services and making everybody feel confortable with the solutions. All this with limited resources and time.

For the Public Administrations involved, the analysis of the migration project will be the first time they think about the technology they use and the procedures the follow in a general approach, without names and surnames of any particular solution (take this as a wish). For many of them it will be the very first time they will be able to take key decisions related with technology. That is why it is important to give them all the information we can. They have to take their own decisions and they are not used to do this in technology. They usually just buy products (so decisions).

This is something some don’t follow. I believe that trying to convince people to use this or that because you say it, because you are the “expert”, is wrong. That’s what have happened before (with propietary software) and the reason why many customers are so suspicious about software libre. In Public Administrations this is the root of many of the reactions against it (in politicians and, specially, in public workers). It is not that they don’t trust the technical solutions we offer, they simply do not trust us. Our messege has a 100% commercial motivation form them.

After 6 monthes working here one clear conclusion has risen. Migrating Public administrations to GNU/Linux is way more difficult and more expensive than many people expected, but is possible. Much more than that…it is needed.

A wish …

After I finish my job here it would be great to travel to other countries to get involved in Migration Projects to keep learning about different enviroment, facing new challenges, working with new and different people. Big deployments and migrations are a very interesting area to get involved. I’ve been working on it since 2005 and I feel I know nothing about it yet. Also, helping to spread GNU/Linux (software libre in general) makes me feel good. I like my job and I know I’m lucky.

What have I been doing lately.

A little more than four monthes has gone since I left Tenerife, Canary Islands, to work in La Axarquía, Málaga, in a migration to software libre project. Working with public administrations is different than working for private companies. Usually you have more time for finishing the projects but the administrative and management issues are more complex. Get away from problems and keeping focused on the job to do is the key for not getting frustated. The impact though will be enormous so it is worth it.

After surveying and interviewing hundreds of people, trying to figure out how they use computers and apps, we have almost done an inventory system we have made for this project (based on ltsp). Since it will be GPL, I hope more people use it, specially in migration to software libre projects, like the one I’m working on.

Since in summertime most of the public workers are on vacation in Spain, we will be able to check their computers easily. I hope we can make a good report with the data extracted. Then the technicians will concentrate efforts on testing how key private apps work when virtualiced (with XEN, VMWare, Virtual Box and Wine basically). This is important to define the migration project of the 31 municipalities involved (in fact it won’t be that many since some of them do not want to migrate).

Between managing this project and the Gran Canaria Desktop Meeting, I have no time for almost anything else. By the way, the Cabildo of Gran Canaria (Gran Canaria’s Gov.) have put me in charge of the relation with both, KDE and GNOME projects for the GUADEC+Akademy 2009 event. This was going to be my first Akademy with no specific job to do but, obviously, it won’t. It will be another busy event for me. Maybe is better this way.

Last week it was announced that we will participate in the migration project of the Economics and Technological Innovation Department of Junta of Extremadura (Extremadura’s regional Gov.). We are going to make the initial report of the current situation. That is, interviewing pubic workers, making an inventory of equipments and apps, defining by groups the knowledge of users related with software libre, etc. That is the milestone before the development of the migration project itself.

We are the only small company that will be working on this migration project so it has been a nice surprise for us. I’m travelling tomorrow to Extremadura for the very first meeting.

Can anybody give me the clue to work 25 out of 24 hours?

Windsurfers say…. No wind…no fun.

I say….no migration to soft. libre projects…no fun

I’m alive after all

I’ve moved to Málaga two monthes ago for a year and I’m quiet happy about it. I came here to manage the first step of a project that will migrate 31 municipalities from a region called La Axarquía, which is close to Málaga.

After planning and scheduling the tasks, we are inventornig the computers and services these minucipalities have. I’m also surveying how public workers use the propietary apps they have installed so we can define the software libre tools we will install and the teaching project we will have to define in association with the migration process. We are also building up the team that will be working with us and explaining to politicians from these municipalities what we are trying to do. Nice job, isn’t it?

We will present the first results in October probably. During june we will be working on a public wiki, so everybody can check and collaborate on what we are doing. The information will be mostly in spanish but we will translate what is relevant to english.