<?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: Bhuvi D</title>
    <description>The latest articles on DEV Community by Bhuvi D (@bhuvi_d).</description>
    <link>https://dev.to/bhuvi_d</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%2F2878464%2Fc79ba9c3-d1be-4d97-aad2-a676692c4694.jpeg</url>
      <title>DEV Community: Bhuvi D</title>
      <link>https://dev.to/bhuvi_d</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/bhuvi_d"/>
    <language>en</language>
    <item>
      <title>How did we get here ? - From Rule-Based Systems to Agentic AI</title>
      <dc:creator>Bhuvi D</dc:creator>
      <pubDate>Fri, 27 Feb 2026 18:18:41 +0000</pubDate>
      <link>https://dev.to/bhuvi_d/how-did-we-get-here-from-rule-based-systems-to-agentic-ai-1dl9</link>
      <guid>https://dev.to/bhuvi_d/how-did-we-get-here-from-rule-based-systems-to-agentic-ai-1dl9</guid>
      <description>&lt;p&gt;Hello there 👋  &lt;/p&gt;

&lt;p&gt;I’m writing this based on a Udemy course on Agentic AI, and I wanted to reflect on how AI evolved into what we now call &lt;em&gt;agentic systems&lt;/em&gt;.&lt;/p&gt;




&lt;h2&gt;
  
  
  The Era of Rules: Symbolic AI
&lt;/h2&gt;

&lt;p&gt;The story of Artificial Intelligence began with symbolic systems. Intelligence was primarily based on explicit rules and logical reasoning.&lt;/p&gt;

&lt;p&gt;If you needed a system to compute something — let’s call it &lt;em&gt;task A&lt;/em&gt; — you had to provide a strict chronological sequence of logical steps.&lt;/p&gt;

&lt;p&gt;Now imagine the constraints.&lt;/p&gt;

&lt;p&gt;There are countless tasks like A. We could not scale this. And ambiguity quickly became a problem.&lt;/p&gt;

&lt;p&gt;What kind of ambiguity?&lt;/p&gt;

&lt;p&gt;Consider lexical ambiguity:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;“I saw her duck.”&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Did she lower her head?&lt;br&gt;&lt;br&gt;
Or are we talking about her pet?&lt;/p&gt;

&lt;p&gt;Rule-based systems struggle when meaning depends on context.&lt;/p&gt;




&lt;h2&gt;
  
  
  The Shift to Statistical Learning
&lt;/h2&gt;

&lt;p&gt;Towards the 1990s, the field shifted toward statistical and machine learning approaches. Instead of relying on predefined rules, systems began learning patterns directly from data.&lt;/p&gt;

&lt;p&gt;This was a major conceptual shift:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;From explicit programming → to probabilistic modeling.&lt;/strong&gt;&lt;/p&gt;




&lt;h2&gt;
  
  
  The Deep Learning Acceleration
&lt;/h2&gt;

&lt;p&gt;The deep learning era accelerated this transition. With large datasets and GPU computation, models began learning hierarchical representations automatically.&lt;/p&gt;

&lt;p&gt;This significantly advanced vision and language-based tasks.&lt;/p&gt;

&lt;p&gt;Instead of telling systems what features to look for — they learned them.&lt;/p&gt;




&lt;h2&gt;
  
  
  Generative AI: Pretrain at Scale
&lt;/h2&gt;

&lt;p&gt;Generative models extended deep learning even further.&lt;/p&gt;

&lt;p&gt;They enabled:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Few-shot learning
&lt;/li&gt;
&lt;li&gt;Natural language interactions
&lt;/li&gt;
&lt;li&gt;Multimodal understanding
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;However, these systems primarily generate outputs in response to prompts.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Input → Model → Output.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Powerful — but reactive.&lt;/p&gt;




&lt;h2&gt;
  
  
  The Agentic Pivot
&lt;/h2&gt;

&lt;p&gt;Agentic AI represents a structural evolution.&lt;/p&gt;

&lt;p&gt;We are now talking about the seamless integration of:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Autonomy
&lt;/li&gt;
&lt;li&gt;Memory
&lt;/li&gt;
&lt;li&gt;Tools
&lt;/li&gt;
&lt;li&gt;Multi-agent coordination
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;This enables AI systems to independently execute tasks once a goal is set.&lt;/p&gt;

&lt;p&gt;Models now:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Reason
&lt;/li&gt;
&lt;li&gt;Act
&lt;/li&gt;
&lt;li&gt;Use tools
&lt;/li&gt;
&lt;li&gt;Update memory
&lt;/li&gt;
&lt;li&gt;Adapt iteratively
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The shift is architectural.&lt;/p&gt;

&lt;p&gt;We moved from systems that &lt;em&gt;respond&lt;/em&gt; to systems that &lt;em&gt;act&lt;/em&gt;.&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%2F4bnw742fzhdkbsnoqgbi.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%2F4bnw742fzhdkbsnoqgbi.png" alt="Image by Bhuvi " width="800" height="465"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Final Thought
&lt;/h2&gt;

&lt;p&gt;Generative AI produces outputs.&lt;br&gt;&lt;br&gt;
Agentic AI executes workflows.&lt;/p&gt;

&lt;p&gt;And that difference might define the next era of AI systems.&lt;/p&gt;




&lt;p&gt;If you're exploring agentic systems, I’d love to hear how you're thinking about autonomy, memory, and orchestration in your own projects.&lt;/p&gt;

</description>
      <category>ai</category>
      <category>agents</category>
      <category>programming</category>
      <category>automation</category>
    </item>
    <item>
      <title>How Drone Imagery with AI can transform farming - Learnings from a canceled Hackathon</title>
      <dc:creator>Bhuvi D</dc:creator>
      <pubDate>Sun, 15 Jun 2025 14:25:56 +0000</pubDate>
      <link>https://dev.to/bhuvi_d/how-drone-imagery-with-ai-can-transform-farming-learnings-from-a-canceled-hackathon-a7j</link>
      <guid>https://dev.to/bhuvi_d/how-drone-imagery-with-ai-can-transform-farming-learnings-from-a-canceled-hackathon-a7j</guid>
      <description>&lt;p&gt;A few weeks back, I decided to participate in a Hackathon with a few friends. The topic was based on developing tools to make farming more efficient and sustainable.&lt;br&gt;
The event was unfortunately canceled 🙁, but the topic continued to intrigue me.&lt;/p&gt;

&lt;p&gt;I found myself diving more into the topic and would love to share my learnings.&lt;/p&gt;

&lt;p&gt;The problem statement we came up with  was: '&lt;strong&gt;Using drones with multispectral &amp;amp; thermal imaging, geospatial data, and AI to transform the current blanket farming into a sustainable, precision-based agriculture system.&lt;/strong&gt;'&lt;/p&gt;

&lt;p&gt;Current farming practices rely on '&lt;strong&gt;blanket applications&lt;/strong&gt;' of fertilizers, water, etc. However, this is not a sustainable practice. Imagine the impact excess use of fertilizers could have on the quality of soil in the long run. Think of the amount of water that is wasted on irrigating without direction.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Image from Google&lt;/em&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%2Fyy81h10n12wiro9p5ids.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%2Fyy81h10n12wiro9p5ids.png" alt="Image2" width="800" height="433"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Now coming to the interesting metric or solution is based on. &lt;strong&gt;NDVI&lt;/strong&gt; stands for Normalized Difference Vegetation Index.&lt;br&gt;
A &lt;code&gt;score &amp;gt;0.33&lt;/code&gt; indicates rich vegetation + high chlorophyll content.&lt;br&gt;
A &lt;code&gt;score &amp;lt;0.33&lt;/code&gt; lies in the red-brown spectrum indicating poor vegetation.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;My Architecture diagram&lt;/em&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%2Fcmryk4uzpxxtlc55sel6.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%2Fcmryk4uzpxxtlc55sel6.png" alt="Image1" width="800" height="467"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;The architecture for our solution is simple - &lt;/p&gt;

&lt;p&gt;🌿 Drones equipped with multispectral and thermal cameras capture detailed images of the field. &lt;/p&gt;

&lt;p&gt;🌿 These images will then be processed into NDVI maps and thermal maps  (using tools like QGIS). &lt;/p&gt;

&lt;p&gt;🌿 The maps are combined using geospatial tools (like GeoPandas) to show variations across the field by tagging them location-wise. &lt;/p&gt;

&lt;p&gt;🌿 AI/ML models analyze the data to identify crop stress, soil issues, and pest risks by classifying it.&lt;br&gt;
To discuss the kind of tagging/labelling for AI models -&lt;br&gt;
Ex: &lt;code&gt;A low NDVI score + high temp ( captured using thermal map data) —&amp;gt; low moisture area —&amp;gt; hence need more irrigation.&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;🌿  The system provides real-time, zone-specific advice for targeted spraying of fertilizers, or irrigation. &lt;/p&gt;

&lt;p&gt;🌿  Farmers receive valuable insights via a dashboard, enabling smarter, affordable precision farming.&lt;/p&gt;

&lt;p&gt;The solution is modular and accessible, especially with the current advancements in drone technology.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;AI generated visual&lt;/em&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%2Fzxqa3pn02q5kincj2v9t.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%2Fzxqa3pn02q5kincj2v9t.png" alt="Image03" width="547" height="519"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;For now, I wanted to share all of this, I am keenly looking into datasets, etc which will help me build a functional model.&lt;br&gt;
I am looking forward to any insights from you 😊&lt;/p&gt;

</description>
      <category>programming</category>
      <category>beginners</category>
      <category>hackathon</category>
      <category>ai</category>
    </item>
    <item>
      <title>Diving into Next.js - My 2-Week Learning Experience</title>
      <dc:creator>Bhuvi D</dc:creator>
      <pubDate>Wed, 11 Jun 2025 17:48:15 +0000</pubDate>
      <link>https://dev.to/bhuvi_d/diving-into-nextjs-my-2-week-learning-experience-3568</link>
      <guid>https://dev.to/bhuvi_d/diving-into-nextjs-my-2-week-learning-experience-3568</guid>
      <description>&lt;p&gt;For my internship, I am working on a deployed product with hundreds of users. I was familiar with React but not with Next.js. I was given a two-week learning phase to familiarize myself with Next.js and get started.&lt;br&gt;
Firstly, &lt;strong&gt;Next.js&lt;/strong&gt; is a framework built on top of &lt;strong&gt;React&lt;/strong&gt; by &lt;strong&gt;Vercel&lt;/strong&gt;. It is used in many production-level projects.&lt;/p&gt;

&lt;p&gt;&lt;u&gt;The reason&lt;/u&gt;: file-based routing, SEO support, multiple CSS features, instant UI retrieval from the server, creation of API endpoints within the project itself, and loads of other features.&lt;br&gt;
You can read about this in detail here - &lt;a href="https://nextjs.org/" rel="noopener noreferrer"&gt;link&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;To learn Next.js quickly and just get a grasp of the significant features, I made use of the official &lt;a href="https://nextjs.org/learn" rel="noopener noreferrer"&gt;documentation tutorial&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Here are some key useful points from the tutorial:&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;➡️ Next.js is highly compatible with &lt;strong&gt;Tailwind CSS&lt;/strong&gt; and will install modules automatically if chosen. Alternatively, one can also create CSS modules, the major benefit of doing either is the ability to evade style collisions and apply styles to components easily.&lt;/p&gt;

&lt;p&gt;➡️ Next.js optimizes font retrieval, it hosts font files to reduce the number of requests made while rendering custom fonts for a website.&lt;br&gt;
The cooler part, however, is image optimization. Those who have worked with HTML will be familiar with the problem of optimizing an image for different screens, be it the dimension or layout, and the &lt;code&gt;next/image&lt;/code&gt; does this automatically.&lt;/p&gt;

&lt;p&gt;➡️ Personally, while working on my tasks, the thing that made code tracing so easy was the &lt;strong&gt;file-system routing&lt;/strong&gt;. The URL is mapped to route segments. Each route has a &lt;code&gt;page.tsx&lt;/code&gt; or &lt;code&gt;page.jsx&lt;/code&gt; which exports the visible components. There is additionally another standard file called &lt;code&gt;layout.tsx&lt;/code&gt; for components shared between multiple pages (navigation bars, etc.), so re-rendering for every page is avoided. The &lt;code&gt;&amp;lt;a&amp;gt;&lt;/code&gt; tag in HTML initiates a complete refresh on link routing, whereas the &lt;code&gt;next/link&lt;/code&gt; prefetches code for the linked routes, thereby making link navigation almost instantaneous.&lt;/p&gt;

&lt;p&gt;➡️ The next part deals with understanding APIs and DB connectivity. Next.js uses React Server Components, so there is no need to maintain API layers while dealing with the backend for small applications, as databases can be queried directly. Larger applications, including the one that I worked on, need an explicit modular API layer for scalability and security.&lt;br&gt;
As an example, if the requirement was to fetch the number of transactions made in a case, using JS would mean fetching data and using an array method to compute the count, but using an SQL query directly is much easier.&lt;/p&gt;

&lt;p&gt;➡️ Most websites, including the one I worked on, require data to be dynamically rendered. Data fetching can be slow at times. &lt;code&gt;Loading.tsx&lt;/code&gt; is a special file that can contain UI to be shown while the data is being fetched.&lt;br&gt;
You might have observed &lt;strong&gt;loading skeletons&lt;/strong&gt;, this is to improve the user experience while waiting for data retrieval.&lt;br&gt;
Streaming the entire page may not be needed in all cases, the slow fetching might be due to a few components. React's Suspense allows certain parts of the page to be loaded after the main UI is displayed. Suspense boundaries can be created based on the requirement.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;constructing a skeleton with tailwind utility classes&lt;/em&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;export function TableRowSkeleton() {
  return (
    &amp;lt;tr className="w-full border-b border-gray-100 last-of-type:border-none [&amp;amp;:first-child&amp;gt;td:first-child]:rounded-tl-lg [&amp;amp;:first-child&amp;gt;td:last-child]:rounded-tr-lg [&amp;amp;:last-child&amp;gt;td:first-child]:rounded-bl-lg [&amp;amp;:last-child&amp;gt;td:last-child]:rounded-br-lg"&amp;gt;
      {/* Customer Name and Image */}
      &amp;lt;td className="relative overflow-hidden whitespace-nowrap py-3 pl-6 pr-3"&amp;gt;
        &amp;lt;div className="flex items-center gap-3"&amp;gt;
          &amp;lt;div className="h-8 w-8 rounded-full bg-gray-100"&amp;gt;&amp;lt;/div&amp;gt;
          &amp;lt;div className="h-6 w-24 rounded bg-gray-100"&amp;gt;&amp;lt;/div&amp;gt;
        &amp;lt;/div&amp;gt;
      &amp;lt;/td&amp;gt;
      {/* Add more &amp;lt;td&amp;gt; skeleton cells here based on your table structure */}
    &amp;lt;/tr&amp;gt;
  );
}
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;➡️ Next.js has client hooks like &lt;code&gt;useSearchParams()&lt;/code&gt; and &lt;code&gt;usePathname()&lt;/code&gt;, which help in accessing parts of the URL. The &lt;code&gt;useSearchParams()&lt;/code&gt; hook enables us to get parameters from the client without hitting the server.&lt;/p&gt;

&lt;p&gt;➡️ The next interesting part is the graceful error handling. JS uses try-catch blocks for error handling. The file will contain an error object along with a reset client-based function to re-render the route.&lt;br&gt;
Form validation can be done on the client side using simple constraints such as required.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;client component with error and reset&lt;/em&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;'use client';

import { useEffect } from 'react';

export default function Error({
  error,
  reset,
}: {
  error: Error &amp;amp; { digest?: string };
  reset: () =&amp;gt; void;
}) {
  useEffect(() =&amp;gt; {
    console.error(error);
  }, [error]);

&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Server-side validation, however, is needed to ensure the right data is entering the database and no malicious attempts occur on the client’s side.&lt;br&gt;
Authentication and authorization: &lt;code&gt;NextAuth.js&lt;/code&gt; abstracts and simplifies much of the process involved in verifying the identity of someone initiating a login.&lt;/p&gt;




&lt;p&gt;Thanks for reading 😊&lt;br&gt;
Please feel free to share your thoughts and insights.&lt;/p&gt;

</description>
      <category>webdev</category>
      <category>programming</category>
      <category>nextjs</category>
      <category>beginners</category>
    </item>
    <item>
      <title>I took the AWS Cloud Practitioner Essentials course, and here's what I learned.</title>
      <dc:creator>Bhuvi D</dc:creator>
      <pubDate>Wed, 04 Jun 2025 14:46:49 +0000</pubDate>
      <link>https://dev.to/bhuvi_d/i-took-the-aws-cloud-practitioner-essentials-course-and-heres-what-i-learned-2c6f</link>
      <guid>https://dev.to/bhuvi_d/i-took-the-aws-cloud-practitioner-essentials-course-and-heres-what-i-learned-2c6f</guid>
      <description>&lt;p&gt;I just completed the course titled '&lt;strong&gt;AWS Cloud Practitioner Essentials&lt;/strong&gt;' today.&lt;br&gt;
Just wanted to share a few things I learned :)&lt;/p&gt;

&lt;p&gt;&lt;em&gt;(Note: This is a certificate of completion from AWS’s beginner-level course, not the Cloud Practitioner certification exam.)&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;Firstly, to give an overview of the course itself - it's a great course, it has this coffee shop metaphor, to explain the concept of setting up a business on AWS. Certainly made it easy for me, as I had zero prior knowledge of Cloud.&lt;/p&gt;

&lt;p&gt;The first part of the course deals with what a &lt;strong&gt;client-server model&lt;/strong&gt; is, followed by why one must migrate to cloud-based deployment. There are multiple benefits. Relying on physical data centers as a company is not a good idea, considering the cost needed to set up and keep them running. Additionally, companies lose the ability to scale conveniently.&lt;/p&gt;

&lt;p&gt;After migrating to the cloud, the use of infrastructure becomes flexible, you can pay based on resources used, and don't have to make predictions beforehand.&lt;/p&gt;

&lt;p&gt;You can read about some advantages of cloud computing here - [&lt;a href="https://docs.aws.amazon.com/whitepapers/latest/aws-overview/six-advantages-of-cloud-computing.html" rel="noopener noreferrer"&gt;Link&lt;/a&gt;]&lt;br&gt;
The next section of the course deals with &lt;strong&gt;Amazon EC2 (Elastic Compute Cloud)&lt;/strong&gt; which basically offers a platform to run &lt;strong&gt;instances&lt;/strong&gt;.&lt;br&gt;
So the first step in the whole process is to launch an instance. One must choose various configurations including OS, application server, etc. along with hardware configuration and security settings.&lt;/p&gt;

&lt;p&gt;The interesting part is that this allows businesses or individuals to manage virtual servers without having to invest in physical infrastructure. (Note: EC2 is not serverless. For serverless computing, AWS offers &lt;strong&gt;Lambda&lt;/strong&gt;.)&lt;/p&gt;

&lt;p&gt;Next, one can connect and use the instance.&lt;br&gt;
Depending on the need of the applications one can choose from 5 different types of instances. The idea is to choose the instance based on your specific CPU or memory requirements. The section also deals with pricing plans, to optimize and make it fair for the users.&lt;/p&gt;

&lt;p&gt;Here is a visual I created to get an overview of the types of instances -&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%2Fasszvc6abgsynfjgc9iu.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%2Fasszvc6abgsynfjgc9iu.png" alt="Image 1" width="699" height="523"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;There is also another important concept of the &lt;strong&gt;Elastic Load Balancer&lt;/strong&gt; discussed. It can be thought of as a mediator cum distributor, which directs the incoming requests from customers to various instances.&lt;br&gt;
This is particularly useful if you receive more than expected traffic to your hosted service, and need to evenly distribute it for optimal delivery.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Amazon SNS and Amazon SQS&lt;/strong&gt; (Simple Notification Service / Simple Queue Service) are services that can be integrated into applications to facilitate the design following a &lt;strong&gt;microservices&lt;/strong&gt; approach instead of a &lt;strong&gt;monolithic&lt;/strong&gt; approach.&lt;br&gt;
This means that when you have 2 or more components in an application, instead of &lt;strong&gt;tightly coupling&lt;/strong&gt; them (monolithic), where the failure of a single component causes the entire application to fail, the microservices approach ensures that components continue to communicate with each other in case of failure via services.&lt;/p&gt;




&lt;p&gt;Personally, the most interesting part of this course for me was the global infrastructure setup of AWS. That is how they ensure that systems continue to run even in the case of disasters.&lt;br&gt;
Setting up or we can say choosing a data center region in this case, will be dependent on factors like - proximity to customers, compliances, etc.&lt;br&gt;
Now AWS recommends running EC2 instances on multiple &lt;strong&gt;Availability Zones&lt;/strong&gt;. Availability zones consist of a single data center or a group of data centers within a single region. So let's say somehow a natural disaster causes the destruction of a data center, there is still another availability zone situated in the same region to ensure the running of applications. The key point here is the low latency yet safe distance between availability zones.&lt;/p&gt;

&lt;p&gt;The subsequent part of the course discusses ways to interact with AWS resources - this can be done using &lt;strong&gt;AWS Command Line, Management Console, or Software Development Kits&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;Now there are some cool network configurations available to enable a more secure and direct connection from private networks to AWS resources/instances. You can explore more on VPC here - [&lt;a href="https://docs.aws.amazon.com/vpc/latest/userguide/what-is-amazon-vpc.html" rel="noopener noreferrer"&gt;Link&lt;/a&gt;]&lt;br&gt;
&lt;strong&gt;The Virtual Private Cloud (VPC)&lt;/strong&gt; enables one to create an isolated portion of the cloud with Subnets. An internet gateway must be used to access the VPC.&lt;br&gt;
&lt;strong&gt;AWS Direct Connect&lt;/strong&gt; allows you to establish a one-to-one connection between a corporate data center and the VPC.&lt;/p&gt;

&lt;p&gt;To enable security, there are network &lt;strong&gt;ACLs (Access Control Lists)&lt;/strong&gt; present at the &lt;strong&gt;subnet&lt;/strong&gt; level and &lt;strong&gt;Security Groups&lt;/strong&gt; present at the instance level.&lt;/p&gt;

&lt;p&gt;The following model is fundamental to AWS in ensuring security agreements: the &lt;strong&gt;Shared Responsibility Model&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;Screenshot - &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%2Fkrv7wefouehrb2qp3cc7.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%2Fkrv7wefouehrb2qp3cc7.png" alt="Image 2" width="800" height="285"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;I feel the other parts of the course are more specific to what AWS can offer and are definitely worth exploring if you plan to host applications on the cloud.&lt;br&gt;
Overall, I feel the course has given me a holistic and high-level understanding of the fundamentals of AWS.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Note: As it may have been evident, I am a beginner, I certainly will appreciate inputs from those with a deeper understanding.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;Thanks,&lt;br&gt;
Have a great day!!&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Bhuvi （￣︶￣）↗　 &lt;/li&gt;
&lt;/ul&gt;

</description>
      <category>cloud</category>
      <category>aws</category>
      <category>beginners</category>
      <category>cloudcomputing</category>
    </item>
  </channel>
</rss>
