AI-Augmented Coder Workshop (AIACW)

 

Course Overview

The workshop aims to introduce the participants to various AI tools that can assist them in different stages of software development. The workshop covers topics such as ethical and legal implications of code reuse, AI in ideation and conceptualization, AI in coding and testing, and AI in deployment and maintenance. The workshop also includes hands-on activities, case studies, best practices, and ethical considerations for integrating AI in software development.

Who should attend

New to Intermediate in AI knowledge.

Prerequisites

  • Basic understanding of programming concepts.
  • Some experience with a programming language.

Outline: AI-Augmented Coder Workshop (AIACW)

Module 1: Introduction to AI for Software Programmers (30 minutes)

  • Definition and types of AI: Narrow AI vs. General AI.
  • Brief history of AI in software development.
  • Overview of AI's role and potential in software development.
  • Introduction to AI tools: Bard, ChatGPT, GitHub Copilot, etc.

Module 2: Ethical and Legal Implications of Code Reuse in AI-Assisted Development (30 minutes)

  • Legal frameworks and code reuse: commercial, open-source, and unlicensed code.
  • Ethical considerations in training AI models with coding samples.
  • Discussion on proprietary code and inadvertent reuse in AI models.

Module 3: AI in the Initial Stages of Software Development (1 hour 30 minutes)

  • Ideation and Conceptualization with AI:
    • AI tools for brainstorming and conceptualizing software ideas.
    • AI assistance in generating and refining project requirements.
  • Design and Planning:
    • AI in architecture design and technology stack selection.
    • AI tools for UI/UX design concepts and mock-ups.
  • Hands-on activity: Using AI tools for generating project plans and design documents.

Module 4: AI in the Development and Post-Development Phases (1 hour 40 minutes)

  • Coding with AI Assistance:
    • Using AI for coding tasks (e.g., GitHub Copilot for writing functions).
    • AI in generating code snippets and providing autocomplete suggestions.
    • Testing and Quality Assurance:
    • AI for generating test cases and identifying security vulnerabilities.
    • Detecting code smells with AI tools.
  • Deployment and Maintenance:
    • AI-assisted monitoring and error detection.
    • AI in predictive maintenance and performance analysis.
  • Hands-on activity: Engaging with AI for coding, testing, and maintenance tasks.

Module 5: Case Studies, Best Practices, and Ethical Considerations (1 hour)

  • Case Studies: Real-world examples across the software development lifecycle.
  • Best Practices: Integrating AI in software development stages.
  • Ethical Considerations Recap: Revisiting the implications of AI in software development.

Conclusion (30 minutes)

  • Recap of the key points covered.
  • Q&A session.
  • Resources for further learning.
  • Provision of downloadable resources or cheat sheets.

Hands-on Activities may include: Building an AI-Assisted Chatbot

  • Project Overview:
    • Objective: Create a chatbot that can handle customer inquiries, provide information, and perform basic tasks like booking appointments or answering FAQs.
    • Technologies: Python for backend (using libraries like Flask), AI services (like OpenAI's GPT for natural language processing), and JavaScript for frontend integration if needed.
  • Initial Setup and Planning:
    • GitHub Copilot Assistance: Suggesting the project structure, initial Flask setup, and dependencies required.
    • Task: Create a basic web server setup with Flask.
  • Integrating Chatbot with AI Services:
    • Objective: Connect the chatbot with an AI service like OpenAI's GPT-3 for natural language understanding and response generation.
    • GitHub Copilot Assistance: Providing code snippets for integrating the OpenAI API, handling API requests, and processing responses.
  • Building Chat Functionalities:
    • Objective: Develop functionalities such as user query processing, response generation, and context management.
    • GitHub Copilot Assistance: Generating code for parsing user input, managing chat sessions, and generating contextual responses.
  • Frontend Integration:
    • Objective: Create a simple and user-friendly interface for the chatbot.
    • GitHub Copilot Assistance: If using a web frontend, Copilot can assist in writing JavaScript or TypeScript code to handle user inputs and display responses. It can
    • also suggest frameworks or libraries for UI components.
  • Testing and Refining:
    • Objective: Test the chatbot for various scenarios and improve its accuracy and user interaction.
    • GitHub Copilot Assistance: Generating test cases, especially for edge cases in conversation flows, and suggesting improvements in code for handling unexpected user inputs.
  • Advanced Features (Optional):
    • Objective: Add advanced features like voice recognition, multilingual support, or integration with external services (e.g., calendars for booking appointments).
    • GitHub Copilot Assistance: Providing code examples and API integration snippets for these advanced features.
  • Deployment:
    • Objective: Deploy the chatbot on a server or cloud platform.
    • GitHub Copilot Assistance: Suggesting deployment scripts, Docker container configurations, or cloud deployment procedures.

Prices & Delivery methods

Online Training

Duration
4 hours

Price
  • on request
Classroom Training

Duration
4 hours

Price
  • on request

Schedule

Currently there are no training dates scheduled for this course.