quinta-feira, 25 de dezembro de 2008

Hospedagem de projetos e repositorios SVN

unfuddle_logo

Para quem procura um host gratuito para gerenciamento e colaboração em projetos, a melhor alternativa atualmente, na minha opinião, é o Unfuddle.

assembla_logo Eu usava, até pouco tempo o Assembla. Mas, embora ele não seja mais gratuíto, o custo médio de US$2/mês por integrante (usuário) é bastante considerável para qualquer projeto.

Particularmente eu adotarei daqui para frente o Assembla para projetos comerciais/efetivos (com fins lucrativos) e o Unfuddle para projetos iniciais (fase piloto/concepção).

Em resumo, os recursos disponíveis em ambos, que eu considero primordiais apra qualquer projeto são:

  • Gerenciamento de Milestones: Que permite definir metas para os projetos. Geralmente uma versão final de um projeto. Eu costumo ter Milestones definidos como “versão 1.0”, “versão 1.1”, etc.
  • Gerenciamento de Tickets: Que geralmente contemplam o registro de trabalho (sugestões, soluções, bugs, etc.) que compõem um Milestone.
  • Wiki: Com a finalidade de documentar o projeto. Contemplam geralmente páginas que apresentam o projeto, documentam sua finalidade, acesso ao Download de binaries, sources finais, etc.
  • SVN/Subversion: Repositório de controle de versão dos arquivos que contemplam o projeto. Indispensável no trabalho em equipe.

O Unfuddle apresenta todas as características acima. No caso do Wiki, o nome do recurso está disponível como Notebook. Ainda no Unfuddle, além de Subversion, é possível adotar como sistema de controle de versão o Git.

O Assembla apresenta uma gama muito maior de ferramentas do que o Unfuddle.

Enfim, são 2 opções que certamente resolvem qualquer necessidade de desenvolvedores/equipes que não possuem infra estrutura própria para gerenciamento de projetos.

Na linha de produtos da Adobe, vale lembrar que o Dreamweaver CS4 possui integração com SVN, bem como o Eclipse que é a base do FlexBuilder com o plugin SubClipse.

Se você quer saber mais sobre SVN. Veja esse post publicado aqui no TeclandoAlto sobre o assunto.

segunda-feira, 22 de dezembro de 2008

DClick RIA Teaser

DClickLogo

A DClick, merecedora do título de maior empresa produtora de RIAs do Brasil  (senão uma das melhores do mundo, na minha opinião) disponibilizou um teaser em homenagem aos seus integrantes.

Mais do que um vídeo interno, realmente o seu conteúdo é no mínimo inspirador. Parabéns e obrigado DClick!

Post e download do vídeo no blog da DClick:
http://blog.dclick.com.br/2008/12/19/enfim-a-tal-surpresa-dclick-team-teaser/pt

quinta-feira, 4 de dezembro de 2008

AJUDA - UTI

Olá pessoal,

Ainda não havia feito o uso da internet para tal propósito, mas espero que possa obter um resultado tão positivo quanto creio que posso alcançar com essa ação.

Minha sogra sofreu nesta semana um AVC e encontra-se em situação grave em Conceição do Coité/BA.
Estamos, agora há 3 dias procurando por vaga na UTI dos hospitais de Salvador e Feira de Santana (mencionados pelos médicos: Roberto Santos e HGE (Salvador) e Cleriston Andrade (Feira)), que conforme opinião médica são os únicos que podem atendê-la no momento.

Assim, conto com QUALQUER ajuda que possa nos levar a conseguir a sua transferência. Ela encontra-se em um leito comum no Hospital Regional de Conceição do Coité.

Conto também com a fé daqueles que crêem, como eu.

Como estou dedicando meu tempo para apoiar a minha namorada nessa situação e portanto não estarei conectado, peço que os contatos sejam feitos através dos meus números de celular:

71-9212-0909 / 71-8120-0035

Infelizmente não contamos com um plano hospitalar para ela. Mas se ainda assim for a única opção, me disponho aos meus contatos comerciais a permutar uma ajuda médica particular pela minha capacidade de trabalho.

Muito Obrigado!

DESABAFO: Que situação é essa desse país? Onde está o direito à vida tão defendida pelos tais "Direitos Humanos" que não conseguimos ter nossas pessoas querídas, e idôneas atendidas em suas necessidades mais básicas?

Vicente de Paula Maciel Junior

terça-feira, 2 de dezembro de 2008

Flex Grafico de Barra no DataGrid sem usar Visualization Framework

igorcostaBlog

Hoje no MSN o Igor Costa me apresentou um hack , para de forma muito criativa apresentar um gráfico de barras usando linhas do DataGrid referente a cada valor apresentado. Veja o post: http://www.igorcosta.org/wp-trackback.php?p=190

sábado, 29 de novembro de 2008

RIP Rich Internet Presentation

thesecret_for_ria

Foi simplesmente a melhor apresentação a respeito de RIA que já tive a oportunidade de assistir, não só no tocante ao conteúdo, que foi de uma riqueza impressionante e muito bem elaborado, mas também pela performance do apresentator, Beck Novaes (DClick), que conseguiu de uma maneira extremamente clara, objetiva e didática, abordar temas “obscuros” (e às vezes até pouco conhecidos/ignorados) da produção de um RIA.

Fico extremamente orgulhoso de saber que um material dessa qualidade tenha sido desenvolvido por um brasileiro e gostaria muito de ve-lo publicado no Adobe Developer Connection como uma referência importante, tanto para quem vai iniciar-se no desenvolvimento de RIAs, quanto para quem quer atingir um nivel superior na realização e redesenho de seus trabalhos atuais.

Por isso, digo que o Beck consegiu inaugurar o termo RIP (Rich Internet Presentation)

Isso porque ele conseguiu colocar na execução da sua apresentação, exatamente tudo o que ele abordou como importante no desenvolvimento de um RIA. Quer saber o quê foi? Como foi? Só assistindo.

http://blog.dclick.com.br/2008/11/29/60-pessoas-ja-sabem-o-segredo/trackback/pt/

quarta-feira, 19 de novembro de 2008

DClick disponibiliza arquivos do MAX2008

DClickLogo

O Rafael Martinelli da DClick que está nos EUA participando do MAX 2008, em uma atitude bastante admirável está disponibilizando alguns arquivos distribuídos/gravados durante o evento.

Dentre os arquivos, o Flex 4 (Gumbo) para Win e Mac e o Catalyst para Mac, além de videos da apresentação do Ely Greenfield.

Passe lá, baixe e deixe o seu comentátio de agradecimento!

Blog do time to Catalyst Thermo

thermo_blog_logo

O blog do time responsável pelo Catalyst (Thermo) está no ar.

Vários tutoriais/screenshots já estão disponíveis para você matar a curiosidade.

Não vejo a hora de pôr as mãos nele!

Alchemy Flash C++

20080330_atoms_and_alchemy

A imagem ao lado não se refere ao logo do projeto que a Adobe anunciou no MAX 2007 e que disponibilizou para testes e avaliação da comunidade no MAX 2008 que ocorre esta semana.

A imagem refere-se a capa de um livro que pode se conhecido neste link. Simplesmente achei o logo do mesmo interessante e resolvi usar a imagem para ilustrar o post.

OK! Justificativas feitas, vamos ao que realmente interessa!

No MAX 2007, este projeto originalmente chamado de FLACC foi apresentado, anunciando a possibilidade de compilação de código escrito em C/C++ em uma biblioteca com bytecode possível de ser consumido e rodado em uma “futura” versão do FlashPlayer.

Pois bem. Essa semana, no MAX 2008 que ocorre em San Francisco/CA/USA, o projeto foi aberto ao público e encontra-se disponível no Adobe Labs afim de que programadores C/C++ possam efetivamente testá-lo, bem como sugerir implementações, ou simplesmente dar a sua opinião. O “futuro” FlashPlayer traduz-se no recém disponibilizado FlashPlayer10 e extende-se ao Adobe AIR 1.5 disponibilizado paralelamente ao anúncio do Alchemy.

A pergunta é: Qual o objetivo prático do Alchemy?

Inicialmente, e confesso que eu fui uma dessas pessoas, me pareceu que esta sería a declaração de liberdade de recursos do FlashPlayer, abrindo ai a possibilidade de valer-se de bibliotecas C/C++ destinadas até mesmo co controle de hardware (impressoras fiscais, equipamentos de biometria, joysticks, etc.), mas infelizmente não é do que se trata.
O principal objetivo do Alchemy é expandir a capacidade do FlashPlayer no que se refere a processamento de dados. Ou seja, algoritimos de criptografia; leitura, análise e processamento de áudio e vídeo; leitura, escrita de renderização dos mais diversos tipos de formatos de arquivos e coisas do tipo. Ao invés de portar/reescrever um código originalmente escrito em C/C++, o mesmo pode ser simplesmente  compilado em um SWF/SWC e consumido por um código AS3 (Flash/Flex/AIR).
Ou seja, os recursos capazes de serem explorados em C/C++ no FlashPlayer10/AIR 1.5, são limitados exatamente aos recursos presentes nos respectivos players, o que acaba soando óbvio mas que não precisaria ser necessariamente assim. Porém, de qualquer maneira é um avanço impressionante nas capacidades que o Adobe Flash Platform passa a oferecer. Aliás, gostei deste termo ter sido resgatado pela Adobe para referenciar toda a linha de produtos relacionados à produção ou a execução/controle de conteúdo utilizando ActionScript.

Então o que muda? O que poderá surgir a partir disso?

Mais uma vez as possibilidades estão apenas limitadas à critividade, mas com ainda mais opções. Pense numa formula tipo “infinito² - direct_hardware_access”.
Primeiro a gente tem que pensar que a maioria das possibilidades de uso desses recursos que serão implementados daqui por diante já estavam disponíveis e eram possíveis por causa do recurso de “ByteArray” (Classe ByteArray) introduzida no FlashPlayer9/AIR 1.0, porém sendo necessário um esforço muito maior do que será necessário agora, vez que para alcança-los era necessário reinventar a roda reescrevendo tudo o que já existia antes para tal. Hoje, com o Alchemy, bastará compilar um código pré-existente que tenha a base da funcionalidade deseja e implementá-la com AS3. Alguns recursos, como os relacionados diretamente a som (Dynamic Sound Sampplig) e alguns em relação a formato de vídeo (H.264 por exemplo) só serão possíveis pela disponibilidade do recurso internamente no FlashPlayer10/AIR 1.5, assim como também a aceleração de vídeo por software e por hardware.
Dentre as possibilidades práticas que podemos imaginar estão desde as já apresentadas como exemplo pela própria Adobe no MAX 2007/2008 como jogos famosos sendo disponibilizados para rodar com o FlashPlayer/AIR onde o jogo Quake I foi utilizando como exemplo, players de vários formatos de audio/video (não apenas MP3/FLV), conversores de arquivos, serviços de criptografia/descriptografia de dados, implementação de protocolos de comunicação cliente-servidor e até mesmo um maior avanço no uso desses players de maneira mais abrangente em dispositivos como celulares, set-top-boxes (tv-digital), pocketPCs, console de games, etc.

E você? O que você acha que pode ser possível a partir do Alchemy?

Lembre-se, se você quiser começar a portar um eventual código C/C++, na página dedicada ao Alchemy no Adobe Labs, você encontra além dos binaries do projeto, exemplos e instruções de como preparar o ambiente e usar o compilador no Windows, MacOS e Linux.

ColdFusion IDE codename Bolt

BOLT1

Seguindo a série de novidades que estão sendo anunciadas no Adobe MAX 2008, surgiu a notícia de uma IDE específica para ColdFusion, baseada no Eclipse (assim como ocorre com o FlexBuilder) chamada por enquanto de BOLT.

Confesso que tinha até mesmo esquecido, que à não muito tempo a Adobe havia feito uma pesquisa em massa, questionando seus usuários/parceiros quanto a aceitação/necessidade de uma solução do tipo.

Hoje utilizo o CFEclipse e algumas vezes recorro ao Dreamweaver, que adicionei novamente ao “cinto de utilidades” depois das novidades presentes na versão CS4.

Cenário atual em relação ao CFEclipse

O CFEclipse justifica-se para mim por me permitir unificar minhas ferramentas de programação em uma única plataforma, o Eclipse, e ser gratuíto. Seus recursos, na minha opinião, não são assim tão fantásticos e pecam bastante em coisas simples como sintax highlight, code completition, document templates e code templates que são recursos extraordinários presentes e disponibilizados pela plataforma Eclipse e muitas vezes ignorados. O FlexBuilder também comete alguns desses pecados, porém recursos como package/inheritance recognition, structure recognition, refactoring e outras caracteristicas ofuscam esses pontos negativos enquanto o CFEclipse não trata nem o básico de uma maneira plenamente satisfatória. Mas tudo bem. É gratuíto, é uma opção, já permite alguma agilidade de longe muito melhor do que um Notepad Plus.

Cenário atual em relação ao Dreamweaver

O Dreamweaver é excelente e de qualidade inquestionável e imbatível quando se trata de trabalhar layout e programação ao mesmo tempo. Peca por não ter recursos ágeis de codificação e nesse ponto meu grau de comparação sempre será os recursos presentes no Eclipse. Na versão CS4 melhorou muito. A questão de integrar-se com Subversion foi para mim o ponto mais alto, seguido pelos recursos de desenvolvimento JavaScript/AJAX e pelas incríveis melhorias de interface e funcionalidade relacionadas a WebStandards.

A proposta do Bolt

Tomando como base o conteúdo da seção no Adobe Labs dedicado ao Bolt, onde aliás os interessados podem inscrever-se ao Beta do mesmo, relaciono os principais recursos e meus comentários a respeito dos mesmos.

  • Auto-configuração de Mapeamento de Objetos Relacionais (ORM): Sendo lançado juntamente com o ColdFusion 9 Centaur, era de se esperar que o Bolt trouxesse um recurso do tipo, senão seria uma falta grave. No post que fiz a respeito do ColdFusion 9 Centaur, há detalhes a respeito desta nova funcionalidade. Ainda não tenho o Bolt em mãos, mas creio eu que a funcionalidade baseie-se indicação do DSN com o qual a aplicação à ser desenvolvida irá trabalhar e a partir disso o Bolt seja capaz de gerar os arquivos de configuração necessários à implementação do recurso no framework do ColdFusion 9
  • Geração de Código: Acredito eu, trata-se de wizards para a criação de objetos, suas propriedades, e métodos, incluindo os getter/setters seguindo as novas especificações do CFML/CFScript também abordadas no post que fiz sobre as novidades do ColdFusion 9
  • Gerenciamento do Servidor: Este recurso deve expor o painel administrativo do ColdFusion diretamente na IDE, eliminando a necessidade de se abrir um navegador para interagir com a mesma.
  • Facilidade de extensibilidade usando recursos exportos pela arquitetura do Eclipse. Sinceramente isso é natural de qualquer recurso baseado no Eclipse, à não ser que a Adobe decida, a exemplo do que ocorre com o Flash, Dreamweaver e etc, definir um framework próprio (API) para promover tal extensibilidade com Javascript por exemplo.
  • Sintax highlight para CFML/CFScript, HTML, Javascript e CSS. É o mínimo #1 que se espera de uma IDE para ColdFusion ou qualquer outra tecnologia semelhante.
  • Code Completition para CFML/CFSCript (tags/palavras-chave), funções, variáveis e componentes. É o mínimo #2.
  • Expansão/Retração de bloco de código. Útil para códigos muito extensos. É um dos recursos básicos da plataforma Eclipse no que se refere à edição de código. Particularmente, eu não sentiria tanta falta disso, mas sei que existem desenvolvedores que não dispensam este recurso simples.
  • Criação e Gerenciamento de blocos de código (snippets). Neste teor, eu só espero que a Adobe não queira reinventar a roda, como ocorreu com o CFEclipse e faça uso dos recursos de Code Templating que o Eclipse oferece e é na minha opinião um dos pontos mais altos no que diz respeito de agilidade de desenvolvimento/produção de código. Espero também que a Adobe preocupe-se em permitir que os templates de novos arquivos sejam editáveis.
  • Visualização estrutural. Janela que apresenta o componente/arquivo de código em questão como uma estrutura, identificando métodos, variáveis, etc. Está aí algo também bem básico para qualquer IDE.
  • RDS Explorer. OK! Obrigado! Mais um básico! Espero só que seja mais útil do que encontrado por exemplo em outros recursos já disponibilizados no Eclipse, um pouco mais próximo do Data Explorer que existe no Dreamweaver.
  • Debugger com recursos de verificação linha-a-linha. Muito útil, bem vindo, já disponibilizado como plugin para o eclipse anteriormente (mas que ainda não utilizei). Acho que não utilizei justamente por ser algo que eu teria que configurar manter de forma independente e que para mim não se justifica muito em uma IDE.

Enfim, se a Adobe conseguir 50% do que se espera, eu acho que já teremos em mãos uma ferramenta extraordinária e sem precedentes quanto ao desenvolvimento ágil com ColdFusion.

Lembre-se que para participar do Beta, você pode candidata-se a partir do link que se encontra na página dedicada ao Bolt no Adobe Labs.

ColdFusion 9 Centaur

Logo ColdFusion 9 - Centaur

Das novidades anunciadas, umas da que eu mais esperava!

O ColdFusion 9, de code-nome Centaur, na minha opinião apresenta-se com um pacote de inovações técnicas na sua infra-estrutura que remetem à força e dedicação da Adobe em torná-lo cada vez mais uma plataforma competitiva em relação a outros servidores de aplicação disponíveis no mercado.

As novidades desta versão, conforme o que já foi publicado oficialmente pela Adobe (há mais, acreditem), deixam isso bem claro. Faço abaixo meus comentários pessoais a respeito de cada recurso:

Mapeamento de Objetos Relacionais (ORM)

A idéia é diminuir a necessidade de implementação personalizada e geralmente repetitiva para que se obtenha consistência e agilidade no desenvolvimento de aplicações no que se refere à dados. Com este recurso, de uma forma bastante simples o ColdFusion irá expor ao desenvolvedor, a partir de uma configuração bastante simples, objetos que representam dados do banco de dados, considerando a relação existente entre os mesmos.
Hoje, para atingir uma situação/ambiente de desenvolvimento semelhante, utilizo o framework Transfer-ORM desenvolvido, mantido e disponibilizado por Mark Mandell.
Infelizmente acho que códigos que exponham tal recurso ainda não podem ser publicados, mas se você deseja ter uma prévia do que será este recurso no ColdFusion 9 Centaur, conhecer o Transfer-ORM é uma boa introdução.

Melhorias na linguagem em sí

Até mesmo para expor o recurso de mapeamento de objetos relacionais (orm) citado acima, a linguagem necessitava de implementações. Haja visto que o próprio Transfer-ORM acaba pecando em alguns dos seus aspectos internos e capacidade de integração com outras camadas da aplicação, justamente por algumas limitações que o CFML/CFScript apresentavam até então. No caso do Transfer-ORM isso é notável principalmente quando implementa-se uma integração com o Flex/AIR por exemplo. Em resumo, é necessário criar algumas soluções alternativas para integrar os objetos gerados pelo Transfer (os TransferObjects) às capacidades AMF (Remoting/LiveCycle) do ColdFusion.

Essas melhorias na linguagem são basicamente:

  • Possibilidade de escrever componentes (CFCs) totalmente utilizando CFScript
  • Palavra chave “new” para simplificar o instanciamento de componentes bem como sua inicialização
  • Palavra chave “import” para definir o acesso a objetos de dependência em um componente
  • Definição explícita de getters e setters (métodos com diretivas get/set)
  • Definição de um escopo para variáveis locais que simplificará até mesmo a estrutura de um componente
  • CFFINALLY e CFCONTINUE que complementam a logica do TRY/CATCH e LOOPs
  • Enfim, a eliminação das diferenças entre CFTAGs e CFSCript

Ao mesmo tempo que temos que avaliar que isso tudo é extremamente positivo em termos de recursos, capacidade e robustez do ColdFusion, acho que foi importante a preocupação em manter a simplicidade do CFML em sí afim de que o ColdFusion não perca a agilidade da programação declarativa.

Outro fator importante é a proximidade de sintaxe, na questão dos scripts, da estrutura de código e da lógica que será possível de se implementar com o CFSCRIPT em relação às tecnologias concorrentes. Creio eu que além de diminuir uma resistência – que é imediata em relação as TAGs – aumenta a capacidade de se compreender o ColdFusion por parte de desenvolvedores PHP, ASP/.Net, Java, etc.

Serviços ColdFusion expostos ao Flex/AIR através de bibliotecas AS3 específicas (SWCs)

Como desenvolvedor Flash/Flex/AIR, este para mim é o principal recurso que fará diferença no meu dia-a-dia a respeito do ColdFusion 9 Centaur. Vários recursos, que não sei se já podem ser citados publicamente ainda por isso não o farei agora, que hoje dependem de uma implementação manual e repetitiva de aplicação para aplicação, já será abstraída pelo ColdFusion, permitindo o consumo direto desses recursos por meio de objetos em uma API definida em AS3 que poderá ser implementada nas aplicações como RSLs (Runtime Shared Libraries) assinadas digitalmente, que farão parte do framework compartilhado de distribuição única, ou seja, que o usuário baixa uma única vez ao primeiro acesso à aplicação Flex (o AIR não necessita desse download adicional).
Este recurso será certamente considerado um grande diferencial na adoção do ColdFusion para integração com Flex em aplicações RIA robustas.

Método “onServerStart” no Application.cfc

Bom, para quem é usuário do CF e já implementa o Application.cfc em suas soluções, a importância já é implícita. Mas enfim, dá ao desenvolvedor a capacidade de executar uma rotina personalizada na inicialização de um servidor.

 

Para ler dados oficiais do anúncio e candidatar-se a Beta Tester, visite a página dedicada ao lançamento no Adobe Labs:
http://labs.adobe.com/wiki/index.php/Centaur

Adicionalmente, eu não poderia deixar de comentar que ainda espero que exista alguma novidade em relação a politica comercial do ColdFusion. Mas como ainda estamos em fase de discutir o produto em sí, o que nos resta é aguardar.

De qualquer forma, repito, na minha opinião a Adobe encontrou várias formas de justificar e reforçar o diferencial do ColdFusion em relação aos seus concorrentes. E digo isso sustentando que eu mesmo me surpreendi.

segunda-feira, 17 de novembro de 2008

Tudo sobre o Flex com exemplos

tourDeFlex

Essa aplicação AIR foi anunciada hoje no MAX2008 e tem como objetivo principal:

- Permitir um overview da arquitetura do Flex a iniciantes

- Servir de referência visual para desenvolvedores experientes

- Permitir que soluções diversas possam ser demonstradas facilmente

Foi uma sacada bem legal. Está disponivel também como plugin para o Eclipse/FlexBuilder.

Faça o download em: http://flex.org/tour

AIR 1.5 disponivel para download

Adobe AIR

Conforme já foi dito aqui no blog com o post sobre as novidades do MAX 2008, o AIR 1.5 já está disponível.

Download AIR Runtime

Download AIR SDK

Confira post sobre update do Flex SDK e FlexBuilder.

FlexBuilder 3.0.2 e Flex SDK 3.2

fx_smallAtualização (release) para o FlexBuilder e o Flex SDK para oferecer suporte ao FlashPlayer10.

Detalhes a respeito deste release (e links) podem ser encontrados no DeveloperConnection:
http://www.adobe.com/devnet/flex/articles/sdk32_fb302.html

Bastidores técnicos do Adobe MAX2008

max2008_behindScenes

Dê uma olhada neste vídeo que o Serge Jespers do webkitchen.be fez, mostrando uma pequena parte da infra estrutura do MAX 2008 para o salão principal onde ocorrerão os SneakPeaks que nos trarão as grandes novidades deste ano no evento.

Site oficial Adobe MAX 2008 USA by 2Advanced

max2008_site_2advanced

O site que a 2Advanced desenvolveu para o MAX 2008 está sensacional. Fiquem atentos aos cenários interativos que são carregados como background (não possui um aviso de carregamento. simplesmente aguarde). Na imagem acima um screenshot do background com um game no estilo “Genius”. Há ainda outros 2 cenários com outros tipos de interatividade. Espero que vocês também consigam ver os FlexBots, os FlashChimps e o AIR-dirigível! Eu ainda só não consegui sacar a mensagem do “BigSpaceship”. O que será? ;)
DICA: Reparem que essa interatividade é também informativa! ;)

Adobe MAX 2008

(Imagem e origem do conteúdo: FlashMagazine.com)

Essa semana começa o evento mais importante do ano (para mim). O MAX 2008, desssa vez realizado em San Francisco/CA promete vir com novidades bombásticas, como sempre.

As primeiras já começaram a rolar em várias fontes, e eu vou tentar o máximo possível transcrevê-las aqui.

Thermo é Flash Catalyst – Detalhes a respeito dele surgirão ao longo da semana.

Flash Media Server 3.5 – Com novidades significativas que definitivamente o colocará muito à frente de soluções alternativas existentes no mercado.

Adobe AIR 1.5 – Já está disponível para download, contendo basicamente suporte à criptografia de dados usando o SQLite, suporte aos recursos do FlashPLayer10 e uma atualização ao byte-code do WebKit par aum aumento significativo de performance de aplições AIR escritas em HTML/Javascript.

Aceleração por Hardware ao renderizamento de conteúdo no FlashPlayer10. Inicialmente suportado por chips baseados na plataforma ARM - que incluem os Chips da nVidia -  mas que possui interesse de outros fabricantes que também virão a oferecer ta recurso.

Um detalhamento dessas notícias pode ser verificado através de um release oficial disponível no site da Adobe.

terça-feira, 11 de novembro de 2008

POG ColdFusion para identificar registros que nao podem ser excluidos de uma tabela

Odeio POGs. Em primeiro lugar porque a exigência comigo mesmo faz com que eu não descanse até encontrar uma solução verdadeiramente elegante.

A situação desta vez foi a seguinte: Se vocês repararem, todos os sistemas que a gente encontra por ai, no CRUD apresentam a possibilidade de excluir qualquer registro, verificando no momento da transação (server-side) se aquela ação é realmente possível ou não. Se possível, simplesmente efetiva, senão retorna uma mensagem para o usuário. A minha intenção é já desabilitar a opção de excluir na interface, prevendo tal condição. Para isso, preciso que no momento de mandar os registros de uma tabela para serem apresentados na interface, eu verifique se estes não são referenciados de alguma forma.

Conversando com meu amigo Jefferson Petilo, primeiro definimos o que era óbvio. Precisaríamos no banco de dados que fosse, utilizar as restrições de operação entre registros das tabelas através de chaves estrangeiras. Considere:

Tabela1 (TiposDeImagens):

Campo Tipo Função
id (uuid, int, etc) Chave Primaria
label (varchar) Descrição do tipo

Tabela2 (Imagens):

Campo Tipo Função
id (uuid, int, etc) Chave Primaria
label (var char) Descrição da imagem
tipo (uuid, int, etc) Chave Estrangeira
OnDelete = restrito


Logo depois, por não encontrar nada universal no SQL ou que pudessemos facilmente replicar para vários banco de dados, decidimos que a melhor maneira de verificar registro por registro (no exemplo, da Tabela1, TiposDeImagens) quanto a possibilidade do mesmo ser excluído, seria:

POG_cf_img0_11nov08_17h53m

Porém isso, claro, na ocasião de ser disparado contra um registro que não possui ligações, ocasionaria na exclusão do registro em sí.

Ai entra o POG:

POG_cf_img1_11nov08_17h54m

O <cftransaction> com o ROLLBACK logo após o teste de deleção do registro, garante que o mesmo não seja efetivamente excluído.

Continuando a conversa com o Jefferson verificamos ainda a implementação desta solução via “trigger/actions” no banco de dados. Qual não foi a nossa surpresa ao reparar que o “POG” acabou sendo uma solução bem mais simples de se implementar.

Outra coisa em relação ao uso de “triggers/actions” é o fato de tornar a solução dependente de banco de dados e implicar em se ter várias versões de um código relativo a um mesmo e único recurso. Mas essa é definitivamente outra discussão de prós e contras.

O que fica para mim agora, é o desejo de estudar alguma solução, que seja ao mesmo tempo “elegante” (antônimo de POG, embora eu e o Jefferson tenhamos considerado este POG como “elegante”) e simples de ser implementada.

sexta-feira, 17 de outubro de 2008

Musica Eletronica Festa Jump Up batidas quebradas

jumpup

Eu adoro música eletrônica e raramente tomo conhecimento destas festas sendo organizadas aqui em Salvador/BA onde moro atualmente.

Abaixo, detalhes sobre a festa!

TE VEJO LÁ! “tum-tisdum-tisdum….”

A cena eletrônica soteropolitana vem ganhando novos adeptos constantemente. Prova disso é a JUMP UP – Batidas quebradas, festa mensal que há mais de um ano “faz a cabeça” do público da capital baiana. O evento reúne artistas nacionais e internacionais com o objetivo de divulgar as batidas quebradas – com destaque para o Drum´n´Bass – nesse crescente cenário. A sua 16ª edição contará com a participação dos DJs Wes(SP), grande nome do liquidfunk brasileiro, Byron(PI), maior nome do drum and bass de Teresina, e os baianos Bassick e Lordbreu, e será realizada no dia 18 de outubro, às 23h na boate Boomerangue. Os ingressos custam 12 reais (até meia-noite) e 15 reais, e são vendidos no local da festa.

Festa JUMP UP – Batidas Quebradas
Atrações: DJs Wes (SP), Byron (PI), Bassick, LordBreu
Data e horário: 18 de Outubro, sábado, às 23h.
Local: Boate Boomerangue (Rua da Paciência, 307, Rio Vermelho. Salvador-BA)
Ingressos: R$12,00 (até meia-noite) e R$15,00
Informações: 71 3334-6640/5577

INDICADO POR: Eduardo Pelosi

quinta-feira, 25 de setembro de 2008

Técnicas de lingüísticas para a produção de conteúdo de qualidade na internet

blogsbalogo

A equipe BlogsBA vai promover, no dia 18 de outubro, uma apresentação sobre Técnicas de lingüísticas para a produção de conteúdo de qualidade na internet e gostaria de contar com a participação de todos vocês.

Clique aqui para mais detalhes

quarta-feira, 24 de setembro de 2008

Vaga para programador Delphi

Por pedido da consultora Suênnia, da Colabore, segue o anúncio da vaga para programador Delphi.

PRÉ-REQUISITOS:
Superior Completo
Experiência de programação em Delphi para Win 32
Conhecimentos de base de dados Postgresql, Sql Server 2000/2005
Conhecimentos de Windows Server, Freebsd, Linux e PHP
Disponibilidade para residir no interior da Bahia

FUNÇÃO:
Gestão da Infra-estrutura de rede da empresa e do ERP (Startsoft)
Desenvolvimento de aplicações complementares ao ERP

Interessados enviar curriculum para:
colabore@colaboreconsultoria.com.br

sexta-feira, 19 de setembro de 2008

Produtividade Flex e Cairngorm com o Factory IDE

riaptblog Recebi essa dica do @vedovelli (Fábio Vedovelli) no Twitter, fui conferir no blog do RiaPT e achei simplesmente sensacional! Eu já tinha procurado por algo assim e não tinha encontrado.

Além de aumentar a produtividade, aumenta também a qualidade do código que produzimos, e nos incentiva a produzir uma boa documentação.

Veja post original no RiaPT

terça-feira, 16 de setembro de 2008

Chrome - FireFox - Ubiquity

chrome_ubiquity_firefox Iniciou-se a partir deste twitt reencaminhado pelo FelipeMX, com um comentário sobre o Ubiquity/Firefox/Chrome, e outro twitt do Germano Bona sobre o mesmo, uma série de comentários a respeito que acabaram virando um post do Germano no blog CTRL+F5 sobre o tema, no qual eu estou interagindo colocando meus pareceres sobre o assunto, onde surgiram inclusive os tópicos relacionados com o Google Gears, o V8 e o Tamarin (Adobe/Mozzila).

Fica aqui então a referência:
http://www.controlf5.com.br/2008/09/15/ubiquity-nova-forma-de-interagir-com-o-conteudo/

quarta-feira, 3 de setembro de 2008

Google Chrome. OK! Adobe browser. Por que nao?

Adobe CS3_thumb Analisando os comentários que surgiram após o anúncio do Google Chrome, um pensamento que na verdade já tenho há tempos voltou a "passear" na minha mente: Por que não um navegador da Adobe?

Se você analisar as principais características do Chrome, fica ainda mais evidente que a Adobe tem total condições de colocar uma opção de navegador à disposição, que teria excelentes condições de se tornar o melhor dentre todos.

Relaciono aqui alguns dos principais recursos técnicos presentes no Chrome, e como a Adobe pode correspondê-los:

Recurso Google Chrome Adobe
Javascript Engine V8 Tamarim (doado ao Mozilla.org)
Runtime (?) Google Gears AIR
Browser engine WebKit / Safari engine WebKit / Safari engine (??)
? - Ainda não sei se é correto especificar o recurso como Runtime Virtual Machine
?? - O WebKit não é da Adobe, mas é o engine implementado no AIR para renderizar XHTML/Javascript atualmente no controle mx.controls.HTML (Flex SDK). Portanto, já existe domínio em como implementá-lo

segunda-feira, 18 de agosto de 2008

Nirvana em orçamento de projetos

Stock Photos Eu particularmente não gosto de usar (nem ler) as palavras sem esclarecer seu real significado. Portanto, significado de Nirvana no Wikipédia.

Com anos fazendo orçamento para projetos de desenvolvimento, aprendi que muito mais do que as questões técnicas e científicas (matemáticamente) desta tarefa, bem como teorias para se alcançar o melhor resultado possível para ambas as partes, acaba prevalecendo, pelo menos sempre foi assim com a maioria dos clientes que eu já tive até hoje, o fator: "o quanto o cliente quer pagar". Raramente podemos chamar esse fator de: "quanto o cliente pode pagar", embora isso seja contraditório em relação às alegações que ele faz.

Bom, mas isso não importa. Se o seu pensamento for o de arrancar o máximo que ele pode pagar, além disso ser um desvio de comportamento e uma indicação clara de amadorismo (na minha opinião e por mais capitalista que eu seja/tenha que ser), o que vou escrever aqui não lhe serve de nada, pois você só objetiva o seu resultado e não o do seu cliente.

Princípio: Bom resultado como objetivo sempre!

Já tive muitas vezes a sensação não ter cobrado um preço justo. Porém jamais saí com a sensação de não ter atendido as expectativas do cliente. Essa sensação sim seria extremamente frustrante para mim. Portanto, o que tenho praticado e quero relatar aqui, tem como princípio básico a satisfação de resultados. Parece óbvio, mas tentando sempre aplicar algo para atingir esse objetivo, até hoje eu ainda não tinha feito nada que atendesse em todos os sentidos: facilidade, praticidade, conveniência, transparência, objetividade e rapidez quanto ao processo de se desenvolver um orçamento e negociá-lo.

A matéria-prima da fórmula.

budget01Na grande maioria das vezes o seu cliente solicita um orçamento, mas por mais que ele não tenha a menor condição e critérios para tal avaliação (se ele as tivesse ele mesmo faria o projeto), ele já sabe o quanto ele quer (ou pode) investir.

Por outro lado, você como profissional absolutamente bem informado e capacitado quanto as possibilidades de resolver a questão para a qual o seu cliente necessita de solução, tende a oferecer justamente o que há de melhor e com base na sua visão de solução, definir o custo do projeto.

Na grande maioria das vezes, e falo por experiência própria, devido aos custos, após apresentar a sua proposta de solução, junto com o orçamento, o cliente vai solicitar a revisão, não por uma crítica, mas sim por ajustes orçamentários.

O que acaba sendo aprovado é justamente a solução reformulada que o orçamento atende. Ou em outras palavras, o melhor que você pode fazer, pelo melhor que o cliente pode pagar.

A fórmula: inverter a matéria-prima.

Isso mesmo! Simplesmente hoje eu pergunto ao cliente qual o orçamento que ele disponibiliza para aquele projeto e desenvolvo a proposta com a melhor mão-de-obra, técnica e tecnologia que aquele orçamento pode cobrir.

O impressionante desta forma de tratar o orçamento de um projeto, é que se você procura selecionar bem as tecnologias com as quais vai trabalhar, busca o melhor domínio possível sobre as mesmas, bem como as melhores e mais atualizadas técnicas de desenvolvimento com estas tecnologias, você apresentará ao seu cliente algo que atende e até mesmo supera as expectativas dele. E para isso, você não precisa se tornar minimalista. Pode manter a análise sobre o que você consideraria ideal (aquela primeira proposta que normalmente seria rejeitada), mas apresenta ao cliente um projeto escalonável, onde o resultado do primeiro investimento/fase do mesmo oferece o resultado que ele necessita no prazo requisitado. Ao mesmo tempo, ele terá em mãos suas sugestões de implementação que podem servir de base para investimentos futuros no mesmo projeto sob o qual você já tem domínio. Há aí uma grande possibilidade de demanda para você, sem contar que com isso você já apresentou comprometimento com os resultados esperados pelo seu cliente.

Requisitos

Claro, é importante ressaltar que, se você ainda não pensou: "Vicente, isso não é uma descoberta!", deve então tomar essa frase como uma afirmação minha. Embora eu não tenha pesquisado absolutamente nada a respeito para ter funcionado como base de raciocício e tendo usado somente minha experiência particular de 12 anos atuando com treinamento, consultoria e desenvolvimento de soluções web-based, é muito provável que exista algum estudo que analise e explique melhor esse tipo de forma de encarar o processo de orçamento e negociação de projetos.

Outro fator, talvez mais importante , que cabe a mim deixar claro, é que existem alguns princípios que tornaram para mim possível aplicar essa forma de tratar o assunto junto ao cliente:

  • Os clientes com os quais tenho aplicado essa forma de negociar o orçamento de um projeto, são clientes que já tiveram a oportunidade de avaliar o meu trabalho de alguma forma anteriormente.
  • O processo de análise (levantamento de requisitos, casos de uso e outros diagramas e documentações) é exatamente o mesmo. Extingue-se apenas o processo de reavaliar o projeto posteriormente. Portanto não encare o que estou colocando aqui como forma de otimizar o seu trabalho de formalização de um orçamento técnico.
  • Deve-se tomar o cuidado de não penalizar o cliente para favorecer a si mesmo. Ou seja, para tornar um projeto escalonável, acaba-se consumindo um esforço e consequentemente tempo, ligeiramente maior do que se considerar aquela etapa como única. Quero dizer, em favorecimento a sua previsão de melhorias futuras ao sistema, pode-se consumir um tempo/esforço de desenvolvimento a mais, para permitir certas implementações futuras, que acabará refletindo num custo para o cliente, na etapa para a qual ele está investindo em uma solução que o atenda já. Deixe isso claro na apresentação da sua proposta de projeto. Ele pode preferir, ao custo de tornar futuras implementações mais caras, melhorar o resultado da primeira etapa. Seja com custos relacionados a treinamento, implantação/homologação, etc. que poderíam ser extendidos, melhorados em recursos, caso eliminado algumas tarefas inerentes a recursos futuros imaginados para o produto em questão.

quinta-feira, 24 de julho de 2008

Usando flash.net.Socket para enviar emails via SMTP

smtpmailer

 

 

 

Em um projeto que estou desenvolvendo em AIR surgiu a necessidade do envio de email. Para uma aplicação desktop não ficava nada interessante utilizar um script server-side para fazer isso, então, conhecendo a classe flash.net.Socket disponibilizada tanto na API do FlashPlayer quanto do AIR, que explorada pode oferecer tal funcionalidade, resolvi pesquisar se já havia algo desenvolvido e dentre algumas poucas soluções que encontrei, resolvi testar o SMTPMailer desenvolvido pelo Thibault Imbert do blog ByteArray.org.

Como na lista de discussão Flexdev surgiu um post sobre o assunto na semana que antecedeu essa minha pesquisa, achei conveniente publicar o resultado do teste que fiz afim de que outros possam também ter mais um exemplo do uso da solução criada pelo Thibault.

Tive que fazer algumas alterações e coloquei comentários sobre as mesmas no código original.

Vou tentar manter contato com o Thibault ou até mesmo, adiante, tentar implementar outros recursos bem como a autenticação SSL pois sem esse recurso não é possível utilizar por exemplo servidores SMTP como o do Gmail que requerem este passo.

Exemplo compilado: SMTPMailerLab.air (AIR 1.0/1.1)
Fonte (incluindo as classes originais do ByteArray.org)*: SMTPMailerLab.zip
*FlexBuilder Archive

sexta-feira, 23 de maio de 2008

1a Reuniao - Grupo de estudos Flash Flex AIR AS3

grupo_estudos_banner01

A primeira reunião do grupo foi um sucesso!

Parabéns ao Osmundo pela iniciativa, à Monica da iTraining por ceder o espaço e à todos os presentes pela qualidade das discussões que pudemos iniciar. E claro, obrigado pelo convite.

Para quem não pôde estar presente nesta primeira reunião, segue uma tentativa de sumarizar o que entrou em pauta:

  1. Esclarecimento do objetivo do grupo: Esclarecemos o objetivo e sistemática das reuniões. Em resumo, que não se trata de um treinamento, não há uma figura central e que o conteúdo do estudo se dará sempre pela sugestão definida na reunião anterior, com a apresentação dos resultados, dúvidas e esclarecimentos das mesmas com participação e colaboração de todos.
  2. Discutimos sobre as diferenças de um treinamento e um grupo de estudos, bem como definimos o que esperar de um e de outro. Também aproveitamos para refletir sobre como tirar melhor proveito de um ou outro treinamento e qual o benefício para os centros de treinamento locais da criação de grupo(s) de estudo.
  3. Diferenças principais entre o AS2 e AS3 onde usamos como "cenário" um projeto recente no qual participei, para ilustrar o tipo de influência que essa migração (AS2 p/ AS3) pode apresentar. Nesta oportunidade discutimos performance, metodologias, influência de padrões e outras características.
  4. Esclarecimento sobre Flash, Flex, AIR, Silverlight, Prism, JavaFX. Discutimos suas peculiaridades, suas definições, praticamos alguma previsão sobre o futuro de cada uma baseado em fatores atuais a respeito destas. Neste tópico, ainda há bastante o que se discutir e dismistificar. Muitos me procuraram para continuar o assunto particularmente por MSN e email, mas sugiro que isso seja feito na lista de discussões do MUGBA, para que a discussão possa ficar ainda mais rica e não limitar-se a uma única opinião/definição/visão.
  5. Iniciamos a definição de um roteiro de assuntos para os estudos, analisando o porque adotar uma ou outra ordem. À princípio resolvemos convencionar, baseado no maior interesse dos presentes, uma introdução ao Actionscript 3.0 e MXML baseando-se no Quick Start do Adobe Devnet. Porém creio que teremos que fazer, na proxima reunião uma introdução básica, à estrutura e aplicação de uma Classe AS3 no Flash CS3 por parte de algum presente que possa fazê-lo.
  6. Para poder ilustrar a aplicação do Flex e sua comparação com a adoção de AJAX para projetos similares, fizemos um breve estudo do exemplo FlexStore  onde através de uma explicação teórica sobre o desenvolvimento do mesmo, pudemos verificar as diferenças produtivas entre o desenvolvimento baseado em Javascript e o desenvolvimento baseado em MXML/AS3. Eu sugiro que algum membro do grupo de estudos que esteja apto, desenvolva um exemplo de uma interface simples desenvolvida em AJAX (pode-se usar alguma das APIs citadas, como ExtJS e JQuery), e similiar em MXML/AS3. Eu me disponibilizo a ajudar.
  7. À princípio as reuniões serão mensais com a próxima reunião pré-sugerida para 21 de junho (sábado) com horário à definir. o conteúdo desta reunião será o resultado (dificuldades, problemas, idéias) surgidas com o estudo dos QuickStarts.

quarta-feira, 21 de maio de 2008

Documentação Oficial do FlashPlayer 10

Adobe Flash Player 9 Finalmente disponibilizada a documentação oficial da recém publicada versão do FlashPlayer.

Eu estava escrevendo uma matéria sobre as novidades, que estaria pronta hoje a noite. Porém, ainda repleta de suposições e tentativas de antecipação das possibilidades de aplicação de cada um dos novos recursos.

Agora, com a documentação disponível, vou poder adiar para postar algo mais objetivo.

fonte: http://www.flashmagazine.com/news/detail/official_flash_player_10_documentation/

quinta-feira, 15 de maio de 2008

Grupo de estudos Flex AIR AS3 em Salvador, Bahia

grupo_estudos_banner01 

O Osmundo (vide blog), instrutor e consultor da iTraining, anunciou hoje o grupo de estudos a iniciar-se dia 22 de maio, as 17h, na sala de treinamentos da iTraining em Salvador/BA. Este grupo, terá como tema de estudo, as tecnologias Flash, Flex, Flex Builder, Actionscript, FlashPlayer e AIR. É previsível que a partir deste, outros grupos sejam formados.

Fui convidado para abrir o grupo de estudos. Convite este que me deixa muito feliz e orgulhoso. Será muito bom estar estudando, evoluindo e tentando colaborar em algo com algum conhecimento que já tenho nessas tecnologias. Sei que vou aprender muito, pois não há motivação maior do que ter pessoas precisando das mesmas respostas que você.

Sobre como será minha pequena contribuição:

Não quero usar da oportunidade só para fazer uma apresentação. Então quem estiver presente, pode aproveitar para tirar qualquer dúvida (sobre os primeiros passos, nessa primeira oportunidade, só para ter foco nivelado) que o meu pouco conhecimento puder esclarecer.

Como se trata de um grupo de estudos, então vou aplicar uma linha de introdução aos estudos dessas tecnologias (AS3/MXML/Flex/AIR), orientando sobre os primeiros passos, questões quanto a configuração e sugestões nesse aspecto, como buscar ser auto-suficiente para esclarecer dúvidas usando a documentação e etc.
Quero dar dicas também quanto a performance no desenvolvimento de aplicações.
Adicionalmente devo apresentar alguns recursos que complementam o meu ambiente de trabalho e que creio eu, podem vir a serem úteis para quem for aplicar profissionalmente esses tecnologias no seu dia-a-dia.

Não esperem que eu vá preparar slides e etc. O que eu estarei mostrando aos presentes, é o que eu faço no meu dia-a-dia como desenvolvedor com foco nessas tecnologias.

E lembrem-se, não quero fazer uma palestra. Quero iniciar um grupo de estudos, colocando em foco as questões práticas. Também não será uma aula pois o tempo não permitiria e eu não a faria sem um bom preparo estutural da sala, de equipamentos, softwares, material e etc.

A intenção é que quem participar, saia doido(a) para chegar em casa e começar a praticar!

quarta-feira, 14 de maio de 2008

Utilidades do Subversion SVN

subversion O Subversion, também conhecido simplesmente como SVN, é um recurso que se tornou indispensável no meu trabalho de consultoria e desenvolvimento, assim como na verdade é para qualquer profissional desta área.

O Subversion foi a proposta da Tigris em substituição ao CVS, implementando muitas diferenças que estão bem documentadas com o produto.

Aos que iniciam ou procuram mais informações a respeito, resolvi colocar aqui um pequeno texto relatando a utilidade prática de uso do Subversion:

Introdução:

Numa apresentação mais breve e superficial possível, o Subversion é um sistema de gerenciamento e controle de versão de artefatos dispostos em um repositório. Este repositório compreende uma estrutura gerenciada pelo sistema servidor da solução. Através de ferramentas clientes, o usuário irá interagir com essa estrutura.

O sistema servidor permite designar usuários, para fins de identificar o autor de modificações no repositório e atribuir aos mesmos níveis de acesso.

O workflow de uso do SVN geralmente é o seguinte:

  1. O repositório é criado
  2. Os usuários e seus devidos níveis de acesso são determinados
  3. Algum conteúdo inicial é colocado no repositório para ser gerenciado (initial commit)
  4. Os usuários fazem uma cópia local dos arquivos para fins de consumo ou colaboração no desenvolvimento (checkout)
  5. Os usuário com permissão para modificar o conteúdo efetivam suas alterações locais no repositório (commit). Esse passo pode envolver ainda diversas outras situações como verificar conflito entre o codigo enviado neste momento e alguma modificação realizada no repositório feita por outro usuário, entre o "checkout" e essa tentativa de "commit" das alterações locais.
  6. Os demais usuários verificam modificações no repositório (synchronization) e atualizam suas versões locais (update). Se o usuário modificou algum arquivo, as situações de conflito entre modificações do conteúdo no repositório e conteúdo local do passo anterior podem ocorrer e o usuário terá como resolver as mesmas com instrumentos simples.

Estabelecido o servidor, suas utilidades podem ser apresentadas em basicamente 2 perfis, conforme relato adiante.

Para o desenvolvedor de conteúdo:

É um sistema que permite controlar a versão dos artefatos que fazem parte do repositório (geralmente códigos-fonte). Ao mesmo tempo, permite, de maneira imperativa (forçada) ou passiva (facultativa) documentar as modificações em cada artefato. Essa documentação se dá no momento de enviar para o repositório (commit) um artefato que foi alterado.

Para o consumidor

Ter uma maneira "atômica" de atualizar e acompanhar as modificações no mesmo. "Atômico" refere-se ao fato de que o sistema é capaz de atualizar somente a parte alterada de um arquivo modificado na fonte. Por exemplo, imagine um arquivo de 8MB no repositório. No primeiro momento (checkout) vc baixa os 8MB para estar em sincronismo com o repositório. Nas atualizações / modificações (updates), você vai baixar somente os "bytes" que diferem a sua versão local do arquivo. Se você for uma das pessoas autorizadas a modificar a fonte (repositório) o mesmo acontece na hora de "enviar" as modificações (commits). Você não precisará fazer o upload de 8MB e sim, apenas dos "bytes" que alteraram a versão no repositório.

Links:

  • TortoiseSVN
    Client para interagir com um servidor/repositório SVN, que integra-se ao sistema operacional.
  • VisualSVN
    Ferramenta de administração (criação de repositorios/controle de usuários).
  • Subclipse
    Plugin de integração com Eclipse IDE. Como o FlexBuilder da Adobe baseia-se no Eclipse, o plugin também é funcional nele.

Tutoriais Papervision3D

papervision3d Resolvi ir atrás de algum conteúdo para poder iniciar algum estudo melhor organizado no meu tempo livre e vou procurar partilhar o que achar aqui no TeclandoAlto. Há na verdade bastante conteúdo. Então, vou postar aqui os conteúdos seguindo a forma como vou me organizar para estudar. Quem tiver interesse, é só seguir, ajudar, compartilhar, etc. Ah! Cobrar tb pode!

Para começar, quem quiser ter acesso à API, disponibilizada como componente para o Flash, ou através do SVN no GoogleCode, seguem os caminhos:

Home Page no GoogleCode

Repositório SVN AS2

Repositório SVN AS3

Achei também uma listagem de tutoriais no site Flash Enabled:
http://flashenabledblog.com/2008/05/12/papervision3d-tutorials-in-flex-3/

Ao longo dos meus estudos, o que eu conseguir reunir no tempo que vou tentar dedicar, postarei aqui.

terça-feira, 13 de maio de 2008

MSNBC Spectra Visual Newsreader - Papervision3D

MSNBC Spectra Visual Newsreader Visualmente espetacular, leve (pelo menos tratando-se de bytes) e funcionalmente muito bem desenvolvido. Quem desenvolve na plataforma Flash da Adobe, sabe que a criatividade dos designers é o limite para o que se pode desenvolver com esta tecnologia. Porém nem sempre o criativo anda de braços dados com o funcional e é justamente este equilíbrio que me chamou a atenção neste excelente trabalho.

O PaperVision3D é definitivamente uma das melhores (senão a melhor) API para implementação de renderização 3D de elementos visuais, e este, foi um trabalho onde os seus recursos foram bem aplicados.

Para não deixar de obtervar de maneira crítica o conteúdo, só achei que o 3D podería ter sido ainda melhor aproveitado, usando por exemplo algo como o 3D Wall (componente), desenvolvido e comercializado pela equipe do FlashLoaded.

FlashPlayer x Silverlight

Vale citar que, para a comunidade de desenvolvedores da plataforma Flash (e da própria Adobe) outra grande importância do lançamento de um site deste nível baseado no FlashPlayer, é muito importante para confirmar que a Microsoft (e o Silverlight), mesmo com seu grande poder de disseminar tecnologia, tem um grande competidor à sua frente, em constante e pleno crescimento.

quarta-feira, 16 de abril de 2008

dominios com sufixo .com.br para pessoa fisica

registro.br Acabei de receber a notícia por email. Muito interessante a decisão e certamente vai colaborar para que existam um número ainda maior de sites com conteúdo (bom ou não).
Mas o lado negativo, é que com isso, eu creio que o problema de "espertinhos" tentando lucrar com isso, registrando domínios visando lucro futuro, será também muito maior.
Notícia completa: http://registro.br/anuncios/20080416.html

quinta-feira, 10 de abril de 2008

FlexBuilder 3 Pro gratuito para estudantes

flexbuilderpro3free A notícia não é nova, mas como a Adobe transmitiu oficialmente hoje um mailing sobre a questão, vale à pena propagá-la o máximo possível.
LINKS:
Conteúdo do mailing
Site para obtenção da licença

iTraining - Centro de Treinamento Adobe - Salvador - BA

logo_itraining

À pedidos, estou colaborando em divulgar que a empresa, antes conhecida em Salvador como iMedia, passa agora a chamar-se iTraining. A solicitação foi feita pela Mônica, diretora da iTraining, como forma de divulgar a novidade.

Serve também de esclarecimento e confirmação para o comentário deixado pelo André Fontenelle (diretor da iMedia, que atua desde 2003 com este nome em Recife/PE e continuará assim) no post sobre Parceiros Adobe em Salvador.

Comentário do André Fontenelle no referido post (trecho):

A iMedia não tem participação direta em Salvador deste o início de 2006. Ela foi vendida para a Mônica Martins que toca a empresa como iTraining. Inicialmente, permiti o uso do nome iMedia por um período restrito e transitório por uma questão comercial.

Finalizando o processo de transição, transcrevendo palavras da própria Mônica, a iTraining está passando por uma reformulação total, com abrangência interna e externa. O novo site está em fase final de desenvolvimento e deverá estar pronto em até 20 dias.

O endereço do novo site é:

http://www.itraining.com.br

NOTA PESSOAL: Eu não tenho nenhuma ligação com a iMedia ou iTraining. Porém, estou sempre atento às atividades dos parceiros Adobe, criticando, denunciando, colaborando, bem como divulgando e elogiando as boas atitudes dos mesmos. Fico feliz inclusive em ter recebido credibilidade dos representantes dos parceiros Adobe em questão, que consideraram meu blog como um canal de esclarecimento.

quinta-feira, 28 de fevereiro de 2008

ZCR contrata estagiário PHP

zcr_logo Se você está afim não apenas de um estágio atuando com PHP, mas também de encarar novos desafios, e lidar com uma equipe muito bem humorada e também bem comandada pelo meu amigo Germano Bona, aí está a oportunidade!

Dados:

Estamos precisando de um estagiário, ou seja, tem que estar cursando uma faculdade, e de preferência Sistemas de Informação, Ciência da Computação, ou coisas do tipo.  A pessoa vai trabalhar com desenvolvimento de sistemas web, páginas dinâmicas, sistemas de notícias, enquetes, banco de dados,  etc...

É necessário que a pessoa já tenha os seguintes conhecimentos:

•    Programação em PHP (orientado a objeto)
•    Conhecimentos em base de dados MySql / SqlServer
•    Conhecimento em HTML e CSS
•    Ter jogo de cintura pra resolver os maiores projetos do mundo!!!

Mande seu currículo pra germano@zcr.com.br colocando no subject a tag [currículo]

Atenciosamente
GERMANO BONA
Gerente Dep. de Criação
Tel.: 55 71 3113-8774
Cel: 55 71 8814-8796

quarta-feira, 27 de fevereiro de 2008

Parceiros Adobe em Salvador

Adobe CS3Particularmente sou uma pessoa insatisfeita com a atividade Adobe local pois há tempos que não vejo nem ao menos um evento público notável e em relação à centros de treinamento, um deles pra mim é de atividade desconhecida, enquanto o outro eu não recomendo mesmo. Para evitar citar nomes (não quero influenciar opiniões), seja por falta de conhecimento da atividade de um ou pela total descrédito que o outro tem em sua qualidade e administração, simplesmente não recomendo nenhum dos dois.

Como sou consultor, autodidata e instrutor e tenho minhas atividades particulares independente da atividades destes parceiros da Adobe localmente, essa questão nunca realmente me incomodou diretamente. Porém, esta semana, percebi que estou sendo impedido de exercer atividade de participante em um grupo de usuários gerido pelo diretor de um destes centros de treinamento aqui.

Ao procurar um meio de denunciar tal prática, que só beneficia ao tal centro de treinamento e seu diretor, acabei descobrindo que não sou o único a notar que as coisas estão muito erradas em relação a parceiros Adobe aqui na Bahia e que não sou o único insatisfeito. Assim, resolvi perguntar e abrir o espaço afim de que tudo o que for coletado possa ser encaminhado diretamente para a Adobe.

Fique à vontade, para através dos comentários redigir e discutir sua defesa ou reclamação sobre algum destes parceiros. E se você conhece mais alguém que tenha a mesma opinião que você, ou até mesmo uma opinião contrária que possa adicionar à discussão, por favor convide-a a colocar seu comentário aqui.

IMPORTANTE: Não haverá nenhuma moderação! E reforço que vou fazer o máximo para que a Adobe venha a tomar conhecimento de tudo o que for colocado aqui.

segunda-feira, 25 de fevereiro de 2008

ExtJS 2.0.2 release com suporte ao AIR 1.0

ext132bannerDownload (release, docs)

Overview bem completo com aplicação DEMO

Para quem não sabe, o ExtJS é uma API Javascript destinada ao desenvolvimento de interfaces usando o mesmo, repleta de componentes visuais para este fim e com uma abordagem excelente de orientação à objetos com a tecnologia.

Já é vastamente utilizado em aplicações no modelo AJAX, dada a sua integração com serialização/deserialização de dados que fazem parte da API. Desde a fase Beta do AIR já era conhecida a sua integração com o mesmo dado o suporte do AIR à AJAX a partir do engine WebKit que a Adobe incorporou nele.

Quem usa ColdFusion também já o conheçe (mesmo sem saber) pois a partir da versão 8 passou a fazer parte de algumas funcionalidades presentes nele.

Agora o ExtJS demonstra um apoio aberto ao AIR, documentando as funcionalidades de integração.

ÓTIMA NOTÍCIA!

AIR 1.0 download

getAdobeAIRLinks para download:
Runtime (para rodar as aplicações)
SDK (compilador, debugger, etc.)

Adobe Flex 3 disponivel

flex3boxFinalmente!

E não vejo a hora desse download terminar.

Ah! Como poderão ver no link para download, ele na verdade não é de 169MB. São na verdade  425MB!

Ah! É um trial ok? 60 dias! Open-source free só o SDK.

domingo, 24 de fevereiro de 2008

Teclado Optimus Maximus

optimusmaximuskeyboard Definitivamente eu queria ter US$500 pra gastar com um teclado!

Não seria apenas um "brinquedo" interessante, mas é definitivament produtivo!

Novo artigo no blog CTRLF5

coca13 Como alguns sabem, sou colaborador no blog CTRLF5 que é um blog que reúne uma galera que considero ser a NATA do mercado de criação/publicidade de Salvador. Bom, até agora eu sou o único colaborador lá mais voltado para a área de tecnologia, ou seja, não faço parte da NATA. ;)

Bom, de vez em quando eu tenho o desafio de escrever algo lá analisando tecnologias de desenvolvimento para web. Pra falar a verdade participo mais dos Comments realizando esse trabalho, pois assim o faço em cima do que eles demonstram interesse e/ou está dentro do foco deles.

Porém hoje, lendo algumas notícias, observei essa no UOL à respeito dessa marca da qual sou consumir absoluto. Imediatamente imaginei que sería legal colocá-la no CTRLF5. Mas aí me veio a pergunta: "Eu falando de marca? Nada a ver!".

Então observando os sites relacionados, encontrei o que falar pois o site da coca-cola é repleto de bons exemplos de aplicação do Flash Platform.

Para quem quiser ver a matéria sem muita linguagem técnica e citação de algumas críticas pessoais a respeito das tecnologias, segue o link.

Coca-Cola com novidades em suas marcas e uma análise de alguns recursos em seus sites

Flex Team anuncia novidades sobre o SDK

flex3_fx_124x120 Essa semana já fomos muito bem "preparados" para a chegada do Release final do Flex 3 SDK junto com o FlexBuilder com o post bem humorado do Ted Patrick (A long time ago in a galaxy far, far away...).

Agora a notícia vem diretamente da equipe de desenvolvimento do Flex, recheada com informações sobre como será o primeiro release como projeto open-source.

Dentre as informações importantes para quem já planejava fazer uso disso de alguma forma, seja participando ou apenas observando o desenvolvimento, já ficou claro como isso vai funcionar. O projeto tá possui inclusive, conforme o anúncio, um repositório SVN configurado.

Na verdade, creio que o mais importante era mesmo saber "o quê" sería realmente publicado lá, e o anúncio deixou tudo bem esclarecido.

AS3 & MXML Compilers / Debugger: Já era esperado, mas nem por isso é menos empolgante saber desta informação, pois o que isso vai trazer de melhoras para os desenvolvedores em torno da tecnologia, é praticamente impossível de se medir. Embora o FlexBuilder não faça parte deste projeto open-source, os desenvolvedores podem aguardar o aprimoramente de ferramentas IDE já existentes para o desenvolvimento em MXML/AS3, além é claro de novas ferramentas que surgirão à partir disso.

SWFUtils Java Library: Essa, pelo menos pra mim foi uma boa novidade! Trata-se de uma biblioteca Java que permitirá não apenas LER dados de arquivos SWF para o formato do FlashPlayer 9.x, bem como escrevê-los.

Todos esses recursos reunidos certamente irão resultar não apenas em grandes novidades para nós desenvolvedores, como também para os consumidores dessa tecnologia. Ao menos as portas estão abertas para que novos produtos em torno do Flash Platform venham a surgir.

sábado, 23 de fevereiro de 2008

Silverlight 2.0 anunciado

silverlight_logo O gerente geral da divisão de desenvolvimento da Microsoft, Scott Guthrie, anunciou em seu blog o Silverlight 2.0, suas "novidades" e também um tutorial.

Dentre as informações que mais chamam a atenção está a de que nessa nova ação a Microsoft incluí o plano de um release da plataforma para Linux adicionalmente.

 

Uma outra fonte da mesma informação, o site da ComputerWorld, cita que este release do Silverlight tem como objetivo direto atacar a tecnologia Flash da Adobe que o mesmo site cita como "popular" no universo RIA.

Licença Pública WTFPL

wtfpl

Na eterna batalha de se adotar um modelo de licença pública ideal, surge mais uma opção: What the Fuck Public License (Do What The Fuck You Want Public License) ou em bom português (tradução livre), "licença pública faça a porra que você quiser".

Trata-se na verdade de uma crítica em relação a esses modelos de licença sobre o qual sempre há a discussão a respeito de qual delas é "mais livre" do que a outra.

O autor, Sam Hocevar, no seu site, faz uma reprodução muito cômica do formato básico desses modelos de licença.

A licença, claro, tem apenas uma cláusula (traduzida):

0 . Você simplesmente faz a porra que você quiser