Upload
bluesoft
View
1.231
Download
0
Tags:
Embed Size (px)
Citation preview
Resumo do Evento
André Faria GomesLuiz Faias Jr.
Ruby on Rails InsurgencyChad Fowler
http://www.flickr.com/photos/danicuki/4008587336/in/set-72157622452350763/
Resistência e Trolls
http://www.flickr.com/photos/gmacorig/106472343/sizes/l/
- Escala?- Lento?- Gente?
- Suporte?- Seguro?
- Investimento?
Averages Law
http://www.flickr.com/photos/locaweb/4026514961/sizes/o/in/set-72157622496267649/
“If you use average technology you will
have average results”
It’s Ruby. You can change everything. It’s part of the beauty of it.
http://www.flickr.com/photos/wongjunhao/2953814622/
Faça Gradualmente
http://www.flickr.com/photos/cuppini/2719054037/
Use para scripts, testes, gerar código, etc...
http://farm4.static.flickr.com/3125/2719054037_30caa81319_o.jpg
Não programe[java|.net|php|etc] em ruby
http://www.flickr.com/photos/lofi/302018855/
Evite “The Big Rewrite“
http://www.flickr.com/photos/thetruthabout/3020772862/sizes/l/
Scaling RailsGregg Pollack
http://www.flickr.com/photos/danicuki/4009029752/sizes/l/in/set-72157622452350763/
Caching
http://www.flickr.com/photos/locaweb/4027281248/sizes/o/in/set-72157622496267649/
Page CachingFragment CachingObject CachingMemcachingClient-side Cachinge-tags
Não abuse do banco de dados
http://www.flickr.com/photos/bionicteaching/2920562020/
Bullet Plugin Diminui a quantidade de consultas
Rails Indexes Índices que deveriam existir
Scrooge Plugin Somente colunas necessárias
Prevenção de Bloat
http://www.flickr.com/photos/danicuki/3998218209/in/set-72157622432071109/
“código que é desnecessariamente longo, lento e/ou desperdiça recursos”
Rack-bug Barra de ferramentas para aplicações Rack que exibe informações como tempo de CPU e SQL.
MemoryLogic Acrescenta IDs de processos e uso de memória nos logs do Rails.
Oink Encontra causas de incremente no tamanho do heap de memória da aplicação.
Escalabilidade
http://www.flickr.com/photos/brenopeck/2553387961/
Rubber Barra de ferramentas para aplicações Rack que exibe informações como tempo de CPU e SQL.
Cloud Crowd Gerenciamento de procesamento paralelo de processos de segundo plano
Mad Mimi Aplicativo de e-mail marketing que possui um API de fácil integração
Fuzz TestingGlenn Vanderburg
http://www.flickr.com/photos/furryscalyman/1100712820/
“Fuzz testing or fuzzing is a software testing technique that provides invalid, unexpected, or random data to the
inputs of a program. ”
Gerando código com ThorJosé Valim
http://www.flickr.com/photos/bbaltimore/19383457/
Thor = Rake + Sake + rubigen + rails templates
DSLsFábio Kung
http://www.flickr.com/photos/locaweb/4027291338/sizes/o/in/set-72157622496267649/
“O negócio (domínio) deve guiar o desenvolvimento de
software.”
DSLs Internas e Externas
http://www.flickr.com/photos/vincemoblog/3986327981/Internas possuem linguagens hospedeiras
Externas não possuem linguagens hospedeiras
Top-down
http://www.flickr.com/photos/jaeming/3788942583/
primeiro escreve a linguagem da forma que você gostaria
que ela fosse e depois se vira para implementar.
Bottom-up
http://www.flickr.com/photos/martinlabar/75913499/sizes/l/
escreve o código primeiro
Meta-programação Ruby
http://www.flickr.com/photos/expressmonorail/2246016679/
RSpec e CucumberDavid Chelimsky
http://www.flickr.com/photos/vizzzual-dot-com/2738586453/
Documentação ExecutávelLegibilidade / ExpressividadeOtimizar o processo de TDD
Clear over DRY
http://www.flickr.com/photos/locaweb/sets/
“Balancing DRY and Clarity is an Art”
Sujeito Implícito
http://www.flickr.com/photos/furryscalyman/1100712820/
it “should have ...”
subject (Account.new)
Além do CaosPensamentos Aleatórios sobre Agilidade
Fábio Akita
http://www.flickr.com/photos/krassycandoit/2374920241/
Quebra do paradigma“Em time que está ganhando não se mexe”
http://www.flickr.com/photos/randysonofrobert/1806550557/
Tradutora Maluca
Mente Brilhante: sucesso = o indivíduo faz o melhor para si mesmo e para o grupo
“Se a maioria estiver errada, eu não estou errado sozinho”
http://www.flickr.com/photos/fspugna/448283436/sizes/l/
Quebre as regras
http://www.flickr.com/photos/bernatcg/2280556593/
Pense como seria a solução caso não houvesse regras e então questione
se a regra realmente deve existir
Exemplo da Semco(Ricardo Semler)
http://www.flickr.com/photos/photomishdan/3528281481/
Os funcionários ajudam no processo de contratação
Ruby on Rails FutureMatt Aimonetti
http://www.flickr.com/photos/senoranderson/3128988472/
Rails 2Programmer HappinessStrong ConvetionsFluent Design
Rails 3Speed
FlexibilityModularity
ORMActive Record / Data Mapper / Sequel
http://www.flickr.com/photos/tambako/2531409306/
Desconferência e Bar
http://www.flickr.com/photos/furryscalyman/1100712820/
http://www.flickr.com/photos/furryscalyman/1100712820/
Blog em 15 MinutosAldo França
http://www.flickr.com/photos/locaweb/4026550935/in/set-72157622496267649/
Small Acts Make Great RevolutionsGuilherme Chapiewsky e Henrique Bastos
http://www.flickr.com/photos/locaweb/4026552505/sizes/o/in/set-72157622496267649/
Dojo RioHora ExtraHack FrampsDev in Rio
Samba do AkitaDaniel Cukier
http://www.flickr.com/photos/locaweb/4026554721/sizes/o/in/set-72157622496267649/
MacRubyRichard Kilmer
http://www.flickr.com/photos/locaweb/4027336006/in/set-72157622496373737/
Ruby na ThoughtworksCarlos Villela
http://www.flickr.com/photos/locaweb/4027344506/sizes/o/in/set-72157622496373737/
Mais de 300 projetosMais 40 em Ruby10 Escritórios7 Países
Não demore muito para atualizar
http://www.flickr.com/photos/danicuki/sets/72157622452350763/?page=2
Não se empolgue tanto com plugins
http://www.flickr.com/photos/strochka/52528635/sizes/o/http://farm1.static.flickr.com/31/52528635_070d3bfefb_o.jpg
Testes com RSpec, Selenium e WebRat
http://www.flickr.com/photos/cobalt/409924867/
Controllers Magros e Modelos GordosMas não traga tudo para os modelos, use helpers, views, etc...
http://www.flickr.com/photos/dotbenjamin/2621114849/
Recomendação JRubyPerformance do Java e Produtividade do Ruby
http://www.flickr.com/photos/furryscalyman/1100712820/
Lições Aprendidaspor Pratik Naik
http://www.flickr.com/photos/locaweb/4026594501/sizes/o/in/set-72157622496373737/
Couch DBMarcos Tapajós
“Um Banco de Dados Elegante”
JSON
Feito em ERlang
Resolve tudo no código sem mudar nada na Base
http://www.flickr.com/photos/davestfu/2157396025/sizes/l/
Ao invés de um driver, uma API REST
http://www.flickr.com/photos/wisdoc/3212710310/sizes/l/
Não possui Lock
http://www.flickr.com/photos/amagill/235453953/
Você pode ter uma ambiente offline e depois sincronizar
http://www.flickr.com/photos/josago/2839181277/sizes/l/
Rails Can’t ScaleBruno Miranda e Jason Seifer
http://www.flickr.com/photos/locaweb/4026596711/sizes/o/in/set-72157622496373737/
Cyloop MusicRadio Application
- 13500 requests per minute - 500 mb/s - 4 languages - 20+ countries
JRuby in the EnterpriseLeonardo Borges
JRuby
Improved Performance
Active Community
Testing
Reuse Existing Logic
Leverage the knowledge of existing team
http://www.flickr.com/photos/totoro_zine/3016501426/sizes/l/
Nem todo mundo se
adapta
“Foi uma decisão da gerência, foi uma mudança forçada, alguns
não aguentaram e foram embora”
De Serviço a ProdutoVinícius Manhães Teles
http://www.flickr.com/photos/laignoranciamata/268746861/sizes/o/
Exemplo do Vilarejo
http://www.flickr.com/photos/hamed/156288613/
serviço = baldeproduto = encanamento
http://beonthe.net
O líder é sempre o culpado pelo fracasso e a equipe deve levar os méritos
http://www.flickr.com/photos/guilhermechapiewski/4034175047/sizes/l/in/set-72157622639514234/
Ecosistema em Stanford:“Ficar próximo de pessoas boas”
http://www.flickr.com/photos/taniapaz/171398184/sizes/o/
Reservas, Reservas, Reservas
http://www.flickr.com/photos/vinish/3226484450/sizes/o/
Mestrado ou Mercado?
http://www.flickr.com/photos/benrussell/1477899923/
Mochilões
Educar quem não paga cortando o serviço
http://www.flickr.com/photos/cayusa/466865504/
Tecnologia avança rápido mentalidade não
http://www.flickr.com/photos/jstar/sets/72157603842811142/
Investimento forte em screencasts
Se a conversa por e-mail está fugindo do controle ligue imediatamente para o cliente
http://www.flickr.com/photos/balakov/853643975/
As coisas isoladas não tem importância, é o conjunto que importa
http://www.flickr.com/photos/gloverbryantcommunications/1910512323/sizes/l/
Mastering the art of application developmentObie Fernandez
http://www.flickr.com/photos/danicuki/4014189760/sizes/l/in/set-72157622452350763/
“I looked into the stone and saw him there, and just chipped away everything else”
Michelangelo
http://www.flickr.com/photos/robert_scarth/138391071/
“how do we can get to this point?”
you don’t need a degree to be a fine artist neither to be a developer
http://www.flickr.com/photos/42903611@N00/1923974222/sizes/l/
PráticaArtes Marciais, Música, Pintura
http://www.flickr.com/photos/saramusico/3833368291/sizes/o/
10.000 horas de prática
myth: practice makes perfectperfect practice makes perfect != practice makes perfect
http://www.flickr.com/photos/orangeacid/266420645/
Leia código fonte
http://www.flickr.com/photos/schoschie/8821223/sizes/o/
Siga Praticando
http://www.flickr.com/photos/annais/52300475/sizes/o/
Persiga a Excelência
http://www.flickr.com/photos/keithallison/2311055636/sizes/l/
“the journey for mastering and excelence is not for everyone”
http://www.flickr.com/photos/darkumber/2645078671/
http://infoether.com/RubyRailsEcosystemFall2009.pdf
Obrigado!
http://www.flickr.com/photos/danicuki/4011449670/sizes/l/in/set-72157622452350763/