Ricardo Castelhano Blending the Realms

30Apr/100

Microsoft TechDays 2010 Portugal – Flash Skills Applied to Silverlight Design and Development

[PT]

Aqui está como prometido, um pequeno resumo da minha sessão do “Microsoft TechDays2010 Portugal” sobre “Conhecimentos de Flash aplicados ao Design e Desenvolvimento em Silverlight″.

O objectivo desta sessão não foi criar comparativos de valor entre as tecnologias, mas sim em mostrar como se dão nomes diferentes para os mesmos fins.

Dessa forma, a agenda foi preenchida da seguinte forma:

  • Framework
  • Design and Development Tools
  • Programming Languages
  • Mapping Silverlight and Flash
  • Declarative Animation
  • Procedural Animation

Os slides foram colocados no SlideShare e estão em inglês, como é apanágio das minhas apresentações. Peço para tomarem atenção aos comentários dos slides pois estes contêm pequenas explicações dos mesmos.

Caso tenham dificuldade na leitura dos slides e respectivos comentários em inglês, por favor queiram me dar feedback para que se possa resolver o problema.

Obrigado, espero que gostem e volto a frisar a importância do vosso feedback, quer seja sobre o que gostariam de ver em apresentações futuras quer sobre o próprio “speaker”, é a única forma de se aprender e evoluir.

A apresentação está no final do post.

[EN]

Like promissed, here it is a short summary of my “Microsoft TechDays2010 Portugal” session about ”Flash Skills Applied to Silverlight Design and Development″.

The purpose of this session was not to create comparative value between the technologies, but rather to show how to give different names for the same purpose.

I set the following agenda:

  • Framework
  • Design and Development Tools
  • Programming Languages
  • Mapping Silverlight and Flash
  • Declarative Animation
  • Procedural Animation

The slides were uploaded to SlideShare and they are written in english. I ask special attention for the slides comments because they have small descriptions about the subjects.

Thanks, I hope you enjoy it and please give me some feedback, let me know what you would like to see in a upcoming presentation or even about myself as a speaker, that’s the only way to improve.

The presentation is on the bottom of the post.

27Apr/100

Microsoft TechDays2010 Portugal – Resumo

[PT]

O evento Microsoft TechDays2010 realizou-se na passada semana e foi sem dúvida o grande evento nacional de tecnologia.

Houve lugar para networking com outros oradores e participantes, para visitar algumas secções onde Parceiros Microsoft apresentavam as suas soluções e/ou produtos, e para imensas sessões técnicas. Não tive oportunidade de assistir a muitas sessões pois a azafama foi imensa na preparação das DEMOS para as minhas sessões.

Este ano tive o desafio da Microsoft para apresentar 4 sessões: 2 no 1ºdia + 2 no 2ºdia ... e no 3ºdia tive direito a ir assistir a sessões já com toda a calma do Mundo :)

As minhas sessões:

  • Dia1:
    • Developing Silverlight4 Solutions with Expression Blend4
    • Dynamic Layout and Transitions in Silverlight4 with Expression Blend4
  • Dia2:
    • Microsoft Silverlight Analytics Framework
    • Flash Skills Applied to Microsoft Silverlight Design and Development

Bem, deixem-me então fazer uma descrição do que foi cada sessão:

 

Developing Silverlight4 Solutions with Expression Blend4

Esta sessão é a sessão que costumo fazer para a Microsoft em todos os eventos nacionais: TechDays, DevDays, WebDay, ... e outros Day que tais.

O que se pretende é a apresentação do software "Expression Blend4" e, através de demos mostrar como funciona e como se pode tirar partidos das suas funcionalidades. É uma sessão de nível 200, ou seja nível iniciado.

A sala estava bem composta com cerca de 40 pessoas, tendo em conta que a sessão calhou à hora de almoço não foi mau.

 

Dynamic Layout and Transitions in Silverlight4 with Expression Blend4

Esta sessão foi baseada na sessão do Kenny Young no MIX10, em termos de conteúdo programático. No entanto, e uma vez que no MIX10 se tratou de uma mini-sessão (30minutos) e eu tinha 1 hora disponível, preferi fazer uma abordagem diferente da do Kenny Young e apresentei as funcionalidades numa perspectiva evolutiva da ferramenta "Expression Blend".

Cada funcionalidade que foi sendo acrescentada nas versões anteriores do Blend foram explicadas e demonstradas e a receptividade do público não poderia ter sido melhor, foi votada a 3º melhor sessão do 1º dia de evento !

A sala estava preenchida com perto de 80 participantes que puderam ver o modo de funcionamento de "Storyboards", "VisualStateManager", "Easing Functions", "Behaviors", "Fluid Layout", "Layout States", "Effects", "More Behaviors", etc ...

Foi uma sessão que me deu imenso prazer preparar e apresentar.

 

Microsoft Silverlight Analytics Framework

Esta sessão, de nível 300, foi apresentada em conjunto com o meu colega Nuno Godinho. Na realidade, a sessão foi 2/3 dele e somente 1/3 minha :)

Abordou-se a importância da análise de dados dos tráfegos de visita, de dados de interacção, dados de reacção (testes A/B), ... , e partiu-se para a facilidade com que o Silverlight Analytics Framework permite ser implementado por um designer através de Behaviors. Ok, estamos a falar de uma sessão de nível 300 por isso passou-se imediatamente para o "funcionamento do motor" e aqui o Nuno Godinho mostrou como funciona o framework e como está implementado em C#, demonstrando como se pode extender as funcionalidades.

A sala estava com cerca de 60 pessoas e foi uma sessão interessante.

 

Flash Skills Applied to Silverlight Design and Development

Ok, tive o prazer de pedir esta sessão "emprestada" ao Adam Kinney em termos de conteúdo programático mas, e tal como se passou com a sessão do Kenny Young, o Adam Kinney teve uma mini-sessão (30m) e eu tive uma sessão "normal" (1h), dessa forma peguei no conteúdo mas apresentei-o de forma diferente.

E de que forma é que preparei esta sessão? Em parte fui buscar inspiração à sessão do Jeff Paries sobre "Silverlight Graphics and Animation"...e ao efectuar paralelismos entre a semântica "Flash" e a semântica "Silverlight" fui sempre apresentando demos de Silverlight. Assim, foi abordado animação em timeline (Storyboards), eventos, animação procedural misturada com animação de timeline e no final somente animação procedural com alguma trigonometria à mistura.

Esta sessão foi a última do 2º dia, e apesar das pessoas estarem visivelmente cansadas (sim, estes eventos são cansativos...é um "regresso à escola" em que as "aulas" são intensas e nós estamos com real atenção ao conteúdo) teve uma boa avaliação, entrando no TOP20 das melhores sessões do 2º dia na 14º posição.

Em posts individuais irei colocar por escrito cada apresentação, com respectivo PPT e DEMOS para download.

[EN]

Microsoft TechDays2010 event was held last week and definitely it was the biggest national technology event.

It had space for networking among speakers and attendees, spaces for Microsoft Partners to showcase their solutions and/or products, and lots of technical sessions. I hadn't the opportunity to attend many sessions because I had to work on my sessions.

This year, Microsoft challenged me to present 4 sessions: 2 at day1 + 2 at day2 ... and at day3 I had the opportunity to attend some sessions with all the time in the World :)

My sessions:

  • Day1:
    • Developing Silverlight4 Solutions with Expression Blend4
    • Dynamic Layout and Transitions in Silverlight4 with Expression Blend4
  • Day2:
    • Microsoft Silverlight Analytics Framework
    • Flash Skills Applied to Microsoft Silverlight Design and Development

Well, let me describe each session:

 

Developing Silverlight4 Solutions with Expression Blend4

This session is the usual session that I presented at Microsoft national events: TechDays, DevDays, WebDay, ... e other Day alike.

The intent is to present "Expression Blend4" and, with the help of demos show how it works and the best way to take the most out of all their features. Its a level 200 session, that means beginner level.

The room had 40 people, and if we take in consideration that was at lunch time it wasn't that bad.

 

Dynamic Layout and Transitions in Silverlight4 with Expression Blend4

This session was based on Kenny Young's MIX10 session, in terms of the session content. However, at MIX10 it was a mini-session (30minutes)and I had 1 hour available, I rather present in a diferent way so I presented features within an evolutive timeline of the tool "Expression Blend".

Each feature that was shipped in oldest Blend versions were explained and demonstrated and the audience receptiveness couldn't be better, this session made TOP3 of all day1 sessions !

The room was packed with 80 attendees who saw the nuts and bolts of "Storyboards", "VisualStateManager", "Easing Functions", "Behaviors", "Fluid Layout", "Layout States", "Effects", "More Behaviors", etc ...

It was a session that gave me a tremendous pleasure to prepare.

 

Microsoft Silverlight Analytics Framework

This level 300 session was presented as a team with Nuno Godinho. In fact, this was 2/3 his session and only 1/3 mine :)

We talked about the importance of analytics and thereafter we showed how easy it is to implement Silverlight Analytics Framework in your works. Ok, this was a level 300 session so we couldn't stop with Behaviors and Nuno Godinho jumped right into "under the hood" of this framework. Lots of C# code and "Yes, you may extend it" ... the audience was pleased I think.

 

Flash Skills Applied to Silverlight Design and Development

Ok, I had the pleasure to asked this session from Adam Kinney and the content was part his. Like what happened with the Kenny Young's session, Adam Kinney presented this in a mini-session (30m) but I had a "regular" hour so I extended and showed it in a diferent way.

And how did I did it? I took some inspiration in Jeff Paries session about "Silverlight Graphics and Animation"...and all the parallels between "Flash" world and "Silverlight" world I took the demos way. Therefore, I showed timeline animation (Storyboards), events, procedural animation mixed with timeline animation and finished with procedural animation with trigonometry all mingled.

This was the last one from day2 and you may have seen that attendees were fatigued (yes, this events are hardcore...its a "back to school days" where all classes are tough and we have the outmost attention to it) but the session made a good score, it reached to TOP20 of "Day2 BestOf" with the 14ºposition.

In individual posts I will write down my presentations with PPT and DEMOS for download.

1Apr/100

Microsoft TechDays 2010 – Getting Ready For It !

[PT]

O evento Microsoft TechDays2010 aproxima-se e já estão definidas as sessões que irão ficar a meu cargo:

E continuo como "master" da sessão "SketchFlow: Do Protótipo à Produção" que neste evento estará a cargo do "Interactive Developer" João Gonçalves.

A sessão "Developing Silverlight 4 Applications with Expression Blend 4" consistirá na abordagem geral, mas dando maior foco às novidades que foram anunciadas durante o MIX10:

  • Design-Data from CLR Types
  • Layout States for the ListBoxItem
  • PathListBox Control
  • Shape Controls
  • Pixel Shader Effects
  • Transition Effects (*)
  • Behaviors:
    • Bindable Properties
    • Conditional Behaviors
    • CallMethodAction
    • DataStateBehavior
    • DataTrigger
    • DataStoreChangeTrigger
    • FluidMoveBehavior (*)
    • FluidMoveSetTagBehavior (*)
    • InvokeCommandAction
    • SetDataStoreValueAction
  • Data Store

Os tópicos assinalados com (*) serão mencionados mas serão deixados de lado, pois existirá uma sessão só para esse tipo de situações - "Dynamic Layout and Transitions for Silverlight 4 with Expression Blend 4". Nessa sessão serão então abordados os temas:

  • FluidMoveBehavior
  • Fluid Layout no VisualStateManager (VSM)
  • Layout States e Transitions no VSM
  • FluidMoveBehavior em situações "Master/Detail Page"

Na sessão "Flash Skills Applied to Silverlight Applications Design and Development", não pretendo entrar na "eterna" discussão de qual a melhor tecnologia, pois o intuito é auxiliar a transição/adopção dos FlashDesigners ou FlashDevelopers para com a tecnologia Silverlight no sentido de se adicionar uma nova "arma" de desenvolvimento web às variadas existentes no mercado: FlashPlatform/Unity3D/JavaFX/...

Assim, irei mostrar as semelhanças entre o Silverlight e FlashPlatform; as ferramentas para desenvolvimento Visual Studio e FlexBuilder, as ferramentas para animação e composição gráfica Blend e Flash; as linguagens de programação C# e ActionScript3; UserControls e MovieClips; Controls e Components; apresentar recursos para aprendizagem pois faço parte do projecto "Project Rosetta" com o Adam Kinney da Microsoft e no final fazer uma pequena demo para demonstrar que realmente após se fazerem as devidas analogias tudo se torna muito mais fácil.

E finalmente a sessão sobre "Microsoft Silverlight Analytics Framework" irá ser em parceria com o meu colega Nuno Godinho e iremos abordar questões como obter analytics em cenários:

  • in-browser e off-browser
  • online e offline
  • suporte de múltiplos serviços simultâneamente
  • utilização do Expression Blend para uma mais fácil instrumentação
  • testes A/B

Desconheço se as sessões irão ser gravadas, mas após o evento disponibilizarei os meus slides e as demos aqui no blog.

 

[EN]

Microsoft TechDays2010 event is getting closer and my sessions are already closed:

And I'm still the owner of "SketchFlow: From Prototype to Production" session that will be held by the "Interactive Developer" João Gonçalves.

"Developing Silverlight 4 Applications with Expression Blend 4" session will consist of a general approach, but with major focus on the new features presented at MIX10:

  • Design-Data from CLR Types
  • Layout States for the ListBoxItem
  • PathListBox Control
  • Shape Controls
  • Pixel Shader Effects
  • Transition Effects (*)
  • Behaviors:
    • Bindable Properties
    • Conditional Behaviors
    • CallMethodAction
    • DataStateBehavior
    • DataTrigger
    • DataStoreChangeTrigger
    • FluidMoveBehavior (*)
    • FluidMoveSetTagBehavior (*)
    • InvokeCommandAction
    • SetDataStoreValueAction
  • Data Store

Topics marked with (*) will be mentioned but left aside, since there will be a session about that - "Dynamic Layout and Transitions for Silverlight 4 with Expression Blend 4". In that session I will talk about:

  • FluidMoveBehavior
  • Fluid Layout in VisualStateManager (VSM)
  • Layout States and Transitions in VSM
  • FluidMoveBehavior in "Master/Detail Page" scenarios

At the "Flash Skills Applied to Silverlight Applications Design and Development" session, I dont want to go into the "never ending" fight about which is the best technology, has a matter of fact the intention is to help FlashDesigners or FlashDevelopers adopt Silverlight technology as a new tool in the ever growing web technologies market: FlashPlatform/Unity3D/JavaFX/...

I will show similarities between Silverlight e FlashPlatform; between the development tools Visual Studio and FlexBuilder, the animation and user interface tools Blend and Flash; programming languages C# and ActionScript3; UserControls and MovieClips; Controls and Components; show where to find more learning material like "Project Rosetta" where I'm colaborating with Adam Kinney from Microsoft and I will try to finish with a quick demo to show that with the right mind-set its very easy to start.

And finally the "Microsoft Silverlight Analytics Framework" session will be held in partnership with my team member Nuno Godinho and we will approach solutions for analytics scenarios like:

  • in-browser and off-browser
  • online and offline
  • multiple services simultaneously
  • using Expression Blend for a faster instr para uma mais fácil instrumentation
  • A/B testing

Don't know it the sessions will be recorded, however after the event I will post my slides and demos here.

 

10Mar/100

Flash Gaming Summit Videos

[PT]

Decorreu no passado dia 8 de Março em San Francisco o "Flash Gaming Summit", uma conferência dedicada ao desenvolvimento de Jogos com a tecnologia Flash.

O evento foi dividido por duas salas: "Robertson Auditorium" e "Fisher Lunchroom" e a distribuição das sessões foi a seguinte:

  • Robertson Auditorium
    • Opening Keynote - Jameson Hsu (CEO, Moch Media)
    • Panel: 4 Keys to a Sucessfull Social Game
    • Panel: Moneu in Flash - Next Generation Monetization Games
    • Adobe Tools and Services for Flash Games
    • The Mochis Awards Show
    • Panel: Monetizing Your Game Outside of Sponsorship
    • Panel: Everything About Sponsorship & Licensing
    • The Ups and Downs of Getting a Premium Flash Game to Success
  • Fisher Room
    • Canabalt: Behind the Skyline
    • From Bedroom to Medium Sized Office - The Nitrome Story
    • PushButton Engine 101
    • Flash Games Invade the Third Dimension! Papervision3D
    • HaXe for Flash Game Developers
    • Boxhead (unreleased) Deconstruction

Todas estas apresentações foram gravadas e podem ser vistas aqui!!

[EN]

Took place at San Francisco in the last March 8th the "Flash Gaming Summit", an event for Game Development with Flash Platform.

The event was divided into two rooms: "Robertson Auditorium" and "Fisher Lunchroom" and the sessions were sorted this way:

  • Robertson Auditorium
    • Opening Keynote - Jameson Hsu (CEO, Moch Media)
    • Panel: 4 Keys to a Sucessfull Social Game
    • Panel: Moneu in Flash - Next Generation Monetization Games
    • Adobe Tools and Services for Flash Games
    • The Mochis Awards Show
    • Panel: Monetizing Your Game Outside of Sponsorship
    • Panel: Everything About Sponsorship & Licensing
    • The Ups and Downs of Getting a Premium Flash Game to Success
  • Fisher Room
    • Canabalt: Behind the Skyline
    • From Bedroom to Medium Sized Office - The Nitrome Story
    • PushButton Engine 101
    • Flash Games Invade the Third Dimension! Papervision3D
    • HaXe for Flash Game Developers
    • Boxhead (unreleased) Deconstruction

All presentations were recorded and can be watched here!!

24Feb/100

Leveraging Azure with Non-Microsoft Technologies

[PT]

Josh Holmes, UX Architect Evangelist da Microsoft esteve ontem no Campus FCT-UNL (Caparica) a dar uma palestra sobre Windows Azure com PHP, Ruby, Python e MySQL.

Josh Holmes começou com uma introdução ao Cloud Computing e um pequeno comparativo com os tipos de "hosting" mais comuns:

  • Servidores "In House" ou "Hosted"
  1. Todo o IT tem de ser comprado => muito dinheiro => muito tempo
  2. Necessário projectar a capacidade dos servidores para os momentos de maior "pico", mesmo quando esses são casos pontuais => má amortização do equipamento
  • Cloud Computing
  1. Não tem custos iniciais e não necessita de tempo de configuração
  2. (Aqui o Josh deixou uma nota interessante) Cloud Computing não é para substituir os alojamentos "normais", é só para aplicações empresariais.

 

A sessão prosseguiu com os tipos de Cloud Computing que existem:

  • Private Cloud (On-Premise)

Toda a gestão da Cloud fica a cargo do "nós"

  • Infrastructure (IaaS)

Utilização da infraestrutura como um serviço, ou seja, não somos responsáveis por toda a rede mas sim só pelo "nosso pedaço"

  • Platform as a Service (PaaS)

Não queremos saber da Infraestrutura, só estamos interessados em tirar partido das potencialidades da plataforma de serviços. (Windows Azure está nesta tipologia)

"Agora que já sei onde se "encontra" o Windows Azure, quero saber onde estão realmente os DataCenters"

  • USA
  1. Quincy, WA
  2. Chicago, IL
  3. San Antonio, TX
  4. Cambridge, MA
  • Europa
  1. Dublin, Irlanda
  2. Amesterdão, Holanda
  • Ásia

  

A "Nuvem" da Microsoft é o passo seguinte da apresentação:

  • Application Services
  1. Bing
  2. Windows Live
  3. Office Live
  4. Health Vault
  5. Microsoft Advertising
  • Software Services
  1. Office Online
  2. Dynamics CRM Online
  3. Exchange Online
  4. ...
  • Platform Services
  1. Windows Azure
  2. SQL Azure
  3. AppFabric
  4. Live Mesh
  5. ...

E salta um slide com uma mensagem importantissima para quem está a considerar o Cloud Computing:

"Not everything has to or can live in the cloud. Only need the things that benefits on being in the cloud. The core strategy is 'Hybrid', we call that Software+Services"

A virtualização do Windows Azure é apresentada em 4 tipos:

  • Small: (1x1.8GHz - 1.76GB memory)
  • Medium (2x1.8GHz - 3.5GB memory)
  • Large (4x1.8GHz - 8GB memory)
  • XLarge (8x1.8GHz - 16GB memory)

Claro que cada um terá o seu valor específico e todas as "taxas" - pedidos, trafego, etc... Assim é aconselhável se fazerem simulações de ROI aqui: http://AzureROI.CloudApp.net - reparem que já está na Cloud ;)

O Windows Azure divide-se em dois "Roles":

  • Web Role
  1. External Facing
  2. HTTP/HTTPS endpoints
  3. Short lived calls
  4. "Think Web Server"
  • Worker Role
  1. Internal Facing
  2. TCP/HTTP endpoint
  3. Long running processes
  4. "Think Service or Daemon"

 

Ok, já sabemos o que é o Cloud Computing, como é que a Microsoft se posiciona nesta tecnologia, como se processam as coisas dentro do Azure ... é chegada a vez das tecnologias "Non-Microsoft":

  • Running PHP and Ruby on Azure

É possível se ter várias versões de PHP a correr lado a lado, pois basta colocar todos os ficheiros dentro de um package e colocar vários Web Roles (seria um por versão do PHP). Para isto funcionar teremos de colocar o PHP dentro de um WebRole, colocar o Package do PHP Runtime e apontar para o FastCGI.

Em termos de "tools", temos o "Windows Azure for Eclipse" que irá fazer muito do trabalho pesado por nós; irá criar o Web.config e Web.roleConfig; e as implementações e debug será no Dev Fabric. (tools: http://windowsazure4e.org)

No WorkerRole podemos executar EXEs, logo é possível ter JAVA Tomcat no Windows Azure, MySQL, etc ... Para tal bastará arrancar o processo WorkerRole, copiar os EXEs para a pasta e executar o processo. Não se esqueçam de ir monitorizando a saúde do processo...

E se eu quiser utilizar o Cloud Computing como "Storage" ?

O Windows Azure tem vários tipos de "Storage":

  • Blobs -> "storage" de informação não estruturada. Será particionada por vários contentores
  • Queues -> "Buffered delivery data storage"
  • Tables -> informação tabular ou semi-estruturada. As tabelas conterão entidades e as entidades conterão propriedades (linhas x colunas). As tabelas serão armazenadas em partições, e serão replicadas. A utilizar quando não há necessidade de uma BD relacional, pois é altamente escalável.
  • Drives -> vai funcionar como um disco rigido em formato NTFS. Os mapeamentos serão para Blobs (ver acima)

As ferramentas para utilizar "Windows Azure Storage" com PHP poderão ser descarregadas do Codeplex (http://phpazure.codeplex.com)

"Mas eu necessito de uma BaseDados Relacional !! E agora ?"

Para dados relacionais temos o "Windows SQL Azure", que irá permitir dados relacionais "a la SQL Server", RDMS, altamente escalável, "strongly typed", replicado 3x para garantir fiabilidade de dados e com uptime de 99.999%.

Atenção que "SQL Azure" não é uma versão do "SQL Server" na Cloud, há uma série de funcionalidades que não são compatíveis. Para o efeito fica uma lista do que é possível:

  • Tables, Indexes e Views
  • Stored Procedures
  • Triggers
  • Constraints
  • Temp Tables

Para migrar uma BD, aqui está a ferramenta: http://sqlazuremw.codeplex.com

Para o caso de se querer utilizar MySQL, colocar a correr dentro de um WorkerRole. (ver acima, similar ao PHP).

A ZendFramework já tem suporte para Windows Azure e Azure Storage, e brevemente incluirá também AppFabric (Service Bus e Access Control).

Foi uma boa palestra, com informação muitissimo interessante!!!

Obrigado Josh.

[EN]

Josh Holmes, UX Architect Evangelist for Microsoft was yesterday at the FCT-UNL Campus (Caparica) to present us with a talk about Windows Azure with PHP, Ruby, Python and MySQL.

Josh Holmes started with a brief introdution to Cloud Computing and a small "face to face" with other usual "hosting":

  • "In House" or "Hosted" Servers
  1. Must purchase the entire IT => costs money => costs time
  2. Have to figure out all the IT to face major "spikes", even when those are from time to time => wast of capacity
  • Cloud Computing
  1. No initial costs e no config time
  2. (Josh said a nice statement here) Cloud Computing isn't to compete with Shared Hostings, its only for real enterprise applications.

 

The talk continued with the different Cloud Computing types:

  • Private Cloud (On-Premise)

"We" manage everything

  • Infrastructure (IaaS)

Usage of the infrastructure as a Servico, that is, we are not responsible for the entire network but only for our "piece".

  • Platform as a Service (PaaS)

Infrastructure? What infrastructure? We only are responsible to take advantage of the platform as a service. (Windows Azure seats here)

"Now I know where Windows Azure seats, I want to know where are the DataCenters"

  • USA
  1. Quincy, WA
  2. Chicago, IL
  3. San Antonio, TX
  4. Cambridge, MA
  • Europe
  1. Dublin, Ireland
  2. Amesterdam, Netherland
  • Asia

 

Microsoft "Cloud" is the next step on the talk:

  • Application Services
  1. Bing
  2. Windows Live
  3. Office Live
  4. Health Vault
  5. Microsoft Advertising
  • Software Services
  1. Office Online
  2. Dynamics CRM Online
  3. Exchange Online
  4. ...
  • Platform Services
  1. Windows Azure
  2. SQL Azure
  3. AppFabric
  4. Live Mesh
  5. ...

A slide with an importante statement jumps in:

"Not everything has to or can live in the cloud. Only need the things that benefits on being in the cloud. The core strategy is 'Hybrid', we call that Software+Services"

Windows Azure virtualization is presented in 4 different "tastes":

  • Small: (1x1.8GHz - 1.76GB memory)
  • Medium (2x1.8GHz - 3.5GB memory)
  • Large (4x1.8GHz - 8GB memory)
  • XLarge (8x1.8GHz - 16GB memory)

Of course that every single one has is price, therefore is mandatory to do some ROI simulations: http://AzureROI.CloudApp.net - behold, its a Cloud Appl ;)

Windows Azure has two "Roles":

  • Web Role
  1. External Facing
  2. HTTP/HTTPS endpoints
  3. Short lived calls
  4. "Think Web Server"
  • Worker Role
  1. Internal Facing
  2. TCP/HTTP endpoint
  3. Long running processes
  4. "Think Service or Daemon"

 

Ok, Cloud Computing - check; whats Microsoft vision - check; who things work inside Azure - check ... its time for some "Non-Microsoft" Technologias:

  • Running PHP and Ruby on Azure

Its possible to have different PHP versions running side-by-side, just needs to have the right packages inside different WebRoles. So, WebRole running, PHP Runtime Package inside of it and pointing to FastCGI.

We have "Windows Azure for Eclipse" that will do all the major heavy leafting; generate Web.config and Web.roleConfig; and all implementations and debugging will be at Dev Fabric. (tools: http://windowsazure4e.org)

Inside WorkerRole we may run EXEs file, therefore its possible to have JAVA Tomcat or MySQL on Windows Azure ... Don't forget to monitorize your process health...

And if I want to use Cloud Computing as "Storage" ?

Windows  Azure has different kinds of "Storage":

  • Blobs -> "storage" for non-structured data. Will be partitionated by Containers
  • Queues -> "Buffered delivery data storage"
  • Tables -> Tabular or semi-structured data. Tables contains Entities and Entities contains Properties (rows x columns). Tables will be stored in partitions e will be replicated.It's massively scalable. Use it when there's no need for a Relational DB.
  • Drives -> will work as a NTFS hard-drive. It will map back to Blobs (see above)

The necessary tools for "Windows Azure Storage" with PHP may be download at Codeplex (http://phpazure.codeplex.com)

"But I need a Relational BD !! Now what ?"

For relational data we have "Windows SQL Azure", that will work similarly to a "a la SQL Server" DB; RDMS, massively scalable, "strongly typed", replicated 3x for high reliability and with an uptime of 99.999%.

Note that "SQL Azure" isn't an "SQL Server" version for Cloud; there are a bunch of features that will not work. Here it goes a shortlist of the possible features:

  • Tables, Indexes and Views
  • Stored Procedures
  • Triggers
  • Constraints
  • Temp Tables

DB migration, use this tool: http://sqlazuremw.codeplex.com

For MySQL, will work inside a WorkerRole. (see above, similar to PHP).

ZendFramework has now support for Windows Azure and Azure Storage, and soon also have AppFabric (Service Bus and Access Control).

It was a nice talk, with a lot of valuable information!!!

Thanks Josh.

8Feb/100

Microsoft WebDay@Porto – o desfecho / Microsoft WebDay@Oporto – the aftermath

[PT]

No passado dia 2 de Fevereiro realizou-se no Porto o "WebDay", um dia dedicado ao Universo WEB sob o ponto de vista da Microsoft.

O evento contou com mais de 400 pessoas, e foi direccionado para todos os profissionais da área web onde se pode ver as tendências e as soluções que a Microsoft propõe tanto em tecnologias, plataformas e ferramentas.

Houve uma grande participação das comunidades e as sessões foram todas muito participativas, sendo o Q&A um momento obrigatório e que algumas vezes se prolongou para além do horário e da própria sala. Arrisco-me mesmo a deixar uma confidência pessoal ao assumir que o pessoal nortenho é mais colaborativo e participativo neste tipo de eventos.

O dia foi preenchido com sessões que abordaram Silverlight, Sharepoint 2010, Expression Blend, ASP.NET e Windows Azure.

O único senão foi o facto de ser um evento de um dia, pois certamente que haveriam mais temas para se apresentar, se debater e se partilhar experiências. Esperemos que a Microsoft faça mais eventos deste tipo no Norte do nosso país.

Podem encontrar os PPTx das apresentações no site do WebDay.

Algumas fotos do evento no DeepZoomPix.

[EN]

In the past 2 February was held in Porto, the "WebDay" a day dedicated to the WEB universe from the point of view of Microsoft.

The event featured more than 400 people and was aimed at all professionals in the web where you can see trends and solutions that Microsoft offers both technologies, platforms and tools.

There was a large participation of communities and the sessions were all very active, and the Q & A were mandatory even sometimes extended beyond the time and the room itself. I dare even to leave a personal confidence to assume that the northern people is more collaborative and participative in this type of events.

The day was filled with sessions that addressed Silverlight, Sharepoint 2010, Expression Blend, ASP.NET and Windows Azure.

The only drawback was the fact it was a one-day event, because surely there would be more issues to present, to discuss and to share experiences. Let hope that Microsoft managed more such events in the North of our country.

The presentations PPTx can be found on the WebDay site.

Some photos at DeepZoomPix.

5Feb/100

MIX10 & Windows Phone

[PT]

Joe Belfiore, Vice-Presidente do "Windows Mobile Management" irá estar presente na keynote do MIX10.

Foi também anunciado a inclusão de 11 novas sessões sobre Windows Phones, sendo no entanto os temas das sessões uma incógnita.
Sendo o MIX um evento primariamente a focar o Mundo WEB, esta notícia vem dar peso ao que se tem vindo a falar no Twitter - "que o Silverlight irá estar no Windows Mobile 7".

Falta sensivelmente 1 mês para o MIX10, mas certamente que haverá mais novidades até lá.

[EN]

Joe Belfiore, Vice President for Windows Mobile Management will present at MIX10 keynote.

With that, also 11 new Mobile Phone sessions were announced, however the sessions title is still a mistery.
Since the MIX event primarily focus on the Web World, this news is giving weight to what has been talking on Twitter - "that Silverlight will be Windows Mobile 7."

With less then a  month for MIX10, certainly there will be more news soon.

31Jan/100

Microsoft TechDays 2010 / Microsoft TechDays 2010 – Portugal

[PT]

Na passada sexta-feira houve um "leak" de informação de uma fonte não identificada da Microsoft ... aparentemente já é possível se registarem para o evento, e assim aproveitar o "Early Bird" !!

Também já se encontra no site uma pré-lista de sessões e de oradores ... qualquer coisa me diz que vai ser um evento em grande.

Microsoft TechDays 2010 , registem-se já !

[EN]

Last Friday, an unkown-source from Microsoft Portugal "leaked" some info concerning the TechDays event...it seems that the registration is "un-officially" open with a super "Early Bird" !!

A first list of both speakers and sessions is also available ... it will be an hell of an event.

Microsoft TechDays 2010 , registrations OPEN !

28Jan/100

Evento Microsoft Azure Airlift / Microsoft Azure Airlift Event

[PT]

Decorreu ontem o evento "Microsoft Azure Airlift" nas instalações da Microsoft Portugal.

O evento foi dividido em três partes bem definidas:

- Padrões e desafios do Cloud Computing

- Introdução ao Windows Azure

- "Deployments" no Windows Azure e no SQL Azure

As duas primeiras partes estiveram ao cargo do Luis Martins, Architect Advisor da Microsoft Portugal, em que demonstrou os paradigmas da arquitectura "em Cloud". Foram apresentados cinco padrões, mas foi mencionada a existência de mais padrões. De momento estou a tentar obter mais informação sobre o tema (para um futuro artigo). A segunda parte foi uma apresentação da solução de Cloud Computing da Microsoft, e fiquei fascinado com a dimensão dos DataCenters: cada DataCenter tem a dimensão de um campo de futebol, preenchido com contentores; cada contentor tem cerca de dois mil servidores...as fotografias foram bem esclarecedores da dimensão. Aqui podem ver como é o interior de um desses contentores: PDC Video.

A última parte ficou ao cargo do Nuno Godinho, External Consultant da ITech4All, em que demonstrou como desenvolver aplicações a pensar em Windows Azure, bem como aplicações com SQL Server serem "transpostas" para SQL Azure. Os exemplos foram simples, com algum código a mistura, mas é de frisar que o deployment das soluções é "easy as it can get" ... fiquei espantado !!

Em jeito de resumo posso mencionar que fiquei curioso por saber mais sobre Windows Azure e os paradigmas de arquitectura para Cloud Computing ... estou ansioso por começar a "bater" código e efectuar uns testes!!

[EN]

The "Microsoft Azure Airlift" event took place yesterday at Microsoft Portugal.

The event was split in three specific sessions:

- Patterns and Challenges on Cloud Computing

- Introduction to Windows Azure

- "Deployments" on Windows Azure and SQL Azure

Both first parts were hosted by Luis Martins, Architect Advisor for Microsoft Portugal, where was presented the new architectural challenges about "the Cloud". He presented five patterns, but was stated the existence of much more. I'm trying to collect more information about those (for an upcoming post). The second part was about the Microsoft solution for Cloud Computing, and I was fascinated about the size of those DataCenters: each DataCenter was the size of a football (soccer)  field, full of containers; each one has approximatelly two thousand servers. Here it is a video of one of those containers: PDC Video.

The last session was held by Nuno Godinho, External Consultant for ITech4All, and he presented how to develop and deploy solutions in Windows Azure, as well as SQL Server databases into SQL Azure. The examples were simple, straight forward, with some live coding but I need to say this ... it can't be more easy ... I'm definitely becoming a fan of Cloud Computing !!

21Jan/103

Microsoft Azure Partner Airlift

[PT]

Descrição do evento:

"O cloud computing, termo que tem cada vez mais evoluído de conceito para realidade de negócio, apresenta-se como um modelo de solução poderoso, escalável e flexível, permanentemente ao dispor dos seus clientes. Para si, enquanto Parceiro, é fundamental que as suas soluções assentem numa plataforma que permita a integração e escalabilidade que necessita e libertando-o de preocupações com a gestão da infra-estrutura onde assentam, mas é igualmente importante que estas soluções possam ser desenvolvidas em ambientes e ferramentas familiares para toda a sua organização." [source: LinkedIn Events Page]

O orador será o Luis Martins - Architect Advisor da Microsoft e o público-alvo centra-se nos "parceiros de todos os níveis de experiência Microsoft e de ambos os perfis comercial ou técnico, que tenham interesse na disponibilização ou desenvolvimento de soluções/serviços no modelo de Software+Serviços ou Software-as-a-service."

Agenda:

  • 09:15 - 09:30: Recepção
  • 09h30 - 10h45: Padrões e Desafios de Cloud Computing; Introdução à plataforma Azure
  • 10h45 - 11h00: Coffee-break
  • 11h00 - 12h15: A plataforma Azure: visão detalhada
  • 12h15 - 13h00: O Windows Azure em acção
  • 13h00: Encerramento

É de salientar o nível do evento: 100 (iniciante), logo será uma excelente oportunidade para conhecer e aprender um pouco mais do que é a Plataforma AZURE.

[EN]

Next wednesday will take place at Microsoft Portugal an event about Cloud Computing with Azure.

Event Description:

"Cloud Computing, a word that's been evolving through concept to a real business solution, presents it self has a powerfull,scalable, flexible and always available solution to it's customers. For you, as a partner, it is essential that your solutions are based on a platfomr that enables integration and scalability that you need and freeing you from concerns about the infrastructure management on which it are based, but it is also important that these solutions may be developed in environments and tools that your organization are familiar with." [source: LinkedIn Events Page]

The speaker will be Luis Martins - Architect Advisor da Microsoft and the target focus on "partners of all levels of Microsoft expertise and from both commercial or technical backgrounds, that are interested in developing or selling this kind of Software+Services or Software-as-a-Service model."

Agenda:

  • 09:15 - 09:30: Welcome
  • 09h30 - 10h45: Patterns and Challenges of Cloud Computing; An introduction to Azure platform
  • 10h45 - 11h00: Coffee-break
  • 11h00 - 12h15: Azure Platform: a deeper insight
  • 12h15 - 13h00: Windows Azure in action
  • 13h00: Closing

Is nice to remark the event level: 100 (iniciate), therefore this will be an excelent opportunity to meet and learn a little more about Azure Platform.Vai se realizar na próxima quarta-feira, um evento sobre Cloud Computing com Azure...terá lugar no auditório da Microsoft no TagusPark.