Começaremos já...Saturday, March 31, 12
software livre na                         globo.comSaturday, March 31, 12
Francisco Souza                               @franciscosouza                • desenvolvedor @ globo.com                • ...
Saturday, March 31, 12
Saturday, March 31, 12
Saturday, March 31, 12
Saturday, March 31, 12
Saturday, March 31, 12
12 anos de estradaSaturday, March 31, 12
500+ mil assinantesSaturday, March 31, 12
27 times                         multidisciplinaresSaturday, March 31, 12
https://secure.flickr.com/photos/royskeane/413103429/Saturday, March 31, 12
Saturday, March 31, 12
Saturday, March 31, 12
Saturday, March 31, 12
Saturday, March 31, 12
Publicação de conteúdoSaturday, March 31, 12
https://secure.flickr.com/photos/peterkaminski/3772015/Saturday, March 31, 12
Nova plataforma de                            publicaçãoSaturday, March 31, 12
...                         Nova plataforma de                            publicaçãoSaturday, March 31, 12
http://www.oracle.com/us/corporate/customers/customersearch/globo-1-mysql-ss-406120.htmlSaturday, March 31, 12
https://secure.flickr.com/photos/eurritimia/381962013/Saturday, March 31, 12
Software livre na                           Globo.comSaturday, March 31, 12
https://secure.flickr.com/photos/pleeker/146575856/Saturday, March 31, 12
•      Aplicação          •      Banco de dados          •      Cache          •      ...                                 ...
Servidores de aplicação                     • nginx                     • Apache (PHP)                     • Tomcat (Java)...
Cache                     • Varnish (CachOS)                     • memcachedSaturday, March 31, 12
Bancos de dados                     • MySQL                     • MongoDB                     • Redis                     ...
Linguagens e                                plataformas                     • Python                     • Ruby/JRuby     ...
E mais...                     • ElasticSearch          • Django                     • Capistrano             • Tornado    ...
Um exemplo: G1                     • Como desenvolvemos e colocamos código                         do G1 em produção?     ...
Desenvolvendo                     • Quero implementar uma nova feature no                         G1! Trata-se de um widge...
Banco de dados                     • O G1 utiliza o MySQL como único banco                         de dados relacional;   ...
O código                     • O código é feito em Python, linguagem de                         programação open source;  ...
O deploy                     • Utilizamos o Capistrano para enviar o                         código da máquina do desenvol...
Quem serve a                                aplicação?                     • Todo conteúdo estático do G1 é servido pelo  ...
E muito mais!                     • Diversas bibliotecas open source para                         desenvolvimento e testes...
Software livre na                           Globo.comSaturday, March 31, 12
salve a web, por favor!                     ✴   Navegadores velhos e desatualizados não evoluem                         ju...
thumbor                     ✴   thumbor is a smart imaging service. It enables on-                         demand crop, re...
oauth2u                     ✴   This project aims to implement the complete                         OAuth 2.0 Authorizatio...
nginx-push-stream-module                     ✴    A pure stream http push technology for your Nginx                       ...
tsuru                     ✴   Tsuru is an open platform-as-a-service                         (PaaS)                     ✴ ...
E tem mais!                     •   Django                    •   wxPython                     •   Python                 ...
Saturday, March 31, 12
...Saturday, March 31, 12
Saturday, March 31, 12
Mais de 40 projetos open source nasceram na           globo.com devido às necessidades da empresaSaturday, March 31, 12
Mais de 40 projetos open source nasceram na           globo.com devido às necessidades da empresa                         ...
Mais de 40 projetos open source nasceram na           globo.com devido às necessidades da empresa                         ...
Saturday, March 31, 12
30%         Mais de ...                                                     ... dos nossos desenvolvedores                ...
Queremos aumentar                           esse número!                     • github.com/globocom/iwanttoworkatglobocom  ...
Dúvidas?Saturday, March 31, 12
Muito obrigado!                         fsouza@corp.globo.com                             @franciscosouzaSaturday, March 3...
Próximos SlideShares
Carregando em…5
×

Software livre na Globo.com

2.407 visualizações

Publicada em

Palestra apresentada no Liberdade Interativa realizado no dia 31/03/2012, em Barra de São Francisco, na região noroeste do Espírito Santo.

Publicada em: Tecnologia
1 comentário
5 gostaram
Estatísticas
Notas
  • Obrigado por compartilhar!
    Informações confiáveis como estas nos ajudam a alavancar o uso do SL em diversos lugares.
    Abs.
       Responder 
    Tem certeza que deseja  Sim  Não
    Insira sua mensagem aqui
Sem downloads
Visualizações
Visualizações totais
2.407
No SlideShare
0
A partir de incorporações
0
Número de incorporações
5
Ações
Compartilhamentos
0
Downloads
27
Comentários
1
Gostaram
5
Incorporações 0
Nenhuma incorporação

Nenhuma nota no slide

Software livre na Globo.com

  1. 1. Começaremos já...Saturday, March 31, 12
  2. 2. software livre na globo.comSaturday, March 31, 12
  3. 3. Francisco Souza @franciscosouza • desenvolvedor @ globo.com • #cobrateam member • open source fanboySaturday, March 31, 12
  4. 4. Saturday, March 31, 12
  5. 5. Saturday, March 31, 12
  6. 6. Saturday, March 31, 12
  7. 7. Saturday, March 31, 12
  8. 8. Saturday, March 31, 12
  9. 9. 12 anos de estradaSaturday, March 31, 12
  10. 10. 500+ mil assinantesSaturday, March 31, 12
  11. 11. 27 times multidisciplinaresSaturday, March 31, 12
  12. 12. https://secure.flickr.com/photos/royskeane/413103429/Saturday, March 31, 12
  13. 13. Saturday, March 31, 12
  14. 14. Saturday, March 31, 12
  15. 15. Saturday, March 31, 12
  16. 16. Saturday, March 31, 12
  17. 17. Publicação de conteúdoSaturday, March 31, 12
  18. 18. https://secure.flickr.com/photos/peterkaminski/3772015/Saturday, March 31, 12
  19. 19. Nova plataforma de publicaçãoSaturday, March 31, 12
  20. 20. ... Nova plataforma de publicaçãoSaturday, March 31, 12
  21. 21. http://www.oracle.com/us/corporate/customers/customersearch/globo-1-mysql-ss-406120.htmlSaturday, March 31, 12
  22. 22. https://secure.flickr.com/photos/eurritimia/381962013/Saturday, March 31, 12
  23. 23. Software livre na Globo.comSaturday, March 31, 12
  24. 24. https://secure.flickr.com/photos/pleeker/146575856/Saturday, March 31, 12
  25. 25. • Aplicação • Banco de dados • Cache • ... https://secure.flickr.com/photos/pleeker/146575856/Saturday, March 31, 12
  26. 26. Servidores de aplicação • nginx • Apache (PHP) • Tomcat (Java) • gunicorn (Python) • mod_wsgi (Python) • passenger/unicorn (Ruby)Saturday, March 31, 12
  27. 27. Cache • Varnish (CachOS) • memcachedSaturday, March 31, 12
  28. 28. Bancos de dados • MySQL • MongoDB • Redis • Virtuoso • Oracle :-(Saturday, March 31, 12
  29. 29. Linguagens e plataformas • Python • Ruby/JRuby • Java • JavaScript •C • Perl • Go • PHP (platb - Wordpress)Saturday, March 31, 12
  30. 30. E mais... • ElasticSearch • Django • Capistrano • Tornado • Fabric • Ruby on Rails • VirtualBox OSE • Sinatra • Nagios • VRaptor • ActiveMQ • ... • RabbitMQSaturday, March 31, 12
  31. 31. Um exemplo: G1 • Como desenvolvemos e colocamos código do G1 em produção? • Quem entrega o conteúdo para o usuário?Saturday, March 31, 12
  32. 32. Desenvolvendo • Quero implementar uma nova feature no G1! Trata-se de um widget que vai obter informações de trânsito e armazená-las no banco de dados; • Preciso de uma tabela no banco de dados, e um pouco de código pra isso; • Como isso é feito no G1?Saturday, March 31, 12
  33. 33. Banco de dados • O G1 utiliza o MySQL como único banco de dados relacional; • Mudanças no banco de dados são feitas através de migrations. Para as migrations, utilizamos o simple-db-migrate, um projeto open source que nasceu na Globo.com.Saturday, March 31, 12
  34. 34. O código • O código é feito em Python, linguagem de programação open source; • Para tornar o desenvolvimento ainda mais simples e produtivo, utilizamos o framework web Django; • E no lado do cliente, um pouco de jQuery e JavaScript puro :)Saturday, March 31, 12
  35. 35. O deploy • Utilizamos o Capistrano para enviar o código da máquina do desenvolvedor para o servidor de aplicação; • Também utilizamos o Capistrano para executar as migrations no servidor de banco de dados; • Tanto as máquinas de aplicação quanto de banco de dados utilizam Linux como sistema operacional.Saturday, March 31, 12
  36. 36. Quem serve a aplicação? • Todo conteúdo estático do G1 é servido pelo nginx; • Em caso de conteúdo dinâmico, o nginx repassa as requisições para o gunicorn, um servidor para aplicações web Python; • Todo conteúdo editorial da Globo.com é gerado estaticamente em disco, para garantir melhor desempenho. Para geração de conteúdo estático é utilizado o staticgenerator.Saturday, March 31, 12
  37. 37. E muito mais! • Diversas bibliotecas open source para desenvolvimento e testes; • Monitoração das máquinas utilizando Nagios; • Provisionamento e configuração versionada das máquinas com Puppet; • etc.Saturday, March 31, 12
  38. 38. Software livre na Globo.comSaturday, March 31, 12
  39. 39. salve a web, por favor! ✴ Navegadores velhos e desatualizados não evoluem junto com os padrões web e são cheios de bugs, afetando a qualidade dos sites e fazendo com que os desenvolvedores gastem mais tempo para adaptar os sites a esses browsers obsoletos. ✴ "Salve a web, por favor" é um esforço para eliminar esses navegadores. ✴ https://github.com/globocom/sawpfSaturday, March 31, 12
  40. 40. thumbor ✴ thumbor is a smart imaging service. It enables on- demand crop, resizing and flipping of images. ✴ https://github.com/globocom/thumborSaturday, March 31, 12
  41. 41. oauth2u ✴ This project aims to implement the complete OAuth 2.0 Authorization Protocol Specification. ✴ It provides the endpoints specified by OAuth 2.0 specification with possibilities to plug code to customize specific behaviors. ✴ https://github.com/globocom/oauth2uSaturday, March 31, 12
  42. 42. nginx-push-stream-module ✴ A pure stream http push technology for your Nginx setup. ✴ Comet made easy and really scalable. ✴ Supports EventSource, WebSocket, Long Polling, and Forever Iframe. ✴ https://github.com/wandenberg/nginx-push-stream-moduleSaturday, March 31, 12
  43. 43. tsuru ✴ Tsuru is an open platform-as-a-service (PaaS) ✴ https://github.com/timeredbull/tsuruSaturday, March 31, 12
  44. 44. E tem mais! • Django • wxPython • Python • InVersalius • Go Programming Language • molecular-view • magic2d • Sure • Django static generator • Bolacha • Splinter • PhantomJS • Django Brasil • Guake Terminal • Pyccuracy • Homebrew • Lettuce • FreshenSaturday, March 31, 12
  45. 45. Saturday, March 31, 12
  46. 46. ...Saturday, March 31, 12
  47. 47. Saturday, March 31, 12
  48. 48. Mais de 40 projetos open source nasceram na globo.com devido às necessidades da empresaSaturday, March 31, 12
  49. 49. Mais de 40 projetos open source nasceram na globo.com devido às necessidades da empresa Mais de 100 projetos open source já receberam contribuições de funcionários da globo.comSaturday, March 31, 12
  50. 50. Mais de 40 projetos open source nasceram na globo.com devido às necessidades da empresa Mais de 100 projetos open source já receberam contribuições de funcionários da globo.com Grande parte das tecnologias utilizadas pela Globo.com já recebeu contribuições de desenvolvedores da empresa, incluindo linguagens de programação e frameworksSaturday, March 31, 12
  51. 51. Saturday, March 31, 12
  52. 52. 30% Mais de ... ... dos nossos desenvolvedores participam ou já participaram do movimento open sourceSaturday, March 31, 12
  53. 53. Queremos aumentar esse número! • github.com/globocom/iwanttoworkatglobocom • fsouza@corp.globo.comSaturday, March 31, 12
  54. 54. Dúvidas?Saturday, March 31, 12
  55. 55. Muito obrigado! fsouza@corp.globo.com @franciscosouzaSaturday, March 31, 12

×