10
The Manager, the Software and the Process

10.1. The chasm

There are hardware companies and there are software companies. And there are software people and hardware people. The curse of the computing industry since the early days is such: companies have to choose their camp, between those who perceive themselves as primarily hardware organizations, and those who perceive themselves as primarily software organizations.

Why is it that only Apple has taken both sides since its inception? And sustained the unification of both sides throughout its history? Because both Steve Jobs and Wozniak had a passion for designing computing machines? Or just by thinking differently?

img

10.1.1. Business school way

The manager treats software like any other technical activity, through the commitments taken by software people. However, after several years of experience, he usually comes to the conclusion that software is a never ending source of trouble, and for some strange reason, always lives on a critical path.

Software people are regarded as disreputable, unreliable, always carrying a source of problems and unable to provide visibility about their work.

Furthermore, as is often the case, the company does not have the internal expertise and resources to develop the required software.

The traditional manager will therefore find many good reasons to get rid of the software hassle, by outsourcing it, and much more systematically than he does for other hardware components.

In spite of its associated cost (undoubtedly real), the immaterial nature of the software anchors, in an incompetent manager’s head, the idea that software “cannot be serious”, just a necessary evil.

An MBA degree is the golden key for accessing to top-level management, and managers are frequently poured in from outside. Under no circumstances can a software manager reach the top level.

10.1.2. Apple ’s way

Software is just like any other engineering discipline, and it is considered critical enough to be produced internally. The fact is that it is the only thing which Apple produces internally.

Software managers may reach the top level, if they demonstrate they deserve it. There is no predefined path to reach the top level, apart from a demonstrated track record of success.

All managers, including the top-level ones, understand software specificities, do not fall into the usual traps and do not despise software and those who develop it.

10.2. Developing the chasm

For a manager with an MBA degree, without any other technical experience, managing software teams is no different from managing any other team: what only matters is to negotiate the team commitments, and to keep track of these, with appropriate periodicity.

Of course, during the commitment negotiation, it is the manager’s role and duty to exert adequate pressure on the teams, and rejects any funding request which would not directly contribute to the production of code, which, as everybody can understand, is the only thing which matters.

In spite of what seems to be the common sense nature of the following, this attitude can lead to nothing but major project failures – and experience shows that IT DOES LEAD – for a number of reasons we would like to detail now. These are but ultimately rooted, unless exception, in global manager ignorance about the very nature of software activities.

This widespread ignorance can be explained by four basic considerations:

  1. Software has frequently crept into the products, in such a gradual mode that managers did not take notice.
  2. The software product is immaterial.
  3. Software development is made up of activities of a totally unknown nature to the manager.
  4. Even more than for other activities, huge productivity discrepancies may exist among programmers.

Appendix 2 discusses each of the above points so as to provide the necessary background for understanding the true power status of software better.

10.2.1. The case of Mister Hullot

Jean-Marie Hullot graduated from Ecole Normale Supérieure (ENS Rue d’Ulm in Paris), a small institution by size, but a genuine “Fields Medal nursery1”.

Thanks to Jean-Marie Hullot, Apple could prepare the grounds for entering a future booming mobile telephone business, long before that took place. Hullot was Chief Technology Officer (CTO) of the Apple Applications Division from 2001 to 2005, and in this position, managed the iCalc and iSync Apple development teams for Mac OS X in 2002.

Steve Jobs called up Jean-Marie Hullot directly in Paris. Jean-Marie is famous in the NeXT developer community for being one of the creators of the NeXTStep Interface Builder (IB) tool. IB is considered by some as a “killer app” on NeXTStep, which allowed the user to rapidly manipulate and assemble software objects (either its own ones or those built by others) into useful programs without writing any code. IB lives on today in the free developer tool set that Apple provides.

At that time, the offices occupied by Jean-Marie Hullot team were located on the Avenue des Champs Elysées, in Paris, a considerably more luxurious location than the one of the French Apple Headquarters.

The call to Hullot was initially an audio conversation. He was then living near the Eiffel Tower and, at Steve Job’s request, attached a firewire video camera. When Steve disconnected the audio call, iChatAV on Steve’s computer recognized that a video camera was available. When Steve Jobs called back, the call became both video and audio.

But, French people do not leave their country so easily, and this collaboration came to an end when Steve Jobs, given the strategic importance of these developments, decided to bring them back to California.

Jean-Marie Hullot’s Wikipedia page (in English) only mentions his PhD, but not his quality of Ecole Normale Supérieure Rue d’Ulm graduate, which is immensely more significant in French credential hierarchy (see, for example, [HUL 15]). Jean-Marie was also President and CEO of Fotopedia, a famous and visionary collaborative photo encyclopedia, which he created.

So, instead of concluding that the bad programmers must be fired, it is wiser to hire the best, and if possible, like Steve Jobs did, the geniuses.

10.2.2. Drawing lessons from software management

Is there not a contradiction between the above story, which insists on hiring the best software personnel on the one hand, and the “process approach” of software described in Appendix 2 (see later) on the other hand, which considers coding activity as something of minor importance, which can be handled by people swapping one for another at will?

At first sight, yes. But, this apparent contradiction is based on a misunderstanding of what is meant by “coding”. Software development is probably the only activity (with craftsmanship) where product design cannot be separated from product realization. The “good” software developer can be good at coding – and this is often the case – but he/she is first a “good” architect and a “good” designer, because his/her talent in this latter design tasks makes the difference.

This leads us to a final comment on this subject. As far as we can tell, Michelangelo was not very demanding in his work, to say the least, as he was totally absorbed by his artistic achievements.

If a company aims at attracting the best software people, and at sustaining their motivation all along the demanding development phases – something that may imply huge personal life sacrifices – a corresponding reward is necessary.

Each and every social system may find different ways to satisfy this, and some may be better than others, according to this criterion.

What is true, for sure, is that considering the programmer as a kind of modern day scribe or perhaps slave, paid (as little as possible) by the number of lines of code produced, can only result in poor software quality, of any possible standard, and far from the excellence target Steve Jobs had in mind.

A “software illiterate” manager’s contempt for software, and for those who develop it, is a royal path to failure.

It has been reported that at NeXT, Steve Jobs used to hire PhDs as receptionists. Without going to such an extreme, it should be possible to find an acceptable level of expertise and salary for the people to be hired as programmers.

“ The more I see, the less I know for sure.”

John Lennon

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset
3.133.144.18