Workshop de Ferramentas Computacionais – Maio de 2015

By: Abel Soares Siqueira

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 pelo terminal ou console no seu sistema. Quando ele abrir,
      digite

      bash --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 fazendo

      git --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ém Version 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 pacote language-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.