Take the 2-minute tour ×
Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. It's 100% free, no registration required.

This question already has an answer here:

Not sure if this is the right place to ask the question, but I'll ask anyway. (If it is not, please let me know!)

I'm working in a team of 5 programmers on a project which we have to start on scratch.

1) How do I convince people to use a build tool (ie., ant or maven) to build the package?

Three out of five people in my team want to just let Eclipse build the project! The reason was something along the line of they are running Windows, and so it is crappy to work on command line, plus it is not as convenient.

I remember feeling something similar to a 'heart-attack' when other members disagreed with my suggestion of using a build-tool saying that "The objective is to deliver an executable, so let's just let Eclipse do it and we should all use Eclipse to be consistent!"

2) Version Control System. How would you settle a debate on VCS where the only criteria people are using is whether the system offers GUI for doing stuff?

I'm admittedly still young in the field, so I have few experience, but even fewer skills in dealing with team members.

Any advice/suggestion would be greatly appreciated!

share|improve this question
2  
Can the IDE actually do what you need done for a proper build? If not, that's the reason you should give for using something else. It it can, why do you object? –  Kilian Foth Apr 9 '13 at 7:33
    
This is (going to be) an open-sourced project, so I don't feel it is right to have the code up in the repository without any 'makefile'. Almost every project I've worked on has some kind of 'makefile' which allows the project to be build without an IDE. I thought that was a good practice, but it apparently wasn't a good enough argument! –  One Two Three Apr 9 '13 at 7:35
6  
Skill Number Zero to learn: pick your battles. You will need solid arguments to defend the tools you're suggesting, just shooting down their arguments isn't going to cut it. So start by listing why do you need command line tools, and why the choice of VCS matters - for this particular project! –  Joris Timmermans Apr 9 '13 at 7:54
    
add comment

marked as duplicate by gnat, MichaelT, World Engineer Apr 14 '13 at 20:01

This question has been asked before and already has an answer. If those answers do not fully address your question, please ask a new question.

4 Answers

the major reason people use command line tools is so nightly builds can run through a cronjob instead of a dev having to remember to push the button, this includes running automated tests

eclipse can (nearly) out of the box handle the common commandline build tools though using them requires knowledge of the tools themselves (which may be the true stumbling block here)

as for version control both git and SVN have eclipse plugins and various graphical clients, so those arguments are pretty meaningless

share|improve this answer
add comment
  1. Working with a command-line tool doesn't necessarily mean working from the command line, nor does it eliminate the possibility of working within an IDE. I've used CMake to generate Visual Studio solutions, and usually work from the Visual Studio solution. If CMake needs to be rerun, I can click a batch file or Python script from an explorer window (or, you know, actually from the command line). The generated solutions are not under version control, they don't have to be, but they are generated in well-known and documented locations, and all developers know how to use them and where to find them. Best of both worlds. Note that CMake can generate Eclipse project files too, so it may work for your application.
  2. It's not worth having a fight over version control systems. These fights usually devolve into pointless "holy wars". For what it's worth, Git, Mercurial and SVN all have explorer integration tools available, and integrate with Visual Studio as well as far as I know. They all work. Just don't use Sourcesafe ;-)
share|improve this answer
add comment

Personally do as they said, at the end for you it would be easier to adapt to Eclipse than they to use command line.

If the IDE does everything required for the project and it helps you to automate some "boring" commands, why not? Being in a team so reluctant to use command line I read as not wanted to bother much, just code. If problems arise due to the use Eclipse you can always save the project by applying your skills... and avoid the 'told you so' ;)

Knowing command line options would make you stand over them, because when bugs appears in the IDE (Eclipse is quite strong but still a program) you still have resources to continue, they may don't.

share|improve this answer
add comment

We use Ant AND Eclipse to build some EARs for Websphere. It allows us to easily switch configuration between test & live environments, and share (via the actual build script) any changes made in the build process.

From the sounds of it, your project is probably fairly straightforward to build. Rather than asking "how do I convince people to use a build tool" - ask yourself why you think you need one. Will you gain anything by using Ant? This will help you "convince them" (if that is the appropriate path to go down. I personally found that Ant became hugely useful when I needed to quickly build for multiple environments.

share|improve this answer
add comment

Not the answer you're looking for? Browse other questions tagged or ask your own question.