Dec 31, 2004
Google - comments on comments
There are 2 comments on Adam’s piece worth addressing. Since it looks like commenting on that post has been disabled, I’ll do it here.
First, Kurt calls Dare a hypocrite for complaining about Google while being a Microsoft guy. It’s really uncalled for becuse Dare didn’t complain, I did. Dare just pointed to my post and added neutral commentary. Just for the record: I, just like Adam, used to work for Microsoft. But I no longer do.
More importantly, Chris DiBona, formerly a Slashdot editor and contributor to a book on open source, now a Google employee, calls me ignorant and lazy for not knowing about Google’s open source contributions.
Maybe I am. However:
- I do follow my share of open source projects (a bad addiction, really) and I’ve never seen a Google employee participating in them. Which, of course, proves nothing but one data point is better than zero.
- I did ask on my weblog for pointers to Google’s contributions. Despite temporary popularity of my blog, no-one sent me any.
- I’ve read all the weblog posts commenting on my piece and no-one else in blogosphere was any less ignorant or lazy.
All that leads me to believe that Google’s contribution, if not a mythical creature, is not that easy to find.
Chris promises a list of Google’s contributions in “coming months”. I would rather have it now. The good thing about promising to do something months from today is that you don’t have to do it. You can just rely on the fact that everybody will forget that you’ve made such promise.
Bad Google - the fallout
The good thing about using bloglines.com is that you can easily track who’s commenting on your piece. There are quite a few and my bloglines subscription count jumped from 58 to 66.
I probably owe Dare the popularity of this post. He mentioned it on his weblog. His bloglines subscription count is 422. Other people that linked to it are Paresh, Danny,
James,
Johannes,
Alfred
and Adam himself.
Randy essentially agrees, pointing out that Google, despite hiring a lot of Ph.D., contributes very little to academic world, much less that Microsoft’s MSR.
David makes a very good point: freely available, open source software gives the small guy ability to compete with a big guy because it significantly lowers the cost of doing business. In other words: everybody, big and small, can freeload on open source.
InsideGoogle thinks I’m one angry guy.
Mike, who works for Amazon, defends Amazon but I don’t like his spin. First, he denigrates the value of the source code and elevates the value of Amazon’s web services and data they provide. Larry makes similar comment: Google is good because their search is a useful, time saving service. Just to be clear: I love Google search and gmail, I use it every day. I love Amazon, I use it almost every day. I love Microsoft’s Windows XP, I use it every day. I love Apple’s iPod, I use it every day. I also love Kellog’s cornflakes, the ones with strawberries in them. All of that is irrelevant: all those companies do what’s good for their business, making good products that I pay for, one way or another. And they would create those products the same even if they had to pay for all the software they use in the process.
I’m just using those companies as an example, to show that popular wisdom about open source is largely a myth. Open source code gets written but its success is not because of processes that people describe.
The reason for incredible growth of open source is not yet understood and usually misrepresented.
Dec 30, 2004
2005 prediction - the rise of anonymous p2p
“So sue me” - he said. And that’s what they did.
End of 2004 was the time of legal battles. RIAA and MPAA started suing anybody they could. Let’s not kid ourselves: they had the right to sue. And they will win those battles. The question is: will they win the war?
“I say to you that the common man is to the American film producer and the American public as the Boston strangler is to the woman home alone.”
Their first problem is alienating the costumers. RIAA and MPAA replaced Microsoft as the most hated corporate entity in the blogosphere. Are they right? Are they wrong? Nobody cares but everybody is pissed. And that anger is a good way to justify illigal behaviour of downloading music or movies. In the past MPAA was able to sput nonsense to congress members without anyone noticing but today at least the weblogging and weblog-consuming part of the society is watching and they are not amused by the rethoric.
“One more such victory and I shall be lost!”
The bigger problem is that they started a war they cannot win. What we’ve learned from Napster and BitTorrent is that a technology for file-sharing can be built literally by one person and its popularity skyrocket in just few months. Current protocols have flaws that enable RIAA and MPAA to use legal system to shut them down.
Napster had a flaw of being centrialized. It was a matter of winning one case to shut them down forever.
BitTorrent, Kazaa and other decentralized networks cannot be killed that way but they make it trivial to track down people who upload files. That allows RIAA and MPAA to sue individuals. That’s a very expensive way to fight p2p file sharing but I hear they still make lots of money. And they can always compensate by showing more ads in theaters or inserting ads in the middle of songs. Besides, this is more of a scare tactic: they don’t have to sue everyone who uses p2p because in the end MPAA execs would be the only ones not being sued. They just have to convince public at large that downloading songs or movies is too dangerous, not worth the risk of being sued.
“It cannot be traced. It cannot be stopped.”
Creating an anonymous p2p network that will make pin-pointing individual file shares impossible on a practical level isn’t that hard. And I predict that in 2005 an anonymous p2p network will rise in popularity rivaling current popular p2p networks.
This might happen as an anonymous overlay network like Tor or as a new, specialized networked protocol.
My other prediction is that after the studios will loose ability to use lawyers to stop file sharing, it’ll take them about 5 years to offer a product that is able to compete with BitTorrent.
Counterpost to a counterpost.
Thanks to an ex-co-worker we have in common, Adam noticed my little rant (a hint: monitoring your track-backs is a better way).
First, what he’s right about: I equated Adam with Google and that is not totally fair. Adam is not Google, Google is not Adam and whatever Adam says or thinks is not Google’s official position. But then again, most of my points are based on my observation of external behaviour of Google. Adam’s post is just something that jumpstarted my thinking.
As to Google putting a lot of time and effort into open source - forgive me for not just taking your word for it. I can’t possibly know what are Google’s contribution to open source but a good faith effort on my part to find out turned out nothing. But hey, it’s easy to prove me wrong. If Adam, or anyone else (working at Google or not) is willing to send me pointers to code that Google employees contributed to open source projects, I’ll collect them and post on my weblog. But I’m talking about real stuff: source code, patches.
So far the only thing I know about that can be counted as open source support is Google hosting Mozilla dev days at Googleplex. I know that Google is looking for Linux kernel developers but is any of their work going back to Linux kernel? Google is in nice position: due to the fact that their software isn’t “released” the way shrink-wrapped software is, Google is not bound by GPL to publish the changes to GPL softwared.
About me assuming that you can’t make money from support for free software: I don’t see where I make this assumption. And it’s not what I think. Given the success of RedHat, MySQL or sleepycat it would be silly to think that.
But let’s not get over-excited: this is really another myth in the sense that making money from open-source support is a harsh business and it’s extremely hard to make money that way.
MySQL and sleepycat make money by dual-licensing i.e. they sell their source code to those, who need it but cannot accept GPL.
RedHat is one company that makes decent business with support business model, but they practically invented it and they are the ones making strategic and crucial contribution back to open source.
Let me put it another way: how many support contracts Google has for open source products? Does Google pay anyone to support the kernels they install on their machines, does Google pay anyone to enhance web servers they use? Compilers? Interpreters? Data-bases?
I don’t know but I’m guessing not. And that’s exactly why I wouldn’t recommend anyone going into business of supporting open-source. You’ll find that you have much less customers than the theory suggests. You’ll find that many, just like Adam, preach the viability of the support business, but when it comes to pony up the cash for code improvements they need, they won’t. They will just ask you to code the changes for free. If you do, they’ll use your stuff. If you don’t, they will pay Oracle if it already has a solution that solves their problem instead of paying PostgreSQL developers to add this functionality. And that’s why I claim that Google/Amazon/eBay/Yahoo combined have no strategy for taking advantage of open source. They happily take whatever is free at the moment but make no efforts to create more of free stuff in the future.
But again, it’s easy to prove me wrong. Send me success stories showing that a significant number of companies are willing to pay for support for open source products and I’ll change my mind. Even if their revenues will be a fraction of Google’s ad business.
Dec 29, 2004
Google - we take it all, give nothing back.
I have a new hobby: inventing advertising slogans for Google. Being the nice guy
that I am, I grant Google non-exclusive, non-transferable right to use
those slogans in their marketing efforts.
Today, beside few new Google slogans, I give you the following shocking
revelations:
- open source doesn’t work as well as they tell you
- Microsoft creates more open-source code than Google
- how to bring down Microsoft
This post is for mature audiences only, ridicules Google and everyone
who gets in the way, doesn’t use web standards and is not XHTML compliant.
I don’t even know what being XHTML compliant means.
Open-source - not working as advertised.
The popular theory (”myth” would be a better name) is that open-source
works because of this positive feedback loop:
- source code for product foo is released
- it’s free so it gets used
- if it doesn’t fully meet someone’s needs, that someone can code the
functionality (since the code is open) and submit the changes back
to project (something not possible if you use closed products like Windows
or Office or Google) - those contributions improve the product for everyone else, so more
people use it so more people contribute the code and so on. Sky is hardly
the limit.
The good thing in this theory is that it doesn’t rely on kindness
of strangers but on englightened self-interest of those who benefit
from free software. The bad thing about this theory is that in theory
it works much better than in practice.
It’s all because of a
weblog post by Google’s Adam Bosworth. Read it yourself, but the gist
of it is that, according to Adam, commercial database vendors don’t
understand the needs of companies like Google or Amazon or Federal Express.
Relational database rely on static schemas and there are no good ways
to dynamically reconfigure databases without the disruption in service.
Adam ends with a plea to open-source fairy:
My message is to the Open Source community that has, so ably, built LAMP
(Linux, Apache and Tomcat and MySQL and PHP and PERL and Python).
Please finish the job. Do for databases what you did for web servers.
Give us dynamism and robustness. Give us systems that scale linearly,
are flexible and dynamically reconfigurable and load balanced and easy
to use.
This is why the theory of open source doesn’t work in real world. A
multi-billion company has a clear need for software that works well
for them but instead of investing in existing open-source projects
like PostgreSQL or MySQL to make them do what they need, all they
do is ask some magic, undefined entity they call Open Source community to
do the work for them. For free.
Google - we take it all, give nothing back. Come work for us.
Let’s estimate how much money did Google save by using open source
software that they would otherwise have to purchase. The operating
system for tens of thousands of their computers. Web servers they use.
All the Unix utilities they use. Editors, compilers and debuggers they
use to write their code. E-mail smtp server. E-mail pop servers.
Languages like Perl and Python. Databases like MySQL and PostgreSQL.
It’s safe to say that if Richard Stallman was never born, the licenses
for those kinds of software would cost them tens of millions of dollars.
And what does Google contribute back? Where are their patches to gcc,
gdb, python, postgresql, sendmail, emacs?
Google - we leave open-source to Microsoft. Come work for us.
It’s very ironic that I can find more open-source code created
by Microsoft and its employees (
RSS Bandit,
IronPython,
Windows Installer XML (WiX),
FlexWiki) than
by Google employees. Not saying that there aren’t any but they are
certainly not easy to find, even when I use mighty search engine
trying to find
google open-source.
Google - we like our hardware cheap and our software free. Come
work for us.
If you’re into this stuff you know that Google is known for it’s highly
tuned process of selecting hardware components (i.e. all those thousands
of computers they need to index and store the web) to hit the best
price/performance ratio. In a way, they use the cheapest thing, when you
define the cost as the total cost of ownership (as opposed to simply
the cost of buying the hardware). Thanks to Adam’s admision:
Indeed, in these days of open source, I wonder if the software itself,
should cost at all?
we also know, that they like their software free.
As a side note, it’s a surprising statement coming from Adam who knows
very well that writing software costs a lot. Open-source doesn’t
eliminate this cost, it just shift the costs and allows unlimited number
of free-riders, like Google.
I’m picking on Google, but they are not alone. Amazon, yahoo, ebay,
aol. Any large business that uses web as means of providing services and
making revenues is enjoying enormous savings by using open source
stack on their back end. And what do they contribute back? A good
approximation of zero compared to benefits they reap.
Another irony: compared to this bunch Microsoft looks good, they
are the only ones that did pay for the software they use on their back-end
The thing is: I actually believe that positive feedback loop in open
source is possible. Except that it requires enlightement on the part
of executives at all those companies. They should recognize that
they should invest in improving in open source software that they
use as their infrastructure. Not out of grattitude but because it makes
good sense in the long term. It’s the cheapest way for them to get
software they use for building their services.
But Adam’s example shows that there’s a fat chance of this happening.
Adam is not a rank Google employee. He was not hired to give free massage
to stressed Google employees. Before Google Adam was a high-ranked executive
at Microsoft and BEA. He led teams that created successful products (IE,
Access among them). He’s in position to influence what Google does.
He understands technology, he understand the cost
and difficulty of making software. He has a weblog and deep thoughts.
If only he understood the strategic value of open source.
If someone like Adam cannot see further than the tip of his own nose
and his ideas are as bold as asking others to write the software
he needs for free, then I don’t have much hope for anyone at
aol to get it either.
The Art of War - how to bring down Microsoft.
As an additional bonus, my prescription on how amazon, yahoo, ebay, aol and
ibm could band together and bring down microsoft. The reason Microsoft
is a competition to almost anybody who gets big, including yahoo, aol,
ibm and google, is that in order to fuel their growth, they have to
enter every profitable, software-related business. They are late to
almost every party, be it web browser, game consoles, instant messaging,
free web e-mail, webloging, decent search but they’re still a formidable
enemy because they can fund those businesses longer than anybody else
thanks to their cash cows: Windows, Office, SQL Server and Exchange.
Kill those cash cows and Microsoft has nothing. They can no longer
support money-loosing businesses for years.
At this point no other company can hope to make good business in those
markets. There are open source alternatives but they are not good enough
to make switching to a non-Microsoft solution a possibility.
Combine the resources of google, yahoo, aol, ibm and invest serious
money into open source projects. Improve Linux, drivers, desktop
apps to be as good as Windows. Invest in Open Office to kill Office.
Invest in Firefox so that there’s no reason at all to use IE. Invest
in Thunderbird so that it can replace Outlook, including Exchange
connectivity. Invest in PostgreSQL to kill SQLServer. Invest in
something to replace Exchange. And be prepared to hire 50 thousand
available Microsoft developers.
Google - do no Evil. Do no Good. Just like everybody else. Come
work for us.
Let’s consider the moral side of the story. Is Google (or any other
company) that benefits so much from open-source obliged to contribute
back? And I don’t mean in a token way, like donating $100 to Mozilla
foundation. I’m talking about investing at least 10% of estimated savings
back into open source. Either by donating money to established venues
like EFF, FSF, Mozilla Foundation or by hiring developers to spend
all their time developing the code for open-source projects.
In those days of focus on corporate profits (where there any other days?), Google’s motto “Do no Evil” is refreshing.
Or is it? It’s a nice soundbite, but when you think about it, it’s
really a low requirement. There are very little things that deserve
to be called Evil. If a senior citizen is taking a nap outside his house on a sunny day and you kick him in the groin - that’s
Evil. Most other things are bad or neutral. Not doing Evil is easy.
Doing Good is the hard thing.
Dec 28, 2004
A large, networked hard-drive needed.
Here’s what I need: a large (we’re talking 1 Terabyte-large), fairly quiet, networked (wi-fi, ethernet and usb 2.0 interfaces) hard-drive.
All we’re talking here is just an enclosure for 2 hard-drives (so that I can stuff 400 GB mosters in it) with wi-fi/ethernet/usb interfaces and some software inside so that it can serve as a drive for my computer via wi-fi. I would put it in a closet and finally have a backup storage that can be used by all my computers and will survive the upgrades of my main computer.
I’m willing to pay $200 (just for the enclosure, I would still have to shop for some big 400 GB hard-drive, but the total cost should be less than $1k, and dropping every day).
I know that products like that are slowly showing up but usually they come short (very, very short) in terms of size. Like giving 160 GB. 160 GB? I want 1 Terabyte!
I know they’ll come. I just need to be patient.
Dec 26, 2004
Python 2.4, Windows and MySQL
Headline update: I put mysql-python 1.0.0 binary for Python 2.4 on Windows on my website, as a public service, so that you don’t have to compile it yourself. However, read the warning.
Things aren’t peachy for those that like to live on the bleeding edge of technology. I just upgraded my Python Windows installation to the latest 2.4 version. As always, a few lessons have been learned.
First tip: if you want SSL support (which includes ability to do HTTPS requests via built-in urllib, urllib2 and httplib modules), you need to use the binary from python.org. The more popular (?) ActiveState Python install doesn’t have SSL support (probably due to stupid goverment regulation banning crypto code).
Another nasty surprise was lack of pre-compiled MySQL-python module. SF download only has version for 2.3, which won’t work with 2.4. I lucked out: I was able to compile it myself. So here’s how I did it:
- you need to have Visual Studio .NET 2003 installed (the free version that Microsoft provides might work as well, but was not tested)
- you need to have MySQL installed
- download the source for version 1.0:
MySQL-python-1.0.0.tar.gz. Other versions might work as well, but have not been tested.
And here’s the trick: unzip the sources and comment out the following line in setup.py:
if mysqlversion > (3,23,0):
libraries.append("z")
Then do python setup.py install. If you’re as lucky as I was, it’ll just work.
It’s rather surprising that there is no ready binary for MySQL-python module for Python 2.4. All Python, Windows and MySQL are quite popular, I hear, so even if you take the intersection, there should be people that needed it before me, but all a google search turned out was one post on python list from a person having the same problem, no resultion was suggested.
GPL 3 - anti-patent virus?
As a working programmer I am against patents in general and software patents in particular. To abbreviate the arguments as to why: it’s not possible to write a non-trivial piece of software without infringing on someone’s patents. The fact that software world isn’t consumed by patent-litigation frenzy is due to luck and not inability to sue the makers of pretty much any released software.
While the only right solution is to abandon software patents, according to CNET aticle the next version of GPL might have an interesting anti-patent clause. The idea is that if someone sues GPL software for patent infringement, he’ll loose rights to use any GPL software.
This is just brilliant. Today GPLed software is used everywhere. Not using it at all is an option for majority of companies. Imagine that a company is prohibited from using Linux, gcc, gdb, emacs, samba - you name it.
GPL as an anti-patent, latent virus.
Dec 25, 2004
Treo 650 better than SX66
I think SX66 is much cooler, more mysterious name than Treo 650 but according to a person that used them both, Treo 650 is a better phone. Here’s what that person says:
The SX66 is definitely more PDA than phone. The Treo650 works well as a phone and while on paper the size difference wouldn’t seem that huge, in real life the Treo fits in a front jeans pocket and the SX66 doesn’t. Another PDA centric nit for the SX66 is that is doesn’t display the battery meter on the today screen or phone screen. In my use, the Treo also has much better battery life (larger screen on the SX66 probably hurts).
If you don’t mind using a Bluetooth headset and carrying the SX66 in a belt case, it makes an OK phone. It doesn’t hold calls as well as the Treo and RF reception is not as good. The Treo is a loud phone. I end up cranking the volume down and at times the microphone picks up nearby conversations. The SX66 sounds OK but called parties often complain that the sound is thin or muted. The Treo can be used as a phone pretty easily without having to leverage the touch screen. Even most PDA functions can be done without leveraging the touch screen. The SX66 is too frustrating to use without the touch screen.
The slide out keyboard on the SX66 isn’t as easy to type on as the raise keys of the Treo and it takes two hands to slide out (unless you want to press hard on the touch screen). I find that I don’t use the keyboard much on the SX66 and end up with a lot of finger prints on the screen (try getting the stylus out with one hand when your in a hurry).
The SX66 does have some advantages (large screen, ActiveSync over GPRS, Wi-Fi, etc.). Both benefit from third party software to make them more useful.
Font Vera Sans Mono - recommended for programmers.
I’m guilty of liking to play with settings on my computer. One of the things I change once in a while is the font I use for writing software. Since I do it a lot, it is important to me. However, I always get back to standard Windows Lucida Console font.
Enter a recent find Bitstream Vera Sans Mono (found through this list of mono-spaced fonts.
I’ve been using it for quite a while and I’m pleased. Not sure if it’s actually better than Lucida Console, but it’s just as good and it’s different. One good thing is that it has dot inside ‘0′ (the number zero) so that it’s easy to tell it from ‘O’ (the letter O).
As a side note: the interface for adding new fonts in Windows is abysmall.
