View Single Post
  #5   Spotlight this post!  
Unread 28-12-2008, 23:15
ay2b's Avatar
ay2b ay2b is offline
Registered User
AKA: Andy
FRC #2928
Team Role: Mentor
 
Join Date: Mar 2004
Rookie Year: 1994
Location: Seattle, WA
Posts: 211
ay2b has a brilliant futureay2b has a brilliant futureay2b has a brilliant futureay2b has a brilliant futureay2b has a brilliant futureay2b has a brilliant futureay2b has a brilliant futureay2b has a brilliant futureay2b has a brilliant futureay2b has a brilliant futureay2b has a brilliant future
Re: To SVN or not to SVN?

Quote:
Originally Posted by nathanww View Post
Anyway, I was wondering what experiences people here have had with subversion. None of us has actually used it before--is it difficult to learn? And how much value would it be to a team of this size?
Use a version control system! It is extremely valuable to have with a single programmer, and as you add programmers, the value of a version control system grows exponentially.

As for experience/difficulty to learn: I currently work at a company of about 30 people. Everyone in the company (not just those working on software) uses subversion. Nearly every document goes into subversion. This includes source code, as well as specifications, inventory control, demos, presentations, etc. As a company, we standardized on TortoiseSVN, though people are free to use any SVN client they choose (I use the command-line client). Most people in the company had never used any version control system before, but given a short presentation everyone picked it up fairly quickly, uses it regularly and sees the value of having it. A few people have occasional problems (almost always due to forgetting to "update"), but they know who to ask for help (me), and I've always been able to talk them through fixes.

My recommendation (especially if most people who will be using it have never used a version control system before) is:
- use a version control system (subversion is a great choice, though there are plenty of other good choices too)
- have one person become an expert at svn - learn all the basic commands; learn all the fancy commands; the internet has lots of resources for learning svn
- have the expert give a presentation of the basics to everyone else - just cover "here's how to check out our repository" and the basic commands (update, add, remove, commit, resolve); don't try to cover everything
- set up a section of the repository as a test section for everyone to experiment with
- eventually everyone will become an expert


The only difficulty that I have had with using SVN within the context of FIRST is that various problems will arise if you do not have constant access to the server (e.g. no internet access at regionals; intermittent internet access from your computer lab; etc). This is a surmountable problem, and NOT unique to using subversion. From what I've heard, certain other version control systems handle being "offline" better than subversion, but I do not have any experience with them.
__________________

2011 - SD Quarterfinalists (980), LA Quarterfinalists (980)
2010 - LA (2404) Finalists (980), AZ Motorola Quality (980)
2009 - LA Semifinalists (980); Las Vegas Quarterfinalists (980); SD (2404); IRI #1 Seed, Finalist (980)
2008 - SD Quarterfinalists (980), LA Champions (980), LA Rookie Inspiration Award (2404); CalGames Finalists
2007 - So.Cal Finalists (980), SD Quarterfinalists (980); CalGames Finalists
2006 - So.Cal Regional Champion (4), Toronto Judge's Award Day 1 (4)
2005 - SVR Champions, Delphi "Driving Tomorrow's Technology" (980); AZ Xerox Creativity (980); So.Cal Finalists, RadioShack Innovation in Control (980); Championship Archimedes Division Semifinalists; IRI Finalists (980)
2004 - So.Cal Regional Champions, Leadership in Controls (980); AZ GM Industrial Design (980); Championship Galileo Division #2 Seed; IRI Champions
2003 - PNW Semi-finalists (488)
2002 - PNW Finalists (488)
2000 - X-bot / 488 - Mentor / Founder
1994 - Sunny Delight - Driver - champion