2009-03-31

Python: Migrating from svn to a distributed VCS

não é só sobre o Git, mas... "nice git links" ataca de novo

2009-03-30

Culpa

O Lucas quebrou o braço na quinta.
Não quis ir ao médico logo depois da aula, disse não estar doendo tanto, mas depois de um tempo, durante a noite, pediu para ir. Nós não demos muita bola.
Na sexta, ele foi pra escola, ainda com o braço na tipóia. Tinha prova; depois da prova, a Ivana levou-o ao hospital. Teve que reduzir a fratura, e certamente doeu. Ô trem.
Agora a gente ainda tá chafurdando na culpa.
Claro que, quando desinchou o braço na quinta, quando ele falou que não tava doendo tanto, eu achei que não podia ser fratura. Mas mesmo assim, dinheiro no bolso, canja de galinha... PRUDÊNCIA.
Lição aprendida, espero.

Ivana

Minha linda e maravilhosa esposa reclamou outro dia da falta de "screen time" que ela tem por aqui.
Às vezes, eu sei que ela esquece que ela é o amor e a razão da minha vida.
Ou que nossos filhos e ela, minha família, são tudo o que eu tenho, o que eu amo, o que eu prezo.
Que eu passo alguns instantes durante o dia, todo dia, lembrando de seu sorriso. Mesmo quando a chapa tá quente :-D.
Que o seu beijo, o seu cheiro, seus cabelos, tudo que é seu, são meu lar, meu mundo.
Se ela ler isso, pode ser que se lembre mais amiúde.

2009-03-27

Começou a trabalheira :-)

  • Para o dia 30, primeira fase do trabalho de Fundamentos;
  • Para o dia primeiro (sem mentira) o exercício 1 de Fatores Humanos;
  • Para o dia 14, o exercício 2 de FH;
  • Para o dia 13 de maio o trabalho final de FH (esse ainda tá longe);
Hmmm... o Caio tá muito quieto... quero saber o que vem aí na Usabilidade...
Ah, e o mindmap tá pronto mas eu deixei no trabalho... o que significa que só na segunda.

2009-03-25

Understanding Git

Mais um da série "nice git links" :-)

2009-03-24

Git Ready

O link aí em cima é o bicho.

2009-03-23

Insônia

Não, não é o filme com o Robin Williams bandido e o Al Pacino mocinho (!!!) ;-)

Raquel chamou às 3:45, um agradinho e voltou a dormir... só ela voltou a dormir.

Revirei na cama durante uma hora, peguei o telefone e fiquei lendo coisas na Internet (ainda na cama) durante mais uma hora, e aí fui pro quarto de TV assistir All My Circuits (que é como o ~/ chama Terminator: The Sarah Connor Chronicles) e algum outro seriado até dar uma hora decente de sair de casa. Tem acontecido muito, se eu acordo cedo, não consigo mais voltar a dormir. E eu tenho acordado no máximo às seis da manhã, muitas vezes logo depois das cinco.

O artigo sobre insônia da Wikipédia me deixa na dúvida se a minha insônia é a "middle of the night" ou -- bem pior -- a "terminal" (early awakening), que pode ser sinal de depressão. Olhando pelo lado bom, eu não me sinto deprimido nem anedonístico como eu já estive antes. Suponho que eu não devo estar deprimido se eu consigo olhar pelo lado bom :-) e meu senso de humor idiota ainda está intacto.

Galactica

Galactica acabou, mas não acabou, ainda vai ter "the plan", e depois "Caprica", mas ... me deixa um pouco triste. Apesar de todas as críticas, eu gostei do finalzinho e acho que se eu estivesse fugindo há quatro anos dentro de uma frota onde os recursos também já estavam acabando, virar homem das cavernas podia começar a parecer um bom plano. Terminator tá melhorando, ficando interessante, depois de uma fase meio bobinha. Mas por enquanto, estou sem minha "hard sci-fi" (naves espaciais). Em abril, pelo menos, deve ter Star Trek by JJ Abrahams.

2009-03-22

Netbeans, plugins etc...

Trouxe meu diretório de desenvolvimento inteiro do trabalho para casa este fim-de-semana, em um pen drive. Unzipei o bicho, "startei" o NetBeans e... surpresa! Cadê meus plugins e configurações?? Procura daqui, procura dali, ah! o NetBeans põe não só as configurações dos plugins, mas também os .jar no diretório ~/.netbeans... WTF???

2009-03-19

Mais um mindmap

Tentando "ajuntar" as três primeiras aulas do curso.

2009-03-18

"nice git links"

Oliver Steele -- My Git Workflow
Götz Gaycken -- My Git Workflow
Seth Fitzsimmons - My (Public) Git Workflow
Seth Fitzsimmons - My (Work) Git Workflow

Mind map das duas primeiras aulas

Aula 01 de Usabilidade (USA):


Aula 01 de Fatores Humanos (FH):

Editar mensagem de commit

Ontem, eu precisei (quis) editar uma mensagem de commit, para colocar no título da mensagem o # do "ticket" de suporte à qual aquele commit (e os subsequentes) se referiam. Não foi muito bem, porque eu já tinha dado git push no commit... Neste artigo no KernelTrap tem uma receitinha que é mais ou menos assim supondo que quero editar a antepenúltima mensagem de commit:
git checkout -b temp HEAD^^^
git cherry-pick -n master^^
git commit --reedit master^^
git checkout master
git rebase temp

Anotado, né?

2009-03-17

Frase Zen

iuguolo Buda si vos specto is ad via
(se vir o Buda na estrada, mate-o)

Volta às aulas

Voltar à sala de aula depois de tantos anos (*) foi diferente, e um pouco assustador. Pra começar, a questão da idade: parece que eu estou numa faixa muito diferente de "lugar na vida" que meus colegas. Nas apresentações, eu ouvia "desenvolvedor há mais de dez anos", e lembrava que há dez anos atrás eu achava, inclusive, que a minha vida de desenvolvedor já tinha terminado, graças a algumas curvas muuuito erradas que eu já tomei. Afinal de contas, meu primeiro trabalho (ganhando $$$) (em Turbo Pascal) foi em 1987. E o Lucas vai fazer dez anos! Até o professor me pareceu novinho.

Fiquei me sentindo como o Julius Baltar: "sai do meu gramado, menino!" Mas, por outro lado, fico pensando se a energia dos colegas não vai me contagiar, me fazer sair do lugar; fiquei pensando na produção acadêmica que os trabalhos da pós vão exigir, coisas que eu estou começando a fazer esse ano que eu não tinha animado ainda, muito embora tivesse muita vontade. Este blog inclusive.

Lente et semper. Ou algo assim. ;-)


(*) a última vez que eu frequentei uma sala de aula foi o cursinho preparatório para o concurso da Receita Federal -- lá pra 93 ou 94, durante uns dois anos.

Update: mentira; lembrei que fiz seis meses de espanhol no CCAA no ano em que eu me casei (1997) e mais tantos meses de espanhol na Espanha, dentro da Meta4, empresa na qual eu trabalhava (1998) -- mas nesta última, era "mesa-redonda" na mesa de reunião com meus colegas, por isso não sei se conta :-)

USA aula 01

Aula introdutória, apresentação do curso, apresentação do professor, apresentação dos alunos, primeiros conceitos.
Pontos interessantes: a usabilidade como catalisador do design ao invés de como limitador; a importância dos testes com usuários como validação; e a referência da "proximidade" da Debora Hix.

2009-03-16

Dia cheio

Zilhões de coisas no trabalho.
Comecei pela importação (que ainda não saiu). Quando eu fui verificar o que iria ser apagado na base de dados, me pareceu muita coisa. Gerei uma planilha com os registros que iam ser apagados e mandei de volta para o usuário aprovar.
Depois, pintou uma geração periódica (uma vez ao dia?) de uma planilha Calc a partir de uma base de dados MySQL que está sendo gerada por uma aplicação web. Fiz um scriptzinho perl (50 linhas) que gera o arquivo e manda via e-mail para os interessados, e taquei no meu crontab. Esse problema, então, tá quase resolvido.
Amanhã, mais Writer.
Com tudo isso, nada de dar tempo para coisas importantes.

2009-03-13

Chucky

Tá doendo.
Você era a alegria da minha irmãzinha e, por isso, minha alegria.
Você chamava minha atenção, latindo toda vez que eu chegava, até ganhar um afago.
Você viveu mais de uma década dando alegria para toda a família.
Você amou meus filhos, sabia de cor o cheiro do Lucas, e adorava vê-lo chegar.
Você aceitou a Raquel arrancar seus bigodes, sem rosnar, sem brigar.
Eu te amo, do meu jeito, nem sou uma "pessoa cachorro", mas vou ter muita saudade.
Que mais posso dizer?

2009-03-12

Depurando Add-ons OOo no NetBeans parte II

Funcionando a depuração de add-ons no NetBeans, fui para o assunto principal: fazer com que o componente COM que, em determinado sistema, hoje é chamado de dentro do Word, também possa ser chamado de dentro do Writer. Em StarBasic, seria uma coisa mais ou menos assim:
Set factory = createUnoService("com.sun.star.bridge.oleautomation.Factory")
Set obj = factory.createInstance("PlayerSPX.SPXPlayerforWindows")

Em Java isso vira:
XMultiServiceFactory factory =
(XMultiServiceFactory) UnoRuntime.queryInterface(XMultiServiceFactory.class,
(XInterface) context.getServiceManager().createInstanceWithContext(
"com.sun.star.bridge.oleautomation.Factory", context));
m_player = (XInvocation) UnoRuntime.queryInterface(XInvocation.class,
(XInterface) factory.createInstance("PlayerSPX.SPXPlayerForWindows"));

2009-03-11

Depurando Add-ons OOo no NetBeans

Acabou que a falha de depuração no NetBeans não foi falha de depuração, mas falha de refactoring: quando eu tirei a classe do add-on do domínio "example.com", ele não mudou os xemelês que precisava mudar... começamos de novo, e agora as coisas estão no lugar...

CSS2 per tutti !!!??

Joy to the world!!

Produtividade

Me deu a impressão que essa última semana e meia meu trabalho andou bem melhor que estava antes. Será que o Blogger é o meu "ajudante misterioso"? Acho que é um deles. Afinal, à medida que eu estou colocando coisas aqui, eu estou pensando e organizando minha lista de coisas a fazer na minha cabeça. Os outros suspeitos são o github (andei depositando, devagarzinho, meus projetos pessoais lá -- o trabalho ainda está em progresso), o repositório git que eu consegui que colocassem lá no trabalho (também dá para acompanhar cada passinho que as coisas dão), o kjots (ficar com um treco me dizendo o que eu devo fazer em letras garrafais no meu desktop é interessante), e o fato de que o projeto de conversão para o Writer está organizado no Basecamp.

Estou automatizando coisas! Yey! :-)

2009-03-10

Enfim, ...

Consegui montar a Toolbar como eu queria no NetBeans,
consegui mandar ele dar deploy no meu BrOffice,
e consegui até depurar... não, mais ou menos.
Mais ou menos porque ele não parou em nenhum breakpoint que eu coloquei.
Bem, amanhã é outro dia.

Funcionou mas não funcionou

O plugin git do Eclipse é melhor que o do NetBeans, mas o plugin para OpenOffice.org fica a uma grande distância, mesmo com os problemas mencionados. Meh.

2009-03-09

Dia de trabalho perdido...

Um monte de interrupções, correria em um usuário e outro, e tentando fazer o Eclipse de 64 bits funcionar no meu computador. Instalação do plugin de desenvolvimento do OOo, do plugin de git, do restante dos plugins que eu preciso para trabalhar. Bem, pelo menos tem Breaking Bad para eu ver daqui a pouco...

Lei de László

Se emperrar, force.
Se quebrar, precisava trocar mesmo.

Watchmen e o quartinho do terror

Após assistir Watchmen com o Lucas (*), eu fui até o quartinho do terror na garagem para ver se por um acaso eu conseguia achar os quadrinhos para ele ler. Em mais ou menos 15 minutos, eu consegui abrir a porta do mesmo (tá tão entulhado que de vez em quando as coisas caem atrás da porta), mas não encontrei a graphic novel. Achei um Will Eisner para ver se aguço a sensibilidade dele... mas talvez ele seja muito novo para isso.

(*) Ele diz ter gostado muito, mas eu certamente gostei mais -- achei o filme fiel à graphic novel, com muitos diálogos tirados direto do texto do Moore (o que era inclusive mais fácil do que em V for Vendetta, porque Watchmen já era bem "cinemático"); e o final, que é a única divergência do filme com os quadrinhos, ficou até melhor, já que eu não achava o final original perfeito. Eu dou nota 10.

Terminator: The Sarah Connor Chronicles

Seguir o link para ver o que o meu "internet buddy" Squiggle achou sobre o episódio dessa semana e a minha opinião :-)

2009-03-07

Raquel

Acabaram os broncodilatadores. Ufa! Vamos ver se o FDS é mais tranquilo.
Ela ainda está com o nariz escorrendo, tomando um corticóide para a crise alérgica (Predsin), tossindo um pouco à noite.

git-fu II



Estou usando o plugin do NetBeans para desenvolver extensões em Java para o OpenOffice.org.

Isso faz parte de um plano lá do trabalho de substituir as (antigamente eram quase 3000) licenças de MSOffice97 pelo software livre. Essa substituição já está na fase final, faltando matar somente as (300?) licenças do Office nos locais onde sistemas da Casa utilizam a automação COM para gerar documentos. Onde o trabalho era mais simples, a migração já foi feita, mas a Casa possui um sistema de GED/Workflow que é construído em cima do Word. :-(

A idéia é construir extensões para o BrOffice (a versão abrasileirada do OOo), em java, que façam o trabalho que hoje está sendo feito por diversas macros VBA.

O bom é que o plugin do NetBeans gera todo o arcabouço de arquivos XML e outras javalices que são necessárias para existir uma extensão do OOo.

O mau é que algumas coisas não são "redondinhas"; um exemplo é quando eu tento selecionar uma imagem para um botão de barra de ferramentas, se eu simplesmente colocar o caminho completo para a imagem no diálogo "open", ele me ignora. A gente tem que ir até o diretório onde a imagem está, e selecionar com o mouse o arquivo. Yuck.

O feio é que o plugin do NetBeans não deixa editar o tal XML (Addons.xcu) graficamente, depois que você criou o projeto da extensão... se você quiser mais um botão, ou mudar alguma coisa na barra de ferramentas/menu da extensão você pode (1) editar na mon o Addons.xcu ou você pode (2) começar outro projeto do zero, para "transplantar" o xemelê que ele vai gerar. Duplo Yuck.

Notícia interessaante é que o plugin git para NetBeans funciona direitinho. Notícia um pouco menos interessante é que ele também não tem git push/git pull por default; por outro lado, como o qgit, dá pra colocar no menu "actions"...

2009-03-04

git-fu

Hoje eu ajudei o Suporte a instalar o gitweb na máquina onde estão (e deverão permanecer) nossos repositórios git, servidos para nós através de git:// ... ô scriptzinho porreta. El Jefe vai poder ver tudo o que eu faço agora.

Descobri que a descrição do repositório fica no arquivo .git/description. E que, por enquanto, só mexendo no repositório original na mon você consegue alterar essa descrição.

Descobri que o nbgit (plugin para NetBeans) funciona legalzinho. E que o QGit, aparentemente, não tem botão para fazer git push e git pull, mas que é fácil adicionar isso no menu "Actions". Hm.

Ainda não descobri como aumentar a fonte da interface de usuário do meu NetBeans.

A importação de dados que eu estou fazendo andou mais um pouquinho.

eeePC

Eu sou uma mula de teimoso.
Eu gosto é do KDE. Tô usando o 4.2.1. Eu acho o KDE4 uma beleza. A única coisa que eu não gosto é que eles conseguiram acabar com o Konqueror. O konqui3 era uma fortaleza, o 4 é +|-.
Eu não gosto do GNOME. O GNOME me dá urticária.
Então, como faço para usar o meu pobre eee701?
Instalo o ubuntu-eee. Ponho tudo quanto é temp (/tmp, /var/cache/apt/archives, /var/log) no ramdisk.
Ponho os meus repositórios no /etc/apt/sources.list.d (e depois me preocupo com as chaves GPG [*])
Daí entro no aptitude, mando desinstalar a biblioteca libgtk2 (manda todos os GNOMEs pro saco) e, na mesma sessão, mando instalar o broffice-3.0, o firefox (faz o gtk voltar) e todo o meu lindo KDE -- pelo menos tudo o que cabe.
Estou testando colocar um swap file no drive interno de 4G do bicho (com vm.swappiness = 0) e usar só o SD como se fosse HD. Assim, se gastar a flash, eu tenho como trocar de maneira mais ou menos fácil.
[*] fica pra outro post como eu resolvo isto.

Imposto de renda

Fiz o meu, entreguei, fiz o da Ivana, tá faltando umas coisas. Faltam o do meu pai e (talvez) o da minha tia. Milagre! Normalmente eu faço essas coisas no penúltimo dia.
Não ajuda, também, o fato que até algum tempo atrás, os programas da receita feitos em Java nunca saíam junto com os feitos em Delphi. E, como aqui em casa fica tempos sem uma máquina Windows... acabei acostumando a deixar para depois.

2009-03-02

Links sobre git

Rodrigo's blog

Uma resposta sobre sexo em Galactica

um cara, falando sobre sexo, numa lista sobre Battlestar Galactica:

Sim... mas qualquer "novelinha de quinta categoria" (as globais são bons/maus exemplos!) podem mostrar isso.... ou não??
Essa putaria toda em FC.... em detrimento de tudo de bom que FC pode nos trazer..... isso eu não entendo mesmo!
Questionamentos se viados podem casar com viados, putas podem ser selebridades, cornos se tornarem comandantes e essa "massa de escrotas convivências"..... bla, bla, bla... nós estamos assistindo todos os dias na TV.... será que até a FC tem que nos "mostrar mais disso"????
Imagino crianças assistindo e "achando normal" isso!
E o _Sonho_, onde ficou???????

Minha resposta (e sim, em pelo menos um ponto eu forcei a barra, e tem um erro gramatical/semântico grave no antepenúltimo parágrafo):
Não só a sua linguagem está para lá de inapropriada, como eu prefiro expor meus filhos a toda a atividade (homo- e hetero-) sexual e afetiva da atual BSG do que aos termos que você está utilizando.
Primeira coisa: homoafetividade e homoerotismo são coisas absolutamente normais e naturais.
Segunda coisa: a sexualidade é uma coisa absolutamente normal e natural na vida de todos os seres humanos.
Então, crianças que estiverem assistindo devem mais é achar normal isso mesmo, não há nada de antimoral na sexualidade, nem na afetividade. São as pessoas que "não acham isso normal" que avacalham um monte de coisas em nome de uma religiosidade grotesca e anacrônica. Exemplo básico: a favor do casamento gay -> Stephen Hawking + Einstein; contra -> Osama bin Laden + George W. Bush.
Terceira coisa: a FC "nos mostrar mais disso"? Na minha opinião, a FC serve é para expor a humanidade da humanidade, tentar colocar metas para o comportamento normal dos seres humanos sob as cirunstâncias históricas e tecnológicas que estão por vir, seja nos dizendo como nos comportar melhor (Trek) ou como não nos comportar (1984). Não dá para expor a humanidade da humanidade, em uma época onde a censura arbitrária vem caindo cada vez mais (e ainda bem!!!), sem falar de sexo, de ciúmes, de traições, de tabus.

O Sonho? O meu Sonho é ter sempre um canal aberto de comunicação com meus filhos, onde assuntos que seriam tabu no passado sejam corriqueiros -- e isso não impede que existam moral e valores. Meu Sonho é ver histórias que contem como pessoas ordinárias se comportam sob as mais extraordinárias circunstâncias e, como as mentiras dos anos 50 e das casinhas de cerquinha branca já cairam por terra, que mostre que alguns aguentam as pontas (até certo ponto), outros caem nas drogas, outros perdem a bússola moral e impõem sua vontade à força, outros tiram proveito dos mais fracos ou mais bobos; alguns, a pretexto de manterem o passo e segurarem as pontas, cometem grandes atrocidades. Se você não percebeu, eu falei do Adama, do Tigh, dos filhos de Áries, do Baltar. E da presidente (ou do Gaeta).

O bonito da FC não são só navezinhas indo pra lá e para cá, e heróis de camisa rasgada salvando a mocinha, dando uns beijinhos e caindo fora no final do episódio. Coisas legais que a FC trazem -- além de idéias tecnológicas -- são idéias de como lidar do jeito certo (mesmo quando a FC mostra o jeito errado) com as mudanças que o tempo traz para nossas vidas.

O seu post, abaixo, além de trazer uma linguagem que eu -- pessoalmente, outras pessoas podem ter outras opiniões aqui na lista -- julgo inapropriada para uma discussão calma e civilizada dos assuntos em tela, ou mesmo se esses assuntos cabem (como eu acho) ou não (como é a sua opinião) no contexto de uma série como BSG.

Eu acho, ainda, que se você está tão descontente com esse "estado de coisas" na série, ninguém te obriga a assistir.

Por outro lado, eu estou extremamente contente com a série. Achei o penúltimo episódio meio forçado, mas o último teve um ritmo muito legal, um "plot twist" que eu não esperava (até ouvi a presidente dizer "eu avisei" num determinado momento), e acho que o bicho vai pegar nos próximos episódios no bom sentido.

gibak II

encontrei um repositório git mais atualizado do gibak.
O cara diz não saber Ocaml, mas documentou muita coisa. Agora eu preciso dar uma limpa no que está duplicado no meu disco (imagino que um backup feito diariamente via git vai gastar um pouquinho de espaço em disco). Mas a maior parte do que eu tenho ocupando espaço mesmo é bobagem.

Fim-de-semana: git

Depois de estudar bastante esse fim-de-semana, estou compreendendo bem mais claramente os conceitos do git. Vi que não vai ser nada difícil passar minha rotina (que hoje utiliza o horrendo TeamSource) para ele. Agora, só tenho que estudar as ferramentas gráficas para Win32 para fazer a evangelização dos meus colegas. E, é claro, fazer uma apresentação/treinamento para eles.

Ajuda que a documentação original é nota dez, e que a gente acha coisas como:
uma introdução legal em português;
a manpage git(1) -- comece pelos tutoriais...

Fim-de-semana: Raquel

Desde a semana passada, o pediatra dela (Dr. Luiz Megale) trocou o Aerolin por inalação com Atrovent e Berotec. O último tem efeitos colaterais semelhantes (especialmente no que tange à agitação e nervosismo) mas não tão acentuados (pelo menos por enquanto). Mas tem que usar, senão a bronquitezinha caminha até para pneumonia. Tirando uns poucos episódios, ficou numa boa.

O Lucas às vezes se esquece e perde a paciência com ela (briga ou fala alto com ela), mas 99% do tempo ele lida com ela numa boa.

Fim-de-semana: TV

Dollhouse episódio 3: continua interessante, com o mesmo ritmo;
Galactica: mais desastre, mas um bom episódio... parece que o Ron Moore não vai dar um final feliz pra coisa não.
Terminator: mais do mesmo.