Monday, December 1, 2008

In September this year, I had a totally new perspective into computer science and software development.

One of the reasons why I like computer science is that it was all about machines. One does not have to deal with people. I have always been floundering when it came to matters relating to people. Being a bit of a recluse, I prefer things that have lesser degree of personal interaction. And I thought that software was a field which was highly impersonal. To understand what I mean by impersonal, consider mathematics. It is so precise and logical. A given statement either makes sense or does not. It is either true or false. The dichotomy is clear. Feelings play no part. You do not feel that 2 plus 2 may be equal to 4. Contrast this with fields like media, journalism, art, advertising, fashion, architecture etc where human perception and feeling matter a lot. The rules are few. Opinions form the foundation of issues. And things like influence, prestige, tradition, dignity, and all those mushy things matter a lot.
However a book that I read recently, Peopleware, by Tom DeMarco and Timothy Lister, changed that perception. They propound that software development is mostly about communication and not about complex algorithms. They have a term - the high tech illusion - to denote the fallacy that software development is rocket science. According to them, the success or failure of software development projects is determined more by the pattern of human communication within the team rather than the extraordinary analytic ability of the team members. it was such a fascinating perspective, that I made brief notes of it and am posting it here.

If you can find the time, I urge you to read the book itself. Agree with it or not, its a perspective that I think will serve you well.

Peopleware lessons
Part I Managing the human resource

Somewhere Today a Project is Failing

Projects usually fail not because of technology but due to other reasons (including team sociology).

High tech illusion: we delude ourselves into thinking that we are in the high tech industry - we are not - we are mostly in the human communications business.

Make a Cheeseburger Sell a Cheeseburger

Don't follow the managerial mentality from the production environment. project environment is different.

Vienna Waits for you

Life is not all about work - death awaits you one day. Don't pressurise people to put it overtime (it is not useful, it will be compensated by undertime later, and people get irritated) Using brute force techniques to improve productivity will increase people turnover. People do not work better under pressure they only work faster - for some time.

Quality - if time permits

dev teams want high quality (it is a matter of pride). management and clients are willing to compromise - lower cost and lesser time. A balance is important. take your bet with the dev teams.

Parkinsons Law Revisited

It does not apply in 95% of the cases.

Laetrile

There are no quick fixes - no silver bullet.

Part II The office environment

The Furniture Police

They have no idea what knowledge workers need. Give your people lots of space. Give them peace and quiet. improve workspace rather than common areas.

"You never get anything done around here from 9 to 5"

Very sad - you should be able to.

Saving money on space

You generally don't

intermezemmo - unidentified flying objects

Have some measure of productivity - something is better than nothing.

Brain time vs body time

Former is more important - uninterrupted hours of work are crucial.

The Telephone

Banish it.

Bring Back The Door

Protect people's privacy. Do not allow them to be interrupted easily.

Taking Umbrella Steps

Part III The Right People

The Hornblower factor

Any change improves productivity simply because of its newness - this explains the initial productivity surge of most techniques.

Don't insist on any kind of standardization. No uniforms or dress codes. Better to keep a high level of differences. No Methodologies (capital M) please.

Hiring a Juggler

Test thoroughly the new person's ability to do the job and also to jell with the team. Involve team members in the testing process - ask the candidate to give a presentation.

Happy to be Here

Grow a mentality of permanence. Invest in your people.

The Healing System

Human systems can change to do things not forethought - machines can't. Don't bring in Methodologies (capital M). That is another symptom of the high tech illusion.

Part IV Growing Productive Teams

The whole is greater than the sum of the parts

Corporate goals will always be arbitrary to people. Expecting them be loyal to the goal out of professionalism while the top management gets offered big perks to pursue them is hypocritical. You need to think of ways to get people to buy into the organizations goals.

The black team

Example of a jelled team

Teamicide

Ways to prevent team from jelling

a)defensive management

lesson: trust your people blindly - don't send out any signal that you don't trust them

b)bureaucracy

save your people from unnecessary paperwork

c)physical seperation

try to keep your team at a single place

d)fragmentation

avoid it - it is both a disguised waste of the persons time - it also does not allow the person to become part of any team

e)quality reduced product

don't allow higher management and clients to decide that the project quality is acceptable. allow your people to build in more quality even though it costs more time and money - they will be proud of it and become a team.

f)phoney deadlines

a team will never form if everyone feels that there is no hope of a win. they will take no pride in their work and work will be drudgery for them. some may even become fatalistic.

g)clique control

don't break up teams unnecessarily

A spaghetti dinner

Example of a team jelling

Open Kimino

Chemestry for team foundation

Build a cult of quality keep reassuring people of their work make the team members feel elite

Part V

Its supposed to be fun to work here

Hold war games and provocative training experiences.

Free electrons they are people who have enough knowledge and maturity to improve the organization - get out of their way.

Holgar Dansk

Protest against what is not right - people will join you.

Part VI Son of peopleware

Teamicide revisited

Plaques and posters aide teamicide because they demean the team members.

Don't allow overtime - it may be detrimental to an already formed team.

Competition poisons the team - another form of teamicide.

Process improvement programs

Improve the process - but don't be fixated on levels and certifications.

Making change possible

Change is difficult - if you want to make a change the people who are skeptical doubters are your best bet - the totally opposed will sabotage your efforts and the readily willing will jump right onto the next bandwagon when it comes. There are four steps to making change - old situation -> chaos -> practice and integration -> new situation. People's response to change is emotional - not logical - your logical arguements are useless.

Human Capital

Money spent on training is capital - not expenditure. replacement of staff is very costly - from 3 to 12 months salary. Companies who lay off people are publicly declaring their management failure - wall street is perverse in valuing them higher.

Organizational Learning

Bottom guys are busy in their work and don't have big perspective. Top guys are busy in takeovers or fighting off takeovers - they have no time to learn. Most learning happens at the middle manager level. The sad part is the middle managers have very little interaction between them - due to politics etc. The white space in the middle is where the space for organization learning is.

The Ultimate Management Sin Is...

Not utilizing your people's time effectively.

-> early overstaffing

-> status meetings (they are more about the manager showing his status rather than the subbordinates reporting the work's status)

-> time fragmentation (putting people in too many projects is bad - overhead is high - its a disguised form of wasting your people's time)

The time of your staff costs a lot of money - don't keep it idle.

The making of a community

Try it. it will be one of the things that you will count as the bigger achievements of your life. aristotle's noble sciences - metaphysics, logic, ethics, politics, aesthetics - follow aristotilian politics.

Sunday, July 8, 2007

For all those who use laptops, are you satisfied with your laptop experience? No? Well, there are two new technological developments happening in the research centers and laboratories around the world which will change that.

The first is the ongoing improvements in flash technology. Flash memory is a solid state, random access, writable, non volatile memory. What's that? It means that it is a memory device which can be written to and read from just as the RAM that we all are familiar with. However it does not lose the information that is stored in in when the power is switched off. The interesting part is that thoughts are floating around about using it instead of a hard disk drive. If they manage to do this, it would mean lesser moving parts in the laptop. Less heat dissipation. Less power consumption. Less wear and tear. So what's stopping them? Cost per GB. Technical limitations. Hard disk capacities have reached well over 100 GB for laptops. Flash devices have a lot of catching up to do. Also manufacturing flash memory chips currently costs a lot more than manufacturing hard disks. Well, research in on ...

The second development is the organic LED (light emitting diode). The basic material behing this technology are chemicals (rather organic polymers) which emit light when an electrical field is applied to them. These are slated to replace liquid crystal displays. The potential is enormous. Display units manufactured from OLEDs are less power intensive. As the polymer's themselves emit light, there is no need for backlighting. This means thinner and lighter display units. Moreover these chemicals can be mounted on flexible plastic substrates. Which means that display units can be light and flexible. Demonstration videos of this technology are already on youtube. So what's the catch? Durability. The OLED polymers that have been synthesized so far have a limited lifespan. They emit light in response to electrical fields for a few thousand hours and then burn out. Again researchers are hard at work to remedy this flaw ...

I fervently hope that researchers apply themselves to the one biggest obstacle the is preventing a laptop from being a lap-top - hot processors. Anyone looking into this little problem...?

Monday, July 2, 2007

Computer Science

Preface: Originally written on June 28, 2007

During my engineering college days, there used to be an undercurrent of rivalry between the students of computer science and other branches. The subject of computer science was mildly disparaged. The computer was seen as a glorified calculator. Mechanical students used to ask their friends in computer science: "I dont see why you guys fuss all day over a 1.5 cubic feet box!". The more intellectual types quipped "Computer science is not a core subject like electronics, mechanical, electrical or civil. It is a secondary subject." There was a hint of jealousy too. The software field was (and still is) hot. Among the companies that came to the campus to recruit, a majority were related to software. The pay packets offered by the software companies to our senior batches were whispered incredulously and furtively throughout the hostel. Such was the structure of the "apple cart". (It is entirely another matter that many of those who indulged in such slander are today writing software themselves.)

Actually, now that I think back, I have encountered belittling of computer science at school as well. It was 9th grade. Computer science was introduced as an option for the SUPW period. I was delayed by a few minutes in reaching to the next class which was Hindi language study. The Hindi teacher, in all her arrogance, declared for the benefit of the students punctually present in the classroom and as a reprimand to me, that is was indubitably obvious that computer science was nothing more than an idle pastime and no good would accrue to a person who wished to spend time in front of a computer.

Since my inclination is towards computer science, I was mildly uncomfortable with such an attitude towards the subject of my interest. However, since the unfavourable opinion was omnipresent, I did not find the courage to challenge it.

But now I feel that it is proper to accord computer science the place that it deserves in the society. The fact that students and professionals of computer science produce no tangible product (as opposed to buildings, machines and gadgets) makes the case difficult. Nevertheless computer science has given many new kinds of wealth to humanity. We are able to accomplish a lot more today because of the use of software which would not have been possible otherwise. To the accusation that computer science is not a core subject, I am indifferent. The mere classification of it as such makes no difference to the amount of good it does. The list of utilities that it has created or enhanced is enormous. The benefits of computer science are only now being felt by the society at large (communications technology, easy banking, email, malls (oh yes, a lot of software goes into the operation of those supply chains behind them)) and I hope they would have altered their opinion of it for the better. Moreover the potential that it has to enhance the human condition further is greater. The amalgamation of medicine and computer science is still nascent. So is its alliance with the field of education. I expect that the comming generations would be amused by my Hindi teacher's (bless her soul) pronouncements.

Yet another outing

Preface: Originally written on June 17, 2007

Well, look at that. More than half of a year has passed since my last blog. Its been pretty hectic. Lots of changes - new team, temporary deputation to another location, lots of vacillation on various decisions. etc. The disturbing part of it is that I am not sure that I am wiser because of all the experience gleaned in those six months.

And oh yes - our team went out on another trip whose description does not waver one word from the previous one. The details are accurate even for the aftermath. I got a chance to observe the very same green feeling in an entirely new group of people (as my team has changed recently). This has prompted me to think a little more about the matter. My first assumption is that the feeling is generated only in expatriates and not in natives. I have anecdotal evidence for this assumption. I have a dual hypothesis. First is that the symbols of apparant enjoyment perused by them invoke a desire for enjoying the same things. This of course is the classic fertile ground for the feeling. The minutiae that is glossed over is that they wish to make no sacrifices for the enjoyment. They turn a Nelson's eye to the proverb about the feasibility of having a cake and consuming it. The observation of expatriates being succeptible is explained by the fact that they are familiar with the mode of enjoyment while natives are not. The weak point of this hypothesis is that it does not explain their conspicious display of the emotion, especially when such displays are in general regarded to be indications of imbecility. The second hypothesis actually is an extension of the first one. It seeks to explain the display by adding a few more facts. Since it is a given that expatriates enjoy a more materialistic life and are keenly aware of the efforts they have expended to achieve it, a sense of superiority is inevitable. (I do not mean to say that it is inevitable in every individual's case, but considering the issue statistically, I would be surprised if it does not exist in most.) Here is where I will take a huge leap of reason and postulate that most of they are aware of the said complex and in an effort to either further it and be condescending or being guilty about it and seeking to negate it, are openly jealous. If you are with me till here, I'll have to commend you for tenacity (or your willingness to set off on wild goose chases!). Oops ... running out of time. More later...

Winter

Preface: Originally written on November 21, 2006

The days are getting longer workwise and shorter timewise (well winter is setting in...). I am not very comfortable with winters. For one thing they ruin my sleep! It usually gets really cold in the wee hours of the morning and I have to get up to pull on an extra blanket! Getting up is a ordeal (the warm bed looks sooo inviting). The hot bath is a real lifesaver. And then the office. Yes - the office. I dont know who is incharge of the air conditioning but I am pretty sure that that person is an external observer. (unaffected by changes in temperature). Its ridiculous to have ac on full blast in the throes of winter. And no amount of complaining accomplishes anything. Dislike winter I may, but I would want to have it anyways because its only when you experience the unplesant that you learn to appreciate the better things.

At work my team went out for a whole-day outing last friday. It was long overdue actually. The usual things were done - cricket matches, splashes in the swimming pool, antakshari in the bus, dumb-charades, lots of pictures, good food etc and well - it was all paid for by the company so no damages to your purse! The usual ritual that follows it is the uploading all the evidence of the celebrations and apprising our counterparts at san fransisco of the antics. And they unfailingly get "jealous" and mention it in all meetings for weeks to come.

I have always been intrigued by this kind of jealousy that is displayed so openly. And the instigator is not just outings. Our having a few extra leaves every year is another source. The fact that our printouts are delivered to our desk is yet another. And there are many more petty issues invoke the green feeling. Taking the big picture into consideration I feel that a lot more of the feeling ought to be directed to other way round. And I think it is except that it is not voiced. The restraint on calling a spade a spade is palpable at times but has never failed. I guess its because its in no one's interest to strain relations so the matter is glossed over despite provocation. So much for international relations!

The famous first entry...


Preface: The blog below was written on July 16, 2006.

Ah.. the famous first entry...

To be honest, I do not understand why people write blogs. What is their intention? I have known some people who write blogs about their newborns with lots of cute pictures in them so that anybody who is interested in the baby can do a quick check on the latest info, height, weight, teeth, smiles and abmulations of the baby. I agree that its a very good way of sharing information. And it serves and a sort of photo album with lots of extra features.
But what does the average gal/guy have to share with the world at large? Just declare that they exist? Do they do it because they have an excess of time on their hands? Do they hope to become journalists in the future? (hey that might be a reason). Or do they have stuff that they just want to unload onto the blog so as to lighten their minds? Or perhaps its some sort of an art thing - you know - art for art's sake - no purpose to the blog except to be. I have started this blog to discover the answer to the above question.