Showing posts with label links. Show all posts
Showing posts with label links. Show all posts

Wednesday, September 22, 2010

Python: how to start learning?

Many (most?) people that want to start learning Python are confused about where to start. So many options! Motivated by this, I list in this post the references that I used to learn Python (and object-oriented programming as well), which can serve as a starting point for other people. I had scientists in mind when I wrote this post.

Beginner material

Learned the basic syntax and capabilities of the language with the official Python tutorial. You can download all of this as PDF files. I suggest this for people with previous programming experience. For absolute beginners, have a look at the Think Python book below.

Introductory lecture about Python, its syntax and science applications. It shows what Python is capable of for data analysis and plotting. Inspiring. The audio is also available for download as a MP3 file.

Tutorial on using Python for data analysis! How to on how to replace IDL/Matlab with Python, essentially. Includes: plotting, FITS files, signal processing.

I learned object-oriented programming using this material. Very clear and "application-oriented" approach. You don't need to be a biologist to understand this.

Longer introduction for people with no previous extensive programming experience.

Quick reference


Migrating from IDL/Matlab to Python.

If you are going to do serious stuff with Python, I suggest using the enhanced interactive Python terminal IPython.

Longer introductory books

Learning Python, Mark Lutz

A primer on scientific programming with Python, Hans Petter Langtangen

Longer reference books

Python essential reference, David Beazley

Sunday, January 31, 2010

Dropbox: online folder to easily sync your data across different computers

Like many users, I regularly use more than one computer: one at home (a Mac) and one at work (Linux workstation). This kind of situation creates some challenges regarding how to keep your data synchronized between the different computers/operating systems.

That's where the free online service Dropbox comes handy. It creates a local folder called Dropbox in your "home". Everything that you dump in that folder is automatically synced with the online folder, and immediately made available to all your computers. You just need to install a dropbox client in each computer, and that's it. Thanks to Dropbox, I almost don't need to use USB flash drives anymore to sync data between different computers. Sweet!

Dropbox has a cool feature: it lets you share a folder among a group of people. Let me give an example of how that can be useful. Suppose you have coworkers/collaborators and you are working together on some code, paper or data. Suppose that you are constantly updating your code/paper/data and your collaborator wants to always have the latest version of it. When you share a dropbox folder with your collaborators, every change that you or your coworker make to any file in that folder is automatically made available to all the people sharing the folder. See how the sharing feature can be useful?

Dropbox gives you a free 2 GB account. For paid accounts, they provide more space (up to 100 GB).

Link to join Dropbox (includes a tour of the features).

Changelog:
  • May 31 2010: Added "sharing" feature.

Monday, June 8, 2009

Dicas para redação da sua tese/exame/dissertação

Pessoal, agora que recém terminei de escrever a minha tese, vou tomar um tempinho pra dar umas dicas sobre como elaborar a sua tese de doutorado/exame de doutorado/dissertação de mestrado com o LateX.

Infelizmente o IF não possui um modelo padrão para elaborar a tese. O modelo de tese latex que tem circulado entre os alunos há alguns anos foi inicialmente elaborado pelo Irapuan Rodrigues, quando ele escreveu a sua tese em 1999. Posteriormente, quando escrevi a minha dissertação e posteriormente a tese, introduzi algumas pequenas melhorias no template do Irapa. Aos alunos do IF-UFRGS: quem quiser este template com as atualizações, é só me mandar um e-mail.

TESE-MAIN.TEX

O arquivo principal é o tese-main.tex, que delineia a estrutura geral da tese. Nele você define:
- qual o tipo de documento a ser gerado: dissertação (mastersthesis), tese (phdthesis) ou exame (exame)
- quais os pacotes latex que você vai precisar
- informações da tese: título, autor, orientadora etc
Na parte final do arquivo, você define a ordem em que os capítulos e apêndice(s) vão aparecer editando os comandos

\include{tese-capX}

onde tese-capX é o texto contido no arquivo tese-capX.tex. Eu sugiro editar cada capítulo em um arquivo tex separado. Caso um destes arquivos seja corrompido (por exemplo, devido a uma queda de luz), pelo menos a tese toda não é perdida.

ARQUIVOS *.STY, *.CLS

Os arquivos ifnatbib.sty, isolatin1.sty, stdclsdv.sty, iftese.cls, natbib.sty, tocbibind.sty definem as propriedades da formatação da tese. Recomendável não editá-los, a não ser que você realmente saiba o que está fazendo.

BIBLIOGRAFIA USANDO BIBTEX

O arquivo tese-refs.bib contém a bibliografia do documento no formato bibtex. Você vai que copiar e colar neste arquivo a entrada bibtex de cada artigo/livro etc que você cita no corpo da tese. Uma maneira fácil de obter as referência no formato bibtex é acessar a página do ADS, achar o artigo desejado - por exemplo este aqui ;) - e procurar o link "Bibtex entry for this abstract". É possível também listar as entradas bibtex para vários artigos ao mesmo tempo no ADS, selecionando a opção "BIBTEX reference list" no campo FORMAT da página do ADS.

Quando o artigo tiver sido publicado nas revistas usuais da astronomia (ApJ, A&A, MNRAS), tome o cuidado de alterar o campo na entrada bibtex fornecida pelo ADS de

journal = {\mnras}

para

journal = mnras
(retire as chaves)

Desta forma, o nome da revista correspondente vai aparecer automaticamente, e você não vai precisar escrever o nome da revista por extenso na entrada bibtex.

Quando você altera o arquivo tese-refs.bib, simplesmente "latequear" a sua tese não vai atualizar a lista de referências resultante no arquivo DVI. É necessário também rodar o comando bibtex e depois latequear. Você pode rodar o shell script make.sh (sh make.sh) que faz isto automaticamente.

Update: Sobre as referências Bibtex, há uma dica quente no post "coletando as referências da sua tese/dissertação de forma eficiente no ADS". (08/7/2009)

SCRIPTS ÚTEIS

Além do make.sh, existem alguns outros scripts que podem ser úteis. Os arquivos *.sh são shell scripts para linux/mac, enquanto os arquivos *.bat são scripts que devem ser executados num prompt de comando do windows.

clean.sh (linux/mac), clean.bat (windows)
"Limpa" o diretório da tese, apagando os arquivos que são gerados quando você "latequeia" a tese.

backup.sh (linux/mac), backup.bat (windows)
Cria uma cópia de segurança dos arquivos da tese, gerando o arquivo backup.tar. No windows é necessário instalar o programa 7-zip e alterar o caminho até o executável deste programa no arquivo .bat.

EDITORES AMIGÁVEIS DE LATEX

Eis as minhas sugestões:

Linux: Kile, Texmaker

Windows: Texmaker, TeXnicCenter

Mac OS X: TeXShop (ver também os editores listados aqui)

É claro que há também Emacs, VI, etc, porém o nome desta seção é editores amigáveis.

DICIONÁRIO DE PORTUGUÊS

É útil ter para fácil consulta um bom dicionário de português durante a escrita da sua tese. Para quem quiser (somente alunos do IF-UFRGS), está disponível a versão eletrônica do Dicionário Aurélio, que roda no windows (e também Linux e Mac OS X via Wine).

CONVERTER FIGURAS PARA FORMATO POSTSCRIPT

É comum você precisar converter figuras de um formato bitmap (e.g. jpeg, bmp, png, gif etc) para o formato postscript (eps, ps). Recomendo fortemente usar o programa sam2p para efetuar tal conversão. No (K)Ubuntu, tal programa está disponível via Synaptic.

O sam2p gera arquivos postscript com tamanhos *muito* menores que os gerados via outros métodos, tais como usando o programa convert (que acessa a biblioteca ImageMagick) ou GIMP.

POSSÍVEIS PROBLEMAS COM ACENTUAÇÃO NOS ARQUIVOS *.TEX

Se você abrir os arquivos *.tex para edição e constatar que os acentos foram substituídos por caracteres estranhos, ou se o mesmo problema acontecer após você latequear a tese, leia as instruções abaixo.

Convém abordar outro problema comum encontrado durante a redação da tese. Dependendo do sistema operacional que você usa para editar os arquivos-textos latex, eles são salvos com um sistema de codificação de caracteres diferente. Por exemplo, no windows e no Suse Linux o sistema padrão é ISO-8859-1; no (K)Ubuntu/Debian linux o sistema é o UTF-8. Se você salvar o arquivo no sistema UTF-8 e abrí-lo no notepad do windows, vai perceber que os caracteres aparecem corrompidos.

É importante manter uma consistência no sistema de caracteres dos arquivos *.tex. Você também pode precisar configurar o seu editor de texto predileto para que ele reconheça o sistema de codificação caso ocorram problemas. Por exemplo, no caso do Kile, basta acessar o menu Tools -> Encoding. Convém notar que o editor TeXnicCenter do windows suporta somente o formato ISO-8859-1 (sistema padrão do windows), por este motivo eu prefiro o Texmaker quando uso windows.

Caso você use um S. O. que salve os arquivos no formato UTF-8, como eu fiz, é necessário carregar o pacote utf8x (ver arquivo tese-main.tex).

Para converter a codificação dos arquivos de um sistema para o outro, basta usar o comando iconv no linux/mac. Por exemplo, o comando

iconv --from-code=ISO-8859-1 --to-code=UTF-8 iso.txt > utf.txt

converte do sistema ISO-8859-1 para o UTF-8.

HOMOLOGAÇÃO DA TESE (25/6/2009)

Um aviso: para "homologar" a sua tese ou dissertação, não é mais necessário passar pelo crivo da Zuleika na biblioteca. Somente teses/dissertações da PPG Ensino de Física precisam passar pela checagem de referências da Zuleika agora.

Thursday, April 9, 2009

Configurando o cedilha em teclados americanos no linux

Pra fazer o cedilha funcionar em teclados padrão americano (que não possuem a tecla cedilha) no linux, siga as instruções deste link:
Cedilha, Gnome, KDE e Ubuntu 8.04 em Inglês :: Vitor Pamplona

Depois de seguir as instruções, o ç vai funcionar em vez do famigerado ć. Barbada. Eu testei no Ubuntu 8.04 do meu laptop e funcionou.

Friday, April 3, 2009

O jogo da formação estelar

Descobri um joguinho na internet que ilustra conceitos de formação estelar. O jogo começa com uma nuvem molecular. O objetivo é botar supernovas nos pontos certos, que ao explodirem geram ondas de choque, comprimindo o gás, desencadeando colapso gravitacional e a formação de novas estrelas. Quanto menos supernovas tu explodires, e mais estrelas formares, maior a tua pontuação.

Confiram o jogo aqui. Descobri fuçando o blog Bad Astronomy.

Aparentemente eu sou ruim neste jogo. Não consegui nem 900 pontos... =P

Wednesday, April 1, 2009

Dicas de programas: Stellarium e Celestia

Pessoal,

Não sei se todos conhecem estes programas: Celestia e Stellarium. São dois programas *gratuitos* para windows/linux/mac. Vale muito a pena baixá-los e instalá-los!

O Celestia é, conforme a sua web page: "The free space simulation that lets you explore our universe in three dimensions". Muito bom pra viajar pelos planetas e estrelas, e até mesmo "sair" da nossa galáxia.

O Stellarium é, conforme a sua web page: "It shows a realistic sky in 3D, just like what you see with the naked eye, binoculars or a telescope. It is being used in planetarium projectors. Just set your coordinates and go. " Ele mostra em tempo real o céu em qualquer lugar do mundo, semelhante a um planetário. Excelente!

Pra quem for auxiliar na Usina do Gasômetro e não tem muita experiência em "ler" o céu (assim como eu), recomendo fortemente brincar com o Stellarium. Muito divertido.

Bom proveito!

P.S. O Rogério sugeriu também o Kstars como alternativa ao Stellarium. Eu pessoalmente prefiro o Stellarium, que é mais "bonito". =)

Thursday, October 23, 2008

Tem luz no campus?

E não podia deixar de faltar a página que mostra o status da luz e rede no Campus do Vale, desenvolvida pelo Rodrigo Link (o idealizador), Tiba e o Rogério. Essa gurizada dá gosto!
 
Locations of visitors to this page