Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Por que o Rails detona
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
Vinícius Almeida
April 11, 2015
Programming
180
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Por que o Rails detona
Palestra apresentada na semana acadêmica da Universidade Feevale em Abril 2015
Vinícius Almeida
April 11, 2015
More Decks by Vinícius Almeida
See All by Vinícius Almeida
Don't blame yoy tools
viniciusalmeida
0
73
Nós precisamos falar sobre o jQuery
viniciusalmeida
0
100
ember-cli - A ambiciosidade migrando para o workflow
viniciusalmeida
1
93
Pragmatismo no JavaScript
viniciusalmeida
0
90
Repensando o uso do jQuery
viniciusalmeida
2
590
Uma breve introdução do GruntJS
viniciusalmeida
1
85
Other Decks in Programming
See All in Programming
なぜ関数型プログラミングで「型」と「証明」が語られるのか #fp_matsuri
kajitack
3
1.1k
php-fpmのプロセスが枯渇した日-調査・対処・そして本当にやるべきだったこと-
shibuchaaaan
0
180
【やさしく解説 設計編・中級 #4】ルールの寿命と、システムの年輪
panda728
PRO
2
180
数百円から始めるRuby電子工作
tarosay
0
120
광주소프트웨어마이스터고등학교 DevFest 특강 - 바이브 코딩 시대에서 주니어 개발자로 살아남는 방법
utilforever
1
160
型も通る、synthも通る、それでも危ない 〜AIのCDKの権限とコストを機械で検証する〜 / It Passes Type Checks, It Passes Synth Checks, but It’s Still Risky — Automatically Verifying Permissions and Costs in AI’s CDK —
seike460
PRO
1
500
<title><a id="</title>君はこのHTMLをパースできるか"></a></title> #雑LT_study
pizzacat83
0
120
ソフトウェア設計に溶けるインフラ ― AWS CDK のインフラ認識論
konokenj
3
710
使用 Meilisearch 建立新聞搜尋工具
johnroyer
0
190
コーディングルールの鮮度を保ちたい for SRE NEXT 2026 / keep-fresh-go-internal-conventions-sre-next-2026
handlename
0
160
Prismを使った型安全な暗号化_関数型まつり2026
_fhhmm
0
160
自動化したのに回らないテスト運用の壁ーAI時代の品質責任と生産性
mfunaki
0
110
Featured
See All Featured
A Guide to Academic Writing Using Generative AI - A Workshop
ks91
PRO
1
360
How to build a perfect <img>
jonoalderson
1
5.8k
Navigating Algorithm Shifts & AI Overviews - #SMXNext
aleyda
1
1.5k
Tips & Tricks on How to Get Your First Job In Tech
honzajavorek
1
650
DBのスキルで生き残る技術 - AI時代におけるテーブル設計の勘所
soudai
PRO
67
56k
SEO in 2025: How to Prepare for the Future of Search
ipullrank
3
3.7k
[SF Ruby Conf 2025] Rails X
palkan
2
1.2k
Noah Learner - AI + Me: how we built a GSC Bulk Export data pipeline
techseoconnect
PRO
0
340
Reflections from 52 weeks, 52 projects
jeffersonlam
356
21k
The World Runs on Bad Software
bkeepers
PRO
72
12k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
12
1.8k
Fireside Chat
paigeccino
42
4k
Transcript
WHY ROR ROCKS @vimoding
Vinícius Almeida » Programador full stack na CodeMiner @vimoding
Aspectos não óbvios no primeiro contato com o framework @vimoding
Vai pra lá com seu blog em 15 minutos --
Eu (imitando o Sílvio Santos) @vimoding
@vimoding
É muito bom ser programador nos dias de hoje, cara!
-- Matias Leidemer @vimoding
Agenda - Rails engines - Asset pipeline - Otimização do
trabalho em equipe @vimoding
Rails engines @vimoding
E se o foco dos nossos esforços fosse no que
ainda não foi feito? @vimoding
Facilmente plugáveis nas nossas aplicações @vimoding
$ rails generate engine_name:install @vimoding
Vamos falar de situações do mundo real @vimoding
Cadastro de usuários e gerenciamento de sessão com Devise 1
1 http://devise.plataformatec.com.br @vimoding
Ela provê - Registro e autenticação de usuário - Manutenção
de sessão ativa - Recuperação de senha - Utilização de um ótimo algoritmo de encriptação de senha @vimoding
Implementação rails generate devise:install rails generate devise <modelo> rake db:migrate
@vimoding
Just works @vimoding
Automágicamente @vimoding
e ainda facilmente Customizável @vimoding
@vimoding
"Mas como eu personalizo a utilização?" rails generate devise:views rails
generate devise:controllers @vimoding
Até aqui as engines parecem bacanas, certo? Mas ainda podemos
ir pouco mais longe @vimoding
Áreas administrativas com ActiveAdmin 2 2 http://activeadmin.info @vimoding
Uma engine com um propósito mais audacioso do que a
Devise @vimoding
Através de uma API muito simples # app/admin/product.rb ActiveAdmin.register Product
do filter :title filter :available index do selectable_column column :title column 'Price', :price do |product| number_to_currency product.price end column :available actions end end @vimoding
Somos capazes de produzir isso @vimoding
Enfim somos realmente capazes de focar no que importa de
verdade Gerar valor para o produto em desenvolvimento @vimoding
Asset Pipeline @vimoding
A partir de agora é proibido versionar arquivos compilados, ok?
@vimoding
Vamos começar pela cereja do bolo: Sprockets @vimoding
file.js.coffee.erb @vimoding
Vamos falar de situações do mundo real @vimoding
es6to5 https://github.com/ StrangeMood/es6to5-rails @vimoding
file.js.es6 @vimoding
Mas como não versionar arquivos compilados? -- Provavelmente alguns de
vocês está se perguntando @vimoding
Isso tudo é feito em pleno vôo @vimoding
E ainda por cima com uma sólida Estratégia de cache
@vimoding
E CDN friendly (com poucas confs) https://github.com/rumblelabs/asset_sync @vimoding
Foi bom enquanto durou... @vimoding
Depois de conhecer o asset pipeline me sinto assim cada
vez que escrevo uma Grunt task @vimoding
Otimização do trabalho em equipe @vimoding
Até aqui realmente optimizamos o processo de desenvolvimento baseados nas
convenções do Rails Então vamos além @vimoding
Muita coisa está muito bem resolvida no tooling do Rails
@vimoding
Exemplos: -Migração de banco de dados -Geração automática de sprites
(através do asset pipeline) Esses problemas viraram banais (deixaram de ser problema) no contexto de desenvolvimento com o framework @vimoding
Comunicação é um sinal de disfunção [...] Devemos fazer as
equipes se comunicarem menos, e não mais. -- Jeff bezos @vimoding
E ainda de quebra não vamos precisar da ajuda desse
cara a cada branch merge @vimoding
Perguntas ? @vimoding
Obrigado! » twitter.com/vinialm88 » github.com/viniciusalmeida » viniciusalmeida.github.io @vimoding