A DClick está patrocinando o Flex for Kids. Este é um evento muito especial para todos que trabalham não apenas com RIA, mas com desenvolvimento de Software em geral. Eu não preciso escrever muito neste post. Basta você clicar aqui e ver (sentir) o vídeo de menos de três minutos.
Ano passasdo perguntei ao Beck como passar parâmetros para Event Handlers adicionados dinamicamente, porque quando você adiciona Event Listener usando myComp.addEventListener(...), o handler deve esperar apenas o parâmetro do evento. O Beck deu uma solução para isso, mas deixou claro que é apenas uma solução "alternativa", não a melhor delas.
Alguns dias atrás eu estava trabalhando com requisições simultâneas para o servidor e queria guardar o parâmetro da chamada, mas não queria ter que retornar ele do Java, então pensei em uma outra solução para isso. Considerando que seu Event Handler está esperando uma Function que tem somente um parâmetro Event, eu criei uma outra Function que retorna uma Function esperando um parâmetro Event. Mas o segredo é que o escopo de Function Closure permite que você acesse parâmetros tanto da primeira quanto da segunda Function, então você pode fazer isso:
Sempre depois de um evento como o Flashcamp Brasil fica aquela sensação de "que pena que acabou". Mas no meu caso este sentimento é confuso. Ao mesmo tempo em que sentirei falta também me sinto aliviado. Eu tinha um grande receio que a minha apresentação não fosse bem recebida e, para ser sincero, assim como em tudo que eu faço, tinha a expectativa de estar fazendo algo de real valor.
Geralmente neste tipo de evento as pessoas esperam apresentações técnicas, demonstrações e coisas do tipo. E eles tiveram isso com excelentes apresentações tanto dos americanos quanto dos brasileiros. Mas eu tomei um rumo totalmente contrário abordando assuntos muitos mais humanos do que tecnológicos, embora a relação entre um e outro fosse reforçada em alguns pontos da apresentação. E parece que foi uma boa abordagem pelo feedback que tive das pessoas que vieram me cumprimentar depois da palestra.
Eu fico extremamente feliz de perceber que no fundo as pessoas puderam sentir e não apenas ouvir o que eu falei. Afinal de contas, uma apresentação também é uma experiência. E para mim, este primeiro Flashcamp, foi um verdadeiro marco.
Nos dias 15/01/10 e 16/01/10 será realizado em Maceió o Flashcamp Brasil e eu estarei lá como palestrante representando a DClick e falando das ideias do OUTBOX. Mas eu não poderia simplesmente falar de algo que alguns já conhecem, embora, provavelmente, não seja a maioria presente no evento.
Quando falamos em RIA inevitavelmente estamos falando de Experiência do Usuário. Mas deixando o "tecniquês" de lado, eu vejo experiência do usuário como um caso de empatia. Pensar em experiência do usuário é, num certo sentido, se colocar no lugar do outro; é fazer algo para alguém esperando que ele goste do que foi feito. Por encarar isto desta forma eu vejo muitas das outras coisas que eu faço sob a perspectiva da experiência do meu publico. Seja um Software, seja um post, seja um screencast, seja um vídeo, seja um treinamento ou uma apresentação, eu sempre me coloco no lugar das pessoas para conseguir oferecer a elas uma experiência que as marque de alguma forma. A frase abaixo sintetiza muito bem esta minha maneira de pensar:
"As pessoas esquecerão o que você disse, as pessoas esquecerão o que você fez, mas as pessoas nunca esquecerão como você as fez sentir." - Maya Angelou
Espero, desta forma, marcar o publico presente no Flashcamp Brasil proporcionando-lhes bons momentos com uma palestra útil, agradável e, por que não, divertida. E se você ver um maluco com a camiseta da foto abaixo saberá que sou eu (e para você que estará no Flashcamp, saiba que a minha palestra já começou).
Quando criamos um Container no Flex e não especificamos seu tamanho, o tamanho será calculado com base nos filhos que são adicionados ao Container. Porém, caso você especifique um tamanho para ele, o tamanho passa a ser o que você especificou e, caso ele seja menor do que o tamanho dos filhos, o componente exibirá uma ScrollBar.
Mas e se você quiser que ele volta a calcular o tamanho para você? Existem alguns casos em que precisamos que isso seja feito, porém não podemos atribuir "null" ou -1 como valor na propriedade para que o Container volte ao comportamento inicial.
Conversando com o Beck Novaes a muito tempo atrás, ele me apontou uma solução para isso. Se vocês olharem no código de alguns componentes do Flex (como o Container ou o UIComponent), vocês encontrarão várias referências para a função isNaN() e, como muitos de vocês devem saber, NaN é o valor atribuído a variáveis numéricas quando não estão com algum valor numérico atribuído.
Portanto, para que o componente calcule o tamanho para você, faça o seguinte:
Não é a primeira vez que entro com meu serial do Flex Builder e recebo a mensagem dizendo que meu serial é inválido. Dessa vez fiz uma procura e achei o que causa tal mensagem de erro.
Por algum motivo quando executamos o eclipse, ele não sobe com a permissão de admin na máquina, o que o impossibilita de criar o aquivo license.properties que é responsável por armazenar seu serial.
Para resolver o problema, bastei executá-lo via Terminal com o comando sudo.
Screencast 2 em 1: Entenda os dois componentes em apenas 5 minutos.
Podcast: Podcast baseado numa "reunião/apresentação" sobre componentetização e vários assuntos "avançados" de Flex na DClick. Neste Podcast a Parte I da reunião com foco em componentização e performance no front-end