Casos de uso comuns

O principal objetivo do Visual Studio Live Share é permitir que os desenvolvedores colaborem uns com os outros mais facilmente, sem introduzir qualquer opinião sobre quando e como fazê-lo (por exemplo, qual ferramenta de comunicação usar, a metodologia de software "certa" ou o fluxo de trabalho SCM). Dessa forma, suas ferramentas podem suportar interações que ocorrem naturalmente e com a frequência necessária, mas de uma forma que complemente como você já prefere trabalhar.

Este documento destaca alguns casos de uso para os quais o Visual Studio Live Share já está sendo usado e descreve o quão bem atualmente oferecemos suporte a eles e as maneiras como planejamos otimizá-los ainda mais (com base em comentários!). Se você estiver usando o Live Share para algo que ainda não foi abordado abaixo, ou se achar que podemos fazer melhor para oferecer suporte a um caso de uso específico, entre em contato conosco.

Assistência rápida

Quando você se deparar com um problema (por exemplo, tentando resolver um bug, configurando seu ambiente), você pode usar o Visual Studio Live Share para buscar assistência instantaneamente de outro par. Em muitos casos, não está imediatamente claro de que contexto a pessoa que fornece ajuda precisará e, portanto, o Live Share ajuda simplificando o acesso a todo o seu projeto e, se / conforme necessário, compartilhar incrementalmente mais (por exemplo, um servidor local, terminal somente leitura). Não há necessidade de enviar trechos de código e/ou mensagens de erro para frente e para trás!

Além disso, como o Live Share permite que você compartilhe sua sessão de depuração ativa, sem exigir que "convidados" instalem qualquer uma das plataformas necessárias SDKs (por exemplo, Node.js, Go, .NET Core) ou extensões de ferramentas, ele pode ajudá-lo a obter resolução mais rápida e evitar situações de "não reproduz na minha máquina". O Live Share permite que você compartilhe o estado de depuração com outras pessoas, para qualquer linguagem de programação ou ambiente de tempo de execução (por exemplo, Kubernetes, aplicativo React Native) e, portanto, independentemente do que você precisa de ajuda, você pode compartilhá-lo!

Horário de expediente

Muitas empresas e instituições de ensino (por exemplo, escolas, cursos de formação em linha) prestam apoio aos seus clientes/funcionários/alunos em horários pré-determinados e, geralmente, numa frequência recorrente (por exemplo, todas as sextas-feiras, das 15h às 17h). Desta forma, o "horário de expediente" é simplesmente uma forma programada de "assistência rápida", em vez de ser totalmente ad-hoc. O Live Share facilita a obtenção de ajuda rapidamente, uma vez que o "especialista" que fornece ajuda pode participar imediatamente de uma sessão de colaboração e responder à(s) sua(s) pergunta(s), sem precisar configurar sua máquina.

Programação em Par

Um dos cenários mais usados para o Visual Studio Live Share é a "programação em par": dois ou mais desenvolvedores, trabalhando juntos em uma tarefa compartilhada, com o objetivo de compartilhar conhecimento, aumentar a coesão da equipe e, potencialmente, a qualidade do produto. A aparência exata da programação em pares pode diferir significativamente entre equipes e situações, dependendo do seguinte (entre outros):

  1. O escopo da "tarefa" em que está sendo colaborada (por exemplo, um bug, uma história de usuário)

  2. A duração esperada da sessão de colaboração (por exemplo, dois minutos, uma hora, em tempo integral, uma vez por semana, TBD)

  3. O número de pessoas envolvidas (por exemplo, duas, toda a equipe)

  4. O papel de cada participante (por exemplo, "motorista", observador/revisor, especialista no assunto)

  5. A proximidade dos participantes (por exemplo, co-localizados no mesmo edifício, em todo o mundo)

O Live Share foi projetado para ser agnóstico a todas as preocupações acima mencionadas e, em vez disso, se esforça para apoiar a programação em pares que é completamente "oportunista" e atende à sua situação. Dito isso, ao contrário de dois desenvolvedores que compartilham um único teclado e tela, o Live Share permite uma forma de programação em pares que permite que os desenvolvedores trabalhem em um objetivo compartilhado, sem remover sua autonomia individual ou preferências de ambiente. Você pode trabalhar de forma independente ou em conjunto, permitindo que cada participante traga seu próprio processo de pensamento para a colaboração.

Para dividir ainda mais esse caso de uso, os itens a seguir representam formas de programação em pares para as quais observamos pessoas usando o Live Share:

Programação Mob

A programação mob (ou programação de enxame) é essencialmente programação em par, mas com mais de duas pessoas. Portanto, todos os benefícios do Live Share para programação em pares também se aplicam igualmente. Além disso, algumas equipes fazem "enxameamento" conforme necessário (por exemplo, a equipe se reunindo em torno de um exercício de incêndio) em vez de em tempo integral.

Atualmente, o Live Share suporta até 30 convidados em uma sessão.

Dica

Para habilitar 30 convidados em uma sessão:

  • VS Code: adicione "liveshare.increasedGuestLimit": "true" a settings.json
  • VS: Definir opções > de ferramentas > Live Share > Aumento do limite de convidados para "True"

Competições de Codificação / Hack-A-Thons

Competições de codificação e hack-a-thons são efetivamente variações de curto prazo e de tarefa única da programação mob. Os membros da equipe, e seu papel atual, também são potencialmente dinâmicos. Como esse caso de uso normalmente também é sensível ao tempo, a capacidade de colaborar em tempo real sem a necessidade de adotar uma ferramenta totalmente nova e a capacidade de trabalhar em conjunto, sem ficar restrito a uma única tela ou teclado, podem aumentar a velocidade.

Como os participantes desse ambiente nem sempre são totalmente "confiáveis", você pode remover (e bloquear) um convidado de uma sessão a qualquer momento. Isso fornece aos "hosts" controle total sobre seu ambiente.

Projetos de Grupos Escolares

Projetos em grupo acabam se parecendo muito com a programação mob, onde vários alunos estão trabalhando juntos e podem fazer a transição perfeita entre se concentrar em uma única tarefa ou trabalhar em tarefas separadas simultaneamente. Em vez de simplesmente confiar no controle de versão para colaborar de forma assíncrona, eles podem usar o Live Share para trabalhar juntos em tempo real, o que pode ajudar os benefícios sociais e educacionais de trabalhar em grupo.

Streaming para desenvolvedores

O streaming para desenvolvedores (via Twitch ou Mixer) se tornou uma nova forma atraente de educação. Embora o Live Share não seja destinado a substituir suas plataformas de transmissão (embora tenhamos ouvido o pedido!), ele fornece um meio para o anfitrião emparelhar o programa com um ou mais convidados e, em seguida, transmitir essa interação. Dessa forma, os espectadores podem potencialmente aprender mais vendo a interação natural e o processo de pensamento de dois ou mais desenvolvedores, que poderiam até estar trabalhando juntos em sistemas operacionais e IDEs totalmente separados!

Prototipagem / Início do Projeto

Quando uma equipe está iniciando um novo projeto/microsserviço ou prototipando/espionando um novo recurso, muitas vezes pode ser útil colaborar em conjunto para fazer um rápido progresso e explorar novas ideias. Como a base de código recém-formada pode ainda não estar comprometida com um repositório compartilhado, o Live Share permite que todos participem do processo iterativo, independentemente de estarem no mesmo escritório ou não.

Educação Interativa

De um modo geral, o Live Share busca auxiliar os desenvolvedores no compartilhamento de conhecimento entre sua equipe. A educação é um caso de uso fundamental para o Live Share, e ele suporta isso particularmente bem, permitindo que cada participante interaja com a base de código em que está sendo colaborado, em vez de simplesmente assistir a uma tela. Todos aprendem de maneiras sutilmente diferentes e, portanto, ao proporcionar independência a um "aluno", eles são capazes de tirar proveito da instrução que está sendo dada, sem precisar sacrificar sua capacidade de explorar suas próprias ideias ao longo do caminho.

Peer Mentoring / Integração

Ao apresentar um desenvolvedor a uma nova base de código, área de recursos, tecnologia, etc., você pode usar o Live Share para orientá-lo pelo projeto (usando Follow Mode), de modo que ele possa acompanhar você, mas de dentro de seu próprio IDE pessoal. Como o Live Share permite que os "convidados" naveguem independentemente pelo projeto (por exemplo, abrindo um arquivo, executando um Peek Definition), eles podem seguir permitir, mas também, realizar explorações rápidas conforme necessário (por exemplo, "Hmm, o que essa função faz?").

Bolsas Castanhas da Equipe

Os sacos marrons da equipe são efetivamente como mentoria entre pares, mas apresentados a uma equipe inteira e, potencialmente, mais focados em socializar o conhecimento geralmente útil, em oposição ao suporte de integração e/ou ajudar em uma tarefa específica.

Palestras em sala de aula

Quando os instrutores estão ensinando uma lição, eles podem usar o Live Share para compartilhar seu projeto com os alunos, em vez de simplesmente apresentar sua tela. Isso permite que toda a turma acompanhe o professor, ao mesmo tempo em que pode interagir com o projeto por conta própria. Além disso, o professor pode pedir aos alunos individualmente que ajudem a resolver uma determinada parte da aula (por exemplo, "Qual método devemos chamar aqui?"), o que pode ajudar nos aspectos sociais da classe, sem exigir que os alunos caminhem até a frente da sala, ou mesmo estejam fisicamente presentes na mesma sala (por exemplo, cursos online).

Para ajudar nas configurações da sala de aula, o Live Share permite o compartilhamento no modo somente leitura. Os instrutores podem usar o modo somente leitura para permitir que eles compartilhem seus projetos com os alunos sem ter que se preocupar com edições desnecessárias ou acidentais sendo feitas.

Além disso, o Live Share tem suporte para permitir que até 30 convidados participem de uma sessão de colaboração. Dessa forma, os instrutores podem fazer com que toda a classe participe de uma sessão e visualize o código juntos.

Para habilitar este recurso:

  • VS Code: Adicione "liveshare.increasedGuestLimit": "true" a settings.json.
  • VS: Definir opções > de ferramentas > Live Share > Aumento do limite de convidados para "True"

Revisões de Código

As RPs são uma maneira poderosa de colaborar com outras pessoas, mas normalmente representam a conclusão de uma tarefa (excluindo as RPs "WIP") e o desejo de mesclá-la. Muitas vezes, o feedback que é dado em um PR poderia facilmente ter sido dado mais cedo e, portanto, há potencialmente valor para as equipes buscarem conselhos de seus colegas de forma fácil e contínua, em vez de esperar até que "concluam" uma tarefa para perguntar.

Como o Live Share permite que você compartilhe instantaneamente seu projeto com outras pessoas, ele pode ser usado para habilitar revisões de código "informais"/ad-hoc, onde, em vez de pedir ajuda, você está simplesmente buscando informações para garantir que sua direção e/ou abordagem esteja alinhada com os outros. Isso pode potencialmente ajudar as relações públicas subsequentes a serem concluídas mais rapidamente e, definitivamente, ajuda a socializar o conhecimento em toda a equipe.

Além disso, como o Live Share permite que você compartilhe um diretório arbitrário, você pode usá-lo para executar revisões de código, mesmo se você não estiver usando o controle de versão no momento (embora deva!), ou se sua equipe não usar PRs (por exemplo, você faz desenvolvimento baseado em tronco).

Entrevistas técnicas

Ao entrevistar candidatos para uma posição de desenvolvedor, muitas vezes pode ser útil ir além das discussões no quadro branco e, em vez disso, observá-los resolvendo um problema de codificação de dentro de um IDE real (especialmente se sua equipe/organização tiver "padronizado" em uma ferramenta que você gostaria de vê-los usar). Isso não apenas lhes dá o benefício de trabalhar de uma maneira potencialmente mais natural/confortável (a maioria dos desenvolvedores não codifica em quadros brancos!), mas também lhes dá feedback/assistência imediata durante o trabalho (por exemplo, erros de compilação, intellisense). Muitas vezes, é mais importante entender o processo de pensamento de um candidato, em oposição à sua capacidade de memorizar sintaxe exata e/ou nomes de API. Dessa forma, o Live Share fornece uma experiência semelhante a fazer uma sessão de programação em dupla, mas permite que o participante esteja em seu próprio ambiente (incluindo configurações do sistema operacional, como acessibilidade), e funcionaria igualmente também para entrevistas locais ou remotas. Participar de uma sessão da web permite que o candidato use o ambiente de desenvolvimento e a base de código da equipe sem baixar nada.

Além disso, o desenvolvimento do mundo real é mais do que simplesmente escrever código. Como o Live Share também oferece suporte a depuração, tarefas e terminais compartilhados, ele permite que os entrevistadores observem os candidatos enquanto diagnosticam um problema e forneçam a eles as ferramentas apropriadas necessárias para resolvê-lo (por exemplo, depuração de etapas, execução de testes). Como todo o contexto é remoto da máquina do host, os candidatos podem entrar rapidamente no "ambiente de entrevista" sem precisar configurar sua máquina (além de instalar o Live Share). As equipes poderiam então manter um repositório de aplicativos de entrevista compartilhados (ou usar sua base de código de produto real), que poderia ser clonada e compartilhada com os candidatos, simplesmente enviando-lhes a URL da sessão antes de cada entrevista.

Trabalhando remotamente

Trabalhe em casa sem ter que manter a cadeia de ferramentas da sua máquina de desenvolvimento doméstico em sincronia com a do seu trabalho. Termine rapidamente essa linha de código de casa sem precisar sair do trabalho, clone o repositório em casa e encontre a linha exata em que você estava trabalhando. Conecte-se de um laptop leve à sua máquina de trabalho pesada.

Confira também

Está tendo problemas? Confira Solução de problemas ou envie comentários.