Unlocking The Power of AI Learning Programming with ChatGPT Haim Michael blog.lifemichael.com 0001000111001100 1100001000111001 0100010001110011 1000100011100110 1010000100011100 https://lifemichael.com premium training for software developers https://xtremej.dev https://xtremejs.dev https://xtremepython.dev https://xtremeai.dev (coming soon) premium online conferences for software developers
Introduction This meetup is for students and software developers who want to use ChatGPT (or another AI bot) as a tool for learning programming. We will learn how use ChatGPT to achieve the following. • Accelerate the learning • Overcome coding challenges • Achieve deepen understanding of programming concepts
Good Prompting Habits Learn how to write good prompts (Prompt Engineering). Instead of asking simple questions such as ‘explain for loop’ ask a detailed question (prompt) such as ‘explain for loops in Python with an example that prints the numbers from 1 to 5, and then show common beginner mistakes ’ .
Refininng The Prompt When the response you get from AI is not clear introduce changes in your prompt. Keep introducing changes and trying a more refined version of your prompt. Keep drilling down till you get the expected response.
English as a Coding Language In this AI era, English is the new programming language. It is probably the most popular one. Practice expressing yourself in clear, structured English. Interact with AI using English.
Understanding Complex Code You can easily get detailed explanations for complex code you are dealing with. When the explanation you get is not clear ask for clarifications.
Unexpected Behavior The first step would be providing the ChatGPT with the code itself. Include the error message or describe the unexpected behavior in your prompt. Here is the function that should calculate factorial. I expected it to return the factorial of 3 (which is 6) but got something else. Can you explain why?
Debugging Step by Step Instead of asking for fixing the code ask for explanation. You can also ask for a step-by-step debugging. Can you walk through the code line by line and explain what happens when the function takes 3?
Understanding Error Messages When getting an error message ask AI to explain the error message and describe the cases in which we get that error message. Can explain the NullPointerException error I got and list cases in which such error happens?
Exploring Programming Languages When learning a new programming language you can simply ask for detailed explanation for each and every line. Can explain the meaning of the ++ operator in line 21.
Moving Forward Step by Step When coping with a big problem break it into smaller ones and deal with each and every one of them separately. You can get AI help with handling the smaller problems one by one.
Learning Multiple Perspectives Expand your understanding. Don’t limit it to specific approach. You can ask for different other approaches for solving a problem. You can ask for getting the code in different programming languages.
Simulate Interview Questions You can ask the AI to generate mock interview questions or coding challenges. You can ask AI to play the role of an interviewer. You can specify you want AI to ask you a LeetCode styled problem in a specific topic and in a specific level.
The Other Resources When getting a response from the AI that can be validated with the other resources, such as a specific library official documentation, make sure you go to the official documentation and verify the response you got. Use AI as a virtual assistant and not as a replacement for practicing and using other resources, such as the official documentation.
Validate The Code AI Generates Don’t count on AI with blind eyes. When AI doesn’t know the answer it invents stuff. In addition, AI was created using a training process through which it was provided with endless amount of data, including code written with bad practices or outdated.
Questions & Answers • Thanks for attending my talk! Email: haim.michael@lifemichael.com WhatsApp: 972.54.6655837 Blog: blog.lifemichael.com

Learning Programming with ChatGPT [Free Meetup]

  • 1.
    Unlocking The Powerof AI Learning Programming with ChatGPT Haim Michael blog.lifemichael.com 0001000111001100 1100001000111001 0100010001110011 1000100011100110 1010000100011100 https://lifemichael.com premium training for software developers https://xtremej.dev https://xtremejs.dev https://xtremepython.dev https://xtremeai.dev (coming soon) premium online conferences for software developers
  • 2.
    Introduction This meetup isfor students and software developers who want to use ChatGPT (or another AI bot) as a tool for learning programming. We will learn how use ChatGPT to achieve the following. • Accelerate the learning • Overcome coding challenges • Achieve deepen understanding of programming concepts
  • 3.
    Good Prompting Habits Learnhow to write good prompts (Prompt Engineering). Instead of asking simple questions such as ‘explain for loop’ ask a detailed question (prompt) such as ‘explain for loops in Python with an example that prints the numbers from 1 to 5, and then show common beginner mistakes ’ .
  • 4.
    Refininng The Prompt Whenthe response you get from AI is not clear introduce changes in your prompt. Keep introducing changes and trying a more refined version of your prompt. Keep drilling down till you get the expected response.
  • 5.
    English as aCoding Language In this AI era, English is the new programming language. It is probably the most popular one. Practice expressing yourself in clear, structured English. Interact with AI using English.
  • 6.
    Understanding Complex Code Youcan easily get detailed explanations for complex code you are dealing with. When the explanation you get is not clear ask for clarifications.
  • 7.
    Unexpected Behavior The firststep would be providing the ChatGPT with the code itself. Include the error message or describe the unexpected behavior in your prompt. Here is the function that should calculate factorial. I expected it to return the factorial of 3 (which is 6) but got something else. Can you explain why?
  • 8.
    Debugging Step byStep Instead of asking for fixing the code ask for explanation. You can also ask for a step-by-step debugging. Can you walk through the code line by line and explain what happens when the function takes 3?
  • 9.
    Understanding Error Messages Whengetting an error message ask AI to explain the error message and describe the cases in which we get that error message. Can explain the NullPointerException error I got and list cases in which such error happens?
  • 10.
    Exploring Programming Languages Whenlearning a new programming language you can simply ask for detailed explanation for each and every line. Can explain the meaning of the ++ operator in line 21.
  • 11.
    Moving Forward Stepby Step When coping with a big problem break it into smaller ones and deal with each and every one of them separately. You can get AI help with handling the smaller problems one by one.
  • 12.
    Learning Multiple Perspectives Expandyour understanding. Don’t limit it to specific approach. You can ask for different other approaches for solving a problem. You can ask for getting the code in different programming languages.
  • 13.
    Simulate Interview Questions Youcan ask the AI to generate mock interview questions or coding challenges. You can ask AI to play the role of an interviewer. You can specify you want AI to ask you a LeetCode styled problem in a specific topic and in a specific level.
  • 14.
    The Other Resources Whengetting a response from the AI that can be validated with the other resources, such as a specific library official documentation, make sure you go to the official documentation and verify the response you got. Use AI as a virtual assistant and not as a replacement for practicing and using other resources, such as the official documentation.
  • 15.
    Validate The CodeAI Generates Don’t count on AI with blind eyes. When AI doesn’t know the answer it invents stuff. In addition, AI was created using a training process through which it was provided with endless amount of data, including code written with bad practices or outdated.
  • 16.
    Questions & Answers •Thanks for attending my talk! Email: haim.michael@lifemichael.com WhatsApp: 972.54.6655837 Blog: blog.lifemichael.com