Coding with AI For Dummies 9781394249138, 9781394249152, 9781394249145

Boost your coding output and accuracy with artificial intelligence tools Coding with AI For Dummies introduces you to t

137 24 30MB

English Pages 336 [338] Year 2024

Report DMCA / Copyright

DOWNLOAD PDF FILE

Table of contents :
Title Page
Copyright Page
Table of Contents
Introduction
About This Book
Foolish Assumptions
Icons Used in This Book
Beyond the Book
Where to Go from Here
Part 1 Techniques and Technologies
Chapter 1 How Coding Benefits from AI
Banishing Boring Tasks
Spotting boring tasks
Letting AI write the template
Crafting CRUD with AI
Helping with Syntax
Stop remembering trivial details
Hinting at code mastery
Adapting to new syntax
Linting with AI
Detecting bad code with static code analysis
Integrating AI with static code analysis
Using AI as a Tutor
Studying AI’s potential in education
Avoiding potential pitfalls
Pairing Up with AI
Overview of pair programming styles
Understanding the pros and cons of pair programming with AI
AI pair programming session
Installing Copilot
Using prompting to create a trivia game
Chapter 2 Parsing Machine Learning and Deep Learning
Decoding Machine and Deep Learning
Defining key concepts
Thinking about neural networks
Input layer
Hidden layer
Output layer
Training and testing models
Demystifying Natural-Language Processing
History of NLP
Overcoming the challenges of NLP
Understanding supervised and unsupervised learning
Language generation techniques
Understanding Transformers
Learning to pay attention
Getting tokens
Illuminating Generative AI Models
Recognizing AI’s Limitations
Language models are bad at math
Language models are wordy
AI has limited knowledge
AI lacks common sense
AI has accuracy issues
AI has the potential to be biased
Chapter 3 AI Coding Tools
Navigating GitHub Copilot
Installing the Copilot plug-in
Working efficiently with Copilot
Specify your goal
Break things down
Give examples
Open related files
Using keyboard shortcuts
Exploring Tabnine
Installing Tabnine
Setting up Tabnine
Understanding Tabnine’s AI-driven code completion
Reviewing Replit
Starting a website with Replit
Exploring the Replit workspace
The sidebar
Tabs and panes
Pairing up with Replit AI
Chapter 4 Coding with Chatbots
Improving Your Prompts
Adjusting the temperature
Deciphering the elements of a prompt
Open-ended versus closed-ended prompts
Using different types of prompts
Zero-shot prompting
Few-shot prompting
Chain-of-thought prompting
Prompting like a pro
Chatting with Copilot
Understanding slash commands
Knowing Copilot’s agents
Getting the most out of Copilot Chat
Chatting with ChatGPT
Signing up and setting up
Setting custom instructions
Telling ChatGPT about you
Telling ChatGPT your expectations
Diving into the OpenAI Platform
Checking your credits
Messing around in the playground
Running examples
Playing the roles
Adjusting the model’s settings
Getting an API key
Developing a Chatbot with OpenAI
Part 2 Using AI to Write Code
Chapter 5 Progressing from Plan to Prototype
Understanding Project Requirements
Determining the software requirements
Domain requirements
Functional requirements
Non-functional requirements
Writing an SRS
Generating Code from an SRS
Using a zero-shot approach
Breaking down the problem
Blending Manually Written and AI-Generated Code
Writing the prompt
Writing the server
Submitting follow-up prompts
Testing the server
Implementing few-shot prompting on the server
Improving the client
Moving logic from AI to the client
Tips and Tricks for Code Generation
Don’t stop coding
Be specific
Think in steps
Ask follow-up questions
Check the official documentation
Use examples and context
Prioritize security
Keep learning
Keep your tools updated
Be mindful of AI’s limitations
Chapter 6 Formatting and Improving Your Code
Using AI Tools for Code Formatting
Setting up your formatting tools
Using Prettier to automate code formatting
Refactoring with AI
Recognizing code smells
Dispensables
Bloaters
Abusers
Couplers
Change preventers
Additional categories of code smells
Detecting code smells with Copilot
Refactoring safely
Generating Refactoring Suggestions
Setting event listeners correctly
Removing the magic number
Reducing global data
Fixing long functions
Fixing inconsistent naming
Lack of comments
Making AI play tic-tac-toe better
Chapter 7 Finding and Eliminating Bugs
Knowing Your Bugs
Strategies for detecting bugs
Identifying common types of bugs
AI-assisted bug reporting with Jam
Preventing Bugs with Linting
Installing a linter
Installing the ESLint extension
Fixing your code with a linter
Combining linting with AI
Changing the rules
Detecting Bugs with AI
Automating Bug Fixes with AI
Introducing Snyk
Executing automated bug fixes
Verifying automated bug fixes
Knowing when to automate
Chapter 8 Translating and Optimizing Code
Translating Code to Other Languages
Preparing your code for translation
Exploring translation strategies
Translating a complete program using GPT-4
Verifying translated code
Optimizing Your Code with AI
Getting code optimization suggestions
Avoiding premature optimization
Part 3 Testing, Documenting, and Maintaining Your Code
Chapter 9 Testing Your Code
Writing a Test Plan
Deciding between formal and agile
Stepping through the test planning process
Understanding the role of AI in test planning
Identifying core functionalities
Generating test scenarios
Working with a Testing Framework
Installing Jest
Running Jest
Generating test cases
Reading a coverage report
Analyzing test results
Test-Driven Development with AI
Chapter 10 Documenting Your Code
Working with Documentation Bots
Building your own documentation bot
Testing your documentation assistant
Generating Code Comments and Annotations
Installing and testing Mintlify Doc Writer
Commenting on Underscore
Creating Visual Documentation
Generating a sequence diagram
Generating a requirements diagram
Automating API Documentation with AI
Documenting a REST API
Creating an API documentation chatbot
Chapter 11 Maintaining Your Code
Knowing the Four Types of Maintenance
Corrective software maintenance
Adaptive software maintenance
Perfective software maintenance
Preventative software maintenance
Utilizing AI for Code Maintenance
Enhancing Code Quality with AI
Understanding technical debt
Getting started with Code Climate
Enabling the text coverage report
Analyzing code quality metrics
Making AI-assisted code quality improvements
Part 4 The Part of Tens
Chapter 12 Ten More Tools to Try
Amazon CodeWhisperer
Sourcegraph Cody
DeepMind AlphaCode
Google Bard
Codeium
Claude
Microsoft IntelliCode
Sourcery
Bugasura
UserWay
Chapter 13 Ten AI Coding Resources
Code.org’s AI Resources
Kaggle
Google’s Dataset Search
edX
Edabit
StatQuest
AI4All Open Learning
Gymnasium
fast.ai
Microsoft Learn
Index
EULA

Coding with AI For Dummies
 9781394249138, 9781394249152, 9781394249145

  • 0 0 0
  • Like this paper and download? You can publish your own PDF file online for free in a few minutes! Sign Up
File loading please wait...
Recommend Papers