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
Rubyで日本四大祭の一つを楽しんだ。
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
北䑓如法
March 05, 2016
Technology
1
1.3k
Rubyで日本四大祭の一つを楽しんだ。
Hiroshima Ruby Conference 2016 でRubyで日本四大祭の一つを楽しんだことについて発表しました。
北䑓如法
March 05, 2016
Tweet
Share
More Decks by 北䑓如法
See All by 北䑓如法
PyCon JP 2025で短いBGMを3曲作った / Composed 3 pieces of music for PyCon JP 2025
nyoho
0
28
PyCon JP 2025で「Pythonのピース」を集めるウェブアプリを作って運用した / Building and operating web apps to collect "Python pieces" at PyCon JP 2025
nyoho
0
32
PyCon JP 2025「すごい広島」コミュニティポスター制作記 / The making of a community poster of Great Hiroshima at PyCon JP 2025
nyoho
0
31
ビジュアライゼーションと数学 〜 すうがくむかしばなし 負の数・複素数編 〜 / Visualization-and-mathematics-OSH2022
nyoho
0
560
初心者、電子工作に入門。 Python Charity Talks 2021.09 / A beginner started electronic handicraft - Python Charity Talks 2021.09
nyoho
0
16k
Next.js + Heroku + Dockerでも玉ねぎの汁で涙が出んように 〜PyCon mini Hiroshima サイト構築の一コマ〜 / Avoiding onion essence with Next.js + Heroku + Docker -- development of the site of PyCon mini Hiroshima
nyoho
0
380
SageMathで数学の力を上げます PyCon mini Hiroshima 2019 / Enlarge your ability of mathematics with SageMath
nyoho
1
700
Python初心者がPyTorchをいじって機械学習の計算してみた PyCon mini Hiroshima 2018 / Python-newbies machine learning learning with PyTorch
nyoho
2
1.2k
RubyKaigi 2017 の告知 / A notification of RubyKaigi 2017 at WTM100
nyoho
0
2.1k
Other Decks in Technology
See All in Technology
ブロックテーマでサイトをリニューアルした話 / 2026-01-31 Kansai WordPress Meetup
torounit
0
480
OWASP Top 10:2025 リリースと 少しの日本語化にまつわる裏話
okdt
PRO
3
830
Frontier Agents (Kiro autonomous agent / AWS Security Agent / AWS DevOps Agent) の紹介
msysh
3
180
Claude_CodeでSEOを最適化する_AI_Ops_Community_Vol.2__マーケティングx_AIはここまで進化した.pdf
riku_423
2
610
セキュリティについて学ぶ会 / 2026 01 25 Takamatsu WordPress Meetup
rocketmartue
1
310
超初心者からでも大丈夫!オープンソース半導体の楽しみ方〜今こそ!オレオレチップをつくろう〜
keropiyo
0
120
SREチームをどう作り、どう育てるか ― Findy横断SREのマネジメント
rvirus0817
0
320
データの整合性を保ちたいだけなんだ
shoheimitani
8
3.2k
AIと新時代を切り拓く。これからのSREとメルカリIBISの挑戦
0gm
2
3k
Webhook best practices for rock solid and resilient deployments
glaforge
2
300
広告の効果検証を題材にした因果推論の精度検証について
zozotech
PRO
0
210
Context Engineeringの取り組み
nutslove
0
370
Featured
See All Featured
Joys of Absence: A Defence of Solitary Play
codingconduct
1
290
Have SEOs Ruined the Internet? - User Awareness of SEO in 2025
akashhashmi
0
270
Stewardship and Sustainability of Urban and Community Forests
pwiseman
0
110
More Than Pixels: Becoming A User Experience Designer
marktimemedia
3
320
Discover your Explorer Soul
emna__ayadi
2
1.1k
SERP Conf. Vienna - Web Accessibility: Optimizing for Inclusivity and SEO
sarafernandez
1
1.3k
SEOcharity - Dark patterns in SEO and UX: How to avoid them and build a more ethical web
sarafernandez
0
120
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
32
2.1k
Dominate Local Search Results - an insider guide to GBP, reviews, and Local SEO
greggifford
PRO
0
78
XXLCSS - How to scale CSS and keep your sanity
sugarenia
249
1.3M
Bootstrapping a Software Product
garrettdimon
PRO
307
120k
DevOps and Value Stream Thinking: Enabling flow, efficiency and business value
helenjbeal
1
100
Transcript
RubyͰຊ࢛େࡇ ͷҰͭΛָ͠Μͩɻ Introduction to Mention it to Balsers 㝳๏ from
Hiroshima.rb 20163݄4() @ Hiroshima Ruby Conference
ࣗݾհ
None
KITADAI, Yukinori 㝳๏ ▸ ͖͍ͨͩΏ͖ͷΓ ▸ ๏ΛԻಡΈ(༗৬ಡΈ)ͯ͠ʹΐ΄͏ ▸ ༵ϓϩάϥϚ
J1BEౡห ݕࡧ ৄ͘͠
ࠓHiroshima Ruby ConferenceͷϨϕϧΛԼ͛ ʹདྷ·ͨ͠!
RubyͰຊ࢛େࡇ ͷҰͭΛָ͠Μͩ?
࢛େࡇ? ϑϦʔࣸਅૉࡐͺͨͦ͘
෮श: ݹདྷΑΓΘΔ ຊࡾେࡇ
The three major festivals in Japan ݹདྷΑΓΘΔຊࡾେࡇ
The three major festivals in Japan ݹདྷΑΓΘΔຊࡾେࡇ ▸ ϠϚβΩय़ͷύϯࡇ
The three major festivals in Japan ݹདྷΑΓΘΔຊࡾେࡇ ▸ ϠϚβΩय़ͷύϯࡇ ▸
౦ө·Μ͕ࡇ
The three major festivals in Japan ݹདྷΑΓΘΔຊࡾେࡇ ▸ ϠϚβΩय़ͷύϯࡇ ▸
౦ө·Μ͕ࡇ ▸ ՖԦϔΞέΞࡇ
ۙՃ͞Εͨ 4ͭͷࡇͱ?
http://twitter.com/ama495/status/704556082220310528
http://twitter.com/ama495/status/704556082220310528
ʊਓਓਓਓਓਓਓਓਓʊ ʼɹόϧεࡇͰ͠ΐɹʻ ʉ̮̮̮̮̮̮̮̮̮ʉ
The fourth festival — Bals Fest όϧεࡇ ▸ ༵ۚϩʔυSHOW!Ͱʰఱۭͷϥϐϡλʱ์ૹ ▸
ΫϥΠϚοΫε໓ͼͷढจʮόϧεʯ ▸ ಉ࣌ʹTwitterͰօҰ੪ʹʮόϧεʯͱπΠʔτ ▸ …ͱ͍͏ຊʹΘΔ͓ࡇ ▸ TwitterͷετϨεςετͷׂ୲͏
Twitter Inc. provoked lol Twitterެࣜʮͥͻָ͓͠Έ͍ͩ͘͞ʯͱൃ
डཱ͚ͯͱ͏
͔ͤͬ͘ͳͷͰԿ͔ RubyͷϓϩάϥϜΛ ॻָ͍ͯ͠͏
ઌߦݚڀ
ઌߦݚڀ ▸ όϧεͱ͍͏πΠʔτ͕ۃʹଟ͘ͳͬͨ ΒʮόϧεʯͱࣗಈπΠʔτ͢Δ ▸ (ͳͲ)
͜͏͍͏ͷ ͍͍͚Ͳ
SNS ίϛϡχέʔγϣϯ ͯ͠ͳΜ΅͡ΌΖὑ
ϐίʔϯ
ʮόϧεʯͱπΠʔτͨ͠ਓʹ ʮφΠεόϧεʯͱϝϯγϣϯ ͠Α͏! όϧε !CBMTFSφΠεόϧε
͜Ε ɾ㱼ɾ řšƄŘ
ఱۭͷϥ ϐ ϡ λ ɺ ์ૹ։࢝ɻ
Α͏͍ͲΜ
None
None
༻ͨ͠gem
Used rubygems ༻ͨ͠gem ▸ twitter ▸ user_stream (ࠓ twitter gem
͕͋Εཁ Βͳ͍) ▸ foreman, doting, color_echo
……ຊ൪
όϧε!! γʔλͱύζʔ ͍ͭʹͦͷͱ͖͕!
ズバババババ!!!!!
ズバババババ!!!!!
ズバババババ!!!!!
͓͓͓ʔ! ͏·͍ͬͨ͘ʔ!
΄Ͳͳ͘…
お、お返事 がっ!!
お、お返事 がっ!!
お、お返事 がっ!!
ϓϩάϥϜͰ ͢Έ·ͤΜ"
ࣗͳΓʹ ͨ͠ͱ͜Ζ
ࣗͳΓʹͨ͠ͱ͜Ζ RT@URL͖ͭπΠʔτʹԠ͠ͳ͍Α͏ʹ if text !~ /^RT / and text !~
/@/ and text !~ /http/ and text =~ /όϧε/ if bals_density_high?(text) puts CE.fg(:green).get("@#{user.screen_name}: #{text}") @client.update("@#{status.user.screen_name} " + random_message, in_reply_to @client.favorite(status.id) end
ࣗͳΓʹͨ͠ͱ͜Ζ ʮφΠεόϧεʯҎ֎ͷϝοηʔδ ▸ ྻͷ .sample ศརͩͳ ▸ จࣈྻʹ͔͚ࢉͰ͖Δͷศརͩͳ def random_message
array = ['φΠεόϧε', ‘͜Ε͍͍όϧε', ‘͍͍όϧεͰͨ͠Αʙ', 'ϥϐϡλѪͷ͋;ΕΔόϧεͰͨ͠Ͷ', 'ૉΒ͍͠όϧε'] array.sample + '!' * rand(1..10) end
ࣗͳΓʹͨ͠ͱ͜Ζ ʮόϧεʯີͷߴ͍πΠʔτ͚ͩʹ ▸ ֯จࣈΛআ ▸ όϧεີͷ͍πΠʔτແࢹ (ʮόϧε͍ͬͯ͏ ͷ͕ྲྀߦ͍ͬͯΔΒ͍͠ʯͱ͔εϧʔ͍ͨ͠) def bals_density_high?
str return false if str.length == 0 s = str.gsub(/([[:ascii:]]|[[:punct:]])/,'') t = s.gsub(/όϧε/,'') t.length.to_f / s.length.to_f < 0.5 end
OSS Φʔϓϯιʔε ▸ GitHubͰެ։͍ͯ͠·͢ ▸ https://github.com/Nyoho/MentionItToBalsers
OSS Φʔϓϯιʔε ▸ GitHubͰެ։͍ͯ͠·͢ ▸ https://github.com/Nyoho/MentionItToBalsers
OSS Φʔϓϯιʔε ▸ GitHubͰެ։͍ͯ͠·͢ ▸ https://github.com/Nyoho/MentionItToBalsers ͬɺผʹ4UBS͠ʜ
Conclusion ·ͱΊ ▸ ͜ͷΑ͏ʹझຯͰRubyΛָ͠ΜͰ͍·͢ ▸ ·ͭͱ͞ΜΛ࢝Ίͱͨ͠RubyʹؔΘΔ օ༷ʹײँ ▸ ͋Γ͕ͱ͏͍͟͝·ͨ͠ɻ
Appendix ͦͷଞͷ੍࡞ ▸ TwitterͰʹ ʮ!/F9545&1049 ΞΠίϯΛʙʹมߋͯ͠ʯͱϝϯγϣϯ͢ ΔͱɺͷΞΠίϯΛͦͷจࣈྻΛͬͨ ը૾ʹมߋ͢ΔγεςϜ(POV-RayͰϨϯμ Ϧϯάͨ͠3DCG) ▸
TwitterͷϑΥϩϫͷࠩΛه͢Δͷ