Quick Guide & Tips

💻   Accessing Utils File and Helper Functions

In each notebook on the top menu:

1:   Click on "File"

2:   Then, click on "Open"

You will be able to see all the notebook files for the lesson, including any helper functions used in the notebook on the left sidebar. See the following image for the steps above.


🔄   Reset User Workspace

If you need to reset your workspace to its original state, follow these quick steps:

1:   Access the Menu: Look for the three-dot menu (⋮) in the top-right corner of the notebook toolbar.

2:   Restore Original Version: Click on "Restore Original Version" from the dropdown menu.

For more detailed instructions, please visit our Reset Workspace Guide.


💻   Downloading Notebooks

In each notebook on the top menu:

1:   Click on "File"

2:   Then, click on "Download as"

3:   Then, click on "Notebook (.ipynb)"


💻   Uploading Your Files

After following the steps shown in the previous section ("File" => "Open"), then click on "Upload" button to upload your files.


📗   See Your Progress

Once you enroll in this course—or any other short course on the DeepLearning.AI platform—and open it, you can click on 'My Learning' at the top right corner of the desktop view. There, you will be able to see all the short courses you have enrolled in and your progress in each one.

Additionally, your progress in each short course is displayed at the bottom-left corner of the learning page for each course (desktop view).


📱   Features to Use

🎞   Adjust Video Speed: Click on the gear icon (⚙) on the video and then from the Speed option, choose your desired video speed.

🗣   Captions (English and Spanish): Click on the gear icon (⚙) on the video and then from the Captions option, choose to see the captions either in English or Spanish.

🔅   Video Quality: If you do not have access to high-speed internet, click on the gear icon (⚙) on the video and then from Quality, choose the quality that works the best for your Internet speed.

🖥   Picture in Picture (PiP): This feature allows you to continue watching the video when you switch to another browser tab or window. Click on the small rectangle shape on the video to go to PiP mode.

√   Hide and Unhide Lesson Navigation Menu: If you do not have a large screen, you may click on the small hamburger icon beside the title of the course to hide the left-side navigation menu. You can then unhide it by clicking on the same icon again.


🧑   Efficient Learning Tips

The following tips can help you have an efficient learning experience with this short course and other courses.

🧑   Create a Dedicated Study Space: Establish a quiet, organized workspace free from distractions. A dedicated learning environment can significantly improve concentration and overall learning efficiency.

📅   Develop a Consistent Learning Schedule: Consistency is key to learning. Set out specific times in your day for study and make it a routine. Consistent study times help build a habit and improve information retention.

Tip: Set a recurring event and reminder in your calendar, with clear action items, to get regular notifications about your study plans and goals.

☕   Take Regular Breaks: Include short breaks in your study sessions. The Pomodoro Technique, which involves studying for 25 minutes followed by a 5-minute break, can be particularly effective.

💬   Engage with the Community: Participate in forums, discussions, and group activities. Engaging with peers can provide additional insights, create a sense of community, and make learning more enjoyable.

✍   Practice Active Learning: Don't just read or run notebooks or watch the material. Engage actively by taking notes, summarizing what you learn, teaching the concept to someone else, or applying the knowledge in your practical projects.


📚   Enroll in Other Short Courses

Keep learning by enrolling in other short courses. We add new short courses regularly. Visit DeepLearning.AI Short Courses page to see our latest courses and begin learning new topics. 👇

👉👉 🔗 DeepLearning.AI – All Short Courses [+]


🙂   Let Us Know What You Think

Your feedback helps us know what you liked and didn't like about the course. We read all your feedback and use them to improve this course and future courses. Please submit your feedback by clicking on "Course Feedback" option at the bottom of the lessons list menu (desktop view).

Also, you are more than welcome to join our community 👉👉 🔗 DeepLearning.AI Forum


Sign in

Or, sign in with your email
Email
Password
Forgot password?
Don't have an account? Create account
By signing up, you agree to our Terms Of Use and Privacy Policy

Create Your Account

Or, sign up with your email
Email Address

Already have an account? Sign in here!

By signing up, you agree to our Terms Of Use and Privacy Policy

Choose Your Plan

MonthlyYearly

Change Your Plan

Your subscription plan will change at the end of your current billing period. You’ll continue to have access to your current plan until then.

Learn More

Welcome back!

Hi ,

We'd like to know you better so we can create more relevant courses. What do you do for work?

Course Syllabus

DeepLearning.AI
  • Explore Courses
  • Membership
  • Community
    • Forum
    • Events
    • Ambassadors
    • Ambassador Spotlight
  • My Learning
Welcome to this second course on generative AI for software development. I'm here again with Laurence Barone, your instructor for these courses. In the previous course, you took a look at how generative AI works, learned some principles of prompting to help you carry out software development tasks with the help of AI, and used an LRM to help you analyze some foundational data structures and improve the performance at scale. In this course, you'll see how LRMs can grease the wheels of collaboration and make you better at all the things that can become pain points as code is passed back and forth between you and others. That's right, Andrew. And in this course, one of the things we really wanted to lean into was that theme of working with others and passing code back and forth with them. And it's going to follow three things. The first one will be testing and debugging, so helping you write test cases and helping you pass test cases off to your testing team. And then documentation, allowing you to put the proper comments and the proper formatting of comments so that things such as auto documentation tools can turn that into documentation for you. And then, of course, dependency management, everybody's best friend, so that you can work not just with third-party dependencies from outside of your company, but also how you can understand how to integrate dependencies from inside your company and from the people that you work with. The dream has always been to have well-tested, well-documented code. And the reality is we're all kind of busy and can't always meet that high standard that we aspire to and we encourage others to aspire to as well. And generally, I'm hoping a lot. Absolutely. And it's like, I mean, I'd like to share one example is that like talking about sharing code is that we've done many courses together. And by definition, when we do courses, we share code with the learners. And in one of the courses that we worked on, we were doing TensorFlow for mobile applications, and specifically for iOS mobile applications in Swift. And if you think about doing an image classification, for example, you have your image as an NS image, I believe was the data structure on iOS that you have to convert into tensors that you then pass to the TensorFlow Lite that you then get an interpretation back that you in tensors that you then have to cast back into native data types. And I wrote the code to do this for a simple image classifier. And in the three weeks between writing the code and then teaching the course, I forgot what it did. I forgot like all how these things worked. And it took me a long time to kind of sit down and like work through that and understand it again. This was before LLMs. You know, so then recently, I was like working through building this course now where we have LLMs as our pair programmer, I actually took that code, and I tried it out, and I was able to document it, I was able to get an LLM to explain it back to me. Now it's like three years later that helped me to understand it better. And it even found and fixed some issues in the code. Wow. So it's like, you know, and those are the kind of things that when you share with others, or when you inherit from others, it's amazing to have that LLM by your side to work it through with you. Yeah, I think someone said that, if you haven't looked at your own code for long enough, it's as if a stranger had written it. And this, in this case, that stranger of your younger self wrote code that he helped. Do you understand? This is great. Yep. I had to look back and tell him off that he didn't do a great job. And, you know, I find that machine learning people are notorious, not proud of this, for having complex code. I think probably because machine learning is so iterative. We try something, works, it doesn't work, change it. And by the time we finally get to working prototype, you know, the code's been iterated on many, many times, much more than traditional software engineering. And so I found that sometimes I pull documentation, you know, get a few lines of code from some cloud provider's documentation, and then a week later, I have no idea what I just did. And getting some help to understand that code, my code, someone else's code would be very welcome. I'm really glad to hear you say that. I thought it was just me. So with that, let's jump in to see how LLM can help you with testing, debugging, documentation, and dependency management, which will make you a better developer, I think, and also a better teammate to everyone you might work with. Let's go on to the next video.
specialization detail
  • Generative AI for Software Development
  • Team Software Engineering with AI
  • Module 1
Next Lesson
Module 1: Testing and Debugging
    Course Introduction
  • Conversation between Laurence Moroney and Andrew Ng
    Video
    ・
    4 mins
  • Course 2 downloadable resources
    Reading
    ・
    1 min
  • Setting up your Jupyter environment
    Reading
    ・
    10 mins
  • Essential reading: Engage directly with our Jupyter and ChatGPT labs
    Reading
    ・
    2 mins
  • Testing and Debugging
  • Module introduction
    Video
    ・
    2 mins
  • Python environment - To be used alongside with the lectures
    Code Example
    ・
    5 mins
  • ChatGPT environment - To be used alongside with the lectures
    Reading with AI Assistant
    ・
    5 mins
  • Testing and debugging strategies
    Video
    ・
    4 mins
  • Exploratory testing
    Video
    ・
    5 mins
  • Functional testing
    Video
    ・
    6 mins
  • Quiz 1

    Graded・Quiz

    ・
    15 mins
  • Automated Testing
    Video
    ・
    8 mins
  • Software performance testing
    Video
    ・
    5 mins
  • Security testing
    Video
    ・
    4 mins
  • Flask example walkthough (Optional)
    Video
    ・
    5 mins
  • Flask example Lab (Optional)
    Code Example
    ・
    1 hour
  • Analyzing code for security vulnerabilities
    Video
    ・
    5 mins
  • Quiz 2

    Graded・Quiz

    ・
    15 mins
  • (Optional) Downloading your Notebook and Refreshing your Workspace
    Reading
    ・
    10 mins
  • Identifying and Fixing Bugs in Code Using LLMs

    Graded・Code Assignment

    ・
    3 hours
  • ChatGPT Lab: Support for Your Programming Task
    Reading with AI Assistant
    ・
    1 hour
  • [IMPORTANT] Have questions, issues or ideas? Join our Forum!
    Reading
    ・
    2 mins
  • Next
    Module 2: Documentation