Steps to starting a new project

grahamcox82

Graham Cox

Posted on February 18, 2018

Steps to starting a new project

I'm a serial project starter. I couldn't deny it even if I wanted to. This isn't a good thing, but it means that I've got a good grip on getting started.

Whenever I start a new personal project, I always endeavour to do the same basic things, and this is my list for anyone else who might be interested. I'm not going into detail because they should all be fairly self explanatory anyway. Depending on the planned scale of the project not all of these steps are going to be needed, or worth the effort, so it's a case of picking the ones that make sense.

  • New version control repo - normally Github
  • Issue tracking - for bugs but also actual development stories
  • Set up dependency management - I'm a big Maven fan for Java projects
  • Set up dependency version checking to keep up to date
  • Unit testing
  • Build time integration testing of as much as possible - using as many real dependencies as possible. For example, I use the embedded postgres database for this
  • Docker images for all deployable components
  • Full stack end to end testing. This is where the docker containers come in useful.
  • Continuous integration on every push - including branches and pull requests. I've recently started using Shippable, but there's loads to pick from
  • Continuous deployment - heroku is good here, but there's a multitude of choices

Only at this point would I then start actual development work. But at this point I'm secure in knowing that what I'm doing is well maintained and works.

💖 💪 🙅 🚩
grahamcox82
Graham Cox

Posted on February 18, 2018

Join Our Newsletter. No Spam, Only the good stuff.

Sign up to receive the latest update from our blog.

Related

What was your win this week?
weeklyretro What was your win this week?

November 29, 2024

Where GitOps Meets ClickOps
devops Where GitOps Meets ClickOps

November 29, 2024

How to Use KitOps with MLflow
beginners How to Use KitOps with MLflow

November 29, 2024

Modern C++ for LeetCode 🧑‍💻🚀
leetcode Modern C++ for LeetCode 🧑‍💻🚀

November 29, 2024