再開
最初の記事から気が付けば2ヶ月も経ってしまいました。エライことです。
書き続けることへの無力さを感じます。しかし、この無力さはきっと書くことによってしか拭い去れないことも理解しています。
というか、どうやら私は文章を書くことはそれほど苦ではないのですが、記事の合間の写真・画像のことを考えると途端に憂鬱になるようです。
そんなときふと「逆に考えるんだ、画像なんてなくったっていいって」と某波紋紳士のお父さんの教えが思い出されました。そうです、見栄えの良い記事はウチの女子とかがきっとやってくれます。なので、私は私のやり方でやっていきたいと思います。
ということでGo言語学習の2日目。2日目といっても実際には2ヶ月ほど経っており、その間に細切れではありますが、少しずつ学んだり試したりしていました。その内容について今回はぽつぽつと書いてゆきたいと思います。
Visual Studio Code
せっかく業務外の開発で環境も含めてじっくりと吟味できるので、開発環境についても新しいものを導入してみることにしました。
前回記事の「秀丸エディタ+コマンドプロンプト」のあまりの素朴さに、自分で記事を上げておいてショックを受けたというのもありました。
選定のポイントとしたのは下記の2点です。
・とにかく軽いこと。(Eclipseがわくわくするツールから、触るのが苦痛なツールになったのはいつの頃からだろう・・)
・Windows(職場)でもMac(家)でも使えるもの。
いろいろ調べたところ Microsoft の Visual Studio Code が良さげという結論に達しました。
我々の世代は Microsoft製のツールというと正直ちょっと身構えてしまうのですが(J++って何だったんですかね?!)、これは触ってみてすぐに気に入りました。
起動は一瞬で見た目もCoolだし、Configもレジストリとか使わないで全部JSONで見えるところに入ってる。ターミナルはpowershellだからlsって打てる!
だからこそ、ちょっと疲れていたり気分が乗らないときでも「少しソース眺めて次やることでも考えてみようか」なんて軽い気持ちで起動してみる気にもなる。触ってて心地よいというのは、ツールにとって本当に重要なことなんだなあと改めて思います。
Slack Botを作ってみる
新しい言語を学ぶとき、「インストールして、環境整えて、簡単なサンプル実行して、おー動いた動いた」と、ここまではみんな勢いよくいけると思うのです。
「で、次に何する?」
ここで壁にぶち当たります。というかぶち当たってました。作りたいもののイメージがあっても、新しい言語自体に慣れている訳ではないので、ちょっと何かしようとするとすぐに躓く。自分の良く知っている言語だったらこんなことでハマらないのに。。
しかも、過去の経験からくる変なプライドがあるので、チープなものを作っても自慢にならないどころか、逆にこんなものを出してもレベルを疑われるだけかもしれない。新しい言語を学ぶ楽しさがいつの間にか苦痛に、ネガポジが反転しそうな瞬間が何度も訪れます。
しかし、ここでやめてしまうと本当に何も残らない。ゼロです。痛みは止まるかもしれませんが、何も生まれないのです。無です。せっかく何かを作り出すというチャンスと環境と意欲があったのに、それを綺麗さっぱり流しちゃっていいものでしょうか。
「取るに足らない、しょーもない、けれど自分で作り出したモノ >>>>>>> 無」
このシンプルな真理を思い出し、再びVSCodeに向かいます。この壁が高いからこそ、何かを作り出すという行為には価値があるし、世に生み出されたすべての作品に対して敬意をもって接することができるのだと思います。
ということで、テーマを見直します。
・簡単にできて、動いていることが目に見えてわかりやすいこと。
・みんな(社員)の興味を引いて注目を集められること。
1つめは自分自身のモチベーションを保つために結構重要です。コツコツと部品を積み上げて、ようやく全パーツ揃ってから動かせるというタイプの成果物を空き時間と余力でやり続けるには、凄まじい精神力がいります。いきなり長編小説を書くのではなく、まずは短編小説を書きあげてみようという感じですね。
2つめは立場上の要件といいますか、ほらこんなことが簡単に出来ちゃうんだよと社内にアピールし、「じゃあちょっと自分もやってみるか」と思わせるようなネタにならなければ面白くない。
社内で積極利用しているSlack上で動作するBotをGo言語で作る。これが再設定されたテーマです。
社内にはちょうど #sandbox というお試しチャンネルがあるので、そこであれこれやっているといいアピールにもなるのかなと。長年の経験から人は言葉だけじゃ動かないと痛感しています。なので、まず自分が楽しそうに何かやっている姿を見せるのです。いずれきっと、遠巻きに様子を伺う連中が現れるはずです。
あとはエンジニア的打算もありました。Botの基本部分さえ出来てしまえば「AときたらBと返す、CときたらDと返す、それ以外はE」というif文の羅列でもまずはそれっぽさは割と簡単に出せるだろうと。
続きます!