um podcast de divulgação científica
[Host: Adolfo Neto (UTFPR)]{.mark}
[Co-host: Ingrid Nunes (UFRGS)]{.mark}
Equipe: Danilo Ribeiro (Zup), Leonardo Fernandes (IFAL), Fabio Petrillo (Univ. Quebec), Gustavo Pinto (UFPA)
[[ADOLFO]]{.mark} Hoje no Fronteiras da Engenharia de Software vamos conversar com Igor Wiese, professor da UTFPR, sobre Desenvolvimento de Software Open Source.
[[ADOLFO]]{.mark} Tudo bem, Igor? Você pode se apresentar para as pessoas que nos escutam?
[[INGRID]]{.mark} Igor, hoje em dia é muito difícil para quem trabalha com desenvolvimento de software não saber o que é desenvolvimento de software open source, ou seja desenvolvimento de código aberto. Mas para todo mundo ficar na mesma página, tu poderias dar uma visão geral de como funcionam projetos de software open source e seu modelo de negócio?
[[ADOLFO]]{.mark} Uma questão que impacta muito nos projetos open source é o gerenciamento da licença. O que significa isso? Você pode explicar como os desenvolvedores levam ou devem levar licenças em consideração no desenvolvimento, e como o código de OSS pode ser utilizado?
[[INGRID]]{.mark} Um site que muitos desenvolvedores consultam para o desenvolvimento é o StackOverflow, com perguntas e respostas. As respostas, não raramente, contém trechos de código que podem estar associados a uma licença de OSS. Quais os cuidados que o desenvolvedor deve ter nesses casos?
[[ADOLFO]]{.mark} Falando agora sobre a dinâmica dos projetos, como elas acontecem? Existem projetos que tem uma empresa por trás - às vezes grandes, como Google, Microsoft, e Facebook. Como pessoas externas ao projeto podem contribuir e como as contribuições feitas são integradas aos projetos?
[[INGRID]]{.mark} Em projetos de empresas, normalmente a gente tem uma organização em times, com papéis determinados, alguns com maior poder de decisão, gerenciamento de tarefas. Como os times aparecem em projetos OSS? Como as tarefas são coordenadas?
[[ADOLFO]]{.mark} Agora falando sobre um tópico que você pesquisou bastante: newcomers (novatos? recém-chegados?) dos projetos, que são desenvolvedores que querem contribuir para um projeto existente. Você tem um artigo bastante citado cujo título é Why do newcomers abandon open source software projects?, e outros como o What Attracts Newcomers to Onboard on OSS Projects? TL;DR: Popularity. O que você pode compartilhar sobre o comportamento dos newcomers? Por que eles contribuem? Por que eles deixam de contribuir?
[[INGRID]]{.mark} Outra direção que você pesquisou foram as características de mantenedores de projetos OOS no artigo What Makes a Great Maintainer of Open Source Projects? publicado no ICSE, a principal conferência de engenharia de software. Quais foram os achados dessa pesquisa?
[[ADOLFO]]{.mark} A gente falou até então mais sobre a parte humana dos projetos open source, mas a gente sabe que hoje em dia se busca bastante automatização em projetos. No caso de projetos open source, a gente tem bots (robôs) que podem fazer verificações, e você estudou isso também por exemplo no artigo Effects of Adopting Code Review Bots on Pull Requests to OSS Projects. Como bots e automatizações são feitos nos projetos open source?
[[INGRID]]{.mark} E falando de plataformas… o GitHub é talvez a plataforma mais conhecida onde projetos OSS são hospedados. Quais são as alternativas? Onde mais a gente pode encontrar projetos OSS?
→ Fazer um corte aqui. 15h51
[[ADOLFO]]{.mark} A Microsoft adquiriu o GitHub a um tempo atrás. Não faz muito tempo, a empresa lançou o GitHub co-pilot. No Twitter, nós vimos discussões sobre a questão ética de fazer isso, porque isso pode ser visto como usar conhecimento compartilhado dos outros [pode-se dizer que talvez] sem seu consentimento. Qual a sua visão sobre o assunto?
[[INGRID]]{.mark} A gente está falando de open source, vamos agora falar um pouco de open access. A gente falou de vários artigos científicos dos quais você é co-autor, e tradicionalmente artigos científicos ficavam atrás de um paywall e quem lucra são as editoras a partir de pesquisa feita normalmente com financiamento público. Com isso, o ArXiv se popularizou. Porém ali artigos que não passaram por revisão por pares podem ser publicados, o que complementa a chamada Grey Literature, que você pesquisou no seu artigo Grey Literature in Software Engineering: A critical review. Primeiro, você pode explicar para nossos ouvintes o que é literatura cinza e as consequências de se basear em conteúdo não revisado por pares? Segundo, qual sua visão sobre o assunto?
##
[[ADOLFO]]{.mark} Para você, qual é a próxima fronteira da engenharia de software? (pode ser algo que você acha que vai acontecer ou que você gostaria que acontecesse em nossa área)
[[ADOLFO]]{.mark} Agradece e passa para o(a) entrevistado(a).
[[INGRID]]{.mark} Fecha o episódio.
Conversamos com Igor Wiese, professor da Universidade Tecnológica Federal do Paraná.
Sites de Igor:
[https://scholar.google.com.br/citations?user=u27JHSAAAAAJ&hl=pt-PT]{.underline}
Links Citados:
[https://dl.acm.org/doi/10.1145/2593702.2593704]{.underline}
[http://gustavopinto.org/lost+found/icse2021.pdf]{.underline}
Projects [https://ieeexplore.ieee.org/document/9240622]{.underline}
[https://open.spotify.com/episode/23VeBmG5ur1G9oQb8oNTkV]{.underline}
[http://gustavopinto.org/books/open-source-licensing-101/]{.underline}
[[INGRID]]{.mark} Igor, um dos seus artigos mais citados (Why do newcomers abandon open source software projects?), coletou dados de lista de discussão dos desenvolvedores e discussões de um gerenciador de problemas (Jira) de um grande projeto e analisou as primeiras interações dos devs recém-chegados em um projeto para identificar por que novos devs (commiters?) abandonam os projetos de software de código aberto. Quais foram os principais achados deste artigo?