Over the years I’ve been asked to evaluate an array of closed source codebases, many with several years' history. Without even running an application, I can identify a lot about the project state, the people involved, and the business behind it.
Your codebase and more importantly the version control history tells an incredible story. This history gives you a list chronological list of every change made and who made it.
Looking through version control history is like reading someone’s diary. All the secrets are on the table.
You find out the following right away
- How many developers have worked on the application? Individuals or teams?
- What was the engagement like? In house, freelancers or a consulting company?
- Who was there when the project started?
- How much impact has each developer made on the project?
- When was the majority of the project developed?
- What’s the developer churn look like?
- What’s the code quality like? Has it been hacked together or is it well factored? Is it well-architected or is it a mess?
- How up to date are the dependencies within the project?
- Is there a test suite?
- Have aspects of the codebase been replaced many times before?
Based on what you’ve now learnt, you have to ask yourself the harder questions
- If no one seems to stick around on this project, why? Is it the business direction? The people? Was the state of the project beyond repair?
- What level of skill did the developers that worked on it have? How well was the knowledge transferred through the team?
- What security risks exist within the dependencies and the codebase itself?
Next you can start to get a picture of the business
- Based on when and how many people were added you can estimate the development expenditure.
- Has the project been hacked together possibly due to the way the development funding was spent? Or was there a lead developer that stuck around and took responsibility for the project’s health?
- Who was the key person responsible for the technical aspects of the project and did they establish a clear direction?
- Is it going to be easy to attract new developers to work on this project or is it dated and frustrating to work with?
- Is there evidence of specific business problems within the codebase?
Now that you know how to listen to your codebase, what is it saying about you?
Let's work together
Tell us about your project and we'll get back to you shortly.
Join The Conversation
More On The Blog
Critical Mistakes To Avoid When Migrating To Shopify
With more than one million businesses currently using Shopify as their preferred eCommerce platform, it’s normal for other online businesses to consider Shopify migrations. Still, re-platforming can be costly (see how much it costs to perform an eCommerce platform migration) and a lot of things can go south if your team is not prepared.
Sol Dieguez — Jun 22, 2022
Is Django better than Ruby on Rails? Django vs Ruby on Rails Comparison
Right now, two of the most popular full-stack web frameworks are Django and Ruby on Rails. These two platforms have similarities, but they’re also quite different when it comes to the details that can make or break a development project.
Sol Dieguez — Jun 15, 2022
How Ruby On Rails SEO improves your eCommerce Google rankings
You might not be familiar with is how Ruby On Rails SEO improves your eCommerce Google rankings. Keep reading to learn the importance of Ruby On Rails SEO and its best practices!
Sol Dieguez — Jun 4, 2022