Skip to main content

Project Sites

I like project sites. Whenever I start a new project, I always create an online portal that shows the team where they are, where they're going, and what should happen next. Back in the bad old days, I had to laboriously create project sites using ASP and carefully hand-tooled HTML. Nowadays, there are a thousand automatic instant-web-site-majiggery things out there. For Context ice, we used a sharepoint team site with a few minor tweaks. It did the job, but it wasn't anything special.

This one, on the other hand, looks a bit special. The ability to see code checkins on the project site, plus a solid bug tracker and a pretty cool looking wiki engine makes Trac look like it might be well worth investigating for your next project. Looks like they've nicked some of the best ideas from FogBugz, as well as some cool highlighting features for viewing code changes...

In order to get code checkins published onto our ice team site, I had to set up a service that published an RSS feed of checkins from VSS, and then use Smiling Goat's feedreader component to display it on the sharepoint home page. It was a messy solution, and one that wasn't always up to date. Oh, and we also used a flexwiki engine to collect help doco. Trac seems to have it all wrapped up in the one package. Me likee.

Some good document management mightn't go astray though...

Comments

Popular posts from this blog

Easter at Blackhead

Camping out on the headland, miles from anywhere. Big swell, off-shore winds, clear crisp nights and smoke from the wood fire. Sometimes it's so rewarding to get out from under the pressure of your life and just be a family of humans.

How to rename an XML Node in C#

This was driving me crazy - here's an easy cut and paste solution to not being able to use the DOM to rename a node for lazy developers like me: public static XmlNode RenameNode (XmlNode node, string namespaceURI,string qualifiedName) { if (node.NodeType == XmlNodeType.Element) { XmlElement oldElement = (XmlElement) node; XmlElement newElement = node.OwnerDocument.CreateElement(qualifiedName, namespaceURI); while (oldElement.HasAttributes) { newElement.SetAttributeNode(oldElement.RemoveAttributeNode(oldElement.Attributes[0])); } while (oldElement.HasChildNodes) { newElement.AppendChild(oldElement.FirstChild); } if (oldElement.ParentNode != null) { oldElement.ParentNode.ReplaceChild(newElement, oldElement); } return newElement; } else { return null; } ...

Democracy in Action...

I have to vote in the US Senate Election Tomorrow. Okay, I don't have to vote, but being an Australian American, voting is something we do. Australia has compulsory voting, which I am overwhelmingly supportive of. People often assume that the point of compulsory voting is to somehow educate people about politics - to force them to have an opinion. The reality has nothing to do with voters, and everything to do with ensuring good governance - By forcing politicians to care about every voter, rather than just the ones who can be bothered to go down to the poll both and vote, it means that politicians are consequently forced to address the needs of all the citizens in the country. Under a non compulsory voting system, it's mainly the wealthy and educated who vote. I was a little shocked to find out that part of the aim of the campaign advertisements that have been confusing me for the last month on TV is not to encourage voters to vote for one candidate or another, but to discou...