[ajug-members] favorite IDE

Les Hazlewood les at hazlewood.com
Thu Aug 10 15:58:41 EDT 2006


Sounds like a terrible amount of differences to manage.  Why would your
company allow developers to have such random environments? (I'm not
being antagonistic - I'm genuinely curious).

In almost all projects I've worked on with any level of complexity, the
path for 3rd party dependencies and software is installed in exactly the
same location, with only minor differences between operating systems
(e.g. installing stuff in C:/java vs /usr/local/java, but everything
below java is exactly the same on all OS's).  It is very important (imo)
to standardize this early on in a company to avoid the types of problems
you describe - they can compound rather quickly due to so many
differences.

All of our projects in our RCS contain everything that is required to
build that particular project.  If you do a checkout, you instantly have
the same environment as everyone else.  All build.xml's, IDE config
files, and path settings are relative to this directory, and are managed
in a hierarchical fashion.

I repeated this process on so many projects that I got tired of
explaining it over and over.  So, I wrote an article on it for the
benefit of anyone else that might find it useful: 
http://www.onjava.com/pub/a/onjava/2005/06/22/modularant.html, and then
used that to standardize my company's format.

I guess my point is - when your structure is standardized, the .dotfiles
aren't a problem.  But that doesn't sound like a response you were
looking for ;)  However, I thought I'd send this post anyway in case
others might find it useful.

Regards,

Les

On Thu, 10 Aug 2006 13:43:37 -0400, "Howard Kapustein"
<hkapustein at manh.com> said:
> >We add our .project and .classpath files to version control.
> I've got 10 people working on a project, and not everyone has the same
> exact hard drive layout. Tell me how I can treat .dotfiles as common
> version control artifacts w/o including hardcoded paths.
> 
> We've done this with Visual C++ and Visual Studio, via environment
> variables. Set blahblahblah_DIR_HIBERNATE=C:\Hibernate or whatever, then
> use $(blahblahblah_DIR_HIBERNATE) in project files. "Root" paths are
> machine machine, can vary per machine but are commonly referenceable.
> Especially useful when you've got a mix of desktops and laptops,
> deskjockeys map a drive like Z: and point
> blah_DIR_HIBERNATE=Z:\Hibernate whereas laptop folks who snag everything
> local to work at work or the road set =C:\...
> 
> Can you define how to do this with Eclipse, in a _clean_ way?
> Best I've found is you need to write some utility to take your
> definitions, find the key JDT file with variable definitions,
> add/modify/remove rewrite these entries in the property file for the
> current environment and then launch eclipse. That doesn't pass the
> 3-year-old-test even on a good day, but it's the closest I've been able
> to figure out.
> 
> >You can also export/import all of your Eclipse preferences
> >which is nice.
> Yes.
> But it'd be nicer if I could have stylesheet-esque layered definitions.
> Right now it's all or nothing. 3way diff and sync is a PITA.
> There _are_ better ways to do it. More flexible, less brittle and
> complex mechanisms. The Eclipse team (and virtually every other IDE
> developer) hasn't understood or cared. So far.
> 
> 	- Howard
> 
> P.S. Yes, in this specific case I find Eclipse to be the half-mongloid
> cousin of Visual C++. 10 years ago. Sun may have poo-poo'd all over the
> environment, but it's one of the few common, effective options to help
> make rugged, reliable, simple solutions. Fine. How about a little
> Separation-of-Concern refactoring applied to Eclipse's design so we can
> easily segregate and manage machine-specific options from
> project-specific shared options? What's the keystroke for that again?
> Ctrl-1, P, Alt-Shift-X, Space, Space, Space, Meta-Speak-Command-RClick?
> 
> 
> -----Original Message-----
> From: ajug-members-bounces at ajug.org
> [mailto:ajug-members-bounces at ajug.org] On Behalf Of Justin Meads
> Sent: Thursday, August 10, 2006 12:30 PM
> To: General AJUG membership forum (100-200 messages/month)
> Subject: Re: [ajug-members] favorite IDE
> 
> We add our .project and .classpath files to version control.  When we  
> pull the project from SVN, it just works.
> 
> You can also export/import all of your Eclipse preferences which is  
> nice.  In Eclipse choose
> 
>   FIle -> Export -> General -> Preferences -> Check Export All ->  
> Click Finish
> 
> Reverse the process to import into a new workspace.
> 
> Regards, Justin
> 
> 
> On Aug 10, 2006, at 10:10 AM, Dan Marchant wrote:
> 
> > I have found that in most cases eclipse recognizes the project source
> > files with creating a new project and pointing it to an existing root
> > folder.
> >
> > I am a bit annoyed with the project concept since in most cases people
> > work on a "product" not a project. Project are usually instances of a
> > product.
> >
> > The other thing that annoys me about eclipse (which has work arounds)
> > is when creating a new workspace you have to reset all your source
> > control settings. For instance, I use the workspace as a way to have
> > multiple branches setup at a time. I usually copy the metadata
> > directory and it helps a bit.
> >
> > In general, IDEs need better support for branches and release on a  
> > product line.
> >
> > My 2 cents and vents
> >
> > - Dan
> >
> > On 8/10/06, Burr Sutter <burr.sutter at jboss.com> wrote:
> >> You might be right.
> >>
> >> Every development team has a unique project/folder/build structure  
> >> and
> >> pull that into an IDE takes too much effort in some cases.
> >>
> >> Eclipse's import project from Ant trick has failed me before.   
> >> What has
> >> been the rest of your collective experiences?  Perhaps Netbeans  
> >> performs
> >> better this case.
> >>
> >> Burr
> >>
> >> -----Original Message-----
> >> From: ajug-members-bounces at ajug.org
> >> [mailto:ajug-members-bounces at ajug.org] On Behalf Of Kammy
> >> Sent: Thursday, August 10, 2006 10:43 AM
> >> To: ajug-members at ajug.org
> >> Subject: [ajug-members] favorite IDE
> >>
> >> I guess I am a dinosaur. I use xemacs and vi.  I tried
> >> using eclipse 1 X, but didn't like the whole project
> >> thing, etc, which I can't stand about IDE's anyway.
> >>
> >> Kammy
> >> _______________________________________________
> >> ajug-members mailing list
> >> ajug-members at ajug.org
> >> http://www.ajug.org/mailman/listinfo/ajug-members
> >>
> >> _______________________________________________
> >> ajug-members mailing list
> >> ajug-members at ajug.org
> >> http://www.ajug.org/mailman/listinfo/ajug-members
> >>
> > _______________________________________________
> > ajug-members mailing list
> > ajug-members at ajug.org
> > http://www.ajug.org/mailman/listinfo/ajug-members
> >
> 
> _______________________________________________
> ajug-members mailing list
> ajug-members at ajug.org
> http://www.ajug.org/mailman/listinfo/ajug-members
> 
> _______________________________________________
> ajug-members mailing list
> ajug-members at ajug.org
> http://www.ajug.org/mailman/listinfo/ajug-members



More information about the ajug-members mailing list