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
Gemcutting 101
Search
tdumitrescu
January 14, 2014
Programming
0
390
Gemcutting 101
An overview of the steps to making and publishing your own Ruby gem
tdumitrescu
January 14, 2014
Tweet
Share
Other Decks in Programming
See All in Programming
O Que É e Como Funciona o PHP-FPM?
marcelgsantos
0
160
monorepo の Go テストをはやくした〜い!~最小の依存解決への道のり~ / faster-testing-of-monorepos
convto
2
520
Android16 Migration Stories ~Building a Pattern for Android OS upgrades~
reoandroider
0
130
他言語経験者が Golangci-lint を最初のコーディングメンターにした話 / How Golangci-lint Became My First Coding Mentor: A Story from a Polyglot Programmer
uma31
0
330
モテるデスク環境
mozumasu
3
900
Foundation Modelsを実装日本語学習アプリを作ってみた!
hypebeans
1
120
Flutterで分数(Fraction)を表示する方法
koukimiura
0
140
One Enishi After Another
snoozer05
PRO
0
150
その面倒な作業、「Dart」にやらせませんか? Flutter開発者のための業務効率化
yordgenome03
1
140
開発組織の戦略的な役割と 設計スキル向上の効果
masuda220
PRO
1
310
Google Opalで使える37のライブラリ
mickey_kubo
3
130
登壇は dynamic! な営みである / speech is dynamic
da1chi
0
350
Featured
See All Featured
The Language of Interfaces
destraynor
162
25k
Designing Experiences People Love
moore
142
24k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
16
1.7k
Automating Front-end Workflow
addyosmani
1371
200k
Fireside Chat
paigeccino
40
3.7k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
Large-scale JavaScript Application Architecture
addyosmani
514
110k
What's in a price? How to price your products and services
michaelherold
246
12k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
48
9.7k
Faster Mobile Websites
deanohume
310
31k
A designer walks into a library…
pauljervisheath
209
24k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
4k
Transcript
carvin’ it out: basics of gemcutting ted dumitrescu signal creative
[email protected]
http://cmme.org/tdumitrescu http://github.com/tdumitrescu http://signalcreative.co
three beautiful steps ¡ extracting ¡ testing ¡ publishing ted dumitrescu: basics of
gemcutting | http://cmme.org/tdumitrescu
extracting ¡ write the code before making the gem sample repo:
https://github.com/tdumitrescu/gemex ¡ bootstrap the project: http://bundler.io/v1.5/bundle_gem.html bundle gem old_yeller ¡ edit gemspec ¡ code in lib/ ted dumitrescu: basics of gemcutting | http://cmme.org/tdumitrescu
testing ¡ automated testing! ¡ with rspec: .gemspec: spec.add_development_dependency "rspec", "~> 2.14"
bundle bundle exec rspec --init spec/old_yeller_spec.rb bundle exec rspec" ¡ manual testing: loading local gems Gemfile: gem "old_yeller", path: [path to gem] ted dumitrescu: basics of gemcutting | http://cmme.org/tdumitrescu
publishing ¡ on rubygems: http://guides.rubygems.org/make-your-own-gem/ ¡ build gem locally: gem build old_yeller.gemspec"
¡ push to rubygems: gem push old_yeller-0.0.1.gem ¡ don’t forget to publish the code (try Github!) ted dumitrescu: basics of gemcutting | http://cmme.org/tdumitrescu
some further topics ¡ versioning ¡ configuration patterns ¡ using datastores and complex
services ¡ integration with Rails (engines) ¡ personal examples: https://github.com/tdumitrescu/feature_guard https://github.com/lumoslabs/scripterator ted dumitrescu: basics of gemcutting | http://cmme.org/tdumitrescu