Find us on GitHub

SciPy Latin America

Mai 16-17, 2016

9:00am - 5:00pm

Instrutores: Raniere Silva

Ajudantes:

Selecione apenas o workshop da Software Carpentry.

Informações gerais

A missão da Software Carpentry é ajudar cientistas e engenheiros a serem mais produtivos com menos sofrimento ao ensinar práticas laboratoriais para computação científica. Esse workshop prático irá cobrir conceitos e ferramentas, incluindo design de programas, controle de versão, gerenciamento de dados e automação de tarefas. Participantes são encorajados a se ajudarem e aplicarem o que eles aprenderem em suas próprias pesquisas.

Para mais informações sobre o que ensinamos e porque, leia nosso artigo "Best Practices for Scientific Computing".

Quem: Este curso é destinado alunos de graduação, pós-graduação e outros pesquisadores. Você não precisa ter nenhum conhecimento prévio das ferramentas que serão apresentadas nesse workshop.

Onde: CIASC - Centro de Informática e Automação do Estado de Santa Catarina S.A. Rua Murilo Andriani, 327 - Bairro Itacorubi. Obtenha direções em OpenStreetMap ou Google Maps.

Requerimentos: Participantes devem trazer um notebook (preferencialmente aquele que usam diariamente) que possua Windows, Mac OS X ou GNU/Linux como sistema operacional (tablets, Chromebook e outros dispositivos similares não servirão) no qual possuam privilégios administrativos (no qual possam instalar novos programas). Participantes devem instalar no notebook que utilizarão os programas listados abaixo antes do início do workshop. Participantes também precisam aceitar o Código de Conduta. da Software Carpentry.

Acessibilidade: Estamos comprometidos em fazer o workshop acessível a todos. Os organizadores do workshop certificaram-se que

  • A sala é acessível por cadeira de rodas.
  • Existe banheiros adaptados para cadeirantes disponíveis.

Se pudermos facilitar seu aprendizado disponibilizando material impresso em fonte grande, interprete para linguagem de sinais, sala para amamentação, ... por favor entre em contato e tentaremos providenciar seu pedido.

Contato: Por favor, envie um email para raniere@rgaiacs.com com suas dúvidas.


Instrutores

Raniere Silva é bacharel em Matemática Aplicada pela Universidade de Campinas e trabalha na Universidade de Manchester como Research Software Specialist onde contribui com o Software Sustainable Institute.

Programação

Day 1

09:00 Automatizando tarefas com a Unix shell (com Raniere Silva)
11:30 Intervalo para almoço
13:00 Construindo programas com R (com Raniere Silva)
16:00 RMarkdown (com Raniere Silva)

Day 2

09:00 Controle de versão com Git (com Raniere Silva)
11:30 Intervalo para almoço
13:00 Colaboração no GitLab ou GitHub ou Bitbucket (com Raniere Silva)
14:00 Mais programas com R (com Raniere Silva)
16:00 Encerramento

Etherpad: https://pad.software-carpentry.org/2016-scipyla.
Iremos utilizar o Etherpad listado acima para chat, anotações e compartilhamento de links e pequenos pedaços de código.


Resumo

Unix Shell

  • Arquivos e diretórios
  • Histórico e tab completion
  • Pipes e redirecionamento
  • Laços sobre arquivo
  • Criando e executando shell scripts
  • Encontrando "coisas"
  • Referências...

Programação em R

  • Trabalhando com vetores e data frames
  • Lendo e visualizando dados
  • Criando e usando funções
  • Laços e condicionais
  • Usando R pela linha de comando
  • Referências...

Controle de versão com Git

  • Criação de repositórios
  • Salvando mudanças de arquivos: add, commit, ...
  • Visualizando mudanças: status, diff, ...
  • Ignorando arquivos
  • Trabalhando na internet: clone, pull, push, ...
  • Resolvendo conflitos
  • Licenças Abertas
  • Onde hospedar seu trabalho e porque
  • Referências...

Setup

Para participar de um workshop da Software Carpentry, você vai precisar dos seguintes programas instalados. Além dos softwares listados, você precisa de um navegador web atual.

Mantemos uma lista de problemas recorrentes que ocorrem durante a instalação como uma referência aos instrutores que pode ser útil na página wiki "Configuration Problems and Solutions".

Bash Shell

Bash é o terminal comumente utilizado. Utilizar um terminal lhe permite fazer tarefas mais complexas de forma mais rápida no seu computador.

Windows

Video Tutorial (em inglês)
  1. Baixe o instalador do Git para Windows.
  2. Execute o instalador e siga os passos abaixo:
    1. Selecione "Avançar".
    2. Selecione "Avançar".
    3. Selecione "Avançar".
    4. Selecione "Avançar".
    5. Selecione "Avançar".
    6. Selecione "Usar Git pela Prompt de Comando do Windows" e selecione "Avançar". Se você esquecer desse passo alguns programas que você utilizará no workshop não funcionaram corretamente. Se isso acontecer execute o instalador novamente e selecione a opção apropriada.
    7. Selecione "Avançar". Mantenha "Checkout Windows-style, commit Unix-style line endings" selecionado.
    8. Selecione "Use Windows' default console window" e selecione "Avançar".
    9. Selecione "Avançar".
    10. Selecione "Encerrar".

Isso irá prover o Git e o Bash no programa chamado Git Bash.

Mac OS X

O terminal padrão em todas as versões do Mac OS X é o bash e portanto você não precisa instalar nada. Você pode acessar o bash pelo Terminal encontrado em /Applications/Utilities. Veja o video tutorial (em inglês) sobre a instalação de Git para um exemplo de como abrir o Terminal. Você provavelmente vai querer manter o Terminal no dock da sua área de trabalho.

Linux

O terminal padrão normalmente é bash e você não precisa instalar nada. Se sua máquina estiver configurada de maneira diferente você pode abrir um terminal e digitar bash.

Git

Git é um sistema de controle de versão que permite você manter registro de quem faz uma alteração em qual arquivo e quando além de possuir opções para facilmente atualizar seu código em github.com. Você vai precisar de um navegador web suportado (versões atuais do Chrome, Firefox ou Safari, ou Internet Explorer 9 ou superior).

Windows

Git deve estar instalado no seu computador como parte da instalação do Bash (descrito acima).

Mac OS X

Video Tutorial (em inglês)

Para OS X 10.9 e superior, instale Git para Mac baixando e executando a versão mais recente do instalador "mavericks" dessa lista. Depois de instalar Git, não existirá nenhum atalho no seu diretório /Applications pois Git é um programa de linha de comando.

Para versões antigas do OS X (10.5-10.8) utilize o instalador mais recente disponível aqui que esteja marcado com "snow-leopard".

Linux

Se Git ainda não encontra-se disponível na sua máquina você pode instalá-lo via o gerenciador de pacotes da sua distribuição Para Debian/Ubuntu execute sudo apt-get install git e para Fedora execute sudo yum install git.

Text Editor

Quando você está escrevendo um código, é interessante ter um editor de texto otimizado para a escrita de código, com funcionalidades como utilização de cores para palavras chaves. O editor padrão no Mac OS X e Linux é o Vim, que não é famoso por ser intuitivo. Se você acidentalmente encontrar-se preso nele, tente pressionar ESC, digitar :q! e pressionar ENTER para retornar à linha de comando.

Windows

Video Tutorial (em inglês)

nano é um editor de texto básico e o que os instrutores utilizam por padrão nesse workshop. Para instalá-lo, baixe o Software Carpentry Windows installer e execute-o através de um clique duplo. Esse instalador requer uma conexão de internet ativa.

Outros editores que você pode utilizar são Notepad++ ou Sublime Text. Você irá precisar adicionar o diretório onde esses editores de texto foram instalados no caminho de aplicações do seu sistema. Peça a ajuda de um instrutor para fazer isso se necessitar.

Mac OS X

nano é um editor de texto básico e o que os instrutores utilizam por padrão nesse workshop. Veja o video tutorial (em inglês) para um exemplo de como abrir o nano. Ele deve estar pré-instalado na sua máquina.

Outros editores que também podem ser utilizados são Text Wrangler ou Sublime Text.

Linux

nano é um editor de texto básico e o que os instrutores utilizam por padrão nesse workshop. Ele deve estar pré-instalado na sua máquina.

Outros editores que também pode ser utilizados são Gedit, Kate ou Sublime Text.

R

R é uma linguagem de programação que é particularmente poderosa para exploração de dados, visualização, e análises estatísticas. Para interagir com R, nós utilizaremos o RStudio.

Windows

Video Tutorial (em inglês)

Instale R baixando e rodando este arquivo .exe disponível no CRAN. Além disso, por favor instale o RStudio IDE.

Mac OS X

Video Tutorial (em inglês)

Instale o R baixando e rodando este arquivo .pkg disponível no CRAN. Além disso, por favor instale o RStudio IDE.

Linux

Você pode baixar os arquivos binários para sua distribuição particular em CRAN. Ou você pode utilizar seu "package manager" (e.g. para Debian/Ubuntu rode sudo apt-get install r-base e para Fedora rode sudo yum install R). Além disso, por favor instale o RStudio IDE.

Agradecimentos

Apoio

Centro de Informática e Automação do Estado de Santa Catarina S.A.

Organização

Software Sustainability Institute SciPy Latin America