Qua, 08 de Setembro de 2010

Saiba o que significa a expressão do momento em tecnologia e entenda os benefícios que ela trará a fornecedores e usuários.

Alguns chamam de Cloud Computing (Computação na Nuvem), uns de Virtualização, outros de SaaS (Software como um serviço), bem, existem diversas formas de como chamam o conceito de Virtualização e definem as suas aplicações, mas na verdade tudo parte do mesmo princípio.

Cloud computing é a expressão do momento em tecnologia. Os grandes players como Microsoft, Yahoo, IBM, Amazon entre outros já anunciaram planos e investimentos na área e o Gartner acaba de liberar um relatório que aponta o cloud computing como uma das três mais importantes tendências emergentes nos próximo três a cinco anos.

Mas se há um consenso de que agora é a hora do cloud computing, bem, isso não é possível afirmar, primeiro porque ainda não há uma idéia comum definida sobre o que realmente é computação em nuvem. Na verdade ainda há literalmente uma nuvem sobre o conceito porque muitas empresas e desenvolvedores ainda dão opiniões bem distintas sobre o tema.

Bem, na verdade o cloud computing pode ser definido genericamente como um modelo na qual a computação (processamento, armazenamento e softwares) está em algum lugar na rede e é acessada remotamente independente da plataforma utilizada, via internet.

O que realmente significa é que as empresas entregarão funções de TI como serviços aos seus clientes e eles não precisarão saber como isso funciona, simplesmente usarão e a medida em que exigirem mais recursos eles contratarão estes recursos de acordo com suas necessidades.

Exemplificando, um dos modelos que podemos citar como cloud computing de forma abstrata é o e-mail. No modelo tradicional de computação, suas mensagens ficam salvas no software de e-mail, dentro do seu computador.

Em contrapartida, com os e-mails baseados em web (Hotmail, Gmail, Yahoo Mail ou qualquer outro da sua preferência), você pode acessar sua conta com todas as suas mensagens – armazenada em um servidor alheio -, a qualquer hora, de qualquer lugar, por meio da internet. Aplicativos de edição de texto, planilhas, apresentação, edição de imagem e até softwares de gestão de relacionamento com clientes (como o CRM online da Salesforce.com) também estão migrando para este modelo.

E não são apenas os softwares que podem ser acessados remotamente pela nuvem. Os recursos de hardware – como processamento e armazenamento também (hoje já é comum guardarmos arquivos, e-mails, fotos, vídeos em servidores de terceiros e acessá-los remotamente pela web).

Veja abaixo um diagrama de como funciona o Cloud Computing:

O Conceito do Cloud Computing

As vantagens do modelo

Todas estas tecnologias que vêm emergindo e amadurecendo foram empacotadas no conceito que levou o nome de cloud computing. O entusiasmo com o cloud computing e os esforços das companhias se devem às inúmeras vantagens que ele pode oferecer tanto aos fornecedores de tecnologia quanto aos usuários.

Em primeiro lugar, este é um modelo que prevê um melhor aproveitamento dos investimentos em hardware. Um dos pilares do cloud computing é a consolidação dos recursos de hardware para que eles possam ser aproveitados ao máximo e gerenciados de forma inteligente, proporcionando economia de custos.

Se antes, para atualizar um software o administrador tinha que reinstalar todo o produto na máquina de cada usuário, neste modelo os aplicativos podem ser constantemente aperfeiçoados sem impactos para os usuários, uma vez que estão hospedadas em um único ponto central.

As desvantagens do modelo

Para que o usuário confie grande parte de seus sistemas e arquivos a um terceiro, ele terá de garantir que os dados estejam devidamente protegidos e 100% disponíveis. Isso é ainda mais crítico quando se trata de informações empresariais altamente sensíveis, como processamento de dados financeiros. A forma como esses serviços serão cobrados também é outra questão importante.

O Cloud Computing no Brasil

No Brasil, há ainda um grande desconhecimento do modelo de cloud computing tanto por empresas como por profissionais de TI. Como ainda não há muitos produtos oferecidos, o assunto ainda é desconhecido, somente se sabe que existe um conceito, mas ainda não se sabe ao certo para que serve e como utilizá-lo.

O que se vê por aqui, são algumas empresas de Data Center vendendo o Cloud Computing como se fosse a solução para todos os seus problemas, com personalidades que provavelmente não sabem sequer o que significa o conceito e numa forma de serviço em que acham que podem subtituir servidores dedicados com razoável capacidade de processamento.

O que se acompanhará depois, são empresas que migraram suas aplicações web para estruturas muito inferiores, devido ao preço tentador que o Cloud Computing oferece e depois quando estas aplicações começarem a ter grandes problemas de performance e disponibilidade, podem acabar colocando o conceito em uma situação delicada e prejudicar o próprio fornecedor do serviço.

Ter, 24 de Agosto de 2010 13:33

HTML5: por que você pode usá-la já

Escrito por Marcelo Dias

Alguns detalhes ainda serão decididos, mas muitos recursos - e os browsers que os usam - estão aí.

Muito tem sido divulgado sobre a HTML5 e sobre as especificações da nova versão da linguagem padrão da web. Agora chega a boa notícia: você pode começar a usar a HTML5 já, a partir de agora. E não é pouca coisa que você pode fazer.

Há algumas informações que você precisa definir antes de sair alucinadamente escrevendo aquela página ultralegal.

Para quem você escreve?
Se a maioria da audiência do site para o qual você escreve ainda usa o IE6, pode ir tirando o bloco de notas da área de trabalho. Mas, caso quem acessa o site use predominantemente produtos da linha iPad e iPhone, é chegada a sua hora de mandar ver na HTML5. Páginas de audiência mista – como a maioria delas é – devem seguir linhas de aproximação menos radicais à nova linguagem.

Já, agora, Now!
Apesar de as especificações da HTML5 ainda estarem no forno, em desenvolvimento por comitês na busca por padrões, boa parte do suporte à versão 5 da HyperText Markup Language já é nativa em navegadores como Safari, Chrome, Firefox e Opera. 

Assim que for lançada, a versão 9 do IE deverá apresentar suporte robusto ao HTML5. Uma excelente fonte de informações sobre como e quando usar os recursos da HTML5 podem ser encontrados em http://caniuse.com. O endereço fornece detalhes minuciosos sobre o uso e o suporte de vários browsers.

Browser Securitiy Deep Dive
No endereço http://html5test.com, programadores interessados podem verificar como anda a integração entre os navegadores mais usados e a HTML5. Para ver que tipo de suporte é oferecido, o internauta deve acessar esse site usando sempre o browser que pretende colocar à prova. Para cada navegador o site emite um score, uma nota. Em 12/6, os scores eram:

* Apple Safari 5.0: 208
* Google Chrome 5.03: 197
* Microsoft IE7: 12
* Microsoft IE8: 27
* Mozilla Firefox 3.66: 139
* Opera 10.6: 159

Existe um conjunto essencial de regras HTML5 suportado por todos os browsers que não pertencem à família IE. Isso abre a possibilidade de serem criados modelos HTML5, disponibilizados para a maioria dos internautas.

Começando pelo começo
Quem quiser já pode incluir a chave de identificação Doctype, sem medo. Se quiser, pode até substituir essa parte do cabeçalho em todas as páginas do site. Pode aparecer dessa maneira:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html xmlns="http://www.w3.org/1999/xhtml">

O que pode ser transformado em:

<!DOCTYPE html>
<html>

Bem mais simples e direto, não? Se os navagdores já renderizavam as páginas seguindo um padrão antes, irão continuar a fazê-lo.

Multimídia
A grande maioria do que foi divulgado sobre as tags de vídeo da HTML5 tratava da disputa em torno dos formatos. Existem quatro formatos na arena, em processo de briga: Flash, H.264, Ogg e WebM – e cada um destes espera ser “O” cara do futuro, sendo que nenhum deles é aceito por toda a linha de browsers da atualidade. Do jeito que a banda toca, as empresas fabricantes de sistemas para navegar na web não vão chegar a um denominador comum tão cedo.

Isto posto, poder-se-ia partir do princípio que a tag de vídeo ainda não está pronta para estrear. Antes de fechar esse artigo e xingar o autor, saiba que as mentes brilhantes por trás da HTML5, atentas para esse fato, criaram um formato de vídeo independente. 

Tem mais. Como os vídeos podem conter diversas tags de origens diferentes, a solução da equipe é bastante usável. Caso o navegador não seja capaz de interpretar a primeira, ele tenta outra e outra e mais esta e aquela e por aí vai.

O código necessário para tal pode ser encontrado no Video for Everybody, um projeto open source voltado ao apoio da aplicação de vídeos na web sem usar Java ou detecção de browsers.

Semanticamente falando
Uma das grandes revoluções trazidas pela agá-tê-eme-éle-cinco é o uso semântico de tags. Provavelmente o site estará cheio de tags do tipo <div id="header"> e de <span class="nav">. A HTML5 entende que, se todo o site apresenta esses elementos, o mais racional seria usar uma linguagem mais apropriada, como, digamos <header> e , bem, <nav>. Logicamente nesses elementos seria usado o CSS.

Ok, você vai rebater dizendo que: jamais um browser da linha IE veio com suporte a esses elementos e isso não quer dizer pouca coisa. Mas isso está longe de significar que fomos premiados com o azar. Graças ao esforço e empenho ilimitados do pessoal desenvolvedor, existe uma saída para esse caso. Tudo que o programador tem a fazer é inlcuir esse snippet no cabeçalho de cada uma das páginas:

<!--[if lt IE 9]>
<script src="http://html5shiv.googlecode.com/svn/trunk/html5.js">
</script>
<![endif]-->

O site HTML5 Shiv é outro projeto open source oriundo de uma simples descoberta: ao criar um novo elemento DOM no IE, é possível atribuir qualquer elemento com esse nome. Quer dizer, contanto que você crie novos elementos DOM iguais a esse:  document.createElement("foo");. Agora é possível adicionar a quantidade tags <foo> às páginas que o IE irá aplicar o estilo nelas. 

No site indicado está exposta uma lista de todas as tags HTML5 das quais o IE ainda não está ciente e, por isso, as cria uma a uma. Com esse recurso o programador tem a oportunidade de usar e de estilizar de acordo com o foco da página. Há outras tags vindo por aí. Entre estas: article, section, header, footer e nav.

Smart forms
Outro recurso do HTML5 são elementos “inteligentes” para formulários. Cansado de escrever os scripts de sempre que verificam (o tempo todo) se o internauta inseriu um endereço de e-mail (ou um telefone, ou uma URL, ou outro dado) corretamente? Saiba que você não está sozinho. Está mais do que na hora de o browser interpretar corretamente a maioria de entradas padrão, certo? Certíssimo.

Olha a sintaxe aí, gente!
<input type="email">
<input type="url">
<input type="number">
<input type="tel">

Mas, e os browsers mais antigos? A notícia boa é que quando essa turma encontra atributos com valores que não sabe interpretar eles entendem tudo como se fosse texto padrão – exatamente o que se podia querer em um caso desses.

Navegadores com suporte ao tipo 5 de HTML conseguem validar cada um desses campos em níveis variados. Mas vale a pena manter os scripts de validação ali, na reserva, até o IE9 ser onipresente.

Agora você possivelmente está se perguntando: por que mudar, se ainda existe a necessidade desses scripts? Se alguma vez já tentou preencher um formulário desses usando um iPhone saberá a resposta. O teclado muda de acordo com cada tipo de entrada: para campos que pedem a inclusão de um e-mail, é inserida uma @ no início da célula, telefones transformam o teclado em numérico automaticamente, e por aí vai. Para ter essa funcionalidade nos campos da página, basta alterar o tipo de atributo nas tags de inserção.

E, para os realmente espertos, eis que surge um novo atributo: o placeholder. O valor dele é simplesmente o texto que você vê normalmente em formulários da web. A diferença agora é que o browser vai cuidar disso para você:

<input type="email" placeholder="Seu endereço de e-mail">

O campo simplesmente apaga ao posicionar o cursor na janela em quastão, voltando a exibir o texto original caso o campo seja abandonado sem qualquer dado ser informado.

Para usar já
Nem toda a HTML5 está pronta para subir ao placo. Isso se dá em função de uma variedade de motivos (nem todos ligados à questão do IE). Apesar de os browsers estarem se preparando para a nova linguagem, existem alguns recursos prontos para aplicação.

Fancy Fonts
A certa altura, todo programador desejou que o internauta visse exatamente as fontes escolhidas pelo profissional. Agora, com a propriedade CSS3 @font-face, o autor das páginas vai realizar o sonho e forçar os visitantes a baixarem as fontes escolhidas. Os únicos dissidentes dessa função foram os browsers Firefox (até 3.5) e o Mobile Safari (até chegada do iOS4). Caso os visitantes do site ainda sejam predominantemente usuários desses programas, pode ser que você postergue a decisão de usar esse recurso mais um tempo.

Mas não existe motivo para você exigir que cada renderizador entenda o site da mesma forma idêntica. Se quiser oferecer fontes customizadas para cada navegador, com retaguardas para as exceções de suporte ao recurso, opte pelo @font-face Generator da Squirrel.

Curvas e sombras
Outras melhorias que vão agradar aos designers são o suporte a sombras de texto, sombras de caixas e cantos arredondados. Se você está cansado de ver seus sites não serem renderizados com a mesma forma precisa em todos os navegadores, pode arregaçar as mangas e mandar ver. Veja alguns exemplos com auxílio do CSS3 Generator:

Rounded borders (Firefox 3+, Safari 3.1+, Opera 10.5+, Chrome 4+, IE 9+):

-webkit-border-radius: 10px;
-moz-border-radius: 10px;
border-radius: 10px;

Text shadows (Firefox 3.5+, Safari 1.1+, Opera 9.6+, Chrome 4+):

text-shadow: 5px 5px 3px #CCC;

Box shadows (Firefox 3.5+, Safari 3+, Opera 10.5+, Chrome 4+):

-webkit-box-shadow: 10px 10px 5px #666;
-moz-box-shadow: 10px 10px 5px #666;
box-shadow: 10px 10px 5px #666;

Para usar um dia desses
Nessa categoria entram elementos e recursos que muitos webdesigners e desenvolvedores pediram por muito tempo. Infelizmente pode levar mais algum tempo até que o mundo como o conhecemos dê suporte irrestrito a eles.

Formulários brilhantes
Há pouco mencionamos os formulários “inteligentes” – maneira de transformar os novos campos em algo realmente maravilhoso – quando forem suportados.

Uma barra de rolagem horizontal que permite ao usuário escolher um número:

input type="range" min="0" max="100" step="2" value="50">

Um recurso que permite escolher cores

input type="color">

Um campo para inserção de datas (com as possíveis variáveis: month, week, time, datetime e datetime-local)

<input type="date">

Se precisar de algum valor que não esteja especificado acima, poderá criar o próprio formato usando o padrão RegExp. Veja como ficaria para cartões de crédito:

<input type="text" pattern="[0-9]{13,16}">

Finalmente, uma maneira de informar ao browser que determinado campo demanda a inserção de um valor:

<input type="text" required>

Nenhuma dessas tags é suportada por múltiplos navegadores, ainda.

Para usar um dia desses
Nessa categoria entram elementos e recursos que muitos webdesigners e desenvolvedores pediram por muito tempo. Infelizmente pode levar mais algum tempo até que o mundo como o conhecemos dê suporte irrestrito a eles.

Formulários brilhantes
Há pouco mencionamos os formulários “inteligentes” – maneira de transformar os novos campos em algo realmente maravilhoso – quando forem suportados.

Uma barra de rolagem horizontal que permite ao usuário escolher um número:

input type="range" min="0" max="100" step="2" value="50">

Um recurso que permite escolher cores

input type="color">

Um campo para inserção de datas (com as possíveis variáveis: month, week, time, datetime e datetime-local)

<input type="date">

Se precisar de algum valor que não esteja especificado acima, poderá criar o próprio formato usando o padrão RegExp. Veja como ficaria para cartões de crédito:

<input type="text" pattern="[0-9]{13,16}">

Finalmente, uma maneira de informar ao browser que determinado campo demanda a inserção de um valor:

<input type="text" required>

Nenhuma dessas tags é suportada por múltiplos navegadores, ainda.

Seja qual for o caso, a saída é usar aplicativos web com base no contingente de dados armazenado localmente e sincronizar com os arquivos na web quando o trabalho estiver pronto.

Atualmente, os browsers com suporte à navegação offline em HTML5 são os programas Firefox 3.5 e posteriores, Safari Mobile 3.1 e sucessores, Safari 4 e filhos e o Chrome a partir da versão 4.

Tomando o atalho
Se a sua paciência for pequena demais para esperar que o IE morra de velhice, existe uma infinidade de jeitos de seguir adiante – mas, novamente, adotar ou não esses recursos dependerá do perfil de visitantes do seu site. 

Por exemplo, o plugin Chrome Frame permite adicionar uma instância do browser da Google à sessão do IE. Se você souber direitinho que muitos dos visitantes da sua página têm instalado esse plugin, poderá forçar o uso do recurso adicionando a seguinte informação ao cabeçalho da página:

<meta http-equiv="X-UA-Compatible" content="chrome=1">

Junte isso a um pouco de JavaScript (fornecido pela Google) e pronto: quem não tiver o GFC instalado será redirecionado para a versão simples, aquela suportada pelo IE.

Todos os elementos exibidos nesse artigo são apenas alguns dos atualmente inlcuidos como parte da HTML5 e do CSS3. Se você estiver pensando em algum recurso que tenha começado a usar faz pouco tempo, provavelmente existirá um projeto open source preocupado em fazer com que funcione em navegadores menos capazes.

Não se deixe levar pelas reportagens fantásticas que anunciam o advento da HTML5 apenas para 2020, nem por aqueles que atribuem a ela o nome de matadora do Flash. O fato é que a versão 5 é a substituta mais que necessária à ultrapassada HTML4 – e você pode passar a usa-la já.

Brado! Networks