TE
TechEcho
Home24h TopNewestBestAskShowJobs
GitHubTwitter
Home

TechEcho

A tech news platform built with Next.js, providing global tech news and discussions.

GitHubTwitter

Home

HomeNewestBestAskShowJobs

Resources

HackerNews APIOriginal HackerNewsNext.js

© 2025 TechEcho. All rights reserved.

Ask HN:Infrastructure for a software project

4 pointsby liangzanover 16 years ago
Hi,<p>I'd be leading a new project soon. And I've been pondering over what are the basic infrastructure for a software project. These are the stuff that I think every project should have:<p>-Coding style conventions<p>-Naming conventions<p>-Standard project directory structure(eg maven standard dir layout, etc)<p>-Project management and issue tracking(eg trac, redmine, etc)<p>-Continuous Integration server(eg, hudson, cruise control, etc)<p>I'm not sure if I missed out anything. Would anyone like to add?

5 comments

jwilliamsover 16 years ago
If you're in this stage of setting up, there are a lot of (free) virtual machines (virtual appliances) that will do a lot of what you need.<p>You can spin up a VM that's got linux and already installs of things like SVN, Trac, etc, etc. Run them on something like VMWare Server (free) and you're all set in mins/hours.<p>There are a lot of VMWare based ones listed here: <a href="http://www.vmware.com/appliances/" rel="nofollow">http://www.vmware.com/appliances/</a><p>Really handy and can save a lot of time.<p>If you're working remotely, or at disparate or varying locations, I'd recommend the Hamachi VPN software (www.hamachi.cc). The Linux and Mac clients are very basic, but still work well.<p>With this kind of setup we can take VMs of all the infrastructure, drop them anywhere and still work. We can take our laptops home, move house, sit in a cafe, go overseas and still check code in and out. All been very handy.
haastedover 16 years ago
A common image for the developer machines.<p>You'll easily lose a week per developer (especially ones that may join the project later) if each one is himself responsible for setting up development environment, support tools, off-line documentation etc.
davidwover 16 years ago
Version control, of course.
prakashover 16 years ago
You might want to read Cal Henderson's book <i>Building Scalable Web Sites</i>: <a href="http://www.amazon.com/dp/0596102356/" rel="nofollow">http://www.amazon.com/dp/0596102356/</a>
knownover 16 years ago
<a href="http://sourceforge.net/projects/alexandria-dev/" rel="nofollow">http://sourceforge.net/projects/alexandria-dev/</a>