Skip to content
Open
Show file tree
Hide file tree
Changes from 7 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ time=15

## How to access the Dashboard

These instructions come from **Step 4** in the `#cyf-intro-to-digital-course` canvas ([https://codeyourfuture.slack.com/canvas/C01332PNRTN](https://codeyourfuture.slack.com/canvas/C01332PNRTN) so please refer to that first as it contains links to the instructions your should follow to access the dashboard. The information below is just designed to summarise those instructions..
These instructions come from **Step 3** in the [`#cyf-intro-to-digital-course-volunteers` canvas](https://cyf-introtodigital.slack.com/docs/TNZ5MU8DD/F0AMT9D0406) so please refer to that first as it contains links to the instructions your should follow to access the dashboard. The information below is just designed to summarise those instructions.

1. Volunteers need to access the Dashboard [https://dashboard.codeyourfuture.io/](https://dashboard.codeyourfuture.io/)
1. Sign in using GitHub.
Expand All @@ -16,7 +16,7 @@ These instructions come from **Step 4** in the `#cyf-intro-to-digital-course` ca
```console
Important: If you already completed this form in some point please click here.
```
This takes you to a page where you enter your email address and you will then get sent an email to confirm your login and thereafter you will be able to access the dashboard directly. If you have problems, post a question into the slack channel `#cyf-intro-to-digital-course`<br/>
This takes you to a page where you enter your email address and you will then get sent an email to confirm your login and thereafter you will be able to access the dashboard directly. If you have problems, post a question into the slack channel `#cyf-intro-to-digital-course-volunteers`<br/>
1. Once you are in, the home screen of the dashboard looks like this:<br/>
![the dashboard home screen](dashboardHome.png)<br/>
The menu at the top has links to the home page and the ITD programme. There will be other programs linked here as and when they start and have applicants on them.
Original file line number Diff line number Diff line change
Expand Up @@ -10,4 +10,4 @@ time=10

Reviewing work submitted by the applicants is a core task for volunteers. You should prioritise reviewing submitted work when you have free time available. We will also have online sessions on Saturdays for ITD so please check in slack to find the details of those. The links should be posted into the channel and on the global channel.

The Slack channel `#cyf-intro-to-digital-course` is for volunteers to discuss and ask questions, for example if you have questions about reviewing applicants work. This channel has a canvas containing important information [https://codeyourfuture.slack.com/canvas/C01332PNRTN](https://codeyourfuture.slack.com/canvas/C01332PNRTN). You **should read the canvas first**. This document contains additional information to help you find your way around as a volunteer.
The Slack Workspace `CodeYourFuture Intro to Digital/Basic Online Skills` has a channel called `cyf-intro-to-digital-course-volunteers` which is for volunteers to discuss and ask questions, for example if you have questions about reviewing applicants work. This workspace has a [canvas containing important information](https://cyf-introtodigital.slack.com/docs/TNZ5MU8DD/F0AMT9D0406). You **should read the canvas first**. This document contains additional information to help you find your way around as a volunteer.
10 changes: 4 additions & 6 deletions common-content/en/module/itd/how-itd-works/useful-links/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -15,11 +15,11 @@ Here is a quick list of useful links (some are for applicants only, but it is he
**CYF Learning Platform (for applicants only):**
[https://course1.codeyourfuture.io/](https://course1.codeyourfuture.io/)

**ITD Slack Channel:**
[https://codeyourfuture.slack.com/archives/C01332PNRTN](https://codeyourfuture.slack.com/archives/C01332PNRTN). Post into the slack channel if you have questions or problems.
**ITD Slack Workspace:**
[https://cyf-introtodigital.slack.com](https://cyf-introtodigital.slack.com) for all communication around the ITD.

**ITD Canvas:**
[https://codeyourfuture.slack.com/canvas/C01332PNRTN](https://codeyourfuture.slack.com/canvas/C01332PNRTN). The canvas is the official CYF information about ITD. The canvas is attached to the ITD slack channel.
**ITD Canvas for Volunteers:**
[https://cyf-introtodigital.slack.com/docs/TNZ5MU8DD/F0AMT9D0406](https://cyf-introtodigital.slack.com/docs/TNZ5MU8DD/F0AMT9D0406). The canvas is the official CYF information about ITD for volunteers.

**CYF Dashboard:**
[https://dashboard.codeyourfuture.io/](https://dashboard.codeyourfuture.io/). Use the dashboard to view applicant progress.
Expand All @@ -33,5 +33,3 @@ Here is a quick list of useful links (some are for applicants only, but it is he
- **Step 5**: [https://curriculum.codeyourfuture.io/itd/steps/five/#acceptance-criteria](https://curriculum.codeyourfuture.io/itd/steps/five/#acceptance-criteria)
- **Step 6**: [https://curriculum.codeyourfuture.io/itd/steps/six/#acceptance-criteria](https://curriculum.codeyourfuture.io/itd/steps/six/#acceptance-criteria)
- **Step 7**: [https://curriculum.codeyourfuture.io/itd/steps/seven/#acceptance-criteria](https://curriculum.codeyourfuture.io/itd/steps/seven/#acceptance-criteria)

## To be continued...
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ _ You can see that `Applicant 1` has submitted work for Step 0 but it hasn't yet
### How to view submissions

- Click on the **name** of one of the applicants. You will see a menu appear like this one:<br/>
![review options](reviewOptions.png).
![review options](reviewOptions.png)
- If you click on **Steps** you will see what the applicant has submitted for the ITD steps. The example below shows the applicant has submitted work for three steps and you are looking at their submission link for STEP 1:
![reviewing steps](reviewSteps.png)
Clicking the **Submitted** link will allow you to see their submitted work.
Expand Down
16 changes: 8 additions & 8 deletions common-content/en/module/itd/how-itd-works/what-is-itd/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ Volunteers review the submissions and guide learners via:
1. [drop-in sessions](./workshops) organised in-person or online by respective regional CYF teams
1. calling and SMS messaging directly from the dashboard

If you'd like to help, please [sign up as a volunteer](https://codeyourfuture.io/volunteer/).
If you'd like to help, please [sign up as a volunteer](https://codeyourfuture.io/volunteers/).

---

Expand All @@ -29,19 +29,19 @@ If you'd like to help, please [sign up as a volunteer](https://codeyourfuture.io

### 📅 Open

January
March
May
July
February
April
June
September
November
<--->

### ⛔ Closed

February
April
June
January
March
May
July
August
October
December
Expand Down
88 changes: 64 additions & 24 deletions common-content/en/module/itd/step-3/instructions/index.md
Original file line number Diff line number Diff line change
@@ -1,74 +1,114 @@
+++
title ="Step 3: What to do"
description= "Learn how to use AI appropriately"
description= "Learn what is acceptable AI use within the ITD."
time= 90
[build]
render = 'never'
list = 'local'
publishResources = false
+++

You may have heard of, or used, generative AI tools (shortened to AI or AI tools from now on) like ChatGPT, Copilot or Gemini. These are powerful tools that we have seen both disrupt and assist the learning of trainees at {{<our-name>}}. This page aims to guide you in best practices for AI use in the ITD.

### Overview
To read the full AI guidelines for training at {{<our-name >}}, please access the [AI Use Guidelines for Trainees](/ai-use-guidelines).

You may have heard of or used generative AI tools like ChatGPT, Copilot or Gemmi (shortened to AI or AI tools from now on). These are powerful tools that can enable your learning journey with CodeYourFuture (CYF).
### AI: A predictive word-generator

These AI tools are not really intelligent. They are just very very good at guessing what words should come next in a sentence. They don't understand the real world at all. They're just good at pretending they do. This means they can make silly mistakes and make up things that don’t exist (hallucinations). For instance, up until fairly recently, many AI tools said there were two 'r's in the word strawberry. Most mistakes are not as funny or as obvious. For instance it is common for AI to make up names of code packages which don't exist. Malicious packages even get created with names often generated by AI to exploit this.
AI assistants, like those mentioned above, are often large language models (LLMs). LLMs are "trained" on huge amounts of data to predict what word should come next in a sentence. Because they can read and generate text data, it feels like you're messaging a smart "person", but it is just software that has an algorithm for guessing what words should follow your input ({{<tooltip title="prompt">}} The input we give an AI assistant. {{</tooltip>}}).

This means that all output from AI is potentially untrustworthy. It's especially hard to tell if AI code output is any good as a junior developer. You just haven't built the understanding of what good code looks like yet - that comes with experience.
Because AI tools "guess" the text to generate, they can make mistakes or make up things that don’t exist (hallucinations). For instance, a famous hallucination from 2024 was that many AI tools said there were two 'r's in the word strawberry.

Despite all these downsides and risks, AI can be an amazing tool. The great majority of our teachers are volunteers, so their availability is limited. AI means that you now have a teacher at your fingertips whenever you get stuck. However, good teachers try to help you to understand and find the answers yourself. AI tools do not do this by default - they tend to simply give you the answer. This can make you think you’re progressing and understanding when you’re not. So, you need to use it correctly. You need to be careful to ask it to help you to learn the concepts, not to solve the problems. For instance it would be inappropriate to get it to do CYF coursework for you but it would be appropriate to get it to help you to understand a concept you're struggling with.
AI hallucinations can be costly to a programmer. For instance, it has been reported that AI can make up names of code packages which don't exist, and direct a programmer to use the package in their code. This comes with a security risk: malicious packages can get created with names often generated by AI to exploit their "predictions" and get coders to import viruses into their code.

Success at CYF is not about using AI to rush through the course and tick all the boxes. It's about building a deep understanding of the concepts we teach for yourself. Using AI to do the work for you wastes everyone’s time. You will end the course without the coding skills you wanted (which means you won't get a job) and our volunteers will have wasted their time marking AI work.
This means that all output from AI is potentially untrustworthy, we should keep a critical eye on the output of AI tools.

### Why do we need to be careful as ITD trainees?

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'd be tempted to split this into two sub-sections:

  1. We need to build understanding
  2. Sometimes it lies

I think the "we need to question and verify and explain" could do with being split into those two sections too:

  • In the "building understanding" section we can talk more about how we should be able to spot problems in AI output, and we should be able to delete AI output and write it ourselves because we know how.
  • In the "sometimes it lies" section, we can talk a bit about looking up other sources


At {{<our-name>}}, we prioritise building understanding so trainees can be employable in the tech industry. Employability in software engineering involves knowing how to debug broken code, find information you might not already know, and break down problems to find a solution. {{<our-name>}} mentors during the ITD and beyond will try to help you without giving away the answers or writing the code for you so you learn how to overcome hurdles yourself and apply that skill in the workplace when mentors aren't around.

**Why does it matter how we learn at {{<our-name>}}? What does it have to do with AI?**

Well, it can be easy for AI tools to do the hard work for us, e.g. solving the problem, fixing errors, and writing emails for us. But by making sure we do that work ourselves, we build the skills that will help us in our careers. When AI does the work for us, we may think we're progressing when we're actually not building skills that will make us employable.
Comment thread
Poonam-raj marked this conversation as resolved.
Outdated

AI can make mistakes when it's guessing what output to return to the user, but it can also be led to give incorrect information when a prompt isn't accurate. Which means we need to ask good questions (or prompts). As ITD learners, we are early in the {{<our-name>}} journey, so we are still building our foundational knowledge, which means it is more likely we will ask AI inaccurate questions and AI will give misleading results. It's something to be aware of and cautious about - the accuracy of the questions we ask is important.

For now, remember to question and verify what AI tools give us back. If we can't explain it, or verify the information with our own fact-finding, we shouldn't use it.

### What's acceptable AI use in ITD

Generally, AI might be a good tool for:

- Explaining tech concepts in plain language
- Answering "what does this mean?" questions
- Getting a starting point for research

You need to exercise CAUTION and avoid the following situations:

- Letting AI write your CV

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
- Letting AI write your CV
- Letting AI write something for you (e.g. your CV)

And let's explain why this is bad - that it will generate generic CVs which don't sell you, which aren't personal, that use filler words, that make things up about your background, etc.

Maybe we could even include side-by-side a bad AI generated CV and a good personally written CV, and give trainees a prompt for some criteria to use to compare them, and have them submit their comparison? (On average our ITD trainees don't know what a good CV looks like, so I think we would need to give them criteria to evaluate from)

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thought dump after two weeks of chewing on how to make AI CV creation make sense

Rn the learning objectives are going in the direction of:

  1. Highlight the ways AI can make mistakes or go wrong.
  2. Highlight the disadvantages of AI-generated work.
  3. Identify good and bad uses of AI for learning during the ITD.
  4. Create a Google Doc with answers to questions about AI usage.

Point 2 is where CV comparison could come into play. Issues I'm running into atm:

Upskilling ITD folks to know what a good CV looks like and how to spot issues. A lot of content for a page focused on AI.

Workaround: I am delegating upskilling trainees in what a good CV looks like by pointing to the guide and evaluator tool. It feels like a lot to explain in the prep.

I can currently force AI to hallucinate if I give it a more mid/senior role and a junior "profile" and ask it to generate a CV for it (just getting it to write a CV based on a profile was actually hard to make look bad, common LLMs seem to reasonably make a CV on its own - ChatGPT is fluffier than claude for sure).
Now the issue is, getting people to spot the hallucinations and fluffed up language is hard when they have no idea about the language, ideas, engineering concepts mentioned.

Workaround: I can try to make the profile someone who has warehouse/taxi/shop assistant experience and go for a more customer service/intern/office role. But again hard to tell if people will have enough understanding of the skills to spot the hallucination.

If the core q is "why do I bother writing a CV myself" we can drill in these advantages:

  • accuracy in a CV, hallucinations avoided
  • English lang skills
  • Understanding the contents of the CV for interview fluency

And an alternative good use of AI might be finding out more about what a good structure of a CV would be for a uk-based SE, and a bad use would be "write a CV for me" (and why these are good and bad).

I'm still chewing on this but needed to put a bookmark in where I'm at with this

- Copying AI explanations without checking your understanding
- Just accepting the AI answer without exploring further

#### How to check if you're using AI right

Ask yourself: **Will you need to ask AI this question again the next time you face this task?**

If the answer is:

- No - you've learned the skill and can demonstrate it without AI.
- Yes - you didn't understand and have to ask again, try to recap this question with less AI assistance.
- Depends - did you learn the research skill to help you find answers in the future without AI help?

#### Questions

##### Question One
A CYF student is assigned coursework on a CYF course. The assignment is to build a homepage for a library which displays their twenty newest books. It requires that they use CSS Grid (a CSS feature used to display HTML elements in a grid format). They think that ChatGPT could help them complete this task.

Which of the prompts below is an appropriate use of AI?
A {{<our-name>}} trainee is assigned coursework on a {{<our-name>}} course. The assignment is to build a homepage for a library that displays its twenty newest books. It requires that they use CSS Grid (a CSS feature used to display HTML elements in a grid format). They think that ChatGPT could help them complete this task.

Which of the prompts below is an appropriate use of AI by the trainee?

1. Generate a webpage to display information about books in a grid format.
2. Use CSS Grid to build a webpage to display twenty digital books
3. Build a homepage for a library website 
2. Use CSS Grid to build a webpage to display twenty digital books.
3. Build a homepage for a library website.
4. I want to learn more about CSS Grid. Please explain the core concepts simply with examples.

##### Question Two
A CYF student asks an AI tool to help them understand a complex CSS topic. The information the AI gives doesn't sound right.

Which of the below might be appropriate responses?
A {{<our-name>}} trainee asks an AI tool to help them understand a complex CSS topic. The information the AI gives doesn't sound right.

Which of the below might be appropriate reactions from the trainee?

1. Googling the topic and look for reliable sources to clarify the point.
1. Googling the topic and looking for reliable sources to clarify the point.
2. Trying to persuade the AI to check again.
3. Accepting this as the truth because the AI seemed to know what it was talking about.
4. Asking a volunteer whether the AI is right.
5. Asking another AI tool. 

##### Question Three
A CYF student balances fulltime work and family responsibilities with studying at CYF. They are struggling to keep up with the course. In particular, they are struggling to understand some fundamental concepts.

Which of the below are NOT appropriate responses?
A {{<our-name>}} trainee balances full-time work and family responsibilities with studying at {{<our-name>}}. They are struggling to keep up with the course. In particular, they are struggling to understand some fundamental concepts.

1. Asking volunteers for guidance at a session
2. Giving an AI tool their assigned problems and ask it to solve them for them. They then copy and paste the output, making no edits.
Which of the below are NOT appropriate actions by the trainee?

1. Asking volunteers for guidance at a session.
2. Giving an AI tool their assigned problems and asking it to solve them for them. They then copy and paste the output, making no edits.
3. Asking an AI tool to explain the concepts they find difficult to understand.
4. Attempting to solve the problems, then giving up asking an AI tool to fix their code. Then copying and pasting the answer without understanding the changes it made.
4. Attempting to solve the problems, then giving up and asking an AI tool to fix their code. Then copying and pasting the answer without understanding the changes it made.
5. Using Google to find articles on the topics they are struggling with. 
6. Copying another student’s answers.
7. Sending a direct message to a active volunteer
8. Giving an AI tool their assigned problems and ask it to solve them for them. They then copy and paste the output, making small edits.
6. Copying another trainee’s answers.
7. Sending a direct message to an active volunteer.

### What Should You Do?

#### 1. Create a Google Doc

1. Create a Google Doc
2. Place your answers for each of the questions above into the doc
3. Add one to three sentences explaining why you chose the answers you did

> [!NOTE]
> If you are new to Google Docs, you may find this [guide on what Google Docs is and how to use it](https://support.google.com/docs/answer/7068618?hl=en-GB&co=GENIE.Platform%3DDesktop) useful.

#### 2. Put your name in the document name
#### 2. Put your name in the document name

Include your given name or your family name in the title of the Google Doc.

Expand All @@ -86,4 +126,4 @@ Change the sharing settings of your Google Doc to "Anyone with the link can view

#### 4. Submit the Google Doc link

Submit the link to the Google Doc in Step 3 on the [CYF Course Platform](https://application-process.codeyourfuture.io/).
Submit the link to the Google Doc in Step 3 on the [CYF Course Platform](https://application-process.codeyourfuture.io/).
2 changes: 1 addition & 1 deletion common-content/en/module/itd/step-6/extend/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,4 +12,4 @@ time= 60

This step is just for you. You don't need to submit it.

Now that your webpage is live, you can make it even better by adding images and organizing your files like a developer. Try uploading your own images to your repository and updating your HTML so they appear on your site. You can also create folders (for example, `/images` or `/css`) to keep your project tidy. This is how professional developers structure their projects, and it will make your code easier to manage as your website grows.
Now that your webpage is live, you can make it even better by adding images and organising your files like a developer. Try uploading your own images to your repository and updating your HTML so they appear on your site. You can also create folders (for example, `/images` or `/css`) to keep your project tidy. This is how professional developers structure their projects, and it will make your code easier to manage as your website grows.
Loading
Loading