SlideShare uma empresa Scribd logo
Software Livre dentro das possibilidades acadêmicas
Tudo tem um começo...
E um fim que queremos evitar... Head Hunter 5 anos pra isso?
A universidade é um espaço para aprender e experimentar...
Mas com pouco tempo de aula vão perceber... Queria achar uma coisa  legal p/ fazer.... Já passou em Cálculo?
Mostrar como o  Sofware Livre  pode ajudar a entender algumas matérias na graduação e como isso pode te ajudar no futuro.
Antes de focarmos em argumentos técnicos, precisamos compreender o conceito sobre as liberdades essenciais para um sofware ser considerado livre. 0. A liberdade para executar o programa, para qualquer propósito 1.  A liberdade de estudar como o programa funciona,  e adaptá-lo para as suas necessidades  2. A liberdade de redistribuir, inclusive vender, cópias de modo que você possa ajudar ao seu próximo 3.  A liberdade de modificar o programa , e liberar estas modificações, de modo que toda a comunidade se beneficie
E toda jornada tem um começo... É preciso andar por onde a estrada vai de modo a unir o que você aprende dentro da universidade com o que é praticado fora dela.
A lista de áreas não é pequena... ...nem as soluções oferecidas. FPGA, SoC, .. . Dataware House Banco de Dados Sistemas Embarcados Compiladores Virtualização Jogos Simulação Web Escalabilidade Sistemas de comunicação Sistemas Operacionais RTOS Arquitetura de Processadores CAD Drivers Office* Servidores GUI
Como eu posso  começar então?
A primeira parte diz respeito a familiarização com as ferramentas básicas.
Pré-requisito 1) Instalar alguma distribuição GNU/Linux. 2) Se familiarizar com a interface da linha de comando.
Nos primeiro semestres, nas parte que envolvem software temos: ,[object Object]
Estrutura de Dados
Programação Orientada a Objeto (POO) A primeira coisa é um  compilador  para executar seus testes. Vale a pena estudar e conhecer as opções do  GCC . A segunda coisa é um  depurador  para executar seus testes. Vale a pena estudar e conhecer as opções do  GDB .
G NU  C ompiler  C ollection  gcc exemplo.c -o exemplo.exe Executável do compilador  (gcc ou g++) Código-fonte (lembre-se da extensão) Este parâmetro idica um nome de saída, se nada for definido o padrão é a.out Arquivo de saída
G NU  C ompiler  C ollection  gcc  -Wall   -ggdb  exemplo.c -o exemplo.exe  Habilita todas as  warnings  que alguns usuários consideram questionáveis e que são fáceis de evitar (ou modificar para previnir) Gera as informações de  debug  para o GDB
#include <stdio.h> int main(int argc, char *argv[]) { printf(“Olá Mundo!”); return 0; } $ gcc  -Wall   -ggdb  exemplo.c -o exemplo.exe  $ ./exemplo.exe  Olá Mundo! Compilar o programa: E executar o código:
E se alguma coisa der errado? Se você rodar o programa e ele não funcionar da forma como você pretendia?
G NU  D e b ugger  gdb exemplo.exe Executável do depurador  Arquivo executável (ELF)
$ gdb -q exemplo.exe Reading symbols from /home/maluta/exemplo.exe...done. G NU  D e b ugger  (gdb) l 1  #include <stdio.h> 2 3  int main(int argc, char *argv[]) { 4 5 6  printf(&quot;Olá Mundo!&quot;); 7  return 0; 8  } (gdb) r Starting program: /home/maluta/exemplo.exe Olá Mundo! http://www.coding.com.br/programacao/basico-de-ponteiros-com-o-gdb/
Além disso é preciso entender ferramentas que não se aprendem na escola...
Dominar algum software que faça o  controle de versão  do seu código.  Existem vários, vale a pena entender pelo menos: GIT [git] Mercurial [hg] Bazaar [bzr] Dominar algum software que faça a  automatização na construção  do seu executável.  Existem vários, vale a pena entender pelo menos: autotools cmake scons
Python   Bônus ex. Parser Visualização
# -*- coding: utf-8 -*- from pylab import * N = 100 start = 0 end = 1 A = rand() B = rand() x =  linspace (start,end,N) y = A*x + B y +=  randn (N)/10 p =  polyfit (x,y,1) figure() title(' Regressao linear ') plot(x,y,' o ',label='A=%.2f, B=%.2f' % (A,B)) plot(x,polyval(p,x),'-',label= 'A =%.2f,  B= %.2f' % tuple(p)) legend(loc=' bes t') show() Um exemplo comum é fazer uma  regressão linear  (muito utilizado nas atividades práticas de física)  $   python reglin.py
 
Lá pela metade do curso novidades que irão refinar seu conhecimento aprendido na base.  Design Patterns Banco de Dados Redes Sistemas Operacionais
Design Patterns Sua utilização na maioria dos casos será intuitiva, o quanto antes você se acostumar com a prática melhor será seu código. Os padrões de desenvolvimento são utilizados em programas que utilizam Interface Gráfica, acesso a Banco de Dados, ... Mas também em código estruturais, como o  kernel .
Sistemas Operacionais Os livros tradicionais que abordam S.O são teóricos, abordam o conceito mas  não  a prática. O  kernel  Linux ao longo do tempo foi sendo aprimorado, são boas fontes de informação: ,[object Object]
Documentation/
Linux Kernel Maillist (lkml)
Livro: Linux Kernel Development
(Robert Love)
Livro: Essencial Linux Device Drivers
(Sreekrishnan Venkateswaran)
Banco de Dados Conheçer os  wrappers  de acesso, novamente o Python é um começo. MySQL  é um bom começo, mas infelizmente a industria é voltada  também as soluções proprietárias BD orientado a objeto é uma promessa.

Mais conteúdo relacionado

Mais procurados

Trabalho de Paradigmas Da Linguagem De Programação - Python
Trabalho de Paradigmas Da Linguagem De Programação - PythonTrabalho de Paradigmas Da Linguagem De Programação - Python
Trabalho de Paradigmas Da Linguagem De Programação - PythonJanderson Campêlo
 
Matando o Java e Mostrando o Python
Matando o Java e Mostrando o PythonMatando o Java e Mostrando o Python
Matando o Java e Mostrando o Python
Osvaldo Santana Neto
 
Python para Programadores
Python para ProgramadoresPython para Programadores
Python para Programadores
Osvaldo Santana Neto
 
Linguagens de Script: Caso de Estudo Lua
Linguagens de Script: Caso de Estudo LuaLinguagens de Script: Caso de Estudo Lua
Linguagens de Script: Caso de Estudo LuaSérgio Souza Costa
 
Grafos - Uma abordagem divertida - Latinoware 2014
Grafos - Uma abordagem divertida - Latinoware 2014Grafos - Uma abordagem divertida - Latinoware 2014
Grafos - Uma abordagem divertida - Latinoware 2014
Christiano Anderson
 
Python, CPython, Pythonico, Cython
Python, CPython, Pythonico, CythonPython, CPython, Pythonico, Cython
Python, CPython, Pythonico, Cython
Marcos Aurelio Barranco
 
Linguagem c wellington telles - aula 02
Linguagem c   wellington telles - aula 02Linguagem c   wellington telles - aula 02
Linguagem c wellington telles - aula 02
profwtelles
 
00011
0001100011
Linguagem de Programação Java
Linguagem de Programação JavaLinguagem de Programação Java
Linguagem de Programação Java
thomasdacosta
 
Python 3k
Python 3kPython 3k
Programação Estruturada 2 - Curso Completo
Programação Estruturada 2 - Curso CompletoProgramação Estruturada 2 - Curso Completo
Programação Estruturada 2 - Curso Completo
thomasdacosta
 
Programação Concorrente - Aula 02
Programação Concorrente - Aula 02Programação Concorrente - Aula 02
Programação Concorrente - Aula 02
thomasdacosta
 
Tutorial pascal zim
Tutorial pascal zimTutorial pascal zim
Tutorial pascal zim12anogolega
 
Apresentando a Linguagem de Programação Python
Apresentando a Linguagem de Programação PythonApresentando a Linguagem de Programação Python
Apresentando a Linguagem de Programação Python
Priscila Mayumi
 
Melhorias na interface do Management Studio
Melhorias na interface do Management StudioMelhorias na interface do Management Studio
Melhorias na interface do Management Studio
pichiliani
 
Introdução a linguagem Python
Introdução a linguagem PythonIntrodução a linguagem Python
Introdução a linguagem Python
Luciano Ramalho
 
000
000000
Estrdado materia-06-alocacao-de-memoria1
Estrdado materia-06-alocacao-de-memoria1Estrdado materia-06-alocacao-de-memoria1
Estrdado materia-06-alocacao-de-memoria1
Ensdo
 

Mais procurados (19)

Trabalho de Paradigmas Da Linguagem De Programação - Python
Trabalho de Paradigmas Da Linguagem De Programação - PythonTrabalho de Paradigmas Da Linguagem De Programação - Python
Trabalho de Paradigmas Da Linguagem De Programação - Python
 
Matando o Java e Mostrando o Python
Matando o Java e Mostrando o PythonMatando o Java e Mostrando o Python
Matando o Java e Mostrando o Python
 
Python para Programadores
Python para ProgramadoresPython para Programadores
Python para Programadores
 
Linguagens de Script: Caso de Estudo Lua
Linguagens de Script: Caso de Estudo LuaLinguagens de Script: Caso de Estudo Lua
Linguagens de Script: Caso de Estudo Lua
 
Grafos - Uma abordagem divertida - Latinoware 2014
Grafos - Uma abordagem divertida - Latinoware 2014Grafos - Uma abordagem divertida - Latinoware 2014
Grafos - Uma abordagem divertida - Latinoware 2014
 
Python, CPython, Pythonico, Cython
Python, CPython, Pythonico, CythonPython, CPython, Pythonico, Cython
Python, CPython, Pythonico, Cython
 
Linguagem c wellington telles - aula 02
Linguagem c   wellington telles - aula 02Linguagem c   wellington telles - aula 02
Linguagem c wellington telles - aula 02
 
00011
0001100011
00011
 
Linguagem de Programação Java
Linguagem de Programação JavaLinguagem de Programação Java
Linguagem de Programação Java
 
Python 3k
Python 3kPython 3k
Python 3k
 
Programação Estruturada 2 - Curso Completo
Programação Estruturada 2 - Curso CompletoProgramação Estruturada 2 - Curso Completo
Programação Estruturada 2 - Curso Completo
 
Programação Concorrente - Aula 02
Programação Concorrente - Aula 02Programação Concorrente - Aula 02
Programação Concorrente - Aula 02
 
Tutorial pascal zim
Tutorial pascal zimTutorial pascal zim
Tutorial pascal zim
 
Apresentando a Linguagem de Programação Python
Apresentando a Linguagem de Programação PythonApresentando a Linguagem de Programação Python
Apresentando a Linguagem de Programação Python
 
Melhorias na interface do Management Studio
Melhorias na interface do Management StudioMelhorias na interface do Management Studio
Melhorias na interface do Management Studio
 
Introdução a linguagem Python
Introdução a linguagem PythonIntrodução a linguagem Python
Introdução a linguagem Python
 
Estruturas
EstruturasEstruturas
Estruturas
 
000
000000
000
 
Estrdado materia-06-alocacao-de-memoria1
Estrdado materia-06-alocacao-de-memoria1Estrdado materia-06-alocacao-de-memoria1
Estrdado materia-06-alocacao-de-memoria1
 

Semelhante a Calourada2010

Aprenda a programar-luciano_ramalho
Aprenda a programar-luciano_ramalhoAprenda a programar-luciano_ramalho
Aprenda a programar-luciano_ramalhoFelipeDi
 
Aprenda a programar-luciano_ramalho
Aprenda a programar-luciano_ramalhoAprenda a programar-luciano_ramalho
Aprenda a programar-luciano_ramalho
Weldir Fernando Dias
 
Cartilha de R para Estatística e Data Science.pdf
Cartilha de R para Estatística e Data Science.pdfCartilha de R para Estatística e Data Science.pdf
Cartilha de R para Estatística e Data Science.pdf
Edkallenn Lima
 
Aprenda a programar-luciano_ramalho
Aprenda a programar-luciano_ramalhoAprenda a programar-luciano_ramalho
Aprenda a programar-luciano_ramalho
andreluizlugon
 
Aula de C para Linux
Aula de C para LinuxAula de C para Linux
Aula de C para Linux
Chris x-MS
 
Aprenda a programar-luciano_ramalho
Aprenda a programar-luciano_ramalhoAprenda a programar-luciano_ramalho
Aprenda a programar-luciano_ramalho
Ubirajara Cavaco
 
Introdução à Linguagem de Programação C
Introdução à Linguagem de Programação CIntrodução à Linguagem de Programação C
Introdução à Linguagem de Programação C
Jose Augusto Cintra
 
Aprenda a programar python
Aprenda a programar pythonAprenda a programar python
Aprenda a programar python
Lourenço Junior
 
Algoritmia para o site do 10gi marcelo e ricardo
Algoritmia para o site do 10gi marcelo e ricardoAlgoritmia para o site do 10gi marcelo e ricardo
Algoritmia para o site do 10gi marcelo e ricardozedaesquina98
 
Linguagem Python
Linguagem PythonLinguagem Python
Linguagem Python
Alexandre Machado
 
Apostila c++ básico (1)
Apostila c++ básico (1)Apostila c++ básico (1)
Apostila c++ básico (1)
Alexsandro Santos
 
Apostila C++ Básico - UNIVERSIDADE ESTADUAL PAULISTA “JÚLIO DE MESQUITA FILHO”
Apostila C++ Básico - UNIVERSIDADE ESTADUAL PAULISTA “JÚLIO DE MESQUITA FILHO”Apostila C++ Básico - UNIVERSIDADE ESTADUAL PAULISTA “JÚLIO DE MESQUITA FILHO”
Apostila C++ Básico - UNIVERSIDADE ESTADUAL PAULISTA “JÚLIO DE MESQUITA FILHO”
Kratos879
 
Aula 01 python
Aula 01 pythonAula 01 python
Aula 01 python
Tiago
 
Visualg
VisualgVisualg
Visualg 1231617089791929-2
Visualg 1231617089791929-2Visualg 1231617089791929-2
Visualg 1231617089791929-2
jaoozinhoqi123
 
Python No Terra (2006-12-21)
Python No Terra  (2006-12-21)Python No Terra  (2006-12-21)
Python No Terra (2006-12-21)
Rudá Moura
 
PDF.pdf
PDF.pdfPDF.pdf
PDF.pdf
Diogo Silva
 
Introdução a Linguagem C
Introdução a Linguagem CIntrodução a Linguagem C
Introdução a Linguagem CVê Rodrigues
 

Semelhante a Calourada2010 (20)

Aprenda a programar-luciano_ramalho
Aprenda a programar-luciano_ramalhoAprenda a programar-luciano_ramalho
Aprenda a programar-luciano_ramalho
 
Aprenda a programar-luciano_ramalho
Aprenda a programar-luciano_ramalhoAprenda a programar-luciano_ramalho
Aprenda a programar-luciano_ramalho
 
Cartilha de R para Estatística e Data Science.pdf
Cartilha de R para Estatística e Data Science.pdfCartilha de R para Estatística e Data Science.pdf
Cartilha de R para Estatística e Data Science.pdf
 
Aprenda a programar-luciano_ramalho
Aprenda a programar-luciano_ramalhoAprenda a programar-luciano_ramalho
Aprenda a programar-luciano_ramalho
 
Aula de C para Linux
Aula de C para LinuxAula de C para Linux
Aula de C para Linux
 
Aprenda a programar-luciano_ramalho
Aprenda a programar-luciano_ramalhoAprenda a programar-luciano_ramalho
Aprenda a programar-luciano_ramalho
 
Introdução à Linguagem de Programação C
Introdução à Linguagem de Programação CIntrodução à Linguagem de Programação C
Introdução à Linguagem de Programação C
 
Apostila de dev
Apostila de devApostila de dev
Apostila de dev
 
Aprenda a programar python
Aprenda a programar pythonAprenda a programar python
Aprenda a programar python
 
Algoritmia para o site do 10gi marcelo e ricardo
Algoritmia para o site do 10gi marcelo e ricardoAlgoritmia para o site do 10gi marcelo e ricardo
Algoritmia para o site do 10gi marcelo e ricardo
 
Linguagem Python
Linguagem PythonLinguagem Python
Linguagem Python
 
Apostila c++ básico (1)
Apostila c++ básico (1)Apostila c++ básico (1)
Apostila c++ básico (1)
 
Apostila C++ Básico - UNIVERSIDADE ESTADUAL PAULISTA “JÚLIO DE MESQUITA FILHO”
Apostila C++ Básico - UNIVERSIDADE ESTADUAL PAULISTA “JÚLIO DE MESQUITA FILHO”Apostila C++ Básico - UNIVERSIDADE ESTADUAL PAULISTA “JÚLIO DE MESQUITA FILHO”
Apostila C++ Básico - UNIVERSIDADE ESTADUAL PAULISTA “JÚLIO DE MESQUITA FILHO”
 
Apostila c++ básico
Apostila c++ básicoApostila c++ básico
Apostila c++ básico
 
Aula 01 python
Aula 01 pythonAula 01 python
Aula 01 python
 
Visualg
VisualgVisualg
Visualg
 
Visualg 1231617089791929-2
Visualg 1231617089791929-2Visualg 1231617089791929-2
Visualg 1231617089791929-2
 
Python No Terra (2006-12-21)
Python No Terra  (2006-12-21)Python No Terra  (2006-12-21)
Python No Terra (2006-12-21)
 
PDF.pdf
PDF.pdfPDF.pdf
PDF.pdf
 
Introdução a Linguagem C
Introdução a Linguagem CIntrodução a Linguagem C
Introdução a Linguagem C
 

Mais de Tiago Maluta

Leite de Soja
Leite de SojaLeite de Soja
Leite de Soja
Tiago Maluta
 
td
tdtd
Hardware Open Source
Hardware Open SourceHardware Open Source
Hardware Open Source
Tiago Maluta
 
Internet e o Genero Textual
Internet e o Genero TextualInternet e o Genero Textual
Internet e o Genero Textual
Tiago Maluta
 
Consideracoes sobre Ética e Computação
Consideracoes sobre Ética e ComputaçãoConsideracoes sobre Ética e Computação
Consideracoes sobre Ética e Computação
Tiago Maluta
 
A internet colaborativa e o Software Livre
A internet colaborativa e o Software LivreA internet colaborativa e o Software Livre
A internet colaborativa e o Software Livre
Tiago Maluta
 

Mais de Tiago Maluta (6)

Leite de Soja
Leite de SojaLeite de Soja
Leite de Soja
 
td
tdtd
td
 
Hardware Open Source
Hardware Open SourceHardware Open Source
Hardware Open Source
 
Internet e o Genero Textual
Internet e o Genero TextualInternet e o Genero Textual
Internet e o Genero Textual
 
Consideracoes sobre Ética e Computação
Consideracoes sobre Ética e ComputaçãoConsideracoes sobre Ética e Computação
Consideracoes sobre Ética e Computação
 
A internet colaborativa e o Software Livre
A internet colaborativa e o Software LivreA internet colaborativa e o Software Livre
A internet colaborativa e o Software Livre
 

Último

Atividade - Letra da música "Tem Que Sorrir" - Jorge e Mateus
Atividade - Letra da música "Tem Que Sorrir"  - Jorge e MateusAtividade - Letra da música "Tem Que Sorrir"  - Jorge e Mateus
Atividade - Letra da música "Tem Que Sorrir" - Jorge e Mateus
Mary Alvarenga
 
MAIO LARANJA EU DEFENDO AS CRIANÇAS E ADOLESCENTES
MAIO LARANJA EU DEFENDO AS CRIANÇAS E ADOLESCENTESMAIO LARANJA EU DEFENDO AS CRIANÇAS E ADOLESCENTES
MAIO LARANJA EU DEFENDO AS CRIANÇAS E ADOLESCENTES
estermidiasaldanhada
 
Eurodeputados Portugueses 2019-2024 (nova atualização)
Eurodeputados Portugueses 2019-2024 (nova atualização)Eurodeputados Portugueses 2019-2024 (nova atualização)
Eurodeputados Portugueses 2019-2024 (nova atualização)
Centro Jacques Delors
 
Arundhati Roy - O Deus das Pequenas Coisas - ÍNDIA.pdf
Arundhati Roy - O Deus das Pequenas Coisas - ÍNDIA.pdfArundhati Roy - O Deus das Pequenas Coisas - ÍNDIA.pdf
Arundhati Roy - O Deus das Pequenas Coisas - ÍNDIA.pdf
Ana Da Silva Ponce
 
"Está o lascivo e doce passarinho " de Luís Vaz de Camões
"Está o lascivo e   doce passarinho " de Luís Vaz de Camões"Está o lascivo e   doce passarinho " de Luís Vaz de Camões
"Está o lascivo e doce passarinho " de Luís Vaz de Camões
goncalopecurto
 
AULA-8-PARTE-2-MODELO-DE-SITE-EDITÁVEL-ENTREGA2-CURRICULARIZAÇÃO-DA-EXTENSÃO-...
AULA-8-PARTE-2-MODELO-DE-SITE-EDITÁVEL-ENTREGA2-CURRICULARIZAÇÃO-DA-EXTENSÃO-...AULA-8-PARTE-2-MODELO-DE-SITE-EDITÁVEL-ENTREGA2-CURRICULARIZAÇÃO-DA-EXTENSÃO-...
AULA-8-PARTE-2-MODELO-DE-SITE-EDITÁVEL-ENTREGA2-CURRICULARIZAÇÃO-DA-EXTENSÃO-...
CrislaineSouzaSantos
 
PROVA FINAL Filosofia e Educação Cristã.ppt
PROVA FINAL Filosofia e Educação Cristã.pptPROVA FINAL Filosofia e Educação Cristã.ppt
PROVA FINAL Filosofia e Educação Cristã.ppt
betokg
 
Slides Lição 9, Central Gospel, As Bodas Do Cordeiro, 1Tr24.pptx
Slides Lição 9, Central Gospel, As Bodas Do Cordeiro, 1Tr24.pptxSlides Lição 9, Central Gospel, As Bodas Do Cordeiro, 1Tr24.pptx
Slides Lição 9, Central Gospel, As Bodas Do Cordeiro, 1Tr24.pptx
LuizHenriquedeAlmeid6
 
CIDADANIA E PROFISSIONALIDADE 4 - PROCESSOS IDENTITÁRIOS.pptx
CIDADANIA E PROFISSIONALIDADE 4 - PROCESSOS IDENTITÁRIOS.pptxCIDADANIA E PROFISSIONALIDADE 4 - PROCESSOS IDENTITÁRIOS.pptx
CIDADANIA E PROFISSIONALIDADE 4 - PROCESSOS IDENTITÁRIOS.pptx
MariaSantos298247
 
2021-7o-ano-PPt-Oracoes-coordenadas..pptx
2021-7o-ano-PPt-Oracoes-coordenadas..pptx2021-7o-ano-PPt-Oracoes-coordenadas..pptx
2021-7o-ano-PPt-Oracoes-coordenadas..pptx
BarbaraBeatriz15
 
o que está acontecendo no Rio grande do Sul
o que está acontecendo no Rio grande do Sulo que está acontecendo no Rio grande do Sul
o que está acontecendo no Rio grande do Sul
CarlaInsStaub
 
Slides Lição 9, Betel, Ordenança para uma vida de santificação, 2Tr24.pptx
Slides Lição 9, Betel, Ordenança para uma vida de santificação, 2Tr24.pptxSlides Lição 9, Betel, Ordenança para uma vida de santificação, 2Tr24.pptx
Slides Lição 9, Betel, Ordenança para uma vida de santificação, 2Tr24.pptx
LuizHenriquedeAlmeid6
 
Slides Lição 10, CPAD, Desenvolvendo uma Consciência de Santidade, 2Tr24.pptx
Slides Lição 10, CPAD, Desenvolvendo uma Consciência de Santidade, 2Tr24.pptxSlides Lição 10, CPAD, Desenvolvendo uma Consciência de Santidade, 2Tr24.pptx
Slides Lição 10, CPAD, Desenvolvendo uma Consciência de Santidade, 2Tr24.pptx
LuizHenriquedeAlmeid6
 
Roteiro para análise do Livro Didático .pptx
Roteiro para análise do Livro Didático .pptxRoteiro para análise do Livro Didático .pptx
Roteiro para análise do Livro Didático .pptx
pamellaaraujo10
 
HISTÓRIA DO CEARÁ MOVIMENTOS REVOLUCIONARIOS NO CEARÁ.pptx
HISTÓRIA DO CEARÁ MOVIMENTOS REVOLUCIONARIOS NO CEARÁ.pptxHISTÓRIA DO CEARÁ MOVIMENTOS REVOLUCIONARIOS NO CEARÁ.pptx
HISTÓRIA DO CEARÁ MOVIMENTOS REVOLUCIONARIOS NO CEARÁ.pptx
WALTERDECARVALHOBRAG
 
Aula 3- 6º HIS - As origens da humanidade, seus deslocamentos e os processos ...
Aula 3- 6º HIS - As origens da humanidade, seus deslocamentos e os processos ...Aula 3- 6º HIS - As origens da humanidade, seus deslocamentos e os processos ...
Aula 3- 6º HIS - As origens da humanidade, seus deslocamentos e os processos ...
Luana Neres
 
Caderno de Resumos XVIII ENPFil UFU, IX EPGFil UFU E VII EPFEM.pdf
Caderno de Resumos XVIII ENPFil UFU, IX EPGFil UFU E VII EPFEM.pdfCaderno de Resumos XVIII ENPFil UFU, IX EPGFil UFU E VII EPFEM.pdf
Caderno de Resumos XVIII ENPFil UFU, IX EPGFil UFU E VII EPFEM.pdf
enpfilosofiaufu
 
LIÇÃO 9 - ORDENANÇAS PARA UMA VIDA DE SANTIFICAÇÃO.pptx
LIÇÃO 9 - ORDENANÇAS PARA UMA VIDA DE SANTIFICAÇÃO.pptxLIÇÃO 9 - ORDENANÇAS PARA UMA VIDA DE SANTIFICAÇÃO.pptx
LIÇÃO 9 - ORDENANÇAS PARA UMA VIDA DE SANTIFICAÇÃO.pptx
WelidaFreitas1
 
Aproveitando as ferramentas do Tableau para criatividade e produtividade
Aproveitando as ferramentas do Tableau para criatividade e produtividadeAproveitando as ferramentas do Tableau para criatividade e produtividade
Aproveitando as ferramentas do Tableau para criatividade e produtividade
Ligia Galvão
 
Projeto aLeR+ o Ambiente - Os animais são nossos amigos.pdf
Projeto aLeR+ o Ambiente - Os animais são nossos amigos.pdfProjeto aLeR+ o Ambiente - Os animais são nossos amigos.pdf
Projeto aLeR+ o Ambiente - Os animais são nossos amigos.pdf
Bibliotecas Infante D. Henrique
 

Último (20)

Atividade - Letra da música "Tem Que Sorrir" - Jorge e Mateus
Atividade - Letra da música "Tem Que Sorrir"  - Jorge e MateusAtividade - Letra da música "Tem Que Sorrir"  - Jorge e Mateus
Atividade - Letra da música "Tem Que Sorrir" - Jorge e Mateus
 
MAIO LARANJA EU DEFENDO AS CRIANÇAS E ADOLESCENTES
MAIO LARANJA EU DEFENDO AS CRIANÇAS E ADOLESCENTESMAIO LARANJA EU DEFENDO AS CRIANÇAS E ADOLESCENTES
MAIO LARANJA EU DEFENDO AS CRIANÇAS E ADOLESCENTES
 
Eurodeputados Portugueses 2019-2024 (nova atualização)
Eurodeputados Portugueses 2019-2024 (nova atualização)Eurodeputados Portugueses 2019-2024 (nova atualização)
Eurodeputados Portugueses 2019-2024 (nova atualização)
 
Arundhati Roy - O Deus das Pequenas Coisas - ÍNDIA.pdf
Arundhati Roy - O Deus das Pequenas Coisas - ÍNDIA.pdfArundhati Roy - O Deus das Pequenas Coisas - ÍNDIA.pdf
Arundhati Roy - O Deus das Pequenas Coisas - ÍNDIA.pdf
 
"Está o lascivo e doce passarinho " de Luís Vaz de Camões
"Está o lascivo e   doce passarinho " de Luís Vaz de Camões"Está o lascivo e   doce passarinho " de Luís Vaz de Camões
"Está o lascivo e doce passarinho " de Luís Vaz de Camões
 
AULA-8-PARTE-2-MODELO-DE-SITE-EDITÁVEL-ENTREGA2-CURRICULARIZAÇÃO-DA-EXTENSÃO-...
AULA-8-PARTE-2-MODELO-DE-SITE-EDITÁVEL-ENTREGA2-CURRICULARIZAÇÃO-DA-EXTENSÃO-...AULA-8-PARTE-2-MODELO-DE-SITE-EDITÁVEL-ENTREGA2-CURRICULARIZAÇÃO-DA-EXTENSÃO-...
AULA-8-PARTE-2-MODELO-DE-SITE-EDITÁVEL-ENTREGA2-CURRICULARIZAÇÃO-DA-EXTENSÃO-...
 
PROVA FINAL Filosofia e Educação Cristã.ppt
PROVA FINAL Filosofia e Educação Cristã.pptPROVA FINAL Filosofia e Educação Cristã.ppt
PROVA FINAL Filosofia e Educação Cristã.ppt
 
Slides Lição 9, Central Gospel, As Bodas Do Cordeiro, 1Tr24.pptx
Slides Lição 9, Central Gospel, As Bodas Do Cordeiro, 1Tr24.pptxSlides Lição 9, Central Gospel, As Bodas Do Cordeiro, 1Tr24.pptx
Slides Lição 9, Central Gospel, As Bodas Do Cordeiro, 1Tr24.pptx
 
CIDADANIA E PROFISSIONALIDADE 4 - PROCESSOS IDENTITÁRIOS.pptx
CIDADANIA E PROFISSIONALIDADE 4 - PROCESSOS IDENTITÁRIOS.pptxCIDADANIA E PROFISSIONALIDADE 4 - PROCESSOS IDENTITÁRIOS.pptx
CIDADANIA E PROFISSIONALIDADE 4 - PROCESSOS IDENTITÁRIOS.pptx
 
2021-7o-ano-PPt-Oracoes-coordenadas..pptx
2021-7o-ano-PPt-Oracoes-coordenadas..pptx2021-7o-ano-PPt-Oracoes-coordenadas..pptx
2021-7o-ano-PPt-Oracoes-coordenadas..pptx
 
o que está acontecendo no Rio grande do Sul
o que está acontecendo no Rio grande do Sulo que está acontecendo no Rio grande do Sul
o que está acontecendo no Rio grande do Sul
 
Slides Lição 9, Betel, Ordenança para uma vida de santificação, 2Tr24.pptx
Slides Lição 9, Betel, Ordenança para uma vida de santificação, 2Tr24.pptxSlides Lição 9, Betel, Ordenança para uma vida de santificação, 2Tr24.pptx
Slides Lição 9, Betel, Ordenança para uma vida de santificação, 2Tr24.pptx
 
Slides Lição 10, CPAD, Desenvolvendo uma Consciência de Santidade, 2Tr24.pptx
Slides Lição 10, CPAD, Desenvolvendo uma Consciência de Santidade, 2Tr24.pptxSlides Lição 10, CPAD, Desenvolvendo uma Consciência de Santidade, 2Tr24.pptx
Slides Lição 10, CPAD, Desenvolvendo uma Consciência de Santidade, 2Tr24.pptx
 
Roteiro para análise do Livro Didático .pptx
Roteiro para análise do Livro Didático .pptxRoteiro para análise do Livro Didático .pptx
Roteiro para análise do Livro Didático .pptx
 
HISTÓRIA DO CEARÁ MOVIMENTOS REVOLUCIONARIOS NO CEARÁ.pptx
HISTÓRIA DO CEARÁ MOVIMENTOS REVOLUCIONARIOS NO CEARÁ.pptxHISTÓRIA DO CEARÁ MOVIMENTOS REVOLUCIONARIOS NO CEARÁ.pptx
HISTÓRIA DO CEARÁ MOVIMENTOS REVOLUCIONARIOS NO CEARÁ.pptx
 
Aula 3- 6º HIS - As origens da humanidade, seus deslocamentos e os processos ...
Aula 3- 6º HIS - As origens da humanidade, seus deslocamentos e os processos ...Aula 3- 6º HIS - As origens da humanidade, seus deslocamentos e os processos ...
Aula 3- 6º HIS - As origens da humanidade, seus deslocamentos e os processos ...
 
Caderno de Resumos XVIII ENPFil UFU, IX EPGFil UFU E VII EPFEM.pdf
Caderno de Resumos XVIII ENPFil UFU, IX EPGFil UFU E VII EPFEM.pdfCaderno de Resumos XVIII ENPFil UFU, IX EPGFil UFU E VII EPFEM.pdf
Caderno de Resumos XVIII ENPFil UFU, IX EPGFil UFU E VII EPFEM.pdf
 
LIÇÃO 9 - ORDENANÇAS PARA UMA VIDA DE SANTIFICAÇÃO.pptx
LIÇÃO 9 - ORDENANÇAS PARA UMA VIDA DE SANTIFICAÇÃO.pptxLIÇÃO 9 - ORDENANÇAS PARA UMA VIDA DE SANTIFICAÇÃO.pptx
LIÇÃO 9 - ORDENANÇAS PARA UMA VIDA DE SANTIFICAÇÃO.pptx
 
Aproveitando as ferramentas do Tableau para criatividade e produtividade
Aproveitando as ferramentas do Tableau para criatividade e produtividadeAproveitando as ferramentas do Tableau para criatividade e produtividade
Aproveitando as ferramentas do Tableau para criatividade e produtividade
 
Projeto aLeR+ o Ambiente - Os animais são nossos amigos.pdf
Projeto aLeR+ o Ambiente - Os animais são nossos amigos.pdfProjeto aLeR+ o Ambiente - Os animais são nossos amigos.pdf
Projeto aLeR+ o Ambiente - Os animais são nossos amigos.pdf
 

Calourada2010

  • 1. Software Livre dentro das possibilidades acadêmicas
  • 2. Tudo tem um começo...
  • 3. E um fim que queremos evitar... Head Hunter 5 anos pra isso?
  • 4. A universidade é um espaço para aprender e experimentar...
  • 5. Mas com pouco tempo de aula vão perceber... Queria achar uma coisa legal p/ fazer.... Já passou em Cálculo?
  • 6. Mostrar como o Sofware Livre pode ajudar a entender algumas matérias na graduação e como isso pode te ajudar no futuro.
  • 7. Antes de focarmos em argumentos técnicos, precisamos compreender o conceito sobre as liberdades essenciais para um sofware ser considerado livre. 0. A liberdade para executar o programa, para qualquer propósito 1. A liberdade de estudar como o programa funciona, e adaptá-lo para as suas necessidades 2. A liberdade de redistribuir, inclusive vender, cópias de modo que você possa ajudar ao seu próximo 3. A liberdade de modificar o programa , e liberar estas modificações, de modo que toda a comunidade se beneficie
  • 8. E toda jornada tem um começo... É preciso andar por onde a estrada vai de modo a unir o que você aprende dentro da universidade com o que é praticado fora dela.
  • 9. A lista de áreas não é pequena... ...nem as soluções oferecidas. FPGA, SoC, .. . Dataware House Banco de Dados Sistemas Embarcados Compiladores Virtualização Jogos Simulação Web Escalabilidade Sistemas de comunicação Sistemas Operacionais RTOS Arquitetura de Processadores CAD Drivers Office* Servidores GUI
  • 10. Como eu posso começar então?
  • 11. A primeira parte diz respeito a familiarização com as ferramentas básicas.
  • 12. Pré-requisito 1) Instalar alguma distribuição GNU/Linux. 2) Se familiarizar com a interface da linha de comando.
  • 13.
  • 15. Programação Orientada a Objeto (POO) A primeira coisa é um compilador para executar seus testes. Vale a pena estudar e conhecer as opções do GCC . A segunda coisa é um depurador para executar seus testes. Vale a pena estudar e conhecer as opções do GDB .
  • 16. G NU C ompiler C ollection gcc exemplo.c -o exemplo.exe Executável do compilador (gcc ou g++) Código-fonte (lembre-se da extensão) Este parâmetro idica um nome de saída, se nada for definido o padrão é a.out Arquivo de saída
  • 17. G NU C ompiler C ollection gcc -Wall -ggdb exemplo.c -o exemplo.exe Habilita todas as warnings que alguns usuários consideram questionáveis e que são fáceis de evitar (ou modificar para previnir) Gera as informações de debug para o GDB
  • 18. #include <stdio.h> int main(int argc, char *argv[]) { printf(“Olá Mundo!”); return 0; } $ gcc -Wall -ggdb exemplo.c -o exemplo.exe $ ./exemplo.exe Olá Mundo! Compilar o programa: E executar o código:
  • 19. E se alguma coisa der errado? Se você rodar o programa e ele não funcionar da forma como você pretendia?
  • 20. G NU D e b ugger gdb exemplo.exe Executável do depurador Arquivo executável (ELF)
  • 21. $ gdb -q exemplo.exe Reading symbols from /home/maluta/exemplo.exe...done. G NU D e b ugger (gdb) l 1 #include <stdio.h> 2 3 int main(int argc, char *argv[]) { 4 5 6 printf(&quot;Olá Mundo!&quot;); 7 return 0; 8 } (gdb) r Starting program: /home/maluta/exemplo.exe Olá Mundo! http://www.coding.com.br/programacao/basico-de-ponteiros-com-o-gdb/
  • 22. Além disso é preciso entender ferramentas que não se aprendem na escola...
  • 23. Dominar algum software que faça o controle de versão do seu código. Existem vários, vale a pena entender pelo menos: GIT [git] Mercurial [hg] Bazaar [bzr] Dominar algum software que faça a automatização na construção do seu executável. Existem vários, vale a pena entender pelo menos: autotools cmake scons
  • 24. Python Bônus ex. Parser Visualização
  • 25. # -*- coding: utf-8 -*- from pylab import * N = 100 start = 0 end = 1 A = rand() B = rand() x = linspace (start,end,N) y = A*x + B y += randn (N)/10 p = polyfit (x,y,1) figure() title(' Regressao linear ') plot(x,y,' o ',label='A=%.2f, B=%.2f' % (A,B)) plot(x,polyval(p,x),'-',label= 'A =%.2f, B= %.2f' % tuple(p)) legend(loc=' bes t') show() Um exemplo comum é fazer uma regressão linear (muito utilizado nas atividades práticas de física) $ python reglin.py
  • 26.  
  • 27. Lá pela metade do curso novidades que irão refinar seu conhecimento aprendido na base. Design Patterns Banco de Dados Redes Sistemas Operacionais
  • 28. Design Patterns Sua utilização na maioria dos casos será intuitiva, o quanto antes você se acostumar com a prática melhor será seu código. Os padrões de desenvolvimento são utilizados em programas que utilizam Interface Gráfica, acesso a Banco de Dados, ... Mas também em código estruturais, como o kernel .
  • 29.
  • 32. Livro: Linux Kernel Development
  • 34. Livro: Essencial Linux Device Drivers
  • 36. Banco de Dados Conheçer os wrappers de acesso, novamente o Python é um começo. MySQL é um bom começo, mas infelizmente a industria é voltada também as soluções proprietárias BD orientado a objeto é uma promessa.
  • 37. Redes Primeiro terreno que o Linux se tornou popular. Servidor de páginas (ex:. Apache) Servidores de Impressão (ex.: CUPS) Servidores de Arquivos (ex.: proftpd) O NFS ( Network File System ) que além se ser uma das melhores maneiras de compartilhar arquivos é utilizado no desenvolvimento de sistemas embarcados e em algumas implementações de clusters . O 9P ( Plan 9 Filesystem Protocol ) utilizado no Plan9 O sistemas distribuídos criaram situações onde outras soluções foram propostas, No âmbito geral conhecer CORBA e o D-BUS Servidores de Email (ex.: postfix)
  • 38. Tem muitas coisa para nos manter entretidos... E olha que faltou falar de muita coisa...
  • 40. A universidade vai te ensinar pouca coisa sobre software livre.
  • 41. Tente aliar os dois lados: matérias vs. aprendizado prático
  • 42. Tenha o espírito hacker.
  • 43. Tenha paciência, não é do dia p/ noite que você vai entender as coisas.
  • 44. www.twitter.com/maluta Obrigado pela atenção www.coding.com.br Tiago Maluta Imagens utilizadas em http://www.flickr.com/photos/st3f4n/sets/72157616350171741/