Não é a primeira vez que me perguntam se eu acoselho o uso de includes. Não sei o motivo, mas grande parte do pessoal não usa includes. Parece que isso é uma daquelas coisas de uso exclusivo de programadores. Engano deles.
Includes (por exemplo) é uma das coisas que ajudam e muito o trabalho da equipe inteira. Menus, cabecalhos, rodapés, e qualquer coisa que você ache que vá se repetir em mais de uma página no site deve ser colocado em includes. Já vi muita gente, em pleno século 21, repetir o código do menu em todas as páginas. E sim, quando algo muda no menu, ele muda na página inteira. Muito triste.
Faz parte do trabalho parar um tempo por dia para pesquisar novas metodologias, novos meios para agilizar seu trabalho diário. Costumo fazer isso no final do expediente. Normalmente sempre encontro maneiras que resolvem meus problemas mais urgentes.
PS.: Já já novidades aqui no Tableless.
40 ComentáriosOntem, depois do lançamento do iPhone e de ter visto suas funcionalidades (nem tão novas assim, mas reinvatadas de verdade), fiquei pensando em uma funcionalidade em particular: navegação na internet. Quem assistiu o Keynote viu o camarada navegando de verdade com um browser de verdade (Safari) e tendo uma experiência realmente boa. O browser carrega o site inteiro, lendo XHTML e CSS, nada de SSR ou qualquer coisa parecida e é renderizado como se fosse uma miniatura na tela, mas a formatação é integral, como se estivesse sendo visualizado de um desktop. Sim, ficou impossível de ler, mas isso foi resolvido quando o nosso camarada tocou duas vezes no lugar que ele gostaria de ler e o browser deu um ZOOM, possibilitando a leitura.
Essa experiência é muito comum hoje em dia, só que em vez de dedos, você estaria usando uma Stylus (aquela canetinha nojenta), muito pior de manejar do que seus dedos.
A impressão que eu tive sobre a experiência de navegação no iPhone é ótima. Será um dispositivo que os desenvolvedores não terão que se preocupar com compatibilidade, você nem vai precisar fazer uma versão especifica para mobiles (no caso do iPhone). Sim! Você ainda precisa se preocupar com desenvolvimento de sites para dispositivos móveis. O iPhone não é o único dispositivo do mercado, infelizmente. ![]()
Também hoje, o Yahoo! liberou para download um pacote de programas direcionados para celulares. O Yahoo! sempre foi antenada quando se trata de mobiles. E você sabe que eles fazem um trabalho bem feito. Sem comentar do Opera, que é um dos melhores (ou melhor) browsers para dispositivos móveis que existe.
Mobilidade é uma coisa que todo mundo precisa e quer. Quem tem um celular hoje, não consegue mais viver sem. Quem tem um celular com conexão à internet também não consegue viver sem. E assim o público vai mudando e se inovando. Aí é onde a coisa fica mais interessante.
Já falei e repito: pra mim, este ano será da mobilidade. Haverá mais interesse nesse mercado, mais procura, mais agitação. Se as empresas acima estão dando uma certa atenção pra isso, já é motivo para mexermos nossos ossos e corrermos atrás do prejuízo desde agora.
5 ComentáriosOs padrões web já há muito tempo vem abrindo caminho na vida dos desenvolvedores. Não é de hoje que os muitos que aderiram ao “movimento” tentam apresentar com as melhores honras as vantagens de aderir aos Padrões. Hoje, saber implementar um site usando os Padrões é um diferencial que o desenvolvedor deve usar para valorizar seu trabalho e é um ponto que a empresa deve usar para valorizar seus produtos.
Esse estado não durará para sempre. Felizmente. Se quisermos que a evolução continue, nada deve parar e ninguém deve estacionar com o pensamento de dever cumprido. Isso vai passar e quando acontecer os Padrões Web já farão parte do pacote básico.
O que quero dizer é que daqui um tempo – tomara que não seja um tempo longo – aderir aos Padrões já não contará como diferencial. Do mesmo jeito que hoje, um desenvolvedor que se preze, sabe pelo menos ler inglês. Isso não é mais diferencial para ninguém do mesmo jeito que um desenvolvedor saber implementar sites usando CSS e criar um código bem estruturado não será mais diferencial.
O que será diferencial então? O que o desenvolvedor terá que saber para se destacar de uma centena de outros?
As empresas estão no mesmo mato. Produzir aplicações e sites de acordo com os Padrões não será mais coisa de outro mundo e nem encherá os olhos do cliente com tantas vantagens. Oferecer um site rápido e compatível com o maior tipo de dispositivos será dever – na verdade já é.
Tecnologia vem e vai muito rápido. As empresas hoje em dia já oferecem muito mais coisas além de tecnologia. Tenho uma versão original do Windows, e um certo dia depois de formatar a máquina, tentei instalá-lo novamente mas a chave de registro estava dando um erro. Liguei para o suporte, um atendente falou comigo e me deu rapidamente a solução. Perguntou se havia outro problema a ser resolvido e disse que ligaria no dia seguinte para verificar se o problema estava resolvido. Consegui fazer a instalação funcionar seguindo os passos que o atendente havia me passado. Minutos depois abri minha caixa de entrada, havia um email com o resumo da chamada telefonica, com o nome do atendente, descrição do problema e solução. No dia seguinte o camarada me liga, pergunta se tudo está resolvido, digo que está tudo ok. Abro minha caixa de emails novamente e lá está outra mensagem informando o status do problema – resolvido – as informações sobre a chamada.
Nunca tinha visto um atendimento tão bom quanto este. E logo de quem? Microsoft, uma empresa que muitos não gostam e se acostumaram a falar mal. Acho que nunca vou ver um atendimento como este tão cedo, a não ser que meu Windows dê alguma pane. É por este motivo, e não por medo da fiscalização, que muita gente prefere comprar Windows (ou qualquer outro software) original.
Entende o que quero dizer? Quando alguém compra o Windows, ela não está comprando apenas um disquinho com um sistema operacional. Tem toda uma gama de serviços por trás que vale a pena adquirir. Se você compra um cd do Windows na esquina, você se priva de todos os serviços que a empresa pode lhe oferecer.
Que tipos de serviços uma empresa de Web pode oferecer a seus clientes? Que tipo de vantagens um desenvolvedor pode oferecer para uma agência de web poder contratá-lo?
Como já disse, implementar um site Tableless e semânticamente correto é fácil. Implementar um site usando CSS e HTML bem estruturado em cima de código Python, PHP ou Ruby já é outro patamar – que não demorará para ser requisito básico. Talvez a facilidade que o desenvolvedor tem para se adequar a novas tecnologias pode ser um diferencial. Seu talento para resolver problemas. Seu talento para descobrir o caminho do mercado. Sua facilidade de conseguir desenvolver em ambientes com os quais não está acostumado, com código totalmente gerado por algum CMS da vida e estrutura de desenvolvimento porcamente armada podem ser grandes diferenciais para este desenvolvedor.
Por isso, tente sair da caixa mais uma vez. Você conseguiu sair da caixa uma vez quando começou a adotar os Padrões, agora é só dar mais um passo adiante e se preparar para muitos outros.
27 ComentáriosXHTML MP é um subset do já conhecido XHTML. Ele é baseado em um outro subset de XHTML chamada XHTML Basic. O XHTML Basic é uma versão simplificada do XHTML definido pelo W3C. Ele foi feito especificamente para dispositivos com baixo poder de processamento como celulares, PDAs, pagers etc… O XHTML Basic não contém algumas características que esses dispositivos dificilmente suportam, como por exemplo: Frames, Folhas de Estilo em Cascata e scripts.
O ponto forte do XHTML MP é trazer para os dispositivos móveis tecnologias atuais para criar uma experiência melhor ao navegar. Antes do nascimento do XHTML MP, os desenvolvedores para internet móvel usavam WML e WMLScript para criar sites em WAP. Enquanto isso, os desenvolvedores para a internet convencional trabalhavam com HTML/XHTML e CSS para construir web sites.
Com a vinda do XHTML MP, a linguagem da internet sem fio e a linguagem da internet convencional finalmente convergiram. XHTML Mobile Profiles juntamente com o WCSS deram mais flexibilidade para os desenvolvedores de sites para dispositivos wireless. Agora, desenvolver para dispositivos móveis ficou tão fácil quanto desenvolver web sites normais. Não é mais necessário ter dispositivos ou softwares especificos para testar seu projeto. Não é mais necessário aprender outra linguagem, é tudo XHTML e CSS, claro, com mudanças específicas para mobiles.
Assunto interessante. Dá muito pano para manga.
O texto não está tão elaborado porque é um rascunho sobre algumas coisas que ando lendo. Como não tive tempo de fazer um texto mais completo, acabei postando esse mesmo.
obs.: quase uma tradução do texto que está em XHTML MP. E uma prévia para breves lançamentos na Visie.
10 ComentáriosVocê tem celular? De acordo com a Teleco, em novembro de 2005, havia mais ou menos 82.351.644 de celulares. Ainda me lembro de quando eles eram artigos de luxo, mesmo sendo grandes e pesados.
Hoje, por um preço razoável, você consegue celulares que tiram fotos e fazem outras coisas que nem James Bond ousava imaginar. E quer saber da melhor? Esse é só o começo.
Aparelhos com essas e outras possibilidades aparecerão. Os HandHelds com funcionalidades iguais as de um Desktop estarão em alta. Pessoas acessarão a internet de qualquer canto… não serão dependentes dos poucos HotSpots. Conexões como Wi-Max não serão novidade. Ninguém arregalará os olhos quando você tirar um Palm ou PPC do bolso para anotar algo e enviar por email, pelo contrário. A internet estará espalhada em cada bolso, em cada palma de mão.
O Google acabou de lançar uma versão do seu webmail para mobiles. Sem contar com sua versão de busca para Mobiles. O Flickr também tem sua versão para dispositivos móveis. Isso mostra que os grandes, de uma maneira ou de outra, estão preparados para essa nova etapa.
Como introdução a criação de sites para esses dispositivos, criamos dois artigos que poderão ajudar o desenvolvedor. É importante que comecemos a fazer da maneira certa. Ter em mente suas possibilidades, seus limites. Um dos artigos fala sobre SSR - Small-Screen Reader. O outro fala um pouco sobre MediaType para HandHelds.
13 Comentários Dispositivos Móveis. Este é um terreno muito estranho para os desenolvedores de sites.
Talvez você tenha ouvido falar em fazer sites para Dispositivos Móveis (Mobiles) depois que começou a estudar Web Standards. Confesso que comecei a dar mais atenção a essa área depois que estudei a fundo os Padrões.
Mas, para aquele usuário um pouco mais avançado, que quer fazer seus sites aparecerem melhores nestes dispositivos, nada melhor que conhecer os Browsers que estão disponíveis e que são usados pelos usuários de Mobiles.
Tentei montar abaixo uma tabelinha de compatibilidade entre os browsers. Como eu, muitos não devem ter como comprar um aparelho desses para testar, por isso eu recomendo muito pesquisar pela internet. Tentarei na medida do possível dar algumas dicas por aqui sobre os dispositivos, browsers, compatibilidades e etc. Existem muitos sites que são ótimas fontes de estudos, com links e material farto sobre o assunto.
| Browser | HTML | XHTML 1.0 | CSS 1.0 | CSS 2.0 | DOM | JavaScript |
|---|---|---|---|---|---|---|
| Palm Web Pro 3.0 | sim | sim | sim | sim | ? | v1.5 |
| Palm Web Pro 3.5 | sim | sim | sim | sim | ? | v1.5 |
| PalmSource Web Browser 2.0 | sim | sim | sim | Parcial | ? | v1.5 |
| PalmSource Web Browser 3.0 | sim | XHTML 1.0 + XHTML Mobile Profile | sim | sim | Nível 1 / Parc. Nível 2 | sim |
| EudoraWeb Browser | sim | |||||
| Handspring(TM) Blazer(TM) 2.0 | sim | sim | ||||
| Pocket Internet Explorer | sim | ? | ? | ? | ? | ? |
Claro.
Como nos Desktops, os Mobiles tem seus Sistemas Operacionais. O Pocket Internet Explorer é para PocketPc (PPC), todos os outros são para Palm. Sim, há vários tipos de sistemas operacionais para Palm; e não, os browser não são compatívels com todos os tipos de Palms. Por exemplo, o browser Web Browser 3.0 só é compatível com Palm OS Cobalt que ainda nem saiu.
Se alguém souber mais alguma informação sobre especificamente o Internet Explorer. Por favor, nos diga para que possamos melhorar a tabela acima. ![]()