terça-feira, 7 de fevereiro de 2023 From rOpenSci (https://ropensci.org/pt/blog/2023/02/07/o-que-significa-manter-um-pacote/). Except where otherwise noted, content on this site is licensed under the CC-BY license.
Parte do que pretendemos fazer na rOpenSci é cultivar uma comunidade de pessoas mantenedoras de pacotes que se ajudam mutuamente. Além do suporte durante a manutenção do pacote, também queremos dar suporte às pessoas mantenedores que desejam seguir em frente. As situações podem mudar e pode chegar um momento em que uma pessoa que mantém o pacote queira passar a manutenção para outra. Se uma pessoa mantenedora se encontrar nessa situação e quiser transferir a manutenção, nós ajudaremos divulgando e também ajudamos a(s) nova(s) pessoa(s) mantenedora(s) com conselhos, geralmente do tipo “olhe ao redor para ver se há algo que precise de conserto e, em seguida, faça a manutenção de rotina”. Mas o que é manutenção de rotina? Esta postagem é uma tentativa de definir o que envolve a manutenção de um pacote, com algumas dicas.
Como mantenedor(a) de pacotes (ou equipe de pessoas mantenedoras),
No entanto, você não possui apenas esses aspectos técnicos e de produtividade. Em nossa chamada da comunidade anterior sobre manutenção de pacotes em R, Erin Grand definiu a manutenção de um pacote como “assumir responsabilidade pela comunidade em torno do pacote”. Que ótima maneira de reconhecer as pessoas que criam e usam um software! Como pessoa mantenedora do pacote, um dos seus papéis é apoiar e incentivar uma comunidade ativa de pessoas usuárias e colaboradoras… Isso também foi tema de uma chamada comunitária anterior: Configure seu pacote para fomentar uma comunidade.
Infelizmente, você não controla toda a agenda de manutenção de um pacote. :sweat_smile: A menos que seu pacote não tenha pessoas usuárias visíveis, o trabalho de manutenção provavelmente envolverá algum nível de suporte para as pessoas que usam o pacote, e triagem de issues. Você também pode receber solicitações das pessoas mantenedoras das dependências do seu pacote ou do repositório em que você publicou o pacote (CRAN, Bioconductor).
O suporte a pessoas usuárias, em particular, pode ser uma fonte de alegria: ver o seu pacote sendo usado, ajudar as pessoas a superarem obstáculos, resolver problemas. Entretanto, todas essas demandas externas podem ser exaustivas e até mesmo estressantes. Como podemos evitar isso? Bem, infelizmente, essa é uma situação comum. No entanto, embora não exista uma solução mágica, aqui estão algumas coisas que podem ajudar.
Além das solicitações de funcionalidades interessantes, a manutenção de pacotes geralmente garante um trabalho mais “rotineiro”.
Você pode querer acompanhar as atualizações sobre as práticas recomendadas de desenvolvimento de pacotes (e diretrizes externas :sweat_smile:) por meio dos canais de desenvolvimento de pacotes. Lembre-se de que o Boletim informativo da rOpenSci tem um seção sobre desenvolvimento de pacotes 😉. Acompanhar perguntas, por exemplo, no fórum da rOpenSci ou na categoria de desenvolvimento de pacotes do fórum da comunidade Posit pode ser uma forma de acompanhamento de novidades e práticas estabelecidas. Com essa leitura/acompanhamento, você pode chegar a um novo entendimento de um método de teste, pode descobrir que é melhor trocar uma dependência por outra, etc.
Agora, quando e como você aprimora seu pacote? Você pode tentar quitar alguma dívida técnica sempre que planejar algum trabalho em uma funcionalidade. Você pode se inspirar na “spring cleaning” (limpeza de primavera) do tidyverse, tanto na ideia em si, quanto na lista publica de ações, como atualizar as configurações de integração contínua. Se esse trabalho não parecer divertido, novamente, fazê-lo em equipe pode ajudar, ou você pode participar de um evento de trabalho conjunto do rOpenSci para que você tenha um tempo dedicado para trabalhar na manutenção regular de pacotes em um ambiente divertido.
Nesta postagem, tentamos apresentar uma visão geral do que significa manter um pacote: responsabilidade pelo escopo, pelo código e pela comunidade; capacidade de responder às demandas externas no próprio ritmo; e o trabalho recorrente de manutenção e organização. Tudo isso pode dar muito trabalho e precisa ser equilibrado com as recompensas que esse trabalho proporciona (dependendo da sua situação, elas podem incluir: satisfação pessoal por criar uma ferramenta útil, alegria de colaborar com outras pessoas, remuneração, desenvolvimento de experiência com código, demonstração de suas habilidades, ou reconhecimento pelo seu trabalho).
Se você sentir que não há equilíbrio, considere suas necessidades. Talvez seja hora de tentar recrutar outras pessoas para co-manter, participar de uma comunidade de outras pessoas desenvolvedoras, ou até mesmo encontrar uma nova pessoa mantenedora, ou aposentar o pacote. Para os pacotes da rOpenSci, podemos ajudar anunciando a necessidade de ajuda do seu pacote, portanto, sinta-se à vontade para entrar em contato conosco. Por último, mas não menos importante, nós da rOpenSci gostaríamos de agradecer a todas as pessoas mantenedoras de pacotes, passados, presentes e futuros! O trabalho que você faz, fez ou fará é valioso e incrível, e nós realmente o apreciamos!
Estamos sempre tentando pensar em maneiras de apoiar as pessoas mantenedoras de pacotes. Fique à vontade para adicionar um comentário abaixo com qualquer sugestão que você possa ter.