AI for Efficient Programming: Harnessing the Power of LLMs

بواسطة: Coursera

Overview

This course on Artificial Intelligence (AI) for software development explores the use of AI large language models such as ChatGPT, Bard, and others and their potential benefits and challenges. Through examples and hands-on activities, you will develop an understanding of the ways in which AI can speed up software development tasks and free up time for more creative and strategic work.

Unique Features of this Course

- Exploration of multiple browser-based AI tools
- Hands-on, yet simple activities requiring no installations of software
- Emphasis on responsible and ethical use of AI
- Beginner friendly for those who want to get started using generative AI tools
- Useful ideas for how to leverage tools to make your work better and more efficient
- Tried and tested strategies for using AI tools from practicing data scientists and scientific software developers
- A fun and playful approach to learning

Key Words

Artificial Intelligence (AI), ChatGPT, Generative AI, Large Language Models (LLMs), Software Development, Coding, Data Science

Intended Audience

- Professionals looking to improve efficiency
- Students hoping to learn more about programming
- Anyone curious about how AI can be harnessed for technology

Note: Those completely new to programming will find using AI tools to create software solutions challenging at this time. It is helpful to have some fundamental knowledge to write appropriate prompts and to discern when code is not working as expected. We advise novices to seek expert review.

Learning Objectives

- Explain the basics of AI and its potential for improving software development workflows
- Implement strategies to write and debug code using AI-based tools
- Describe the benefits of refactoring code using AI-powered techniques, such as making code readable, keeping it brief, and optimizing code
- Apply best practices for annotating code using AI
- Recognize strategies for using AI-based tools to understand and analyze code, such as code comprehension of unfamiliar languages or functions
- Discuss the challenges and ethical implications of using AI for different aspects of software development

Accessibility

We are committed to making our content accessible and available to all. We welcome any feedback you might have at https://forms.gle/3sTZpctxzYyhj74NA. Questions related to accessibility accommodations should be directed to https://studentserviceportal.force.com/s/.

PDF versions of this course can be found at https://leanpub.com/courses/fredhutch/ai_for_software.

Syllabus

  • Introduction; Ethics of Using AI
    • This module provides a general overview of AI Large Language Models, how this technology will change software development, and ethical considerations for using LLMs when creating code and software.
  • Writing Code; Refactoring Code
    • This module covers using LLMs to write, debug, and plan your coding project, as well as how LLMs can help with common refactoring tasks.
  • Annotating Your Code; Understanding Unfamiliar Code
    • This module covers how to use LLMs to properly annotate your code and to understand code and functions that you did not write.
  • AI for Bioinformatics
    • This bonus section covers possible uses and caveats for LLMs in bioinformatics, particularly when working with private data.

Taught by

Elizabeth Humphries, PhD, Carrie Wright, PhD, Candace Savonen, MS and Ava Hoffman, PhD

AI for Efficient Programming: Harnessing the Power of LLMs
الذهاب الي الدورة

AI for Efficient Programming: Harnessing the Power of LLMs

بواسطة: Coursera

  • Coursera
  • مجانية
  • الإنجليزية
  • متاح شهادة
  • متاح في أي وقت
  • beginner
  • English
8.1.2PHP Version774msRequest Duration2MBMemory UsageGET ar/الدورات/{slug}Route
    • Booting (496ms)
    • Application (276ms)
    • 1 x Booting (64.06%)
      495.66ms
      1 x Application (35.7%)
      276.22ms
      14 templates were rendered
      • public.courses.show (resources/views/public/courses/show.blade.php)3bladefile
        Params
        0
        course
        1
        links
        2
        config
      • public.courses.partials.breadcrumbs (resources/views/public/courses/partials/breadcrumbs.blade.php)6bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
      • public.courses.partials.heading (resources/views/public/courses/partials/heading.blade.php)7bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
        6
        classes
      • public.courses.partials.details (resources/views/public/courses/partials/details.blade.php)6bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
      • public.courses.partials.breadcrumbs (resources/views/public/courses/partials/breadcrumbs.blade.php)6bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
      • public.courses.partials.heading (resources/views/public/courses/partials/heading.blade.php)7bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
        6
        classes
      • public.layouts.main (resources/views/public/layouts/main.blade.php)6bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
      • public.layouts.partials.meta (resources/views/public/layouts/partials/meta.blade.php)6bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
      • public.layouts.partials.navbar (resources/views/public/layouts/partials/navbar.blade.php)6bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
      • public.auth.profile.partials.links (resources/views/public/auth/profile/partials/links.blade.php)6bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
      • public.auth.profile.partials.link (resources/views/public/auth/profile/partials/link.blade.php)8bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
        6
        route
        7
        title
      • public.auth.profile.partials.link (resources/views/public/auth/profile/partials/link.blade.php)8bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
        6
        route
        7
        title
      • public.auth.profile.partials.link (resources/views/public/auth/profile/partials/link.blade.php)8bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
        6
        route
        7
        title
      • public.layouts.partials.flash-session (resources/views/public/layouts/partials/flash-session.blade.php)6bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
      uri
      GET ar/الدورات/{slug}
      middleware
      web, localize:ar
      controller
      App\Http\Controllers\CourseController@show
      as
      ar.courses.show
      namespace
      prefix
      /ar
      where
      file
      app/Http/Controllers/CourseController.php:17-35
      6 statements were executed20.61ms
      • select * from `courses` where `slug_ar` = 'ai-for-efficient-programming:-harnessing-the-power-of-llms' limit 1
        18.92ms/app/Http/Controllers/CourseController.php:20corspedia
        Metadata
        Bindings
        • 0. ai-for-efficient-programming:-harnessing-the-power-of-llms
        Backtrace
        • 17. /app/Http/Controllers/CourseController.php:20
        • 18. /vendor/laravel/framework/src/Illuminate/Routing/Controller.php:54
        • 19. /vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php:43
        • 20. /vendor/laravel/framework/src/Illuminate/Routing/Route.php:260
        • 21. /vendor/laravel/framework/src/Illuminate/Routing/Route.php:205
      • update `courses` set `visitors` = `visitors` + 1, `courses`.`updated_at` = '2025-07-25 11:34:39' where `id` = 6909
        750μs/app/Http/Controllers/CourseController.php:21corspedia
        Metadata
        Bindings
        • 0. 2025-07-25 11:34:39
        • 1. 6909
        Backtrace
        • 17. /app/Http/Controllers/CourseController.php:21
        • 18. /vendor/laravel/framework/src/Illuminate/Routing/Controller.php:54
        • 19. /vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php:43
        • 20. /vendor/laravel/framework/src/Illuminate/Routing/Route.php:260
        • 21. /vendor/laravel/framework/src/Illuminate/Routing/Route.php:205
      • select `id`, `name_en`, `name_ar`, `topic_id`, `slug_en`, `slug_ar` from `subjects` where `subjects`.`id` in (54)
        260μs/app/Http/Controllers/CourseController.php:23corspedia
        Metadata
        Backtrace
        • 20. /app/Http/Controllers/CourseController.php:23
        • 21. /vendor/laravel/framework/src/Illuminate/Routing/Controller.php:54
        • 22. /vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php:43
        • 23. /vendor/laravel/framework/src/Illuminate/Routing/Route.php:260
        • 24. /vendor/laravel/framework/src/Illuminate/Routing/Route.php:205
      • select `id`, `name_en`, `name_ar`, `slug_en`, `slug_ar` from `topics` where `topics`.`id` in (1)
        190μs/app/Http/Controllers/CourseController.php:23corspedia
        Metadata
        Backtrace
        • 25. /app/Http/Controllers/CourseController.php:23
        • 26. /vendor/laravel/framework/src/Illuminate/Routing/Controller.php:54
        • 27. /vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php:43
        • 28. /vendor/laravel/framework/src/Illuminate/Routing/Route.php:260
        • 29. /vendor/laravel/framework/src/Illuminate/Routing/Route.php:205
      • select * from `providers` where `providers`.`id` in (2) and `providers`.`deleted_at` is null
        230μs/app/Http/Controllers/CourseController.php:23corspedia
        Metadata
        Backtrace
        • 20. /app/Http/Controllers/CourseController.php:23
        • 21. /vendor/laravel/framework/src/Illuminate/Routing/Controller.php:54
        • 22. /vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php:43
        • 23. /vendor/laravel/framework/src/Illuminate/Routing/Route.php:260
        • 24. /vendor/laravel/framework/src/Illuminate/Routing/Route.php:205
      • select * from `html_files` where `html_files`.`id` = 6900 limit 1
        260μs/app/Models/Course.php:84corspedia
        Metadata
        Bindings
        • 0. 6900
        Backtrace
        • 21. /app/Models/Course.php:84
        • 28. view::public.courses.show:29
        • 30. /vendor/laravel/framework/src/Illuminate/Filesystem/Filesystem.php:125
        • 31. /vendor/laravel/framework/src/Illuminate/View/Engines/PhpEngine.php:58
        • 32. /vendor/laravel/framework/src/Illuminate/View/Engines/CompilerEngine.php:72
      App\Models\HtmlFile
      1
      App\Models\Provider
      1
      App\Models\Topic
      1
      App\Models\Subject
      1
      App\Models\Course
      1
        _token
        GrqxJ5YIwp3kwhLaqLc3Qn2BmPgWSJ2unu3y3sWa
        locale
        ar
        _previous
        array:1 [ "url" => "https://www.corspedia.com/ar/%D8%A7%D9%84%D8%AF%D9%88%D8%B1%D8%A7%D8%AA/ai-for...
        _flash
        array:2 [ "old" => [] "new" => [] ]
        PHPDEBUGBAR_STACK_DATA
        []
        path_info
        /ar/%D8%A7%D9%84%D8%AF%D9%88%D8%B1%D8%A7%D8%AA/ai-for-efficient-programming:-harnessing-the-power-of-llms
        status_code
        200
        
        status_text
        OK
        format
        html
        content_type
        text/html; charset=UTF-8
        request_query
        []
        
        request_request
        []
        
        request_headers
        0 of 0
        array:24 [ "cf-ipcountry" => array:1 [ 0 => "US" ] "cf-connecting-ip" => array:1 [ 0 => "216.73.216.214" ] "cdn-loop" => array:1 [ 0 => "cloudflare; loops=1" ] "x-forwarded-proto" => array:1 [ 0 => "https" ] "x-forwarded-for" => array:1 [ 0 => "216.73.216.214" ] "sec-fetch-site" => array:1 [ 0 => "none" ] "accept" => array:1 [ 0 => "text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7" ] "user-agent" => array:1 [ 0 => "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)" ] "upgrade-insecure-requests" => array:1 [ 0 => "1" ] "sec-ch-ua-platform" => array:1 [ 0 => ""Windows"" ] "sec-ch-ua-mobile" => array:1 [ 0 => "?0" ] "sec-ch-ua" => array:1 [ 0 => ""Chromium";v="130", "HeadlessChrome";v="130", "Not?A_Brand";v="99"" ] "cache-control" => array:1 [ 0 => "no-cache" ] "pragma" => array:1 [ 0 => "no-cache" ] "sec-fetch-dest" => array:1 [ 0 => "document" ] "cf-ray" => array:1 [ 0 => "964b59696807b687-YYZ" ] "accept-encoding" => array:1 [ 0 => "gzip, br" ] "priority" => array:1 [ 0 => "u=0, i" ] "sec-fetch-user" => array:1 [ 0 => "?1" ] "sec-fetch-mode" => array:1 [ 0 => "navigate" ] "cf-visitor" => array:1 [ 0 => "{"scheme":"https"}" ] "host" => array:1 [ 0 => "www.corspedia.com" ] "content-length" => array:1 [ 0 => "" ] "content-type" => array:1 [ 0 => "" ] ]
        request_server
        0 of 0
        array:50 [ "USER" => "www-data" "HOME" => "/var/www" "HTTP_CF_IPCOUNTRY" => "US" "HTTP_CF_CONNECTING_IP" => "216.73.216.214" "HTTP_CDN_LOOP" => "cloudflare; loops=1" "HTTP_X_FORWARDED_PROTO" => "https" "HTTP_X_FORWARDED_FOR" => "216.73.216.214" "HTTP_SEC_FETCH_SITE" => "none" "HTTP_ACCEPT" => "text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7" "HTTP_USER_AGENT" => "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)" "HTTP_UPGRADE_INSECURE_REQUESTS" => "1" "HTTP_SEC_CH_UA_PLATFORM" => ""Windows"" "HTTP_SEC_CH_UA_MOBILE" => "?0" "HTTP_SEC_CH_UA" => ""Chromium";v="130", "HeadlessChrome";v="130", "Not?A_Brand";v="99"" "HTTP_CACHE_CONTROL" => "no-cache" "HTTP_PRAGMA" => "no-cache" "HTTP_SEC_FETCH_DEST" => "document" "HTTP_CF_RAY" => "964b59696807b687-YYZ" "HTTP_ACCEPT_ENCODING" => "gzip, br" "HTTP_PRIORITY" => "u=0, i" "HTTP_SEC_FETCH_USER" => "?1" "HTTP_SEC_FETCH_MODE" => "navigate" "HTTP_CF_VISITOR" => "{"scheme":"https"}" "HTTP_HOST" => "www.corspedia.com" "REDIRECT_STATUS" => "200" "SERVER_NAME" => "corspedia.com" "SERVER_PORT" => "443" "SERVER_ADDR" => "141.95.147.152" "REMOTE_USER" => "" "REMOTE_PORT" => "56278" "REMOTE_ADDR" => "108.162.242.31" "SERVER_SOFTWARE" => "nginx/1.18.0" "GATEWAY_INTERFACE" => "CGI/1.1" "HTTPS" => "on" "REQUEST_SCHEME" => "https" "SERVER_PROTOCOL" => "HTTP/2.0" "DOCUMENT_ROOT" => "/var/www/corspedia/public" "DOCUMENT_URI" => "/index.php" "REQUEST_URI" => "/ar/%D8%A7%D9%84%D8%AF%D9%88%D8%B1%D8%A7%D8%AA/ai-for-efficient-programming:-harnessing-the-power-of-llms" "SCRIPT_NAME" => "/index.php" "CONTENT_LENGTH" => "" "CONTENT_TYPE" => "" "REQUEST_METHOD" => "GET" "QUERY_STRING" => "" "SCRIPT_FILENAME" => "/var/www/corspedia/public/index.php" "PATH_INFO" => "" "FCGI_ROLE" => "RESPONDER" "PHP_SELF" => "/index.php" "REQUEST_TIME_FLOAT" => 1753443278.5425 "REQUEST_TIME" => 1753443278 ]
        request_cookies
        []
        
        response_headers
        0 of 0
        array:5 [ "content-type" => array:1 [ 0 => "text/html; charset=UTF-8" ] "cache-control" => array:1 [ 0 => "no-cache, private" ] "date" => array:1 [ 0 => "Fri, 25 Jul 2025 11:34:39 GMT" ] "set-cookie" => array:2 [ 0 => "XSRF-TOKEN=eyJpdiI6IitsMW92RjlNUEhzVG5JdzRVYnc1NUE9PSIsInZhbHVlIjoiMy9veEtYTjY3Wmh6V0RaZTA4Y01kd3EvUmlaZm1yUGVDZG80QTBZVkRjSGt1Q255K1JnY3hpZW1IdXRrZXU0OVcyTmRHYVlhU1ZzWTVUd2FDQWkxSWFWVjg5a0JmZkVCdkhDbFU4cHNoMjNCblJ1MzBqWkE3WEJ0QmZxbjFaeWMiLCJtYWMiOiJhNDRlYTI2MmYzMDE2NTJiOTMzOTIxOTUyZmI5NjljZmUwM2M4MDM5NGYwMDA4ZWI2ZDg4ZDE2YmJiZjA2ZDY2IiwidGFnIjoiIn0%3D; expires=Fri, 25 Jul 2025 13:34:39 GMT; Max-Age=7200; path=/; samesite=laxXSRF-TOKEN=eyJpdiI6IitsMW92RjlNUEhzVG5JdzRVYnc1NUE9PSIsInZhbHVlIjoiMy9veEtYTjY3Wmh6V0RaZTA4Y01kd3EvUmlaZm1yUGVDZG80QTBZVkRjSGt1Q255K1JnY3hpZW1IdXRrZXU0OVcyTmRHY" 1 => "laravel_session=eyJpdiI6Img4eFJhc1NEc0N6QVViMmo4UmZYZXc9PSIsInZhbHVlIjoiMVUvM2RvVHh0bGErWkhmMlVkQmhtbng3bFFtWWRzb1NSeFJheTUrT25RaE1pcUprTnQ5U0lTamR4N0Zsc1M1M2V6WUFTc3IxVFoxK1lQenNoenh4TUpDeWx2OEUzMUtMZ2Y2WDY2VTErSW1vdXZuSDhVRlJiSXhFWEw1OXl1Sm8iLCJtYWMiOiJjMzc2ZjhjOTYyYjI1NDU3MjUwZDJlNGQ3YjQxMWNjNzE3M2VjZTZiY2QxNDE1ZGNiMTQwMWFkYTEwZDE1OTgzIiwidGFnIjoiIn0%3D; expires=Fri, 25 Jul 2025 13:34:39 GMT; Max-Age=7200; path=/; httponly; samesite=laxlaravel_session=eyJpdiI6Img4eFJhc1NEc0N6QVViMmo4UmZYZXc9PSIsInZhbHVlIjoiMVUvM2RvVHh0bGErWkhmMlVkQmhtbng3bFFtWWRzb1NSeFJheTUrT25RaE1pcUprTnQ5U0lTamR4N0Zsc1M1M2V6" ] "Set-Cookie" => array:2 [ 0 => "XSRF-TOKEN=eyJpdiI6IitsMW92RjlNUEhzVG5JdzRVYnc1NUE9PSIsInZhbHVlIjoiMy9veEtYTjY3Wmh6V0RaZTA4Y01kd3EvUmlaZm1yUGVDZG80QTBZVkRjSGt1Q255K1JnY3hpZW1IdXRrZXU0OVcyTmRHYVlhU1ZzWTVUd2FDQWkxSWFWVjg5a0JmZkVCdkhDbFU4cHNoMjNCblJ1MzBqWkE3WEJ0QmZxbjFaeWMiLCJtYWMiOiJhNDRlYTI2MmYzMDE2NTJiOTMzOTIxOTUyZmI5NjljZmUwM2M4MDM5NGYwMDA4ZWI2ZDg4ZDE2YmJiZjA2ZDY2IiwidGFnIjoiIn0%3D; expires=Fri, 25-Jul-2025 13:34:39 GMT; path=/XSRF-TOKEN=eyJpdiI6IitsMW92RjlNUEhzVG5JdzRVYnc1NUE9PSIsInZhbHVlIjoiMy9veEtYTjY3Wmh6V0RaZTA4Y01kd3EvUmlaZm1yUGVDZG80QTBZVkRjSGt1Q255K1JnY3hpZW1IdXRrZXU0OVcyTmRHY" 1 => "laravel_session=eyJpdiI6Img4eFJhc1NEc0N6QVViMmo4UmZYZXc9PSIsInZhbHVlIjoiMVUvM2RvVHh0bGErWkhmMlVkQmhtbng3bFFtWWRzb1NSeFJheTUrT25RaE1pcUprTnQ5U0lTamR4N0Zsc1M1M2V6WUFTc3IxVFoxK1lQenNoenh4TUpDeWx2OEUzMUtMZ2Y2WDY2VTErSW1vdXZuSDhVRlJiSXhFWEw1OXl1Sm8iLCJtYWMiOiJjMzc2ZjhjOTYyYjI1NDU3MjUwZDJlNGQ3YjQxMWNjNzE3M2VjZTZiY2QxNDE1ZGNiMTQwMWFkYTEwZDE1OTgzIiwidGFnIjoiIn0%3D; expires=Fri, 25-Jul-2025 13:34:39 GMT; path=/; httponlylaravel_session=eyJpdiI6Img4eFJhc1NEc0N6QVViMmo4UmZYZXc9PSIsInZhbHVlIjoiMVUvM2RvVHh0bGErWkhmMlVkQmhtbng3bFFtWWRzb1NSeFJheTUrT25RaE1pcUprTnQ5U0lTamR4N0Zsc1M1M2V6" ] ]
        session_attributes
        0 of 0
        array:5 [ "_token" => "GrqxJ5YIwp3kwhLaqLc3Qn2BmPgWSJ2unu3y3sWa" "locale" => "ar" "_previous" => array:1 [ "url" => "https://www.corspedia.com/ar/%D8%A7%D9%84%D8%AF%D9%88%D8%B1%D8%A7%D8%AA/ai-for-efficient-programming:-harnessing-the-power-of-llms" ] "_flash" => array:2 [ "old" => [] "new" => [] ] "PHPDEBUGBAR_STACK_DATA" => [] ]