Quando estendi os serviços da i4B para a hospedagem de sites (descontinuei) e consultoria em identidade online (afinal de contas sempre apresento a Internet como se fosse um novo continente que estamos descobrindo) passei a precisar de designers e outros profissionais preparados para construir e atualizar os sites dos nossos clientes.
Por conta disso estou sempre conversando e buscando gente nova e percebi algo um tanto alarmante para quem está procurando um profissional para fazer seu site e para o profissional que quer viver de desenvolvimento Web: falta muito conhecimento de princípios básicos da Grande Rede.
A grande maioria parece ainda viver na década de 90 quando os sites eram feitos em HTML com o Dreamweaver (até hoje a única opção real para sites à moda antiga).
Decidi escrever então este post na tentativa de dar uma visão geral da Rede como está hoje.
HTML – Sites estáticos
Apesar deles estarem sumindo rapidamente ainda são os mais comuns.
Um site html é como um documento Word e não passa de um texto que você visualiza na Internet ainda que possamos inserir imagens, sons e vídeos neles.
O site html é estático. Você não pode interagir com ele, deixar comentários dar pontos para ele ou modificá-lo.
Aqui está um exemplo de um belo site estático:
http://vocenopalco.com.br/ (o domínio não existe mais)
Não é que o site estático seja ruim. No caso acima ele atende perfeitamente às necessidades, mas há várias razões para usar as tecnologias mais modernas, entre elas:
- Você pode atualizar seu site de qq lugar que tenha uma conexão à Internet e um navegador sem ter que instalar nada em seu computador
- Seus visitantes podem interagir com você respondendo enquetes, deixando comentários…
Para fazer um site estático você precisa instalar um editor de páginas em seu computador. O melhor deles, como já disse, é o Dreamweaver, mas ele custa algo em torno de 2 mil Reais. Por isso indico para o newbie (novato) uma alternativa OpenSource, o Kompozer. É a mesma que uso no vídeo abaixo para apresentar o básico da edição de uma página html:
Flash
Isso é uma questão de amor e ódio. Eu não gosto do flash do jeito que ele é comumente usado: para fazer páginas “dinâmicas” onde “dinâmicas” na verdade quer dizer animadas com barulhos, coisas se movendo e menus estranhos.
Um exemplo de Flash bem usado está no side da Designer Aline Mirilli:
http://www.alinemirilli.com.br/
E podemos ver o Flash levado a seus limites no Adobe Buzzword:
http://www.adobe.com/acom/buzzword/
Porque então eu disse que há uma questão de ódio em relação ao Flash?
Bem, acontece que ele não é um padrão Web, ele é uma ferramenta da Adobe e isso por si já o torna um pouco indesejado (por ser um código proprietário e vulnerável aos humores da empresa que o faz), mas além disso ele é projetado para ter um visual excelente e não uma flexibilidade excelente.
Não se pode fazer um blog, uma rede social ou um portal de notícias usando Flash.
Essa é uma tecnologia viável para fazer sites visualmente atraentes, desenhos animados (como os do charges.com) e até aplicativos, mas o site médio tem seu foco em texto, conteúdo, interatividade e “amigabilidade” (no sentido de “não preciso pensar duas vezes para saber onde clicar”).
Entra o CMS
É bem provável que 90% dos sites que você visite usem um CMS ou Content Management System.
Aqui está uma vídeo-aula em duas partes que fiz sobre isso:
O CMS é um programa (geralmente em PHP) que roda no seu próprio site, ou seja, em vez de entrar em seusite.com.br você entra em seusite.com.br/administrator e, depois de informar um login e senha, é levado para sua área de administração onde você pode fazer praticamente tudo que puder imaginar com seu site.
Existe um mercado para programadores de CMS e alguns profissionais gostam de desenvolver um CMS próprio que vendem ou alugam para seus clientes, não acho este caminho bom nem para o desenvolvedor e muito menos para o cliente.
O ideal quando se trata de CMS é escolher um já consagrado como o Drupal, Zope, WordPress ou Joomla e trazer um designer para criar um modelo personalizado e, se necessário, um programador para estender os recursos dele (isso raramente é necessário).
CMS especiais: redes sociais e Web Applications
Quando falamos em CMS geralmente pensamos nos portais (Zope, Drupal, Joomla) ou nos famosos blogs (WordPress, TypePad, Movable Type, Blogger), mas tecnicamente falando, Orkut, Del.icio.us, twitter, Wikipedia (é um CMS Wiki) e até um Docs (docs.google.com ou zoho.com) são CMS, mas são suficientemente diferentes para justificar uma categoria à parte aqui neste pretensioso “resumo da Internet”.
Esses aplicativos estão na dianteira do novo mundo.
Comparando a Rede ao tempo das colonizações podemos dizer que o CMS “normal” é uma nova rota para as índias, já esses outros aplicativos são o tal Mundo Novo onde tudo pode ser diferente e a nossa civilização pode mudar.
Creio que podemos dividí-los em duas categorias: redes sociais e aplicativos online.
Todos conhecemos as redes sociais por causa do Orkut, mas ele é uma das mais míopes e outras iniciativas como o Facebook e a api OpenSocial do Google apontam para um sentido: A Internet inteira será uma interface entre pessoas e todo site será como um tipo de encarnação digital do seu autor. É a Matrix ou melhor ainda, Simulacron 3 virando realidade.
Já os aplicativos, embora menos revolucionários do ponto de vista social são a realização dos sonhos da Sun na década de 90: A Rede é o computador. Rede com R maiúsculo porque se refere à rede das redes, a Internet.
Se hoje você se importa com o seu computador, seu HD e os programas e dados guardados nele amanhã você provavelmente achará isso anacrônico pois hoje já há programas para editar texto, planilhas, apresentações, gráficos e até vídeos que rodam dentro da janela do seu navegador. Basta entrar no site e, em vez de uma página, abre um processador de textos que pode ser usado simultaneamente por várias pessoas em lugares distintos do mundo. Não importa que usem Linux, Windows, Mac ou OS/2.
No momento ainda deixam bastante a desejar se comparados a um OpenOffice, mas já são capazes de atender todas as necessidades de 80% ou mais dos usuários e eles estão apenas em seus primeiros passos.
Tem aqui uma vídeo-aula sobre esses aplicativos:
E você, desenvolvedor?
Ok, você está pensando “O Roney é louco! Isso tudo é muito complicado! Quero só fazer umas pagininhas no (argh) Front Page!” ou “Pirou! Isso é ficção científica!”.
Se você está no segundo caso veja os links! ;-) Essas coisas estão acontecendo AGORA!
Os que se encontraram no primeiro caso… Bem, ainda há muito mercado para fazer páginas estáticas, mas se você tem preguiça de aprender as outras coisas é melhor pensar em outra profissão para daqui alguns anos.
Além disso um site não se faz com HTML e CSS! Muito mais importante que isso é ter um bom designer! Se você não tem talento para isso procure um parceiro ou parceira. É essencial. Procure estudar design também. Creio que vale mais a pena fazer cursos de Design do que de HTML, CSS etc.
Linguagens e BDs
Para os que querem entrar na crista da onda e desenvolver novos Facebooks ou Twitters é necessário gostar de programação e ter uma boa ideia das opções disponíveis no mercado.
Não me peça para falar em .Net, não acredito em tecnologia fechada para a Rede.
As opções são PHP, Ruby on Rails (RoR), Java e Python.
PHP é de longe a mais usada por ser a mais antiga sobrevivente. Ela pode ter várias limitações (algo que nasceu mais de 10 anos atrás com nome de Personal Home Page tem que ter limitações), mas segura muito bem o tranco se você for um bom programador.
Ruby on Rails é uma solução que vem crescendo rapidamente porque realmente é MUITO fácil programar com ela. Só vendo.
Python e Java estão mais ou menos na mesma categoria. São quase mandatórias em ambientes corporativos (apesar do Zope ser feito em Python) por serem realmente linguagens e ambientes orientados a objetos e linguagens de… ainda se fala assim?… quarta geração ;)
Por trás dessas linguagens sempre (ou quase) precisaremos de um banco de dados para armazenar o conteúdo do nosso site. O mais usado é o mySQL, mas há opções mais robustas como o PostgresSQL e o, claro, Oracle. Por outro lado… O YouTube roda em mySQL, precisa dizer mais?
Concluindo
Se você chegou aqui lendo tudo acima então você realmente tem interesse em desenvolver para web, do contrário pode-se resumir tudo dizendo que:
Na web moderna ainda há espaço para sites feitos em html e CSS ou em Flash, mas a tendência a cada dia é que os sites sejam feitos com linguagens de programação que armazenam o site em bancos de dados permitindo uma infinidade de recursos, até mesmo aplicativos Web.
Se você quer desenvolver para Web pense em se colocar em uma dessas três categorias:
- Designer: sabe fazer belas interfaces usando html e CSS ou tem um parceiro que saiba
- Desenvolvedor: para criar aplicativos Web totalmente novos ou adicionar funcionalidades (plugins) a CMSs já existentes como o WordPress
- Especialista em HTML e CSS, ou seja, você não sabe nada de design, mas se te mandarem uma imagem do que deve ser feito você constrói um site html ou um template para um CMS consagrado (não deixe de estudar os templates dos CMS consagrados e ficar de olho nos novos!)
Vou fazer uma considerao com relao tencologia .net, que voc no julgou como promissora para a rede.
Antes de mais nada, gostaria de dizer que o orkut, a maior rede de relacionamentos do Brasil, desenvolvida em .Net. Falhas? Claro que vai ter, uma soluo onde s os programadores do Orkut tm acesso. Vai me dizer que as solues Open Source nascem sem falhas? Claro que no… Profissionais do mundo inteiro metem a mo no cdigo… o que pra uma empresa pode no ser uma boa idia por uma srie de fatores…
Um sistema de informao comercial, disparadamente, a escolha ou .Net ou Java. E vou resumir isso a uma nica palavra: Suporte. Voc ficar na mo da comunidade open source para desenvolver uma soluo (ou resolver um problema) para o seu negcio, um suicdio. contar com o ovo na cloaca da galinha. Nem as empresas de Java utilizam os frameworks open sources para determinado tipo de soluo e cliente.
importante citar que em solues robustas para empresas, solues open source no atendem. Precisam de customizao e acabam perdeiro a magia do Open Source.
Para finalizar, hoje, as lderes de mercado em desenvolvimento de Software so Microsoft e Sun, detentoras do .Net e Java, respectivamente. Se elas so as maiores, naturalmente possuem as melhores ferramentas de desenvolvimento com frameworks poderosssimos para diversos tipos de aplicao, desde sistemas comerciais at jogos.
No sou contra o Open Source, de maneira alguma. Eu utilizo ferramentas open source tambm, mas eu gostaria de deixar registrado que solues fechadas e open source so para atingir pblicos totalmente diferentes.
Um abrao!
PS: Claro se algum contratar a minha empresa(http://www.rsconsultoria.com) para fazer uma soluo tanto em PHP quanto Java ou .NET, iremos desenvolver, pois temos profissionais capacitados para isso.
Eu no disse que no acho promissora, disse que no acredito, um pouco diferente embora realmente d dupla interpretao.
Eu acredito que as solues opensource so a melhor forma de transformar a tecnologia em commodity movendo assim a economia para servios.
Do ponto de vista de quem desenvolve voc tem dezenas de milhes de sites pessoais ou de pequenas ou mdias empresas rodando em solues opensource contra alguns milhares de empresas.
Orkut foi um pssimo exemplo! O treco mal programado pacas! E se fosse opensource a comunidade brasileira j teria corrigido tudo! ;)
A propsito para mim h um mito do suporte ao cdigo fechado… Procure suporte para o Quicken! Deixe a MS perder um pouco de mercado…
Opensource tem suporte garantido enquanto algum usar o sistema…
Na verdade qq dia tenho que escrever sobre isso… Se bem que acho que j fiz um post a respeito.
Ramon,
Me desculpe mas a histria provou que mais provvel vc ficar na mo com uma soluo comercial (empresa fecha ou descontinua o software – exs: photostyler, todos da Aldus, etc) do que com uma de cdigo aberto, em que sempre vai ter um maluco que quer tocar o projeto para frente.
Entendo – e concordo – que as solues devem ser analisadas caso a caso e que, principalmente em se tratando de web, no h lei da fsica, ou seja, no existe algo que seja vlido para todos sem exceo.
Agora, dizer que o opensource menos confivel que o comercial absurdo at mesmo se pensarmos em termos de prticas de mercado: uma empresa cujo lucro vem de um produto, ir descontinu-lo ou no de acordo com polticas internas e lgicas comerciais; enquanto um produto que conta com uma comunidade inteira para mant-lo no morre (exs fora do mundo do sw: biscoitos Globo, que jamais deixou de ser uma empresa familiar que no investe em propaganda).
[]s
Oi Carol!
Depois me lembrei que, de certa forma, mesmo empresas que preferem cdigo “fechado” usando um .Net ou Flash para seus sistemas exigem (muito sabiamente) que os desenvolvedores entreguem o cdigo fonte ou .fla para que possam fazer manuteno nos sistemas caso o desenvolvedor desaparea!
No o mesmo que open source, mas o cdigo aberto do mesmo jeito em termos prticos.
Esta comparao entre open e close surce atravs do suporte s vlida para algo como um complexo sistema de gerenciamento de rede ou um R3 da vida pois atrs do sistema h uma mega-empresa.
Hohoho, no tenho nada a acrescentar, s queria testar o sisteminha de comentar comentrios.
:D
Bjs
e se comentar o comentrio do comentrio?
t, eu paro.
Deixei s at trs nveis, ou seja, o comentrio, ao comentrio do comentrio no poder ser comentado ;)