Suche senden
Hochladen
20160320 サンモクを通して学んだ話
•
Als PPTX, PDF herunterladen
•
0 gefällt mir
•
1,553 views
M
Masaaki Takasago
Folgen
2016/03/20 kansai.pm #16
Weniger lesen
Mehr lesen
Software
Melden
Teilen
Melden
Teilen
1 von 39
Jetzt herunterladen
Empfohlen
入門書を読み終わったらなにしよう? 〜Python と WebAPI の使い方から学ぶ次の一歩〜 / next-step-python-programing
入門書を読み終わったらなにしよう? 〜Python と WebAPI の使い方から学ぶ次の一歩〜 / next-step-python-programing
Kei IWASAKI
言語処理するのに Python でいいの? #PyDataTokyo
言語処理するのに Python でいいの? #PyDataTokyo
Shuyo Nakatani
KOMANKO and PAOPAL
KOMANKO and PAOPAL
ssuser2d7627
Pyconjp2016 pyftplib
Pyconjp2016 pyftplib
Shinya Okano
RubyエンジニアがPythonをdisるためにPythonを勉強してみた
RubyエンジニアがPythonをdisるためにPythonを勉強してみた
Yusuke Kon
stapy#23 LT
stapy#23 LT
NaoY-2501
Bottle使ってPython学習一緒にはじめませんか?
Bottle使ってPython学習一緒にはじめませんか?
Tatsuya Shinozuka
たった一ファイルの python スクリプトから始めるOSS開発入門 / PyCon JP 2016
たった一ファイルの python スクリプトから始めるOSS開発入門 / PyCon JP 2016
Kei IWASAKI
Empfohlen
入門書を読み終わったらなにしよう? 〜Python と WebAPI の使い方から学ぶ次の一歩〜 / next-step-python-programing
入門書を読み終わったらなにしよう? 〜Python と WebAPI の使い方から学ぶ次の一歩〜 / next-step-python-programing
Kei IWASAKI
言語処理するのに Python でいいの? #PyDataTokyo
言語処理するのに Python でいいの? #PyDataTokyo
Shuyo Nakatani
KOMANKO and PAOPAL
KOMANKO and PAOPAL
ssuser2d7627
Pyconjp2016 pyftplib
Pyconjp2016 pyftplib
Shinya Okano
RubyエンジニアがPythonをdisるためにPythonを勉強してみた
RubyエンジニアがPythonをdisるためにPythonを勉強してみた
Yusuke Kon
stapy#23 LT
stapy#23 LT
NaoY-2501
Bottle使ってPython学習一緒にはじめませんか?
Bottle使ってPython学習一緒にはじめませんか?
Tatsuya Shinozuka
たった一ファイルの python スクリプトから始めるOSS開発入門 / PyCon JP 2016
たった一ファイルの python スクリプトから始めるOSS開発入門 / PyCon JP 2016
Kei IWASAKI
Python学習奮闘記#07 webapp
Python学習奮闘記#07 webapp
Takeshi Akutsu
Effective Python 第2版をオンライン読書会で。
Effective Python 第2版をオンライン読書会で。
KyutatsuNishiura
プログラマー
プログラマー
Kouhei Sutou
OSSと私
OSSと私
Hattori Hideo
Python入門 コードリーディング - PyConJP2016
Python入門 コードリーディング - PyConJP2016
Shinya Okano
Python札幌 2012/06/17
Python札幌 2012/06/17
Shinya Okano
210630 python
210630 python
Takuya Nishimoto
ぼくたちRubyプログラミング少年団!~小・中学生向けプログラミング言語Rubyの学習塾の運営、学習教材の開発・販売事業~
ぼくたちRubyプログラミング少年団!~小・中学生向けプログラミング言語Rubyの学習塾の運営、学習教材の開発・販売事業~
宏治 高尾
組み込みプログラマとテスト駆動開発
組み込みプログラマとテスト駆動開発
bei_kan
小学生3年生から使えるRubyのビジュアルプログラミングエディタ「スモウルビー」と、それを活用した任意団体「Rubyプログラミング少年団」[第7回フクオカ...
小学生3年生から使えるRubyのビジュアルプログラミングエディタ「スモウルビー」と、それを活用した任意団体「Rubyプログラミング少年団」[第7回フクオカ...
宏治 高尾
Django で始める PyCharm 入門
Django で始める PyCharm 入門
kashew_nuts
S01 t1 tsuji_pylearn_ut_01
S01 t1 tsuji_pylearn_ut_01
Takeshi Akutsu
Python エンジニアの作り方 2011.08 #pyconjp
Python エンジニアの作り方 2011.08 #pyconjp
Takeshi Komiya
次世代言語 Python による PyPy を使った次世代の処理系開発
次世代言語 Python による PyPy を使った次世代の処理系開発
shoma h
Python & PyConJP 2014 Report
Python & PyConJP 2014 Report
gree_tech
本気でPythonで宛名書きした話
本気でPythonで宛名書きした話
Satoshi Yamada
他人が書いたコードのリファレンスをSphinxで作る方法
他人が書いたコードのリファレンスをSphinxで作る方法
Takeshi Sugiyama
Sinatra風マイクロフレームワークで始めるPython
Sinatra風マイクロフレームワークで始めるPython
kuroneko1988
私は如何にしてUpl
私は如何にしてUpl
Tohru Shinohara
10分でわかるPythonの開発環境
10分でわかるPythonの開発環境
Hisao Soyama
高砂 一人でロ○□×風味
高砂 一人でロ○□×風味
Masaaki Takasago
TIme::Moment+Time::Strptime=
TIme::Moment+Time::Strptime=
karupanerura
Weitere ähnliche Inhalte
Was ist angesagt?
Python学習奮闘記#07 webapp
Python学習奮闘記#07 webapp
Takeshi Akutsu
Effective Python 第2版をオンライン読書会で。
Effective Python 第2版をオンライン読書会で。
KyutatsuNishiura
プログラマー
プログラマー
Kouhei Sutou
OSSと私
OSSと私
Hattori Hideo
Python入門 コードリーディング - PyConJP2016
Python入門 コードリーディング - PyConJP2016
Shinya Okano
Python札幌 2012/06/17
Python札幌 2012/06/17
Shinya Okano
210630 python
210630 python
Takuya Nishimoto
ぼくたちRubyプログラミング少年団!~小・中学生向けプログラミング言語Rubyの学習塾の運営、学習教材の開発・販売事業~
ぼくたちRubyプログラミング少年団!~小・中学生向けプログラミング言語Rubyの学習塾の運営、学習教材の開発・販売事業~
宏治 高尾
組み込みプログラマとテスト駆動開発
組み込みプログラマとテスト駆動開発
bei_kan
小学生3年生から使えるRubyのビジュアルプログラミングエディタ「スモウルビー」と、それを活用した任意団体「Rubyプログラミング少年団」[第7回フクオカ...
小学生3年生から使えるRubyのビジュアルプログラミングエディタ「スモウルビー」と、それを活用した任意団体「Rubyプログラミング少年団」[第7回フクオカ...
宏治 高尾
Django で始める PyCharm 入門
Django で始める PyCharm 入門
kashew_nuts
S01 t1 tsuji_pylearn_ut_01
S01 t1 tsuji_pylearn_ut_01
Takeshi Akutsu
Python エンジニアの作り方 2011.08 #pyconjp
Python エンジニアの作り方 2011.08 #pyconjp
Takeshi Komiya
次世代言語 Python による PyPy を使った次世代の処理系開発
次世代言語 Python による PyPy を使った次世代の処理系開発
shoma h
Python & PyConJP 2014 Report
Python & PyConJP 2014 Report
gree_tech
本気でPythonで宛名書きした話
本気でPythonで宛名書きした話
Satoshi Yamada
他人が書いたコードのリファレンスをSphinxで作る方法
他人が書いたコードのリファレンスをSphinxで作る方法
Takeshi Sugiyama
Sinatra風マイクロフレームワークで始めるPython
Sinatra風マイクロフレームワークで始めるPython
kuroneko1988
私は如何にしてUpl
私は如何にしてUpl
Tohru Shinohara
10分でわかるPythonの開発環境
10分でわかるPythonの開発環境
Hisao Soyama
Was ist angesagt?
(20)
Python学習奮闘記#07 webapp
Python学習奮闘記#07 webapp
Effective Python 第2版をオンライン読書会で。
Effective Python 第2版をオンライン読書会で。
プログラマー
プログラマー
OSSと私
OSSと私
Python入門 コードリーディング - PyConJP2016
Python入門 コードリーディング - PyConJP2016
Python札幌 2012/06/17
Python札幌 2012/06/17
210630 python
210630 python
ぼくたちRubyプログラミング少年団!~小・中学生向けプログラミング言語Rubyの学習塾の運営、学習教材の開発・販売事業~
ぼくたちRubyプログラミング少年団!~小・中学生向けプログラミング言語Rubyの学習塾の運営、学習教材の開発・販売事業~
組み込みプログラマとテスト駆動開発
組み込みプログラマとテスト駆動開発
小学生3年生から使えるRubyのビジュアルプログラミングエディタ「スモウルビー」と、それを活用した任意団体「Rubyプログラミング少年団」[第7回フクオカ...
小学生3年生から使えるRubyのビジュアルプログラミングエディタ「スモウルビー」と、それを活用した任意団体「Rubyプログラミング少年団」[第7回フクオカ...
Django で始める PyCharm 入門
Django で始める PyCharm 入門
S01 t1 tsuji_pylearn_ut_01
S01 t1 tsuji_pylearn_ut_01
Python エンジニアの作り方 2011.08 #pyconjp
Python エンジニアの作り方 2011.08 #pyconjp
次世代言語 Python による PyPy を使った次世代の処理系開発
次世代言語 Python による PyPy を使った次世代の処理系開発
Python & PyConJP 2014 Report
Python & PyConJP 2014 Report
本気でPythonで宛名書きした話
本気でPythonで宛名書きした話
他人が書いたコードのリファレンスをSphinxで作る方法
他人が書いたコードのリファレンスをSphinxで作る方法
Sinatra風マイクロフレームワークで始めるPython
Sinatra風マイクロフレームワークで始めるPython
私は如何にしてUpl
私は如何にしてUpl
10分でわかるPythonの開発環境
10分でわかるPythonの開発環境
Andere mochten auch
高砂 一人でロ○□×風味
高砂 一人でロ○□×風味
Masaaki Takasago
TIme::Moment+Time::Strptime=
TIme::Moment+Time::Strptime=
karupanerura
Perl RDBMS Programming(DBI/DBIx::Sunnyのはなし)
Perl RDBMS Programming(DBI/DBIx::Sunnyのはなし)
karupanerura
PerlモジュールをRubyに移植する時に落ちた穴々
PerlモジュールをRubyに移植する時に落ちた穴々
azumakuniyuki 🐈
Devel ptkdb - perlをグラフィカルにデバッグする
Devel ptkdb - perlをグラフィカルにデバッグする
Masaaki Takasago
すいすいSwift
すいすいSwift
karupanerura
The Next PowerCMS
The Next PowerCMS
純生 野田
Gotanda.pmの紹介
Gotanda.pmの紹介
karupanerura
KOWAZA for mackerel
KOWAZA for mackerel
karupanerura
YAPC::Kansai 2017 - macOSネイティブアプリ作成におけるPerlの活用
YAPC::Kansai 2017 - macOSネイティブアプリ作成におけるPerlの活用
純生 野田
YAPC::KANSAI 2017 LT
YAPC::KANSAI 2017 LT
maka2donzoko
First step of Performance Tuning
First step of Performance Tuning
risou
Kansai.pm #15 LT資料「猫とPerl」
Kansai.pm #15 LT資料「猫とPerl」
azumakuniyuki 🐈
Perlの書籍紹介/KOF2013
Perlの書籍紹介/KOF2013
azumakuniyuki 🐈
実践的bounceHammer / KOF2013
実践的bounceHammer / KOF2013
azumakuniyuki 🐈
2013 11-30-mailqueue-monitoring
2013 11-30-mailqueue-monitoring
azumakuniyuki 🐈
僕と北海道とPerl、それとMakefileも。
僕と北海道とPerl、それとMakefileも。
azumakuniyuki 🐈
Twitterの被ブロック数可視化ツールを作ってみた
Twitterの被ブロック数可視化ツールを作ってみた
おさ OSA
2017年春のPerl
2017年春のPerl
charsbar
Perl ウェブ開発の中世〜CGI と Plack の間〜
Perl ウェブ開発の中世〜CGI と Plack の間〜
鉄次 尾形
Andere mochten auch
(20)
高砂 一人でロ○□×風味
高砂 一人でロ○□×風味
TIme::Moment+Time::Strptime=
TIme::Moment+Time::Strptime=
Perl RDBMS Programming(DBI/DBIx::Sunnyのはなし)
Perl RDBMS Programming(DBI/DBIx::Sunnyのはなし)
PerlモジュールをRubyに移植する時に落ちた穴々
PerlモジュールをRubyに移植する時に落ちた穴々
Devel ptkdb - perlをグラフィカルにデバッグする
Devel ptkdb - perlをグラフィカルにデバッグする
すいすいSwift
すいすいSwift
The Next PowerCMS
The Next PowerCMS
Gotanda.pmの紹介
Gotanda.pmの紹介
KOWAZA for mackerel
KOWAZA for mackerel
YAPC::Kansai 2017 - macOSネイティブアプリ作成におけるPerlの活用
YAPC::Kansai 2017 - macOSネイティブアプリ作成におけるPerlの活用
YAPC::KANSAI 2017 LT
YAPC::KANSAI 2017 LT
First step of Performance Tuning
First step of Performance Tuning
Kansai.pm #15 LT資料「猫とPerl」
Kansai.pm #15 LT資料「猫とPerl」
Perlの書籍紹介/KOF2013
Perlの書籍紹介/KOF2013
実践的bounceHammer / KOF2013
実践的bounceHammer / KOF2013
2013 11-30-mailqueue-monitoring
2013 11-30-mailqueue-monitoring
僕と北海道とPerl、それとMakefileも。
僕と北海道とPerl、それとMakefileも。
Twitterの被ブロック数可視化ツールを作ってみた
Twitterの被ブロック数可視化ツールを作ってみた
2017年春のPerl
2017年春のPerl
Perl ウェブ開発の中世〜CGI と Plack の間〜
Perl ウェブ開発の中世〜CGI と Plack の間〜
Ähnlich wie 20160320 サンモクを通して学んだ話
Goで始める言語処理系実装入門
Goで始める言語処理系実装入門
虎の穴 開発室
Django ORM道場:クエリの基本を押さえ,より良い形を身に付けよう
Django ORM道場:クエリの基本を押さえ,より良い形を身に付けよう
Takayuki Shimizukawa
Tokyo.R女子部発表スライド「Rではじめるデータ解析の超基礎」
Tokyo.R女子部発表スライド「Rではじめるデータ解析の超基礎」
tokyorgirls
make_information_search.pdf
make_information_search.pdf
ssuserf94232
211120 他人の書いたPythonスクリプトをステップ実行で理解する
211120 他人の書いたPythonスクリプトをステップ実行で理解する
Takuya Nishimoto
こわくないPython
こわくないPython
Katsuya Arai
ペアプロはリモートでもできる!
ペアプロはリモートでもできる!
Tatsuya Deguchi
Django から各種チャットツールに通知するライブラリを作った話
Django から各種チャットツールに通知するライブラリを作った話
Yusuke Miyazaki
Pythonでpdfをいじってみる
Pythonでpdfをいじってみる
株式会社 システムヨシイ
Koi::Bana〜恋に落ちたエンジニア〜
Koi::Bana〜恋に落ちたエンジニア〜
Munenori Sugimura
Gradle PluginとTwitterとズン ドコ キ・ヨ・シ!
Gradle PluginとTwitterとズン ドコ キ・ヨ・シ!
Shinobu Okano
OFF4G Hokkaido LT
OFF4G Hokkaido LT
Jyun Tanaka
Pythonによるwebアプリケーション入門 - Django編-
Pythonによるwebアプリケーション入門 - Django編-
Hironori Sekine
TypeScriptで作る型安全FirefoxOSアプリ
TypeScriptで作る型安全FirefoxOSアプリ
progre
MicroPythonのCモジュールを作ってみる
MicroPythonのCモジュールを作ってみる
Kenta IDA
PyCon JP 2016 ビギナーセッション
PyCon JP 2016 ビギナーセッション
Tetsuya Morimoto
Nodeにしましょう
Nodeにしましょう
Yuzo Hebishima
Google colab 2
Google colab 2
Masatoshi Itagaki
MTプラグイン入門以前
MTプラグイン入門以前
Hiroshi Yamato
Pythonで作る自作デバッガLT資料
Pythonで作る自作デバッガLT資料
Yuya Masumura
Ähnlich wie 20160320 サンモクを通して学んだ話
(20)
Goで始める言語処理系実装入門
Goで始める言語処理系実装入門
Django ORM道場:クエリの基本を押さえ,より良い形を身に付けよう
Django ORM道場:クエリの基本を押さえ,より良い形を身に付けよう
Tokyo.R女子部発表スライド「Rではじめるデータ解析の超基礎」
Tokyo.R女子部発表スライド「Rではじめるデータ解析の超基礎」
make_information_search.pdf
make_information_search.pdf
211120 他人の書いたPythonスクリプトをステップ実行で理解する
211120 他人の書いたPythonスクリプトをステップ実行で理解する
こわくないPython
こわくないPython
ペアプロはリモートでもできる!
ペアプロはリモートでもできる!
Django から各種チャットツールに通知するライブラリを作った話
Django から各種チャットツールに通知するライブラリを作った話
Pythonでpdfをいじってみる
Pythonでpdfをいじってみる
Koi::Bana〜恋に落ちたエンジニア〜
Koi::Bana〜恋に落ちたエンジニア〜
Gradle PluginとTwitterとズン ドコ キ・ヨ・シ!
Gradle PluginとTwitterとズン ドコ キ・ヨ・シ!
OFF4G Hokkaido LT
OFF4G Hokkaido LT
Pythonによるwebアプリケーション入門 - Django編-
Pythonによるwebアプリケーション入門 - Django編-
TypeScriptで作る型安全FirefoxOSアプリ
TypeScriptで作る型安全FirefoxOSアプリ
MicroPythonのCモジュールを作ってみる
MicroPythonのCモジュールを作ってみる
PyCon JP 2016 ビギナーセッション
PyCon JP 2016 ビギナーセッション
Nodeにしましょう
Nodeにしましょう
Google colab 2
Google colab 2
MTプラグイン入門以前
MTプラグイン入門以前
Pythonで作る自作デバッガLT資料
Pythonで作る自作デバッガLT資料
20160320 サンモクを通して学んだ話
1.
サンモクを通して学んだ話 Twitter : @sago35tk Masaaki
Takasago 2016/03/20 kansai.pm #16 サンモクを通して学んだ話 @sago35tk1
2.
自己紹介 Name =>
‘Masaaki Takasago’; 主な使用言語は、C言語とPerlとGolang 車載組込ソフトウェアエンジニア 仕事ではC言語メイン mbedマイコン 改善ツールはPerlで書くことが多い/最近はGolang比率Up 例1) Buildログの解析 例2) ソースの静的解析 Vim使ってます Perl鍋歴は1年弱 Kansai::Tiny v0.0.1 (2015-08-08)以降ちょくちょく参加 ジュースは撮影用です 2 サンモクを通して学んだ話 @sago35tk
3.
Perl鍋とは @nqounetさん主催の、Perlを使って、自分自身で何かし らのプログラムを作る勉強会です。 「Perlの基本的な事がわかり、自力で簡単なプログラムが 書ける方」を対象にした勉強会です。 http://perlnabe.connpass.com/ 3 サンモクを通して学んだ話 @sago35tk
4.
今日話す内容 車載組込ソフトウェア開発とPerl サンモクを通して学んだ話
勉強会の題材をサンモクにしたら、思った以上に良かった件 4 サンモクを通して学んだ話 @sago35tk
5.
サンモクって? 三目並べ(〇×ゲーム)の事 3x3の盤面で2人が交互に「○」と「×」を書いて3つ並べたら 勝ち、という感じのゲーム 5
サンモクを通して学んだ話 @sago35tk
6.
さて 6 サンモクを通して学んだ話 @sago35tk
7.
7 サンモクを通して学んだ話 @sago35tk
8.
Perlというとweb界隈が中心だと思いますが、 車載組込界隈の仕事のお話しと Perlとの関係を書いていきます。 8 サンモクを通して学んだ話 @sago35tk
9.
車載組込ソフトウェア ECU(≒車に乗るコンピュータ)のソフトウェアを開発 車1台で、多いと100個以上のECUが搭載されている
車載組込の分類 制御系 – 走行や車体に関するもの パワートレーン系 (エンジン制御等) シャーシ系 (サスペンション、ステアリング等) ボディ系 (エアコン、ドア等) 安全系 センサ、エアバッグ等 情報系 カーナビ、オーディオ等 9 サンモクを通して学んだ話 @sago35tk
10.
車載組込ソフトウェア 良いペースでソースコード行数が増えていっている 2014年頃の時点で車1台あたり1,000万行超えたとか
1ECUで50万行を超えるECUも 参考) 2012年頭時点でLinuxカーネルが1500万行を突破 10 そんな規模なのに、グローバル変数だらけとか・・・ そんな状態なのに、マルチコア化を進めようとしていたり サンモクを通して学んだ話 @sago35tk
11.
車載組込ソフトウェア 人命に直結するので、開発プロセスが厳格かつ長大 10分コード書いたら10時間デバッグして20時間帳票を書く、 みたいなのが基本
なので、(人によりますが)コードを書く量が極端に少ない 結果として、コード書ける人と書けない人の二極化が進む 11 サンモクを通して学んだ話 @sago35tk
12.
開発環境 ECUの開発言語は、C言語(C90)中心 開発していて辛いことが多い
グローバル変数が正義とされている 省メモリだったり速かったりする場合もありますが・・・ マイコン毎にIDEを含め開発環境が変わる マイコン毎にIDEが強力だったり貧弱だったり シミュレータが貧弱だったり、そもそもなかったり コンパイラが未だによくバグってる レジスタの制限事項が死ぬほどある ステップ実行はできるけど、制限が多い タイマー割込等が制御出来ない事が結構ある そもそもステップ実行できる機材が存在しない開発案件がある 12 サンモクを通して学んだ話 @sago35tk
13.
なんとか改善したい 開発環境が弱いのでツール作って改善したい、と思うが 基本的にはツール作っちゃダメ、という空気 人命に関わるソフトを作っているので、開発で使うツール にも監視が入る
けど、やっぱりソフト開発が大変なので、良いバランスを 探りつつ各種ツールを作っている現状 13 サンモクを通して学んだ話 @sago35tk
14.
以下、パワトレ系でのPerl活用事例を書いていきます 注) 業界全体/共通の話ではないので(ry 14 サンモクを通して学んだ話
@sago35tk
15.
ツール作成 自分が良く使っているのは、PerlとGolang C言語ではツール書くのが面倒なので・・・
PerlだとCPANの恩恵もあり楽 何もインストールするな、と言われた時代にもUnixサーバー上には 普通にPerlがあったので何とかなった ツールを配布する際は、CPANモジュールのインストールをし てもらうのが結構大変 PAR::Packerで若干楽になるけど、万能じゃなかった 最近の自分は、Golangを使う比率が増えている やっぱりsingle binary便利 15 サンモクを通して学んだ話 @sago35tk
16.
ツール作成で良く使うモジュール Minilla Path::Tiny
Getopt::Long Pod::Usage Text::CSV Spreadsheet::XLSX Moo Perl/Tk Class::DBI 16 サンモクを通して学んだ話 @sago35tk
17.
組込系ツールとPerl 10年弱この業界にいますが、Perlが活用されているツー ルは見たことがない python、tcl、luaで拡張できるツールはいくつかある
開発部署ローカルのPerlで作られた小さいツールはある 自分もたくさん作った Perl以外だと、以下のような感じ シェルスクリプト、バッチファイル Excel VBA 17 サンモクを通して学んだ話 @sago35tk
18.
ありがちなツール コンパイラや計測器が出力したログ(テキスト、バイナリ) を解析して何かする 仕様書を元に、C言語ソースコードを自動生成する
C言語に対し静的検査を実施する 18 サンモクを通して学んだ話 @sago35tk
19.
事例紹介1 makefile生成とmake実行(コンパイル+リンク+他) 歴史的経緯から、謎の形式の設定ファイルが多い
そのあたりを読み込みつつ、makefile生成を行う 依存関係の抽出を並列実行し高速化 コンパイルは、make –-jobsで並列実行 19 サンモクを通して学んだ話 @sago35tk
20.
事例紹介2 ソース全体の変数/変数アドレスの一覧を取得する ツールチェーンから外れたツールが多数ある為、変数/変数 アドレスの一覧が必要なケースが多い
マイコンが変わる毎に、一覧の取得元フォーマットが変わる 20 サンモクを通して学んだ話 @sago35tk
21.
事例紹介3 仕様書に基づき、C言語ソースを自動生成する 仕様書の1か所が変わると、「10か所以上適切に変更しなけ ればならない」等はありがち
C言語ソースをプログラムから自動生成する事により、間違え ずに変更できるようにする でも、既存のテンプレートエンジンは、人が書いたようなテキストを出 力するのは結構面倒で、いつも四苦八苦 21 サンモクを通して学んだ話 @sago35tk
22.
事例紹介4 通信ログを解析し、集計する バス負荷を求める
上位プロトコルにそった解析結果を表示する 22 サンモクを通して学んだ話 @sago35tk
23.
事例紹介5 機構部分のシミュレーション(Perl/Tk) アーム長の比率を変えるとどうなるのか、を検討 23
サンモクを通して学んだ話 @sago35tk
24.
などなど 24 サンモクを通して学んだ話 @sago35tk
25.
ここまでのまとめ 車載組込ソフトウェア開発でも、Perl使ってます 開発を助ける/補助するツール等がメイン ということで、組込業界でもPerl使ってますよ。 25
サンモクを通して学んだ話 @sago35tk
26.
次 26 サンモクを通して学んだ話 @sago35tk
27.
サンモクを通して学んだ話 27 サンモクを通して学んだ話 @sago35tk
28.
ある日の出来事 28 サンモクを通して学んだ話 @sago35tk
29.
29 サンモクを通して学んだ話 @sago35tk
30.
ルールのイメージ 盤面を仕切るプログラムを主催側で準備 先攻後攻の順で、プログラム/関数を呼び出す
呼び出された側は、次の一手を考えて返す 引数(9つ)で現在の盤面状態を受け取る 戻り値 or 標準出力で次の1手を返す 30 サンモクを通して学んだ話 @sago35tk
31.
Perl鍋での実行 いろいろ作ったりしゃべったりで楽しいPerl鍋ですが、み んなで同じネタをやったことはなかった ので、サンモク大会をすることに(勝手に)決定。
ということで 31 サンモクを通して学んだ話 @sago35tk
32.
Perl版を作ってみた https://github.com/sago35/PerlNabe-Sanmoku 32 サンモクを通して学んだ話 @sago35tk
33.
Perl鍋でやってみた 33 サンモクを通して学んだ話 @sago35tk
34.
事前に準備したもの README.md ほんのりルールを記載
サンプル実装 最低限のサンプルとして、右下から順位打っていくだけ 34 サンモクを通して学んだ話 @sago35tk
35.
サンプル実装 35 9要素の配列で盤面の情報を貰う 0: 空き、1: 自分の駒が存在、2:相手の~ 8→0に順番に見て、空いてるところが あれば、そこに次の一手を打つ サンモクを通して学んだ話
@sago35tk35
36.
当日の流れ Perl鍋なのでPerlを前提に環境を作成 みんなで、単一のgithubに直接コミットしてもらう形で実 施
10分ぐらいでルール説明を実施し、プログラムを書き始 めてもらった その間に対戦環境をgithubにpush 36 サンモクを通して学んだ話 @sago35tk
37.
良かったところ みんな、想像以上にもくもくとコード書いてた あっという間に時間が流れた
失敗してもバグっていても面白い むしろちょっとバグっている方が面白い 小細工も楽しい 時間内(2時間弱)で書ききれなくても対戦環境をgithub にあげていたので、後追いで遊べた 後で遊ぶのも楽しい 後で記事を書いてくれた(tomcha++) http://tomcha.hatenablog.jp/entry/2015/12/14/083058 37 サンモクを通して学んだ話 @sago35tk
38.
38 サンモクを通して学んだ話 @sago35tk
39.
まとめ みんなで何かを作る勉強会は、熱中できる みんなで同じことをするプログラムを書くのは楽しい
同じことをしているので、後で比較できる 対戦形式は楽しい バグっていても許される環境は、安心してトライできる 楽しく失敗体験できる 楽しく勉強しよう 39 サンモクを通して学んだ話 @sago35tk
Jetzt herunterladen