Web 2.0

Novembro 24th, 2007

Nos últimos tempos temos ouvido falar sobre web 2.0, afinal, o que é web 2.0?

Por muito tempo, ouvia falar sobre web 2.0. Ao pesquisar encontrava várias controvérsias sobre o que é a web 2.0, blogs e mais blogs falando sobre o assunto, mas cada um levando sua opinião individual, sem conceituar corretamente a web 2.0, em determinado blog, que me falha a memória agora, expõe que a web 2.0 só existirá quando os sites estiverem construídos sobre webstandards. É comentário válido, porém os padrões web faz parte da tecnologia por trás da web 2.0, essa que por sua vez pode existir sem o uso das webstandards.

Li artigos de revistas que falavam sobre o assunto, falavam que a web 2.0 era uma nova era da internet, onde as pessoas poderiam interagir umas com as outras no ambiente virtual, e que o “cara” que começou essa nova tecnologia é o Google.

Essas matérias que li eram muito interessantes, no entanto, ainda estava em dúvida. Pensei: “Já li muito sobre web 2.0, sei o que é, mas se alguém me perguntar o que é web 2.0?”.
Isso mesmo, eu sabia o que era, mas não conseguiria que alguém entendesse o que seria a web 2.0. Eu tinha que saber o que é a web 2.0, o conceito de web 2.0.

Então dia 15 de outubro de 2007, assistindo ao Jornal Hoje da Rede Globo, em uma matéria sobre vagas para profissionais de TI. Um profissional de Recife, Mozart Araújo, especializado em criação de aplicativos para dispositivos móveis, falou sobre como era promissor a área em que trabalhava e enfatizou também a web 2.0, quando disse o conceito de web 2.0: “…web 2.0, onde são criadas aplicações altamente complexas para ser rodadas dentro do browser”.

Era isso que eu precisava! O conceito de web 2.0:

Web 2.0 são aplicações complexas rodando em um browser (navegador)

Agora que eu consegui conceituar Web 2.0, podemos falar das tecnologias que existem por trás dela para que seja possível o seu desenvolvimento.

As tecnologias usadas na web 2.0 são: AJAX, WebStandads, JavaScript, Linguagem de servidor.

AJAX

Considero o principal elemento da Web 2.0. Lembrando que não é uma tecnologia, o AJAX significa Assyncronous JavaScript And XML. Ou seja é o uso de JavaScript para fazer requisições assíncronas ao servidor sem que seja necessário recarregar a página, ele traz a página XML e manipula com DOM (Document Object Model - É a hierarquia de elementos da linguagem html que pode ser controlada por linguagens de script do lado cliente). Geralmente faz a requisição de uma página com código de servidor, que ao receber as informações enviadas via JavaScript, as processa e retorna o resultado para o objeto AJAX. Por esse motivo dá a idéia de uma aplicação desktop normal, pois não é necessário que a página seja carregada novamente.

WebStandards

Já publiquei um artigo falando sobre webstandards, que tem o principal objetivo de manter um padrão no desenvolvimento de páginas para a internet, no que diz respeito a linguagem HTML. Os principais objetivos e vantagens são:

 

  • Separação de código de marcação e estilização, através das folhas de estilo CSS
  • Desepenho melhor, menos linhas de código
  • Código mais limpo, e melhor visualização do código, possibilitando uma manutenção menos trabalhosa por outros profissionais
  • Acessibilidade, prover acesso à deficientes visuais, desenvolvendo dentro das regras da W3C, para que essas pessoas possam acessar a internet através de leitores de tela
  • O controle dos objetos pelo DOM através de linguagens script client-side, se torna mais eficiente, eliminando possíveis erros

As webstandards são muito importantes, e fazem parte da nova tecnologia de contrução de páginas na web 2.0, porém como disse anteriormente, não são um elemento fundamental para o funcionamento da nova tecnologia web.

JavaScript

Já foi citado nos outros dois tópicos, pois é muito importante. Existem outras linguagens de script client-side, como VBScript, porém JavaScript é muito mais poderoso (acredito que também pelo motivo de a Web 2.0 ter nascido de um ambiente mais voltado para o Software Livre, e o VBScript sendo da Microsoft não passou nem pela cabeça dos desenvolvedores) e possui uma boa interação com o DOM. Com o JavaScript é possível fazer muitas coisas, que não são possíveis fazer com a linguagem no servidor, no caso em que seja necessário que o código rode no cliente. Um exemplo interessante seria o relógio em tempo real, você pode requisitar a hora atual no servidor que está hospedado o site, com uma linguagem server-side, e o JavaScript faz a atualização de segundo em segundo, para que o relógio fique sempre correto. Outra aplicação interessante com o uso de JavaScript, você pode ver no Google, na iGoogle (http://www.google.com.br/ig?hl=pt-BR), que é a página inicial personalizada do Google, lá você pode mecher com pequenas janelas que são colocadas escolhidas pelo usuário. Acesse e veja você mesmo!

Linguagem de servidor

Bom, sem uma linguagem rodando no servidor seria praticamente impossível fazer algo interessante. Dentre as mais usadas estão:

ASP: Active Server Pages - Páginas ativas de servidor, não é uma linguagem, é um ambiente para execução de scripts, VBScript (padrão), JScript, ou JavaScript.

 

ColdFusion: É uma linguagem de servidor criada pela Macromedia, usam-se tags como no html para programar, não vou entrar em maiores detalhes, pois não conheço muito bem a linguagem.

PHP: Muito utilizada e difundida, é uma das melhores opções tanto para profissionais quanto para iniciantes no mundo web. Várias aplicações da web 2.0 são feitas com PHP, por exemplo o WordPress, PHPBB e várias outras. É uma linguagem simples e ao mesmo tempo muito poderosa, tem características de programação orientada a objetos e pode-se encontrar muitas ferramentas e suporte em todo o mundo, além de contar com um manual de referência online no site do projeto: http://www.php.net/manual.

…Continua

Quem quiser ler a matéria referida, do Jornal Hoje, acesse o endereço: http://jornalhoje.globo.com/JHoje/0,19125,VJS0-3076-20071015-305991,00.html

Chaves GPG, utilização multiplataforma

Agosto 12th, 2007

Nos últimos tempos tenho procurado me integrar mais ao projeto Software Livre, foi quando navegando pela internet, encontrei um Encontro de Software Livre que iria ocorrer em Brasília - DF, onde moro. Decidi comparecer ao encontro, gostei muito, ótimos palestrantes, muito bom realmente. Uma das coisas que me chamaram a atenção foi o assunto GnuPG.

O que é o GnuPG?

É um sistema de criptografia assimétrica derivado do PGP (Pretty Good Privacy).

Quem quiser uma explicação mais detalhada, acesse http://www.eriberto.pro.br/wiki/index.php?title=Como_preparar-se_para_uma_festa_de_assinatura_de_chaves_GPG.

O que pretendo abordar nesse post?

Não quero entrar em detalhes teóricos sobre o GPG, isso você encontrará com pouca dificuldade na internet, use o seu buscador favorito e vá à caça.

Acontece que depois dessa palestra tive dificuldades para criar a minha chave e usá-la tanto no windows e no linux, mas depois de quebrar a cabeça um pouco eu consegui. Não encontrei nenhum tutorial na internet falando sobre isso detalhadamente, então é essa a abordagem que farei nessa sessão, não escreverei tudo agora, isso é só o início, dividirei em mais duas partes, Windows e Linux.

No Linux muita gente já sabe como instalar, quem não souber, essa é a linha que instala o gpg na máquina com distribuições Debian e baseadas:

apt-get install gnupg (Em distribuições como o Kurumin e o Ubuntu tem que instalar como root, então use o sudo)

Atenção: Se você criar a chave através do Kurumin ou Ubuntu rodando em CD, será necessário salvar o arquivo da chave em algum lugar, como em um cd ou pendrive, se criar através de um computador público, você pode criptografar e enviar por e-mail.

No Windows basta instalar um programa (gpg4win), disponível em http://www.gpg4win.org/. Esse programa pode ser usado para criar chaves, criptografar arquivos, e todas as outras funcionalidades do gpg.

Ok, essa foi a introdução da série GPG Multiplataforma, nas próximas partes abordarei em detalhes o uso da gpg no windows e linux, para ser usada no ThunderBird, Outlook, e também em webmails, como o G-mail, e também para criptografar arquivos e fazer algumas brincadeirinhas.

Até mais!

Pirataria Prejudica Microsoft?

Agosto 12th, 2007

Irônicamente, as instituições que mais lutam contra a pirataria são as mais beneficiadas por ela. O maior exemplo é a Microsoft.
Se não existisse pirataria, provavelmente o Windows não durava muito tempo. Porque?
Porque, no geral, as pessoas não comprariam o Windows sabendo que existe um Sistema Operacional melhor que ele e que essas pessoas não precisam pagar nada por ele!

Adesão total ao software livre. Linux!

Porque as pessoas usam o Windows?
Porque todos conhecem, a maioria absoluta de programas são criados para essa plataforma, e é mais simples de operar.

Então se o Linux fosse a maioria, todos o desejariam, pois a maioria o teria e seria o Sistema Operacional mais popular.

Por esse fato, acredito eu, que a Microsoft não investe totalmente seu potencial no combate à pirataria.

Mas de qualquer forma a guerra continua. O mais importante para os profissionais de tecnologia é aderir à essas novas “tendências”, como o Software Livre, pois acredito que o profissional que não aderir ao PSL  passará fome. O maior indício disso é que a própria Microsoft, dita ser a maior concorrente do Software Livre (não acho que é por aí) tem laboratórios de produção de software livre em suas instalações. Então fica aí o recado..

WebStandards

Agosto 12th, 2007

WebStandards

As WebStandards são um conjunto de diretrizes e recomendações na confecção de páginas web, criadas pela Organização W3C, fundada pelo criador da Web (Tim Berners-Lee).

Quando ouvi falar em webstandards, não tive uma reação muito boa, o que eu mais ouvi foi a briga entre FireFox e Internet Explorer, que em sua maioria é fanatismo. Então a desprezei. Depois, por alguns caprichos em me aperfeiçoar mais no mundo da web, comecei a ler artigos de um site que já conhecia a algum tempo, sobre css e webstandards, o site do Maujor, http://www.maujor.com/. Fiquei conhecendo a ferramenta de validação de html e xhtml do w3c, e achei divertido validar os meus sites, e isso me incentivou a ler mais artigos traduzidos da w3c pelo Maujor, consigo agora validar os meus sites sem dores de cabeça, no entanto ainda tenho muita dificuldade com Tableless.

Para se ter um site de acordo com as webstandards é necessário então dominar as seguintes técnicas: Tableless, CSS e Acessibilidade, são técnicas que interagem junto uma com as outras portanto são bem parecidas, não são técnicas distintas, mas diferentes e com o mesmo propósito.


O Que é tableless

Tableless é um elemento das webstandards que tem tirado o meu sono, e acredito que também o de muitos desenvolvedores web que aceitaram o desafio de aprender essa técnica, que consiste em não utilizar tabelas na construção do layout das páginas, teoricamente essas tabelas devem ser substituidas por “divs”, que por sua vez são estilizadas com CSS (Cascading Style Sheet, folhas de estilo em cascata, abordarei sobre css no próximo tópico).

Mas porquê não usar as tabelas?

A ferramenta de validação do W3c não verifica o uso de tableless, pois as tabelas podem ser usadas no HTML/XHTML, apenas para a exibição de dados tabulares, ou seja, para preservar o seu sentido semâtico. É nisso que se baseiam as WebStandards, organizar os elementos de uma página web de acordo com a tag à que corresponde, como por exemplo usar a tag à h6 para cabeçalhos, títulos, a tag “p” para parágrafos, a tag “div” para organização da página, e etc. Mesmo utilizando esses elementos, há alguns atributos dessas tags que cairam em desuso e não são mais utilizados, nesse caso, o Validator W3 irá apontar um erro (comentarei alguns desses erros mais abaixo). Uma regra gerasl, seria utilizar sempre CSS para a estilização de cada componente, isso é o que elimina muitos atributos das tags, mas também facilita bastante a vida do Profissional Web.

CSS

CSS…, Ah! é uma maravilha, eu adoro muito as CSS, passei a utilizá-las quando era iniciante no estudo de HTML para estilizar os links. É onde se começa a perceber os benefícios das CSS, pois é possível alterar algumas propriedades que não podem ser alteradas em HTML. (você pode dizer que é possível estilizar o link com HTML, sim, há um atributo da tag “body”, “alink”, que pode mudar a cor do link, só isso e nada mais, com css é possível mudar a cor, tirar o sublinhado e alterar em cada um dos eventos ocorridos com o link: link; hover; active e visited). Mas Css não para por aí, pode-se alterar muita coisa, é realmente fantástico, quem quizer ver um exemplo do quanto as CSS são poderosas, visite o site ZenGarden http://www.csszengarden.com/tr/portuguese/, escolha uma das folhas de estilo no menu direito e poderá ver, que alterando apenas o arquivo de CSS foi possível mudar todo o layout da página.

Acessibilidade

É um item que eu acho realmente importante nas WebStandards, pois proporciona uma real universalização da web, onde todos podem ter acesso à ela, até mesmo deficientes visuais, que à primeira impressão pode parecer irônico, “Um cego acessar a internet”, mas a realidade é que é possível. É claro que é necessário o uso de aparelhos adaptados ao indivíduo, mas também é preciso o trabalho extra, por parte do desenvolvedor, na contrução e confecção de um site, para que esse seja totalmente acessível.

Validação

A validação de HTML/XHTML pode ser feita por várias ferramentas, eu recomendo e uso a ferramenta de validação da W3c http://validator.w3.org/.

Algumas regras para validação:

Todas as tags devem ser escritas com letras caixa baixa(minúsculas).

Todas as tags devem ser fechadas, as que não tiverem tag de fechamento devem terminar com “/>”. Exemplo: a tag “br” deve terminar com “br />”.

Para a validação é importante declarar qual a sua versão de HTML ou XHTML, segue abaixo os cabeçalhos para HTML 4.01 e XHTML 1.0:

HTML 4.01:

Strict:

!DOCTYPE HTML PUBLIC “-//W3C//DTD HTML 4.01//EN” http://www.w3.org/TR/html4/strict.dtd

Transitional:

!DOCTYPE HTML PUBLIC “-//W3C//DTD HTML 4.01 Transitional//EN”
http://www.w3.org/TR/html4/loose.dtd

Frameset:

!DOCTYPE HTML PUBLIC “-//W3C//DTD HTML 4.01 Frameset//EN” http://www.w3.org/TR/html4/frameset.dtd

XHTML 1.0:

Strict:

!DOCTYPE html PUBLIC “-//W3C//DTD XHTML 1.0 Strict//EN” http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd

Transitional:

!DOCTYPE html PUBLIC “-//W3C//DTD XHTML 1.0 Transitional//EN” http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd

Frameset:

!DOCTYPE html PUBLIC “-//W3C//DTD XHTML 1.0 Frameset//EN” http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd

Explicação sobre Strict, Transitional e Frameset.

Strict:

Como o próprio nome sugere: “estrito”, ou seja, não permite nenhuma exceção às regras estabelecidas. Se o site for validado com Strict, facilita o projeto de acessibilidade.

Transitional:

Permite algumas exceções nas regras, é o mais utilizado, muito bom para iniciantes.

Frameset:

A diferença básica para o Transitional, é que permite o uso de Frames.

Finalizando:

Dica: Para aprender validação, comece validando o seu site, o próprio validator diz qual é o erro, relata como proceder, é em ingês, mas use tradutores disponíveis na internet que você consegue.

Bom, por enquanto é só, aguardem, irei escrever mais detalhado sobre cada item que coloquei aqui, até a próxima. Obrigado e bons estudos!

Quer saber mais sobre as WebStandards? Veja os links abaixo:

http://www.maujor.com/, O Melhor, de cara você se depara com uma linda interface, e tem muitos e ótimos artigos sobre tudo que foi escrito aqui, CSS, Tableless, Acessibilidade, além de conter vários documentos traduzidos da W3C.

http://www.maujor.com/w3ctuto/webquality.html, Tradução de um documento da W3c sobre validação, muito bom, compensa ler, comenta sobre o que algumas pessoas dizem por não estar de acordo com esse padrão web, muito interessante!

Guia PontoPonto

Julho 10th, 2007

Já estamos trabalhando na criação do Guia PontoPonto.

O Guia PontoPonto é um lugar onde você poderá procurar por endereços, telefones, e-mails e sites de empresas e profissionais de Brasília - DF. Tudo organizado por categorias e com ferramenta de busca, para facilitar a procura por esses serviços.

Hello world!

Julho 8th, 2007

Bem-vindos caros usuários, ao Blog PontoPonto. O lugar onde manteremos você informados de tudo que acontece na criação e administração do site PontoPonto.Com.

Fiquem ligados! E nos ajudem a melhorar os serviços prestados à vocês.

E que comece o Jogo!