Google realises the need to self-promote ... they just released their 'Dear Sophie' ad pitched at a wider audience than just the tech community.
> the software actualized by code DOES speak for itself to anyone capable of using it.
And this is the point that one of the parent posters made - this attitude of 'people should be able to tell how brilliant my code/software is' is really arrogant (the parent posters words, not mine). Your customers/users will almost never be more knowledgable about your software than you are - so by not self-promoting, you will actually be losing customers/influence/users because they will pass on your products if they don't understand the benefit to them. This applies to the most brilliant of customers to the dumbest.
ms did a great job of self promoting ie and it's a piece of shit.
firefox gained a huge market share because the actual experience of the code is brilliant, not because of any self promotion.
all self promotion does is add a layer of noise over figuring out what to use. that is the ONLY reason google advertises chrome - because all the marketing scum out there has made it necessary.
The techie (or Silicon Valley) view of the economic world, while fruitful, is a very meritocratic. We only believe that cream of the crop always rises to the top. Unfortunately this is not how the world works and the OP's suggestion about self-promotion is evidence of such (read - Jobs v Wozniak). We read stories from Steve Blank and PG about "just make a good product and the rest will follow". While good advice, I can count on my hand the number of products that "suck" that are way more successful than the ones that don't suck. It's the reason SAP, MS, and Oracle still exist.
Why are techies like this? I believe its because we are extremely analytical pattern hunters - we hate replication and deficiencies. Marketing to us represents an inefficiency in the system because it doesn't represent 1 or 0.
Actually it's not just that. True, techies recognize that marketing represents an inefficiency in the system, but, lacking social skills, techies are naive enough to think that they can improve the system. They can't, and they don't understand why (but look ma, I made a goooood product, why won't anyone buy it?). They assume that everyone has plenty of time on their hands to read the latest reviews on the product they buy, to compare specifications, and then to trial-test the product themselves, all the while being careful so as "not to fall into a marketing scam." No, most people are not like that. Most people make snap judgements in a split-second about whether or not to buy a product and if they feel like they spend too much time deciding then they simply move on. Techies specifically choose to ignore things like public image and social status (actually they replace the status ladder by their own one), and consequently suffer from it.