π·οΈ backlog
Module-Data-Groups π
[PD] Identify approaches to resolve conflicts π Clone
[PD] Identify approaches to resolve conflicts π
Coursework content
Consider the following types of conflict and choose one.
- A technical disagreement about how to write the code for a well-understood task.
- The manager wants you to work faster but with a smaller team by rushing.
- A competitive and ambitious person wants you to look bad so they can get a promotion instead.
Sort the following list of approaches or questions into priority and usefulness. Add your own strategies to this list.
- Donβt let your emotions control you.
- Paraphrase what the other person said, confirming your understanding and showing empathy.
- Each conflict is an opportunity.
- Find out what facts the other person knows.
- What do they want? Relatively few people have hidden agendas.
- What do you want? Assert your points clearly without being too shy.
- What is their general attitude and approach?
- What possible solutions to this conflict might exist?
- Agree on part of the solution if you canβt agree on all of it.
- Build a network of people to support your resilience and perhaps mediate the conflict.
- Communicate clearly before there is a conflict.
- Be assertive enough to make your point.
- Escalate the topic to someone more senior to arbitrate.
- Keep away from the other person and find your own solution without them.
- β¦ add your own strategies.
Estimated time in hours
0.5
What is the purpose of this assignment?
Reflecting on your learning of last week’s class about resolving conflict
How to submit
- Add your final order on a comment on this issue
- π Priority Mandatory
- π Size Small
- π JS2
- π Sprint 2
- π Sprint 2
- π JS2
- π Size Small
- π Priority Mandatory
[PD] LinkedIn research π Clone
[PD] LinkedIn research π
Learning Objectives
Objectives
Coursework content
- Set up a LinkedIn profile if you donβt already have one.
- Find 3 LinkedIn profiles that you think are good and reflect on why they are good or effective.
- Think about what you can use/adapt from these peopleβs LinkedIn profiles to yours.
Estimated time in hours (PD has max 4 per week total)
0.5
What is the purpose of this assignment?
To create a presence on LinkedIn and to get familiar with its workings.
How to submit
- Share the link to your Linkedin profile on this issue.
- Share the list of things you would like to use/adapt on your profile as a comment on this issue.
- π― Topic Requirements
- ποΈ Priority Stretch
- π Size Small
- π Sprint 2
- π Sprint 2
- π Size Small
- ποΈ Priority Stretch
- π― Topic Requirements
[PD] Make a business proposal to take a risk π Clone
[PD] Make a business proposal to take a risk π
Coursework content
Research how to write a business proposal to share within your workplace. For example, see:
Imagine taking a risk in a software development job. You want to suggest a new step in your e-commerce checkout process, persuading customers to subscribe to 1-day delivery like Amazon Prime. The step might improve customer loyalty or cause confusion and complaints. It might increase revenues. It might be too complicated to get right.
Write a proposal like an email, proposing the step in the checkout process to your team, what risks you perceive and how you will mitigate the risks. Write it in a document between 0.5 to 1 page long.
Estimated time in hours
1.5
What is the purpose of this assignment?
- Think about risks at work and risk mitigation strategies.
- Practice writing a business proposal.
How to submit
- Share your document on the cohort channel, asking for feedback.
- Give feedback on your peer’s proposal.
- Post a screenshot of your post with some feedback, if possible, as a comment on this issue
- Also post your google doc as a comment here. Make sure the file is open for comments.
- ποΈ Priority Stretch
- π Size Medium
- π JS2
- π Sprint 2
- π Sprint 2
- π JS2
- π Size Medium
- ποΈ Priority Stretch
[PD] Review a fellow trainee's CV π Clone
[PD] Review a fellow trainee's CV π
Coursework content
Read one of the CVs that hasn’t been reviewed yet on the #cyf-profile-review and give feedback on it.
Make sure you react to the post so people know you are on it (i.e. two eyes when looking, done when finished), and add the feedback as comments directly on the file or the thread.
When reading the CV, use your interviewer hat. Would you call this person for an interview? In ether answer, yes or no, make sure you give them a clear example as to why you think this way.
Estimated time in hours
1
What is the purpose of this assignment?
- See the variety of content people write in their CVs.
- Judge a CV as an external reader. Then you can know what to write better.
- Give constructive feedback to your peers.
How to submit
- Add the link to the CV doc you reviewed as a comment on this issue.
- Add a screenshot of you reacting to the message on the #cyf-profile-review Slack channel.
- π Size Small
- π Priority Key
- π JS2
- π Sprint 2
- π Priority Key
- π Sprint 2
- π JS2
- π Size Small
[TECH ED] π Code review π Clone
[TECH ED] π Code review π
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 2
- :memo: Self evaluate
- π Sprint 2
- π Priority Mandatory
- :memo: Self evaluate
[TECH ED] Codewars π Clone
[TECH ED] Codewars π
Link to the coursework
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.
Don’t just go forwards through the collections. Loop back and review your work from last month. How have you progressed? Would you choose another solution now?
Maximum time in hours (Tech has max 16 per week total)
1
How to get help
- Join the #cyf-codewars Slack channel
- Read the CYF Codewars docs
- Read Codewars advice from CYFers
- Read Codewars advice from mentors
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. What about different languages?
- π― Topic Code Review
- π― Topic Problem-Solving
- π― Topic Programming Fundamentals
- π― Topic Requirements
- π― Topic Time Management
- π Priority Mandatory
- π JS2
- π Sprint 2
- π Sprint 2
- π JS2
- π Priority Mandatory
- π― Topic Time Management
- π― Topic Requirements
- π― Topic Programming Fundamentals
- π― Topic Problem-Solving
- π― Topic Code Review
[TECH ED] Complete sprint 2 exercises π Clone
[TECH ED] Complete sprint 2 exercises π
Link to the coursework
https://github.com/CodeYourFuture/Module-Data-Groups
Why are we doing this?
These challenges are designed to develop your problem-solving skills.
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
- Fork to your Github account.
- Make a branch for this project.
- Make regular small commits in this branch with clear messages.
- 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 Medium
- π Priority Key
- π JS2
- π Sprint 2
- π Priority Key
- π Sprint 2
- π JS2
- π Size Medium
- π Priority Mandatory
[TECH ED] Group Project: Tic-Tac-Toe - Steps 1 to 6 π Clone
[TECH ED] Group Project: Tic-Tac-Toe - Steps 1 to 6 π
Link to the coursework
https://github.com/CodeYourFuture/terminal-tic-tac-toe
Why are we doing this?
One of the most important abilities you can have as a software developer, is the ability to work well within a team. There are many aspects to this, including:
- communicating clearly and consistently
- breaking down work into smaller tasks that can be shared among the members of the team
- handling disagreements with your team mates
- working with Git as a team
In this project, you will need to work as part of a team of 3 people. Use Slack to find 2 other people in your region to work with. Organise a time to meet with your team. Together, follow the steps in the README.md file of the repository. In this sprint, you can work through steps 1 to 5, and start working on step 6.
Maximum time in hours
3
How to get help
If you get stuck or need help, discuss your questions or problems with your teammates. If you need further help, raise your questions on Slack.
How to submit
Nothing to submit for this issue. Your team will be completing it’s work in the next sprint.
- π― Topic Problem-Solving
- π― Topic Teamwork
- π― Topic Testing
- π Priority Mandatory
- π Size Medium
- π Sprint 2
- π Sprint 2
- π Size Medium
- π Priority Mandatory
- π― Topic Testing
- π― Topic Teamwork
- π― Topic Problem-Solving
[TECH ED] Play the Bandit π Clone
[TECH ED] Play the Bandit π
Link to the coursework
https://overthewire.org/wargames/bandit/
Why are we doing this?
Basic Linux skills are essential for roles in Cloud, DevOps, Cyber, and SRE. Junior Cloud and DevOps roles are growing in the industry; React and fullstack junior roles are becoming scarce. So it’s a good idea to practice Linux skills to make yourself more employable. At the basic level this means using a computer from the command line instead of a GUI. You will learn to use commands to move from folder to folder, to open and edit files, and to get info like the size of a file or its location. At CYF we build this skill by playing a game called The Bandit.
There are many levels, and many more games after The Bandit, but your goal is to get to Level 20 by the end of this module.
- This blog post by Tanner Dolby will walk you through level 1 to 5. Yes, you get the first 5 levels done for you.
- Join #cyf-over-the-wire to help others.
Maximum time in hours
2
How to get help
Work through the puzzles together in #cyf-over-the-wire
Don’t share solutions in this channel, or you steal from others the opportunity of learning.
How to submit
There is no submission step. However, to apply for some roles and some courses (like CYF+ ) you must demonstrate these skills, so it would be a good idea to learn them.
Anything else?
Here’s a ChatGPT prompt you can use to get the best, most helpful learning experience:
Please act as a friendly, warm, straightforward technical mentor. You are an experienced Site Reliability Engineer who uses the terminal regularly and understands all shell commands in bash. You can explain clearly, using English mostly at CEFR B2 level, how to execute shell commands and how to navigate Linux file systems. We will be playing The Bandit, Over the Wire, shell game together. I don’t want you to give me all the answers. I want you to walk me towards the answer, helping me to find out and learn Linux commands, explaining clearly what is happening as we go. Please answer my questions carefully and do not offer code solutions, just explain in English the approach I should take and then review the commands I suggest to you. Say okee dokee if you understand.
- π― Topic Problem-Solving
- π― Topic Programming Fundamentals
- π Priority Mandatory
- π Size Medium
- π Sprint 2
- π JS1
- π Sprint 2
- π JS1
- π Size Medium
- π Priority Mandatory
- π― Topic Programming Fundamentals
- π― Topic Problem-Solving
[TECH ED] π«±π½βπ«²πΏ Mentored pair programming π Clone
[TECH ED] π«±π½βπ«²πΏ Mentored pair programming π
Learning Objectives
Pick one piece of programming you’re doing (we recommend a codewars kata) and pair up with a volunteer to work on it together.
See the mentored pair programming guide for guidance.
Book time with a volunteer using one of the Scheduling links in the #cyf-pair-programming slack channel’s canvas. If there are no available times, please post in #cyf-pair-programming.
Remember, as a learner, you will need to explain your thought process, plan out what to do, write the code and check it works
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 learners to prepare for technical interviews when they’ll need to code in front of other people.
Acceptance criteria
- You have pair programmed on a piece of programming with a volunteer for at least one hour this sprint.
Objectives
- π Priority Mandatory
- π Size Small
- π Sprint 2
- :memo: Self evaluate
- π Sprint 2
- π Size Small
- π Priority Mandatory
- :memo: Self evaluate