410 likes | 488 Views
Desenvolvendo Aplicações Web 2.0 que Funcionam. Eduardo Ferreira dos Santos eduardo.edusantos@gmail.com. O que é Web 2.0?. Por que existe a Internet? Por que alguém teria a idéia de conectar todos os computadores do mundo? No início, existiam duas categorias de sites:
E N D
Desenvolvendo Aplicações Web 2.0 que Funcionam Eduardo Ferreira dos Santos eduardo.edusantos@gmail.com
O que é Web 2.0? • Por que existe a Internet? Por que alguém teria a idéia de conectar todos os computadores do mundo? • No início, existiam duas categorias de sites: • Publicar o conteúdo na Internet (Web Publishing): HTML estático; • Aplicações para a Internet (Web Based Applications).
Web Publishing • Podem ser chamados de “revistas eletrônicas”; • Ex.: Catálogo de produtos de uma companhia • A tecnologia por trás é apenas um detalhe; • Principal pergunta: por que um usuário acessaria o seu site?
Web Based Applications • Sites que realizam ações para o usuário; • Ex.: Guardar registros de vacinas e enviar um e-mail quando a data da vacina chegar; • Se baseia no desenvolvimento de tecnologias que rodem na Web; • Principal pergunta: quais ações são possíveis ao usuário quando acessar o site?
Web 2.0 • “Web 2.0 é uma série de aplicações que propiciam e potencializam a formação de redes sociais digitais. Redes sociais são coletivos de pessoas e agentes que interagem direta ou indiretamente entre si e constroem certos padrões recorrentes de relacionamento e comportamento” - Abel Reis
Web 2.0 • Nesse contexto, como desenvolver aplicações para a Internet?
Web 2.0 • Nesse contexto, como desenvolver aplicações para a Internet? • Levar em conta a opinião do usuário: Blogs
Web 2.0 • Nesse contexto, como desenvolver aplicações para a Internet? • Levar em conta a opinião do usuário: Blogs • Levar em conta o conteúdo produzido pelo usuário: Youtube
Web 2.0 • Nesse contexto, como desenvolver aplicações para a Internet? • Levar em conta a opinião do usuário: Blogs • Levar em conta o conteúdo produzido pelo usuário: Youtube • Levar em conta os sites que o usuário visita: del.icio.us
Web 2.0 • Nesse contexto, como desenvolver aplicações para a Internet? • Levar em conta a opinião do usuário: Blogs • Levar em conta o conteúdo produzido pelo usuário: Youtube • Levar em conta os sites que o usuário visita: del.icio.us • Armazenar tudo isso e vender para os outros: Google
Web 2.0 • O que ainda não foi feito em termos comerciais?
Web 2.0 • O que ainda não foi feito em termos comerciais? Utilizar a rede para construir conhecimento colaborativamente
Web 2.0 • Exemplos existentes: • Wikipédia e Wikis em geral;
Web 2.0 • Exemplos existentes: • Wikipédia e Wikis em geral; • Orkut;
Web 2.0 • Exemplos existentes: • Wikipédia e Wikis em geral; • Orkut; • MySpace;
Web 2.0 • Exemplos existentes: • Wikipédia e Wikis em geral; • Orkut; • MySpace; • Etc etc etc etc etc...
Aplicações Web 2.0 • Qual é a principal vantagem de apenas publicar conteúdo?
Aplicações Web 2.0 • Qual é a principal vantagem de apenas publicar conteúdo? $$$
Aplicações Web 2.0 • Qual é a principal vantagem de apenas publicar conteúdo? • Fazer um site estático pode ser praticamente grátis; • É possível fazer dinheiro com aplicações para a Internet?
Aplicações Web 2.0 • Construindo um modelo de negócios para o seu serviço de Internet: • O que ele faz? • Quanto custa? • Quanto posso cobrar por isso? • Quem estaria disposto a pagar?
Aplicações Web 2.0 • Aí vem a pergunta de 1 milhão de dólares:
Aplicações Web 2.0 • Aí vem a pergunta de 1 milhão de dólares: Como desenvolver algo que faça tudo isso?
Aplicações Web 2.0 • Já existe uma aplicação que faz quase tudo isso: OpenACS
OpenACS • Foco principal: organizar, desenvolver e gerenciar a informação produzida pelos internautas; • Prover soluções seguras para tudo isso; • Reduzir o trabalho humano no processo; • Agregar o maior número possível de soluções na mesma plataforma.
OpenACS • Exemplos: • dotLRN como ferramenta para gestão do conhecimento: • Portal do Software Público Brasileiro; • Centro de Aprendizagem Trabalho e Inovação em Rede (CATIR) • Comunidades de Prática da Tecnologia dos Correios (COPTEC)
OpenACS • Exemplos: • dotLRN como ferramenta de e-learning: • Universidade Corportativa Alberto Pereira de Castro (UCA) • Universidade Aberta da Espanha (UNED); • Consórcio e-lane;
OpenACS • Exemplos: • LRN@WU: • Universidade de Vienna na Áustria
OpenACS • Exemplos: • XoWiki • Universidade de Vienna na Áustria; • Integração com Podcasts; • Gráficos de colaboração;
OpenACS • Exemplos: • Bug-tracker, Ticket-tracker e Workflow • Ferramenta para gerência de projetos de software; • Exemplo de workflow simplificado; • Possibilidade de gerência da agenda de trabalho; • Gerência de tickets; • Possibilidades de implementação.
OpenACS • Exemplos: • ]Project Open[ • Módulo ERP (Enterprise Resource Planning) do OpenACS; • Objetivos: administração dos custos e colaboração entre os membros da equipe; • Wiki e chat integrados; • Módulo de workflow específico; • Gerência de “papéis” na empresa.
OpenACS • Você pagaria por isso?
OpenACS • Você pagaria por isso? • Além de você, quem mais pagaria?
OpenACS • Como é a estrutura de desenvolvimento da ferramenta?
OpenACS: Estrutura • Como é a estrutura de desenvolvimento da ferramenta? • XQL query dispatcher: independência do banco de dados; • Service Contract API • Reusabilidade de código; • Integração de aplicações; • Extensibilidade de pacotes; • PostgreSQL
OpenACS: Estrutura • OpenACS-Core: • Registro e gerenciamento de usuários (Parties Object System); • Subsites (Community Object System); • Registro e gerenciamento de aplicações (APM); • Gerenciamento de conteúdo (Content Repository); • Internacionalização / Localização.
OpenACS: Estrutura • Modelo MVC: • Independência entre código e design (ATS); • Request Processor; • Cache de queries; • Visualização aprimorada.
OpenACS: Estrutura • Request Processor
OpenACS: Comunidade • Como tudo isso é mantido?
OpenACS: Comunidade • Como tudo isso é mantido? • OCT; • Gerenciamento de código fonte; • TIPs (Technical Improvement Proposals); • Projetos; • Bug-tracking; • Aporte de código (voluntário e comercial).
Referências • http://philip.greenspun.com/panda/ • http://ultimosegundo.ig.com.br/mundo_virtual/2007/02/28/evento_em_sao_paulo_discute_web_20_696692.html • www.softwarepublico.gov.br • www.openacs.org
Contatos • www.softwarepublico.gov.br • eduardo.edusantos@gmail.com