Suche senden
Hochladen
DSLについて語るときに僕の語ること
•
0 gefällt mir
•
1,786 views
Tomohiro Nishimura
Folgen
Technologie
Melden
Teilen
Melden
Teilen
1 von 116
Jetzt herunterladen
Downloaden Sie, um offline zu lesen
Empfohlen
2017-05-23 Speee Cafe Meetup #07
クローズドソースから始めるオープンソース
クローズドソースから始めるオープンソース
Takafumi ONAKA
OSC広島2013のHiroshima.rbでLTした資料。 岡山のRuby関連勉強会の紹介
岡山のRuby勉強会(OSC広島2013)
岡山のRuby勉強会(OSC広島2013)
Makoto Henmi
RailsGirls Osaka#2 発表資料
RubyとRailsのおいしい使い方
RubyとRailsのおいしい使い方
Satomi Tsujita
札幌市中央区Ruby会議01 での発表資料です。
Rails あるある
Rails あるある
Ryunosuke SATO
DeNA×マネーフォワード×Wantedlyの3社合同で開催したRailsエンジニアセミナーの発表資料です。 「Wantedlyの作り方」というタイトルで、Wantedlyがどう作られてきたのか、現在どう作っているのか、さらにこれからどう作り変えていくのかについて話をしました。
DeNA×マネーフォワード×Wantedly Railsエンジニアセミナー
DeNA×マネーフォワード×Wantedly Railsエンジニアセミナー
Nao Minami
Chatterbot Reudy on Ruby1.9
Reudy on Ruby1.9
Reudy on Ruby1.9
Glass_saga
西日暮里.rb一周年記念 LT
Sprocketsを捨てたい
Sprocketsを捨てたい
Masato Noguchi
JSFとJAX-RSで作る Thin Server Architecture #glassfishjp
JSFとJAX-RSで作る Thin Server Architecture #glassfishjp
Toshiaki Maki
Empfohlen
2017-05-23 Speee Cafe Meetup #07
クローズドソースから始めるオープンソース
クローズドソースから始めるオープンソース
Takafumi ONAKA
OSC広島2013のHiroshima.rbでLTした資料。 岡山のRuby関連勉強会の紹介
岡山のRuby勉強会(OSC広島2013)
岡山のRuby勉強会(OSC広島2013)
Makoto Henmi
RailsGirls Osaka#2 発表資料
RubyとRailsのおいしい使い方
RubyとRailsのおいしい使い方
Satomi Tsujita
札幌市中央区Ruby会議01 での発表資料です。
Rails あるある
Rails あるある
Ryunosuke SATO
DeNA×マネーフォワード×Wantedlyの3社合同で開催したRailsエンジニアセミナーの発表資料です。 「Wantedlyの作り方」というタイトルで、Wantedlyがどう作られてきたのか、現在どう作っているのか、さらにこれからどう作り変えていくのかについて話をしました。
DeNA×マネーフォワード×Wantedly Railsエンジニアセミナー
DeNA×マネーフォワード×Wantedly Railsエンジニアセミナー
Nao Minami
Chatterbot Reudy on Ruby1.9
Reudy on Ruby1.9
Reudy on Ruby1.9
Glass_saga
西日暮里.rb一周年記念 LT
Sprocketsを捨てたい
Sprocketsを捨てたい
Masato Noguchi
JSFとJAX-RSで作る Thin Server Architecture #glassfishjp
JSFとJAX-RSで作る Thin Server Architecture #glassfishjp
Toshiaki Maki
新宿.rb #30 LT資料
僕はどうしてもLibsassが使いたかったんだ!
僕はどうしてもLibsassが使いたかったんだ!
Masato Noguchi
Ruby/ Ruby on Railsビギナーズ勉強会 第9回資料です
Railsのフロントエンド開発を考える
Railsのフロントエンド開発を考える
Hirata Tomoko
Ruby/ Ruby on Railsビギナーズ勉強会 第8回資料です
Rails+Markdownでなにかつくる
Rails+Markdownでなにかつくる
Hirata Tomoko
JSer infoでやったLTの資料
RailsのRailから解放される始めの一歩
RailsのRailから解放される始めの一歩
Masato Noguchi
2017-12-09 Rails Developers Meetup 2017
RSpecしぐさ
RSpecしぐさ
Takafumi ONAKA
Rubyビジネスセミナー大阪 2015年1月29日で使用したスライドです。
Rubyビジネスセミナー大阪2015
Rubyビジネスセミナー大阪2015
Satomi Tsujita
Ruby / Rails ビギナーズ勉強会 第17回 #coedorb https://coedo-rails.doorkeeper.jp/events/52638
Railsチュートリアル(second)を終えて
Railsチュートリアル(second)を終えて
Hirata Tomoko
Ruby/ Ruby on Railsビギナーズ勉強会 第5回資料です
WindowsユーザのためのRails環境構築
WindowsユーザのためのRails環境構築
Hirata Tomoko
rails-fluxchat-example https://github.com/takeyuweb/rails-fluxchat-example を作ったときに使ってみたgemについての簡単な紹介。
使ってみたAssets系gemの紹介
使ってみたAssets系gemの紹介
Takeuchi Yuichi
SpringBoot劇的ビフォーアフター
Spring boot劇的ビフォーアフター
Spring boot劇的ビフォーアフター
orekyuu
2017-06-22 Rails Developers Meetup #2
ふつうのRailsアプリケーション開発
ふつうのRailsアプリケーション開発
Takafumi ONAKA
Rust LT Online #6 で登壇した際の発表資料です。 イベントページ: https://rust.connpass.com/event/234637/ スライド内で紹介した記事: https://qiita.com/tsuchinoko0402/items/dda60c43dbe4e83e729d
Rustで DDD を実践しながら API サーバーを実装・構築した(つもり)
Rustで DDD を実践しながら API サーバーを実装・構築した(つもり)
ShogoOkazaki
第2回モヤLT_マニモト_なかおくん
第2回モヤLT_マニモト_なかおくん
第2回モヤLT_マニモト_なかおくん
Norihiko Matsumoto
Riot.js 勉強会 @Tokyo #1 (http://riotjs-jp.connpass.com/event/35724/) でLTした内容です。
Riot.jsと仲良くなるための僕的tips
Riot.jsと仲良くなるための僕的tips
Keisuke Imai
「おれのWebサービス」について個人の視点に立った意見を中心に
MF GeeksNight pplogの話
MF GeeksNight pplogの話
Naoto Koshikawa
さわってみよう Couchbase Lite
さわってみよう Couchbase Lite
ssd kfk
Innovation EGG 第二回 XEGG での発表資料です。
Ruby on Rails の特徴とそのエコシステム
Ruby on Rails の特徴とそのエコシステム
Tomoya Kawanishi
Yokohama.rbで行なったRubyKaja候補を推薦する資料
Yokohama.rb Kaja推薦
Yokohama.rb Kaja推薦
joker1007
2015年6月6日 第18回 岡山Ruby, Ruby on Rails勉強会
RubyとRのおいしい関係
RubyとRのおいしい関係
sady_nitro
Shinjuku.rb #60 の発表資料
bootsnapはどれくらい早くなるのか
bootsnapはどれくらい早くなるのか
ota42y
http://www.juse.jp/sqip/symposium/detail/day1/#session_B2-3 のスライド。だけど、デモ見ないと伝わんないのよね... このスライドの裏バージョンが http://www.slideshare.net/mnagaku/nerv
高品質ノベルゲーム開発基盤の提案
高品質ノベルゲーム開発基盤の提案
Masaru Nagaku
Kawaz - 「レイチェル」演出勉強会 http://www.kawaz.org/events/318/ ノベルゲーム制作にて動的な演出を考える時、どこに着目して開発すれば良いかをまとめています。 スライド中に使用した動画に関して怒られそうならこのスライドは取り下げます。 (youtubeの動画埋め込めるらしいですけど面倒なので埋め込んでないです。動画はクリックでyoutubeへ飛びます)
ノベルゲーム動的演出の考え方
ノベルゲーム動的演出の考え方
tuna cook
Weitere ähnliche Inhalte
Was ist angesagt?
新宿.rb #30 LT資料
僕はどうしてもLibsassが使いたかったんだ!
僕はどうしてもLibsassが使いたかったんだ!
Masato Noguchi
Ruby/ Ruby on Railsビギナーズ勉強会 第9回資料です
Railsのフロントエンド開発を考える
Railsのフロントエンド開発を考える
Hirata Tomoko
Ruby/ Ruby on Railsビギナーズ勉強会 第8回資料です
Rails+Markdownでなにかつくる
Rails+Markdownでなにかつくる
Hirata Tomoko
JSer infoでやったLTの資料
RailsのRailから解放される始めの一歩
RailsのRailから解放される始めの一歩
Masato Noguchi
2017-12-09 Rails Developers Meetup 2017
RSpecしぐさ
RSpecしぐさ
Takafumi ONAKA
Rubyビジネスセミナー大阪 2015年1月29日で使用したスライドです。
Rubyビジネスセミナー大阪2015
Rubyビジネスセミナー大阪2015
Satomi Tsujita
Ruby / Rails ビギナーズ勉強会 第17回 #coedorb https://coedo-rails.doorkeeper.jp/events/52638
Railsチュートリアル(second)を終えて
Railsチュートリアル(second)を終えて
Hirata Tomoko
Ruby/ Ruby on Railsビギナーズ勉強会 第5回資料です
WindowsユーザのためのRails環境構築
WindowsユーザのためのRails環境構築
Hirata Tomoko
rails-fluxchat-example https://github.com/takeyuweb/rails-fluxchat-example を作ったときに使ってみたgemについての簡単な紹介。
使ってみたAssets系gemの紹介
使ってみたAssets系gemの紹介
Takeuchi Yuichi
SpringBoot劇的ビフォーアフター
Spring boot劇的ビフォーアフター
Spring boot劇的ビフォーアフター
orekyuu
2017-06-22 Rails Developers Meetup #2
ふつうのRailsアプリケーション開発
ふつうのRailsアプリケーション開発
Takafumi ONAKA
Rust LT Online #6 で登壇した際の発表資料です。 イベントページ: https://rust.connpass.com/event/234637/ スライド内で紹介した記事: https://qiita.com/tsuchinoko0402/items/dda60c43dbe4e83e729d
Rustで DDD を実践しながら API サーバーを実装・構築した(つもり)
Rustで DDD を実践しながら API サーバーを実装・構築した(つもり)
ShogoOkazaki
第2回モヤLT_マニモト_なかおくん
第2回モヤLT_マニモト_なかおくん
第2回モヤLT_マニモト_なかおくん
Norihiko Matsumoto
Riot.js 勉強会 @Tokyo #1 (http://riotjs-jp.connpass.com/event/35724/) でLTした内容です。
Riot.jsと仲良くなるための僕的tips
Riot.jsと仲良くなるための僕的tips
Keisuke Imai
「おれのWebサービス」について個人の視点に立った意見を中心に
MF GeeksNight pplogの話
MF GeeksNight pplogの話
Naoto Koshikawa
さわってみよう Couchbase Lite
さわってみよう Couchbase Lite
ssd kfk
Innovation EGG 第二回 XEGG での発表資料です。
Ruby on Rails の特徴とそのエコシステム
Ruby on Rails の特徴とそのエコシステム
Tomoya Kawanishi
Yokohama.rbで行なったRubyKaja候補を推薦する資料
Yokohama.rb Kaja推薦
Yokohama.rb Kaja推薦
joker1007
2015年6月6日 第18回 岡山Ruby, Ruby on Rails勉強会
RubyとRのおいしい関係
RubyとRのおいしい関係
sady_nitro
Shinjuku.rb #60 の発表資料
bootsnapはどれくらい早くなるのか
bootsnapはどれくらい早くなるのか
ota42y
Was ist angesagt?
(20)
僕はどうしてもLibsassが使いたかったんだ!
僕はどうしてもLibsassが使いたかったんだ!
Railsのフロントエンド開発を考える
Railsのフロントエンド開発を考える
Rails+Markdownでなにかつくる
Rails+Markdownでなにかつくる
RailsのRailから解放される始めの一歩
RailsのRailから解放される始めの一歩
RSpecしぐさ
RSpecしぐさ
Rubyビジネスセミナー大阪2015
Rubyビジネスセミナー大阪2015
Railsチュートリアル(second)を終えて
Railsチュートリアル(second)を終えて
WindowsユーザのためのRails環境構築
WindowsユーザのためのRails環境構築
使ってみたAssets系gemの紹介
使ってみたAssets系gemの紹介
Spring boot劇的ビフォーアフター
Spring boot劇的ビフォーアフター
ふつうのRailsアプリケーション開発
ふつうのRailsアプリケーション開発
Rustで DDD を実践しながら API サーバーを実装・構築した(つもり)
Rustで DDD を実践しながら API サーバーを実装・構築した(つもり)
第2回モヤLT_マニモト_なかおくん
第2回モヤLT_マニモト_なかおくん
Riot.jsと仲良くなるための僕的tips
Riot.jsと仲良くなるための僕的tips
MF GeeksNight pplogの話
MF GeeksNight pplogの話
さわってみよう Couchbase Lite
さわってみよう Couchbase Lite
Ruby on Rails の特徴とそのエコシステム
Ruby on Rails の特徴とそのエコシステム
Yokohama.rb Kaja推薦
Yokohama.rb Kaja推薦
RubyとRのおいしい関係
RubyとRのおいしい関係
bootsnapはどれくらい早くなるのか
bootsnapはどれくらい早くなるのか
Andere mochten auch
http://www.juse.jp/sqip/symposium/detail/day1/#session_B2-3 のスライド。だけど、デモ見ないと伝わんないのよね... このスライドの裏バージョンが http://www.slideshare.net/mnagaku/nerv
高品質ノベルゲーム開発基盤の提案
高品質ノベルゲーム開発基盤の提案
Masaru Nagaku
Kawaz - 「レイチェル」演出勉強会 http://www.kawaz.org/events/318/ ノベルゲーム制作にて動的な演出を考える時、どこに着目して開発すれば良いかをまとめています。 スライド中に使用した動画に関して怒られそうならこのスライドは取り下げます。 (youtubeの動画埋め込めるらしいですけど面倒なので埋め込んでないです。動画はクリックでyoutubeへ飛びます)
ノベルゲーム動的演出の考え方
ノベルゲーム動的演出の考え方
tuna cook
0006
0006
sts9ratm0624
2011/06/11 Hokuriku.NET C# LINQ入門 http://atnd.org/events/15800
C# linq入門 意図編
C# linq入門 意図編
Fujio Kojima
AppEngine Ja Night #4 at Ginza
SimpleModeler
SimpleModeler
Tomoharu ASAMI
日本OR学会2015年春期研究発表会(2015年3月、東京理科大学)での講演スライド http://www.orsj.or.jp/2015spring/?page_id=13
ORと経済学の「結婚」問題
ORと経済学の「結婚」問題
Yosuke YASUDA
Play framework 2 meetup http://connpass.com/event/6020/ の発表資料です。
Dslからのコードジェネレーションで楽々play開発
Dslからのコードジェネレーションで楽々play開発
Yoshiteru Takeshita
文書をプログラムにする技術 - SimpleModeler + Mindmap & SmartDox
文書をプログラムにする技術 - SimpleModeler + Mindmap & SmartDox
Tomoharu ASAMI
札幌ゲーム製作者コミュニティKawazの2014年9月ミーティングで発表
「サウンドノベル」のゲーム体験
「サウンドノベル」のゲーム体験
tuna cook
MMOGで考えるゲームデザイン
MMOGで考えるゲームデザイン
Katsumi Mizushima
Nwrノルウェースタディーツアー概要
Nwrノルウェースタディーツアー概要
nwrnet
20140223 Co-Lab企画使用スライド。
バーニングマンから考える組織論 20140223Co-Lab用
バーニングマンから考える組織論 20140223Co-Lab用
明弘 野村
マイケル・ポーターの『競争の戦略』を読んだら。
マイケル・ポーターの『競争の戦略』を読んだら。
剛 大島
モテない男のソリューション -万葉恋愛メソッド- https://note.mu/watanabeikko/n/n98ccf53ba6ab
モテない男のソリューション -万葉恋愛メソッド-
モテない男のソリューション -万葉恋愛メソッド-
sukopun
【Nwr】0417おしゃれな生き方
【Nwr】0417おしゃれな生き方
nwrnet
Leadership
Leadership
Hisakazu Hirabayashi
オトナとRuby (https://toruby.doorkeeper.jp/events/30722)
プロの無職についての考察:序
プロの無職についての考察:序
Koichi ITO
2011/10/15 「Python Developers Festa」で公開したプレゼン資料です。 【ブログ】http://milk200ml.blog73.fc2.com/
女性にモテるためのIT系男子的部屋の片付け術
女性にモテるためのIT系男子的部屋の片付け術
やまもと さをん
収入と貯蓄の関係V1
収入と貯蓄の関係V1
Shimizu Hitoshi
(10)昇進管理
(10)昇進管理
Kenta Funaki
Andere mochten auch
(20)
高品質ノベルゲーム開発基盤の提案
高品質ノベルゲーム開発基盤の提案
ノベルゲーム動的演出の考え方
ノベルゲーム動的演出の考え方
0006
0006
C# linq入門 意図編
C# linq入門 意図編
SimpleModeler
SimpleModeler
ORと経済学の「結婚」問題
ORと経済学の「結婚」問題
Dslからのコードジェネレーションで楽々play開発
Dslからのコードジェネレーションで楽々play開発
文書をプログラムにする技術 - SimpleModeler + Mindmap & SmartDox
文書をプログラムにする技術 - SimpleModeler + Mindmap & SmartDox
「サウンドノベル」のゲーム体験
「サウンドノベル」のゲーム体験
MMOGで考えるゲームデザイン
MMOGで考えるゲームデザイン
Nwrノルウェースタディーツアー概要
Nwrノルウェースタディーツアー概要
バーニングマンから考える組織論 20140223Co-Lab用
バーニングマンから考える組織論 20140223Co-Lab用
マイケル・ポーターの『競争の戦略』を読んだら。
マイケル・ポーターの『競争の戦略』を読んだら。
モテない男のソリューション -万葉恋愛メソッド-
モテない男のソリューション -万葉恋愛メソッド-
【Nwr】0417おしゃれな生き方
【Nwr】0417おしゃれな生き方
Leadership
Leadership
プロの無職についての考察:序
プロの無職についての考察:序
女性にモテるためのIT系男子的部屋の片付け術
女性にモテるためのIT系男子的部屋の片付け術
収入と貯蓄の関係V1
収入と貯蓄の関係V1
(10)昇進管理
(10)昇進管理
Ähnlich wie DSLについて語るときに僕の語ること
CodeIgniterでXMLを処理してみる
CodeIgniterでXMLを処理してみる
智之 大野
my unite plugins
my unite plugins
basyura
6/30に実施したShibuya.trac第12回勉強会チケット管理システム大決戦第二弾の資料です。
チケット管理システム大決戦第二弾
チケット管理システム大決戦第二弾
Ryutaro YOSHIBA
Ruby StyleStatsの紹介
Ruby StyleStatsの紹介
Ruby StyleStatsの紹介
Toshihiro Gotou
東京Crystal勉強会 #3 での発表資料
CrystalでもRailsを使いたいですか?
CrystalでもRailsを使いたいですか?
Masayuki Uchida
2013/3/25 http://atnd.org/events/37175 の資料です。
Hyper → Highspeed → Development
Hyper → Highspeed → Development
aktsk
Building Static Website With Github And Jekyll
Building Static Website With Github And Jekyll
Yoji Shidara
Try to search listener commetns on broadcasting with rroonga. It's used for groonga benkyokai3.
Groonga勉強会3 生放送でコメント検索してみた
Groonga勉強会3 生放送でコメント検索してみた
temitan
第73回Ruby関西 発表資料 Ruby から C# を扱う方法の説明 ruby-csharp_script の説明
RubyからC#を扱う
RubyからC#を扱う
107steps
Ruby/ Ruby on Railsビギナーズ勉強会 第13回資料です
Rails5クイックスタート
Rails5クイックスタート
Hirata Tomoko
TokyuRuby会議#09 LT
Application Bootstrap
Application Bootstrap
Takafumi ONAKA
ruby-csharp_script を使った C# と Ruby をつなぐやり方
C#とRubyをつなぐ
C#とRubyをつなぐ
107steps
@ITが開始した新サービス「QA@IT」はHerokuで動いています。サービスと、Herokuの使い方についてユーザー会でお話させていただきました
QA@IT on Heroku
QA@IT on Heroku
Ken Nishimura
川崎Ruby会議01 で発表した資料です
Railsエンジニアが サーバーレスアーキテクチャに 手を出したよ - 川崎Ruby会議01
Railsエンジニアが サーバーレスアーキテクチャに 手を出したよ - 川崎Ruby会議01
Yuta Shimizu
初級を抜け出すためにやったこと、「Ruby逆引きレシピ 232」「リファクタリングRuby」「メタプログラミングRuby」の面白かったところをお話させていただきます。
名古屋Ruby会議02 LT:Ruby中級への道
名古屋Ruby会議02 LT:Ruby中級への道
Shigeru UCHIYAMA
20140930 anything as_code
20140930 anything as_code
20140930 anything as_code
Sugawara Genki
大江戸Ruby会議05 の Ninja Talks です。 http://regional.rubykaigi.org/oedo05/
Ember コミュニティとわたし
Ember コミュニティとわたし
Ryunosuke SATO
Ruby Sapporo Night Vol4
Ruby Sapporo Night Vol4
Koji SHIMADA
OSC 2013 Hiroshima の発表者資料。 時間の都合省いた部分を含めた完全版。
広島で Ruby が流行らないのはどう考えても俺たちが悪い
広島で Ruby が流行らないのはどう考えても俺たちが悪い
Tomohiko Himura
補足などはこちら http://d.hatena.ne.jp/tkawa/20120227/p1 http://d.hatena.ne.jp/tkawa/20120227/p2
RESTとRailsスタイル
RESTとRailsスタイル
Toru Kawamura
Ähnlich wie DSLについて語るときに僕の語ること
(20)
CodeIgniterでXMLを処理してみる
CodeIgniterでXMLを処理してみる
my unite plugins
my unite plugins
チケット管理システム大決戦第二弾
チケット管理システム大決戦第二弾
Ruby StyleStatsの紹介
Ruby StyleStatsの紹介
CrystalでもRailsを使いたいですか?
CrystalでもRailsを使いたいですか?
Hyper → Highspeed → Development
Hyper → Highspeed → Development
Building Static Website With Github And Jekyll
Building Static Website With Github And Jekyll
Groonga勉強会3 生放送でコメント検索してみた
Groonga勉強会3 生放送でコメント検索してみた
RubyからC#を扱う
RubyからC#を扱う
Rails5クイックスタート
Rails5クイックスタート
Application Bootstrap
Application Bootstrap
C#とRubyをつなぐ
C#とRubyをつなぐ
QA@IT on Heroku
QA@IT on Heroku
Railsエンジニアが サーバーレスアーキテクチャに 手を出したよ - 川崎Ruby会議01
Railsエンジニアが サーバーレスアーキテクチャに 手を出したよ - 川崎Ruby会議01
名古屋Ruby会議02 LT:Ruby中級への道
名古屋Ruby会議02 LT:Ruby中級への道
20140930 anything as_code
20140930 anything as_code
Ember コミュニティとわたし
Ember コミュニティとわたし
Ruby Sapporo Night Vol4
Ruby Sapporo Night Vol4
広島で Ruby が流行らないのはどう考えても俺たちが悪い
広島で Ruby が流行らないのはどう考えても俺たちが悪い
RESTとRailsスタイル
RESTとRailsスタイル
Mehr von Tomohiro Nishimura
言い訳がしたくなったら、言い訳が出来ない状況を作ってみる。
逃げ道をなくすということについて、僕の持っている知見を話します。
逃げ道をなくすということについて、僕の持っている知見を話します。
Tomohiro Nishimura
Ruby 2.0 以降の変更をシュッとふりかえります。。
シュッとふりかえる Ruby 2.0 以降
シュッとふりかえる Ruby 2.0 以降
Tomohiro Nishimura
Atom 紹介の背景画像
Atom ことはじめ
Atom ことはじめ
Tomohiro Nishimura
The way to the Kyoto.rb
The way to the Kyoto.rb
Tomohiro Nishimura
もくもく会をしました。
Kyotorb#4
Kyotorb#4
Tomohiro Nishimura
Kyotorb#3
Kyotorb#3
Tomohiro Nishimura
Kyotorb Meetup #2
Kyotorb Meetup #2
Tomohiro Nishimura
Kyoto.rb
Kyoto.rb
Tomohiro Nishimura
古いマシンからサルベージしたものから自己紹介とかネタの部分を消したもの
KPTのすすめ
KPTのすすめ
Tomohiro Nishimura
ふりかえりふりかえる
2010年ふりかえる
2010年ふりかえる
Tomohiro Nishimura
HTML5 のコンテンツモデルについて。
Rubyist のための HTML5 入門 -Content Models-
Rubyist のための HTML5 入門 -Content Models-
Tomohiro Nishimura
NoSQL を Ruby で実践するための n 個の方法
NoSQL を Ruby で実践するための n 個の方法
Tomohiro Nishimura
OSC Kyoto 2010
Boys, do LiveCoding
Boys, do LiveCoding
Tomohiro Nishimura
Vim Text Object
Vim Text Object
Tomohiro Nishimura
Introduce the LiveCoding
Introduce the LiveCoding
Tomohiro Nishimura
2009年ふりかえり
2009年ふりかえり
Tomohiro Nishimura
It's Mechanize for it. Ruby as a Finder.
It's Mechanize for it. Ruby as a Finder.
Tomohiro Nishimura
Lazyselect
Lazyselect
Tomohiro Nishimura
Introduce the Hacobu
Introduce the Hacobu
Tomohiro Nishimura
Rubyで始めるGTD
Rubyで始めるGTD
Tomohiro Nishimura
Mehr von Tomohiro Nishimura
(20)
逃げ道をなくすということについて、僕の持っている知見を話します。
逃げ道をなくすということについて、僕の持っている知見を話します。
シュッとふりかえる Ruby 2.0 以降
シュッとふりかえる Ruby 2.0 以降
Atom ことはじめ
Atom ことはじめ
The way to the Kyoto.rb
The way to the Kyoto.rb
Kyotorb#4
Kyotorb#4
Kyotorb#3
Kyotorb#3
Kyotorb Meetup #2
Kyotorb Meetup #2
Kyoto.rb
Kyoto.rb
KPTのすすめ
KPTのすすめ
2010年ふりかえる
2010年ふりかえる
Rubyist のための HTML5 入門 -Content Models-
Rubyist のための HTML5 入門 -Content Models-
NoSQL を Ruby で実践するための n 個の方法
NoSQL を Ruby で実践するための n 個の方法
Boys, do LiveCoding
Boys, do LiveCoding
Vim Text Object
Vim Text Object
Introduce the LiveCoding
Introduce the LiveCoding
2009年ふりかえり
2009年ふりかえり
It's Mechanize for it. Ruby as a Finder.
It's Mechanize for it. Ruby as a Finder.
Lazyselect
Lazyselect
Introduce the Hacobu
Introduce the Hacobu
Rubyで始めるGTD
Rubyで始めるGTD
Kürzlich hochgeladen
2024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
iPride Co., Ltd.
2024年4月に社内向けに開催した勉強会資料の社外公開版です
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
Hiroshi Tomioka
LoRaWANスマート距離検出センサー DS20Lカタログ
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
CRI Japan, Inc.
2024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
iPride Co., Ltd.
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
CRI Japan, Inc.
2024/04/26の勉強会で発表されたものです。
新人研修 後半 2024/04/26の勉強会で発表されたものです。
新人研修 後半 2024/04/26の勉強会で発表されたものです。
iPride Co., Ltd.
NewSQLの可用性構成パターン (OCHaCafe Season 8 #4 発表資料) 2024年5月8日(水) NTTデータグループ 技術開発本部 小林 隆浩
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NTT DATA Technology & Innovation
Kürzlich hochgeladen
(7)
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
新人研修 後半 2024/04/26の勉強会で発表されたものです。
新人研修 後半 2024/04/26の勉強会で発表されたものです。
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
DSLについて語るときに僕の語ること
1.
DSLについて語るとき に僕の語ること @Sixeight 第61回 Ruby/Rails勉強会@関西
2.
まとめ • いまさら感があふれる話 • DSLで効率UP •
DSLはこわくない • やりすぎると駄目
3.
4.
@Sixeight https://github.com/Sixeight
5.
@tomohi_ro https://twitter.com/tomohi_ro
6.
西村 友裕 にしむら ともひろ
7.
その他 • Happy Elements株式会社
(京都) • Rails (Ruby) / Unity (C#) • 鴨川シャボン玉の会 • Vim → Atom • Fragment <3
8.
その他 • Happy Elements株式会社
(京都) • Rails (Ruby) / Unity (C#) • 鴨川シャボン玉の会 • Vim → Atom • Fragment <3
9.
10.
Instagram Mextures Tangsten & Fragment LoryStripes http://pixiteapps.com/
11.
つづきはブログで http://sixeight.hatenablog.com/ [壊しました] タグで土日以外毎日更新
12.
本題
13.
DSL
14.
Domain Specific Language
15.
–ウィキペディア ドメイン固有言語(ドメインこゆうげんご、 英: domain-specific language、DSL) とは、特定のタスク向けに設計されたコンピュー タ言語を意味する。
16.
例えば Rake
17.
desc "Install binaries" task
:install do cp FileList["bin/*"], "/usr/local/bin" end
18.
利点 • もっとも簡単な方法で記述できる • 出来ることが限定されているがゆえに安全 •
コード自体がドキュメントとしての役割を 果たすことが多い 特定の問題に特化しているから、 • • • • • • • • • • • • • •
19.
欠点 • 学習コストが高い • 応用が効かない •
問題の範囲を決めるのが難しく、特化でき ないことが多い 特定の問題に特化しているから、 • • • • • • • • • • • • • •
20.
外部?内部?
21.
外部DSL インタプリタを作るようなもの 全てが自作のDIY精神にあふれるDSL
22.
内部DSL 別の言語の構文を使って、 なんか別の言語っぽい感じにする
23.
たとえば Ruby で 内部DSLを作れば、 べんりな構文やライ ブラリが使い放題
24.
実例
25.
ActiveAdmin なんかいい感じで管理画面作ってくれるやつ
26.
ガチャを作るDSL アルバイトでも追加できるように最低限しか書けない ビジネスへの影響が大きいため内部を隠蔽するのは重要
27.
APIを定義するDSL サーバー(Ruby)側、クライアント(C#)側、ドキュメントを自動生 成する。通信不要のモックも作成し、バージョンにも対応。べんり。
28.
じ、自作…?
29.
なぜ作るのか • DSLにするとテンションが上がるから • 勉強会で自慢できるから •
そこに問題がある(ry
30.
利点を思い出そう
31.
利点 • もっとも簡単な方法で記述できる • 出来ることが限定されているがゆえに安全 •
コード自体がドキュメントとしての役割を 果たすことが多い 特定の問題に特化しているから、 • • • • • • • • • • • • • •
32.
なぜ作るのか • めんどうな業務を単純化 (簡単) •
誰がやっても同じ結果 (安全) • 読みやすく説明が不要 (ドキュメント)
33.
めんどうな業務を 単純化 新しいガチャを追加するのに Migration ファイルを作って データを追加して、Controller
と View をコピペして… 設定ファイル(DSL)を記述 簡単
34.
誰がやっても同じ結果 アルバイトにガチャの追加を頼んだら、フッターのリンクが以前の ガチャのものになっていてレアの詳細を見ることが出来なかった 設定ファイル(DSL)は本当に必要なことしか記述しなく てよいので、間違えにくいし、間違いに気づきやすい 安全
35.
誰がやっても同じ結果 アルバイトにガチャの追加を頼んだら、フッターのリンクが以前の ガチャのものになっていてレアの詳細を見ることが出来なかった 設定ファイル(DSL)は本当に必要なことしか記述しなく てよいので、間違えにくいし、間違いに気づきやすい 安全 レビューしようとい うのはまた別の問題
36.
読みやすく説明が不要 新人の人にガチャの追加方法を説明していたらお昼ごはんの時間 になっていて、戻ってきたらもう一度教えてほしいと言われる 設定ファイル(DSL)を読めばだいたい分かる コピペでもOK ドキュメント
37.
なぜ今さら 啓蒙するのか
38.
Ruby が仕事で使われるよう になって久しい今だからこそ DSLで業務を効率化しよう
39.
今だからこそ…? • 仕事で Ruby
を使うことが普通になった • 情報も参考になるコードもあふれている • 業界をリード(笑)するあの上司にも Ruby で DSL で DO すると言えば通りやすそう
40.
発表内容に困って主張を捏 造した。今は反省している。
41.
まとめ • いまさら感があふれる話 • DSLで効率UP •
DSLはこわくない • やりすぎると駄目
42.
先週も同じようなコード 書きませんでしたか
43.
それDSLでできるよ
44.
注意 例はめっちゃ適当です
45.
毎日のように似たような メソッドを書いている
46.
宣言系DSL そんなあなたに、
47.
つらい現実 人間のすることじゃない
48.
べんりな真実 そう、DSLならね
49.
宣言系DSL
50.
毎日同じ手順を 書いている
51.
操作系DSL そんなあなたに、
52.
つらい現実 エラーが起きる場所すべてにコピペ
53.
べんりな真実 そう、DSLならね
54.
操作系DSL
55.
クラスのインスタンスを組 み立てるのに苦労している
56.
設定系DSL そんなあなたに、
57.
つらい現実 めんどうだし読みにくい
58.
べんりな真実 そう、DSLならね
59.
設定系DSL
60.
routes.rb 編集して、 Controller 作って…
61.
定義系DSL そんなあなたに、
62.
つらい現実 あれをやってこれをやって
63.
べんりな真実 そう、DSLならね
64.
定義系DSL
65.
べんり
66.
まとめ • いまさら感があふれる話 • DSLで効率UP •
DSLはこわくない • やりすぎると駄目
67.
でもお高いんでしょ 開発コストが
68.
🙏
69.
作ってみましょう
70.
宣言系DSL
71.
宣言系DSL = ただのクラスメソッド
72.
オレオレattr_accessor 車輪の再発明から得られる知見もある
73.
やりたいことは インスタンス変数 を get/set するメソッドを いい感じで定義してくれる my_attr_accessor というクラスメソッドを 定義すること
74.
突然の黒魔術/ 逃げちゃ駄目だ、逃げちゃ駄目だ、逃げちゃ駄目だ
75.
define_method(name, method) define_method(name) {
… } name という名前のメソッドを定義する
76.
突然の黒魔術/ 逃げちゃ駄目だ、逃げちゃ駄目だ
77.
instance_variable_get(var) instance_variable_set(var, value) var という名前のインスタンス変数を
get/set 名前は @hoge である必要がある
78.
突然の黒魔術/ 逃げちゃ駄目だ
79.
宣言系ではけっこう使う べんり
80.
操作系DSL
81.
操作系DSL = メソッド切り出し
82.
なんかふつう ただのメソッド呼び出しなのに専用の命令に見える
83.
名前重要 見ただけで分かるメソッド名にしよう このへん
84.
設定系DSL
85.
設定系DSL = 代入
86.
config.hoge = piyo
87.
よく見るやつ いまからこのクラスを設定するんだ というのが良く伝わってよい
88.
たぶんこんな感じ .() がきもかわいい
89.
定義系DSL
90.
定義系DSL = instance_eval
91.
instance_eval {¦obj¦ …
} ブロック内の self をレシーバーに置き換える (ざっくり言うと)
92.
家にいる猫を管理したい いい例が浮かばなかった
93.
適当な実装 でもだいたいこんな感じで書きます
94.
このCatモデルを作ります ブロックの中で呼べるメソッドは Cat のインスタンスメソッド
95.
ここが本体 cat.instance_eval が全て
96.
ファイルから読み込めばそれっぽい 文字列なので instance_eval する…
97.
こういうのはどうするの method_missing で… ホワイトリストを作って undef_method
しておくと捗る
98.
🙇
99.
僕の場合
100.
手順 • 問題をみつける • 直感的に書けるまで擬似コードを書く •
擬似コード(受け入れテスト)が動くように 実装する • ユニットテストを書く
101.
テスト • DSLがバグってたら目も当てられない • 自分が安心するために書く •
黒魔術的なコードを書くのでTDDは足かせ • 完全に動作するDSLを受け入れテストとする
102.
まとめ • いまさら感があふれる話 • DSLで効率UP •
DSLはこわくない • やりすぎると駄目
103.
DSL作ってみたい いますぐ作ろう!
104.
ちょっと待って
105.
欠点を思い出そう
106.
欠点 • 学習コストが高い • 応用が効かない •
問題の範囲を決めるのが難しく、特化でき ないことが多い 特定の問題に特化しているから、 • • • • • • • • • • • • • •
107.
学習コストが高い プロジェクトのここもDSL、あっちもDSL。 ここは Rails のままで書く、ここもDSLだったわ。 べんり機能が知っている人にしか使われない。 むしろ普通に書くことも困難でプロジェクト炎上。
108.
応用が効かない たくさんの社内DSLをマスターして社内では神と呼ばれ て頼られているので、勘違いして転職してみた。 実は Rails はそんなに書けなかったので ついていこうと必死になり過労死
109.
問題の範囲があいまい べんりそうなDSLを作った。こっちもDSLにできそう なので作った。あっちも、そっちも、ここも作っとこう。 あっちとそっちのDSLの内容が微妙に被ってて どちらに書けば良いのか分からない
110.
何事も やりすぎはよくない
111.
まとめ • いまさら感があふれる話 • DSLで効率UP •
DSLはこわくない • やりすぎると駄目
112.
なんだこれ なんだこのオプション
113.
知見の共有 • 宣言系は相当すじがよくないと破綻する • よくわからん書き方が増えて混乱するだけ •
定義系は名前重要 • 学習コストを下げるには驚き最小の法則 • ドキュメント必須 • DSLの仕様は書いた本人しか知らないと思え
114.
まとめ • いまだからこそ仕事でDSL • DSLで業務を効率化 •
DSLは簡単に作れる • 用法用量をよく守りお使いください
115.
DSLとして切り出せる問題を見つけたら勝ち
116.
ありがとう ございました
Jetzt herunterladen