Being a self taught programmer I have picked up some terrible habits over the years. Originally I was a department of one, but now I work with two other guys who are VB programmers. They are interested in learning Java but we have run into a small snag.
Originally using JBuilder (now on IntelliJ) I just created my projects as needed, creating library links when one project needed to see the code from another. This worked fine (to a point) when it was just me. I never had to worry about what project depended on another project. Yes on occasion I would change something in one project that would break another project (test!? what tests?). Now that I'm in a group these inter dependencies are killing me. There has got to be a better way!
What recommendations can anyone make as how to structure my projects to allow the code to be used wherever it's needed? And what about source control and unit testing? What role do they play in all of this?