Start with “Hello World” and CI/CD
You’re starting a new project, how exciting! You’ve done some prototypes or got some designs and you’re ready to go. You type rails new
, composer create-project
, npx create-next-app@latest
depending on what tech stack you’ve chosen and you’re ready to get coding. What do you do next? Starting work on the functionality sounds like a sensible choice… Instead my advice would be to get your CI/CD pipeline setup so you can deploy the new app with every new commit first.
Once CI/CD is setup it mostly just works and means frequent releases happen without too much thought or ceremony required. As development progresses the code becomes more complicated and requires more setup. Having already got tests running remotely and automatic deployment happening each of these setup changes happens naturally in the flow of development. This means the first official release is just a point in time. Without early deployment it’s a mini project to remember all the configuration needed and get everything working when you do want to deploy.
You’ll need to choose your CI tool and where you’re going to deploy early in the development process. You’ll get feedback on these choices earlier too, so if you discover your hosting provider isn’t going to work it won’t be a couple of days before the app is due to go live.
Have you any live projects that haven’t been deployed yet? What would it take to put them live?