Greg Stein On The Impact Of “Social Coding”
Greg Stein; open source programmer, speaker, and advocate.
Greg Stein is a true open source advocate, and one of the most well-known and nicest figures in the industry. He has worked at Google and CollabNet, and is actively involved with the Apache Software Foundation. A popular speaker, Greg currently resides in Brussels where he’s taking a break from hacking on Subversion, Python, and other open source projects to discuss the impact of “social coding” on open source software development.
(whurley) Does the arrival of git and other “social coding” environments herald a change in open-source development practices and methodologies?
Distributed version control systems such as git, Mercurial, and Bazaar are bringing some very interesting changes to the Open Source ecosystem. They allow communities to interact and develop software using very different techniques, approaches, and communications styles. I don’t see this as a sea-change, but more about filling a gap in the toolchain for some communities. Not every community, nor every software project, works best with a centralized version control system, so the advent of DVCSs provides a tool for these communities to operate much more effectively. Conversely, not every community works well with distributed version control either.
Personally, I find the idea of private branches (ie. a branch in your private copy of the repository) to be anti-community. Visibility on what you’re doing is critical to the long-term success of a project, by providing early feedback and review on your work, for communicating your approach, and by enabling further collaboration on your task. DVCS proponents argue that “anybody can pull a copy of your changes”, but that is only true if your repository is online, and others *know* that you have some ongoing work of possible interest. Newcomers to a community rarely have the insight necessary to locate and find these works-in-progress. Centralized repositories keep all development in front of the entire community for continual and timely collaboration.
There are lessons to be learned from both styles of development, and incorporating that back into the systems. Sites like GitHub bring the features of a centralized system, such as visibility into ongoing work, to Git users. Tools like svk bring distributed features to Subversion users. I think Subversion will continue to grow and adapt to users’ needs, and bring in elements of DVCSs, although I doubt that it will ever be truly distributed like these others.
(Greg) Netbooks are the current “buzz” within the alpha geek community and the darling of the press recently (”future growth opportunity!!”). Do you think these are actually useful and relevant to Mom & Dad, or will they fade into oblivion along with so many other kitchen terminals, the OLPC, or network-only “work” stations?
Good question. I actually think to their detriment that Netbooks’ popularity base is already shifting from alpha-geeks to average consumers. They hit the geek-scene hard initially because they’re small, light, and cost-effective. I dug the idea of a $200 laptop I could stuff in my glove compartment, so I picked up an Acer–a company I previously had little interest in or respect for–and was pleasantly surprised by the performance-to-price ratio. Improved my opinion of the Acer brand.
Alas, the press is already driving up prices. Dell’s Inspiron Mini 10 has a base price of $399. Color it “New Cherry Red” for an extra $30. Add a 1.6Ghz processor for another $50. Add a CD/DVD drive for another $80. Now you’re spending $560 and you don’t even have a Netbook anymore. Why buy a Netbook for $799 “fully configured” when you can get a MacBook for $999? Netbooks are moving into an iPhone mode. There will be far better, cheaper options for the ordinary consumer, but some folks will end up shelling out for the next big thing.
Yes, I have one. Yes, it’s cool. Yes, I think it would actually be useful/relevant to Mom and Pop. But Netbooks are like cloud computing: great marketing, great buzz, no meaty filling. Besides, shouldn’t notebook manufactures develop smaller, lighter, faster products anyway?
You know, we may not even be able to use the term “Netbook” in the near future. Psion, a Canadian company, currently owns the trademark, and they sent a number of bloggers and manufacturers cease-and-desist notices last year. Dell and Psion got into a legal tiff, and now Intel’s joined Dell in the petition to cancel the trademark based on the argument it’s generic and that Psion didn’t properly defend it. It will certainly be interesting to wee what happens next. Me, I’m gonna say they fade into oblivion.



About the notebooks, you may want to consider emerging markets. Here in Brazil for example, for 999 reais you get a basic Celeron based netbook, the same price for some notebooks based on SiS chipsets(enough said). A good netbook (Atom based, SSD and stuff) goes to 1500. A MacBook cost no less than 4500.
Another interesting fact is that 70% of netbook consumers are women, many of them buy their first own computer. I’m interested in the Vivienne Tam edition
I think there may be many aspects we don’t see yet, and netbooks or sub-notebooks, they are a good idea, for now. IMHO.
About Git (and other DVCS) and “social coding”
With distributed version control system you have ‘private branches’, but in centralized version control systems you have very severe barrier to entry: commit access. So if you complain about ‘changes in the dark’ in DVCS, please take into account that with centralized VCS, because of lack of commit access, they wouldn’t be hard to find: they wouldn’t be visible at all! Your argument here is similar to the RIAA/MPAA argument that each copyright infringement copy is one les bought copy; this is simply not true.
The problem with bolting-on distributed features on top of centralized VCS, like SVK does with Subversion is the “leaky abstraction” problem. SVK is slow, complicated, fragile, does offer replication and off-line commits but not full distribution (where all repositories are at least technically equal). See also http://ldn.linuxfou…rule-them-all-part-1 and followups
You know, if your average consumer was a little more savvy (and they’re getting better–thank you Internets) and knew what to look for in a price/performance ratio, and netbook like Will’s Acer would be ideal for Mom, Pop, Granny, the dog, and emerging markets like Sulamita pointed out.
As for git vs. SVN, our product’s proprietary with a small number of in-house developers. The dev team uses git, but the rest of the company’s moving to SVN.
Wow. What a great question. I mean, seriously. Mad props
.
Jakub and Greg are both right, which is why services like Github are so crucial and popular. I can easily (and publicly!) fork any project hosted on Github, make changes, and share them back, all without commit access. And anyone that’s interested in the primary project can easily see that I’ve forked the project and have changes available that may or may not be folded back into the primary project.
Github isn’t just providing ease of use: they’re creating a social network of software developers where the social currency is code
.