language

Um pouco de História

O Tinn-R

O projeto teve início em meados/2003, seis meses após o atual coordenador do projeto (ACP) ter conhecido o ambiente R. Em agosto/2003 ele havia decidido que adotaria o R como principal ferramenta no ensino da estatística (sua principal atividade) e também em análises de dados (segunda principal atividade).

Os objetivos iniciais do projeto em relação ao R foram três:

  • - Desenvolver um Editor/GUI simples e flexível sob o sistema operacional Windows
  • - Prover facilidades de uso para os alunos nos cursos de graduação e pós-graduação em estatística
  • - Facilitar as tarefas do ACP relativas ao ensino e análise de dados no ambiente R

Após o ACP ter testado a quase totalidade das GUIs então disponíveis:

assim como os editores mais conhecidos que ofereciam recursos para interagir com o R:

ele percebeu que não se adaptava bem às GUIs nem aos editores testados. Mais ainda, preocupava-o as dificuldades relacionadas ao ensino (instalação, configuração e uso) nos laboratórios de estatística computacional.

Entre esses, o Emacs + ESS era o mais conhecido, recomendado e usado por usuários experientes. Entretanto, de configuração e uso difícil para o usuário iniciante (público principal no ensino da estatística computacional relativa ao R) ou ocasional. Adicionalmente, a interface não era agradável aos usuários acostumados com a rica interface gráfica proporcionada pelo Windows. Pode-se observar que alguns projetos eram ainda incipientes, enquanto outros estavam com problemas de continuidade.

O ACP imaginou que poderia personalizar um editor acrescentando-lhe as funcionalidades que satisfizessem às necessidades de uma GUI. Como programava a muitos anos em Object Pascal, seria interessante partir de um editor de código aberto (open source), escrito nesta linguagem, e adaptá-lo às necessidades.

Após buscas na internet e testes preliminares, foram selecionados seis editores desenvolvidos sob a IDE Delphi da então Borland (atualmente Embarcadero).

A segunda etapa consistiu de testes de performance e estabilidade. Finalmente dois projetos foram selecionados:

  • - Tinn, em língua Inglesa, descontinuado em 2005
  • - Notes, em língua Portuguesa, descontinuado também em 2005

Ambos possuíam as características básicas necessárias de um editor. Entre eles, o Tinn (Tinn Is Not Notepad) apresentou maior simplicidade estrutural, melhor performance e maior estabilidade, o que motivou sua seleção final.

Embora os recursos básicos de um editor genérico e simples já tivessem sido implementados pelos desenvolvedores, havia muito ainda o que se fazer: tanto em relação ao editor quanto a futura GUI. O pequeno grupo de desenvolvedores do Tinn foi comunicado (embora isto não seja uma exigência dos softwares sob a Licença Pública Geral - GPL) da intenção de implementar novos recursos. Trabalhou-se juntos no código fonte do editor Tinn por cerca de cinco a seis meses até que percebeu-se, dado às novas necessidades, que não seria possível mantê-lo genérico, segundo a concepção original do projeto Tinn. A partir de então (novembro de 2003) teve início um novo projeto: Tinn-R.

Em dezembro/2003 as características básicas que permitiam a comunicação com o ambiente R haviam sido implementadas e o programa já era usado pelo ACP para as análises. Seria também usado nas aulas de estatística de um curso de mestrado na UESC/PPGPV (ainda em preparação e com início das aulas marcado para março/2004).

Em Janeiro/2004 foi enviada uma cópia de apresentação e avaliação para o então coordenador dos projetos GUI da CRAN (The Comprehensive R Archive Network), Dr. Philippe Grosjean. O projeto recebeu muitos elogios e uma série de sugestões, tendo sido essas (em grande parte) implementadas em curto prazo. Outras (devido a complexidade) somente a longo prazo.

Numa etapa posterior, decidiu-se pela sua disponibilização para os usuários R na home page SciViews-R, mantida por Philippe. O nome do projeto (Tinn-R) foi uma das sugestões do Philippe. Dessa forma, a primeira versão disponibilizada foi a 0.0.8.8 r1.04 (Jan/2004). Os autores eram então José Cláudio Faria e Marcos de Groot. Marcos era um dos membros remanescentes da equipe original do projeto Tinn, Philippe era então colaborador. Esta foi a primeira versão divulgada ao púbico do projeto.

Posteriormente, devido à colaboração efetiva na definição das características do projeto, ao desenvolvimento de funções no R que permitiram uma melhor integração entre os dois programas (R e Tinn-R), Philippe foi convidado para ser co-autor do projeto. Marcos de Groot, um excelente programador em Object Pascal, como não tinha afinidades com estatística, foi se afastando do projeto ao longo do tempo, ficando como colaborador esporádico e desde 2006 não mais contribuíu.

Registrado sob a Licença Pública Geral GPL, o projeto ganhou muitos adeptos e incontáveis sugestões passaram a ser enviadas pelos novos usuários. O sucesso do projeto é atribuída à experiência de Philippe no desenvolvimento de GUIs para o R, às suas sugestões (sempre solicitando mais recursos do que o ACP estava disposto implementar), assim como a dos usuários (idem), que determinaram efetivamente a direção de seu desenvolvimento.

O projeto começou então a ser usado como editor de Editor/GUI simples, porém eficiente, nas instituições de ensino e pesquisa relacionadas à estatística e ao R. Ao longo dos anos buscou-se, dentro do tempo disponível para esta atividade, atender da melhor forma possível a demanda e as sugestões dos usuários, o que talvez seja seu grande diferencial: um programa feito por usuários para usuários.

No final de 2006, juntou-se ao projeto Enio G. Jelihovschi, como responsável pela documentação na língua Inglesa do projeto.

Em 2008 o pós-doutoramento do ACP (ESALQ/USP, sob a orientação da prof. Clarice G. B. Demétrio) como bolsista do CNPq teve como título: TINN-R - GUI/EDITOR PARA O AMBIENTE COMPUTACIONAL E ESTATÍSTICO DE CÓDIGO ABERTO R, teve dois objetivos principais:

  • - Aprimoramento e consolidação do programa sob o sistema operacional Windows
  • - Uso independente do sistema operacional (multiplataforma)

O primeiro objetivo foi cumprido na íntegra. Quanto ao segundo, estudos das principais alternativas (uso da IDE multiplataforma Lazarus e Migração para a plataforma .Net sob MONO) foram desenvolvidos. Após contatos com as equipes desenvolvedoras destes ambientes e ferramentas, assim como a realização de testes preliminares, concluiu-se que, em ambos os casos, seria uma tarefa exaustiva e de resultados finais duvidosos.

A Embarcadero, após a aquisição da linha de compiladores da Borland, tem feito esforços sérios no sentido de permitir a compilação do código em Object Pascal/Delphi para outras plataformas, além do Windows. Dessa forma vislumbra-se, a médio e longo prazo, a possibilidade de portabilidade do projeto para Linux e Mac.