All in the <head>

– Ponderings & code by Drew McLellan –

– Live from The Internets since 2003 –

About

About Drew McLellan

Photo of Drew McLellan

Drew McLellan has been hacking on the web since around 1996 following an unfortunate incident with a margarine tub. Since then he’s spread himself between both front- and back-end development projects, and now is Director and Senior Web Developer at edgeofmyseat.com in Maidenhead, UK (GEO: 51.5217, -0.7177). Prior to this, Drew was a Web Developer for Yahoo!, and before that primarily worked as a technical lead within design and branding agencies for clients such as Nissan, Goodyear Dunlop, Siemens/Bosch, Caburys, ICI Dulux and Virgin.net. Somewhere along the way, Drew managed to get himself embroiled with Dreamweaver and was made an early Macromedia Evangelist for that product. This lead to book deals, public appearances, fame, glory, and his eventual downfall.

Picking himself up again, Drew is now a strong advocate for best practises, and is currently Group Lead for The Web Standards Project. He has had articles published by A List Apart, Adobe, and O’Reilly Media’s XML.com, mostly due to mistaken identity. Drew is a proponent of the lower-case semantic web, and is currently expending energies in the direction of the microformats movement, with particular interests in making parsers an off-the-shelf commodity and developing simple UI conventions. He writes here at all in the head and, with a little help from his friends, at 24 ways.

CVS: Considerably Vexing System

18 March 2003

I’m trying to get a CVS server up and running on a Windows 2000 server. To be honest, I think most of my problems stemmed from bugs in the latest version of the server. When I finally decided to give up and use an earlier version, I managed to get that to work.

So after a lot of messing around I have it working and have concluded that it should have been simple all along. Why is it only after you complete something that it transpires that it should’ve been simple?

The next problem is workflow. How the hell to do I manage this situation …

The normal scenario with CVS is to have a central repository, out of which developers check files, edit them on their own machines, and check them back in. This gets more complex when you’re working with web technologies, as the files need to be accessible by a web server at edit time. This means that each developer needs to have a local web server running when editing/testing files prior to committing them back to the repository.

All fine so far, but consider this:

My team are developing web applications in ASP. Every application consists of at least two and sometimes three websites. The files (even checked out files) have to be stored on a server rather than a workstation in order to get backed up each night.

So this rules out using IIS on the workstations, as unless you are running Win2k Server you are restricted to one site per machine (and 10 connections) we need 2 or 3 sites per ongoing project. We’re going to have to be checking files out into folders on a server instead of the workstations, which is fine.

I think this is the bit that’s bothering me … for every site in every project for every developer I need to have:

a) an IIS website
b) a DNS record to access the site
c) a ‘working’ folder on a server somewhere for files.

Now say that there are 3 sites for one project and a developer has two projects on the go, that’s 6 websites just for that developer. For a team of 5, that’s 30 websites, 30 DNS entries and 30 working folders.

Which means I need:

d) a server admin to look after it all.

Unless I’m missing a better way of working. Any suggestions?

- Drew McLellan

Comments

  1. § mike: We used to have a rule that all files must be checked in commented before the end of the day. This is good practise for a number of reasons. Firstly, it means you come in the morning and even if you’ve forgotten what section you were working on your comments will tell you. Secondly, if you get run over by a bus everyone else knows where you were!
    Do you have to create new sites per project rather than virtual directories?
  2. § Drew: Yup. Have to be new sites.

    You can’t check in code at the end of the day if it’s broken :)

    I blame the bus drivers, personally.

Photographs

Work With Me

edgeofmyseat.com logo

At edgeofmyseat.com we build custom content management systems, ecommerce solutions and develop web apps.

Recent Links

Affiliation

  • Web Standards Project
  • Britpack
  • 24 ways