Nas minhas contínuas pesquisas sobre frameworks para desenvolvimento Web, uma das coisas que têm me chamada atenção é a documentação disponível e a facilidade com que um usuário iniciante consegue informações que lhe permitam começar o processo de desenvolvimento.
Hype à parte, o único ganhador nesse caso é o Rails. Mesmo o Django não consegue o mesmo nível de facilidade–em parte, eu acredito, pelo site confuso que não provê um caminho direto para usuários e a falta de um tutorial mais atualizado e condizente com as mudanças que estão acontecendo no mesmo.
O Seaside, por mais poderoso que seja, tem uma curva de aprendizado extremamente íngreme: não existe nenhum tutorial para a versão mais recente, a documentação bordeja o ridículo, e mesmo os exemplos que vêm com o pacote primário se referem a uma versão anterior. O resultado é que tarefas simples se convertem em uma caçada à classes e um processo de tentativa e erro.
O irônico é que volta e meia alguém reclama da popularidade do Rails e os usuários do dito framework se dividem em dois na listas. O primeiro grupo diz que o objetivo não é competir com o Rails, mas na verdade gostariam de que pelo menos o hype fosse o mesmo. O outro grupo sugere medidas interessantes, mas não faz absolutamente nada.
O fato é que código é notoriamente difícil de se ler. Sem documentação, nenhum framework segue em frente. Há momentos em que eu gostaria que certos desenvolvedores parassem se escrever código e documentassem. Na falta disso, que indicassem o proverbial caminho das pedras para que outros pudessem escrever código.
7 Comments
Há um tempo atrás eu tentei aprender um pouco sobre o Magritte (framework para descrição de meta-dados pra Smalltalk) e sobre como utilizá-lo junto com o Seaside (para geração e validação automática de formulários e tal) e eu simplesmente não consegui fazer a bagaça funcionar. Tentei ver se encontrava algo parecido no código do Pier (um CMS feito em Seaside), mas o código dele, de tão bem feito, chega a ser irritante tamanha a complexidade.
E não parei por aí. Acabei encontrando um tutorial em PDF feito pelo próprio Lukas Renggli (criador do Magritte) — que na verdade era um trabalho acadêmico — mas que não mostrava como fazer. E as listas de discussão? Se encontra dúzias de versões diferentes que teoricamente funcionam. Teoricamente.
Depois dessa luta toda, beijei a lona. Confesso que fiquei desapontado em não ter conseguido fazer nada que funcionasse. Quem sabe daqui algum tempo eu tente novamente, mas, infelizmente, não acredito que será diferente.
Mas sobre o Seaside, o pouco que aprendi já me convenceu de que ele é um dos melhores frameworks web existentes atualmente. Mas tem horas que essa minha expectativa é ofuscada pela idéia de que este framework só existe com o objetivo de manter o DabbleDB (aplicação comercial foderosa em Seaside).
Do jeito que está, só mesmo quem participa do desenvolvimento do Seaside realmente o pode dizer que o conhece. E, enquanto não houver documentação, não há a menor possibilidade de haver qualquer “hype” em cima do Seaside, por melhor que este seja.
Só para constar: são duas e meia da manhã, mas consegui fazer o Magritte+Seaside funcionar! Acho que foi por causa da sua palestra hoje (ops, ontem),
que estava ótima.
Vou montar um tutorialzinho depois para ninguém precisar camelar tanto igual eu camelei!
Até!
Este fato realmente é um problema Ronaldo, Rails só não aprende quem quer e a melhor fonte de estudo que achei até agora é o seu tutorial que mistura código e conceito de maneira bem simples, estamos esperando um tutorial assim pro Seaside.
Abraço e parabéns pelo Herético… quer dizer… palestra, estava ótima
Daniel, pois é. Esse tipo de problema que você descreve é super-comum.
Apesar de que o pessoal do Seaside parece estar se tocando para a necessidade de um processo mais óbvio e transparente. Eu lembro de uma discussão recente na lista sobre o assunto e fiquei impressionado com a postura de alguns desenvolvedores que acham que se a pessoa não conseguir descobrir sozinha o que é necessário, não merece usar Seaside.
O que eu acho que falta também é um espírito de comunidade mais aberto–ironicamente, Smalltalk sempre foi assim–porque o pessoal parece achar que a panela atual é suficiente porque Seaside nunca vai e “nem quer ser” popular como o Rails. Isso me lembre de raposas e uvas verdes.
Enfim, com o crescimento, a pressão sempre aumenta e documentação vai sair eventualmente. Já estão planejando até um livro.
Sobre o tutorial Magritte, ficou muito bom. Parabéns, estamos precisando mesmo disso.
–
Aguinelo, obrigado pela parte que me toca. Sobre o tutorial, estou engatilhando um. Vamos ver o que acontece.
É bom que esse eventual livro cubra a versão mais recente!
Digo isso pois, vez ou outra, encontramos uma parte da “documentação” que está depreciada…
Até mais!
É mesmo, parece que a galera do Seaside começou a perceber que tem gente querendo usar esse framework!
Tem uma apresentação sobre o Seaside nesse link:
http://www.lukas-renggli.ch/blog/esug-lugano-seaside?view=PBPostHtmlView&command=PRViewCommand
Espero que o livro cubra só a mais recente. Mudaram tanto que ia ficar uma zorra cubrir tudo.
Sobre a apresentação, só vi os slides. Depois tenho que vê-la toda com calma.