Re-posted from: http://abelsiqueira.github.io/workshop-2015-05-30
Sobre
No dia 30 de Maio de 2015 acontecerá uma Oficina de Ferramentas Computacionais
para Pesquisadores.
Essa oficina será focada em três ferramentas básicas para desenvolvimento de
software:
- Bash
- Git
- Julia
O Bash é o terminal tradicinal dos sistemas GNU/Linux (a tela preta).
As possibilidades de uso são ilimitadas, mas vamos focar no básico,
tentando chegar até a criação de um script simples.
O Git é uma ferramenta para controlar versões de softwares e outros arquivos.
Você consegue guardar versões anteriores dos seus arquivos, assim como versões
alternativas, com uma estrutura escondida que melhora a organização e o design.
Ela é usada principalmente para controle de versões de software, permitindo que
cada programador saiba o que foi feito por quem e quando, mas também pode ser
utilizado para controle de versões de artigos, teses e apresentações.
O modelo de tese do IMECC – UNICAMP
usa o Git, e este site está armazenado usando o
Git.
É uma das ferramentas principais para gerenciamento de versões, e muitos
projetos importantes o usam.
O Git pode ser usado apenas em seu computador, mas o uso comum envolve algum
servidor remoto (principalmente para colaboração). A oficina tentará mostrar um
pouco de cada.
Julia é uma nova linguagem de programação que tem o objetivo de ser rápido como
C/Fortran, permitindo uma interfaca simples entre C e Fortran, e com sintaxe
parecida com a de Matlab e Python.
Como é uma linguagem livre, acreditamos ser uma escolha melhor que o Matlab para
software livre.
Também é uma boa linguagem inicial por ser prática, e tem muito espaço para
expansão por nova.
Ministrantes
- Eu – Trabalho com GNU/Linux desde minha graduação,
e trabalho com software livre. Meus trabalhos individuais são de código
aberto, e acredito que esse é o caminho mais correto para o desenvolvimento
acadêmico. - Raniere Gaia – Estuda matemática aplicada na
Universidade Estadual de Campinas, e trabalha em alguns projetos de nível
internacional. Faz contribuições para Mozilla, e é um membro mantenedor do
Software Carpentry.
Requerimentos
Para participar da oficina voce precisa de um computador portátil
com alguns softwares instalados.
Idealmente, um computador com algum tipo Unix (Ubuntu, Fedora, OSX) é melhor
para o desenvolvimento na opinião do autor da página.
Veja
discussões.
Além disso, os instrutores não tem o conhecimento para dar suporte completo no
Windows (Aceitamos voluntários).
(Nota: Teremos alguns computadores com sistema operacional Windows disponíveis,
mas não teremos tempo para testar todos, ou instalar tudo que julgamos
essencial).
Softwares que você precisa
- Bash
-
No GNU/Linux, o Bash já deve estar instalado.
Procure peloterminal
ouconsole
no seu sistema. Quando ele abrir,
digitebash --version
Uma mensagem deve aparecer indicando qual versão está instalada.
-
No OSX, o terminal padrão também é o Bash. Você pode acessar pelo
/Applications/Utilities/
. Dica: coloque o terminal no dock. -
No Windows existem algumas opções,
uma delas é o Git Bash, que você já usa para o
Git também.
-
- Git
-
No Windows, instale o Git Bash, que falei
acima.
Nota: Uma das opções da instalações é sobre o fim de linha (line
ending). Escolha a opção de seguir o padrão Unix (ou algo parecido). -
No OSX, você pode instalar o Git para Mac baixando um instalador
aqui. -
Num computador tipo Unix, siga as instruções.
Teste que o git foi instalado fazendogit --version
no seu terminal.
-
-
Julia: Siga as instruções.
Para testar, verifique que o Julia foi instalado abrindo o terminal de
Julia, e verificando que o texto introdutório contémVersion 0.x.x
. - Um editor de texto, preferencialmente com suporte a UTF-8, código colorido
automaticamente, indentação automática e inclusão de espaços no lugar de
TAB. Existem algumas opções, e se você não tem preferência nenhuma, o
atom.io é um bom para começar. Se for usá-lo,
recomendamos buscar pelo pacotelanguage-julia
.
Certifique-se de ter essas ferramentas instaladas ANTES do evento. Entre em
contato em caso de dúvidas.
Inscrições
As inscrições estão fechadas. Caso tenha interesse em participar, me mande um
e-mail para confirmar se ainda temos vagas.
Cronograma
O evento acontecerá no dia 30 de Maio de 2015, seguindo o cronograma abaixo:
(Nota: Mudamos o horário de Julia para melhor acomodar o cronograma).
- 08:00 : Abertura
- 08:30 : Bash (com Raniere)
- 09:30 : Coffee Break
- 10:00 : Julia (com Abel)
- 11:30 : Almoço
- 13:30 : Git Local (com Abel)
- 15:00 : Coffee Break
- 15:30 : Git Remoto (com Raniere)
Local
Utilizaremos o Laboratório de Matemática e Desenho (LAMADE) no bloco PC, sala
PC12.