More servicesWindows Live
HomeHotmailSpacesOneCare
 
MSN
Sign in
 
 
Spaces home  Expressions (Inativo)ProfileFriendsFilesBlog Tools Explore the Spaces community

Blog

June 09

Blog Inativo e Novo Blog

Este blog está inativo. Mudei de ferramenta de blog, e agora estou publicando em http://marcelonegrini.blogspot.com. Visite o novo blog e assine o novo feed RSS.

April 28

Perguntas e Respostas Sobre Silverlight 2

 

1 - O que é o Silverlight?

O Silverlight é uma tecnologia que permite a criação de experiências ricas, com alta interatividade e conteúdo multimídia na Internet. Com o Silverlight é possível criar interfaces de forte apelo visual, conectadas a transações e bases de dados complexas, criando uma categoria totalmente nova de aplicações.

Isso é possível porque o Silverlight é baseado na plataforma .NET da Microsoft, e as aplicações são criadas com duas ferramentas poderosas: o Expression Studio, para a criação dos elementos gráficos, e o Visual Studio, para a criação da parte transacional, regras de negócio e acesso a dados. As aplicações Silverlight são multi-plataforma e multi-browser, rodando em Internet Explorer, Firefox e Safari, e nos sistemas operacionais Windows e Mac OS X.

O projeto Moonlight (independente da Microsoft) permite que aplicações Silverlight também rodem em Linux.

2 - Quais são as principais diferenças no uso do Flash e do Silverlight?

Existe uma sobreposição grande de funcionalidades entre o Flash e o Silverlight, especialmente no tocante à criação de interfaces de usuário. A comparação correta seria entre Microsoft Silverlight e a combinação de Adobe Flash + Adobe Flex. Eu diria que a grande diferença não está no resultado final, mas no processo de criação.

O Flex foi criado para dar ao Flash, um plataforma criada originalmente apenas para a criação de interfaces, capacidades de acesso a transações complexas. A Adobe procurou oferecer um front-end onde fosse possível a criação de formulários e o consumo de Web Services para acessar transações. Essas transações podem ser feitas em qualquer tecnologia, inclusive .NET, mas o caminho de desenvolvimento do Flex, baseado na ferramenta de desenvolvimento Eclipse, leva para uma integração mais forte com tecnologias não Microsoft, como Java, Rails e outras tecnologias "LAMP" (Linux + Apache + MySQL + PHP).

O Silverlight tem uma origem, e portanto uma afinidade no caminho oposto: apesar de ser possível criar front-ends em Silverlight para tecnologias LAMP, o modelo ideal é o uso do Silverlight integrado ao .NET. Isso por si só já garante uma maior produtividade, pois o ambiente de desenvolvimento é integrado do design à implantação no servidor, passando por desenho de bancos de dados, programação e testes. Além disso, o Silverlight suporta linguagens de script que antes eram associadas ao LAMP, como Python e Ruby.

3 - Quais são as vantagens na utilização do Silverlight?

A principal vantagem é o uso da tecnologia XAML - Extensible Application Markup Language. O XAML oferece uma maneira declarativa, como a do HTML, para a descrição dos elementos de interface, incluindo primitivas gráficas, campos de formulário, elementos de layout inteligente, imagens, vetores, 3D, animações, áudio e vídeo.

O poder do XAML reside no fato de que todos os elementos descritos em XAML têm equivalentes nas linguagens de programação suportadas pelo ambiente (C#, Visual Basic, VBScript, JavaScript, IronRuby e IronPython. Propriedades, eventos e métodos podem ser manipulados e mesmo criados por código, a partir de transações, regras de negócio ou campos de bancos de dados.

Isso permite, por exemplo, que a cor ou o tamanho de um objeto vetorial (como um gráfico de barras, por exemplo) possa ser associado facilmente a uma informação de negócios. Apesar de isso ser possível em Flash/Flex, a produtividade do desenvolvimento em Silverlight/.NET é muito superior. Além disso, o modelo de programação .NET permite que o desenvolvedor consuma transações e dados de todos os servidores Microsoft diretamente, incluindo SharePoint, BizTalk, SQL Server, Dynamics CRM e Communications Server, entre outros.

4 - Quando devemos recomendar o uso de Silverlight?

Em princípio, qualquer projeto que exija alta interatividade e execução dentro do browser podem ser desenvolvidos com Silverlight. Isso inclui a maioria dos cenários hoje desenvolvidos em AJAX (Asynchronous JavaScript and XML) e Flash/Flex. A linha de decisão entre AJAX, Flash ou Silverlight hoje passa pelos seguintes fatores:

  1. Será fácil para o usuário instalar o plugin do Silverlight, caso ele não esteja instalado? Esse hoje é principal ponto de decisão, mas tende a perder importância quando a base instalada de Silverlight crescer. O plugin do Silverlight é bastante pequeno e fácil de instalar, então a questão é se os usuários terão privilégios para instalá-lo.
  2. É uma aplicação inteligente, ou apenas um display de imagens ou animações? A grande maioria das aplicações Flash são hotsites ou banners com muita exibição de imagens e pouca interação real. Quanto mais interação e, especialmente, comunicação com a retaguarda, maior a vantagem em usar Silverlight.
  3. O ambiente de retaguarda da aplicação e/ou da empresa "dona" da aplicação é .NET? Se sim, a recomendação é adotar Silverlight imediatamente. Os ganhos de interatividade e produtividade sobre Flash e AJAX num ambiente que já usa .NET são enormes.
  4. Se a aplicação for desktop, especialmente se for uma aplicação corporativa, talvez o "irmão mais velho" do Silverlight, o Windows Presentation Foundation, seja uma boa alternativa. Os princípios de programação são os mesmos, mas a tecnologia apresenta vantgens sobre o Silverlight para aplicações locais, como acesso a dispositivos e dados com direitos totais (full-trust), e mais classes e funcionalidades .NET do que está disponível no Silverlight.

5 - Existe um perfil de projeto ideal para utilização do Silverlight?

Alguns cenários são bastante adequados ao uso do Silverlight:

  1. Aplicações multimídia baseadas em bancos de dados, no estilo do Flickr ou do YouTube. Desenvolver aplicações desse tipo em Silverlight é extremamente mais simples e fácil de dar manutenção que os complicadíssimos sistemas AJAX em que essas aplicações são baseadas.
  2. Internet Banking e e-Commerce. Essas aplicações têm tudo a ganhar com um paradigma de usabilidade mais próximo de uma aplicação desktop. A facilidade para se manipular listas, grids de dados e gráficos em Silverlight supera em muito qualquer outra tecnologia Web.
  3. Sites de redes sociais e comunicação entre usuários. Aqui as coisas estão apenas começando, mas com Silverlight vai ser possível a criação de verdadeiros cockpits para aplicações sociais, com funcionalidades e aparência muito além do que é possível com AJAX.
  4. Sites de rádios e TVs online. Aqui também a experiência rica e as capacidades multimídia do Silverlight vão permitir a criação de players muito poderosos e integrados a grandes bases de dados.
  5. E-mail. O Silverlight permite a criação de clientes online de email tão poderosos quanto o Otlook, com grande facilidade.

Aqui vale notar a questão de facilidade de desenvolvimento do Silverlight x Flash. Hoje praticamente nenhuma aplicação do tipo das mencionadas acima é desenvolvida em Flash, simplesmente porque não é economicamente viável.

6 - Que tipo de conhecimento um profissional precisa ter para trabalhar com Silverlight?

Existem dois perfis de profissionais que tocam o Silverlight, o desenvolvedor e o designer. O desenvolvedor pode reaproveitar seus conhecimentos em .NET ou em qualquer uma das linguagens suportadas em Silverlight, e usar o Visual Studio 2008 como ferramenta de programação. O designer pode reaproveitar seus conhecimentos em Photoshop e Flash, pois as ferramentas do Expression Studio são facilmente dominadas por profissionais que já conheçam as ferramentas da Adobe.

A maioria dos conceitos de design, usabilidade, interatividade e animação são universais, independente da ferramenta. Existe um conhecimento que deve ser compartilhado entre o designer e o programador, que são os princípio pelos quais o XAML funciona. Quanto mais o desenvolvedor e o designer entenderem a "mágica" do XAML, mais poderosas serão suas aplicações.

7 - Quais os recursos de aprendizado para quem deseja se aprofundar no assunto?

Hoje a melhor maneira de se aprender Silverlight é online. A Microsoft tem uma série de tutoriais e hands-on labs que valem à pena ser feitos tanto por desenvolvedores quanto por designers. É importante que ambos compartilhem essa base comum de conhecimento, mesmo que design pareça assustador para um desenvolvedor e um designer seja avesso a colocar a mão em código. Aqui vale o mesmo que vale para HTML.

Os melhores desenvolvedores e designers de páginas Web são os que conhecem coisas que tocam aos dois universos, como HTML bem formado, CSS e JavaScript. Sendo assim, conhecer um pouco de Expression Blend é fundamental para o desenvolvedor Silverlight, e o designer Silverlight se beneficiará bastande de um pouco de conhecimento de uma linguagem como C#.

Outra comparação interessante é com Flash, onde bons designrs conhecem o básico de ActionScript, e os bons desenvolvedores sabem o básico do ambiente de desenho e animação. O ideal é desenvolvedores e designers aprenderem esses recursos em conjunto, com cada um ajudando o outro quando necessário. Isso ajudará as duplas designer/desenvolvedor a criar seu fluxo de trabalho ideal.

Os recursos básicos para aprendizado do Silverlight 2.0 são:

Conteúdo em português da MSDN Brasil:

Microsoft Expression Developer Center:
http://www.microsoft.com/brasil/msdn/DevCenterExpression/default.mspx
Artigos e links para recursos de aprendizado sobre o Microsoft Expression.

Webcasts sobre Silverlight
https://www.msdnbrasil.com.br/mediacenter/subject.aspx?center=60
Área onde são publicados todos os Webcasts em português sobre Silverlight.

Conteúdo em inglês:

Getting Started With Silverlight
http://silverlight.net/GetStarted/
Esta página mostra como preparar o computador para usar o Silverlight, links para as ferramentas de desenvolvimento e design, e 6 vídeos que mostram o uso de Silverlight com JavaScript. Ótimo ponto de entrada para o aprendizado.

Silverlight Tutorials
http://silverlight.net/learn/tutorials.aspx
Tutoriais cobrindo tópicos avançados de Silverlight. Mais voltados a desenvolvedores, mas que valem à pena serem feitos também por designers.

Hands-On Lab de uma aplicação real em Silverlight
http://blogs.msdn.com/swiss_dpe_team/archive/2008/04/17/silverlight-2-beta-1-end-to-end-hands-on-lab.aspx
Este material excelente mostra todos os passos para se criar uma aplicação de e-Commerce de venda de carros. Muito bom para se dominar o processo completo de criação de uma aplicação complexa em Silverlight.

Videos "How Do I...?"
http://silverlight.net/learn/videocat.aspx?cat=2
Dezenas de vídeos mostrando aspectos diferentes de desenvolvimento avançado em Silverlight, cobrindo desde a criação de interfaces para entrada de informações, até diversas técnicaas para consumo de dados a partir de bancos, Web Services ou feeds RSS.

Silverlight Hands-On Labs
http://silverlight.net/learn/labs.aspx
Laboratórios aprofundados dos principais conceitos de Silverlight.

8 - Quais são os melhores exemplos de aplicações Silverlight disponíveis?

  1. Hard Rock Cafe Memorabilia: http://memorabilia.hardrock.com/ O uso mais legal (por enquanto) do recurso Deep Zoom Composer do Silverlight; um passeio interativo pelo acervo de fotografias e documentos do Hard Rock Cafe, numa interface inovadora.Para aprender mais sobre o Deep Zoom, acesse http://www.hanselman.com/blog/DeepZoomSeadragonSilverlight2MultiScaleImagesAtMix.aspx.
  2. Infragistics FaceOut: http://www.infragistics.com/hot/silverlight.aspx#InfragisticsandSilverlight
  3. Excelente exemplo de uma aplicação corporativa, mostrando o que pode ser feito com Silverlight para visualização de dados; inclui código fonte e um preview dos componentes Infragistics para Silverlight.
  4. Shock: http://www.nokola.com/shock/
  5. O clássico jogo Breakout em Silverlight, com código-fonte; ótimo para quem quer aprender a criar jogos com a tecnologia.
  6. Silverlight Airlines: http://silverlight.net/Samples/2b1/SilverlightAirlines/run/default.html
  7. Exemplo de uma interface inovadora para a marcação de viagens aéreas. O código-fonte pode ser baixado de http://silverlight.net/Samples/2b1/SilverlightAirlines/SilverlightAirlines.zip.
  8. Silverlight Controls: http://silverlight.net/Samples/2b1/SilverlightControls/run/default.html

Uma demonstração de como usar diversos controles de entrada de dados em Silverlight. O código-fonte pode ser baixado de: http://silverlight.net/Samples/2b1/SilverlightControls/SilverlightControls.zip.

Mais aplicações com código-fonte podem ser baixadas de http://silverlight.net/community/gallerydetail.aspx?cat=5, e você pode encontrar diversos exemplos de aplicações Silverlight em: http://silverlight.net/Showcase/.

December 12

US Government Usability Guidelines

Os designers sempre ouviram falar de usabilidade. Os desenvolvedores estão ouvindo falar cada vez mais. Porém, aprender usabilidade não é tarefa fácil. No meu caso, envolveu uma pós-graduação e 10 anos de trabalho e estudo contínuo. Profissionais de usabilidade são dificílimos de se encontrar, e em alta demanda.

Livros sobre o assunto não faltam, basca dar uma busca na Amazon. Recursos online também não faltam. O problema é que esses livros e recursos são contraditórios entre si, nem sempre cobrem todos os aspectos práticos que um designer ou desenvolvedor precisa ter à mão no dia-a-dia, e são, em sua maioria muito teóricos.

A boa notícia é que usabilidade virou obrigação para os sites do governo americano (deveria ser obrigatório para tudo, mas nesse caso é lei). Para facilitar o trabalho de trazer esses sites governamentais para um padrão mínimo de usabilidade, o governo americano comissionou um estudo acadêmico que comparou e compilou as melhores práticas de usabilidade em um livro eletrônico de 292 páginas (parece muito, mas não é - para ter o conhecimento concentrado ali você teria que ler uns 20 livros de 600 páginas).

O livro é organizado em tópicos, que apresentam uma boa prática, sua definição e o grau de importância em seguí-la. O índice do livro serve como um check list para qualquer trabalho de design online. O Sérgio Junior, meu colega de Makesys, está até criando uma ferramenta de validação de usabilidade baseada na ferramenta.

O livro costumava estar disponível gratuitamente para download no site http://www.usability.gov, mas agora é cobrado. É barato, US$ 25, mas acho que o governo americano devia ser mais legal e continuar liberando o download gratuito. Por isso, disponibilizei a minha cópia para download no meu SkyDrive: http://cid-5b4b7d96b6a00d5c.skydrive.live.com/browse.aspx/Public. São quatro arquivos RAR (para caber no limite de tamanho de upload do SkyDrive), com o nome óbvio "US Government Usability Guidelines".

Baixe para um folder, descompacte e leia o documento de ponta-a-ponta. Essas guidelines precisam "estar no sistema" de qualquer pessoa ligada ao desenvolvimento de interfaces, sejam designers, desenvolvedores, arquitetos, gerentes de processos e até mesmo o pessoal ligado a vendas e marketing.

O site Usability.gov oferece um monte de outras dicas e processos para incorporar usabilidade em projetos de sites e software, incluindo templates de documentos e artefatos. É um recurso fantástico e gratuito, aproveite!

Technorati Tags:

Windows Vista SP1 Release Candidate!

Finalmente saiu o Release Candidate do Windows Vista SP1, provavelmente o Service Pack mais esperado da história. Se você está insatisfeito com a performance do Windows Vista, instale o update. Já vou avisando que o processo de instalação não é nada intuitivo.

Você deve baixar o arquivo de http://www.microsoft.com/downloads/details.aspx?FamilyID=9de6260e-4275-482d-9524-de850c4dd91c&DisplayLang=en, descompactá-lo e seguir as instruções no documento "SP1RC_Public_Availability_WUReleaseMessage.doc", que incluem a instalação de uma tonelada de outros patches e atualizações antes de efetivamente instalar o Service Pack.

Se você tem o coração forte, divirta-se!

Technorati Tags: ,,,
December 02

Recursos de Aprendizado - Windows Live

A Microsoft publica uma quantidade enorme de recursos de aprendizado sobre os serviços Windows Live. Ao redor do mundo, a comunidade de desenvolvedores e parceiros da Microsoft também publica artigos, tutoriais e projetos exemplo usando serviços Windows Live. Este post será atualizado regularmente com novos links para recursos de aprendizado sobre os serviços Windows Live.

Recursos Microsoft - Português

Webcasts Microsoft - Português

Recursos Microsoft - Inglês

Ferramentas

Aplicações Avançadas com código-fonte

Comunidades

Technorati Tags: ,

Aplicações Silverlight para você se inspirar

O site Silverlight.Net mantém uma lista atualizada de aplicações Silverlight para você se inspirar e inspirar seus clientes. Você pode também submeter suas aplicações à lista.

Silverlight Showcase

 

Technorati Tags: ,

Recursos de Aprendizado - Microsoft Silverlight

A Microsoft publica uma quantidade enorme de recursos de aprendizado sobre o Microsoft Silverlight. Ao redor do mundo, a comunidade de desenvolvedores e parceiros da Microsoft também publica artigos, tutoriais e projetos exemplo em Silverlight. Este post será atualizado regularmente com novos links para recursos de aprendizado sobre o Microsoft Silverlight.

Recursos Microsoft - Português

Webcasts Microsoft - Português

Recursos Microsoft - Inglês

Ferramentas e Runtimes

Sites de Tutoriais - Inglês

Aplicações Básicas com código-fonte

Aplicações Avançadas com código-fonte

Ferramentas e Utilitários para WPF

Comunidades

Aplicações WPF para você se inspirar

A comunidadade Channel 9 da Microsoft mantém uma lista atualizada de aplicações públicas desenvolvidas em WPF. Experimente as aplicações, inspire-se e inspire seus clientes.

WPF Application Portfolio

 

Technorati Tags: ,,
December 01

Recursos de Aprendizado - Windows Presentation Foundation

Designers e desenvolvedores que queiram trabalhar com Windows Presentation Foundation precisam dominar tanto o modelo de desenvolvimento quanto as ferramentas - Expression Blend e Visual Studio. Este post vai ser atualizado regularmente com os recursos de aprendizado ligados a Blend e WPF.

Recursos Microsoft - Português

Webcasts Microsoft - Português

Recursos Microsoft - Inglês

Sites de Tutoriais - Inglês

Aplicações-exemplo com código-fonte

Aplicações Avançadas com código-fonte

Fundamentos de WPF - Inglês

Ferramentas e Utilitários para WPF

Recursos de Aprendizado - Microsoft Expression

A Microsoft publica uma quantidade enorme de recursos de aprendizado sobre o Microsoft Expression. Ao redor do mundo, a comunidade de desenvolvedores e parceiros da Microsoft também publica artigos, tutoriais e projetos exemplo baseados nas tecnologias Expression. Este post será atualizado regularmente com novos links para recursos de aprendizado sobre o Microsoft Expression.

Recursos Microsoft - Português

Webcasts Microsoft - Português

Recursos Microsoft - Inglês

Sites de Tutoriais - Inglês

Aplicações Avançadas com código-fonte

Comunidades

 

November 02

Sobre Este Blog

Aconteceram duas coisas importantes na minha carreira nos últimos meses. Uma delas foi fundir a Zazambia, minha "boutique de serviços Web 2.0" à Makesys, uma empresa de projetos de software e parceira Microsoft, pra criar uma empresa focada em projetos de software corporativo onde a preocupação com a experiência do usuário esteja em primeiro lugar.

Em termos de capacidades, a resultante é uma mistura de Microsoft Certified Partner com agência de propaganda interativa. Em termos de objetivos, é uma empresa que quer trazer para o mundo do software corporativo o melhor da experiência do usuário baseada em tecnologias e princípios de Web 2.0. E em termos de filosofia, uma empresa onde o DNA principal ainda é o de uma empresa de software, com foco em gerenciamento de projetos, metodologia e qualidade.

A outra coisa que aconteceu foi a minha recente nomeação como MVP - Most Valuable Professional da Microsoft, na categoria de Visual Developer - Expression. Foi uma grande honra para mim, porque a visão da Microsoft para Experiência do Usuário é muito próxima à minha visão pessoal. Em uma boa experiência de uso, seja em software, em objetos de consumo, automóveis, serviços ou qualquer outra coisa, a função deve vir antes da forma.

Hoje, tanto como indivíduo quanto como empresário, estou numa posição privilegiada, onde posso influenciar o mercado para que use todo o poder da tecnologia e a inteligência de desenvolvedores e designers para criar produtos e serviços que, além de fazerem coisas úteis e rentáveis, também sejam bonitos e agradáveis de usar. Tenho tido sucesso em convencer grandes empresas que é melhor investir em serviços online de qualidade do que em hotsites sem conteúdo e gincanas virtuais.

Estou começando este blog, com o apoio da Microsoft, para ajudar os profissionais de desenvolvimento e design a entender que não existe mais diferença entre seus mundos. As duas profissões são hoje inseparáveis, dois lados da mesma moeda. O desenvolvedor que não tiver bom gosto e o designer que não entender de tecnologia estão condenados a virar dinossauros, frutos de uma era da qual vamos rir no futuro, onde os caixas eletrônicos eram feios e os sites bonitos não serviam para nada além de promover marcas de desodorante e cerveja.

Vou postar bastante sobre tecnologias da Microsoft voltadas à Experiência do Usuário - em princípio, Expression, Silverlight, WPF e Live Services. Mas vou postar também sobre design, usabilidade, acessibilidade, negócios e tudo o mais que seja útil e interessante para quem quiser viver na fronteira entre a tecnologia e o design, com um pé no marketing responsável e outro em serviços online.

Se você gostar deste blog, participe, com críticas, comentários e sugestões. E divulguem para os amigos. Espero conseguir dedicar o tempo e o carinho necessários para que este blog seja uma boa referência em português sobre Experiência do Usuário no mundo Microsoft. E nada vai me deixar mais feliz que um email ou comentário dizendo que o feed RSS deste blog foi adicionado aos seus favoritos.