61
pebbles 2011-07-18 Lightning Talks 2 kwappa (SHIOYA, Hiromu) A namespace for joke gems

pebbles : A namespace for joke gems

Embed Size (px)

DESCRIPTION

2011-07-18 RubyKaigi2011 18M09 Lightning Talks 2 pebbles : A namespace for joke gems pebbles: rubygemsにおけるジョークモジュールの名前空間について

Citation preview

Page 1: pebbles : A namespace for joke gems

pebbles2011-07-18 Lightning Talks 2kwappa (SHIOYA, Hiromu)

A namespace for joke gems

Page 2: pebbles : A namespace for joke gems

こんばんは!

Good Evening!

Page 3: pebbles : A namespace for joke gems

kwappa

SHIOYA, Hiromu塩谷 啓 http://www.kwappa.net/

Page 4: pebbles : A namespace for joke gems
Page 5: pebbles : A namespace for joke gems

a programmer

a drunk a fond parent

Page 6: pebbles : A namespace for joke gems

Presented byBorn in the NET,

Connected by the NET

Page 7: pebbles : A namespace for joke gems

エンジニア募集!

http://info.dwango.co.jp/recruit/

Page 8: pebbles : A namespace for joke gems

話したいことWhat I want to say

Page 9: pebbles : A namespace for joke gems

I propose that we use the namespace "pebbles"

for joke gems

ジョークモジュール用名前空間として

"pebbles"を提案します

Page 10: pebbles : A namespace for joke gems

ある日One day

Page 11: pebbles : A namespace for joke gems

「全裸」なrubygemを作った

http://twitter.com/zenra_bot

I created a gem called “zenra”

Page 12: pebbles : A namespace for joke gems

What is “zenra” ?

Page 13: pebbles : A namespace for joke gems

What is “zenra” ?require 'zenra'

Page 14: pebbles : A namespace for joke gems

What is “zenra” ?require 'zenra'message = '私はRubyを書きます。'

I write Ruby.

Page 15: pebbles : A namespace for joke gems

What is “zenra” ?require 'zenra'message = '私はRubyを書きます。'

puts Zenra.new.zenrize message

I write Ruby.

Page 16: pebbles : A namespace for joke gems

What is “zenra” ?require 'zenra'message = '私はRubyを書きます。'

puts Zenra.new.zenrize message# => "私はRubyを全裸で書きます。"

I write Ruby.

I write Ruby stark-naked.

Page 17: pebbles : A namespace for joke gems

How to install

Page 18: pebbles : A namespace for joke gems

% gem install zenra

How to install

Page 19: pebbles : A namespace for joke gems

% gem install zenra

How to install

deprecated

Page 20: pebbles : A namespace for joke gems

Why deprecated?

Page 21: pebbles : A namespace for joke gems

% gem search -r zen

Why deprecated?

Page 22: pebbles : A namespace for joke gems

% gem search -r zen (snip)zenprofile (1.3.1)zenra (0.1.0)zenslap (0.3.1)

(snip)

Why deprecated?

Page 23: pebbles : A namespace for joke gems

% gem search -r zen (snip)zenprofile (1.3.1)zenra (0.1.0)zenslap (0.3.1)

(snip)

Why deprecated?

seriousjokeserious

Page 24: pebbles : A namespace for joke gems

% gem search -r zen (snip)zenprofile (1.3.1)zenra (0.1.0)zenslap (0.3.1)

(snip)

Why deprecated?

how embarassing...

seriousjokeserious

Page 25: pebbles : A namespace for joke gems

別のある日Another day

Page 26: pebbles : A namespace for joke gems

http://blog.segment7.net/2010/11/15/how-to-name-gems

“How to Name Gems”

Page 29: pebbles : A namespace for joke gems

Use underscores•fancy_require•newrelic_rpm•ruby_parser

% gem install my_gem

require 'my_gem'

Page 31: pebbles : A namespace for joke gems

Use dashes for extensions•net-http-persistent•rdoc-chm•autotest-growl

% gem install net-http-persistent

Page 32: pebbles : A namespace for joke gems

Use dashes for extensions•net-http-persistent•rdoc-chm•autotest-growl

% gem install net-http-persistent

require 'net/http/persistent'

Page 33: pebbles : A namespace for joke gems
Page 34: pebbles : A namespace for joke gems

+ひらめいた

A flash of inspiration

Page 35: pebbles : A namespace for joke gems

Create a namespace for joke gems

http://mrg.bz/uLdp5w

ジョークモジュール用名前空間を作ろう

Page 36: pebbles : A namespace for joke gems
Page 38: pebbles : A namespace for joke gems

for example

Page 39: pebbles : A namespace for joke gems

for example

fizzbuzz

Page 40: pebbles : A namespace for joke gems

% gem install pebbles-fizzbuzz

for example

fizzbuzz

Page 41: pebbles : A namespace for joke gems
Page 42: pebbles : A namespace for joke gems

require 'pebbles/fizzbuzz'

Page 43: pebbles : A namespace for joke gems

require 'pebbles/fizzbuzz'

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

Page 44: pebbles : A namespace for joke gems

require 'pebbles/fizzbuzz'

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

12fizz4buzzfizz78fizzbuzz11fizz1314fizzbuzz

http://gungelads.com/gunging/?p=1683

Page 45: pebbles : A namespace for joke gems

fizzbuzz/└── lib/ └── pebbles/ └── fizzbuzz.rb

Directory structure

Page 46: pebbles : A namespace for joke gems

require 'pebbles'

class Pebbles::Fizzbuzz # snipend

Class definition

Page 47: pebbles : A namespace for joke gems

move “zenra” to ...

Page 48: pebbles : A namespace for joke gems

% gem install pebbles-zenra

move “zenra” to ...

Page 49: pebbles : A namespace for joke gems

% gem install pebbles-zenra

move “zenra” to ...

require 'pebbles/zenra’

Page 50: pebbles : A namespace for joke gems

% gem install pebbles-zenra

move “zenra” to ...

Less embarrassing!require 'pebbles/zenra’

https://rubygems.org/gems/pebbles-fizzbuzz

Page 51: pebbles : A namespace for joke gems

まとめConclusion

Page 52: pebbles : A namespace for joke gems

Use namespace "pebbles" when you make joke gems

ジョークモジュールを作るときは

"pebbles"を使ってね!

Page 53: pebbles : A namespace for joke gems

おまけBonus

Page 54: pebbles : A namespace for joke gems

I made a mistake

Page 55: pebbles : A namespace for joke gems

% gem search -r pebbles

I made a mistake

Page 56: pebbles : A namespace for joke gems

% gem search -r pebbles

pebbles (0.1.0)pebbles-fizzbuzz (0.1.1)pebbles-zenra (0.1.1)pebbles_audio_files (1.0.5)

I made a mistake

Page 57: pebbles : A namespace for joke gems

% gem search -r pebbles

pebbles (0.1.0)pebbles-fizzbuzz (0.1.1)pebbles-zenra (0.1.1)pebbles_audio_files (1.0.5)

I made a mistake

!

Page 58: pebbles : A namespace for joke gems
Page 59: pebbles : A namespace for joke gems

Apologies toRyan Smith andBobby Wilson.

Page 60: pebbles : A namespace for joke gems

pebblesNot Gems, just Pebbles

Page 61: pebbles : A namespace for joke gems

pebbles2011-07-18 RubyKaigi2011kwappa (SHIOYA, Hiromu)

Thank you for listening.

Not Gems, just Pebbles