[1] http://www.deserettechnology.com/journal/reddit-the-open-sou...
There is a diagram explaining this in the mythical man month, but I don't have my copy handy to give a reference.
I watched a documentary a few weeks ago (damned if I can remember what it's called) about Netscape's transition to Mozilla. The amount of effort that went into that transition was staggering. For his part, Jedberg said [1] that preparing and maintaing redditOSS will likely be one of the first projects for their new hires, as it will make development and maintenance on their current codebase that much easier.
That documentry also reaffirmed my commitment to not do pure sitting-at-desk software development. Because my god netscape looked like a horrible place to be, no matter how many smart people you had around you. (These days facebook looks similar, but worse not even cubicles for privacy)
You can expand inwards and look at how to improve your solutions to existing problems, or you can expand outwards and solve new and harder problems. I highly recommend the former when you're just starting out, because it builds your basic skills and gives you a solid foundation. But eventually you have to stop polishing turds and start hunting for gemstones. There's a limit to what you can accomplish if you solve the same problems over and over again.