🏷️ backlog

Module-Structuring-and-Testing-Data πŸ”—

[CYF] πŸ’‘ Do you need support to continue studying? πŸ”— Clone

✍️ Enrol as a Trainee

Have you finished Module 1 of ITP? Well done! πŸ’ͺ

If you need help with transport, childcare, data, or a laptop to keep studying, apply to enrol as a Trainee . Trainees at CYF can claim expenses to support their studies.

Want to know more? Apply to enrol as a Trainee

✨ Code Your Future

  • πŸ“… Sprint 1
[TECH ED] Complete Sprint 1 exercises πŸ”— Clone

https://github.com/CodeYourFuture/Module-Structuring-and-Testing-Data

Why are we doing this?

These challenges are designed to develop your ability to read and understand documentation, and to read and interpret error messages.

Maximum time in hours

6

How to get help

Share your blockers in your class channel https://curriculum.codeyourfuture.io/guides/asking-questions/

How to submit

  1. Fork to your GitHub account.
  2. Make a branch for this project.
  3. Make regular small commits in this branch with clear messages.
  4. When you are ready, open a PR to the CYF repo, following the instructions in the PR template.

There are several projects in this repo. Make a new branch for each project.

  • πŸ• Priority Mandatory
  • πŸ¦‘ Size Large
  • πŸ“… JS1
  • πŸ“… Sprint 1
[TECH ED] πŸ“ Code review πŸ”— Clone

Why are we doing this?

Code review is an essential part of self-evaluation. Get a code review for a piece of work; then reply and iterate on this feedback.


We’re using GitHub Labels in our Code Review process. In order for a volunteer to review your pull request, you will need to add a “Needs Review” label to it.

  • Open your pull request
  • In the right sidebar, click Labels, then select “Needs Review”

Take a look at our code review process from beginning to end. Let us know if you have any questions or need help!


You can also use any solutions to review your code independently.

Maximum time in hours

1

  • πŸ• Priority Mandatory
  • πŸ“… Sprint 1
  • :memo: Self evaluate
[TECH ED] πŸ«±πŸ½β€πŸ«²πŸΏ Pair program πŸ”— Clone

Instructions

  1. Pair up with a volunteer and work on a kata together
  2. As a trainee, you will need to explain your thought process, plan out what to do, write the code and check it works
  3. Volunteers will need to ask questions to check your understanding, provide guidance if you stuck, give honest and meaningful feedback

🧭 Guidance for volunteers

  • Don’t take over! It’s important trainees get used to figuring things out. Provide guidance and assistance but trainees need to struggle to overcome any obstacles with understanding and technical communication
  • Give honest feedback. Trainees can’t develop if they don’t receive honest feedback about their progress.
  • Ask questions. Sometimes asking a clarifying question can help learners discover errors and often promotes more thoughtful responses.
  • Encourage best practices. Reinforce good practices like reading error messages carefully sessions and checking documentation.

Why are we doing this?

Pair programming is an excellent way to develop programming and communication skills. It is often much easier to work through something when working on something 1 to 1. It is also helps our trainees to prepare for technical interviews when they’ll need to code in front of other people.

Acceptance criteria

  • You have pair programmed on a kata with a volunteer for at least one hour
  • πŸ• Priority Mandatory
  • πŸ‡ Size Small
  • πŸ“… Sprint 1
  • :memo: Self evaluate
[TECH ED] Codewars πŸ”— Clone

https://www.codewars.com/users/CodeYourFuture/authored_collections

Why are we doing this?

Every week you need to complete at least three kata. Spend at least 20 minutes, three times a week, on your kata workout.

Find the Collection for this module on the CodeYourFuture account.

Take some time to check your levels. Before you are accepted on the jobs programme, you need to reach a Level 5 kyu in Codewars. Are you on track to reach this standard? Have you run a study group to work on kata? Have you reached out on the #cyf-codewars channel? What is your plan to meet this goal?

Maximum time in hours (Tech has max 16 per week total)

1

How to get help

Remember, after 20 minutes, take a break.

How to submit

Your codewars progress is tracked automatically and is available on the public API. You don’t need to submit it.

How to review

Once you have completed your kata, look at the other solutions in the solutions view. Consider how many different approaches there are.

  • 🎯 Topic Code Review
  • 🎯 Topic Problem-Solving
  • 🎯 Topic Programming Fundamentals
  • 🎯 Topic Requirements
  • 🎯 Topic Time Management
  • πŸ• Priority Mandatory
  • πŸ“… Sprint 1
  • πŸ“… JS2
[TECH ED] CIP Intro to Python πŸ”— Clone

https://codeinplace.stanford.edu/public/studenthome

Why are we doing this?

Get introduced to Python. Learn about the print and input statements. Also learn about variables and types, including int, float, and string. Get started writing your first few Python programs that use these statements.

Then, learn about mathematical expressions in Python, including arithmetic operators and rules of precedence for evaluating expressions. Also learn about type conversion and the use of constants in programs. Review the Python math and random libraries for mathematical functions and random number generation, respectively. Get practice putting these concepts together in sample programs.

Maximum time in hours

6

How to get help

Come to Slack and CYF coworking spaces with your blockers.

  • 🎯 Topic Programming Fundamentals
  • πŸ• Priority Mandatory
  • πŸ¦‘ Size Large
  • πŸ“… Sprint 1
[PD] Writing an email for an internship πŸ”— Clone

Coursework content

Draft an email to apply for an internship at a fictional company called Vonda. Make sure to include the five things below:

  1. Why you want to become a software developer
  2. Your background and your past
  3. What you are doing at the moment
  4. Where you see yourself in the future
  5. Why Vonda should give you the opportunity to do an internship

The email should be formatted in a way that is ready to be sent. Make sure you include a subject title and pay attention to the formatting (font type and size, alignment etc).

Estimated time in hours

1

What is the purpose of this assignment?

This assignment aims to improve your writing skills.

How to submit

Share the link to the Google doc on the ticket on your coursework board.

  • 🎯 Topic Communication
  • πŸ• Priority Mandatory
  • πŸ‡ Size Small
  • πŸ“… JS1
  • πŸ“… Sprint 1
[PD] What do you think? πŸ”— Clone

Coursework content

Use critical thinking skills to answer a client’s request on a web page you developed.

Estimated time in hours

1

What is the purpose of this assignment?

A client requested the navigation bar at the bottom of their web page. Research what best practice is and why this would be a good, a bad or a neutral idea.

These are the tips to help you write it:

  • Provide appropriate and sufficient arguments and examples
  • Research arguments against and for the statement before coming to your conclusions.
  • Choose terms that are precise, appropriate, and persuasive
  • Make clear the transitions from one thought to another to ensure the overall logic of the presentation

How to submit

  • Create a text with at least 250 words.
  • Make sure your text is reviewed by a grammar tool. It should have at most 3 mistakes.
  • Add the link to the Google doc to comment on this issue. Make sure it is open for anyone to comment.
  • πŸ• Priority Mandatory
  • πŸ‡ Size Small
  • πŸ“… JS1
  • πŸ“… Sprint 1
[PD] Review your development plan πŸ”— Clone

Coursework content

Using the Build Your Life plan and your first version of your Career Development plan, we want you to continuously think about the goals you want to achieve: short/medium/long-term. These should still be linked to the areas you want to develop.

Remember: 2-3 areas are enough to change in such a short time, so it’s better to focus on a few, get them nailed, and then choose another area.

Ensure you are not only thinking of technical knowledge you want to acquire but especially skills and processes that will help you become a developer.

Examples of goals

  • Short term: Practicing coding = Code 1 hour a day on weekdays
  • Medium-term: Enhance my written English = Trying to correct by myself the errors that the automated grammar tool is showing in my text
  • Long term: Get a job in tech = Send 1 tailored CV per day when I have graduated from Code Your Future

Estimated time in hours

0.5

What is the purpose of this assignment?

Define where you want to be in the short, medium and long term. This helps give you perspective and clarity of where your direction is and if you are doing the right things to get there.

How to submit

  • Share your development plan link as a comment, open to anyone to comment
  • Write a paragraph, as a comment on this issue, about what you have learned/changed
  • πŸ• Priority Mandatory
  • πŸ‡ Size Small
  • πŸ“… JS1
  • πŸ“… Sprint 1
πŸ§‘πŸΎβ€βš–οΈ Check module success criteria πŸ”— Clone

https://programming.codeyourfuture.io/structuring-data/success/

Why are we doing this?

πŸ”‘ The most important thing is that you are secure in your understanding.

At the end of the course, we will expect you to build novel applications using your understanding. If you cannot build things, we cannot put you forward for jobs. It is in your personal interest to make sure you have properly understood this module.

To progress to the next module you need to meet the success criteria for this module. How will you meet the module success criteria? Discuss it in your class channel and make a plan together.

πŸ§‘πŸΏβ€πŸŽ€ good strategies

  • asking volunteers to review your code
  • helping each other with coursework blockers
  • arranging midweek study sessions
  • using Saturday time to review code together

πŸ™…πŸΏ bad strategies

  • opening empty PRs
  • copying and pasting
  • breaking the Trainee Agreement
  • mistaking the measure for the target

Maximum time in hours

.5

How to get help

Discuss with your cohort. Support each other.

How to submit

At the end of your module you will need to submit your own work in the CYF dashboard. This means things like pull requests you have written sent from your GitHub account, and Google Docs you have written.

What you need to submit is listed on the success page for the module.

Remember - the goal is your understanding. If you are not confident you could delete and re-do the work you’re submitting easily, you should take more time to revise the topics. It’s more important that you understand the work, than that it gets done quickly.

  • 🎯 Topic Code Review
  • 🎯 Topic Communication
  • 🎯 Topic Delivery
  • 🎯 Topic Requirements
  • 🎯 Topic Teamwork
  • 🎯 Topic Testing
  • 🎯 Topic Time Management
  • πŸ• Priority Mandatory
  • πŸ¦” Size Tiny
  • πŸ“… JS1
  • πŸ“… Sprint 1