Your SlideShare is downloading. ×
Rubysoc final RubyConfBR
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×

Introducing the official SlideShare app

Stunning, full-screen experience for iPhone and Android

Text the download link to your phone

Standard text messaging rates apply

Rubysoc final RubyConfBR

482
views

Published on

Ruby summer of code presentation by @thiagopradi and @panaggio at RubyConfBR 2010.

Ruby summer of code presentation by @thiagopradi and @panaggio at RubyConfBR 2010.

Published in: Technology

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
482
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
2
Comments
0
Likes
0
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. Rubysoc Ricardo Panaggio Thiago Pradi Experiences, thoughts andExperiences, thoughts and how it can improve your careerhow it can improve your career and the communityand the community
  • 2. Thiago Pradi ● github.com/tchandy ● twitter.com/thiagopradi ● thiagopradi.net ● thiago.pradi@gmail.com
  • 3. Ricardo Panaggio ● github.com/panaggio ● twitter.com/panaggio ● identi.ca/panaggio ● freebird.blog.br ● panaggio@ic.unicamp.br
  • 4. Outline ● Introdução ● Nossas experiências ● Por que participar ● Conclusões
  • 5. Introdução
  • 6. Ínicio de Carreira Dificuldades Falta experiência Estágio
  • 7. Estágios Comuns Chatos, na maioria Muito trabalho repetitivo e maçante Maior desafio é servir café aos mais experientes
  • 8. Estágio para turbinar sua carreira de verdade?!
  • 9. Ruby Summer of Code!
  • 10. Ruby Summer of Code ● Estímulo para estudantes participarem ativamente na comunidade de software livre ● "Estágio" remunerado de 2 meses
  • 11. Rubysoc == GSoC?
  • 12. Participações no GSoC 2007
  • 13. Participações no GSoC 2007 2008
  • 14. Participações no GSoC 2007 2008 2009
  • 15. Participações no GSoC 2007 2008 2009 2010
  • 16. Rubysoc ● Google $ GSoC→ ● Ruby $ RubySoC?→
  • 17. Rubysoc ● Google $ GSoC→ ● Ruby $ Rubysoc?→ ● Comunidade/Empresas $ Rubysoc!→
  • 18. Quanto $? 3 dias... CC by Darrren Hester
  • 19. US$ 100.000 CC byr Tracy O
  • 20. 20 bolsas de US$ 5.000 CC by AMagill
  • 21. Ruby Summer of Code ● Programa ala Summer of Code do Google ● Focado em projetos em Ruby e ligados à comunidade Ruby ● Promovido por empresas e comunidade
  • 22. Objetivos ● Incentivar estudantes a desenvolver software livre ● Promover o trabalho em áreas ligadas a Computação nas férias: Flip bits not burgers ● Envolvimento com desenvolvimento de software num ambiente "real" ● Mais software livre desenvolvido e disponibilizado ● Ajudar projetos de software livre a identificar novos desenvolvedores
  • 23. Objetivos ● Ajudar estudantes a se envolver com desenvolvimento em Ruby ● Ajudar estudantes a se envolver com a comunidade Ruby ● Continuar com a tradição de bons projetos desenvolvidos por estudantes em verões invernos passados, como parte do GSoC
  • 24. Como funciona ● Aplicação como mentor ● Aplicação como estudante ● Projetos aprovados ● Trabalho, trabalho, trabalho, ... ● Avaliação Intermediária ● Trabalho, trabalho, trabalho, ... ● Avaliação Final
  • 25. Nossas Experiências
  • 26. Nossos Projetos ● O que propusemos ● O que efetivamente fizemos ● Problemas enfrentados ● Tempo gasto, grau de dificuldade
  • 27. Projetos submetidos ● Database Sharding com Rails 3 ● Melhorar e implementar classes no core ● Rails agnóstico de framework JavaScript
  • 28. Database Sharding com ActiveRecord ● Várias implementações ● Não flexíveis ● Não compatíveis com Rails 3
  • 29. Octopus ● Compatível com Rails 2 e 3 ● Suporte a Database Sharding ● Suporte a replicação ● Desafio: Integrar de maneira segura no ActiveRecord
  • 30. Octopus @ github
  • 31. Atualmente ● Pronto para produção ● Não depende da Stack Inteira do Rails ● Usuários ativos
  • 32. Futuro ● Suporte a mais cenários ● Configuração automática das instâncias ● Sincronização/Movimentação dos dados entre as bases
  • 33. Proposta inicial ● Otimizar classes do core ● Implementar novas estruturas de dados em C ● Trees ● Lists ● PriorityQueues
  • 34. E-mail Timeline ● Ruby Summer of Code Student Application ● Ruby Summer of Code; Maybe NextYear! ● Ruby Summer of Code, Open Spot! ● Ruby Summer of Code, Proposal #52, Project Slot # 17 ● Ruby summer (or, winter, for those in Brazil)
  • 35. “Projeto em branco” ● Reescrita do projeto ● Replanejamento CC by Rennett Stowe
  • 36. Tempo investido 3 semanas ● 8~10 horas/dia ● 7 dias por semana 1 semana ● MSc ● Atividades off-SoC CC by Vicki's Pics
  • 37. Aprendizado (on the fly) ● Ruby C ● Sync Primitives ● Metaprogramming ● Port de classes Ruby para Ruby C ● Port de código Ruby 1.8 para Ruby 1.9 CC by apoxapox
  • 38. Benefícios ● Classes melhoradas ● (Sorted)Set ● Queue/SizedQueue/ConditionVariable ● Delegate ● Classes adicionadas ● (Fast)(Counting)Semaphore
  • 39. Futuro ● Novos benchmarks ● Resolver minor bugs das classes já portadas ● Melhorar mais classes
  • 40. Por que participar
  • 41. US$ 5.000 :) CC by AMagill
  • 42. Diversão CC by mjording
  • 43. Networking CC by WebWizzard
  • 44. Oportunidades CC by Egan Snow
  • 45. Aprimoramento CC by apoxapox
  • 46. Programação
  • 47. Ferramentas CC by Svadilfari
  • 48. Inglês CC by JoX1989
  • 49. Benefícios ● Database Sharding – Octopus ● Melhorias no core ● RVM ● Rails Engines ● IdentityMap no ActiveRecord ● Benchmark Suite para o Rails
  • 50. Benefícios ● Extensões C para o JRuby ● JRuby no Android – Ruboto ● Hackety Hack ● Ruby Archive ● Mail Processing Framework - Mailman
  • 51. Experiência de Mentor
  • 52. Por que participar ● Bom para os estudantes ● Bom para os mentores ● Bom para a comunidade ● Bom para o ecossistema
  • 53. ...
  • 54. Dicas ● Comece cedo ● Comunique-se ● Gerencie seu tempo ● Troque experiências ● Tenha paciência
  • 55. Outros SoCs ● Rubysoc ● G(oogle)soc ● Fedorasoc ● ...
  • 56. “I have been engaged in Ruby for 17 years and I think it’s making sense for me to be passionate about Ruby. But many others are passionate about Ruby. I don’t understand why, but Ruby is loved. Love is driving Ruby.” - Matz, Ruby World 2010
  • 57. Compartilhe! ● Share your code ● Share your experiences
  • 58. “Ruby is supported by passion.And by love.” - Matz, Ruby World 2010
  • 59. Compartilhe! ● Share your code ● Share your experiences ● Share the love! © Co-Hack LLC, 2009. All Rights Reserved.
  • 60. Rubysoc Ricardo Panaggio Thiago Pradi Experiences, thoughts andExperiences, thoughts and how it can improve your careerhow it can improve your career and the communityand the community