27 June, 2026 - Day 1

Written by Mohammad Sameer. AI was used only for proofreading and improving clarity.

Welcome to Day 1.

I'm documenting my journey toward becoming an AI Engineer, starting with the fundamentals and progressing to production-grade AI systems. These posts are my daily learning notes, written to reinforce my understanding and hopefully help others learning alongside me.

This journey has two parallel tracks:

  1. The "Get Hired" Track - it will cover Applied LLMs, Advanced RAG, Agent Frameworks, and Deployment.
  2. The "Foundation" Track - this is where I will relearn my foundations including mathematics, classical machine learning, deep learning, and related fundamentals.

Today, while setting up my development environment, I chose to use uv[1] as my Python package and project manager.

For those of you that do not know what uv is, uv is a new package and dependency manager developed by Astral.

It is becoming a popular alternative to pip, virtualenv, and Conda for many Python workflows because of the following reasons:

  • It is 10-100x faster than pip.
  • Since uv is written in Rust, many operations like creating environments and installing packages are noticeably faster than traditional Python tooling.
  • Provides comprehensive project management, with a universal lockfile.

Getting Started with uv?

  • Install it using your terminal,
if using macOS then use this in your terminal,
curl -LsSf https://astral.sh/uv/install.sh | sh
if you're using Windows, then,
powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"
  • to create a project, use the following command:
uv init project_name

then go to that project using

cd project_name
  • To install a packages, use the command uv add along with the package's name like this:
uv add google-genai
uv lock - this command locks all packages and dependencies with their version number.
uv sync - This command is used to install those packages and updates the environment
uv run example.py - this runs the files.

One can simply use uv with the above commands and the commands I discussed are more than enough to get started. One good thing about uv is also that it separately creates, activates and manages environments.

Today's takeaway

I learned how uv simplifies Python development by combining dependency management, virtual environments, and project management into a single tool. It also offers a much faster installation experience compared to traditional workflows.

Progress

✓ Set up Python ✓ Installed uv ✓ Created first project ✓ Learned dependency management

Next: → First LLM project

That's it for Day 1.
Tomorrow I'll set up my development workflow and start building my first AI project.
See you tomorrow!