Day: January 17, 2005

How I Lost Weight

Who doesn't want to lose weight? Well, I am actually fine with mine, it's just that if I don't keep it in check, it goes on a journey skywards. I used to be very fat, lost the weight, but to this day it is really easy for me to put it back on again.
A diary of weight over time is a good start to keep track of things. You start understanding the interaction between food, exercise and pounds much better when those numbers are written down. You know better how your weight ranges between Christmas and Labor Day (my respective top and bottom).

12/25/2000 184.3
9/9/2001 165.0

Since I had a computer and a little spare time, I took the table I had and made a chart out of it. It looked really very random, and it didn't add much value. Other than giving me a chance to use some nice technology.
The breakthrough came as I started wondering what my average curve would look like. It was easy enough to compute and plot, the most interesting task being correctly working around empty spots where I didn't record my weight. The yo-yo effect was clearly visible in a sine curve that moved up and down. Instead of starving myself on one day and overeating the next, I started thinking of my average weight as the metric of relevance.
The next major step came much later, when I bought a bodyfat-measuring scale. I am big time into cycling, and I knew that my bodyfat was a major issue on climbs. So I watched the two curves (weight and bodyfat %) very closely. Unfortunately, both curves tended to oscillate widely.
I started thinking the scale was not as smart and accurate as it said, since bodyfat and weight were swinging so randomly. Fortunately, I didn't stop thinking there, but put two and two together and looked at how the total amount of fat varied over time. And there I had my Eureka! moment. Total fat was far more stable, and was ultimately the correct indicator of how I was doing. While drinking a gallon of water would have pushed my weight up eight pounds and my bodyfat accordingly down – the total amount of fat would have stayed the same.

Of course, all of this wouldn't have been possible without my chart program telling me all these things. So I am grateful for its role, and want to share it with you, so that you can enjoy the pains of weight monitoring with me. 🙂

Weight Table

A Weight Table?

Actually, two of them. At some point (actually, at {moscontentlink:How I lost weight|this point}) I decided it was time to record my weight and do a pretty good job at it. I worked on and off at it, perfecting the user interface (laughter appropriate), and ended up with two versions of a program that tells me how fat I really am.

I started out with a {moscontentlink:Weight Table – TCL|GUI release} in Tcl/Tk. I had been very successful with that combination, and back then there were neither PyQt nor PyGtk to help me. (To be truthful, I wouldn't have used either, anyway…) This first release was interfacing in German and had a decent set of controls. You could input your weight in a table (just in case you had jotted a set of days on paper). You could switch from a pound to a kilogram view. You could change the number of days used to average out the weight.

Although Tcl/Tk is probably past its prime, it still is a really easy language to write to, as long as no numeric computation is involved. Nowadays, its slowness is extremely painful, and I would probably use it only for glue code.

Things started getting complicated with the addition of bodyfat, courtesy of an incorruptibly hones Tanita monitor. After I got over the grief of seeing myself called obese by my own scale, I added many charts to the program:

  • daily bodyfat and average
  • total fat and average
  • total non-fat and average

Each chart taught me something. The bodyfat chart taught me that I shouldn't ever buy anything I could use to ridicule myself in front of myself. Because I would.

Total fat is interesting, because it doesn't swing as widely as bodyfat and weight. If you weigh yourself on any given day, there will be a certain amount of ballast you carry with you (the kind you get rid of at a pitstop, if you really needed me to say it). Total non-fat was surprising, because it would rise and fall with total weight. I would have expected to see non-fat matters stay the same regardless of how much fat I carried around. But it turns out that fat cells need considerable amounts of water and other matter to survive.

After all this work, I started thinking it would be nice to get access to the charts from anywhere on the planet. Hence I started thinking of a web interface to the same data.

Since the wheel has been invented too many times, I started looking at open source code I could use to make my life easier. Of course, there I stumbled upon GD and its Perl interfaces. As a matter of interest, the final {moscontentlink:Weight Table – Perl|web interface in Perl} is a mere 10% of the original code in Tcl, since I don't do any of the computation or graphing.

As I moved this site to Mambo and later Joomla, I wanted to integrate my weight table with the new infrastructure instead of using iFrames or the like. So I wrote my own component, which I later turned into a Joomla project. This is the basis for the current graph, which now uses the PHPlot library. 

You can access the current weight chart here.


From an XML File to a Web Site

At some point I was sick of having to fix navigation links, and at the same time I wouldn’t have wanted to have to navigate manually through my site. Things started getting even worse as I put my pictures online – it was a major pain to get the hierarchy in order, and I finally decided to resort to a tool to manage at least that part.

I surveyed the field and finally settled on a tool whose name I unfortunately forgot (any hints?). The salient feature of this tool was that it created a thumbnail .GIF and a miniature image with the suffix ‘_sm.jpg’ from all your files…

At the same time, I was starting to look into navigable pages with content flow, and the solution of hardcoding each of them was starting to be really onerous (especially since I couldn’t really settle on a style…). I decided it was time to write another website management tool. Download htmltree here

Since what I wanted to display was an ordered hierarchy, I chose XML as the origin format. A utility would take the XML file and a template and generate a directory hierarchy from there. My task would then be to fill the template body with content.


Initially, the only element allowed was <dir>. The element would take a name and a title attributes, respectively what the directory would be named and as what it would appear on the site. The root directory was marked as such for convenience. Directories without title attribute would inherit it from the name. Thus, the original file from where I started looked like this:

 <dir type="root" title="Main">         <dir name="blog" title="Biking"/>         <dir name="writing" title="Writing">                 <dir type="flat" name="months" title="Months in the City">                         <dir name="january"/>                         <dir name="february"/>                         <dir name="june"/>                         <dir name="july"/>                 </dir>                 <dir type="flat" name="essays" title="Essays">                         <dir name="competence" title="The Curse of the Competent"/>                         <dir name="factory" title="The Factory vs. the Workshop"/>                         <dir name="ceo" title="The Good Executive Officer"/>                 </dir>         </dir> </dir> 


The system needed to be able to take a template and replace markers (directives) with the navigation links. There was no particular requirement to use one system over the other, so I chose to use double percent signs as markers. The substitution directives would be:

  • %%Title%% – The title of the page, as defined in the XML file
  • %%Timestamp%% – The time at which the template was generated
  • %%Body%% – The body of the file, the content without navigation

To iterate over tree items, there are sections of HTML that have special replacement variable. The sections typically require iteration over a collection, so they have to be marked with start and end in the template. The current iteration directives are:

  • %%BeginCurrent%% – %%EndCurrent%% – A section of HTML that gets replaced for the current directory. Inside of it, you can include the directives that start with %%Dir explained below.
  • %%BeginSiblings%% – %%EndSiblings%% – A section of HTML that is inserted per sibling of the current directory.
  • %%BeginUp%% – %%EndUp%% – A section of HTML that will be used to navigate to the parent directory.
  • %%BeginSub%% – %%EndSub%% – A section of HTML that will be replaced per child of the current directory.
  • %%BeginNavigate%% – %%EndNavigate%% – A section of HTML that will be replaced with a set of links to ancestors of the current directory for quicker navigation.

Inside of each iterator, the following directives are available:

  • %%DirTitle%% – The title of the directory, as in the XML file
  • %%DirLocation%% – A URL link to the directory for navigation

Worked quite well, especially after adding the %%Body%% directory. Initially, I needed to protect the content of each file from being overwritten on update, so I decided to add include files. If there was a file by the name ‘x.body’ in a directory into which the file ‘x’ would have been written, then the contents of the former were pasted into the latter replacing the %%Body%% directive.


Later on, I decided to merge the web gallery functionality with this utility. Changes in the code were fairly profound, but the directory XML file would be modified only minimally. Indeed, all that occurs is the addition of two attributes to the <dir> element:

  1. type="images&quot – which marks the current directory as containing images and hence as obeying external rules
  2. source="dirlocation" – which indicates where the original images for this directory are coming from.

Image directories are handled differently in many respects:

  • image directories are recursed automatically
  • the name of the directory is automatically its title
  • the attribute type is set to imgdir for all descendants of the image directory
  • most importantly, the source directory is consulted for content. If an image file is present in the source, it is resized to thumbnail and web preview size and the two generated pictures put into the destination
  • the index file generated contains a thumbnail view of all pictures in the %%Body%% section of the template, and allows for navigation.

A few of the command line switches deal specifically with image directories.

Flat Directories

The special marker type flat distinguishes directories that do not have children on the file system, although they have structure in the XML file. Instead of generating a directory for each dir element, for flat directories each dir element represents a file whose name is given by the name attribute, with an appended ".html".

In the example above, consider the dir element with name months. It has four subelements, with the names of months. As a result, once the utility completes operating, you will have a directory called 'months'. The directory will contain five files, named index.html, january.html, february.html, june.html, july.html.

Currently, recursion of flat directories is not implemented, so that they have to be leaves.

Command Line Switches

This utility accepts a set of command line switches. To help you remember them (and their default values), try htmltree.tcl -help. In the following a complete list of switches, default values, and meaning.

General Command Line options
-to . (dot) The destination directory, which is the final site directory (or a temporary directory if you so wish).
-xmltree dirtree.xml The name of the XML file that contains the information on the site tree.
-template template.html The name and location of the template file.
-start {} (empty) The name of a starting element, in directory notation. If non-empty, all computation and replacement will be performed, but no files are going to be written unless the name of the file begins with the -start attribute
-from . (dot) The name of a directory from where the body files and images will be taken.
-output short The type of output. Currently, only short and long are supported.
Command Line options relating to image directories
-imagetitlesep  :  (space-colon-space) The separator used between hierarchy levels
-imagerowcount 3 The number of images to put in one row
-imageskipglob see program The glob patterns that determine files to skip. I typically don' delete image files taken with my camera, but leave them with the default name. Only those I want to put online I rename to something meaningful. This switch ensures that I get only what I want.
-imageconvert false Whether to convert images in image directories to thumbnails or not. Defaults to false for file integrity.
-imageskipdir CVS The glob patterns of directories to skip entirely, although part of an image tree.
-imagethumbsize 128×128 The UNIX geometry size (widthxheight) of generated thumbnails. This geometry determines only maximum size; that is, images will be converted respecting their aspect ratio, but such that their maximum pixel size is bounded by the rectangle defined above.
-imagesmallsize 600×600 See above for explanation. Used to determine the maximum frame for a reduced size image. If the image is 1024×768, in the default setting it would turn into a 600×450 image.

The Good Executive Officer

Winning by Failure

It is the year of the Lord 2002, and corporate executives are being accused of fraudolent behavior left and right. And if it is not outright greed that pushes men and women over the edge, it seems that there is a whole world of incompetence that has pushed to the top and has been wreaking havoc over the past years.

Every day, it seems, another multi-billion conglomerate implodes in a conflagration that will leave entire cities without jobs, causing pain and suffering to large populations, but seemingly not harming those who caused the problem.

How is it possible that, despite being the first stone to tumble, the CEO and the other executives can parachute themselves out of trouble, reaping benefits of what is their failure, while those who worked hard and did a good job have to suffer through misery?

Trusting the Unknown

The startup I worked for must have had its fifteen seconds of glory on, I am sure. I never checked, but there was little that was more reliable in 2001 than the excellent reporting of catastrophic failures on that site.

We had the best money, the best pedigrees, the best ideas, the best space. And yet we miserably failed – and what is worse, we instinctively knew it while we were going.

The problem was clear: we had lost one of the founders, and the new CEO, though studded with the best of pedigrees, struggled to understand the space. A series of wrong decisions, and we were doomed. Our CEO, to be fair, did not leave with a gigantic parachute. But the downside for him was much less relevant than to us. He feared for his reputation, where some of us feared deportation to our native countries.

He failed early on. Very early on. He listened to the wrong people, he hired the wrong friends, he never quite understood the difference between his former company with its hundreds of thousands of people and the lean and mean startup he was handed over.

And yet, those were things that anyone could have seen. Why was he then chosen?

The Axiom of Cascaded Choice

My father, who worked in the Air Force in some unspecified country, complained about the selection of new pilots. They would have five thousand applicants for one hundred positions each year, and could choose from the best and the brightest and the most reckless in the country.

They would start a series of tests, and only those that got culled out through the rigorous selection process would make it to the end. Each examination, each test, would be final – meaning that who didn’t meet the minimum criteria would fail the whole exam.

The first test to pass was the health test. The candidates were sent through all medical checks to make sure they would be actually physically able to fly. Then there were personality tests, to see how they would behave under pressure. A set of intelligence test determined whether they had the intellectual make-up required to understand a complex piece of machinery. A knowledge test would grill them on trivia, to see whether they had the foundational cultural basis to succeed. A political background check would finally clear them from the doubt they might have terrorist or communist potential.

Sounds good? Well, there was a problem. The medical examination was strict enough that only three percent of the candidates succeeded it. This means that of the five thousand candidates, only one hundred fifty actually made it through the first step.

Try to select on intelligence, now. If you allow only the best ten percent, you end up with fifteen candidates. So you have to relax the selection and allow two thirds of the candidates to go through all tests. That can’t be called selection, any more, it’s avoiding the worst.

I am sure that selection methodology changed. But it illustrates a fundamental point very well: if you restrict selection artificially, you will end up with an unfit candidate pool. Let’s call this the Axiom of Cascaded Choice.

Choosing Your CEO

Imagine your CEO. Think about, well… Him. He is white, in his fifties, has a pe-degree from a fancy Ivy League college, worked for a similar company before, in a similar position (CEO, COO, GM), has a network of connections to potential customers, a network of potential hires to draw from.

Wonderful, isn’t it? He has to be a man, because many people (not you, of course!) have prejudice against women leaders. He has to be in His prime years, because too young makes Him too cocky and too old makes Him too out-of-touch. He has to have a fancy degree because anything less reads ugly on the web site bio. He has to have worked in a similar position for a similar company before, because that’s the only way we know He can do the job. He has to have a network of connections because that makes sales so much easier. He has to know people to hire, because that allows us to grow faster.

And yet, you look around, and fewer and fewer of these guys are successful. And more and more of those that did catastrophically ill are from a background like this.

Being Successful

What is it that makes a CEO successful? We know the talents required: charisma and leadership.

Of the two, charisma is probably the more important, the ability to convince and to drive. Charisma comes from confidence, and confidence is an elusive mix of knowledge and assertiveness. Knowledge comes from understanding and experience. Understanding comes from competence in the field, experience from, well, experience. Assertiveness comes from character.

After charisma comes leadership. Don’t confuse the two: where charisma is about appearance, leadership deals with action. A good leader is open, fair, flexible, critical and driving. Open means the leader is willing to listen and ponder; fair that she is capable of treating equals equally and unequals unequally; flexible that she can react swiftly to changes in the environment; critical that she constantly judges the work of herself and of those around her (the basis of fairness); driving, finally, that she is willing to push those around her to achieve more, want more, need more.

The critical nature of the good leader and her openness create an environment in which ideas can percolate up. A good leader is able to listen, and will find those that have better ideas in certain fields than her. Thus, the good leader doesn’t need to be perfect, or even well-rounded. All the good leader needs is a set of competent people that know they will be heard, they will be trusted.

Look at the Rich and the Powerful

Check them all out, the billionaires of 2002. They are a bunch that widely varies in style and personality. You have the humble ones and the arrogant ones; you have the reckless and the meek; you have the white male and the non-white female. The aristocracy of money is united only by charisma and leadership.

How did two persons as different as Jerry Yang and Larry Ellison gain prominence at the same time? Why did Bill Gates succeed and Jim Clark in the end succumb? And more importantly, what lessons can we derive from their successes and failures?


We saw before what some of the criteria are that end up being decision-makers for the choice of executives. Most people will deny that the choice favors white males in their mid-life years, with excellent academic records and a history of pursuits similar to the position to take on.

And yet… show me the company that doesn’t actually have an overhang of this type of person in executive roles, and I’ll be surprised to my core. Go check your own company, look who is at the top of the organizational charts, and report back to me.

And yet… Does a title from Harvard give you any charisma? Is a position of CEO of a company that spectacularly failed a good sign of leadership?

We choose executives based on a set of criteria that will make their success superficially easier. Sure, if you have potential customers in your pocket, you are more likely to succeed than if you didn’t. If you have people that are dying to work for you, you will solve staffing issues better.

By choosing according to this set of criteria, we fall prey to the Axiom of Cascaded Choice: we select too restrictively on certain items, and the pool of candidates shrinks to a puddle right before our eyes. And by the time we give people a chance, it’s too late, we lost the best to their shifting careers or uncertainty in the past.

Other than in the Academy, in the world of industry and commerce the Law of Supply and Demand is very much in effect. The natural reaction to diminished supply is higher prices. And that’s how we end up with people with dubious qualification and horrible business ethics being able to command and demand salaries and conditions that are beyond any reason.


I cannot tell you who to choose as your CEO. I cannot even tell you who not to choose. The only thing that comes out of this paper is that there is a good way to choose and a bad way.

Sit down with your peers and find out what skills are needed to succeed in the job. Find out where the team is strong, and where it needs bolstering. Choose a complement, not a supplement. And focus on the two traits that make and break an executive: charisma and leadership.

And if you listen to me just a little… Don’t even look at the academic track record, the languages spoken, the companies in the portfolio. Make your first choice based on the person, look at the minutia after the fact. If you have to choose between two leaders with equal charisma and leadership, choose the one with the better pedigree and job title.

But whatever you do, never end up choosing between two candidates with equivalent pedigree and job title. If it happens to you, you know you did something wrong. Fastow wrong.

The Factory vs. the Workshop

The Factory vs. The Workshop

Who wasn’t smart enough to know that Internet startups had to disappear sooner or later? We all thought the situation had gotten completely out of control, and we somehow wished the pull of gravity would get those highly egomanic startup captains of venture crashing to the same place from which they had soared.

No doubt a lot of the rise and fall of the era was inherently due to fundamental economic factors that hindsight so easily knows about. There must be a generation of Americans that thinking back smugly affirms: “I told you so!” For you and me that unlike them didn’t know it was happening, their 401k is down just where yours and mine is.

Yet one question remains unanswered: if economics was so clearly predicting the end of the dot.coms, if it was so obvious that their business models were not worth the glossy paper on which they were printed – why did they exist?

The Factory and The Workshop

Let me start with a brief and boring theoretical digression. I want you to look at how we think of work. At how we have been thinking of work since the inception of time. Because there is a pattern there that smells of dot.coms and of stock options and of venture capital, even before there was money, or language, or even maybe consciousness.

Hunters and gatherers, let’s start there.

Gathering is boring: you walk around, you look around, you pick up stuff. Hunting is fun: you run around, you chase and get chased, you have to create tools and weapons. Gathering is menial, anyone can do that. Hunting is creative, and only a good hunter is going to be able to survive. Bad hunters starve.

There you have it: smell startup? Ok, me neither. Yet.

Let’s take the separation we had just above: menial and creative. In our minds, we associate a lot of things with work, and many of them can be placed on the polars that define menial and creative tasks:

  • boring vs. exciting – menial tasks are boring, which is bad. People don’t want to perform them.
  • dependable vs. risky – creative tasks are sought after and depend on talent, it is likely that the competition will force you out of the field.
  • steady vs. divergent – if you succeed at a creative task, the reward will be factors higher than if you didn’t, or even if you performed the menial task.

Of course, things are not just as black-and-white as described above, and gathering can be very exciting and creative, while hunting can be very boring (just consider your pals that stand for days at a time with a fishing rod in their hand…).

But what we get from this is that there is a choice involved. A more or less conscious choice as to whether we want to perform a task that is reliable and predictable, or if we want to risk for the rewards.


Ok, I am going to make a lot of enemies now, since the next point I am trying to bring home is that the nelly artist is closer to the macho hunter than the worker in the steel mill. The former lives a (granted nelly) life of starvation for passion (exciting) and the infinite reward of stardom (divergent). The latter is happy to cash a pay-check once a week and feed his family.

If you are still with me, we’ll see the next big item in this list: if the economy is to be growing, it must change. This means the economy needs creativity, which in essence is the human power to change.

The stereotypical steel worker is not interested in change, since he is interested in steadiness. Someone else must be willing to go ahead, and if not strictly creative, that person needs to be a visionary.

The artist affects change by creating objects. That works well on a small scale, but soon reaches boundaries of growth. On the other hand, there is more and more manpower available for menial tasks that goes underutilized. We need a symbiosis.

The Factory

Some not so long time ago, a smart, creative person (read: artsy) came up with the equally smart idea to create a machine. That is a thing that does things without or with little human intervention. The machine allows for the creation of a lot of things that are very similar, all but identical. It transforms the menial task of yesteryear into an even more menial task that can be performed much faster. Where it took a day to create a decent steak knife, now you can get two dozen a dime on television.

This machine thing had one big downside – it required investment. Someone had to pay for the expensive thing in the first place, and then the expensive thing had to be put somewhere, and it usually needed food and drink and stroking care like an ancient goddess of sorts.

So someone, presumably after the invention of the machine, came up with the idea of creating a temple to house it. We call these temples ‘factory’ and send hundreds of millions of people to them every day to perform (what else?) menial tasks.

The factory now combines the two aspects of creative and menial in a congenial way: the work itself is completely menial, while the inception of the factory is creative. Bringing up the factory is the risk (monetary, for sure), the reward is the sale (which is typically in the factors of the risk) and the menial tasks performed in the factory allow a huge population to create goods they could not otherwise had available.


Back from our digression, we are again in the land of stock options and fancy titles. How?

Well, you see: the factory is the creation of a group of people that take the risk (the capitalists) and reap the rewards (the capitalists). The workers are there to be exploited, because that’s what performing menial tasks is all about. No upside, just steady income.

The ugly side of the equation is that once you establish the factory system, the risk of the artist is not personal any more, but tied to the availability of money. To reap satisfactory reward, the creative person needs capital.

Oddly enough, there are people unlike you and me that actually have capital to spare and no real idea as to what to do with it. They want spectacular returns in exchange for something they don’t need, and that’s what we call venture capitalists. That’s people that put money where their mouth isn’t, to make it short. And they allow for the creation of factories without contributing any of the risk and creativeness involved in the process.


Back to the root. All of a sudden, towards the end of Nineties, there was a new, gigantic market that came open, with no barrier to entry. You didn’t need millions or billions to open a web site and make money, and even a modest investment could land you infinite rewards. But you had to be creative and quick. You had to have hunting instincts.

Venture capital soon flocked. Billions were poured into the Internet, with companies trying to outdo each other in expenses, thinking that the highest investment would return the highest yield (which is a menial way of thinking if there ever was one).

And yet, despite all efforts, the small guys often outsmarted the big ones. Yahoo!, founded by two graduate students who to this day hold a large stake in the company, survived dozens of runners-up, because it was smart and creative and innovative in its approach. Competitors that spent billions did so in vain.

And so we have a host of solutions that failed because they didn’t grasp the new medium, because they failed to innovate and differentiate, because they just weren’t up to the task.

The Architect

Have you ever dealt with computer programmers? Then you know the reverence attached to the title ‘architect’ among them. The (computer programming) architect is the person that knows how to best translate a problem into a solution. That’s the person you need if you have a smart idea for a product, but don’t know how to make it real.

It is not by mere chance that the title coincides with the one odd man out in our culture. The (building) architect is the person that combines knowledge of art and science to create an object that is both pleasing and functional. And stable, of course, too.

The (computer) architect needs to perform similarly, combining knowledge of the trade (computers) and of the art (the functionality). Just like an architect takes the wishes and makes them a building, the computer architect takes the features desired and makes them a solution. In both cases the solution will comprise a variety of specialized choices, possibly made by others, to create an overall result.

The Factory and the Workshop

And here is where the cycle closes. The capitalist creates the factory because without capital, there is no factory. The architect creates the building for the capitalist, because without capital, there is no building. The computer architect needs no capital, and a well-designed architecture will be able to perform on small scales as well as on large scales, reducing the cost to the architect to a salary for the self and the minimal hardware required to run the software.

On the other hand, the menial element of the factory is missing, too. There are no machines that require constant supervision, there are no repetitive tasks to be performed – it is not the world of menial labor.

Computer programming, computer architecture, is a form of art. It may be very well the dullest form of art, but it is one, without any doubt. And you need an artist to create art.

To create computer architecture you need an artist’s workshop, you don’t need a factory.


The current infrastructure of the Internet and of computer engineering as a whole is built around the capital paradigm. A group of people delivers capital to other people who have ideas. The former group creates a factory, and seeks workers to create the product. Workers get paid a fixed income, the proceeds of the factory go to the capital and in part to the instigators.

The classical paradigm is amended only in the heavy participation of the ideators to the financial rewards, and in the lesser participation of the workers. The former is handled by generous grants to founders and early backers, the latter in the form of stock options.

It must be stressed that both forms of rewarding are highly ineffective, since they simply modify the existing and unfit paradigm instead of adopting the correct one. Choosing a menial rewarding scheme where a creative one would be needed skews the results where it is most important, in the case of success and of failure.

Is it fair that the famous secretary of a successful Internet startup walks away with millions? Is it fair that the successful solution of an engineering challenge, of a product challenge receives no reward because of a failure of the sales team? Is it fair that a stock option grant may be worth millions of dollars on one day, nothing on the next, because of market fluctuations that are unrelated to the performance of the company and the employee?

In a workshop, the secretary gets paid a salary, where the artist starves until she or he breaks through. The reward and the risk are proportional to the impact on the team.

In a workshop, the extraordinary work of art that is marred by the unsuccessful marketing can move to a different gallery. The individual’s contribution is clearly marked within the group and can move on its own.

In a workshop, finally, market conditions do not impact the success and rewards of the single person on a daily basis, but only as slow variables to which the individual can react.

Building Workshops

Haven’t we all heard the story of the two brothers that sat down, programmed a Java applet, sold it to some big company and made millions on the sale?

That’s the workshop in its rawest form. Take an idea, make it come true, and then sell it to someone large that can scale it up. Reap the rewards of the creative work and move the menial task to someone else.

It can’t be stressed enough that the existence of factories in the computer world are a remnant of the old days when a computer cost millions of dollars and occupied a space that could house a factory or two. Back then, there was no choice, the capitalist model was the only one acceptable for computing.

Once the capital barrier fell, the world of computing quickly reorganized itself around workshops. We are just unable to see that yet. First, the open source movement brought a plethora of ready-made components out of which ideas could be assembled into reality at very low cost and in a very short time frame. Consider this the equivalent of artists learning from each other by just looking at each other’s paintings or listening to each other’s music.

Once this occurred, it was a matter of time for the first programming celebrities to come up. Linus Torvalds, Richard Stallman, even people like Marc Andreesen become stars because of their exceptional roles.

Currently, the balance of power is still shifted towards the factories. This is rapidly changing, with the largest factories realizing widely that they can survive only if they specialize in menial tasks. IBM and its success as a services company is the best illustration of this trend, the failure of all big UNIX companies demonstrates how the attempt to keep the creative world caught in the trap of stock options is doomed to fail.

But in the future, it will be the artist that steers the ship of development. It is hard to say whether the development will move: towards the pictorial scheme, where the industry is happy fabricating replicas of art works, but the artist has all of the scene; or towards the musical scheme, where the industry’s promotion is instrumental in the success of the artist.

But in the end, it’s the idea that counts, and it’s the idea that will have to make the money.

The Curse of the Competent

Cursing the Competent

As long as the Internet economy was happily bubbling ahead, the Peter Principle reigned supreme: Peter joined a startup and got promoted quickly. Invariably, he would land in a position where he not only started failing, but dragged the entire startup down with his incompetence. Which of course didn’t quite matter, since the Peter Principle was (and is) democratic and made everybody else look just as stupid as Peter himself.

The economy turned sour, Peter’s startup died as everybody else’s, and he scrambles to find a new job. Of course, he will want a stable company, with lots of cash reserves, good management and excellent products. Since he is good, he lands The Job, invariably at three hierarchy levels below where he was, with maybe half the salary. But who complains?

Around Peter all the people that have been there before him. They are a little afraid, since they know they kept their position because their company did well, not because they were better than poor Peter. Russian roulette of startups. The manager might not even have been able to get hired in Peter’s old company. But that really doesn’t matter.

Peter works hard, as he’s used. He solves any problem in half the time that anyone else takes. Which doesn’t make him a popular guy on the block. In particular, his manager knows how she will be followed in her every action with the critical eye of someone that used to supervise her likes. And that’s when Peter is hit by the Curse of the Competent.

Peter the Competent

To a certain extent, the Curse of the Competent is the mirror image of the Peter Principle. While the latter states that “Everybody gets promoted to their level of incompetence”, the former simply states that “The competent gets to do everything” You think that’s a good thing? Well, think again.

Where the Peter Principle holds (almost everywhere), there are loads of incompetent people. That’s wonderful, bright, industrious, diligent people that are perfect at everything, except what they are doing right now. That’s what the Peter Principle is all about, isn’t it?

There is a conspiracy around these incompetents: they can’t be blamed for their failure, and their superiors surely do not want to be blamed for it, either. Their reports either move on to another job or hope the incompetence will be filtered out at some point, which is when they get their chance (and will invariably be moved to their own Peter Equilibrium Point).

Someone has to do the Work! Which is where Peter the Competent comes in. Peter’s manager (who can’t really stand him) sees how her report can handle about anything that comes across him. And lo and behold, anything quickly morphs into everything. At every critical juncture, the manager has to assign tasks. Peter can handle it, so he gets to do it. The incompetents cannot handle it, so they don’t have to.

Still, What’s Bad About It?

High-technology is an interesting world: a skilled worker will have a productivity factors higher than a less skilled one – but the compensation for both does not differ by factors. In a separate essay, you’ll read how this is an anomaly in history, instead of the norm.

In an environment with built-in upside, as was the case during the end of the past millennium, competence was rewarded by growth. In that ancient world, the upside was distributed unequally, generating a differentiation engine for the competent.

In this new environment, there is no growth that compares with what we had. The Peter Principle finally holds us hostage, in that while some cannot move away from their Peter Equilibrium Point, others (the Competents) will not be able to even reach it.

Work has to be done. Good people do a lot of good work. Hence good people get to do all the work BUT… But they don’t get any upside, because there is no upside to distribute. The Competents are in the firm claws of their Curse, subject to envy, jealousy, distrust, and reverse favoritism. They will be left out of decision making (because they know better), left out of perk distribution (just because they are unwelcome hostages), left out of career opportunities (because someone else is less dangerous).

Avoiding the Curse

One harsh word first: you cannot avoid the Curse of the Competent and gain the upside. The only way you can beat your fate is by skillfully avoiding to be recognized as a Competent.

First, you have to completely avoid the perception you might be better at anything than your colleagues. Do not speak in meetings unless you are asked something, always look bored. Come in at irregular hours, don’t try to impress anyone. Once in a while, come up with a positive surprise, but keep your profile low.

Second, keep your mouth shut. I’ve seen examples where a poor decision maker forced a particular choice that ended up costing the company millions of dollars in revenue. The Competent in this case warned ahead of time: whisper, dialog, argument and shout didn’t do anything but firm up the resolve of the manager and mark the Competent as such. A dreadful fate.

Third, limit your competence to a supporting role for the Peter Principled. They will appreciate your help more than your Competence, and you will be allowed to avoid the Curse of the Competent by being a Nice Guy. Nice Guys are those people we pass up for a promotion but that we don’t punish for deserving one.

How Do You Change the Environment?

If you are caught in the Curse of the Competent, there is nothing you can do. People percieve you as threatening (their position, mostly) and will avoid a strengthening of your influence at all cost. So, try to never enter an environment in which you are doomed by the Curse.

If you are high up in the corporate food chain, you can apply modern means of management and start insinuating that the upside belongs to the Competent. You’ll need to have tangible criteria for competence, and you have to apply them consistently. Make it clear that you will not tolerate incompetence. Fire people for incompetence, without ever saying so, but with consistency.

Soon, the demographics around you will change. People will leave saying you are a tyrant and your demands impossible. But when you check back, you’ll see that those that left were not your Competents. Competents generally don’t mind harshness. They read Ayn Rand and think everyone should deserve what he or she earns.

The tenor in your team will be less jovial, most likely. People know they are there for a reason, and that that reason is not called ‘human warmth’, but making money. It is incredible how many people never really stop to think that the purpose of work for the corporation is solely money. Not recognition, not personal growth, not satisfaction. Just money.

At some point, the team will be mostly made of Competents. People that admit they are wrong, even though grudgingly. And then you’ll have to fight the Primadonna Paradox and the Food Chain Poisoning. But compared to the Curse of the Competent, that’s cheap.

The Short Version, Please!

In most companies you’ll find some people caught in their Peter Equilibrium Point; unable to move up or down and incapable of performing their function, they will hit everyone around them that even remotely looks like a potential threat.

In the high-tech field, we see the Peter Principle applied to entire companies. Initial sudden growth stops equally suddenly, and the whole enterprise is frozen in an odd Peter State, in which most people shouldn’t do what they are doing, but since the position that would suit their competence is neither available nor compensated enough, they prefer stayind put.

Once you join such an environment from the outside, you are typically going to be hired into a position in which you are competent. Which means you will be an anomaly, a threat. When the perception is born that you are good at what you are doing, people will start being jealous and frightful, and you are subjected to the Curse of the Competent. And that is when you are to do everything (especially what other people don’t want to do), but are not proportionately compensated with the upside that the company has to offer.

If you want to avoid this horrible fate, do not show Competence. Make Peter Equilibrium People feel at ease by allowing them to make stupid decisions. If you are in a position to influence the direction of the company, get rid of the Peter Equilibrium People. If you aren’t, run away as soon as you can.


The Curse of the Competent

Ok, there is another task, and there is this one guy that is really, really good: never makes a fuss about getting more stuff piled on, never needs any check-in, always delivers above satisfation. This guy (or more frequently, gal) will end up doing a disproportionate amount of the work for no extra charge and no advantage… S(he) is hit by the Curse of the Competent!

The Factory vs. the Workshop

Currently, the structure of software companies mimicks strongly that of manufacturing plants. If you look at their composition and makeup more closely, you’ll find that software companies are much more like artists’ workshops than like factories: the outcome of a programmer’s work is much more varied in quality than that of a laborer, and the risks are much higher. I argue that in the long term, the current software sweat shops will disappear and a community of small ateliers will replace them.

The Good Executive Officer

My spin on excessive executive compensation: the overpayment of CEOs and other corporate officers is due to the psychological need of boards of directors to find the Perfect Match. In doing so, they focus on formal criteria (schooling, experience in similar companies) that are hard to match and hence give rise to excessive compensation. If the boards focused on things that are likely to be related to future performance, such as attitude and personality, we may end up having cheaper, yet better CEOs.

The Three Ingredients of a Successful Startup

I’ve watched a great many flaked on the Internet, and a few successful companies. Sure, most of the flakes just executed poorly: it was the wrong guys, the wrong timing, or the wrong environment over and over again. But to be successful, you’ve got to have more than the right guys, the right timing, and the right environment.

Here’s a look at what I think might make a successful startup. Interestingly enough, it’s just talent that makes the list. 

Bottom 10 Habits of Productive Employees

There certainly are people that are not productive. This is not about them. This is an essay for all those that are trying really hard, but get frustrated by their management, or better: by their relationship with management.

Turns out most managers have your best interest in mind. So if you feel like things are not working out in that department, give this essay a try. If nothing else, it may help you understand better what your managers need from you.

Business Hosted Services

You remember ASPs? Back in 1999 they were all the rage, and in 2000 they were the poster child of everything that went wrong in the bubble days. Well, The new Millennium brought us a new breed of ASPs They changed their name to Business Hosted Service, and the entire business model, but otherwise they try to harvest on the same powerful combination of Internet and Application.


sitting on a starry night
high above my windows
watching all those stars
quietly go round.

now how often did i sit on the hill
on the green or grassy buena vista
looking up the tired and trite signs
of centuries of yore.

beam me up, antares!
my guiding light of dusk
and wrestle with my loved one
for the privilege of blood.

beat me up, polaris!
you fixest of the suns
and cure me from my gaze
straight into his eyes.

and yet, remembered is the order
the lines so well redrawn
the meaning once so certain
is quickly now withdrawn

did i see his smile shining
painted by arcturus?
did i see his hands running
on my chest, or vega?

little by little
the lonely stars
fancy being my lover
at least a portrait.

who needs the hunter
when i am no more prey;
who needs the scorpion
when i was yet stung;
who needs the lyre
when love was sung
a million times before?

who wants the eagle
if my thoughts can fly;
who wants the twins
where two is one;
who wants the river
when all is gone
that flowed one night before?

little by little
the glorious stars
dance along together
a hundred brand new signs.

and while i smile
the whirling balls of fire
hum along about
coordinates of love


oh, how i love this wondrous city,
atlantis on the rocks;
one third is ocean spray,
uncommon sense another,
the rest, the hottest fruits.

look, how it hurt to live its winter season,
the aches, the pains, the treasons and betrayals;
and yet, awake, gone are those worries;
would i drown in the sea of sun
that cascades through the window.

that little twig seemed dead ten days ago
robbed by the chill of any little life
it might have thought it might have had
lonely, bitter, dry, unhappy
that’s what it seemed to me.

look at it now! that little twig is a giant at bloom, the rite of spring,
full of blossoms, of fragrance, of color
of life, of being, of lust and of passion
just like a picture of me!

i open the window, i think i might fly
so light is my heart in the heat of the light
i open the window, i think i might howl
so powerful sense i the new in the sky

peace i needed
peace i got

and now, the sunshine burns my skin,
and smells like a new life
my body aches for motion.


1. the main purpose of life is the achievement of happiness.
1.1 it takes two to be happy.
1.2 happy is made of smiles, of laughs, of play, of fun;
1.2.1 of tender kisses under the november moon and sweaty nights under the august sun;
1.2.2 of frosty fingers under cuddly winter blankets and of hunting butterflies in the skies of spring.
1.3 there is no such thing as a sad day.
1.3.1 the sad moments are when love and friendship grow;
1.3.2 the sudden burst of tears is as important as the sudden bout with laughter
2. i am myself.
2.1 grew up in europe, between castles and design furniture.
2.1.1 rome is the most wondersome city.
2.2 know a lot of things i cannot use, and still seek those i need.
2.3 intelligence and wit and humor and creativity.
2.3.1 i cannot live without sharing the things we have learned; without learning.
2.4 experiencing, moving, seeking, desiring.
2.4.1 i cannot live without doing – be it riding my bike, hiking up the mountains, traveling to distant places or what you have.
2.5 i am and i am not.
2.5.1 the day you think you have figured me out, i am all different again. this is true for everything except for the continuity of my affection and love it is true for sex, too.
2.6 will you like me?
2.6.1 italian looks, athletic build, quite hairy and masculine. you choose.
3. are you the sun or the moon or the stars in the sky?
3.1 to me, you will be all.
3.1.1 no matter what role you will have in my life, no matter what role i will have in yours.
3.2 be all to yourself.
3.2.1 there should be no thing you wouldn’t want to explore.
3.2.2 i want to be able to do everything with you.
3.3 demand much; give much.
3.3.1 don’t forget life is short.
3.3.2 don’t forget life is short.
3.4 how will you look like?
3.4.1 do i really have no fetish?
3.4.2 whatever you look like, i will find you attractive if your heart is open. as long as you can chase me around the hills of Tuscany on your bike, that is…
4. a day together is a day of joy.
4.1 waking up and listening to the silent presence of my man next to me makes me shudder with joy.
4.2 feeling his skin under my fingers sends thunderbolts through my spine.
4.3 throwing bread crumbs over the table and not worrying about the coffee spills;
4.3.1 there is no life without spills.
4.4 the beach, the bike ride, the trip to the hot spring.
4.5 visiting home, visiting friends, finding new friends together.
4.6 working for a living.
4.7 love is marvelous, friendship irreplaceable.
4.7.1 the blinking light of the answering machine can be joy.
4.7.2 there are lots of things you can do in an elevator that is stuck; we shouldn’t think of sitting on the floor and wait.
5. i am a fool.
5.1 worse, i am a romantic fool.
5.2 and i love it.