Trabalho de Formatura Supervisionado (MAC499)




Instituto de Matemática e Estatística
da Universidade de São Paulo (IME-USP)




Estágio na Rede SACI - Solidariedade, Apoio, Comunicação e Informação




Alunos: Levi Fukumori

Professor Supervisor: Kunio Okuda


Dedico esta minha monografia a Deus primeiramente;
aos meus pais Luiz Hiroshi Fukumori e Toshie Fukumori e minha irmã Irina Fukumori pelo amor incondicional;
aos amigos Adriano Lopes Pereira, Cláudio Seishi Kobiraki, Claudia Megumi Fushiki, Cristina Junko Yamashita, Ligia Yae Habu, Livga Un Ae Kim, Regina Hitomi Nakashima e Shino Shoji a todo apoio que me deram neste ano de 2002.

Índice


A Rede SACI

A Rede SACI é uma realização da Coordenadoria Executiva de Cooperação Universitária e de Atividades Especiais da Universidade de São Paulo (CECAE-USP), da Rede Nacional de Ensino e Pesquisa (RNP), do Amankay Instituto de Estudos e Pesquisa, e do Núcleo de Computação Eletrônica da Universidade Federal do Rio de Janeiro (NCE-UFRJ). Conta com o apoio da Fundação Telefônica e da Vitae.

Além dos portadores de deficiência existem familiares, amigos, profissionais especializados, formuladores de políticas públicas, instituições de ensino e pesquisa e organizações da sociedade civil e teremos uma parcela significativa da população envolvida, direta ou indiretamente, com a questão da deficiência.

Pensando em promover o contato entre essas pessoas e entidades, a Rede SACI disponibiliza canais de comunicação para difusão de informações sobre o tema. Com isso, a SACI visa estimular a inclusão social, a melhoria da qualidade de vida e o exercício da cidadania das pessoas portadoras de deficiência.

Suas principais ferramentas de trabalho são a Internet e os Centros de Informação e Convivência (CICs). Por meio da Internet, disponibiliza aos seus usuários endereço eletrônico, suporte técnico, softwares adaptados para deficientes, além de bases de dados, listas de discussão, agenda de eventos, entre outros serviços. Já os CICs são locais de fácil acesso, abertos a portadores de deficiência, onde são ministrados cursos gratuitos de capacitação para o uso da Internet e da Informática.

A Rede SACI nasceu em agosto de 1999 e, três meses depois, seu primeiro fruto estava na Internet: www.saci.org.br. Mas, na verdade, o conteúdo do site e a história da SACI já vinham sendo escritos há muito tempo.

Em 1992, a RNP, projeto especial do Ministério da Ciência e Tecnologia, iniciava esforços para ampliar o acesso à Internet para outros setores da sociedade, além da comunidade acadêmica. Como resultado dessa iniciativa, em 1994 nasceu a RENDE - Rede Nacional de Comunicação entre Portadores de Deficiência, em parceria com a USP-CECAE e com o apoio fundamental de Vitae, contando ainda com a colaboração do NCE-UFRJ. Tratava- se de um projeto ousado. Com a RENDE, os portadores de deficiência visual tiveram serviços de correio, jornal e mural eletrônicos. Com Nós Locais em São Paulo, Campinas e Santo André, a RENDE atendeu aproximadamente 150 usuários cadastrados em 11 Estados do país.

Na medida em que os computadores tornavam-se mais acessíveis à população e a Internet começava a ganhar espaço no Brasil, criavam-se as condições necessárias para o surgimento de um novo projeto que, integrado a essas iniciativas pioneiras, uniria informação e tecnologia a serviço dos portadores de deficiência. Surgia a Rede SACI, que tomou emprestado o nome do famoso personagem do folclore brasileiro por admirar suas qualidades: mesmo sendo portador de deficiência física, leva uma vida agitada e com bom humor.


O ambiente de trabalho

Podemos dividir a Rede SACI em quatro partes específicas que caracterizam a equipe:

A equipe Web

Composta pelos responsáveis em manter o site e toda a infra-estrutura computacional. Atualmente essa equipe é formada pelos seguintes membros:

Adriano Lopes Pereira
Administrador da rede de computadores e suporte técnico a usuários internos e externos. Encarregado de cuidar dos servidores, fazer manutenções nas máquinas cliente e deixar a rede sempre funcional e ativa.
Ana Maria E. C. Barbosa
É a supervisora de comunicação e coordenadora do conteúdo do site. Por ela passa todas as informações como notícias, eventos, oportunidades de trabalho etc. Faz a distribuição da maioria das tarefas para o pessoal que trabalha diretamente com o site.
Danton Nunes
Consultor técnico. Colabora periodicamente e ajuda em toda a parte técnica da rede. Relaciona-se muito com o Adriano na manutenção dos servidores.
Levi Fukumori
Como programador eu atuo no suporte e desenvolvimento de programas relacionado com site da Rede SACI. Também atuo na área de webdesign mais especificamente com a implementação da acessibilidade no site.
Livga Un Ae Kim
Webdesigner responsável pela parte gráfica do site. Também faz a manutenção do conteúdo das páginas e trabalha desenvolvendo materiais impressos e camisetas.
Marcela Savoy Buscato
Jornalista, atua diretamente ligado a Ana provendo conteúdo como notícias e eventos para o site.
Renato Kosaka Araujo
Auxiliar na administração atua juntamente com o Adriano em menor escala. Trabalha como programador focado no programa Rapadura e me auxilia de vez em quando.

A equipe Atende

São todas as pessoas envolvidas pelo atendimento ao público. Lidam com os portadores de deficiência assim como familiares e amigos provendo as informações requisitadas através do email ou telefone. Também atendem empresas fornecendo dados sobre legislação relacionados com deficiência.

Apesar de fazer parte da Rede SACI esta equipe é um dos tipos de usuários que forcecemos o suporte técnico. Trabalham em uma sala separada da equipe Web.

A gerência

Grupo formado pelos coordenadores e responsáveis da Rede SACI. Destaque para Marta Gil que é gerente e coordenadora do projeto. Ela é a principal representante da Rede SACI fazendo contatos com patrocinadores e parceiros. Comunica-se com entidades relacionadas na questão da deficiência e também com a mídia (televisão, jornal, rádio, internet). Apesar de fazer parte da gerência é a única que trabalha no mesmo espaço físico da equipe Web.

Os parceiros

Compostos por pessoas que não estão ligados diretamente aos grupos citados anteriormente mas tem um papel muito importante para a Rede SACI. Os principais são:

Clorisval Pereira Junior
Webdesigner da RNP é consultor e auxiliou aplicando uma avaliação no site antigo da Rede SACI e sua posterior reconstrução no site novo.
Gabriel Vicalvi
Usuário cego é um dos contatos que mais atua na rede. É um dos desenvolvedores do programa de chat que a Rede SACI utiliza em seu site.
Renato B. C. Laurenti
O Repórter SACI é deficiente físico e colabora na elaboração de reportagens sobre acessibilidade física. Sempre faz contato e periodicamente visita a equipe Web.

As Atividades

Uma descrição do desenvolvimento dos programas Akemi e Izumi e um relato sobre acessibilidade virtual.

Akemi

O Akemi é um programa de submissão e gerenciamento de conteúdos para o site da Rede SACI.

História

O programa Akemi foi desenvolvido a partir de uma necessidade da Rede SACI em automatizar o gerenciamento do conteúdo do site.

No início todas as páginas eram feitas manualmente criando-se arquivos estáticos. É importante saber como este processo era feito. A jornalista escrevia ou procurava as notícias que seriam colocadas no site naquele dia. Enviava através de email para a Ana que fazia uma triagem e reenviava para a jornalista até que o conteúdo estivesse pronto para ser colocado na página. Feito isso, um outro email era enviado onde ou eu, ou a Livga, gerava esta página com o conteúdo. Por fim os arquivos eram submetidos através do ftp no final do dia e a Ana enviava um resumo destas notícias para a lista de usuários.

Vendo que este processo despendia um tempo enorme comecei a desenvolver inicialmente o Akemi em Perl com alguns formulários de preenchimento padrão dos dados do site e um gerenciador simples destes conteúdos que no final criavam as mesmas páginas estáticas.

Assim que o programa entrou no ar fez um grande sucesso alterando todo o sistema de trabalho e acelerando na criação e desenvolvimento das notícias. Mesmo assim o sistema ainda era na sua maior parte feito manualmente como na atualização das páginas através do ftp e posterior manutenção destes conteúdos.

Pensando neste problema e como estava cursando a matéria de banco de dados resolvi pesquisar um meio de automatizar todo este processo tornando-o mais simples e rápido. Nesta época comecei a aprender PHP também e com isso o MySQL foi adotado juntamente por ser largamente utilizado com esta linguagem. Foram gastos cerca de três meses para concluir a segunda versão do Akemi.

Esta versão possibilitou um controle melhor do conteúdo com o armazenamento feito em banco de dados. Possuía uma linguagem interna restrita para gerar códigos HTML dentro do conteúdo deixando a jornalista livre do conhecimento técnico e trabalhando focada na sua matéria. Com isso todo o esquema de trabalho foi modificado novamente. A jornalista começou a trabalhar diretamente na própria interface do Akemi criando as notícias ou eventos e submetendo-as pelo programa. Estes por sua vez eram tratados pela Ana através do gerenciador contido nele e que submetia o conteúdo diretamente ao site e ainda gerando o email com o resumo destas notícias que a Ana recebia e repassava para a lista dos usuários.

O programa estava funcionando porém logo começou a apresentar vários problemas. Um deles é o controle de concorrência que foi ignorado e com isso algumas notícias submetidas estavam sendo perdidas. Outro grande problema enfrentado é que pela linguagem interna do Akemi ser muito restrita, impedia a criação de páginas com recursos um pouco mais sofisticados como tabelas por exemplo.

A terceira versão está em desevolvimento atualmente e corrige todos os problemas apontados e com novas funcionalidades como por exemplo um corretor léxico embutido.

Muita gente tem me perguntado o porquê do nome Akemi para o programa. Ao contrário do que as pessoas pensam não existe nenhuma relação com o significado ou alguma abreviação de algum outro nome. Escolhi apenas porque resolvi adotar nomes próprios femininos japoneses nos programas que eu desenvolvo.

Funcionalidades

Atualmente o programa conta com 6 partes distintas:

Editor
Formulário para criação ou edição de artigos, boletins, cursos, concursos, depoimentos, eventos ou notícias. Também tem um tipo especial chamado genérico usado para confecção de páginas fixas do site. Somente o pesquisador do Akemi não tem o acesso aos formulários de edição.
Gerenciador
Navegação entre os diversos conteúdos do site. Com ele o gerente de conteúdo ou o administrador do programa tem o poder de enviar ou retirar uma notícia do site. A jornalista também utiliza o gerenciador com um pouco de restrições tranformando o estado dum conteúdo "em edição" para "esperando" revisão.
Busca
Ferramenta muito utilizada serve para recuperação de conteúdos. Pode ser pesquisado através do número da matéria, do estado em que a matéria se encontra, do tipo da matéria (notícia, evento etc.). A pesquisa ainda pode ser feita usando palavras chaves.
Administração do programa
Apenas possui a funcionalidade de criar e gerenciar usuários atualmente. Somente o administrador do programa tem acesso a esta área.
Configuração
Com ela o usuário do Akemi pode modificar a sua senha, nome, e algumas outras configurações não muito importantes.
Ajuda
Contém informações relevantes para usar o Akemi corretamente apesar de ser pouco utilizado.

Imagens

Tela de login do Akemi
Tela de login do Akemi.


Tela principal após fazer o login
Tela principal após fazer o login.


Parte da tela do editor de notícias
Parte da tela do editor de notícias.


Gerenciador de conteúdos. Na parte inferior os conteúdos em edição
Gerenciador de conteúdos. Na parte inferior os conteúdos em edição.


Uma pesquisa na Busca com alguns resultados
Uma pesquisa na Busca com alguns resultados.


Imagem da tela de administração dos usuários
Imagem da tela de administração dos usuários.

Izumi

O Izumi é um programa de gerenciamento de portais para intranet e internet usado no site da Rede SACI.

História

O programa Izumi partiu de uma idéia minha para controlar e gerenciar um site pessoal. Ao contrário do Akemi ele inicialmente não tinha nenhuma relação com a Rede SACI. Naquele período o Izumi não tinha nenhum recurso em especial. Possuía uma funcionalidade precária de um sistema de cadastramento de usuários e postagem de notícias. Apenas uma simples idéia de modularidade no programa chamava a atenção.

Neste mesmo perído a Rede SACI estava reestruturando o conteúdo do seu site através da equipe de Conteúdo (basicamente a equipe Atende mais a jornalista coordenados pela Ana e Marta). Após a reformulação, vimos que, para o site se comportar conforme o desejo da equipe de Conteúdo, necessitaria de uma completa mudança na estrutura em que ele se apresentava. Na época o site era parcialmente gerenciado pelo Akemi, a outra parte ainda era feito manualmente. Existia também a idéia de mudar o visual do site em comemoração aos 2 anos de Projeto Rede SACI.

Para isso um estudo aprofundado foi feito levando-se em consideração o tempo que tínhamos de desenvolvimento, a idéia de adotar um programa CMS como o PostNuke para gerenciar o site adaptando o Akemi no meio e o sonho de se colocar o conteúdo reformulado neste site.

Com todos estes requisitos em mente tive que tomar uma decisão. Como a idéia de usar o PostNuke necessitaria de um grande aprendizado do programa para começar a desenvolver e depois adaptar o Akemi e, mesmo assim, não atenderia completamente o desejo da reestruração do conteúdo resolvi criar um outro CMS, mais simples, fácil de configurar e atendendo aos desejos citados.

Assim, veio a idéia de se acoplar no Izumi toda a funcionalidade de um gerenciador de conteúdo. Peguei algumas idéias de como o PostNuke e o PHPNuke funcionavam porém, a complexidade do código e o funcionamento não traria o resultado desejado tive que escrever praticamente tudo desde o início.

Depois de quase dois meses trabalhando tinha a primeira versão do programa funcionando que foi usado para construir o portal. Estava separado em módulos, permitindo uma grande flexibilidade e possibilitando a criação e o desenvolvimento facilitado de novas funcionalidades, tinha o banco de dados abstraído usando o ADODB que tornaria o código compatível com uma grande quantidade de bancos de dados, possuía o suporte a temas usando templates e multi-idiomas tornando a ferramenta um pouco mais atrativa.

Logo que o portal entrou no ar tivemos muitos problemas e com isso várias emendas foram sendo feitas durante a primeira semana. Depois que o programa ganhou uma certa estabilidade iniciei a criação de uma nova versão do Izumi, corrigindo muitos erros de programação feito às pressas e otimizando o código para melhorar o desempenho. Esta nova versão demorou mais do que o previsto porém pode se dizer que é uma versão muito mais estável, confiável e bem mais intuitivo.

Características

Uma breve exposição das características do Izumi pode ser lida abaixo:

Portabilidade
Todo o código foi desenvolvido em PHP e testado nas plataformas Windows e Linux. Acredita-se que o Izumi funcione em qualquer máquina que tenha o PHP rodando.
Abstração do banco de dados
Pela alta dependência do programa com um banco de dados pode se dizer que a portabilidade oferecida usando o ADODB torna o Izumi uma ferramenta muito atrativa não ficando fixa a apenas um banco de dados. Atualmente só foi testado no MySQL porém testes no Postgress e no Acess estão previstos num futuro breve.
Modularização
Todo o código está dividido em módulos que compõe o programa. Cada módulo exceto alguns de funcionamento mínimo do programa podem ser instalados ou removidos sem maiores transtornos facilitando em muito o desenvolvimento de aplicativos.
Multi-idiomas
O Izumi possibilita criar um site em qualquer idioma bastando traduzir os arquivos do idioma padrão. Se nem todos os arquivos forem traduzidos o programa utiliza o idioma padrão.
Multi-temas
Qualquer site desenvolvido no Izumi pode trocar o seu layout com apenas um parâmetro na URL se o webmaster permitir. A criação de um tema pode ser feito através de um webdesigner modificando templates de HTML sem alterar os códigos em PHP do programa.
Orientado a objetos
Parte do código foi desenvolvido orientado a objetos tornando a manutenção facilitada e o código muito mais legível. A outra parte que não foi implementada foi para melhorar o desempenho do programa.
Código fonte muito bem comentado
Uma dos maiores problemas na computação é a manutenção de código fonte sem nenhum comentário. Sob este aspecto o Izumi está preparado com muitos comentários no código fonte.
Licença gratuíta
O Izumi é gratuíto sob a licença GNU-GPL. Ainda não existe nenhuma versão disponível mas será criado assim que um pacote possibilitar um usuário sem muitos conhecimentos de PHP puder operar.

Imagens

Página principal da Rede SACI usando o Izumi
Página principal da Rede SACI usando o Izumi.


A mesma página só que com um tema diferente. Apesar da brincadeira, é importante ver como fica fácil tranformar o visual do site
A mesma página só que com um tema diferente. Apesar da brincadeira, é importante ver como fica fácil tranformar o visual do site.


Com a mesma página só que usando outro idioma, no caso o japonês
Com a mesma página só que usando outro idioma, no caso o japonês.


Desta vez usando recursos de acessibilidade para aumentar o texto e usando um fundo escuro
Desta vez usando recursos de acessibilidade para aumentar o texto e usando um fundo escuro.

Acessibilidade Virtual

Acessibilidade virtual não foi um programa desenvolvido. Esta atividade consiste na pesquisa e aplicação para tornar uma página acessível. Desde que entrei na Rede SACI as coordenadoras sempre alertavam sobre este tópico que até então eu desconhecia.

Achava que acessibilidade significava rampas para as cadeiras de rodas, transcrições em braile para pessoas cegas e transcrições em Libras para os surdos. Isso não deixa de ser acessibilidade porém o que eu e muita gente não imaginava é que existe um outro tipo de acessibilidade, a virtual.

E nisso que a Rede SACI tem trabalhado possibilitando que todas as pessoas tenham acesso à informação. Neste contexto, todos nós somos afetados e não apenas as pessoas com algum tipo de deficiência. Para exemplificar, imagine o seu micro sem o mouse. Se você não conseguir trabalhar nele utilizando apenas o teclado saberá claramente o que falta de acessibilidade virtual.

Foi mais ou menos assim que aprendi a trabalhar com acessibilidade. Só que no meu caso tive que navegar pelo site da Rede SACI usando um navegador com sintetizador de voz e com o monitor desligado. Essa experiência pode ser dura, mas é assim que cegos utilizam o computador.

Com o tempo fui aprendendo a lidar com vários problemas de acessibilidade. Não existe apenas um tipo. Desenvolver páginas para cegos é muito diferente de montar páginas para pessoas com visão subnormal (a pessoa tem mais de 80% de perda visual) assim como para quem tem daltonismo ou ainda quem tem dificuldade motora. E a idéia da Rede SACI com a inclusão social é possibilitar que todas estas pessoas possam navegar no site da Rede SACI e mais ainda que tivesse um visual atraente.


Desafios e frustrações

O maior desafio que tive que enfrentar na Rede SACI foi quando eu entrei. A pessoa que eu estaria subordinado (um outro aluno do IME) recebeu uma proposta de uma empresa e acabou saindo. Com isso, fiquei sendo a única pessoa da área de informática e tive que cuidar de tudo, desde os servidores até a confecção das páginas. Passado algum tempo a Rede SACI contratou um administrador de redes que além de ser um colega de turma (Breno Pompeu Roberto) foi muito competente e possibilitou que eu exercesse o cargo no qual inicialmente fui contratado e gerando um grande alívio.

Outro grande desafio foi o de coordenar, planejar e implementar os projetos. Na faculdade sempre recebemos os pré-requisitos para desenvolver os programas e apartir deles escrevemos os códigos. Já na SACI tive que descobrir quais eram as reais necessidades, pois nem tudo o que era pedido tinha realmente alguma importância. Saber planejar de qual maneira seria melhor e mais eficiênte para desenvolver o produto. Programar de forma que se alguma outra pessoa entrasse no lugar ela pudesse dar continuidade ao projeto sem ter que reconstruir tudo do zero.

Cito também o desfio de construir páginas acessíveis para a Rede SACI. Esta atividade até que não é muito complicada já que seguindo as recomendações da W3C você desenvolve uma página totalmente acessível só que com um formato parecido com a desta monografia. O desafio consistia em aplicar estas regras trabalhando com a webdesigner voltada para o desenvolvimento artístico desprovido deste conhecimento técnico.

As frustrações foram várias. A primeira foi a mesma que o maior desafio. Outra grande frustração é o de não poder contar com alguém que pudesse trabalhar junto desenvolvendo programas. Isso tornou o meu trabalho um tanto penoso e a ajuda só veio depois de um ano e mesmo assim não trabalhou exatamente no mesmo projeto (ficou encarregado de desenvolver o Rapadura).

Uma outra frustração foi o tempo dado para desenvolvimento. Apesar de eu planejar com certa folga quase todo o dia surgiam muitos imprevistos que impedia de eu desenvolver e ficar "apagando incêndios" do dia. Isto me irrita muito e até hoje ainda existe esse problema.


Integração com o IME

O IME forneceu uma base muito sólida de conceitos e princípios que no início do curso eu não dava a devida importância. Certamente ainda me pergunto da relevância de determinadas matérias no curso serem obrigatórias, porém como a formação acadêmica é dar uma base geral para o aluno não discuto muito.

Abaixo vou listar as matérias e o porquê que eu identifiquei como sendo importantes:

MAC 110 - Introdução à Computação
MAC 122 - Princípios de Desenvolvimento de Algoritmos
Fundamental para a programação. Utilizei muitos conceitos de algoritmos e técnicas de programação.
MAC 211 - Laboratório de Programação I
MAC 242 - Laboratório de Programação II
Fixação e aplicação dos conceitos aprendidos nas matérias introdutórias. Também aprendi a manipular espressões regulares e trabalhar com o Perl.
MAC 323 - Estrutura de Dados
Apesar de não ser o objetivo principal desta matéria, foi graças a ela que compreendi a programar orientado a objetos em Java.
MAC 426 - Sistemas de Bancos de Dados
Um dos melhores cursos do IME forneceu a base e o conhecimento suficiente para trabalhar com banco de dados.
MAC 332 - Engenharia de Software
Muito útil também auxiliou bastante no desenvolvimento dos projetos que eu desenvolvi.

Outras matérias que eu acharia relevantes também se tivesse cursado seriam:

MAC 446 - Princípios de Interação Homem Computador
Pela aplicação direta de acessibilidade virtual presente no meu trabalho.
MAC 433 - Administração de Sistemas UNIX
Por trabalhar direto com servidores Linux e depender menos dos administradores para executar tarefas simples.

Planos futuros

Apesar da Rede SACI ser um grande projeto não pretendo trabalhar por muito tempo como funcionário. Mas isso não quer dizer que eu estarei abandonando o projeto, muito pelo contrário ainda prentedo trabalhar e contribuir muito com a Rede SACI.

Continuar desenvolvendo o programa Izumi será uma das prioridades que, além de ser um projeto pessoal a SACI está usando no seu portal e outras pessoas estão interessadas no programa.

Colaborar aprimorando o Akemi também está nos meus planos. Mesmo o código fonte ser estar bem comentado não tive tempo para implementar muitas das idéias almejadas inicialmente.

Contribuir com treinamentos e cursos sobre acessibilidade estão previstos. Esta parte que não está focado tanto na programação não foi devidamente documentado e está basicamente nas experiências adquiridas com o tempo e terei que passar de alguma maneira.


Considerações finais

Desde o início que entrei no IME tentei ao máximo focar a minha formação para a área de desenvolvimento ligado à internet. Apesar disso, tive muitas matérias indesejadas como estatística, física e álgebra que não tinha nada haver com o que eu queria e mesmo assim fui obrigado a fazer. Sei que o curso serve para uma formação básica do aluno mas mesmo assim acho que uma reavaliação na carga horária de determinadas matérias seriam muito bem vindas.

Uma outra observação que faço é em relação aos projetos desenvolvidos durante o curso. Tirando a matéria de programação extrema não vi nenhuma aplicação dos projetos desenvolvidos no IME pelos alunos. Algumas iniciativas como a Arca e seus programas poderiam ser desenvolvidos durante algum curso, não em projetos como atualmente funciona. A Rede SACI por exemplo têm muitas idéias de programas que precisam ser desenvolvidos. Para ser ter uma idéia, o Kit SACI 1 que é um conjunto de programas usado por deficiêntes visuais contendo sintetizador de voz foi desenvolvido pelo NCE da UFRJ e a sua versão completa tem que ser pago e isso me deixa muito indignado. Porque o IME com toda a capacidade que tem não poderia desenvolver programas como o DosVox (versão completa do Kit SACI 1, desenvolvido em Turbo Pascal 7 para Windows) e que seja melhor funcionando até em Linux?

Por fim agradeço muito a Rede SACI e ao IME por aplicar e aprimorar os meus conhecimentos, contribuir socialmente e ainda ganhar dinheiro.


Referências

Rede SACI - Portal da Rede SACI - http://www.saci.org.br/

PHP - Página do PHP com documentação - http://www.php.net/

MySQL - Página do MySQL com documentação - http://www.mysql.com/

Apache - Página do Apache com documentação - http://www.apache.org/

ADODB - Página da biblioteca ADODB com tutorial e documentação - http://php.weblogs.com/ADODB

PostNuke - Página do programa PostNuke - http://www.postnuke.com/

PHPNuke - Página do programa PHPNuke com documentação - http://www.phpnuke.org/

World Wide Web Consortium - Página do World Wide Web Consortium com diretivas sobre acessibilidade, HTML, CSS, XML e muito mais - http://www.w3.org/

Bobby - Página para validação sobre acessibilidade do código HTML - http://www.cast.org/bobby

Código Livre - Repositório no estilo SourceForge brasileiro - http://www.codigolivre.org.br/

Izumi - Página do programa Izumi - http://codigolivre.org.br/projects/izumi/

CygWin - Projeto para portar o linux no Windows - http://www.cygwin.com/


Valid XHTML 1.0! | Valid CSS! | Level Triple-A conformance icon, 3C-WAI Web Content Accessibility Guidelines 1.0 | Bobby WorldWide Approved AAA
Trabalho de Formatura Supervisionado (MAC499)
Levi Fukumori - levi@fukumori.com.br
Última Atualização: 9/12/2002 22:48:14