🏷️ backlog

Module-Piscine πŸ”—

Practise demo πŸ”— Clone

https://codelikethis.com/lessons/tricks-of-the-trade/how-to-demo

Why are we doing this?

Each week in class you will demo something for two minutes, and then take questions for five minutes. You don’t need to spend hours practising this, but it’s a good idea to try this before class and practise with a friend.

On Fridays we do demos at CYF, across the org. Come to a Meet and demo with other people to get a feel of how to do this. In class, you will demo something from your work that week. This demo will be about your solo project.

Maximum time in hours

.5

How to get help

Ask in Slack for someone to watch your demo and ask you questions. Remember, we do not want an elaborate slide show or a very long presentation. We want a couple of minutes about one interesting thing you learned, made, or broke this week.

  • 🎯 Topic Communication
  • 🏝️ Priority Stretch
  • πŸ‡ Size Small
  • πŸ“… Sprint 3
Answer a technical question πŸ”— Clone

https://curriculum.codeyourfuture.io/guides/getting-help/asking-questions/

Why are we doing this?

We want to select people who are ready to work together in teams to develop software. This means being able to talk through a technical problem with a team member. You might not be able to solve the problem, but talking through the issue systematically is always useful.

Task: Find a technical question in Slack that has not been resolved. Join the thread and help.

How to submit

Post your help in Slack. If there are no questions yet, ask one!

How to review

Before answering a question, check in with yourself and make sure you have done the following:

I have…

  • Read the question carefully and explored any links or code added
  • Asked clarifying questions to narrow down the problem
  • Explained my own reasoning
  • Checked my spelling and grammar
  • Read my whole reply carefully to make sure it makes sense and contains enough information for someone coming to it without any of the context that I already know?
  • 🎯 Topic Communication
  • 🎯 Topic Problem-Solving
  • 🎯 Topic Requirements
  • 🎯 Topic Teamwork
  • πŸ• Priority Mandatory
  • πŸ‡ Size Small
  • πŸ“… Sprint 2
  • πŸ“… Sprint 3
Play computer: team code πŸ”— Clone

https://github.com/CodeYourFuture/CYF-Workshops/tree/main/playing-computer

Why are we doing this?

In your technical interview, you may be asked to play computer.

πŸ’‘ Tip

Playing computer means simulating how the computer executes our code. We “step through” the code, line by line, and work out what the computer does when it follows each instruction.

Practice playing computer now. This time, use a pull request opened by another member of your team on your current project. For best results, book a call with your team member and step through the code together.

Maximum time in hours

1

How to get help

Ask for someone to play computer with you in Slack.

  • 🎯 Topic Communication
  • 🎯 Topic Programming Fundamentals
  • 🏝️ Priority Stretch
  • πŸ“… Sprint 1
  • πŸ“… Sprint 2
  • πŸ“… Sprint 3
Ask a technical question πŸ”— Clone

https://curriculum.codeyourfuture.io/guides/getting-help/asking-questions/

Why are we doing this?

When you hit a blocker, write up your blocker as a technical question. You can write this directly in Slack or on a ticket on your board and then link it in Slack. The process of writing out your blocker is key to resolving it.

πŸ“ Note

Before asking a question Make a prediction and explain why you think that will happen Run the code Compare your prediction against what actually happened

Now, write up your mental model using this format:

What I did What I expected What actually happened

How to submit

Post your question in Slack

How to review

Before asking a question check in with yourself and make sure you have done the following:

I have…

  • Done some research myself
  • Explained what I’ve already tried to solve my problem
  • Stated what I expected, why I expected it, and the actual results
  • Formatted my code
  • Checked my spelling and grammar
  • Pasted the exact, complete error message, if there is one
  • Read my whole question carefully to make sure it makes sense and contains enough information for someone coming to it without any of the context that I already know?

After you’ve asked your question

I have checked…

  • Are you monitoring your questions and replying to people giving their time to help you?
  • Have you been asked for a Minimum Reproducible Example?
  • Have you posted an easy to understand answer to your questions that includes everything you learnt
  • πŸ• Priority Mandatory
  • πŸ‚ Size Medium
  • πŸ“… Sprint 1
  • πŸ“… Sprint 3
Refine a ticket πŸ”— Clone
As a developer, you want to refine tickets so that anyone in your team can pick up and deliver any feature in your application.

Given a ticket in the backlog When I refine the ticket Then it is ready to be worked on

I expect a refined ticket to have

  • a user story
  • G/W/T
  • testable criteria
βœ… Checklist

So a refined ticket has all the information anyone might need to complete a feature. This is usually:

  • A user story
  • Specification by example (Given/When/Then)
  • Acceptance criteria or assertions

πŸ–ΌοΈ Refining Tickets Workflow

  • πŸ”₯ How important is this task? Prioritise πŸ€”
  • πŸ‹ How long will this take? Estimate βš–οΈ
  • πŸ“† Does this task have a deadline? Schedule πŸ“†
  • πŸ—ƒοΈ What type of work is this? Sort πŸ“
  • πŸ˜Άβ€πŸŒ«οΈ What would someone else need to know to complete this task? Explain 🎨 (or Ask)

A ticket is fully refined when anyone in your team could pick it up. If you can validate a ticket in the Backlog as Ready, move it to Ready now.

Only tickets In Progress can belong to any particular team member, so don’t claim tickets now.

🎫 Refine some tickets

Read over your team backlog. Validate the tickets against the checklist given above. If there are any tickets that are Ready, promote them from the Backlog.

Now select a ticket from the Backlog to refine. Use the refining tickets workflow. Don’t promote your own ticket to Ready - leave that to a team-mate to validate.

You can do this asynchronously or in a call with your team. Whichever helps you to make progress.

  • 🎯 Topic Communication
  • 🎯 Topic Delivery
  • 🎯 Topic Iteration
  • 🎯 Topic Problem-Solving
  • 🎯 Topic Requirements
  • 🎯 Topic Teamwork
  • 🎯 Topic Time Management
  • πŸ• Priority Mandatory
  • πŸ“… Sprint 1
  • πŸ“… Sprint 2
  • πŸ“… Sprint 3
  • πŸ“… Sprint 4