Live Blue
(http://liveblue.wordpress.com)Apresentação da Disciplina
MATA79 Tópicos em Programação 2010.1
Desenvolvimento de Software Livre
Sandro Santos Andrade sandroandrade@kde.org http://liveblue.wordpress.com liveblue@googlegroups.comRoteiro
●Apresentação da disciplina
●Justificativa
●Metodologia
●Avaliações
●Benefícios
●O KDE no Brasil e no mundo
●O Live Blue
Apresentação da disciplina
●Desenvolvimento de Software Livre (MATA79)
●Carga horária: 51h
●100% handson
●Horário: segundasfeiras das 13h as 16h
●Local: sala 151
●Professor: Sandro Andrade
Apresentação da disciplina
●Objetivos:
● Facilitar a iniciação do aluno em projetos de software livre. ● Disponibilizar um guia sobre como as comunidades se organizam e trabalham. ● Capacitar tecnicamente o aluno para a participação em diversos projetos envolvendo software livre. ● Fortalecer a base local de desenvolvedores. Ampliar as oportunidades futuras de trabalho.Justificativa
● O Brasil e a China são os dois únicos paises fora da Europa a participar do Projeto Qualipso. ● O Brasil é o quinto pais em número de submissões e também o quinto em projetos aprovados no Google Summer of Code. ● Muitas oportunidades existem foram do nosso contexto local. ● Participar de projetos de software livre é essencial para o amadurecimento técnico e pessoal do aluno.Justificativa
●Oportunidades:
● Google Summer of Code 2010. ● Akademy 2010. ● NOKIA Qt Development Framework ? ● Akademybr. ● Google BH ? INdT – PE ? ● Mais de 70 empresas na Europa e Estados Unidos. ● FISL, Latinoware.Justificativa
●Oportunidades:
● Live Blue. ● CCSL (Centro de Competência em Software Livre). ● Outros grupos de desenvolvedores ? ● Empresas de consultoria em software livre ? ● Projeto Final com software livre ? ● … ● Conhecer pessoas, trabalhos legais e recompensadores.Metodologia
●Aulas 100% práticas.
●Fase inicial de capacitação em C++, Qt4, KDE, o
que ocorrer …
●Fase inicial para Community Bonding e
conhecimento do ecosistema.
●Fase inicial para conhecimento dos possíveis
pontos de contribuição.
●Hacking, hacking ...
Metodologia
●
Prérequisitos:
● Orientação a objetos.
● Boa experiência com alguma linguagem OO. ● Inglês básico para comunicação escrita.
Avaliações
●A nota do aluno será proporcional à importância
da contribuição realizada:
● Foi enviado algum patch ? ● Você conseguiu uma conta no svn ? ● Foram postadas notícias no planetkde.org ? ● Você criou um novo projeto no playground ? ● Você fez commits em algum projeto existente ? ● Você conseguiu um email kde.org ? ● Submeteu para o Summer of Code ? ● Irá para o Akademy, na Finlândia ? ● Seu código passou pelo kdereview ? Irá ser lançado no KDE 4.5 ?Benefícios
●Oportunidade para inserção em uma comunidade
internacional.
●Melhoria das suas habilidades técnicas.
●Melhoria das suas relações interpessoais.
●Oportunidades de trabalhos futuros.
●Você entenderá como e porquê o software livre
funciona.
●Você irá se divertir ...
O KDE no Brasil e no Mundo
O Projeto KDE
●O KDE é uma comunidade internacional para
desenvolvimento de software livre.
●Em 1997 o KDE passa a utilizar o toolkit Qt e o
KDE e.v. é criado
●O Qt é lançado com a licença GPL em 2000
O Projeto KDE
●O KDE foi totalmente reestruturado para o
lançamento do KDE 4 em janeiro de 2008
●Números:
● 4 milhões de linhas de código no SVN, mais de 1900 contribuidores, 300 tradutores, 11000 commits por mês, mais de 20 mirrors do site e 130 de downloadsTecnologias Qt
●Sobre o Qt:
● É um toolkit para o desenvolvimento de aplicações GUI multiplataforma, com recursos para IPC, networking, XML, SVG, banco de dados, scripting, OpenGL, multimídia e soluções embarcadas ● Disponível publicamente desde maio de 1995 ● Possui cerca de 500 classes e 9000 funções ● Possui licença dualTecnologias Qt
Tecnologias Qt
Tecnologias Qt
Tecnologias Qt
Tecnologias Qt
Tecnologias Qt
Tecnologias Qt
Tecnologias Qt
Tecnologias Qt
Tecnologias Qt
Tecnologias Qt
Tecnologias Qt
Tecnologias Qt
Tecnologias Qt
Tecnologias Qt
Tecnologias Qt
Tecnologias Qt
●E mais …
– Extensões do Qt: signals/slots, metaobjetos, containers – Style Sheets e Scripting (QtScript) – Web Browser Engine (WebKit) e Plugins – Multimídia (Phonon) e Manipulação de SVG – Bindings para outras linguagens (Qt Jambi, PyQt, QtRuby, Perl, Qt#, Qymono) – Qt na web ? Wt !!! – Extensões do KDE e de terceiros (ex: qwt, qanava, quazip, QLALR ...)Tecnologias Qt
●Porque o Qt ?
● Multiplataforma com códigofonte único ● Riqueza de características e funcionalidades ● Bom desempenho e ótima documentação ● Disponibilidade de códigofonte ● Disponibiliza soluções corretas sob o ponto de vista da engenharia de software ● Write once, compile anywhereTecnologias KDE
●Amplia as funcionalidades do Qt através de suas
bibliotecas:
● kdeui: funcionalidades de interface de usuário ● kio: acesso uniforme a arquivos locais e remotos ● decibel / telepathy: Computer Telephone Integration, VoIP, etc ● plasma: o desktop KDEPorque e como contribuir
●Porque contribuir ?
● Você irá aprender com os mestres ● Você irá vivenciar um projeto real de desenvolvimento de sistemas complexos ● Você irá ampliar sua rede de contatos ● Oportunidades podem surgir ● Você poderá ser pago para trabalhar com software livrePorque e como contribuir
●Papéis desempenhados:
● Desenvolvedor de código ● Testador (usuário que reporta bugs) ● Tradutor / Criador de novas documentações ● Criador de pacotes e distribuições ● Designer de arte ● Promoter ● Sociólogo, economista, educador, filósofo ...Porque e como contribuir
●Por onde começar (desenvolvedores):
● Instalar o Linux :) ● Conhecer o Linux e o KDE ● Estudar C++/Java/Python/Ruby/..., Qt e KDE ● Escolher um projeto: – Se inscrever na lista de discussão – Participar dos canais de IRC – Compilar os fontes do SVN Participar ...O Live Blue
●Grupo de promoção, manutenção, documentação,
testes e desenvolvimento da plataforma KDE na
Bahia
●Atualmente com 20 membros
●Web site: http://liveblue.wordpress.com
●Objetivo:
● Suportar as atividades técnicas e nãotécnicas relacionadas ao projeto KDE na Bahia e no BrasilO Live Blue
●Projetos em andamento:
– Rocs – Visualização de Software no Kdevelop – Gluon – Game Engine – Tutoriais para a Linux Magazine – Manutenção do site br.kde.org – Participação no FISL 10 – Participação no Latinoware 2009 – Encontro Brasileiro do Projeto KDEO Live Blue
●
Rocs:
● Software do pacote KDEedu para criação e