4 is particularly interesting to me. When I worked at Yahoo! back in 2005 I was constantly jealous of Google's infrastructure stuff - Yahoo! stuff was all replicated MySQL, PHP, memcached and Java while Google appeared to be creating infrastructure that totally changed the way you approached large scale development.
In the past five years, it feels like the world outside Google has mostly caught up - in part through open source equivalents of Google's secret sauce. Hadoop, EC2, S3, the various NoSQL engines, RabbitMQ, Thrift, Scribe... access to the Google stack may not be as big an advantage.
I spoke to a Google engineer recently who complained that the Google stack was actually something of a pain to build agains, with a very steep learning curve and a great deal of innertia to work around.
Totally agreed that the world outside Google has mostly caught up. An equivalent for BigTable and associated libraries is still missing though. Hypertable, HBase, KDI and even Cassandra are extremely poor substitutes. I often end up resorting to App Engine for many projects but wish that there was a true open source substitute.
In the past five years, it feels like the world outside Google has mostly caught up - in part through open source equivalents of Google's secret sauce. Hadoop, EC2, S3, the various NoSQL engines, RabbitMQ, Thrift, Scribe... access to the Google stack may not be as big an advantage.
I spoke to a Google engineer recently who complained that the Google stack was actually something of a pain to build agains, with a very steep learning curve and a great deal of innertia to work around.