
Next Saturday I’ll be leaving to Barcelona for a week to attend to TechEd Developers 2007!
This is an international event about Microsoft Technologies. You can learn more about it here.
This is a great opportunity sponsored by Microsoft Student Partner Program.
By now you might be wondering why I am writing this in English. This is an international event, so I thought that it would be a good idea to write about it in a language that can reach a huge amount of people, expanding my blog to the rest of the world.
I hope to post several information and opinions about my experience during next week. I’ll write about the sessions I’ll be attending, but also about this week as a personal experience. After all, this is my first time away from my family in a foreign country just with friends
I leave here reference to other MSP’s blogs. These blogs belong to MSP’s that will also attend to this great event.
Alcides Fonseca http://alcides.ideias3.com/
André Sousa http://weblogs.pontonetpt.com/asousa/
Susana Vilaça http://susie-v.spaces.live.com/
Nelson Correia http://nelsoncorreia.spaces.live.com/
I want to give my apologies about my poor english. It has been many year since last time I wrote in this language. I’ll try to express my self as good as I can!

A 15 de Novembro no Porto e a 21 de Novembro em Lisboa vai-se realizar um evento Microsoft sobre os tópicos seguintes.
.NET Framework 3.5
Próxima geração da já conhecida framework
http://blogs.msdn.com/brada/archive/2007/06/12/net-framework-3-5.aspx
Visual Studio 2008
Ambiente de Desenvolvimento em .NET
http://msdn2.microsoft.com/en-us/vstudio/aa700830.aspx
LINQ
SQL integrado em C#
http://msdn2.microsoft.com/en-us/library/bb308959.aspx
Silverlight
Desenvolvimento de User Experience na Web
http://silverlight.net/
Plataforma Live
Desenvolvimento sobre Serviços Live
http://dev.live.com/
SQL Server 2008
Servidor de Base de Dados
http://www.microsoft.com/sql/2008
Entrada gratuíta. Boa oportunidade para ver umas coisas novas!

Esta tarde estive no Casino de Lisboa, neste evento realizado pela Microsoft que já referi no blog anteriormente.
O evento começou com a exibição de um vídeo de animação ilustrando as dificuldades existens na comunicação entre Designers e Developers. Um designer quer um conceito, o developer implementa de forma errada, e após um jogo de ping-pong arranja-se uma solução “parecida” com a desenhada martelando a implementação errada. Este é o problema que segundo a Microsoft o Expression Studio visa minimizar ou mesmo resolver.
A 1ª sessão foi dada pelo José António Silva – Architect Advisor, Microsoft.
Começou por tentar definir o conceito User Experience (UX).
Uma boa interface passa despercebida, mas quando somos obrigados a utilizar uma interface mal concebida essa má impressão tem um impacto bem maior. As pessoas assumem que o bom é o espectável, e o mau é que é de censurar.
UX por um lado é fiabilidade (segurança, expansão potencial, previsibilidade da interface, confiança), é também usabilidade (acessibilidade, aprendizagem simples). Um exemplo de aumento usabilidade é a alteração do Alt+Tab do Windows XP onde apenas aparecem os ícones das aplicações e os seus títulos, para a versão do Windows Vista, onde temos um preview das janelas para melhor identificação.
UX é utilidade. Tem de haver funcionalidade e valor acrescentado. Temos também a vertente da adaptabilidade (ao contexto, possibilidade de personalização). Como exemplo de adaptabilidade temos a Ribbon do Office 2007, que apresenta opções sensíveis aos objectos actualmente seleccionados.
A UX tem de apelar ao utilizador. A beleza, sensação de exclusividade e o apelo emocional fazem parte destas características não ligadas à funcionalidade, mas à “psicologia do utilizador”.
No fundo a User Experience tem como objectivo ser Efectiva, Eficiente e Satisfazer, tendo como base o melhor do design, tecnologia e usabilidade.
Reforçou-se a necessidade de ter uma camada de apresentação acima das tecnologias. Esta camada é o que liga o utilizador aos sistemas informáticos, e é nesta camada que se inserem elementos como o Ajax, Silverlight e Windows Presentation Foundation (WPF).
A partir deste ponto a tarde foi direccionada para o Silverlight. Este é um plugin cross browser/plaftorm que visa criar uma User Experiencia rica em conteúdos multimédia, e baseada em .NET.
Foram mostradas algumas aplicações web feitas com Silverlight que se encontram no showcase do site oficial.
De realçar o suporte de transmissão de conteúdos em alta-definição (HD).
Uma aplicação Silverlight/WPF consiste num ficheiro XAML, uma definição em XML do conteúdo. É esta definição que é manipulada, por um lado pelo designer, e por outro pelo developer.
Este formato permite ainda a criação de ferramentas de terceiros para exportação de formatos incompatíveis para elementos “importáveis”, ou mesmo o desenvolvimento de ferramentas de desenvolvimento.
Foi mostrado ainda o site http://premium.quiksilverlive.com
A 2ª sessão, dada por Martin Tirion – User Experience Advisor, Microsoft, consistiu num conjunto de demonstrações das aplicações do pacote Expression Studio.
Expression Web - edição de XHTML,CSS, XML e XSLT.
Expression Design - Desenvolvimento de elementos de interface, ferramenta vectorial.
Expression Blend - Interfaces Interactivas para Windows / Web
Expression Media - Catalogação de recursos multimédia, controlo de versões, procura, tagging
Expression Encoder - Conversão de formatos de multimédia
É de realçar que na realidade a comunicação entre Designer e Developers é sempre necessária. Tem de se definir os elementos de interface a desenhar, quais os nomes associados, e outras regras de forma a tornar a colaboração possível. Um grande benefício que foi realçado numa conversa com o orador, após a apresentação é a possibilidade de o programador fazer uma interface “tosca” com os elementos básicos, sendo esta melhorada por um designer.
Foi executada uma demonstração transversal ao Expression Studio que consistiu na criação de um player de um vídeo WMV. Começou por fazer o encoding do vídeo no Ex. Encoder (de realçar a possibilidade de fazer encoding de pré-visualização para comparação da qualidade de vídeo. Desta forma não se perdem horas a fazer encoding de um vídeo, para concluir que a qualidade é insuficiente). Nos vídeos podem-se colocar marcadores de capítulo, ou despoletar trechos de código num dado momento do vídeo.
No Ex. Web vão reparar que o look and feel é semelhante ao do Frontpage ou do VS Web Developer.
No Ex. Blend achei genial a opção de pegar numa animação e gerar a animação inversa. Imaginem uma situação habitual de por uma animação de entrada de um elemento. Blend permite gerar a animação inversa com 2 cliques. Muito porreiro! Outra cena gira, é que se tivermos uma animação despoletada por exemplo por um mouse enter num elemento, e despoletarmos um outro evento que começe uma segunda animação, o Blend trata de parar a 1ª e executar a 2ª. Parece tosco, mas na demo deu a sensação de haver fluidez neste processo.
Na 3ª sessão, dada pelo mesmo orador, pois o orador agendado não teve possibilidade de vir, falou-se de forma genérica do que é e será a web. A necessidade de ir de encontro ao que os utilizadores esperam, e a importância de não concentrar esforços num público alvo específico, quando existe um mercado por explorar.
Este é o princípio por trás desta conclusão:

Se nos concentrarmos na zona vermelha que é a mais popular, existe uma cauda enorme (maior que a parte vermelha) mas que não está a ser rentabilizada.Foi uma tarde interessante. Apenas tive pena de não terem mostrado mais sobre WPF e desenvolvimento de aplicações Windows. A tarde foi virada para a web. Por outro lado fico ansioso pela versão 1.1 do Silverlight, onde já virá suporte para programação em .NET ao invés do javascript. Neste momento o .NET faz parte apenas do universo WPF.
Os comes e bebes eram porreiros (principalmente porque o evento foi de borla :-P)
Escrevi demais… Peço desculpa! (Pelo menos a quem conseguiu ler tudo até esta última linha :-P)
Hoje tive oportunidade de assistir a um workshop de XNA no âmbito do 15º EPCG.
09.00 - Welcome
Graças ao belo trânsito do IC19 cheguei só às 9:25, pelo que desta parte nada tenho a dizer 
09.10 - XNA Overview (Vitor Santos)
Cheguei ao evento estava o Vitor Santos a falar sobre XNA. O que retive da apresentação foi a potencialidade do XNA como plataforma de desenvolvimento de jogos aplicada ao ensino.
Uma das grandes vantagens da framework XNA, é ser comum ao desenvolvimento para Windows e Xbox (o que muda é a framework abaixo, que no caso da Xbox 360 é um subset da .NET Compact Framework). Esta abstracção de plataforma pode permitir no futuro desenvolvimento de jogos para sistemas mobile, por exemplo.
Pelos mecanismos básicos comuns ao desenvolvimento de jogos virem embutidos na framework, o desenvolvimento é rápido, e o programador pode ver desde cedo os resultados.
O XNA contempla funcionalidades como Graficos, Audio, Input, Matemática, Armazenamento, Física.
Alguns mitos que foram referidos como errados foram:
- O facto de um jogo sem rede não poder ser interessante;
- Termos jogos em managed code ser incompatível com uma boa performance;
- XNA ser apenas para desenvolvimento em X-Box;
- Game Developpers a sério não usam XNA;
- O IDE de XNA é pago.
Falou-se do futuro da Xbox. A framework 2.0 codename Shaman.
Como potencialidades tem o networking e suporte para o Xbox Live, melhoria de performance, suporte pelo Visual Studio 2005, lançamento de ferramentas para modelos 2D/3D. Está contemplada a hipótese de ter a versão 1.0 e 2.0 a correr em paralelo, por se prever incompatibilidade entre elas.
09:40 - Desenvolvendo jogos com XNA: Consumidores como Criadores! (Amintas Neto - Microsoft Brasil)
Falou-se da experiência de XNA no Brasil. Foi o ano passado lançado um desafio para desenvolvimento de uma versão “quitada” do SpaceWars em 15 dias, para estudantes. A adesão foi muito boa. Foi mostrada o jogo vencedor. O principal elemento foi o controlo por voz, que permitia a existência de 3 naves em jogo, sendo uma delas controlada normalmente pelo teclado, e o resto da equipa recebendo instruções por voz. Estava muito giro!
O Amintas Neto mostrou que não é preciso uma Xbox para desenvolvimento, ao usar um comando da mesma ligado ao PC. É de realçar que já existem no mundo mais de 50 comunidades de XNA em mais de 8 línguas.
Pelas facilidades de abstracção providenciada pela framework dá espaço para o ensino de tópicos de informática, redes (multiplayer), Inteligência Artificial, Motor de Jogos, Computação Gráfica, Desenvolvimento em Equipa, pode ser usado para facilmente por a funcionar um jogo com modelos 3D em 3D Studio Max, por exemplo.
O concurso que referi acima (XNA Challenge) vai voltar a ser realizado no Brasil, dando desta vez liberdade e tempo para desenvolver um jogo de raíz. A ideia é permitir que os estudantes usem 1 único jogo neste desafio e no Imagine Cup 2008.
10.50 - Coffee break
Mais uns minutos para o pessoal jogar Xbox e por a conversa em dia!
11:00 - Desenvolvimento de Jogos em XNA (Verónica Orvalho -Face in Motion)
Esta sessão foi muitíssimo interessante. Não foi tão virada para a tecnologia, mas sim para o mercado dos vídeo-jogos. Como funciona a indústria dos vídeo-jogos e que perfis de profissionais encaixam neste ramo.
Perceber as diferentes fases do desenvolvimento de um jogo, e que o que realmente está em jogo é o jogador final! Este tem de ser desafiado e se divertir. O aspecto visual do jogo deve dar-lhe pistas do funcionamento do jogo.
Uma possível perspectiva dos jogos são a fórmula GAMES = BOOKS + MOVIES + INTERACTIVITY.
Antes de pegar no código há que imaginar uma ideia, definir os objectivos e descrever o jogo. Especificar o jogo antes do implementar é essencial.
A oradora chamou à atenção para a facilidade que teve em portar alguns jogos anteriormente desenvolvidos em outras plataformas para XNA.
Houve apenas um ponto que não achei especialmente feliz. Foi feita uma pequena aplicação em XNA que carregava uma textura para a janela do jogo. Quase tudo automático, pouco código. 5 estrelas!
De seguida a oradora mostrou uma aplicação em C++/Open-GL com imenso código tentando mostrar como realmente o XNA poupava trabalho. No entanto usou uma demo que era completamente diferente da mostrada em XNA, neste caso era desenhado um triângulo com um gradiente de cores entre os vértices.
Teria sido mais proveitoso e auto-explicativo mostrar uma mesma demo desenvolvida em ambas as plataformas. Da forma como foi feito não fiquei com noção da redução das linhas de código.
Espero em breve poder disponibilizar a apresentação utilizada. Vale mesmo a pena ver.
12:00 - Demos XNA (Nelson Correia e Ricardo Portela)
Foram mostradas 2 demos de XNA feitas por 2 MSP’s.
A 1ª delas era um jogo de naves com controlo por voz e com interfaces em WPF. (Nelson Correia) Pode ser encontrada em http://codeplex.com/space
A 2ª é uma versão em XNA do jogo Crypt Raider. (Ricardo Portela)
12:30 - Encerramento
Por fim tivémos tempo para trocar algumas impressões com os oradores e ainda para almoçar, já fora do recinto.
Nota: Só hoje reparei que tinha os comentários restritos a utilizadores registados. Agora já podem comentar sem registo!

Após estarem fechadas por uns dias as inscrições voltaram a abrir! Aproveitem!!
Data: 24 de Outubro (15h00-18h30)
Local: Auditório dos Oceanos, Casino de Lisboa - Parque das Nações
Produtos: Microsoft Expression, Silverlight
Destinatários: Designers
O papel dos Designers é fundamental para dar corpo a ideias e materializar experiências através do movimento, da cor e da ergonomia das soluções criativas.
Venha conhecer as novas ferramentas Expression e a importância que o Silverlight poderá trazer-lhe no desenvolvimento das suas soluções.
No dia 24 de Outubro de 2007, o evento Expression European Designer Tour passará por Portugal para lhe dar a conhecer os novos produtos para Designers da Microsoft e o seu compromisso futuro nesta área.
Ver mais