Tecnopapo: RoR, Frameworks, Java etc.
18th, September 2008
Hoje sou consultor em hospedagem de sites e o que chamo de presença ou até encarnação online, mas até bem pouco tempo o meu ambiente eram grandes multinacionais, gestão do conhecimento e coisas como mainframes, CORBA, SAS, DB2 etc.
Em dois anos muita coisa acontece. Surgiram Ruby on Rails, Python (agora com Django) e o próprio mercado de computação mudou radicalmente. Eu estava desatualizado.
Foi então que recebi um convite do pessoal da Neki me chamando para uma palestra sobre Web2.0 com Jboss Seam. O email com a propaganda era meio esquisito e quase não fui, ainda bem que mudei de idéia!
A primeira coisa divertida foi, no intervalo, ser abordado por um dos simpáticos anfitriões:
- Então, mudou a sua impressão? Está gostando da palestra Roney? – Pensei "Impressão? Que impressão? Cheguei aqui calado e calado fiquei…"
- Todo mundo aqui leu o que vc disse na Internet, que a propaganda enviada por email estava estranha, fui eu que fiz… O designer já tinha ido e…
Esta é uma ótima lição! Cuidado com o que vc fala na Rede pois nunca sabe quem está escutando!!! Ainda bem que eu não tenho o hábito de falar coisas de que me arrependa depois e respondi prontamente que "A palestra está excelente, mas não deixe o designer sair mais cedo!"
A palestra foi realmente muita boa. O palestrante demonstrou excelente domínio tanto da linguagem quanto do Jboss Seam e o nível da audiência também me surpreendeu!
Lembro de quantas vezes me decepcionei 15 anos atrás quando entrava em contato com empresas tidas como grandes desenvolvedoras, mas não conheciam o básico de herança, polimorfismo e outros conceitos de OO.
A partir daqui este post só é interessante se você programa, ou seja, se você escreve códigos que fazem os computadores fazerem coisas!
Se você é uma dessas pessoas estranhas e essenciais então sabe que há dois grandes substratos de aplicativos online:
- Corporativo: dominado pelo ambiente Java, .Net (argh) e, mais raramente Python e outras linguagens
- Pessoais e médias empresas: dominado pelo PHP (Wordpress, Joomla, Zencart, B2, phpBB etc.)
Há centenas de razões para não usar outra coisa que não seja java em uma intranete ou extranet corporativa, o problema é que, com o desenvolvimento das outras ferramentas e um atraso no desenvolvimento do Java, muita gente começou a pensar seriamente em migrar, por exemplo para o RoR.
Preciso explicar o Ruby on Rails? Se você é webmaster, webdesigner ou webqq coisa e não sabe que o Rails é um tipo de framework que torna impressionantemente fácil desenvolver sistemas web com a linguagem Ruby então você está muito atrasada(0)!! Corra já! Corra agora e vá se informar pelo menos sobre Java, RoR, Python e PHP.
Depois de muito tempo sem conseguir propor algo como o Rails para o Java finalmente surgiu o Jboss Seam que é duas coisas:
- Um framework similar ao Rails (ou o Django para Python)
- Um integrador de frameworks, o que significa que vc pode utilizar e estender a infinidade de frameworks para Java sob o guard-chuva do Jboss Seam.
Bem impressionante.
Continuo acreditando em uma fronteira bem definida entre os recursos disponíveis para os sites mais comuns (lojas online, portais, blogs, comunidades etc.) que impossibilitam o uso de java e outro segmento da rede que consiste em mega-portais ou lojas e sistemas corporativos de BI, Business to Business que PRECISAM de algo escalável como o Java.
… Se você não sabe o que é escalável volto a sugerir que corra para se informar! A cada dia que passa é mais importante que um site seja muito mais que um site, que ele tenha recursos dinâmicos que vão muito além de um campo de comentários ou um formulário de contato.
No final das contas fiquei com excelentes impressões:
- É muito bom ver como as nossas empresas de software cresceram em qualificação
- Fiquei muito feliz em saber que nosso governo abraçou o opensource e não admite que lhe vendam caixinhas exigindo prestação de serviços e personalização. Este é um passo importante para um país em desenvolvimento
- o Jboss Seam parece capaz de dar uma arrumada no Java e revitalizá-lo
Filed under: Tecnologia, infoBee | No Comments »
Internet não é flyer…
2nd, September 2008
Hoje vi um site lindo, lindo mesmo, coisa de designer bom! É leve, fácil de navegar, mas tem dois problemas.
Primeiro problema é que… Bem, o centro do nosso planeta gira a mais de 100 mil Km/h e as mudanças tecnológicas, sociais e científicas são 10 vezes mais velozes.
É vital que a gente compreenda que a Internet é outro mundo e nele as coisas são diferentes.
Um site não é um flyer, um cartaz ou um outdoor. Já falei nisso outras vezes, mas acho que não custa nada falar de novo.
As coisas na Internet estão vivas. Elas tem conteúdo, estrutura e comportamento, ou seja, você clica nela e ela reage. Nem televisão faz isso.
Então um site que simplemente diz "minha empresa faz isso e aquilo" já não é bem um bom site pois tenta ser um tipo de folder. Se a empresa é um lugar poderiam ser adicionados vídeos, se ela fabrica brinquedos talvez a possiblidade de vê-los em 3D e se reúnem pessoas poderia oferecer uma galeria de fotos dinâmica. Use sua imaginação…
A coisa fica um pouco pior quando o site não tem texto.
No mundo físico as pessoas andam pela rua e enxergam seu outdoor, na Rede não… Elas chegam a você através do Google, do Yahoo!, do Ask Jeeves, ok, geralmente pelo Google.
O sujeito entra lá e diz "quero tatuador no Rio de Janeiro que faz tatuagem fluorescente".
Se o seu site foi todo feito em um editor de imagem e os textos na verdade são parte da imagem então lascou-se. Só quem já te conhece vai achar seu site e ai perde o sentido de ser.
Um caminho alternativo para resolver isso é usar a metatag description e colocar lá a descrição do que cada página está dizendo, mas o ideal é fazer o seu site em bom HTML com CSS e texto, bastante texto.
Não pense que só dá para fazer coisas bonitas usando fotos. Dê uma passada no CSS Zengarden e veja os limites do desieng design levados quase ao máximo. Basta ir clicando nos diferentes modelos de site que ficam no menu do lado direito da página para ver exatamente o mesmo conteúdo sendo exibido de formas diferentes como esta.
Quero destacar que existe apenas um arquivo com o texto e ele é exibido de formas diferentes conforme você muda o "template"
Filed under: Terra, infoBee | 1 Comment »
Mal hospedado sem saber…
24th, August 2008
Primeiro caso…
Roney, minha amiga está satisfeita com o hospedeiro atual dela, tudo que ela precisa é de alguém para dar uma reformada no site dela e acrescentar uns recursos em php
Segundo caso…
Foi uma amiga que fez o meu site para mim, ele está fora do ar [a mais de duas semanas] porque ela está com uns problemas com o hospedeiro, mas vai ajeitar. Eu pago só R$15 por mês
Fico com muita vontade de dizer para essas pessoas que elas estão muito mal atendidas, mas muito mal mesmo.
Manter um site no ar e carregando rápido é o que absolutamente qualquer hospedagem deve fazer!
Oferecer um bom gerenciador de conteúdo como o Wordpress ou o Joomla (e não uma solução proprietária que prende o cliente) também é o mínimo.
Não oferecer essas coisas é como vender um carro sem volante ou motor.
Um hospedeiro precisa:
- Dizer que site não é outdoor e é necessário ter uma sessão com artigos periódicos
- Indicar bons designers
- Ajudar a encontrar soluções para as necessidades do site (uma enquete online, ou formas para publicar planilhas por exemplo)
Enfim, um hospedeiro deve ser um tipo de anfitrião no mundo virtual e estar pronto a ajudar seu cliente a colonizar esta nova Terra.
Agora, como dizer isso em um tempo cheio de desconfianças sem correr o risco da pessoa do outro lado pensar "Ah! Ele tá querendo fazer pouco do outro para vender o serviço dele."?
O que tenho feito é indicar hospedeiros muito baratos ou mesmo gratuitos já que, se é para ter suporte ruim ser mau atendido então que o preço seja baixo, não é? Se a pessoa leva sua empresa ou iniciativa (nem todo site é de empresa) a sério e não quer virar especialista em Internet estarei ao alcance de um email
Para quem quer virar especialista em Internet indico o Dreamhost que hoje é responsável pela infra-estrutura da minha hospedagem (eu terceirizo).
Filed under: infoBee | 2 Comments »
Usando o Gmail com um Outlook da vida
26th, July 2008
Para quem não sabe tenho feito video-aulas sobre Internet e tecnologia e publicado no Youtube e no Vimeo.
O vídeo mais abaixo não explica como configurar o Outlook porque eu gosto de você que está lendo este post e não faria isso contigo! Ele mostra a configuração para o Thunderbird, mas não deve ser difícil usar as instruções para configurar qualquer outro "mailler".
Quando você hospeda seu site conosco (i4B.com.br) o Gmail é configurado como servidor de email do seu domínio com 200 contas de quase 7GB cada uma e envio um manual explicando como configurar tudo e este vídeo é mais um apoio para os nossos clientes, apesar de eu esperar que ele seja útil para qualquer um usando o Gmail.
Bem, ao vídeo:
Filed under: Tecnologia, infoBee | No Comments »
Quero desenvolver para Web, e agora?
10th, June 2008
Quando estendi os serviços da i4B para a hospedagem de sites 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:
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.
Esta é 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 video-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 pretencioso “resumo da Internet”.
Estes 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á estes 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 estará achando 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% o mais dos usuários e eles estão apenas em seus primeiros passos.
Tem aqui uma video-aula sobre estes aplicativos:
Como trabalhar colaborativamente online? from Roney Belhassof on Vimeo.
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!
Estas 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 desing 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 idéia 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 destas 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 destas três categorias:
- Designer: sabe fazer belas interfaces usando html e css ou tem um parceiro que saiba
- Desenvolvedor: para criar aplicativos Web totalemente 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ê constroi 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!)
Filed under: Tecnologia, infoBee | 8 Comments »


