generated from jhudsl/OTTR_Template
-
Notifications
You must be signed in to change notification settings - Fork 1
/
index.Rmd
68 lines (45 loc) · 4.09 KB
/
index.Rmd
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
---
title: "AI for Efficient Programming"
subtitle: "Harnessing the Power of Large Language Models"
date: "`r format(Sys.time(), '%B, %Y')`"
site: bookdown::bookdown_site
documentclass: book
bibliography: [book.bib]
biblio-style: apalike
link-citations: yes
description: "Description about Course/Book."
favicon: assets/favicon.ico
---
# About this Course {-}
This course on efficient programming with AI 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, students will develop an understanding of the ways in which AI can speed up common programming tasks and free up time for more creative and strategic work. By the end of the course, students will be equipped to navigate the rapidly changing landscape of software development and use AI chatbots in a way that maximizes benefits and efficiency while limiting harm as much as possible.
## Available course formats {-}
This course is available in multiple formats which allows you to take it in the way that best suits your needs.
- The material for this course can be viewed without login requirement on this [Bookdown website](https://hutchdatascience.org/AI_for_Efficient_Programming). This format might be most appropriate for you if you rely on screen-reader technology.
- This course can be taken for [free certification through Leanpub](https://leanpub.com/courses/fredhutch/ai_for_software).
- This course can be taken on [Coursera for certification here](https://www.coursera.org/learn/ai-for-software-development) (but it is not available for free on Coursera).
- Our courses are open source, you can find the [source material for this course on GitHub](https://github.com/fhdsl/AI_for_Efficient_Programming/).
- The slides for the images in the course can be found [here](https://docs.google.com/presentation/d/1MCNeSO4aOm1iESWDLOGTcx3aLEbnu8UttV0QGVAeafE/edit?usp=sharing).
## Suggested Activity Context {-}
**Course 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.
```{r, fig.align='center', out.width="100%", echo = FALSE, fig.alt= "For individuals who: develop software or want to start, are interested in using large language model AI tools to help you with your work, want to use AI tools responsibly"}
ottrpal::include_slide("https://docs.google.com/presentation/d/1MCNeSO4aOm1iESWDLOGTcx3aLEbnu8UttV0QGVAeafE/edit#slide=id.g225d384a06d_0_176")
```
**Course Prerequisites**
- Some previous exposure to programming recommended.
**Assessment Type**
- Hands-on activities following each lesson.
## Learning Objectives {-}
Learners will be able to:
- 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 programming
```{r, fig.align='center', out.width="100%", echo = FALSE, fig.alt= "Concepts discussed in the Ai for Software Development course: Introduction to large language AI tools, ethics of AI tool use for software development, using AI tools to write code from scratch, using AI tools to refactor code, Using AI to annotate code, and Using AI to understand unfamiliar code"}
ottrpal::include_slide("https://docs.google.com/presentation/d/1MCNeSO4aOm1iESWDLOGTcx3aLEbnu8UttV0QGVAeafE/edit#slide=id.g225d384a06d_0_355")
```