Discussões sobre tecnologias para e-Learning.
27 Nov
Estava eu todo satisfeito trabalhando quando o cliente que está analisando o site me questiona se tem como os dados de determinada tabela virem randômicos… putz, pensei, será que vou ter que embaralhar os dados na marra? Não é possível né, vou pesquisar na internet. E foi aí que achei o resumido, mas eficiente artigo do Pete Freitag. Ele esclarece como randomizar as linhas no SQL em alguns bancos de dados. Veja aí o que te atende e use o random a vontade. Fique a vontade para postar no comentário outras maneiras de fazer a mesma coisa.
SELECT column FROM table ORDER BY RAND() LIMIT 1
SELECT column FROM table ORDER BY RANDOM() LIMIT 1
SELECT TOP 1 column FROM table ORDER BY NEWID()
SELECT column, RAND() as IDX FROM table ORDER BY IDX FETCH FIRST 1 ROWS ONLY
SELECT column FROM ( SELECT column FROM table ORDER BY dbms_random.value ) WHERE rownum = 1
27 Nov
O desenvolvimento de aplicações está cada vez mais baseado em XML. Estamos desenvolvendo para a webAula um sistema de criação de cursos baseado em Templates. Basicamente este sistema deve ler informações contidas em um XML e montar uma apresentação dinâmica para os alunos a distância do site.
A idéia inicial era algo utilizando o seguinte fluxo:

Ou seja, o desenvolvedor de cursos cria um xml, que é lido por um arquivo flash central e esse arquivo flash carrega um template específico que por sua vez possui alguns componentes pré-determinados. Ao final desse processo temos o curso.
O modelo até funciona, mas tem um problema. Os desenvolvedores ficam presos ao padrão de template existente, sendo assim, se for necessário qualquer customização que não seja possível via XML, por exemplo alterando a ordem de entrada dos elementos, seria preciso criar um outro arquivo de Template que fizesse isso, gerando replicação de códigos e maiores tempos para desenvolver um conteúdo.
Ao ser contratado para desenvolver o sistema, mudei o escopo da aplicação. O que fiz foi basicamente eliminar a existência do arquivo específico para cada template e dividir a existência que tinha ali entre o XML, que passa a fornecer mais informações e os Componentes, que passam a cuidar de mais customizações. O modelo mais enxuto ficou assim:
As vantagens desse modelo são:
Claro que nem tudo é vantagem, o excesso de responsabilidades no XML pode provocar alguns problemas, mas nada que atrapalhe muito, pois poderá ser testado facilmente. De qualquer maneira, será preciso um treinamento mais aprimorado para os desenvolvedores de conteúdo e também pessoas mais atentas.
Outro ponto que pode gerar algum trabalho extra, é que o FrameWord (arquivo Flash central) precisará ser muito bem programado e estável, pois dele dependerá o sucesso da aplicação. Qualquer erro, poderá gerar um sistema instável para criação de cursos.
Pois é, agora mãos à obra, pois o trabalho é muito grande e o tempo curto, teremos que entregar tudo pronto até o dia 03/12/2007.
O sistema está sendo feito em parceria com o Leonardo Braga e sua empresa, a Braga & Braga Consultoria.