Giter Club home page Giter Club logo

block-party's Introduction

Block Party

Why is this important?

This workshop is important because:

Collaboration is rampant in web development. Most projects are too large for one person to build and maintain alone. Companies use a wide variety of methods for collaboration, and we'd like you to get practice with different methods as well.

We've emphasized pair programming because it's a very valuable skill and a new skill for most people. You've also done stand-ups. Most companies hold some kind of stand-up meetings within each engineering team.

You're working on independent projects today, so pairing isn't a good go-to collaboration method. Still, as a cohort we're all on the same (large!) "team". Asynchronous stand-ups are a good solution for large teams and teams, teams that have engineers working very independently on similar problems. Asynch standups are often conducted with slack or a similar program, but we'll do a physical version today that we like to call a "block party!"

What are the objectives?

Developers will be able to:

  • Format technical questions with information other engineers will need in order to help.
  • Practice responding to requests for technical help.

Where should we be now?

Developers should already be able to:

  • Pair program as a "driver" or "navigator".
  • Describe progress in stand-ups.

How to Ask Technical Questions

Whether you're asking a colleague immediate help with a problem in your code, adding an issue to your project's GitHub repo, or reporting a bug in some external code, include these helpful pieces of information:

  1. What do you want/expect? What should happen?

When a user clicks the "sign up" button, a login form should pop up.

  1. What is happening instead?

When a user clicks the "sign up" button, nothing happens on the screen, and there are no errors in the console.

  1. What have you tried to get the desired result?
  • Googled the issue ("button click doesn't do anything")
  • Looked back at documentation for click handling
  • Added a console.log to the click handler

Asynchronous Stand-ups

Asynchronous stand-ups are often conducted through slack or a similar tool. For instance, each team member might answer these questions on slack every Wednesday afternoon: what have I accomplished, what am I working on now, what (if any) blocks am I facing? We definitely encourage you to use slack to express blocks and share tips.

We're also going to have a physical block party!

Independent Practice: Block Party

  1. Think of an issue you've solved recently or a block you're facing right now.
  2. Write your block on the walls of the classroom, including what you want/expect to happen and what is happening instead. (You don't need to include all the things you've tried.)
  3. When you solve the problem, write "solved" or ":)" or a brief tip next to your block.

Requesting and Giving Help in a Block Party

  1. Periodically check the wall to see if anyone else is facing the same block or if someone has solved it.
  2. If you think someone may be able to help you, start by preparing the three parts of a technical question above. You can then slack the person to ask for help. They will evaluate whether and how they can help you based on their time and resources. Keep reading to see some of the responses you might expect.
  3. If someone slacks you asking for help, you get to evaluate how to help them. All of the following are 100% acceptable options:
  • set a brief timeslot to meet with the person and go over the topic, and stick to the timeslot
  • slack a resource link
  • give a quick tip that helped you (even "check your spelling - that was the issue for me!")
  • refer the person to someone else who helped you (like a teaching team member)
  • let the person know that you don't have time to help or your issue doesn't seem related
  1. If you don't think any classmates have faced this issue, or if you've asked a classmate and they weren't able to help, go to the teaching team!

Closing Thoughts

As a web developer, you'll need to collaborate with others often.

When you're new, you'll spend a lot of time asking technical questions, so practice asking great ones!

You have a few strategies now for how to deal with a situation when you can't meet with someone to get or give as much help as you'd like (depending on which side of the problem you're on). At GA, a teaching team member is a great next person to go to. If you consistently need more help than you're getting in a work environment, set a meeting with your manager to go over strategies. Still remember to prepare specific questions and be respectful of colleagues' time.

block-party's People

Contributors

bgveenstra avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.