41
Ciclo de Palestras – Computação e Ética na Sociedade Contemporânea – UFBa – Sandro S. Andrade – [email protected] – @andradesandro Software Livre: Estruturalismo, Impactos no Processo de Ensino-Aprendizagem e Oportunidades de Carreira Sandro S. Andrade [email protected] @andradesandro

Software Livre: Estruturalismo, Impactos no Processo de Ensino-Aprendizagem e Oportunidades de Carreira

Embed Size (px)

Citation preview

Page 1: Software Livre: Estruturalismo, Impactos no Processo de Ensino-Aprendizagem e Oportunidades de Carreira

Ciclo de Palestras – Computação e Ética na Sociedade Contemporânea – UFBa – Sandro S. Andrade – [email protected] – @andradesandro

Software Livre: Estruturalismo,Impactos no Processo de Ensino-Aprendizagem eOportunidades de Carreira

Sandro S. Andrade

[email protected]@andradesandro

Page 2: Software Livre: Estruturalismo, Impactos no Processo de Ensino-Aprendizagem e Oportunidades de Carreira

Ciclo de Palestras – Computação e Ética na Sociedade Contemporânea – UFBa – Sandro S. Andrade – [email protected] – @andradesandro

Quem sou eu ?● Professor do Instituto Federal de Educação, Ciência

e Tecnologia da Bahia (IFBa).● Desenvolvedor, projetista e arquiteto de software.● Colaborador nos projetos de software livre Qt e

KDE.● Músico nas horas vagas.● Interesses:

– Computação Gráfica.– Arquitetura de Software / Engenharia de Software.– Sistemas Distribuídos / Sistemas Self-Adaptive.

Page 3: Software Livre: Estruturalismo, Impactos no Processo de Ensino-Aprendizagem e Oportunidades de Carreira

Ciclo de Palestras – Computação e Ética na Sociedade Contemporânea – UFBa – Sandro S. Andrade – [email protected] – @andradesandro

Decisões ! O que quero para minha carreira ?O que estou fazendo para atingir meus objetivos ?Software Livre ? Como assim ?

Page 4: Software Livre: Estruturalismo, Impactos no Processo de Ensino-Aprendizagem e Oportunidades de Carreira

Ciclo de Palestras – Computação e Ética na Sociedade Contemporânea – UFBa – Sandro S. Andrade – [email protected] – @andradesandro

Software Livre● A Computação nasceu livre!● Em 1983 o Projeto GNU é criado. [http://www.gnu.org]

● Liberdade significa ter controle sobre sua própria vida.

● Se o usuário não controla o programa, o programa controla o usuário.

● Em 1998, nasce a Open Source Initiative (OSI). [http://opensource.org]

● Open Source é uma metodologia de desenvolvimento.● Free Software é um movimento social.

Page 5: Software Livre: Estruturalismo, Impactos no Processo de Ensino-Aprendizagem e Oportunidades de Carreira

Ciclo de Palestras – Computação e Ética na Sociedade Contemporânea – UFBa – Sandro S. Andrade – [email protected] – @andradesandro

Software Livre● As quatro liberdades: [http://www.gnu.org/philosophy/free-sw.html]

– L0: executar o programa como você quiser, para qualquer propósito.

– L1: estudar como o programa funciona e modificá-lo de acordo com suas necessidades.

– L2: redistribuir cópias do programa para quem você quiser.

– L3: distribuir cópias da sua versão modificada do programa para quem você quiser.

● Mas não é só isso:– Liberdade do Produto x Liberdade do Processo.

Page 6: Software Livre: Estruturalismo, Impactos no Processo de Ensino-Aprendizagem e Oportunidades de Carreira

Ciclo de Palestras – Computação e Ética na Sociedade Contemporânea – UFBa – Sandro S. Andrade – [email protected] – @andradesandro

Software Livre● Software Livre não é:

– Software gratuito.– Software de domínio público.– Software shareware/freeware.

● Um conjunto de licenças, mais ou menos restritivas, está disponível atualmente. [http://www.gnu.org/licenses/]

● 668.666 projetos cadastrados no OpenHub.● Impactos não só na Ciência da Computação, mas em

áreas como Administração, Ciências Sociais, Psicologia, Economia e Direito. [The Many Meanings of Open Source. Gacek & Arief. IEEE Software. 2:1. págs. 34-40. 2004]

Page 7: Software Livre: Estruturalismo, Impactos no Processo de Ensino-Aprendizagem e Oportunidades de Carreira

Ciclo de Palestras – Computação e Ética na Sociedade Contemporânea – UFBa – Sandro S. Andrade – [email protected] – @andradesandro

E daí ? Por que eu devo me importar com isso ?Por que todos devem se importar com isso ?Por que professores devem se importar com isso ?

Page 8: Software Livre: Estruturalismo, Impactos no Processo de Ensino-Aprendizagem e Oportunidades de Carreira

Ciclo de Palestras – Computação e Ética na Sociedade Contemporânea – UFBa – Sandro S. Andrade – [email protected] – @andradesandro

Características:Distribuição do trabalho e dispersão geográficaDiferentes graus de descentralizaçãoMeritocracia e gerência de qualidadeCódigo de conduta e respeito mútuoThe sense of belonging

Page 9: Software Livre: Estruturalismo, Impactos no Processo de Ensino-Aprendizagem e Oportunidades de Carreira

Ciclo de Palestras – Computação e Ética na Sociedade Contemporânea – UFBa – Sandro S. Andrade – [email protected] – @andradesandro

Software Livre - Estrutura Social● Princípios do Estruturalismo de Claude Lévi-Strauss:

[O primeiro estruturalismo: método de pesquisa para as ciências da gestão. Thiry-Cherques. 2006]

– Foco na estrutura que sustenta e ordena os elementos sociais e, principalmente, suas relações.

– Conceber a ordenação destas relações como sistema inteligíveis.

– Identificar as leis gerais destes sistemas, seja por indução ou por dedução lógica.

● Análises sociais do Movimento Software Livre:– [The Social Structure of Open Source Software Development Teams. Crowston & Howison. OASIS.

2003.]

– [Carrots and Rainbows: Motivation and Social Practice in Open Source Software Development. Krogh. 2012.]

Page 10: Software Livre: Estruturalismo, Impactos no Processo de Ensino-Aprendizagem e Oportunidades de Carreira

Ciclo de Palestras – Computação e Ética na Sociedade Contemporânea – UFBa – Sandro S. Andrade – [email protected] – @andradesandro

Software Livre - Estrutura Social● Desenvolvedores e usuários:

[The Social Structure of Free and Open Source Software Development. Crowston & Howison.First Monday. 2005]

● Mas também:– Testadores, tradutores, designers, equipe de promoção.

Page 11: Software Livre: Estruturalismo, Impactos no Processo de Ensino-Aprendizagem e Oportunidades de Carreira

Ciclo de Palestras – Computação e Ética na Sociedade Contemporânea – UFBa – Sandro S. Andrade – [email protected] – @andradesandro

Software Livre – por quê ?● Por que todos devem se importar com isso ?

– Liberdade, privacidade, controle do seu computador.● Por que professores devem se importar com isso ?

– O insumo fundamental desta profissão é o conhecimento compartilhado.

– Adotar software livre é incentivar a ampla disseminação do conhecimento.

● Por que estudantes de Ciência da Computação devem se importar com isso ?

Page 12: Software Livre: Estruturalismo, Impactos no Processo de Ensino-Aprendizagem e Oportunidades de Carreira

Ciclo de Palestras – Computação e Ética na Sociedade Contemporânea – UFBa – Sandro S. Andrade – [email protected] – @andradesandro

Software Livre – por quê ?● Porque contribuir em projetos de software livre:

[Carrots and Rainbows: Motivation in Open Source Software Development. Krogh. 2012.]

– Motivações intrínsecas:● Ideologia, altruísmo, gentileza, diversão.

– Motivações extrínsecas internalizadas:● Reputação, reciprocidade, aprendizado, uso próprio.

– Motivações extrínsecas:● Carreira, pagamento.

● Olhemos mais de perto ...

Page 13: Software Livre: Estruturalismo, Impactos no Processo de Ensino-Aprendizagem e Oportunidades de Carreira

Ciclo de Palestras – Computação e Ética na Sociedade Contemporânea – UFBa – Sandro S. Andrade – [email protected] – @andradesandro

Software Livre Por quê ?

1 Suas referências serão ampliadas !

Page 14: Software Livre: Estruturalismo, Impactos no Processo de Ensino-Aprendizagem e Oportunidades de Carreira

Ciclo de Palestras – Computação e Ética na Sociedade Contemporânea – UFBa – Sandro S. Andrade – [email protected] – @andradesandro

Software Livre Por quê ?

2 Os melhores profissionais do mundo estão lá !

Page 15: Software Livre: Estruturalismo, Impactos no Processo de Ensino-Aprendizagem e Oportunidades de Carreira

Ciclo de Palestras – Computação e Ética na Sociedade Contemporânea – UFBa – Sandro S. Andrade – [email protected] – @andradesandro

Software Livre Por quê ?

3 Você vai conhecer pessoas do mundo inteiro !

Page 16: Software Livre: Estruturalismo, Impactos no Processo de Ensino-Aprendizagem e Oportunidades de Carreira

Ciclo de Palestras – Computação e Ética na Sociedade Contemporânea – UFBa – Sandro S. Andrade – [email protected] – @andradesandro

Software Livre Por quê ?

4 Pessoas do mundo inteiro serão gratas a você !

Page 17: Software Livre: Estruturalismo, Impactos no Processo de Ensino-Aprendizagem e Oportunidades de Carreira

Ciclo de Palestras – Computação e Ética na Sociedade Contemporânea – UFBa – Sandro S. Andrade – [email protected] – @andradesandro

Software Livre Por quê ?

5 Novas oportunidades podem surgir !

Page 18: Software Livre: Estruturalismo, Impactos no Processo de Ensino-Aprendizagem e Oportunidades de Carreira

Ciclo de Palestras – Computação e Ética na Sociedade Contemporânea – UFBa – Sandro S. Andrade – [email protected] – @andradesandro

Software Livre● Como não contribuir (aka: racionalização da não-

contribuição):– “Não tenho tempo e/ou interesse ...” – “Não estou preparado ainda ...” – “Não sei programar ...” – “Eles vão falar mal do meu código-fonte ...” – “Sou uma pessoa boss-oriented ...” – “São todos xiitas, comunistas ...” – “Tenho dificuldades com a língua inglesa ...” – “Gosto de trabalhar sozinho ...”

Page 19: Software Livre: Estruturalismo, Impactos no Processo de Ensino-Aprendizagem e Oportunidades de Carreira

Ciclo de Palestras – Computação e Ética na Sociedade Contemporânea – UFBa – Sandro S. Andrade – [email protected] – @andradesandro

O Qt● Toolkit para desenvolvimento multi-plataforma de

aplicações mantido desde 1995.● Amplo conjunto de funcionalidades, excelente

documentação e suportado nas plataformas mais utilizadas atualmente.

● http://www.qt.io.● Primariamente desenvolvido em C++, mas com

amplo uso de QML e JavaScript.● Bindings para: Ada, C#, Go, Haskell, Python e Ruby.● Licença dual: open source (LGPL) e comercial.

Page 20: Software Livre: Estruturalismo, Impactos no Processo de Ensino-Aprendizagem e Oportunidades de Carreira

Ciclo de Palestras – Computação e Ética na Sociedade Contemporânea – UFBa – Sandro S. Andrade – [email protected] – @andradesandro

O Qt● Utilizado em grandes organizações: Agência

Espacial Européia, DreamWorks, Panasonic, Phillips, Samsung, Walt Disney.

● É o toolkit utilizado para desenvolver o:– Guitar Pro– Autodesk Maya– Skype– VirtualBox– VLC– KDE

Page 21: Software Livre: Estruturalismo, Impactos no Processo de Ensino-Aprendizagem e Oportunidades de Carreira

Ciclo de Palestras – Computação e Ética na Sociedade Contemporânea – UFBa – Sandro S. Andrade – [email protected] – @andradesandro

O Qt● Mas também em uma série de aplicações

embarcadas:

Page 22: Software Livre: Estruturalismo, Impactos no Processo de Ensino-Aprendizagem e Oportunidades de Carreira

Ciclo de Palestras – Computação e Ética na Sociedade Contemporânea – UFBa – Sandro S. Andrade – [email protected] – @andradesandro

O KDE● Comunidade internacional de desenvolvedores de

software livre existente desde 1996.● Produtos principais:

– KDE Plasma● Área de Trabalho.

– KDE Applications● Mais de 300 aplicações em diversas áreas.

– KDE Frameworks● Conjunto de bibliotecas que estendem as funcionalidades do

Qt.

Page 23: Software Livre: Estruturalismo, Impactos no Processo de Ensino-Aprendizagem e Oportunidades de Carreira

Ciclo de Palestras – Computação e Ética na Sociedade Contemporânea – UFBa – Sandro S. Andrade – [email protected] – @andradesandro

KDE Plasma 5

Page 24: Software Livre: Estruturalismo, Impactos no Processo de Ensino-Aprendizagem e Oportunidades de Carreira

Ciclo de Palestras – Computação e Ética na Sociedade Contemporânea – UFBa – Sandro S. Andrade – [email protected] – @andradesandro

KDE Applications: Amarok

Page 25: Software Livre: Estruturalismo, Impactos no Processo de Ensino-Aprendizagem e Oportunidades de Carreira

Ciclo de Palestras – Computação e Ética na Sociedade Contemporânea – UFBa – Sandro S. Andrade – [email protected] – @andradesandro

KDE Applications: Digikam

Page 26: Software Livre: Estruturalismo, Impactos no Processo de Ensino-Aprendizagem e Oportunidades de Carreira

Ciclo de Palestras – Computação e Ética na Sociedade Contemporânea – UFBa – Sandro S. Andrade – [email protected] – @andradesandro

KDE Applications: Marble

Page 27: Software Livre: Estruturalismo, Impactos no Processo de Ensino-Aprendizagem e Oportunidades de Carreira

Ciclo de Palestras – Computação e Ética na Sociedade Contemporânea – UFBa – Sandro S. Andrade – [email protected] – @andradesandro

O KDE● A comunidade:

– Cerca de 3.000 colaboradores, entre desenvolvedores, tradutores, artistas gráficos, testadores, empacotadores e equipe de promoção.

– Fluxo médio de 11.000 commits por mês.– Cerca de 31 milhões de linhas de código.– Maior parte na Europa, mas muitos também na Índia e

EUA. Alguns no Brasil.● KDE e.V.: organização alemã de representação legal

do KDE.● KDE Free Qt Foundation.

Page 28: Software Livre: Estruturalismo, Impactos no Processo de Ensino-Aprendizagem e Oportunidades de Carreira

Ciclo de Palestras – Computação e Ética na Sociedade Contemporânea – UFBa – Sandro S. Andrade – [email protected] – @andradesandro

O KDE● Como ela funciona ?

– Consideravelmente descentralizada.– Ciclos agéis de desenvolvimento.– Comunicação primariamente via listas de discussão e

canais de IRC.– Diversos sprints presenciais durante o ano.– Encontro mundial anual dos desenvolvedores (Europa) –

Akademy.

Page 29: Software Livre: Estruturalismo, Impactos no Processo de Ensino-Aprendizagem e Oportunidades de Carreira

Ciclo de Palestras – Computação e Ética na Sociedade Contemporânea – UFBa – Sandro S. Andrade – [email protected] – @andradesandro

O KDE● Principais empresas do ecossistema KDE:

– KDAB– BasysKom– Blue Systems– ICS– Digia

Page 30: Software Livre: Estruturalismo, Impactos no Processo de Ensino-Aprendizagem e Oportunidades de Carreira

Ciclo de Palestras – Computação e Ética na Sociedade Contemporânea – UFBa – Sandro S. Andrade – [email protected] – @andradesandro

Qt, KDE e o estudante de Computação● A formação técnica e social de um profissional da

Computação envolve diversos fatores:– Raciocínio lógico e capacidade de abstração.– Pragmatismo e estratégia.– Processos de desenvolvimento de software.– Idiomas.– Habilidades sociais e networking.– Disciplina, proatividade, humidade e empatia.

Page 31: Software Livre: Estruturalismo, Impactos no Processo de Ensino-Aprendizagem e Oportunidades de Carreira

Ciclo de Palestras – Computação e Ética na Sociedade Contemporânea – UFBa – Sandro S. Andrade – [email protected] – @andradesandro

Qt, KDE e o estudante de Computação● Software livre e habilidades de programação:

– Problemas reais … soluções reais … usuários reais.– O resultado é a necessidade de gerenciar a complexidade.

● Software livre e processos de desenvolvimento:– Quanto mais consolidado é o software livre mais maduro

é o processo de desenvolvimento.– Geralmente adotam processos agéis.

● Software livre e gerência de qualidade:– Testes de sanidade, revisões, integração contínua, beta

tests.

Page 32: Software Livre: Estruturalismo, Impactos no Processo de Ensino-Aprendizagem e Oportunidades de Carreira

Ciclo de Palestras – Computação e Ética na Sociedade Contemporânea – UFBa – Sandro S. Andrade – [email protected] – @andradesandro

Qt, KDE e o estudante de Computação● Software livre e gerência de projetos:

– Release management.– Bug tracking.

● Software livre e projeto arquitetural de software:– Arquiteturas inferiores não são soluções adequadas.– Excelentes fontes de inspiração:

● Design patterns.● Estilos arquiteturais.

● Software livre, educação, ética e sociedade:– Impactos, consequências, desdobramentos, etc.

Page 33: Software Livre: Estruturalismo, Impactos no Processo de Ensino-Aprendizagem e Oportunidades de Carreira

Ciclo de Palestras – Computação e Ética na Sociedade Contemporânea – UFBa – Sandro S. Andrade – [email protected] – @andradesandro

O KDE no Brasil● Maior expansão a partir de 2008, com diversas ações

de divulgação e incentivo à contribuição.● Maior participação do KDE nas principais

conferências de software livre do Brasil (FISL, Latinoware, etc).

● Palestras e minicursos em todo o Brasil.● Eventos próprios do KDE no Brasil e no exterior.

Page 34: Software Livre: Estruturalismo, Impactos no Processo de Ensino-Aprendizagem e Oportunidades de Carreira

Ciclo de Palestras – Computação e Ética na Sociedade Contemporânea – UFBa – Sandro S. Andrade – [email protected] – @andradesandro

Akademy-BR 2010

Page 35: Software Livre: Estruturalismo, Impactos no Processo de Ensino-Aprendizagem e Oportunidades de Carreira

Ciclo de Palestras – Computação e Ética na Sociedade Contemporânea – UFBa – Sandro S. Andrade – [email protected] – @andradesandro

1st LaKademy 2012

Page 36: Software Livre: Estruturalismo, Impactos no Processo de Ensino-Aprendizagem e Oportunidades de Carreira

Ciclo de Palestras – Computação e Ética na Sociedade Contemporânea – UFBa – Sandro S. Andrade – [email protected] – @andradesandro

2nd LaKademy 2014

Page 37: Software Livre: Estruturalismo, Impactos no Processo de Ensino-Aprendizagem e Oportunidades de Carreira

Ciclo de Palestras – Computação e Ética na Sociedade Contemporânea – UFBa – Sandro S. Andrade – [email protected] – @andradesandro

3rd LaKademy 20153 a 6 de junho

Page 38: Software Livre: Estruturalismo, Impactos no Processo de Ensino-Aprendizagem e Oportunidades de Carreira

Ciclo de Palestras – Computação e Ética na Sociedade Contemporânea – UFBa – Sandro S. Andrade – [email protected] – @andradesandro

Konqi 2012

Page 39: Software Livre: Estruturalismo, Impactos no Processo de Ensino-Aprendizagem e Oportunidades de Carreira

Ciclo de Palestras – Computação e Ética na Sociedade Contemporânea – UFBa – Sandro S. Andrade – [email protected] – @andradesandro

Akademy 2014

Page 40: Software Livre: Estruturalismo, Impactos no Processo de Ensino-Aprendizagem e Oportunidades de Carreira

Ciclo de Palestras – Computação e Ética na Sociedade Contemporânea – UFBa – Sandro S. Andrade – [email protected] – @andradesandro

Conclusões● Software Livre é fonte de conhecimento

indispensável para uma melhor formação de carreira na Computação.

● Software Livre, atualmente, não é só trabalho voluntário. Você pode ser pago para isso, mas mantenha seus princípios !

● Estude … mantenha seus interesses profissionais vivos … a Computação é uma área maravilhosa.

Page 41: Software Livre: Estruturalismo, Impactos no Processo de Ensino-Aprendizagem e Oportunidades de Carreira

Ciclo de Palestras – Computação e Ética na Sociedade Contemporânea – UFBa – Sandro S. Andrade – [email protected] – @andradesandro

Software Livre: Estruturalismo,Impactos no Processo de Ensino-Aprendizagem eOportunidades de Carreira

Sandro S. Andrade

[email protected]@andradesandro

Obrigado !