Building Applications on AWS series

Article 1 — Introduction

Shashidhar Kudari
2 min readJul 17, 2024

Welcome to our comprehensive series on building applications with AWS! This guide is designed for developers looking to harness the power of AWS for creating secure, reliable, and scalable applications. We’ll dive deep into essential concepts and provide hands-on exercises to solidify your understanding. Along the way, I’ll share valuable resources and prerequisites to enrich your learning experience. Should you have any questions or require further clarification, don’t hesitate to leave a comment.

Table of Contents

  • Prerequisites
  • Understanding AWS SDK
  • Setting Up Your Python Environment

Prerequisites

Before we begin, it’s crucial to grasp the basics of cloud computing and familiarize yourself with the landscape of cloud providers. This series assumes a decision in favor of AWS, focusing on leveraging its tools and services for application development. However, choosing the right cloud provider is subjective and should align with your specific needs. Numerous online resources can guide you in making an informed decision.

To get the most out of this series, ensure you have:

  • A foundational understanding of cloud computing
  • Basic knowledge of application development
  • An active AWS account Create one here if needed)
  • Miniconda or Anaconda installed for Python environment management (Download here)

Understanding AWS SDK

Why Use an SDK?

SDKs (Software Development Kits) are pivotal for developers to interact with cloud services programmatically, offering a more flexible approach than web consoles or CLI. The AWS SDK, available in various programming languages, provides APIs for seamless integration with AWS services. For this series, we’ll utilize the AWS SDK for Python (Boto3), enabling efficient and effective interaction with AWS.

Setting Up Your Python Environment

We’ll use Conda and Poetry for managing Python environments and dependencies, respectively. Conda simplifies environment management, while Poetry handles dependency management and package organization.

Creating Python Environment

We will be using the combination of conda and poetry to manage Python environments and dependencies. Conda is a package manager that helps you create and manage Python environments. Poetry is a tool that helps you manage dependencies and package your Python applications. We will use conda to create a Python environment and poetry to manage dependencies for our application.

Let’s first create a conda environment

conda create -n aws-app python=3.11

Activate the conda environment

conda activate aws-app

Install poetry

conda install poetry

You should see a pyproject.toml file created in your project directory. This file contains the project’s metadata and dependencies.

Adding Dependencies

poetry add boto3

now a poetry.lock file should be created in your project directory.

With your Python environment ready and dependencies set, you’re well-prepared to start developing with AWS. Stay tuned for our next article, where we’ll explore using the AWS SDK to programmatically interact with AWS services.

Resources

--

--

Shashidhar Kudari

I am an ML enthusiast and Full Stack Application Developer with a passion for creating real-time, scalable ML and non-ML applications on AWS.