Artigos sobre Themes

Escrevi alguns artigos sobre os Themes do ASP.NET 2.0, um recurso que permite controlar a aparência de controles ASP.NET (uma espécie de CSS com muito mais recursos) e que, juntamente com as Master Pages, são as principais ferramentas para se manter a identidade visual de uma aplicação web, permitindo uma grande personalização e facilidade de manutenção. Como sempre, espero seus comentários, sugestões e críticas:

Utilizando Themes no ASP.NET 2.0 - Parte 1
Utilizando Themes no ASP.NET 2.0 - Parte 2
Utilizando Themes no ASP.NET 2.0 - Parte 3
Utilizando Themes no ASP.NET 2.0 - Parte 4

Aproveito o último post do ano para desejar a todos os amigos um ótimo ano de 2006!

Ricardo Oneda

IE e Firefox unidos?

Há algum tempo atrás, escrevi sobre a pesquisa que a Microsoft estava fazendo sobre qual ícone utilizar para representar feeds RSS no Internet Explorer 7. Pois bem, Microsoft e Mozilla conversaram e decidiram adotar o mesmo ícone do Firefox! Segundo o anúncio, essa não é a primeira vez e nem será a última que as equipes compartilharão idéias. As duas empresas e ainda as equipes do Opera e Konqueror (browser  do ambiente KDE do Linux) já haviam se reunido para discutir uma maneira comum de diferenciar sites seguros dos falsos, numa tentativa de diminuir a eficiência de ataques de phishing.

Particularmente, acho que este tipo de iniciativa é válida, pois facilita a vida do usuário, já que a comunicação passa a ser padronizada. Seria interessante que isso também se propagasse para a parte de desenvolvimento, para evitar código (principalmente JavaScript) específico para cada browser - se bem que essas diferenças diminuíram bastante nos  últimos tempos. Os xiitas devem estar inconformados Smile

Ricardo Oneda

Microsoft x Open Source: qual é mais seguro?

Não sei quanto a vocês, mas uma das coisas que mais me irritam quando ouço ou vejo discussões sobre o modelo open source versus o modelo proprietário, como o adotado pela Microsoft, é o posicionamento ideológico xiita que algumas pessoas costumam adotar (e isso vale para ambos os lados, ou seja, tanto os defensores do código livre quanto os defensores do código "fechado"), o que acaba prejudicando a imparcialidade, já que aspectos racionais e técnicos acabam ficando de lado.

Acreditar cegamente que o software livre é a solução de todos os problemas e a salvação contra a materialização de todo mal da Terra (também conhecida como Microsoft) é tão ridículo quanto eu dizer aqui que todos softwares open source são uma porcaria e que não vale a pena perdermos tempo com eles, já que só o modelo proprietário é capaz de suprir nossas necessidades.

Um dos pontos mais atacados pelos defensores do código fonte livre é a segurança. Segundo eles, software open source é mais seguro, já que, como o código é aberto, qualquer pessoa pode ter acesso a ele e descobrir (e corrigir) alguma falha de segurança com mais facilidade. Esse raciocínio tem algumas falhas: e quem vai garantir que haverá uma revisão de cada linha de código? E mesmo que haja, quem garante que isso se manterá para sempre? E quem garante que quando uma nova funcionalidade for adicionada ao software também não trará consigo uma falha de segurança, seja por desconhecimento ou incompetência do desenvolvedor? 

Dizer que Unix é mais seguro que Windows (ou vice-versa) é besteira. Não existe esse tipo de coisa quando se comparam plataformas tão maduras assim. O que existe é sistema bem ou mal configurado e administrado. A verdade é que todos os softwares estão sujeitos a falhas e bugs, e isso independe do modelo de licença adotado. Bom, esta é a minha opinião e uma das lições que aprendi no tempo em que trabalhava com segurança. Pois bem, lendo o artigo Microsoft security is nothing to sneeze at, exatamente sobre esse assunto,  o autor expressa tudo o que eu penso a respeito (com mais competência) e vai além, comprovando que software open source não é garantia de software seguro. Vale a pena ser lido. Destaco um trecho abaixo:

Free software proponents often say that open source code review guarantees that open source code will be more secure. Baloney! I love to read code, too, but how many of us have the time to review tens of thousands of lines of code? Plus, the really good people are already working 80 hours a week on projects for their bosses.

Ricardo Oneda.

O novo (e o mais novo ainda!) modelo de compilação do ASP.NET 2.0

Sem dúvida, uma das mudanças do ASP.NET 2.0 que mais causou impacto foi no modelo de compilação. Para aqueles acostumados com o modelo do ASP.NET 1.X e que estão confusos sobre o novo modelo, sugiro a leitura do artigo Codebehind and Compilation in ASP.NET 2.0, publicado na MSDN Magazine americana.

Aliás, esta alteração deve ter sido tão polêmica, que já estão planejando um novo modelo de projeto Web para o Visual Studio 2005 (e olha que ele acabou de ser lançado!). Neste novo modelo, o funcionamento será semelhante ao que tínhamos no ASP.NET 1.X/Visual Studio 2003, ou seja, ao compilarmos a aplicação, será gerada uma única DLL, entre outras "novidades". Este novo tipo de projeto será disponibilizado gratuitamente para download e será "incorporado" pelo Visual Studio 2005.

Se você está com dúvidas em relação a migração de aplicações ASP.NET 1.X para ASP.NET 2.0, sugiro a leitura dos seguintes artigos:

Step-By-Step Guide to Converting Web Projects from Visual Studio .NET 2002/2003 to Visual Studio 2005
Common Web Project Conversion Issues and Solutions
The Great Migration

Atualizado em 19/12
Já está disponível para download um preview do novo modelo de projeto Web para o Visual Studio 2005. Após instalá-lo, no momento de criar um novo projeto, você poderá escolher entre o template "ASP.NET Web Site" (o padrão do Visual Studio 2005) ou "ASP.NET Web Application" (o novo modelo que é parecido com o antigo do Visual Studio 2003). Este preview não é suportado pelo Visual Web Developer Express.

Ricardo Oneda

Ferramentas para desenvolvedores

Após um pouco mais de um ano a MSDN Magazine ter publicado uma matéria sobre ferramentas essenciais para desenvolvedores Microsoft - Ten Must-Have Tools Every Developer Should Download Now, foi publicado um outro artigo no mesmo estilo, mas agora voltado para add-ins do Visual Studio: Visual Studio Add-Ins Every Developer Should Download Now. Além de serem ferramentas muito úteis no dia-a-dia, são gratuitas!

Ricardo Oneda

Utilidade pública: doação de computadores

Se você tem algum computador antigo e que não utiliza mais em sua casa, por que não doá-lo? Apesar de ser ultrapassado e não atender mais as suas necessidades, ele pode ser muito útil para outras pessoas e instituições. Há algum tempo atrás, eu possuía um micro bem antigo (um Pentium 166 com 16 MB de RAM!) encostado no quarto. Procurei por organizações que aceitassem doações e econtrei duas:

Acabei optando pelo Agente Cidadão, pois eles retiram a doação em casa. Eles me forneceram um recibo de doação e depois mandam uma carta avisando para qual instuição irá sua doação. Vale lembrar que ele também aceita outros tipos de doações, e não só computadores.

Se você conhece outras organizações que aceitam este tipo de doação, sinta-se a vontade para colocar o endereço do site ou outra forma de contato nos comentários do blog.

Ricardo Oneda

TechEd 2005 - Resumo do Segundo Dia

Continuando o resumo do TechEd 2005:

Segundo dia - 01 de Dezembro

Introdução ao Windows Communication Foundation
Na palestra apresentada por Leonardo Lima, MVP em Visual Basic, vimos o que é o Windows Comunnication Foundation - WCF (anteriormente conhecido como Indigo) e como esta nova camada de comunicação irá unificar as várias maneiras de se fazer chamadas remotas (DCOM, WebServices, Remoting, etc) de maneira com que a escolha de protocolo fique transparente para o desenvolvedor, proporcinando uma melhor utilização de uma Arquitetura Orientada a Serviços (SOA, em inglês).

SOA e a Visão da Microsoft
Mauro Sant'Anna, Regional Director e MVP em Segurança, falou sobre a evolução da tecnologia de chamadas remotas em cenários distribuídos, os problemas enfrentados na aplicação dos conceitos de Orientação a Objetos neste contexto e porque o SOA - Service Oriented Architecture - é uma abordagem melhor para estes casos.


Apresentação sobre SOA do Mauro Sant'Anna no TechEd 2005

Programando AJAX com ASP .NET
Marden Menezes, MVP em C#, e Rodrigo Kono, Microsoft Student Ambassador e líder do grupo de usuários DevGoiânia.NET, fizeram uma apresentação sobre um dos assuntos mais comentados na comunidade de desenvolvedores Web: AJAX, ou Asynchronous JavaScript and XML, um conceito que utiliza tecnologias que já existem há um certo tempo (JavaScript, XML, CSS, DOM) para tornar aplicações web mais ricas e amigáveis. Também foi mostrado um pequeno aperitivo do Atlas, um framework client-side da Microsoft que permitirá utilizar os conceitos do AJAX em aplicações ASP.NET sem a necessidade de se escrever milhares de linhas de código em JavaScript.

A Metodologia MSF Agile e o Visual Studio Team System
Nesta apresentação, Fábio Câmara mostrou a importância de se adotar uma metodologia dinâmica no ciclo de desenvolvimento de sistemas e como o Visual Studio Team System pode fornecer suporte a isto.

Composite UI Application Block
Marcelo Azuma, MVP de Arquitetura de Soluções, mostrou o que é o Composite UI Application Block - CAB - e como ele pode ser utilizado no desenvolvimento de aplicações SmartClient. Também foi dada uma pequena introdução ao Windows Workflow Foundation.

Ferramentas do Visual Studio Team Foundation para Desenvolvimento em Times
Na palestra de Renato Guimarães, MVP em C#, foi mostrado como o Visual Studio Team Foundation, em conjunto com as várias versões do Visual Studio 2005 Team System (Architect, Developer e Tester), ajudam na comunicação e colaboração da equipe de desenvolvimento através de ferramentas integradas para cada papel existente em um projeto de software.

Concluindo
O TechEd Brasil 2005 foi um evento que teve apresentações com ótimo nível técnico. Um ponto que poderia ter sido melhor foi o tempo de duração de cada palestra, já que uma hora é pouco tempo e acabava forçando o palestrante a se apressar em determinados pontos. Mas isso não diminuiu a qualidade do evento. Podemos concluir que, após o tão aguardado lançamento do Visual Studio 2005 e SQL Server 2005 em Novembro, as atenções agora se voltam para o Windows Vista e seus pilares: Windows Presentation Fundation, Windows Communication Foundation, WinFS e WinFX, nomes que ouviremos bastante no ano de 2006.


Mural com os nomes dos MVPs do Brasil na área das Comunidades do TechEd 2005

Além da parte técnica, também aproveitei o evento para conhecer pessoalmente amigos com os quais só havia mantido contato virtualmente, entre eles Israel Aéce e Ramon Durães - MVPs de ASP.NET, Marcelo Colla - MVP de SQL Server e Alfred Myers, cuja palestra não consegui assistir porque não encontrei a sala Frown  e rever outros como Leonardo Tolomelli - MVP Lead, Leonardo Lima e Alexandre Tarifa - MVPs de Visual Basic.

Ricardo Oneda.

TechEd 2005 - Resumo do Primeiro Dia

Nos dias 30 de Novembro e 01 de Dezembro, aconteceu em São Paulo o TechEd Brasil 2005. O maior evento de tecnologias Microsoft contou com 7 tracks, dividos entre o público desenvolvedor e de infra-estrutura. Abaixo, segue um pequeno resumo das palestras que tive a chance de conferir. Não vou entrar em detalhes, até porque todas as palestras foram gravadas e serão disponibilizadas para download futuramente.

Primeiro dia - 30 de Novembro

Sessões Gerais
A abertura do TechEd foi marcada com a apresentação de duas palestras comuns para os profissionais de desenvolvimento e de infra-estrutura. Na primeira delas, sobre o Windows Vista, Bjorn Rettig mostrou as principais inovações que o novo sistema operacional trará, como recursos de segurança (o usuário "padrão" do Vista não terá direitos de Administrador e, quando alguma operação necessitar deste nível de privilégio, o usuário terá que fornecer a senha do administrador) e melhorias na experiência do usário, como facilidades no mecanimos de busca e de classificação de documentos. Mas o que chamou mais a atenção de todos foram os novos recursos gráficos, com vários efeitos tridimensionais. Todo mundo ficou babando! Ele também disse que a nova versão do Windows está prevista para ser lançada no Natal de 2006.

Na segunda palestra das Sessões Gerais, Houman Pournasseh falou sobre o que deve ser considerado quando se desenvolve aplicativos que serão utilizados em diversos países, como a Microsoft lida com isso e quais as facilidades que o Visual Studio 2005 proporciona neste campo.

Introdução ao Windows Presentation Foundation
Nesta apresentação, Miguel Ferreira, Program Manager do Windows, deu uma pequena introdução ao Windows Presentation Foundation (WPF), anteriormente conhecido como Avalon. Foram mostrados alguns exemplos do que será possível fazer com esta nova API gráfica do Windows.


Palestra sobre "Windows Presentation Fundation" do Miguel Ferreira no TechEd Brasil 2005

 

Fundamentos de desenvolvimento para Windows Vista
Podendo ser considerada um complemento à palestra anterior, Fabio Galuppo mostrou um pouco do XAML (Extensible Application Markup Language), uma nova linguagem de marcação semelhante ao XML e que será a base do desenvolvimento de aplicações para o Windows Vista. Ela permitirá que o código fique separado do arquivo de interface, como o code-behind do ASP.NET. Uma versão do jogo Jawbraker foi "portado" para o Windows Vista e o código-fonte pode ser baixado no blog do Fabio. Após esta avalanche de informações, não era de se admirar a quantidade de pessoas interessadas que passavam pelas "ilhas" de Windows Vista distribuídas pelo Evento:


Ilha do Windows Vista

 

Desenvolvendo Código Seguro 
José Antonio das Neves Neto mostrou como deve ser o processo de desenvolvimento que leva em conta o aspecto da segurança, desde a concepção até a entrega do sistema. Foram dadas as recomendações de dois livros sobre o assunto:  Threat Modeling e Writing Secure Code.

Windows Mobile 5.0 & Visual Studio 2005 – a dupla infalível
Na última palestra do dia, Fernando Zandoná, Gerente de Soluções Móveis da Microsoft, mostrou as novas APIs do Windows Mobile 5.0 e as novidades do .NET Compact Framework 2.0. Como exemplo, foi desenvolvida uma aplicação que tirava uma foto (via código) e a enviava para um Web Service, que notificava a inclusão da foto via SMS. Mais detalhes no seu blog.

Ricardo Oneda.