Terraform is a tool for building, changing and versioning infrastructure resources. Almost any type of infrastructure can be managed as a resource in Terraform. Terraform providers are responsible for understanding API interactions with your infrastructure. There is an extensive list of available providers that cover the most common infrastructure resources, and Google Cloud Platform Provider is one of them. There are cases however, when providers do not implement an API for managing specific resources for a given infrastructure. User-Defined Functions in BigQuery is one of the resources which is currently not supported by a GCP provider (Versions <= 3.0)
sbt is a de facto build tool for Scala. It can also be used for Java or for cross-platform native builds. sbt uses only few concepts to support its build definitions - roughly speaking, it is mainly about tasks, settings and configurations.
I keep hearing the same question over and over again, from people with different backgrounds and experiences.
Docker comes with great documentation. Sometimes though, with different components and tools, it gets less easy to make sense out of everything. I’ve tried to put together the most important parts.
Recursion is common to computer science and mathematics. We can see Recursion Theory also used in Logic or linguistics. While coding in Java, I’ve not been using recursion heavily, however while practicing FP languages recursion became my best friend.