I have been at my company’s corporate headquarters this week, as I embark on a new project to help optimize one of my company’s core products that is utilized across the country.
Here are a few things which I have observed during our design discussions and code base overview, most of which I know I have seen before in past projects:
- Mercurial (hg) is like a monolithic take on a DVCS, unlike Git and it’s +/- 144 commands; it looks to have promise, and hey, it has to be better than Subversion
- Maven can get really ugly, really quick with multi-module POMs
- The ability to check out code and run it is highly underrated, and I was pleasantly surprised how it went; it wasn’t perfect but better than I have seen before
- Coding styles can differ drastically across different teams; be sure you have a code format definitions file for your project
- Figure out if you really need to have your libraries checked in to source control
- Maven modules should adhere to the Single Responsibility Principle