Gerando classe LotusScript a partir de um formulário

08/07/2009 by wmadruga

Como resultado das anotações de idéias em blocos de notas, criei um agente em lotus script, beta ainda, que vai ler os campos de um formulário e gerar uma classe em lotus script para acessar os documentos gerados.

No dia 30 de junho, indo para o trabalho, tive a seguinte idéia e anotei no bloco de notas:

Idéia – Lotus Notes

Criar um agente que vai ler os campos de um formulário (nome/tipo) e gerar automaticamente uma classe lotus script e uma classe java para esse formulário.

À noite, separei uma hora para pensar mais no assunto e terminei criando um código inicial… Por enquanto só foi feita a geração da classe lotus script e ainda não testei todos os tipos de dados (só texto e número), coloquei o código no gist do github mas depois crio um projeto lá.

http://gist.github.com/141625/

Motivo?

Simples! Programação Orientada a Objetos no Lotus Notes. É de extrema urgência que os desenvolvedores notes comecem a trabalhar com OO e fazer uso de design patterns e boas práticas de programação. É muito custoso dar manutenção em sistemas com duplicação de código, tanto para o desenvolvedor quanto para a empresa.

Trabalhando idéias

29/06/2009 by wmadruga

Na maioria das vezes que tenho uma idéia legal, falta o tempo necessário para implementar e por incrível que pareça, quando eu tenho tempo, nenhuma idéia aparece…

Twitei pra ver o que as pessoas acham e disseram que devo começar a anotar as idéias.

Minha mente bloqueou de imediato a idéia de anotar baseado em sua experiência no passado, eu fazia as anotações mas…

  1. raramente lia.
  2. quando lia, não tinha o detalhamento necessário para que conseguisse implementar.
  3. alguém implementou antes ou encontrei idéias melhores que aniquilariam a necessidade da minha.
  4. perdia a anotação por não estar centralizada
  5. etc, etc etc.

Dae o Philipe sugeriu a leitura do livro Pragmatic Thinking and Learning e ainda deu duas dicas (1 e 2) do livro, dicas que neste momento de insanidade resolvi me comprometer em seguir por uma semana. Portanto no próximo domingo estarei postando o resultado e a análise de como foi usar as cadernetas durante a semana.

As dicas são: usar uma caderneta pequena para anotar idéias ao longo do dia e ter um bloco maior em casa para estressar as melhores idéias e extrair o máximo delas.

Como pretendo fazer isso?

Vou dedicar 1 hora por dia, em casa, para estressar essas idéias.

Não vou comprar blocos nem cadernetas, por mais legal que seja escrever no papel com a caneta (faço muito isso, preciso visualizar as coisas no papel, sério mesmo), para esse experimento vou me aproveitar da tecnologia. Farei as anotações no aplicativo Notes do iPhone. Dessa forma posso sincronizar com o mac, acessar as notas no computador, trabalhar nelas e sincronizar de volta para o iPhone.

Dependendo do resultado, ou independente dele, vou comprar o livro ou o ebook do livro.

É isso e quem tiver idéias, posta ae um comentário :)

Acessando a documentação da API e aprendendo com código gerado do modelo

11/06/2009 by wmadruga

Existe um jeito fácil e rápido de acessar a documentação da API que esteja sendo utilizada no desenvolvimento de aplicações no x-code.

E para quem ainda está aprendendo a desenvolver aplicações para iPhone, um jeito simples e prático de aprender o funcionamento básico das aplicações é consultando a documentação de cada classe ou método utilizados no código gerado automaticamente quando é criado um novo projeto baseado em um modelo.

No exemplo abaixo estou usando o SDK do Iphone, portanto é um pré-requisito caso queira reproduzir exatamente o que está escrito, caso contrário, também pode ser feito com a Core Library que já vem junto com o x-code e não há necessidade de download e nem do SDK do Iphone, porém a escolha do projeto deverá ser um projeto para Mac OS X.

Primeiramente, será necessário atualizar a coleção de documentos do seu x-code:

  • Inicie o x-code.
  • Pressione option+command+? para acessar o help do x-code.

x-code help

  • No menu, à esquerda, clique em subscribe nas documentações que quiser adicionar e aguarde o término do download.
  • Feche a janela de help.
  • Pressione command+shift+N para criar um novo projeto.
  • Embaixo da categoria Iphone OS, selecione Application e alguns modelos aparecerão do lado direito.
  • Selecione o modelo View-Based-Application.

x-code novo projeto

  • Dê um nome para o projeto e confirme.
  • Pronto, com o projeto criado, algum código padrão gerado, acesse uma classe qualquer, por exemplo, a implementação do ViewController, no meu caso, exemploViewController.m

exemploViewController.m

  • E agora é que vem a dica… Com o código-fonte aberto, pressione option e perceba que o cursor do mouse virou uma cruz, com option ainda pressionado, dê duplo clique em uma classe, ou um método, ou qualquer coisa que voce queira saber mais e a documentação será aberta apresentando o tópico selecionado.
  • No exemplo, cliquei em initWithNibName: que se encontra na linha 17.

help x-code initWithNibName

Agora é possível navegar pela documentação, através dos cliques no código-fonte, e compreender exatamente o que o código faz. Assim, com o tempo vai entrando no sangue :)

vegetariano ou não?

02/04/2009 by wmadruga

Pessoas surtam o tempo todo e acho que também tenho esse direto. :)

Então não sei se ainda sou vegetariano, afinal já estou comendo peixe há um tempo e hoje, há poucos minutos atrás, comi devorei um Mc Max.

Não sei se tenho cara de encarar carne no meu prato, mas o hamburguer foi fácil, fica ali escondido entre o molho, alface, tomate e pães.

Ah… mas sempre disse que “eu não como carne por causa da violência com os animais” mas tomo remédio e utilizo coisas que podem ter feito animais sofrerem… Ou viro radical ou sei lá, volto a comer hamburguer porque é complicado viver no meio termo.

Pelo menos tiro uma lição disso tudo, mesmo voltando a comer carne, ou não, hoje respeito mais os animais.

Ótimo, postei. Eu tinha que dizer isso ao mundo. :)

Mail crashes – Tip

28/03/2009 by wmadruga

Adoro o Growl mas depois de um tempo o Mail começou a dar pau direto… Era só eu tentar receber um novo email que o Mail fechava com uma tela de erro.

Muito bem, desabilitei o Growl apenas para o Mail e… não funcionou hahaha #fail. Dae fiquei com preguiça de tentar resolver, afinal ainda tenho o webmail :P

Mas chega uma hora que cansa… Então depois de muito pesquisar no google, encontrei a solução. Não basta só desabilitar o Growl, é necessário remover o bundle criado dentro da pasta Mail.

Portanto, apenas remova o arquivo /Library/Mail/Bundles/GrowlMail.mailbundle e voilá :)

E continuo usando o Growl para outras aplicações… uhuuuu.

Não façam o jailbreak do Iphone 3G 2.2.1 ainda

11/03/2009 by wmadruga

Fiz o jailbreak do meu iphone 3G de firmware 2.2.1 neste último domingo e levei o domingo inteiro nessa atividade de nerd. Mas não é muito simples usar o quickpwn??? next next next? PwnageTool também não é fácil de usar?… claro! São muito simples mesmo, tanto é que fiz e refiz o jailbreak umas quinhentas vezes durante o dia :D E por quê?

Porque todas as vezes que fazia o jailbreak, notava que ora a conexão 3G, ora a conexão wifi ficavam fracas. Além disso, não consigo uma conexão decente com o Cydia via wifi e raras vezes consegui com o 3G.

Depois desse incidente, pesquisei um pouco na internet e de fato muitas pessoas estão tendo o mesmo problema após o jailbreak mas ninguém tem nenhuma solução ainda…

Por isso não façam o jailbreak do iphone 3G de firmware 2.2.1 ainda… esperem mais um pouco… sei que a tentação é grande, mas não vale a pena fazer agora.

Ruby on Rails no mundo real 2009

05/02/2009 by wmadruga

Dia 04 de abril haverá mais um evento de Ruby on Rails em São Paulo, é o Ruby on Rails no mundo real 2009. Que nome grande ehehe e esperamos um grande evento também!

Achei ótimo que tenha sido marcado em um sábado, dessa forma fica muito mais fácil de participar porque não interfere no trabalho semanal.

O Evento contará com a presença de Fábio Akita e Carlos Brando e aguardo ancioso a palestra do Carlos que será sobre testes de software (“só imaturos não testam”).

Igualmente ancioso para a palestra de JRuby e Glassfish com rails pois a cada dia busco mais e mais argumentos para que um dia aproveite bem a oportunidade de poder explicar os prós e contras e finalmente conseguir inserir ruby oficialmente no meu trabalho.

Google Latitude

04/02/2009 by wmadruga

Ta aí um serviço que demorou para ser lançado e que a gente já vê nos filmes há um bom tempo… ehehe

google latitude

tá aí, já estou usando :)

tive que setar minha localização manualmente porque a versão para iphone ainda não está funcionando ¬¬

segue abaixo aonde funciona e onde funcionará rsrsrs

Google Latitude is a feature of Google Maps for mobile on these phones:

  • Android-powered devices, such as the T-Mobile G1
  • iPhone and iPod touch devices (coming soon)
  • most color BlackBerry devices
  • most Windows Mobile 5.0+ devices
  • most Symbian S60 devices (Nokia smartphones)
  • many Java-enabled (J2ME) mobile phones, such as Sony Ericsson devices (coming soon)
my location at work

my location at work

Avoid Vivo Online Issues

12/01/2009 by wmadruga

Diogo Santos lançou um ótimo add-on para firefox, o nome é meio estranho mas funciona :)

Se você é usuário da vivo e usuário de firefox então nunca acessou a vivo online ou não entra há um bom tempo né?

Pois seus problemas acabaram! AVOI (Avoid Vivo Online Issues) permite que o botão Entrar da tela de login da Vivo Online funcione e o infeliz(hehe) usuário consegue finalmente logar no sistema. o/

Parabéns Diogo!

Java

12/01/2009 by wmadruga

De volta ao mundo java, estou estudando maven2, v-raptor e relembrando struts2 e hibernate.

Estive tão afastado do mundo java que nem sabia que o conceito Convention over Configuration já estava sendo largamente utilizado, e acho isso ótimo porque já estou tão acostumado com rails que seria um saco ficar configurando arquivos xml em 2009…

…mas infelizmente alguns xmls ainda são necessários né. #fail hehe.