Como trabalhar sozinho (Ou como ser um programador solitário) Parte 1

Posted: August 8th, 2010 | Author: | Filed under: Dia a dia, Programação | Tags: , , , , , , , , , | No Comments »

Antes de tudo, isso não é um post de auto-ajuda ou um how-to de como se separar da equipe de desenvolvimento da sua empresa. Esse post fala apenas das dificuldades que tive, tenho e como tento contorna-las no dia a dia.
Dividirei esse post em dois por que o texto acabou ficando bem grande  e além de ser ruim escrever um só texto grande, também é ruim ler.

Desde quando comecei a estudar programação há 4 anos atrás houve sempre uma dificuldade de conseguir material bom, cursos com preço acessível e tirar dúvidas. Sem falar que quando se começa, você nunca sabe qual é o melhor livro ou treinamento, então começamos a “atirar” para todos os lados.

Listas de E-mail

Na minha opinião, tirar dúvidas em listas de e-mail não é tão legal por que quando você começa, você não sabe nada e os outros participantes sempre pedem mais informações pra tirar suas dúvidas. Bom… Se o cara não sabe nada, como ele vai dar informações do que ele não sabe? Eu sempre olho as listas de email, mas apenas isso. Já fiz umas duas perguntas até hoje e ao invés de me ajudar, só complicou. Já tentei tirar algumas dúvidas, mas outros participantes sempre faziam antes de mim, então hoje eu só olho. Uma outra coisa chata com as listas de e-mail é a sua tolerância à spam. Devido ao fato de as mensagens serem enviadas pelo seu próprio e-mail, geralmente as listas não toleram que você manda um e-mail pra todo mundo sobre um assunto qualquer. Eu já fui expulso de uma lista por que um serviço na qual me cadastrei na web pegava todos os meus contatos do Gmail e enviava convites para todos eles. Entendo essa política, mas acidentes acontecem.

Fóruns

Existem muitos fóruns para se tirar dúvidas de programação e mesmo tendo o mesmo propósito das listas de e-mail, me parece que os fóruns tem mais sucesso com isso. Acredito que isso se deva ao fato de os usuários parecerem menos “hostis” como os das listas de e-mail. Se você tem dúvidas sobre Java[bb], Engenharia de Software[bb], Ruby[bb] e Rails[bb], eu recomendo o GUJ. Na verdade é o que eu recorro quando tenho algumas dúvidas. Como sempre, eu só olho. A maioria das minhas dúvidas já está respondida. =)

Livros

Hoje eu compro livros e não encontrei ainda melhor fonte de conhecimento. Claro que alguns livros que comprei não resolveram os meus problemas, na verdade alguns até mesmo me deixaram com vontade de desistir de aprender uma linguagem ou framework, mas acabei comprando outros do mesmo assunto, o que me fez enxergar problemas de um modo diferente. Dos livros que comprei e posso recomendar sem medo de de ser feliz são:

Desenvolvendo Websites com Php[bb] – Juliano Niederauer

Eu aprendi Php[bb] com esse livro e não imagino se outro livro pode ser mais didático. Ele trás uma abordagem muito simples e de quebra você ainda aprende um pouco de banco de dados pra já sair criando seus próprios sistemas. Como o livro é bem didático, não é possível se aprofundar muito nos assuntos, mas pra quem está começando, ele é ótimo. Infelizmente emprestei o meu pra um professor da faculdade que fez questão de não me entregar e ainda sair da faculdade. Bem.. É a vida.

Aprendendo Python[bb] – Mark Lutz

Dizem que esse é o livro definitivo de Python[bb] em português. Ele foi bem traduzido e tem muito, mas muito material. Por causa da falta de tempo, nunca aprendi o bastante pra desenvolver profissionalmente em Python[bb], mas sempre que preciso e posso, faço meus scripts de automação em Python[bb]. É muito gostoso trabalhar com Python.

Use a Cabeça! Rails[bb] – David Griffiths

Esse livro está sendo muito importante na minha aprendizagem em Rails. Após comprar 2 livros que só confundiam, resolvi investir minha última ficha no Rails[bb] e acertei. A série Use a Cabeça![bb] é muito interessante pelo modo que eles passam o conteúdo. Se você tiver algum tempo, pode devorar o livro de 400 páginas em dias.

Expressões Regulares[bb] – Aurélio Marinho Jargas

Eu só descobri a real importância das expressões regulares depois de ler esse livro do Aurélio. De fácil leitura e ilustrando tudo o que for possível, o conteúdo fica fácil de ser entendido. Além de tudo, o Aurélio é muito gente fina e se você tiver alguma dúvida, aposto que ele não vai se importar em tirar ela por e-mail =)
Além desse livro, ele também escreveu um livro de ShellScript[bb] que ainda não tive a oportunidade de ler, mas assim que tiver mais tempo, comprarei.

Google

Aprenda a usar o Google. Ele não é apenas um sistema de busca simples. Refina suas buscas com a busca avançada. Já vi sistemas inteiros de busca de arquivos na internet que só utilizava o poder do Google. Não consegue encontrar o que precisa? Tente a pesquisa avançada, ou quem sabe talvez o Code Search.

Network

É importante você manter uma boa rede de profissionais amigos. Às vezes recorro à alguns pra tirar alguma dúvida ou perguntar como foi feita determinada coisa em determinada situação. Geralmente são ex-colegas de trabalho/faculdade/treinamento ou qualquer outra pessoa que tenha conhecido. Mas cuidado, não saia ligando e pedindo um tutorial por telefone. Eu já liguei algumas vezes pra tirar pequenas dúvidas de 15 segundos, mas nem sempre é legal ficar ligando ou enviando e-mail pra uma só pessoa pra cada dúvida que tiver. Se você tiver uma dúvida urgente, melhor procurar num fórum do que enviar um e-mail. Eu conheço pessoas que tem agendas tão cheias que às vezes não conseguem dar conta do e-mail pessoal, então sua resposta pode demorar dias ou até semanas. Use seu network com sabedoria.

Treinamentos

Já fiz alguns treinamentos, dei outros e posso dizer que você só vai ter informação se estiver preparado e não adianta tentar da um passo maior que a perna. No início do ano eu ministrei alguns treinamentos de uma formação Java[bb] e 60% da turma não tinha conhecimento prévio de programação. Muitos não eram sequer hard-users. Inicialmente eles não tiveram culpa por que o departamento de vendas vendeu os cursos prometendo uma coisa e a formação era outra, mas à partir do momento em que eles não reclamaram os direitos e continuaram a cursar a formação eles tentaram forçar uma barra que era difícil de  ultrapassar. Eles deveriam ter uma noção básica de algoritmos e lógica de programação para não ficarem “boiando” nos treinamentos, mas foi o que aconteceu. Se algum dia for fazer um treinamento que você não saiba direito do que se trata, tente uma opinião de alguém que conheça um pouco do assunto ou trabalhe na área.

Bem… Pararei por aqui e continuarei no próximo post.

T+ galera…


Aptana no Ubuntu 8.10

Posted: March 23rd, 2009 | Author: | Filed under: IDE, Programação | Tags: , , , , , , | No Comments »

Há uns dias atrás atualizei meu Ubuntu 8.04 LTS pelo novo 8.10 apenas pelo fato de ele ser mais novo e ter as versões mais novas dos programas e tal… Tudo estava bem. Wireless funcionando, placa de vídeo funcionando e atualizações feitas. Comecei a instalar os programas que frequentemente uso como o Thunderbird, VirtualBox, Apache, PHP, Komodo Edit e o Aptana que é uma IDE que tenho gostado bastante de usar. Conheci o Aptana há muito tempo quando ele ainda estava nascendo, mas como sempre fui de usar o VI pra tudo, acabei deixando ele de lado. Nesse ano eu conheci o Eclipse (que também ignorei por que achava que nunca ia programar em Java) e descobri que o Aptana é baseado no Eclipse. “Que legal! Agora posso usar o Aptana nos meus projetos web por que já conheci, é bonito, é legal e funciona!”.

O que acontece é que depois de tudo funcionando, o bendito não funcionava. Fechava no meio do caminho. Nem sequer abria a primeira janela. “Danou-se! Tenho que voltar pra 8.04.” Foi então que eu pensei em instalar o Fedora 10 que já tá aqui há um tempão pra eu testar, e como diz meu amigo Lonely Spooky a cada versão do Fedora: “Essa versão é a melhor de todas!”. Testei e foi o mesmo problema.

Foi aí que cheguei à conclusão que o problema não era com a distro, mas sim com qualquer outra coisa que não sei o que era, mas era.

Pesquisei algo no Oráculo e encontrei uma resposta. O grande problema é o Firefox. Sim! Nosso amado Firefox! Não sei o motivo, mas depois que as distros começaram a usar o Firefox 3, o Aptana parou de funcionar. Meu Eclipse também não funcionou no 8.10, mas aí não sei se é coincidência ou algum outro motivo.

Vamos aos passos pra resolver esse problema por que esse texto já tá grande demais e eu preciso dormir. =)

Passo 1 – Instalar o Java

Sempre me dizem que é preciso apenas instalar o JRE para funcionar, mas eu sempre instalo também o JDK pra não perder tempo e por que sou preguiçoso e não gosto de ficar voltando no terminar e instalando mais um pacote que voltou. Vou levar em consideração que você sabe usar o apt e sabe pelo menos procurar e instalar um pacote, então vamos instalar o pacote  sun-java6-jre e, caso necessário, o pacote sun-java6-jdk.

Passo 2 – Instalando o Firefox 2

“Peraí! Instalar o Firefox2? o.O”

Sim! Vamos instalar o Firefox 2. Uma das vantagens de se usar GNU/Linux é ter várias versões do mesmo programa no sistema. Nesse caso vamos utilizar os repositórios do Hardy. Não se preocupe. Não vai doer. =)

Para fins de segurança, mova seus repositórios atuais para um novo arquivo de nome diferente.

sudo mv /etc/apt/sources.list /etc/apt/sources.list.antigo

Depois disso crie um novo sources.list com o seguinte conteúdo:

deb http://archive.canonical.com/ubuntu hardy partner
deb http://br.archive.ubuntu.com/ubuntu/ hardy main universe restricted multiverse
deb http://security.ubuntu.com/ubuntu/ hardy-security universe main multiverse restricted
deb http://br.archive.ubuntu.com/ubuntu/ hardy-updates universe main multiverse restricted
deb http://packages.medibuntu.org/ hardy free non-free

Então basta fazer o apt-get update e o apt-get install firefox-2

Voltando com o sources original

Lembra do sources.list que você fez backup? Então… Pegue ele e volte com o nome original (sources.list). Você pode fazer isso via terminal ou interface gráfica.

Após isso, basta fazer um update com apt-get update que seus repositórios voltarão ao normal

Instalando e rodando o Aptana

Baixe o Aptana em http://aptana.com/studio/download e crie um script para rodar ele seguindo os passos.

1 – Crie um arquivo texto (Nada de .doc heim!) chamado startAptana ou com qualquer outro nome que ache melhor.

2 – Adicione o conteúdo no arquivo:

ATENÇÃO! No bloco abaixo, é levado em consideração que o Aptana está descompactado em /usr/local. Caso você prefira manter ele em outro local, substitua a linha referente.

#!/bin/bash

export MOZILLA_FIVE_HOME=/usr/lib/firefox

/usr/local/aptana/AptanaStudio

3 – Torne o arquivo executável com chmod a+x startAptana.

Depois disso, basta executar o startAptana e ir pra galera. =)

Troubleshooting (ou, o que eu faço se der merda?)

Se ocorrer algum erro de Java, substitua a linha /usr/local/aptana/AptanaStudio

por

/usr/local/aptana/AptanaStudio –vm /usr/lib/jvm/java-6-sun-1.6.0.10/jre/bin/java (ou pelo caminho de onde quer que esteja o seu Java) em seu arquivo startAptana.

Bom… É isso aí. Espero ter ajudado. Como já disse antes, meu Eclipse e Aptana estavam com problema no Fedora. Se isso funcionar no Fedorento, me avisem.

Original em http://andrewbleakley.com/blog/2008/11/01/installing-and-running-aptana-on-ubuntu-810/

fcD