Everyone wants to get acquired by Google, and yet it doesn't stop them doing their own stuff in-house. Unless AdSense, GMail, Calendar, News, Froogle, Video, Finance, etc. were bought instead of built.
Not to mention all the work that happened after they bought Keyhole et al.
AdSense was at least partially an acquisition. Video became YouTube. Froogle is largely a failure. Considering how many programmers Google has your argument that they're good at producing stuff in-house is pretty weak. They're great at scaling and running stuff, but so far they don't seem to be very much better at creating new great things than any big company is.
Everything they buy they do a huge amount of work on, and they don't merely scale; they add features. Google Video was already easily superior to YouTube for the player alone (actual random access); they bought YouTube for its audience. YouTube got so big because unlike GV, it was very lax at policing commercial content. Its poor video quality, lack of download facility, lack of fast-forward, and short clip length limits should not be confused with the killer feature of giving other people's stuff away.
Froogle a failure? It's a search engine for product prices.
Reading FOW, Ch12, p164 Paul Buchheit it is more like trying to fit new functionality into the search engine infrastructure, ("we only do web search"). Though to be fair pb does suggest this has changed.
I didn't claim YouTube's success was due to any technical features like supporting seeking. I agree a large part of why they were so successful was because of the copyrighted content. They took a risk that Google wouldn't. That proves my point exactly. Startups do many things that big companies can't or won't do. Sometimes that takes the form of working in a gray area of the law.
If someone wants to claim "very small companies are more likely to try something legally dubious because they have very little to lose," that's a completely different argument. Not to mention, YouTube and then Google had to pay up in order to square things away and neutralize the risk. Big companies are more comfortable playing fast and loose with the rights of individuals, while individuals and very small companies are more comfortable antagonizing powerful corporations.
Start-ups are NOT the best way to develop software. Start-ups are inherently inefficient. On top of doing the development, you have to take care of all the paperwork and technicalities of running a business. YC makes you move, which is a big interruption (you should only be moving if you NEED that interruption to leave behind all the distraction; some people are already coding like crazy and having to rearrange their lives like that just gets them off-track). You are trying to market yourself. The list goes on and on; I can't find the thread but somewhere PG said he only spent 20% of the time actually coding (my memory may be faulty, it might be 50%).
By contrast, working at Google you don't even have to cook -- they try to take care of all the minutiae. It's really no surprise that whatever they buy, the vast majority of the work is done post-acquisition.
The real purpose a start-up serves is as an advertisement that these people are very dedicated on that project -- when they are bought they are paid EXTRA to work on whatever they already wanted to work on anyway. [1]
THAT is the key difference. Most employees are hired to do some job they don't care about for some crummy wage, so no surprise productivity isn't high. If Google bought up start-ups and then reassigned everyone to other projects, nothing would get done. You don't get dedicated "in general", you are dedicated ONLY to what you're very interested in.
Hiring isn't obsolete; hiring people based on generality to do some unspecified thing for average pay is obsolete. It's simply a quirk that there are currently two models -- the useless traditional one and the "find people at another company who are already doing something and then pay them MORE to keep doing what they want to do ANYWAY" one.
It has always been obvious that letting people choose what they want to do and paying them more money for it yields better results than telling people to do something they probably have little interest in and paying them less money to do it.
Start-ups are a bad model for actual development because of the overhead. They are a good model for picking a certain type of people. I think PG just has this reversed.
[1] As a caveat, not everyone is dedicated to their technical ideas; they are dedicated to making a lot of money. Once they make the money, they stop working on the idea or anything like it. This seems to be what happened with ViaWeb, and would explain a couple of things: One, why PG is so insistent on "flexibility" and steering a lot of people away from their initial idea (because that's what he did -- except he wasn't passionate about the art gallery thing in the first place, so it's a lot easier to switch gears). Two, having steered applicants away from their initial idea, if they were dedicated to that, you've now turned them into people who are dedicated to the new thing for money only, and this could explain why YC's picks haven't been more successful. Your spirits also flag more when you're working on something you don't really believe in, which is why having a co-founder to lean on is more important. Plus there's the overhead -- how many of these start-up groups have a "business guy" as one of the co-founders? It's an inefficient ratio; imagine if every time Google hired a programmer they also had to hire a "business guy" for him.
I think it's pretty clear YC is much more compelling to PG than Yahoo! Store ever was. He could make a lot more money at it, too, if he doesn't steer the dedicated people away from what they are dedicated to.
I'm not claiming startups are efficient. I'm just claiming they're better at producing new great stuff and that big companies suck at it. You don't seem to really disagree about that. Google and Microsoft have many thousands above average programmers with all the resources in the world and they're producing very little new great stuff, as defined by the market. That's why they buy startups as seeds of success, which their companies are capable of growing into big money-making trees.
Microsoft has historically always been this way, even in the very early days. Almost every single one of their significantly successful projects was bought as a seed from a startup and grown from within. They do add a lot of hard work, but the irreplaceable ingredients are done by startups.
Google and Microsoft are in at least tacit agreement that startups are the best way anyone has found to develop great new software.
I didn't mention Microsoft -- I would not hold them up as a shining example of software development.
>startups are the best way anyone has found to develop great new software
YC's program is 10 weeks. The time ALONE means they aren't developing great new software that other people can't make. Back to your Microsoft example, they were notorious for having people demo for them, then stealing the idea and developing it in-house. (Remember how start-ups were all scared of going into a market segment Microsoft might want?) A start-up isn't even a good way of getting an audience, which is what Reddit, YouTube, etc. were bought for, because chances are your start-up will fail. The reason start-ups collectively work is there are so many of them, a big company can just acquire the winners.
Focusing on only the hits and ignoring the misses is a hallmark of pseudoscience, so if we're going to trumpet the winners let's compare that to the vastly larger deadpool. Start-ups are 10x more effective in producing stuff that goes nowhere. Big companies are automatically better at producing stuff people use than 90% of start-ups for that reason alone.
> I'm just claiming they're better at producing new great stuff and that big companies suck at it.
I think this is a case of "the overwhelming majority of great developers do not work at YOUR company". Numbers alone mean that more great ideas will come from outside your company than from within. More new stuff will always come from everyone not at company X than at company X.
Working at Google doesn't seem to stop people, hired or acquired, from coming up with good stuff, so once again we're back to start-ups being an advertisement of who's dedicated rather than a superior development methodology. I mean there are only so many ways you can just sit there and code, there's nothing magical about doing it in a cramped apartment. And it's demonstrably worse to do it on ramen than on free gourmet health food.
The reason Joe Kraus and others romanticize it is because they were young, it was new and exciting, and they were doing it with a bunch of their friends. That's a good recipe for getting something done, but the code's going to be a mess if you're inexperienced, and worse if you're rushing to a demo. Out of large numbers of people getting something done, some of those will be a lot better than others. It's a numbers game. VCs fund, what, way less than 1%?
You seem to believe a startup's success is a game of pure chance. Of course there's an element of luck in any complicated process, but the startup game is survival of the fittest. The number of failed runners doesn't detract from the results of the winners.
> ...hallmark of pseudoscience, so if we're going to trumpet the winners let's compare that to the vastly larger deadpool
The statistical odds are only really interesting in an academic context. The fact is that the startup process is able to do what big companies are simply incapable of doing. Even with virtually unlimited selection of the top people in the world and more money than some countries. This is the crux of my point.
> ...once again we're back to start-ups being an advertisement of who's dedicated rather than a superior development methodology.
Developing great new stuff is not about creating the most amazing source code. It's about the results of the work. Intense dedication is certainly a huge factor in creating great stuff and it's something most employees of big companies lack and successful startups have. Why doesn't intense determination to develop something great qualify as a methodology? Sounds like one to me.
> ...some of those will be a lot better than others. It's a numbers game.
> The fact is that the startup process is able to do what big companies are simply incapable of doing.
They aren't incapable of it, they do it too. They just have different priorities. A company's goal is to grow as large as possible. They want to shut out competition.
Both of those reasons explain why they acquire start-ups -- one, to feed the beast. Two, to stop any threat to their gluttonous expansion.
Microsoft's core is still Windows, Word, and Excel. Google's is still the search they started with when they were a start-up (every big company was once a start-up), not any of the start-ups they've since acquired. The core products pay the bills; the rest is filling up the cracks.
The numbers game is of crucial importance because large companies externalize the cost of the selection process. Google will pay a little for dedicated people and a lot for a big audience to sell ads to. Everyone's just still stuck on the old paradigm of either some time-wasting interview process ("what are you interviewing for?" "A job!" "To do what?" "I don't know exactly!") or buying a start-up with a self-selected people/problem combination that already seems to work.
> Why doesn't intense determination to develop something great qualify as a methodology?
I think we're getting a little carried away here with hyperbole. There are few "great" ones, that's not a methodology, although self-deception might qualify. Steve Jobs had an intense determination to develop something great -- the Mac. Hardly anyone falls into that category. Most start-ups now are excited kids who mainly want to make some quick bucks.
And I note the Mac was created BY a gigantic company, by someone who was already rich (and a bunch of engineers on minimum salary -- hey, it's Jobs). It's WHO, not WHERE, and I note design-by-committee-with-endless-meetings has been recognized as a mistake for a long time (Apple III).
And yes, the code does matter.
> Can you spot the contradiction?
No, it's 5 am, I'm up because my neighbor was crashing around, I don't even know what I'm writing. I seem to be talking myself into agreeing with PG.
Not to mention all the work that happened after they bought Keyhole et al.