About Course

Learn from Laurence Moroney, former AI lead at Google, as he guides you through a comprehensive pathway to understand and apply generative AI technologies in real-world software development.

What you’ll learn in this course
  • Configuration-Driven Development (CDD): Understand and implement CDD principles in software design.
  • Database Design and Implementation: Learn to design database schemas, implement CRUD operations, and optimize database performance.
  • Design Patterns: Explore and apply Gang of Four design patterns, including Singleton, Factory, Template Method, and Strategy.
  • API Integration: Work with external APIs like DALL-E for image generation.
  • Data Serialization: Implement file serialization techniques using JSON and Pickle.
  • LLM-Assisted Coding: Leverage Large Language Models as pair programming partners throughout the software development process.
Key technologies and concepts you’ll use
  • Python: The primary programming language used throughout the course
  • SQLAlchemy: ORM for database operations
  • SQLite: Lightweight database for prototyping
  • JSON: Data format for configuration files
  • Pickle: Serialization tool for complex Python objects
  • DALL-E API: For image generation tasks
  • Design Patterns: Singleton, Factory, Template Method, Strategy
  • LLMs (e.g., GPT-4): For code generation and problem-solving assistance
Level up with hands-on projects
  • Build a configurable image generation application using the DALL-E API, implementing CDD principles.
  • Design and implement an e-commerce database system with full CRUD functionality.
  • Develop a financial services application that demonstrates the use of various design patterns.
  • Create and query a social network database as part of a graded exercise.

These projects will allow you to apply concepts of software design, database management, and API integration while using an LLM as a coding assistant.

Show More

What Will You Learn?

  • Integrate Generative AI in Development: Learn to use generative AI tools like GitHub Copilot and ChatGPT from initial design to deployment, enhancing coding efficiency and creativity.
  • Optimize Your Code Quality: Improve your coding skills, whether you’re just starting out and need help with bug fixes or an experienced developer trying to break new ground.
  • Develop Innovative Solutions: Create advanced software solutions using AI for testing, debugging, dependency management, and documentation.