Developers who know:
LLMs and AI make smart software easy to build
Modern systems need parts that can think and adapt
Old systems can't handle smart, changing behaviors
Users want smart apps that understand them
An agent is a smart software that:
What | Old Object | Software Agent |
---|---|---|
How it Acts | Waits for commands | Does things on its own |
What it Stores | Data + functions | Beliefs, wants, plans |
How it Talks | Direct function calls | Messages and negotiation |
Life Cycle | Created/destroyed by code | Lives long, driven by goals |
Making Decisions | Fixed logic | AI-powered thinking |
Agent Programming is a way to build software where:
What the agent knows about the world
What the agent wants to achieve
What the agent plans to do
Functions
Data Flow
Sequential
Objects
Encapsulation
Inheritance
Agents
Autonomy
Intelligence
Agent systems need good ways to communicate so agents can:
Agents working toward the same goals
Agents trading resources or services
Agents passing knowledge and data
Agents timing their actions together
Model Context Protocol is a standard way for AI models to connect to tools and data:
(Client)
(Tools)
Agent-to-Agent Protocol is a standard way for different AI agents to talk and work together. It helps:
Simple request-response using JSON over HTTP
High-performance protocol using Protocol Buffers
Standard REST API style
Real-time updates using Server-Sent Events
The agent development ecosystem offers various frameworks, each with unique strengths and use cases.
Enterprise-grade reliability and scalability
Popular framework for LLM applications
Graph-based agent architectures
Specialized agent coordination tools
ADK is a comprehensive framework specifically designed for building production-ready agent systems with emphasis on:
Best For: Large-scale enterprise applications, mission-critical systems
capital_agent = LlmAgent(
model="gemini-2.0-flash",
name="capital_agent",
description="Answers user questions about the capital city of a given country.",
instruction="""You are an agent that provides the capital city of a country.
When a user asks for the capital of a country:
1. Identify the country name from the user's query.
2. Use the `get_capital_city` tool to find the capital.
3. Respond clearly to the user, stating the capital city.
Example Query: "What's the capital of {country}?"
Example Response: "The capital of France is Paris."
""",
tools=[get_capital_city],
)
Workflow Agents orchestrate complex multi-step processes by coordinating multiple agents and tools:
Execute agents one after another in a defined order
Repeat agent execution until a condition is met
Run multiple agents simultaneously for faster processing
Learn more: ADK Workflow Agents Documentation
LangChain is a popular framework for building applications with large language models, offering:
Best For: LLM-powered applications, rapid prototyping, research
LangGraph extends LangChain with graph-based agent architectures, enabling:
Best For: Complex multi-step workflows, agent coordination scenarios
Framework | Strengths | Use Cases | Learning Curve |
---|---|---|---|
ADK | Production-ready, enterprise features | Large-scale systems, mission-critical | Moderate |
LangChain | Rapid development, extensive tools | LLM apps, prototyping | Low |
LangGraph | Complex workflows, visual design | Multi-step processes, research | Moderate |
AutoGen | Conversational agents, code execution | Interactive AI, coding assistance | Low |
CrewAI | Role-based agents, task management | Content creation, analysis | Low |
Multi-agent system for handling inquiries, processing orders, and providing support
Collaborative content creation, review, and publishing
Real-time market analysis and trading decisions
Content Planner analyzes requirements and creates strategy
Research Agent gathers information from multiple sources
Editor Agent creates content based on research data
SEO Agent optimizes for search engines
Fact Checker Agent verifies claims and accuracy
Publisher Agent handles final review and publication
Real-time data processing and signal generation
Risk assessment and position sizing
Order execution and trade management
How might agents change software architecture patterns?
What security challenges are unique to agent systems?
How do we ensure agent decisions are explainable?
What role will agents play in future software development?
How do we balance agent autonomy with human control?
Let's discuss the future of agent-oriented programming!
All presentation slides and example projects are available on GitHub
💡 Share your projects • 🚀 Contribute to the community • 📖 Build the future together