I'm wondering about the experience of using Bicep or Terraform for Azure. How big of a deal is it to choose between the two? Which one do you and your team prefer?
5 Answers
I find Bicep easier to write overall. Conditional creations are simpler compared to Terraform's count syntax. However, if you're planning on integrating several services, Terraform makes more sense because of its flexible provider model. Regardless of what you choose, look into the Azure Verified modules; they're quite useful for both tools.
Honestly, it all depends on what you’re aiming to achieve. Bicep is great for Azure-only projects without worrying about state files, and it typically supports new Azure features first. On the other hand, Terraform excels when managing other services outside Azure too, especially if you're dealing with DNS or firewall configs. Simply put, Bicep offers straightforward Azure integration while Terraform provides multi-cloud flexibility.
I’m all about Terraform, especially with the AzAPI provider. It gives you complete ARM API coverage like Bicep but allows you to benefit from Terraform's planning features and flexibility. It’s a solid combo!
I'm a huge fan of Terraform, but I have to admit Bicep has improved a lot recently. If you’re just starting out and don’t plan on deploying large projects, Bicep might be the way to go. It's especially nice with user-defined types and the Azure Development CLI for proof of concepts. But personally, I find Terraform easier in terms of organization since you can spread definitions across multiple files. Plus, Terraform's ecosystem for testing and security scanning is vibrant. For large deployments, I layer in Terragrunt for modular management, something I wish Bicep supported better.
If you're focusing exclusively on Microsoft Azure, Bicep is really the natural choice. But if you're looking into multi-cloud setups, Terraform has a distinct advantage due to its provider ecosystem.

Related Questions
How To: Running Codex CLI on Windows with Azure OpenAI
Set Wordpress Featured Image Using Javascript
How To Fix PHP Random Being The Same
Why no WebP Support with Wordpress
Replace Wordpress Cron With Linux Cron
Customize Yoast Canonical URL Programmatically