- Code should be developed in a public source repository
- Projects should post a clear page with who is working on what, and what the status is
- SoCer's should post status reports regularly (ie, more than just once or twice)
I should note that I was not involved with the planning or execution of any of the Google SoC stuff here at Ubuntu, this is merely an outsiders view. I should also note that Google is not really at fault here. One of the problems that I think Ubuntu ran into was simply that all the development team was too busy to effectively tutor the SoC people. Again, that is just an outsiders view. I could be completely wrong.
However, I don't think there is anything systemic wrong with Google SoC that is not fixable this time around.