Getting a Grip on Google Code 91
netbuzz writes "Niall Kennedy reports on his blog that Guido van Rossum, author of the Python programming language, has begun showing off his first project since joining Google last year. 'Mondrian is a Web-based code-review system built on top of a Perforce and BigTable backend with a Python-powered front-end,' Kennedy writes. 'Mondrian is a pretty impressive system and is currently in use across Google.' Kennedy's description of Google's current code-review system sure makes it sound like it was in need of an upgrade. 'The Mondrian tool creates a much better workflow by creating task-specific dashboards, in-line commenting, well-tracked statistics, and more,' he writes. 'The application is built on top of Python open source libraries such as the Django framework, smtpd.py mail service, and the wsgiref Web server software.'"
Re:Perforce? (Score:2, Interesting)
Perforce? (Score:5, Interesting)
Oh well, could be worse: they could have gone with StarTeam, PVCS or MKS Source Integrity...
Subversion? (Score:1, Interesting)
Joel Spolsky mentions Perforce (Score:1, Interesting)
Disclaimer: I've yet to work with Perforce, having not yet graduated from CVS, but at least I'm not using VSS.
Re:Perforce? (Score:5, Interesting)
Hodie Natus Est Radici Frater (Score:2, Interesting)
Totally OT, but your comment reminded me of this [multicians.org]. A great piece of history from the Multics group about an error code that never was meant to see the light of day, yet, through circumstances, did show up once during an upgrade.
Re:Perforce? (Score:5, Interesting)
Let me be a little more specific: while the hour-long checkpointing process is happening, you can't even open files for edit. In addition to having really course locking, Perforce has more write operations than most version control systems. Subversion's CVS-style working copy means the only write operations are commits and revpropsets.
Re:Joel Spolsky mentions Perforce (Score:1, Interesting)
2) Of the thousands of companies that use Perforce, many of them started using Perforce before Microsoft. So wouldn't that make Microsoft the copycat of them?
3) Perforce is a popular choice among companies that need a version control system that can handle very large code bases with high speed. Few version control systems can do this adequately. Perforce also has excellent branch management features. There is nothing wrong with using Perforce (although I have other preferences) presuming you can afford it.
Re:Google (Score:3, Interesting)
Agreed. I use this too, and it's great, especially if you feel like being a Code Nazi and making nit-picky comments about code that you're reviewing. You just double-click on the line you don't like and type in your comment. It's much easier to use than reading the code in a diff tool and then typing your comments into a separate email window.
As far as perforce vs. CVS goes: I used CVS at my previous company and liked it. It was certainly a big improvement over CMVC when I was IBM and the SCCS wrapper that Sun used for Java when I worked on it. But CVS had its problems, mostly because it doesn't support atomic commits and checkouts. Perforce fixes that. Its command line takes a little bit of getting used to: "submit" instead of "commit" and so on. And the branching, while much more powerful than what you can do in CVS, takes a while to get your head around. But once you understand it, the power it gives you is wonderful. Perforce also has a few scalability problems, but they're mostly solvable.
I also have to agree with the parent poster that it's great, but bizarre, working a company where the internal code review system is front-page news on Slashdot.
Re:Microsoft uses Perforce?! (Score:2, Interesting)
We use it at work, and deal with corrupted databases frequently. There's been talk of moving to SVN for a while, but I doubt they'd make a full switchover. We have years worth of projects stored in VSS, and it's really not worth moving them over (fortunately closed projects, so getting back to them is only necessary if any issues arise with a customer).