SlideShare a Scribd company logo
1 of 61
Download to read offline
pebbles
A namespace for joke gems
Good Evening!
kwappa



SHIOYA, Hiromu
                 http://www.kwappa.net/
a programmer




a drunk a fond parent
Born in the NET,
Connected by the NET
http://info.dwango.co.jp/recruit/
What I want to say
"pebbles"
   I propose that we use
the namespace "pebbles"
       for joke gems
One day
I created a gem called “zenra”
                    http://twitter.com/zenra_bot
What is “zenra” ?
What is “zenra” ?
What is “zenra” ?

      I write Ruby.
What is “zenra” ?

      I write Ruby.
What is “zenra” ?

       I write Ruby.



 I write Ruby stark-naked.
How to install
How to install
How to install



                 te d
            re ca
        de p
Why deprecated?
Why deprecated?
Why deprecated?

(snip)




(snip)
Why deprecated?

(snip)
             serious
             joke
             serious
(snip)
Why deprecated?

(snip)
                   serious
                   joke
                   serious
(snip)   how embarassing...
Another day
“How to Name Gems”




http://blog.segment7.net/2010/11/15/how-to-name-gems
Use underscores
•fancy_require
•newrelic_rpm
•ruby_parser
Use underscores
•fancy_require
•newrelic_rpm
•ruby_parser
Use underscores
•fancy_require
•newrelic_rpm
•ruby_parser
Use dashes for extensions
•net-http-persistent
•rdoc-chm
•autotest-growl
Use dashes for extensions
•net-http-persistent
•rdoc-chm
•autotest-growl
Use dashes for extensions
•net-http-persistent
•rdoc-chm
•autotest-growl
A flash of inspiration
Create a namespace for joke gems
                        http://mrg.bz/uLdp5w
pebbles
Not Gems, just Pebbles

                  http://mrg.bz/uLYYgS
for example
for example

fizzbuzz
for example

fizzbuzz
require 'pebbles/fizzbuzz'
require 'pebbles/fizzbuzz'

(1 .. 15).each do |num|
  puts fizzbuzz num
end
require 'pebbles/fizzbuzz'

  (1 .. 15).each do |num|
    puts fizzbuzz num
  end




http://gungelads.com/gunging/?p=1683
Directory structure
Class definition
move “zenra” to ...
move “zenra” to ...
move “zenra” to ...
move “zenra” to ...




                 Less embarrassing!
https://rubygems.org/gems/pebbles-fizzbuzz
Conclusion
"pebbles"
Use namespace "pebbles"
 when you make joke gems
Bonus
I made a mistake
I made a mistake
I made a mistake
I made a mistake




              !
Apologies to
Ryan Smith and
Bobby Wilson.
pebbles
Not Gems, just Pebbles
Thank you for listening.



pebbles
   Not Gems, just Pebbles

More Related Content

Viewers also liked (6)

RubyGemsでわるふざけ
RubyGemsでわるふざけRubyGemsでわるふざけ
RubyGemsでわるふざけ
 
The gate
The gateThe gate
The gate
 
不惑の生存戦略
不惑の生存戦略不惑の生存戦略
不惑の生存戦略
 
11th Sunday C
11th Sunday C11th Sunday C
11th Sunday C
 
11 Vastu Tips to Follow to attract more Money
11 Vastu Tips to Follow to attract more Money 11 Vastu Tips to Follow to attract more Money
11 Vastu Tips to Follow to attract more Money
 
16 Enjoyable Business Lessons from Sex
16 Enjoyable Business Lessons from Sex16 Enjoyable Business Lessons from Sex
16 Enjoyable Business Lessons from Sex
 

Similar to pebbles : A namespace for joke gems

Writing a Ruby Gem for beginners
Writing a Ruby Gem for beginnersWriting a Ruby Gem for beginners
Writing a Ruby Gem for beginners
ConFoo
 
Sinatraonpassenger 090419090519 Phpapp01
Sinatraonpassenger 090419090519 Phpapp01Sinatraonpassenger 090419090519 Phpapp01
Sinatraonpassenger 090419090519 Phpapp01
guestcaceba
 
Ajhc Haskell Compiler with Reentrant GC
Ajhc Haskell Compiler with Reentrant GCAjhc Haskell Compiler with Reentrant GC
Ajhc Haskell Compiler with Reentrant GC
Kiwamu Okabe
 
A Quick Introduction to Sinatra
A Quick Introduction to SinatraA Quick Introduction to Sinatra
A Quick Introduction to Sinatra
Nick Plante
 
Why do we need two eyes? - JsConfEu October 2011
Why do we need two eyes? - JsConfEu October 2011Why do we need two eyes? - JsConfEu October 2011
Why do we need two eyes? - JsConfEu October 2011
michalbu
 

Similar to pebbles : A namespace for joke gems (20)

Sinatra + Heroku
Sinatra + HerokuSinatra + Heroku
Sinatra + Heroku
 
Microapps for Fun and <s>profit</s>
Microapps for Fun and <s>profit</s>Microapps for Fun and <s>profit</s>
Microapps for Fun and <s>profit</s>
 
Loading... Ruby on Rails 3
Loading... Ruby on Rails 3Loading... Ruby on Rails 3
Loading... Ruby on Rails 3
 
Padrino is agnostic
Padrino is agnosticPadrino is agnostic
Padrino is agnostic
 
Writing a Ruby Gem for beginners
Writing a Ruby Gem for beginnersWriting a Ruby Gem for beginners
Writing a Ruby Gem for beginners
 
Sinatraonpassenger 090419090519 Phpapp01
Sinatraonpassenger 090419090519 Phpapp01Sinatraonpassenger 090419090519 Phpapp01
Sinatraonpassenger 090419090519 Phpapp01
 
Reification
ReificationReification
Reification
 
Semantic Searchmonkey
Semantic SearchmonkeySemantic Searchmonkey
Semantic Searchmonkey
 
RingoJS: Server-Side Javascript When Only Java Will Do
RingoJS:  Server-Side Javascript When Only Java Will DoRingoJS:  Server-Side Javascript When Only Java Will Do
RingoJS: Server-Side Javascript When Only Java Will Do
 
Sinatra
SinatraSinatra
Sinatra
 
Semantic Web For Distributed Social Networks
Semantic Web For Distributed Social NetworksSemantic Web For Distributed Social Networks
Semantic Web For Distributed Social Networks
 
Strangers In The Night: Ruby, Rack y Sinatra - Herramientas potentes para con...
Strangers In The Night: Ruby, Rack y Sinatra - Herramientas potentes para con...Strangers In The Night: Ruby, Rack y Sinatra - Herramientas potentes para con...
Strangers In The Night: Ruby, Rack y Sinatra - Herramientas potentes para con...
 
WDE08 BULLETPROOF A to Z
WDE08 BULLETPROOF A to ZWDE08 BULLETPROOF A to Z
WDE08 BULLETPROOF A to Z
 
Sinatra
SinatraSinatra
Sinatra
 
Ajhc Haskell Compiler with Reentrant GC
Ajhc Haskell Compiler with Reentrant GCAjhc Haskell Compiler with Reentrant GC
Ajhc Haskell Compiler with Reentrant GC
 
A Quick Introduction to Sinatra
A Quick Introduction to SinatraA Quick Introduction to Sinatra
A Quick Introduction to Sinatra
 
A Quick Introduction to Sinatra
A Quick Introduction to SinatraA Quick Introduction to Sinatra
A Quick Introduction to Sinatra
 
Why do we need two eyes? - JsConfEu October 2011
Why do we need two eyes? - JsConfEu October 2011Why do we need two eyes? - JsConfEu October 2011
Why do we need two eyes? - JsConfEu October 2011
 
6 reasons Jubilee could be a Rubyist's new best friend
6 reasons Jubilee could be a Rubyist's new best friend6 reasons Jubilee could be a Rubyist's new best friend
6 reasons Jubilee could be a Rubyist's new best friend
 
I35s
I35sI35s
I35s
 

More from Hiromu Shioya

クマとジャーニーマンとステマ
クマとジャーニーマンとステマクマとジャーニーマンとステマ
クマとジャーニーマンとステマ
Hiromu Shioya
 

More from Hiromu Shioya (20)

勉強会なう
勉強会なう勉強会なう
勉強会なう
 
LTの技術
LTの技術LTの技術
LTの技術
 
珍獣 素人 そして くのいち
珍獣 素人 そして くのいち珍獣 素人 そして くのいち
珍獣 素人 そして くのいち
 
夏夏
 
Tupperware
TupperwareTupperware
Tupperware
 
Rubyistが歩むべき道への道
Rubyistが歩むべき道への道Rubyistが歩むべき道への道
Rubyistが歩むべき道への道
 
自宅で本気を出さされた
自宅で本気を出さされた自宅で本気を出さされた
自宅で本気を出さされた
 
クマとデバッグを
クマとデバッグをクマとデバッグを
クマとデバッグを
 
クマとジャーニーマンとステマ
クマとジャーニーマンとステマクマとジャーニーマンとステマ
クマとジャーニーマンとステマ
 
お前の本気を見せてみろ!
お前の本気を見せてみろ!お前の本気を見せてみろ!
お前の本気を見せてみろ!
 
Git道場を開催してきた
Git道場を開催してきたGit道場を開催してきた
Git道場を開催してきた
 
三周まわったおれたちのアジャイル
三周まわったおれたちのアジャイル三周まわったおれたちのアジャイル
三周まわったおれたちのアジャイル
 
俺たちの目指すモバイルの新たな地平
俺たちの目指すモバイルの新たな地平俺たちの目指すモバイルの新たな地平
俺たちの目指すモバイルの新たな地平
 
2011年の漢字
2011年の漢字2011年の漢字
2011年の漢字
 
ベジェ曲線を書いてみた
ベジェ曲線を書いてみたベジェ曲線を書いてみた
ベジェ曲線を書いてみた
 
オススメの技術書
オススメの技術書オススメの技術書
オススメの技術書
 
はじめて学ぶバージョン管理とGit
はじめて学ぶバージョン管理とGitはじめて学ぶバージョン管理とGit
はじめて学ぶバージョン管理とGit
 
肉とRubyとわたし
肉とRubyとわたし肉とRubyとわたし
肉とRubyとわたし
 
祝辞
祝辞祝辞
祝辞
 
魅せる! How to fascinate audiences by your Lightning Talk
魅せる! How to fascinate audiences by your Lightning Talk魅せる! How to fascinate audiences by your Lightning Talk
魅せる! How to fascinate audiences by your Lightning Talk
 

Recently uploaded

Tales from a Passkey Provider Progress from Awareness to Implementation.pptx
Tales from a Passkey Provider  Progress from Awareness to Implementation.pptxTales from a Passkey Provider  Progress from Awareness to Implementation.pptx
Tales from a Passkey Provider Progress from Awareness to Implementation.pptx
FIDO Alliance
 
Hyatt driving innovation and exceptional customer experiences with FIDO passw...
Hyatt driving innovation and exceptional customer experiences with FIDO passw...Hyatt driving innovation and exceptional customer experiences with FIDO passw...
Hyatt driving innovation and exceptional customer experiences with FIDO passw...
FIDO Alliance
 

Recently uploaded (20)

Introduction to FIDO Authentication and Passkeys.pptx
Introduction to FIDO Authentication and Passkeys.pptxIntroduction to FIDO Authentication and Passkeys.pptx
Introduction to FIDO Authentication and Passkeys.pptx
 
ERP Contender Series: Acumatica vs. Sage Intacct
ERP Contender Series: Acumatica vs. Sage IntacctERP Contender Series: Acumatica vs. Sage Intacct
ERP Contender Series: Acumatica vs. Sage Intacct
 
TopCryptoSupers 12thReport OrionX May2024
TopCryptoSupers 12thReport OrionX May2024TopCryptoSupers 12thReport OrionX May2024
TopCryptoSupers 12thReport OrionX May2024
 
Choosing the Right FDO Deployment Model for Your Application _ Geoffrey at In...
Choosing the Right FDO Deployment Model for Your Application _ Geoffrey at In...Choosing the Right FDO Deployment Model for Your Application _ Geoffrey at In...
Choosing the Right FDO Deployment Model for Your Application _ Geoffrey at In...
 
Linux Foundation Edge _ Overview of FDO Software Components _ Randy at Intel.pdf
Linux Foundation Edge _ Overview of FDO Software Components _ Randy at Intel.pdfLinux Foundation Edge _ Overview of FDO Software Components _ Randy at Intel.pdf
Linux Foundation Edge _ Overview of FDO Software Components _ Randy at Intel.pdf
 
Event-Driven Architecture Masterclass: Engineering a Robust, High-performance...
Event-Driven Architecture Masterclass: Engineering a Robust, High-performance...Event-Driven Architecture Masterclass: Engineering a Robust, High-performance...
Event-Driven Architecture Masterclass: Engineering a Robust, High-performance...
 
Simplified FDO Manufacturing Flow with TPMs _ Liam at Infineon.pdf
Simplified FDO Manufacturing Flow with TPMs _ Liam at Infineon.pdfSimplified FDO Manufacturing Flow with TPMs _ Liam at Infineon.pdf
Simplified FDO Manufacturing Flow with TPMs _ Liam at Infineon.pdf
 
Continuing Bonds Through AI: A Hermeneutic Reflection on Thanabots
Continuing Bonds Through AI: A Hermeneutic Reflection on ThanabotsContinuing Bonds Through AI: A Hermeneutic Reflection on Thanabots
Continuing Bonds Through AI: A Hermeneutic Reflection on Thanabots
 
Design Guidelines for Passkeys 2024.pptx
Design Guidelines for Passkeys 2024.pptxDesign Guidelines for Passkeys 2024.pptx
Design Guidelines for Passkeys 2024.pptx
 
Tales from a Passkey Provider Progress from Awareness to Implementation.pptx
Tales from a Passkey Provider  Progress from Awareness to Implementation.pptxTales from a Passkey Provider  Progress from Awareness to Implementation.pptx
Tales from a Passkey Provider Progress from Awareness to Implementation.pptx
 
ADP Passwordless Journey Case Study.pptx
ADP Passwordless Journey Case Study.pptxADP Passwordless Journey Case Study.pptx
ADP Passwordless Journey Case Study.pptx
 
State of the Smart Building Startup Landscape 2024!
State of the Smart Building Startup Landscape 2024!State of the Smart Building Startup Landscape 2024!
State of the Smart Building Startup Landscape 2024!
 
Microsoft CSP Briefing Pre-Engagement - Questionnaire
Microsoft CSP Briefing Pre-Engagement - QuestionnaireMicrosoft CSP Briefing Pre-Engagement - Questionnaire
Microsoft CSP Briefing Pre-Engagement - Questionnaire
 
Portal Kombat : extension du réseau de propagande russe
Portal Kombat : extension du réseau de propagande russePortal Kombat : extension du réseau de propagande russe
Portal Kombat : extension du réseau de propagande russe
 
Hyatt driving innovation and exceptional customer experiences with FIDO passw...
Hyatt driving innovation and exceptional customer experiences with FIDO passw...Hyatt driving innovation and exceptional customer experiences with FIDO passw...
Hyatt driving innovation and exceptional customer experiences with FIDO passw...
 
AI mind or machine power point presentation
AI mind or machine power point presentationAI mind or machine power point presentation
AI mind or machine power point presentation
 
WebRTC and SIP not just audio and video @ OpenSIPS 2024
WebRTC and SIP not just audio and video @ OpenSIPS 2024WebRTC and SIP not just audio and video @ OpenSIPS 2024
WebRTC and SIP not just audio and video @ OpenSIPS 2024
 
How we scaled to 80K users by doing nothing!.pdf
How we scaled to 80K users by doing nothing!.pdfHow we scaled to 80K users by doing nothing!.pdf
How we scaled to 80K users by doing nothing!.pdf
 
Google I/O Extended 2024 Warsaw
Google I/O Extended 2024 WarsawGoogle I/O Extended 2024 Warsaw
Google I/O Extended 2024 Warsaw
 
Overview of Hyperledger Foundation
Overview of Hyperledger FoundationOverview of Hyperledger Foundation
Overview of Hyperledger Foundation
 

pebbles : A namespace for joke gems