Slide 1

Slide 1 text

Gemini Code Assist for Developer Productivity Code Plan Build Deploy O perate M onitor Release Test

Slide 2

Slide 2 text

Punsiri Boonyakiat - Senior Data Engineer @ CJMORE - Speaker @ Women Tech Maker 2024 - Speaker @ LINE DEV CONFERENCE 2021 - Speaker @ Skoodio & DATA TH about Gemini Code Assistance in Data Engineering Linkedin: https://www.linkedin.com/in/punsiri-boonyakiat-13909786/ Introduction

Slide 3

Slide 3 text

Are you a Software Tester, Developer, Data Science , or Data Engineer ?

Slide 4

Slide 4 text

be 40% more productive? Would you like to

Slide 5

Slide 5 text

Agenda 01 What is Generative AI 02 How AI code-assisted boost productivity 03 Demo : AI-assisted Dev workflow 04 Summary

Slide 6

Slide 6 text

What is GenAI

Slide 7

Slide 7 text

No content

Slide 8

Slide 8 text

Discriminative vs. Generative AI

Slide 9

Slide 9 text

Type of Generative AI based on Input Data

Slide 10

Slide 10 text

Type of Generative AI based on Input Data

Slide 11

Slide 11 text

Generative AI & Use-Case Overview

Slide 12

Slide 12 text

Interact with LLM - Prompting Technique

Slide 13

Slide 13 text

Challenges in Large Language Model Hallucination

Slide 14

Slide 14 text

How AI code-assist boost developer productivity

Slide 15

Slide 15 text

Example of Today’s Tech Landscape

Slide 16

Slide 16 text

AI? Source: @forrestbrazeal

Slide 17

Slide 17 text

No content

Slide 18

Slide 18 text

The traditional developer workflow Define project goals, scope and requirements. Create software architecture, user interface, and system design. Write code, implement features, and integrate components. Conduct unit tests, integration tests, and end-to-end tests to ensure code quality and functionality. Release the application to staging or production environments. Continuously monitor the application's performance, user feedback, and identify areas for improvement. Plan Design Code Release Monitor Test

Slide 19

Slide 19 text

Code Assistants Landscape

Slide 20

Slide 20 text

The AI-assisted workflow

Slide 21

Slide 21 text

AI

Slide 22

Slide 22 text

44% of developers are already using AI tools in their workflow Stack Overflow Source: Stack Overflow 2023 Developer Survey

Slide 23

Slide 23 text

Why you should consider using an AI coding assistant ?

Slide 24

Slide 24 text

Code answers Guided migration Autocomplete Code chat Find bugs Automate code generation Automating test generation Automate bug fixing Automate code migrations The AI-assisted developer workflow Augment Intelligent agents Automate Spectrum of possibilities

Slide 25

Slide 25 text

Gemini Code Assist

Slide 26

Slide 26 text

In this approach we create an anthemic opener showing real people using A.I. to do amazing things. This can be everyday people In this approach we create an anthemic opener showing real people using A.I. to do amazing things. This can be everyday people 97% Statistic Caption In this approach we create an anthemic opener showing real people using A.I. to do amazing things. This can be everyday people Assistance across multiple surfaces Gemini Advanced Gemini Code Assist (VSCode, JetBrains) Gemini in IDX Gemini in Android Studio Gemini in Colab Gemini in Google Cloud Chat In-editor Code Assist AI developer assistance

Slide 27

Slide 27 text

Right-click and select ‘Replace image’ gemini.google.com Gemini Advance (web based)

Slide 28

Slide 28 text

Gemini Code Assist in Cloud Shell Gemini Code Assist in Visual Studio Code

Slide 29

Slide 29 text

Available for multiple IDEs and developer surfaces, multiple language

Slide 30

Slide 30 text

The AI-assisted developer workflow Requirements analysis User story generation UX design assistance Architecture diagrams Design > Code Code generation Code autocompletion Code answers Code migrations Assistive debugging Test case generation Test data-sets Test automation Deploy insights Autofix issues Automation script writing Generate CI/CD pipelines Anomaly detection Feedback analysis AI-support tools Design Code Plan Test Release Monitor

Slide 31

Slide 31 text

DEMO: AI-Assisted Dev workflow

Slide 32

Slide 32 text

To Start: Enable Gemini for Google Cloud

Slide 33

Slide 33 text

To Start: Add Gemini Code Assist Extension in VSCode

Slide 34

Slide 34 text

Code answers Guided migration Autocomplete Code chat Find bugs Automate code generation Automating test generation Automate bug fixing Automate ocument generation The AI-assisted developer workflow Augment Intelligent agents Automate Spectrum of possibilities

Slide 35

Slide 35 text

Gemini คัดสรร https://github.com/punsiriboo/gemini-code-assist-for-dev

Slide 36

Slide 36 text

https://github.com/punsiriboo/gemini-code-assist-for-dev Prompt: สรางเว็บไซตแบบ Static ที่มีชองกรอกชื่อ จากนั้นสุมบานในแฮรรี่ พอตเตอรให และแสดงชื่อและบานของคุณ โดยใช HTML และ JavaScript ผลลัพธเปน ชือ และบอกวาอยูบานไหนโดยใช รูปจาก folder images

Slide 37

Slide 37 text

https://github.com/punsiriboo/gemini-code-assist-for-dev Prompt: # generate function to random house in Harry potter and boardcast using BroadcastRequest # send ImageMessage contain house png image from https://storage.googleapis.com/gemini-code-assist-beat/ # send TextMessage contain house name and house description

Slide 38

Slide 38 text

Summary

Slide 39

Slide 39 text

AI across the software development workflow Code Generation Code Summarization Unit test generation Code refactoring Code migration Vulnerability scanning Automated release planning Streamline git process Assisted documentation Inner loop Outer loop Code Plan Build Deploy O perate M onitor Release Test

Slide 40

Slide 40 text

AI-assisted: best practices Include enough context Evaluate the output Augment, don’t replace Include the full error message and any relevant code Include code or data example context Critically evaluate any suggested fixes or explanations AI augments your skills, but doesn’t replace them

Slide 41

Slide 41 text

Include enough context Evaluate the output Augment, don’t replace Include the full error message and any relevant code Critically evaluate any suggested fixes or explanations AI augments your skills, but doesn’t replace them AI-assisted: best practices

Slide 42

Slide 42 text

Include enough context Evaluate the output Augment, don’t replace Include the full error message and any relevant code Critically evaluate any suggested fixes or explanations AI augments your skills, but doesn’t replace them AI-assisted: best practices

Slide 43

Slide 43 text

Include enough context Evaluate the output Augment, don’t replace Include the full error message and any relevant code Include code or data example context Critically evaluate any suggested fixes or explanations AI augments your skills, but doesn’t replace them AI-assisted: best practices

Slide 44

Slide 44 text

Flow in Gemini-code Assist

Slide 45

Slide 45 text

Gemini Coding Assistance Utility

Slide 46

Slide 46 text

How Coding Assistance may shape your Dev Workflow ?

Slide 47

Slide 47 text

Balancing Between Generative AI Code Assist Benefit vs.Challenge

Slide 48

Slide 48 text

ฝากไปอ่าน ติดตาม บทความ medium กันได้นะค่ะ https://medium.com/@punsiriboonyakiat