Tools to help a small shop score higher on the “Joel Test”

前端 未结 14 1184
广开言路
广开言路 2021-02-01 22:51

Questions #1 through #4 on the Joel Test in my opinion are all about the development tools being used and the support system in place for developers:

  1. Do you use so
相关标签:
14条回答
  • 2021-02-01 22:55
    1. Git
    2. Make
    3. Cron
    4. Trac

    I'm a man of few syllables ;-)

    Be sure to use some kind of version control where developers can easily create private branches willy-nilly, then take their private branch and squeeze it into a single commit on the main branch. That way, individual developers---as opposed to the organization---can get the benefits of version control without polluting anyone else's code (and slowing down their work) with broken commits.

    This feature is what I like about git. I think it's only really present in distributed version control systems; using a DVCS doesn't mean you actually have to do distributed development, though.

    Regarding one-step building, make is the default build tool and it works quite well for most tasks. I'd go with that unless you have a good reason not to.

    You want daily builds, put the build command in your cron.daily. Set up a procmail hook to handle the mail from cron if need be.

    For bug tracking, use $(apt-cache search bug tracking). Basically, as long as it says "bug tracker" on the box and you know other people are using it, it's probably going to work fine. Among the regulars are bugzilla, mantis and trac.

    0 讨论(0)
  • 2021-02-01 22:56

    For build automation and continuous integration take a look at TeamCity from Jetbrains.

    It has a lot of features and is really a breeze to set up and use.

    If you use Visual Studio 2005/2008 it will build your solution directly without the need for extra scripts (if a build is all you want.)

    It will also execute your unit tests and gather stats on build success, unit test execution times, etc, etc.

    Best of all: The Pro edition is free for teams with up to 20 users and 3 build agents.

    0 讨论(0)
  • 2021-02-01 22:58

    A good issue tracker that was relatively inexpensive was axoSoft OnTime. I used it for years before getting MS TFS.

    Nant and CruiseControl are staples of my environment.

    0 讨论(0)
  • 2021-02-01 22:59
    1. source control: Subversion or Mercurial or Git
    2. build automation: NAnt, MSBuild, Rake, Maven
    3. continuous integration: CruiseControl.NET or Continuum or Jenkins
    4. issue tracking: Trac, Bugzilla, Gemini (if it must be .NET and free-ish)

    Don't forget automated testing with NUnit, Fit, and WatiN.

    0 讨论(0)
  • 2021-02-01 23:00

    You may want to look at an existing question of mine for finding an alternative to Team System. There are plenty of recommendations in there also.

    0 讨论(0)
  • 2021-02-01 23:02

    I don't have any tools to suggest, but I do have a suggestion about the daily builds. I always answer yes to that question, even though we don't have daily builds. Instead, we do a build every time someone does a commit. We thereby catch any problems almost immediately. If any of our projects ever has enough LOC that building takes more than trivial time, doing this will also gracefully degrade in the direction of a daily build.

    0 讨论(0)
提交回复
热议问题