説教臭いブログ

中途半端なので、タイトル変えてみた。多分説教臭いと思う。

Docomo-API の rubygem 作ってみた

f:id:beco_ippei:20160126233511p:plain

草生やす施策、ということで毎日1コミット以上する、という流行ってる(?)やつをやっています。

そちらの話はまたいずれ。

同時に大きくは3つくらいの個人プロジェクトのようなものをやっていて、今回 gem 作ってみたのは slack-bot 関連のもの。

github.com

ものは非常に簡単で、一時期流行った(かな?)ドコモの雑談API | docomo Developer support | NTTドコモ と喋る、というのを hubot にやらせたりするやつの、RubyAPIラッパーですね。

docomoru という gem がすでにあって色々できるようですが、雑談を最低限で実装する分には gem 要らないレベルなのと、ちょっと作ってみよ、という気分になったので rubygem にしてみました。

morizyun.github.io

作り方を見てたら、この記事が簡単で見栄えする!感じだったので参考にさせてもらいました。

バッジが3つ付いて簡単にそれっぽい感じに!

ポイントは以下の3点。

とにかく軽い実装

続いて作る予定のアプリで、リソース使えない環境で動かすのを想定していたので(Rubyじゃないかもしれないけど) gem とかを使わないのもあるし、実装自体をできるだけ簡素にして最低限動作させることを意識しています。

(プロファイルを取ったりはしていない)

ちゃんと使ってもいいかな、という品質

テストを書く、ひたすらシンプル(バグ入りにくく)、カバレッジも。

自分で使う(これから)

bot で使って雑な賑やかしをするとかできますね。。。

まあ、練習っぽい感じで軽いやつだったので、次またもうちょい本題っぽいのをやる予定。

プルリクチャンス転がしたけど、誰かくるだろうか・・・。

bot 2人(個?)に会話させたらよい感じになった

タスクの合間に、 hubot -> botkit の軽めの移行してたりメンションの対応について調べたりしていて、2つのbotdocomo雑談API で会話できるようにしたので、お互いに会話できるようにしたみた。

漫才モードとして、お互いにメンション送り合って会話できるようにしてみた。

(途中で「おわり」ってなっているのは、無限にならないように回数制限を設ける実装したけど失敗して会話が続いている様子。尚、会話は 0.5秒 待ってから返事するようにしているので一応目で追える感じにしている)

f:id:beco_ippei:20160112213422p:plain

一応、真面目な用事で調べてる過程でついでにやっていた感じです。仕事中だけど。

リーダーとマネージャーとビジョン

Rebuild.fm の #123 の伊藤直也さんの回を聞いた。

ep.50 くらいのアフターショーのドラクエ職業の話がすごい好きで 10回 くらい(?)聞いた気がするけど、今回も注目の回だったのでしっかり準備してから聞いた。

Fate/Zero の聖杯問答の話

以前に予告していたので、予習として Fate/Zero(アニメ)を見ておいた。

アニメの感想はいいとして、見た後で思った個人的な解釈としては以下のようなものだ。

  • アーサー王は自分が民衆を・・・(うまく行かなかった)ということを後悔している
  • 聖杯をゲットしたら、やり直したい(的なことを言っていた気がする)
  • 一国のリーダーとなる王が、施政について後悔して「やり直したい」というのはダメでは?
  • 俺についてこい、俺を信じろ(たとえ自信なくても)というスタンスで振る舞うべき
  • 仕事でも、リーダーとなった人がやってる(やった)ことに不安を感じている、という組織では  誰もついてこないんじゃないの?

という感じでした。

国民を導く、主導する立場の人間が、「あれは良くなかった」「もっとこうすれば良かった」ということを言うのは、国民の立場としてどうか?不安じゃないだろうか。

リーダーという立場も色々あって、「王」というくらいだといわゆる社長みたいな立場になってくると思うけど、悩む姿はいいとして、戦争しかけて他国を侵略した後で「やっぱり戦争はするべきではなかった」とか言ったらどうだろうか。殉死した人達や、そうした人達と一緒に居た人達はどう思うか?次に何か言った時に果たしてついてきてくれるんだろうか?

社長業はしたことが無いし、そこまで人を率いる仕事はしてないので、実際のところは分からない気もするけど、まあ少なくとも国家レベルになるとひたすら理想を提示して、それに付いて来てもらう、ということに尽きるのではないか。

タイトルにあるが、この場合は完全に「リーダー」という役割になると思う。

サーヴァント型リーダーという言葉

Rebuild.fm で伊藤直也さんが言っていたのが、「サーヴァント型」のリーダーが・・・・、ということでした。 聴いていてなるほど〜、となって言いたいことが非常によくわかった。

でも、「聖杯問答」の回を見た感想はちょっと違っていて、それは元々以下のような言葉の解釈があったからなのかな?と思う。

前にブログ書き始めた頃に書いたけど、リーダーとマネージャーという言葉を明確に別物と思っていて、その考え方からすると、「サーヴァント型リーダー」というのはそもそもおかしい感じがする。

リーダーという言葉は、言葉の意味だけで考えると「リードする人」な感じだと思うし、他社に奉仕する感じはリードしてない。おそらく、日本的な意味で「リーダー」という言葉がズレてるせいじゃないだろうか。

バイト1年やると「リーダー」に昇格して、新入りバイトを3人位面倒を見たりする。社会人2年目くらいにも登場してくる言葉な気がする。知ってる(スーパーブラック)企業だと、その後で「アシスタントマネージャー」とか「マネージャー」という肩書みたいなのになっていく。

実態と言葉が合ってるかどうか?ということはともかくとして、日本の割と伝統的な感じだと「リーダー」という言葉は数人をちょっと面倒見る立場、みたいな意味に捉えられやすいんじゃないだろうか?

(そして、これは言葉の定義の問題だけかもしれないけど、ちょっとおかしいと思う)

リーダーと言えば誰が思い浮かぶか?

アメリカに行くと、大統領は「リーダー」という感じがするし、日本でもカリスマ社長みたいな人達は「リーダー」と呼ばれることが多いように思う。つまり「トップ」だ。

そこまで目立たない感じの社長の場合にはそこまで「リーダー」というイメージは強くないように思う。

そういう人達の中には、カリスマ性のみでもやっていけそう、という人がいそうだし(他ができないということではなく、カリスマ性だけで実際に会社に来なくてもなんか社員が一致団結しそう、というイメージ)調整能力はあまり無くても大丈夫な気がする。

ひたすら先頭を行って「これを実現するぞ!」ということ(つまり ビジョン! )を提示し続けて、それが会社の文化になる、みたいなことができると「リーダー」として責務を全うしているのではないか?

もしくは、小さい規模のうちなら自分自身が一番いいものを作る、ということも必要な気がする。実際には雑務が多すぎて実務はできなくなってしまいそうな気がするけど、元々やりたいことへのエネルギーが一番多いのが社長だったりすると思うので、社長がやるのが一番良い、というケースが多いように思う。 (もちろん、例外はたくさんあって、社長以外がグイグイ引っ張ってるとかそういう会社は目立つけど、それはビジョンを提示することができているというケースなんだと思う)

(それが全てのケースで良い、ということでも無いと思うけど)社長がリーダーとして引っ張っていっていてうまく行っている組織では、多分優秀な調整役がいる。それが「マネージャー」にあたる人達だと思う。

マネージャーの役割とは?

社長=リーダー、というタイプの組織の場合は、それを補佐する人や組織として「マネージメント」をする人(達)がいると思う。創業者が何人かいたら、カリスマある感じの人と、内外の調整ができる人が居たりして、そういう人がカリスマの人のフォローをしたりする、とかでうまく回ったりしそうなイメージがある。(安直だけど・・・)

この場合は、リーダーとマネージャーが分かれそうに思う。これは、決して大きな会社で分業しやすいから、とかの組織の性質にかかわらず、5〜6人程度のチームでも同様の話になるように思っている。

では、マネージャーとは何をすると良いのだろうか?

(アメリカは・・・とか知らないので知ってる範囲だとという程度の意味で)日本ではマネージャーというのが「責任者」的な意味に使われているように思う。まあ、「管理者」とするとそこまでズレていない気もする。

管理する仕事とリーダーの役割、は一致するだろうか。

No だと思う。

マネージャーが言葉の定義で「管理者」だとすると、調整をするのが仕事でビジョンを提示したり先頭に立って実務を進める人、というのとはそもそも両立が難しいように思う。行き先を提示して場合によってはそれを引っ張っていく、という立場と、現場を見て調整したりフォローする、というのは立ち位置として 前/後 で全然違うんじゃないだろうか。

たまに、両方できる人が居て両方をやってしまうので、能力の問題、として扱われてしまう感じがするが、独立したものとして扱うべきだと思っている。

リーダーとマネージャーとビジョン

最終的には誰が何やってもいいけど、一人で色々と抱え込む感じになるのはしわ寄せが厳しい。

リーダーには方向性を指し示す、組織としてのビジョンを提示して全員が同じ方向に向かう、近い価値観で過ごせるようにする、ということをして欲しいと思う。チームによっては、実務をバリバリやる人だけど、その人がムードメーカーになって牽引する、みたいなのも「リーダー」ということになると思う。

マネージャー(というものを分けたとして)には、組織内の調整、バランスを取ったり内外向けの事務処理みたいなのをしたりとかして欲しい。リーダーシップは必要だし、ビジョンを提示するのもいいけど、そこはリーダーが示すビジョン/方向性と矛盾がない(視点が違えばいいけど)というのは必要に思う。

少し裏方の感じが出てくるように思う。

現在、システム開発する仕事をしていると、どうしもPMみたいな人が「コード書かない人」みたいな実務(エンジニアリング)が強くない人だったりするので、そういう人が「ビジョンを提示する」ことができるか?というと微妙な感じがする。

うまく役割を分離することができるといいのにな、と思っているところ。。。


(直後に追記)

書き忘れたけど、宮川さんが「リーダーとマネージャーは違うので・・・」という発言をされていて、そうだそうだ、と思った。けど、それは前提として、なのかそれほど掘り下げる感じでは無かったのかあまり言及されなかった。個人的にはそこのポイントに割と色々なものが詰まっていそうな気がする。


話がまとまっているか分からないけど、基本的な考え方を勢いでアウトプットしてみた。

言葉遊び、という感じもしなくはないけど、ある程度は捉え方の問題で以下のような主張と思っている。

リーダーとマネージャーは、そもそも別のもので別の人がやれば良くてそれは高校の部活なら「キャプテン」と「マネージャー(競技しない感じの人)」みたいな役割分担が適当なんじゃないかと思っている。

マネージャー/リーダーが似たようなものとして扱われているように思っていて、それは別種の観点での役割の見方、みたいに思わているように思うけど、それは両立が難しいので無理がある。ある一定の経験を積むと、一気にその両方の役割を与えられてしまってツライことになるけど、別の役割として別の人がやれば無理がないんじゃないのか?という仕事観です。

今のところ、口だけに近い状態なのでこういう仕事観で仕事していくための環境を探さないと・・・。

京都で仕事開拓しないと。

エモい気持ち

エンジニアのMeetupとかに行っても、ブログ書くにもあまり技術的なこと書けないなぁ、というのがあってそれなりにマズイなぁと思っています。

が、中途半端なことを書くのもマズイので割とちゃんとした裏付けが必要なのでちょっと敷居が高い。

その点、エモい話書くには裏付けも要らないし、文章に矛盾あってもいいような気もします。 (ダメだけど)


京都に来たのが3年半前で、京都に来て少ししてから発足・参加した kyoto.rb。

2回めに参加して、その時に4〜5人くらいしか居なかったので次回の発表を(やったことないので人少ないし練習的にやらせてもらったらいいかも、とか思って)立候補して3回目でスライド発表したら、なんかたまたま色々あって20人以上来ててヤバかったのは良い(悪い?)思い出。

その時に言ってたのは、

「京都のRubyの仕事が少ない(ように思う)ので仕事を作る仕事をしたい」 (ちょっと違うかな・・・)

という話だった。

かなり雑な三段論法みたいな話をしていたけど、今でも課題意識は変わっていない。

受託開発の仕事・プロジェクトに関わっていると、どうしても利益のための中間マージンが発生するとか、営業行為などで納品までに必要以上に時間がかかってしまう。

お客さんも払った分の価値が受け取れるのか?疑問がある。

SI というビジネスの構造自体が無駄の多いように思う。

ただ、内製をするにも開発ができたり、体制を作る・管理できる人が居ないとできないし、結局は体制のある会社に委託・発注するしか無い、ということになってしまう。

となると、仕事はSIみたいな会社にしかないし、そうでも無い会社を探すのは(東京以外では)結構大変なので人もそういう会社に行ってしまう。

逆三段論法的に、「仕事ない -> 人こない -> 内製できない -> 仕事ない ・・・」ということで負のループに入ってしまう。

ということが、業界というかエンジニアの居場所の問題やら、ITの利用者の課題だったりするなぁ、というのが常々思っていること。

どうにかするぞ!

どうにかできる能力ある珍しい人種だし、やるぞ! (詳細は書かない)

えーと、アレアレ。

今日の会話。

私:「そういえばスターウォーズはもうすぐ公開だね。見たこと無いけど」

妻:「どうしたん?まあ、私も見てないけど」

私:「なんか盛り上がってるなぁ、と思って」

妻:「そうそう、スターウォーズはなんかさぁ、えーと・・・アレアレ!」

私:「ブッ・・・ w。なにそれ、何も情報無いんだけど!!」

何も分からなかった。

ブログ書こうか

ブログをもっと書いたほうがいい、と常々思っている。

文章を書く頻度が少ないと、一度に大量の情報を書きだそうとしてしまう。 言いたいことがやたら多いから。

仕方が無いと思う。

別に文章を書くのが上手いわけではないので、長い文章になると一気に流れがおかしくなる。

人に読んでもらうため、という感じで書いてないところがあるけど、まあ、書いていておかしい感じがする。


ツイッターに思いついたことを書くのも悪くない。

でも、ブログでまとまったことを書くと、考えもまとまるだろうし変に溜め込まなくて済む。

ついでに文章書くのがうまくなる、話が整理されるようになるといいと思う。

かなり感情的に勢いで話をすることがあり、話をしながら考えるクセも良い時も悪い時もあるので、適切なタイミングでふと止まって考えて整理するクセができたら良いと思う。

まずは、勢いで言いたいことを発散させることを予防するためにも普段から放出しておくのがいいと思う。


エンジニアだと、どうしても技術ブログみたいなの書かないと、という気持ちになるけど、 別にそういう目的でもないので、気軽に思ったことを日記として書いたらいい。

短い文章でも、定期的に書くことの方が重要かもしれないと思ってる。

影響したい気持ち

子どもと一緒に喋ったり遊んだりしてると思うこと、先日 RailsGirls に行ったりして考えたこと、でちょっと整理してみる。

多分、色々なものの見方の一面、価値観というだけだと思うけど、一応ズレては無いと思う。

多分、人間の?大欲求というのには、「影響欲」みたいなものがあると思う。 (支配欲、というのが近いような気もするけど、ちょっと違うかな、と思うので「影響」という言葉にしてみる)

子どもとの関わり

子どもと遊んでいて多いのは、「子供が何かしたことで自分が大げさに反応すると喜ぶ」ということ。

子供に「つんっ」って自分をつついた時に、うわーー、って大げさに転んだりすると喜ぶ。 ただ、あくまで子供の意思でやったことでないとNGが出る。誘導して起こした動きはやり直しになる。

こちらが見本みたいなのを見せて、それに乗る感じでやることも多いけど、最終的に「自分がこれをするとこうなる」という意思を持っている状態で行動を起こして「結果が期待通りになる(もしくは期待以上だけど同じ方向性の結果)」になることを楽しんでいる。

例えば、最初にこちらから自分を押すように仕向けて、子供が自分を押したら「うわー」って大げさに後ろにすっ転ぶ。

そうすると、それを喜んでまた同じことをする。

避けたり、転ぶ以外のアクションを取ると、「違う」ということになる。(娘:3歳)

でやり直したりして、今度は大げさにこけたり、合気道的な巴投げのような感じになるともっと喜ぶ。

たくさん遊んでいると感じるのは、自分の起こしたアクションで自分より大きなお父さん(自分のこと)に影響を与える、自分の思い通りにできるのが楽しい、という感じという風に見える。

運転すること

男の子で多いのはやはり、パイロット・運転手になりたい、という話だと思う。

自分でも運転は好きだし、何かしらを操作するのも好きだ。 自分が操作して、それが思い通りに動く、ということに楽しさや喜びを感じているように思う。

近いところでは「ゲーム」とかも同じじゃないだろか。自分の操作でゲーム内の何かが動くという感じ。

ちょっと違うかもしれないけど、子供に iPad 渡してタップしたら何かが動く、というのもそれ自体を楽しんでいるように思える。 ゲームのコンテンツが何か?ということはそれほど問題ではなく、自分がコントロールできる、ということが楽しさの本質なんじゃないか、というように見える。


子どもと世界との接点にあるものの分類

特に子供の場合、身の回りにあるものが「能動的なもの」なのか「受動的なもの」なのか、ということで分類されそうに思う。 (別に子供じゃなくても同じ)

自分が何かをする、ということでその「もの」との関係が発生するものと、何もしないでも情報が入ってきたりするもの、とか。

例えば、テレビはほとんど受動的、という感じになってただ見てるだけ、という感じになって、自分から何かすることでテレビの内容が変化する、というものではない。(ビデオ再生とかは一応除く)

逆に、スマホアプリだと自分が操作しないと何も起きないし、それによって結果が変わったりする。これは能動的な行為の対象になるのかな、と思う。同じ分類にするのは微妙だけど、楽器とかも能動的な対象になりそう。

言うまでも無い感じするけど、能動的な方がいいだろうな、というのは思う。情報の内容にもよるけど受け身で入ってくるだけの情報がいいのか?と言うとちょっと良くは無いと思う。

(少し主題から逸れそうだけど)親との会話なども能動・受動というのがあるように思う。 親の言うことを一方的に聞くだけ、親が押し付けて子供の話を聞かないという親子と、子供の話にちゃんと返事するという親子で、どちらが良いのだろうか。何を持って良いとするのか?ということは難しいが、親に返事してもらえない子供を見るとあれは、テレビを見ているのに近いか、普段は反応があるけど相手の都合で反応が無いバグみたいな状態、に思えてしまう。

(先日出かけた帰りに、4人家族で5歳くらいのお兄ちゃんが「おかーさん、おかーさん」って声を掛けてるけど夫婦で喋ってて返事しないで歩いてくのを見ていてちょっとつらい気持ちになった)


(ここで書いてる日をまたぐ・・・) 話をプログラミングに持って行こうと思ったけど、流れが微妙なのでまた別で。

自分の行為で世界に影響を及ぼすこと

子供に限らないと思うけど、自分がした行為が他人なり社会なりに何かしらの影響を及ぼす、ということが外界(自分以外)との関わりの大きな物事の一つになると思う。(それが全て、という話ではない)

少なくとも子供のうちは、赤ちゃんなら泣いたらお母さんが来てくれるとか、幼児期なら言葉を覚えて正しく言えたら相手に伝わる、とかで自分の言動によって相手が何かしてくれるのを期待するし、それができることの喜びに敏感になっているように思う。

中高生くらいはよく分からないし、どうでもいい。

大人になると、何を自分で制御できて何は触れないのか、ということがはっきりしてくるように思う。とはいえ、仕事を始めたりして環境が変わると、何かできるんじゃないか、という気持ちは生まれたり消えたりしていくんじゃないか。 もしくは、影響を与えることに欲求がなくなる、目に見える影響を与える行為をしなくても良くなる。

自分の行為で何かの影響を与えたい、というのは今はあまり無いと思うけど、少なくともその欲求がある人のサポートはしたい。