Este documento foi produzido como resposta a perguntas elaboradas pelo STAFF no ICMC-USP onde o sistema TelaSocial vem sendo custmizado para atender aos vários objetivos de comunicação no departamento. Última alteração por Márcio dos S. Galli - mgalli em@taboca.com, Fevereiro de 2010

Projeto de Customização e Implantação de Telas Interativas com o TelaSocial no ICMC-USP

Edson: Noto-lhe que o ICMC contratou uma empresa para elaborar um pouco este tema e eles devem propor algo em breve. Entendo que eventuais inputs deles serão facilmente incorporados na Tela.

Concordo. No momento requer-se algum conhecimento de padrões abertos como XHTML, CSS, DOM, e JavaScript. Como parte deste projeto/caso de implantação/ customização no ICMC, eu estarei continuando a ajudar na parte de customização e também ir melhorando a infra-estrutura do lado TelaSocial no que refere-se a documentação e funcionalidades da API, com o objetivo que novos contribuidores possam simplesmente mudar a camada de apresentação ou definirem novos módulos visuais. Também estarei disposto a ajudar, através de suporte ou documentação, aos que por ventura se interessarem em entender como os padrões web são utilizados e como configurar as regras que governam a execução/programação. No caso do ICMC, é importante notar que vamos precisar de um local/computador para manter as regras que governam a programação e também poderá este servir de hospedagem dos módulos visuais feitos especialmente para o ICMC. Uma vez que este local for definido ( poderia ser um wiki também ) acho que vai ficar interessante a visualização da governança da programação.

Na arquitetura atual já existe uma camada bem definida, camada superior com bordas azuis na figura acima, que refere-se a camada de utilização do TelaSocial. No caso, eu estou meio que jogando nos dois times pelo momento, onde estou fazendo atualizações do lado TelaSocial ( laranjado / vermelho ) e também criando cenários e exemplos no lado do customização/uso pelo ICMC ( azul ). Em termos de requisitos técnicos para customização, um individual ou organização que busca customizar a utilização do TelaSocial no ambiente, estará utilizando padrões abertos como HTML, CSS, PNG, videos ou áudio em OGG, e JavaScript.

Edson: A propósito, achei que ela está bem twitter-like; talvez essa fosse a idéia mesmo, não?

Acho que sistemas como Twitter vem nos servindo bem em casos onde necessitamos de uma definição rápida/oportunística de um canal para agregar interação de usuários dado um nicho/tópico. É importante notarmos que os dados do Twitter foram apresentados por um módulo-widget que lê RSS, que foi implementado razoavelmente rápido. Em outras palavras, tanto os canais twitter como sites de notícias como USP online, G1, ou terra, foram apresentados pelo mesmo componente/ módulo. A medida que estivermos certos dos canais que queremos utilizar, podemos especializar melhor os módulos-widget de apresentação. Por exemplo, se um módulo Twitter for definido como importante então poderemos colocar melhorias neste, tipo apresentando a data/hora juntamente com a mensagem, etc.

Edson: quando vc fala em "absorver mudanças" significa dizer que o layout poderá ser facilmente modificado tb? Por exemplo, de repente, descobre-se que vai haver uma palestra de um premio nobre na Fisica. Seria possível, facilmente, colocar uma janela nova, com cor diferente, para ressaltar aquele evento iminente (e eminente!)?

Sim, será. Temos hoje? Parcial. De fato eu coloquei no core do lado TelaSocial, o suporte no que se refere a capacidade de adicionar e remover elementos módulos- widget em tempo de execução. Esta funcionalidade é o que permite que a tela passe uma experiência do tipo transição. Mas, no momento, eu ainda não repassei este controle para os módulos que gerenciam o agendamento/calendário. Uma vez que esta nova funcionalidade for ativada poderemos ter casos como Quarta-feira, 2PM tirar completamente a forma grade que tem hora+notícias de um dado site X, e trocar por outra que tem notícias de outro site Y+Z com um tipo novo de grade para um evento específico. Esta é uma dúvida que muitos estão trazendo: ainda parece que a estrutura geral e' estática. Mas nas metas/arquitetura é pra ter este cenário e ele virá em breve - agora inicio de Março é meu target. Vou dar um outro aviso assim que esta funcionalidade estiver boa para rodarmos um cenário.

Lembro que também você comentou sobre um cenário onde um professor iria levar uma galera em um dado evento, e que naquele evento/oportunidade poderia ocorrer uma necessidade/oportunidade para a tela apresentar. Neste sentido, uma outra experimentação que poderemos fazer é a de delegar que certos códigos de canais registrados ( como twitter ) possam ativar certos eventos, ou seja, poderíamos inserir regras para passar um controle em tempo-real sobre o layout. Isto tem que tem mais feedback de todos aqui porque tem implicações no contexto de governança.

Edson: Que tipo de mudança pode ser facilmente absorvida, então?

Duas naturezas. A natureza das coisas customizáveis, tipo colocar layouts novos, mudar eles, trocar estilos visuais, inserção de novos módulos-widget, associação destes widgets com conteúdo, definição das regras de apresentação no tempo. Este é o lado que o sistema oferece como uma API e trata-se do uso do sistema. O outro lado é a natureza open-source do código fonte do projeto. Uma vez que o código esteja disponível com uma licença open-source, irá gerar um espaço para contribuições no nível core da aplicação, que inclui coisas do tipo - full screen, múltiplos monitores, 24x7 QoS, crash recovery, 3D, gerenciamento de sessão, aspectos sobre gerenciamento remoto para uso adminstrativo etc. A primeira parte responde melhor ao dia a dia. A segunda parte pode responder bem dependendo dos diversos usos e contribuição de entidades ou comunidades que tiverem utilizando o sistema.

Edson: quem pode fazer mudanças? tem níveis de mudanças diferentes, exigindo categorias diferenciadas de usuário? Vamos precisar autenticar postings? Isso tem implicações que o Dotta vai precisar avaliar;

Neste momento eu estou sugerindo a utilização de páginas em um Wiki para servir de repositório das regras gerais de execução, o que me refiro como regras de coreografia. Como você sugeriu estas poderiam estar sob a responsabilidade de um time no ICMC. Vamos precisar também de um local/host para deixar aqueles módulos-widget que fizermos especificamente para o ICMC. Quanto as modalidades seriam no momento:

  • 1) Estado da máquina + Estado da aplicação TelaSocial
  • 2) Regras de Coreografia
  • 3) Módulos-widget

No cenário que rodamos na semana de 22 a 26 de Fevereiro de 2010, estes 3 elementos foram disponibilizados na máquina 143.107.231.79. Eu tentei, com o objetivo de apresentar melhor a visão de gerenciamento remoto, mover os item 2) e 3) para um wiki, mas não deu tempo. O item 1) é mais de infra básica de aplicação core, enquanto que os items 2) e 3) referem-se a infra-estrutura de programação/ customização/comunicação.

Vale lembrar que o nível de notícias continua sendo obtido de um domínio existente, que provavelmente encontra-se, ou deveria estar, disponível no site do instituto. Por exemplo, se o departamento de eventos gera informações em RSS, este domínio/time não precisaria de logins adicionais.

Edson: vejo que na tela tem objetos diferentes: janelas (as areas grandes); áreas com valores variaveis (o horario) e áreas com informação fixa (ICMC). Estes tipos são pré-definidos? Outros podem ser facilmente inseridos?;

Sim, outros podem existir. O lance que comentei que vamos ainda rodar, são os cenários de inserção/remoção baseado em uma agenda. Por exemplo em uma dada Quarta-feira, tira-se tudo e passe o jogo da copa em 3D.

Edson: - Porque não um objeto tipo logo? acho que vc disse que não vai haver logos. Logos (fixos ou variaveis) poderiam ser visualmente interessantes

Eu creio que naquele vídeo eu exagerei um pouco em algum pensamento de design sobre a tela em contradição a um site Web tradicional que tem áreas totalmente fixas. De fato, acho que dá pra pensar em N maneiras criativas de se propagar identidade, talvez até um tipo de marca d'agua no cantinho ou mesmo de vez em quando aparecer alguma identidade em forma animada. Acho que a mensagem que tentei passar naquele momento foi de que os espaços passam a ter utilização dinâmica. Ou seja, se algo como um logo precisasse ficar 100% mostrando, este poderia ser colocado como um adesivo na lateral TV, por exemplo. Enquanto que em um site, que é acessado por usuários que não estão na localidade, um logo na home page pode ser múito importante. É que as vezes, devido ao sistema ser baseado em padrões Web, passa uma idéia de que um design de um site tradicional é o que se deve fazer nele. De fato acho que vamos entender melhor com o tempo como esta experiência vai se comportar pois parece ser algo realmente entre a Web e a TV tradicional.

Edson - vai haver um espaço de publicação bem aberta, como aquela que vc instanciou num evento do INCT, ano passado? Seria interessante o pessoal poder publicar twitts, durante a primeira semana, sobre atividades interessantes (do ponto de vista deles). Vai haver espaço para publicação de twitts? E de imagens from somewhere else?

Legal. Vejo que os exercícios de colocar estes espaços estão revelando o potencial de interações das pessoas. Me parece que além de simplesmete refletir o que aconteceu, dependendo dos tipos de visualizações o sistema vem fomentando a possibilidade de novos acontecimentos. Andei pensando também em casos utilizando-se projetores naquele espaço aberto entre o 'CISC', a nova biblioteca e o bloco 1. Eu imaginei um tipo de placa de acrílico em branco com formatos amorfos e alguns projetores passando as imagens nestas. As interações da comunidade nestas formas aformas pode ser algo que vai mudar a percepção das pessoas. Dependendo do cenário alunos vão poder apresentar trabalhos nestes ambientes, contar uma história utilizando-se das paredes, árvores, placas etc.

Edson - caso haja mesmo algo do tipo, que grau de controle pode ser inserido? E se o pessoal (alunos) começarem a publicar coisas embaraçosas, só para detonar?

De fato podemos aplicar filtros em tempo de execução. Este cenário não é muito diferente do cenário que você comentou onde um professor leva alguns alunos em um evento e quer que a tela cubra o evento. Se for definido um controle para dar atenção para um dado evento, podemos utilizar canais similares mas com o objetivo de tirar atenção de outro evento. Assim, tanto filtro como promoção passam a existir utilizando-se do mesmo tipo de canais de controle, como por exemplo uma página fechada em um wiki ou mesmo um canal tipo twitter de um usuário, ou mesmo uma página RSS na própria intranet.

Não cobrimos estes casos ainda. Acho que depois do cenário de inserção/remoção de layout, poderemos tentar fechar este caso de filtro ou atenção em função de acontecimentos. Em momento inical o filtro poderá ser efetivado via editando-se o wiki e salvando.

Apectos relacionados ao Código e Marca TelaSocial

Esta página refere-se ao projeto de implantação e customização do sistema TelaSocial no contexto do ICMC-USP. Para maiores informações sobre este projeto visite o site ICMC-USP ou informações sobre o TelaSocial, o projeto e sistema de software, visite a home do site www.telasocial.com ou o link FAQ abaixo.

Informações sobre o TelaSocial

Para maiores informações sobre o projeto TelaSocial, visite o link do projeto do sistema de software para quiosques online.

Copyright © 2009 Taboca
Template Design Credits - jyryk

Mais..