<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Tai Chou-Kudu</title>
    <description>The latest articles on DEV Community by Tai Chou-Kudu (@tai_ck_dev).</description>
    <link>https://dev.to/tai_ck_dev</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F3101638%2Faaad6a8e-faa2-4880-bd0e-d457c3f1feaa.jpeg</url>
      <title>DEV Community: Tai Chou-Kudu</title>
      <link>https://dev.to/tai_ck_dev</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/tai_ck_dev"/>
    <language>en</language>
    <item>
      <title>Getting Comfortable with Terraform: Infrastructure as Code (IAC)</title>
      <dc:creator>Tai Chou-Kudu</dc:creator>
      <pubDate>Thu, 29 May 2025 16:44:35 +0000</pubDate>
      <link>https://dev.to/tai_ck_dev/getting-comfortable-with-terraform-infrastructure-as-code-iac-4hkk</link>
      <guid>https://dev.to/tai_ck_dev/getting-comfortable-with-terraform-infrastructure-as-code-iac-4hkk</guid>
      <description>&lt;p&gt;When I started working in cloud and DevOps, one of the first tools I heard about—again and again—was Terraform. At first, it seemed a bit abstract: writing code to manage infrastructure? But as I got deeper into it, I realized how powerful (and necessary) Infrastructure as Code (IaC) really is—especially in a world where environments need to be consistent, repeatable, and scalable.&lt;/p&gt;

&lt;p&gt;&lt;u&gt;&lt;strong&gt;What Is Terraform?&lt;/strong&gt;&lt;br&gt;
&lt;/u&gt;&lt;br&gt;
Terraform is an open-source Infrastructure as Code tool created by HashiCorp. It lets you define your cloud infrastructure—servers, networks, storage, and more—as code, using a simple declarative language called HCL (HashiCorp Configuration Language).&lt;/p&gt;

&lt;p&gt;Instead of manually clicking through a cloud console or running ad hoc CLI commands, you can write out exactly what you want your environment to look like—and Terraform makes it happen.&lt;/p&gt;

&lt;p&gt;For example, you can:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Spin up a virtual machine&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Set up networking rules&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Deploy a load balancer&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Configure cloud storage&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Instead of manually clicking through a cloud console or running ad hoc CLI commands, you can write out your infrastructure as code—usually across multiple .tf files that represent different parts of your setup. For example, you might have one file for a networking resource, another for compute resources, and another for variables.&lt;/p&gt;

&lt;p&gt;Once defined, Terraform reads all the .tf files in the directory and ensures your cloud environment matches that configuration—consistently and reliably.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fufc78nuzyj615bla9i7u.webp" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fufc78nuzyj615bla9i7u.webp" alt="A Load Balancer resource in the OCI console, which can be created either manually or through IAC code" width="719" height="426"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;u&gt;&lt;strong&gt;Why Terraform Matters&lt;/strong&gt;&lt;br&gt;
&lt;/u&gt;&lt;br&gt;
As someone early in my DevOps journey, I've found Terraform especially valuable for a few key reasons:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Repeatability:&lt;/strong&gt; I can recreate the same environment multiple times, without worrying about missing a step.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Version Control:&lt;/strong&gt; My infrastructure lives in Git, right next to my app code.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Team Collaboration:&lt;/strong&gt; Other engineers can review and suggest changes just like with any codebase.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Cloud Agnostic:&lt;/strong&gt; While I mostly work with Oracle Cloud (OCI), Terraform also supports AWS, Azure, GCP, and more.&lt;/p&gt;

&lt;p&gt;It gives structure and sanity to a process that could otherwise be chaotic, especially when you're managing resources across different environments (dev, staging, production, etc.).&lt;/p&gt;

&lt;p&gt;&lt;u&gt;&lt;strong&gt;How Terraform Works&lt;/strong&gt;&lt;br&gt;
&lt;/u&gt;&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F2dwya1378prdiuju26il.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F2dwya1378prdiuju26il.png" alt="Terraform workflow" width="800" height="691"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Terraform is run from the terminal using commands like:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;terraform init:&lt;/strong&gt; sets up the project and downloads required plugins (like the OCI provider)&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;terraform plan:&lt;/strong&gt; shows what Terraform will do, based on your code&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;terraform apply:&lt;/strong&gt; actually creates or updates infrastructure in the cloud&lt;/p&gt;

&lt;p&gt;These commands use stored credentials to connect with your cloud provider—in my case, Oracle Cloud Infrastructure (OCI). While OCI also has a web console where you can manage things manually, Terraform lets you define everything as code for better consistency and control.&lt;/p&gt;

&lt;p&gt;&lt;u&gt;&lt;strong&gt;Exploring Visualization Tools&lt;/strong&gt;&lt;br&gt;
&lt;/u&gt;&lt;br&gt;
Lately, I’ve been interested in ways to visualize what Terraform will change before running apply. Seeing a plan in a diagram or graph can make complex setups easier to understand—especially when you're learning or working in a team.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F1x2o2yzlt1roe6qdaor8.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F1x2o2yzlt1roe6qdaor8.png" alt="Blast Radius tool used for visualizing terraform plan for cloud infrastructure" width="800" height="506"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;I haven’t explored them in depth yet, but tools like &lt;strong&gt;&lt;em&gt;Pluralith&lt;/em&gt;&lt;/strong&gt; (which generates visual diagrams from plans) and &lt;strong&gt;&lt;em&gt;Blast Radius&lt;/em&gt;&lt;/strong&gt; (which shows interactive dependency graphs), shown above, look like great ways to level up how I work with infrastructure.&lt;/p&gt;

</description>
      <category>terraform</category>
      <category>infrastructureascode</category>
      <category>oci</category>
      <category>cloudinfrastructure</category>
    </item>
    <item>
      <title>Why Cloud Infrastructure Matters</title>
      <dc:creator>Tai Chou-Kudu</dc:creator>
      <pubDate>Thu, 29 May 2025 15:03:06 +0000</pubDate>
      <link>https://dev.to/tai_ck_dev/why-cloud-infrastructure-matters-7bc</link>
      <guid>https://dev.to/tai_ck_dev/why-cloud-infrastructure-matters-7bc</guid>
      <description>&lt;p&gt;As Cloud engineer, I help build and manage the infrastructure that powers the apps and services people use every day. One thing I’ve come to appreciate quickly in my role is just how critical cloud infrastructure has become in making all of this possible.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;What Even Is Cloud Infrastructure?&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;At its core, cloud infrastructure is just a modern way of delivering computing resources—like servers, storage, databases, and networking—on demand, over the internet. Instead of running everything on physical machines in a local data center, organizations can spin up what they need in the cloud, scale up or down quickly, and only pay for what they use.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Why It’s Needed More Than Ever&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;The shift to cloud isn’t just a buzzword. It’s a response to real-world needs:&lt;/p&gt;

&lt;p&gt;Faster development: Teams can prototype and deploy faster without worrying about hardware.&lt;/p&gt;

&lt;p&gt;Remote and global teams: Cloud-based systems allow for truly distributed workforces.&lt;/p&gt;

&lt;p&gt;Scalability: Whether you're serving 100 users or 10 million, the cloud can adapt with you.&lt;/p&gt;

&lt;p&gt;Resilience and recovery: Cloud platforms offer built-in options for backups, failover, and disaster recovery.&lt;/p&gt;

&lt;p&gt;As someone early in their cloud career, I find it exciting—and humbling—to be contributing to systems that help businesses stay online, adapt, and grow.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;My Experience with Oracle Cloud&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;I currently work for a top Oracle reseller, so I get to work closely with Oracle Cloud Infrastructure (OCI). It might not be the first platform people think of when they hear "cloud," but it has some really solid offerings—especially when it comes to running databases and enterprise workloads. It’s interesting to see how different cloud providers approach the same problems in different ways, and I’ve learned a lot from being part of those conversations.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Looking Ahead&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Cloud isn’t just the future—it’s already here. And for those of us working in DevOps or cloud engineering, it’s a space that’s constantly evolving. Whether it's learning new infrastructure as code tools like Terraform (more to come on this in future posts), improving CI/CD pipelines, or just understanding how all the pieces fit together, there's always something new to explore.&lt;/p&gt;

</description>
      <category>cloudinfrastructure</category>
      <category>oracle</category>
      <category>cloudcomputing</category>
      <category>devops</category>
    </item>
  </channel>
</rss>
