Author Archives: Lucas Caton

Backup

Como eu faço backups

Faz tempo que penso em escrever sobre as ferramentas e estratégias que utilizo para backups. Ao escutar esse episódio do Tecnocast sobre o assunto, decidi que era hora de documentar o que eu faço.

Meus arquivos pessoais (aka. pasta ~/)

my personal files

A pasta do meu usuário possui 3 cópias extras:

1. Assino o plano familiar (U$ 12,50 / mês) do CrashPlan, o qual realiza backup automatico e em tempo real do meu computador, da minha esposa e ainda do da minha mãe. Todos os dados ficam na nuvem e eu consigo recuperá-los a qualquer momento, a partir de qualquer lugar, de qualquer computador.

2. A segunda cópia extra dos meus arquivos ficam no meu TimeCapsule, que rodam diariamente de forma automática através do Time Machine.

3. Por fim, faço uma cópia mensal num HD externo (que é bem rápido graças à sua conexão USB 3) utilizando o rsync pra realizar um backup diferencial. O comando / parametros que utilizado para isso é:

rsync -a --progress --delete --delete-excluded --exclude "*.DS_Store" /Users/lucascaton/ /Volumes/Backups/lucascaton/

Arquivos importantes

important files

Ficam dentro da pasta do Dropbox. Ou seja, uma cópia extra além do CrashPlan. Time Machine e HD externo mencionados acima.

Arquivos encriptografados

important files

Se você utiliza OS X (Mac), é fácil criar uma pasta protegida com senha (tecnicamente é uma imagem de disco, mas você pode encarar como se fosse uma pasta). Veja como fazer isso nesse artigo de suporte da Apple.

Nessa pasta, eu guardo:

  • Códigos de recuperação de servicos com autenticação de 2 fatores;
  • Screenshots dos QR codes de autenticação de 2 fatores. É extremamente útil se você precisar resetar seu celular, já que o Google Authenticator (e outras apps) não salvam esses dados na nuvem (por motivos de segurança);
  • Chaves privadas SSH (pra acessar servidores);
  • Algumas poucas senhas que prefiro manter nessa pasta do que em gerenciadores de senha como o 1Password, o qual eu uso para todo o resto (veja mais informações sobre o 1Password no tópico “Senhas” no final desse artigo.

Arquivos que não ficam no meu computador

other files

Alguns arquivos eu não mantenho no meu computador por serem muitos grandes ou simplesmente por não fazer sentido tê-los comigo o tempo todo. Um exemplo são os vídeos do Reza a Lenda.

Eu os mantenho no Time Capsule e mensalmente faço um backup destes para o mesmo HD que mencionei no começo do artigo, também utilizando o rsync.

VPS

vps hosting

Faço backup das minhas VPSs através de scripts que realizam backups mensais (os quais rodam diretamente no servidor) e mandam esses arquivos para o meu computador (de novo através de um rsync).

Documentos (RG, CPF, passaporte, etc)

passport

Tenho foto de todos os meus documentos e estes ficam em uma pasta específica dentro do meu Dropbox, a qual é sincronizada automaticamente com o meu celular (através do iTunes), tornando-se disponível no meu celular mesmo quando não há internet disponível.

Fotos

pictures folder

Não ficam na nuvem (por enquanto). Também não utilizo nenhum software para gerenciá-las, apenas pastas organizadas por datas. E não chega a ser um problema: consigo ser disciplinado e manter tudo organizado. Nunca deixo nada no celular, quando o conecto ao computador eu já copio as fotos pro lugar apropriado.

Apesar disso, o novo Google Photos parece um bom lugar pra mantê-las de forma segura.

Músicas

spotify

100% das minhas músicas estão no Spotify. Assino o plano premium, então elas também ficam disponíveis off-line no meu celular.

Emails e calendário

gmail-and-google-calendar

Versões web do Gmail e Google Calendar. Simples assim.

Senhas

1password

Gerencio todas as minhas senhas através do 1Password, mas tem uma regra de ouro pra evitar problemas se a segurança do 1Password um dia falhar: a senha do meu Gmail não está salva em lugar algum, está apenas na minha cabeça – assim eu consigo recuperar a senha de qualquer serviço caso necessário, utilizando o recurso “Esqueci minha senha”, que a maioria dos serviços oferece.

Filmes e séries

itunes-and-netflix

Eu costumava alugar filmes e séries na locadora suéca (também conhecida como locadora do Paulo Coelho), mas comecei a fazer as contas: eu assisto uma média de 12 séries por ano, cada uma custa em média $25 por temporada no iTunes, ou seja, $25 por mês. Às vezes tem no Netflix e acabo gastando menos. Já alugar um filme recém-lancado em HD no iTunes custa em média $4. Moral da história: decidi parar completamente de fazer pirataria e comprar / alugar tudo da forma correta :-)

Conclusão

Ok, eu sei que sou um pouco (muito?) paranóico, mas pelo menos nunca perdi nada :D
Me conte nos comentários abaixo como você faz seus backups e o que você achou desse post!

Código em português

8 motivos pra programar em inglês

Vejo muitos brasileiros escrevendo código em português. Na faculdade até pode fazer um pouco de sentido por mais didático, mas vou apresentar alguns motivos pelos quais isso deve ser evitado no mundo real:

1. O motivo mais importante: inglês é o idioma internacional para código (e para documentações). Mais especificamente, o inglês americano é o padrão. Eu trabalho em uma empresa australiana e embora a Austrália siga a gramática britânica, o código que escrevemos segue a gramática americana (exemplo: “color” e não “colour”). Então se esse é o padrão mundial, por que não segui-lo?

2. Se você pretende um dia trabalhar fora do Brasil, potenciais empresas querendo te contratar vão querer ver seu código, mas não irão entender se estes estiverem em português. Então procure deixar seus repositórios no Github com código e documentação em inglês.

3. Os comandos e palavras-chave de linguagens em programação são em inglês, então mesmo que você queria escrever em português, vai acabar ficando inevitavelmente uma mistura.

4. Algumas linguagens e frameworks estão preparados para entender o inglês em termos de semântica. Exemplo: o Ruby on Rails sabe que a tabela no banco de dados para um determinado model deve ser sempre o nome do model no plural. Ou seja, ao ter um model “Person”, ele vai procurar uma tabela “people”.

5. Contribuições para projetos open-source devem ser em inglês. Eu sinceramente não conheço um projeto open-source famoso que não esteja em inglês.

6. Muitas empresas no Brasil já escrevem códigos em inglês. Então se eventualmente você começar a trabalhar em um dessas empresas, você terá que se adaptar de qualquer forma.

7. Acentos, “ç” e caracteres especiais não funcionam bem em todas as linguagens, fazendo que você tenha palavras escritas de forma incorreta se você as escrever em português.

8. Você treina e melhora seu inglês :-)

CampJS 2014 – the best nerd event I ever attended

A few days ago I was in CampJS, the best nerd event I ever attended.

campjs

This is the official website (which is pretty nice by the way): http://campjs.com/.

Why it was the best in my opinion:

  • It happened in an amazing place – to be near of the nature, changing the usual environment is renewable. I definitely recommend to try it.
  • I had the chance to talk to a lot of other Javascript developers
  • Awesome talks and workshops
  • Good food and beers
  • A live podcast was recorded in there

A friend of mine (@erikEcoologic) have written an awesome blog post about the event, so go check it out! ;)

A special thanks to @brucestronge and to NetEngine for the tickets!

Video & some pictures

IMG_0

IMG_1067

IMG_1099

IMG_1199

IMG_1202

IMG_1206

IMG_1267

Como você contribui para um mundo melhor?

Somos consumidores assíduos de conteúdo (offline e especialmente online). E a idéia desse post é listar o que eu tenho feito em troca disso e também incentivar aos que não fazem a considerar a idéia! ツ

  • Eu mantenho esse blog desde 2009 (mais de 5 anos já!) com posts sobre Ruby, Rails, Linux, OS X, mobile, etc;
  • Mantenho também um canal no Youtube com screencasts técnicos;
  • No meu Github tem alguns projetos open-source, alguns bastante genéricos, como meus dotfiles e meus vimfiles;
  • Criei e mantenho alguns grupos de discussão, como Vim Users BR, Swift BR, Neo4k BR e Gxt (ExtGwt) [BR];
  • Faço parte do staff que cuida dos eventos do GuruSP. Quando eu morava em São Paulo eu ajudava mais, agora ajudo apenas remotamente.
  • Tenho um blog pessoal também, onde não escrevo sobre coisas técnicas;
  • Meu twitter é basicamente para discussões relacionadas à tecnologia;
  • Para finalizar: faço sempre que possível palestras e apresentações (às vezes online) sobre ferramentas interessantes que tenho usado (infelizmente algumas foram feitas em empresas e não estão públicas).

Não ganho nada fazendo essas coisas, mas é recompensador! ¯\_(ツ)_/¯

Mandem seus 2 cents nos comentários!