Make組ブログ

Python、Webアプリや製品・サービス開発についてhirokikyが書きます。

シンプルさを求めて主体性を失うジレンマ

ここ数回書いている、シリーズ「主体性」の雑記です。 またか、と思われる方すいません。今の僕が大切にしたいテーマなんです。

僕は音楽が好きでいて、「持たないシンプルさ」にも魅力を感じている人間です。 Spotifyなどのストリーミングサービスとは非常に相性が良いと感じ、スマートフォンにストリーミングと、ちょっと良いワイヤレスのスピーカーという(ミニマリスト的に典型的な)生活をしていました。

端的に言えばシンプルで音楽も楽しめるので素晴らしいです。聴きたい音楽や気になる音楽もほとんど何でも聴けますし、友人にオススメされたアルバムもノータイムで試せます。さらにSpotifyPodcastも聴けるので持たないながらの便利さというのは完璧です。

でもふとこのデジタルライフを享受していて、逆説的にシンプルさを失っているのではと思うようになりました。 何かレコメンドや新着、オススメといった「見えざる何か」に動かされていて、自分の主体性を失っているということです。シンプルさを求めてCDをなくしてストリーミングのみにしたのに、主体性という最も重要な「シンプルさ」を失っているのです。

「ではデジタルデトックスか」という答えを出すのも安直に感じます。持たないことやシンプルライフという概念が経典として確立してしまい、実際に重要だった実感としてのシンプルさを失っているのでは、と思っています。「自分という出発点から始める」という大前提が抜け落ちているように感じます。

僕は進歩主義的な指向なので、回帰を良しとする思想には賛同できませんが、何かレコメンドやソーシャル性を制限する指向が世界的にも生まれてくるかもしれません。さすがにレコードやCDが絶対的な正解だという時代錯誤はありえませんし、嗜好品を増やす気もありません。ですが「プライバシー」の次は、「レコメンドオフ」「ソーシャルオフ」というムーブメントもあり得るでしょう。僕もAI校正・相互レビューを提供するプラットフォームを作っていますが、使ってくれている人が主体である思想は大切に守りたいと思っています。

便利さやレコメンド、ソーシャルライフも大切にしつつ、今自分が楽しめること、人のためにできることを考えていこうと思います。

他にオススメの記事

最近何回か書いている「主体性」というテーマがあるなと自分で感じています。 おそらく代表取締役になって、自分の判断で物事を進めることがより重要になっているからだと思います。 そういう雑記が好きな方はぜひこちらもどうぞ。

blog.hirokiky.org

blog.hirokiky.org

この記事はShodo (https://shodo.ink) で執筆されました。

飽きるなというのは、ただの他人の観点

飽きるって何なんでしょう。

まず前提として、飽きっぽさの違いは性格的にあります。刺激・柔軟指向か、安定・規範指向かの性格的な違いです。それはもう受け入れるしかないとして、ここでは「飽きる」ということについて考えます。前提として、どちらが良いかという話ではなく、僕は性質の話でありどちらでも良いと思います。

世の中では「三日坊主」というように飽きを揶揄する言葉がありますし、飽きるのは良くないという風潮がたしかにあります。でも、同じものを毎日ずっと食べていれば、何を食べるにしても栄養が偏って不健康になります。ずっと同じことをしていれば、それだけ他の楽しみや土地、文化を知る機会を失っているはずです。

ではなぜ「飽きることは良くない」という風潮があったり、そう感じるのでしょうか。それは「他から観測して、容易に想像できる相手が良い」と人間が考えるからです。「いつも同じ相手でいてほしい」「結果を期待したい」と人は思っているからです。飽きるか飽きないかなんて他人の視点でしかありません。 「いやいや、飽きっぽいと上達しないからですよ」と思われたかもしれませんが、それは「上達してほしいという他人としての自分」の観点だからではないでしょうか。自分をうまく制御できると思っている理性の声(他人の声)にすぎません。

世間的に「飽きてほしくない」と思われるのは、(自分を含めて)他人が期待する未来の結果を求めてるからです。人間は期待が大好きなので、しょうがないです。そして「飽きるのは良くない」と感じてしまうのは、その周りの期待する結果に応えられないという気持ちがあるからです。

僕は、飽きていいと思います。

飽きてはいけないのは、他人や論理の視点にすぎません。 一見飽きっぽい人のほうが、自分の道という意味では一番飽きずに生きられていると思います。

ただ、たしかに人の期待に長く応えたいときには、同じことを続けている必要があります。それは安心もですが、何より積み上げて初めて叶う何かを産むからです。人から信頼を得るのと、世の中の問題解決には長い時間を要します。それはたしかに仕方のないもので、そのためにたくさんの可能性を諦める必要がでてきます。 続けるためには、そういった「建設的な諦め」も必要です。「何かをする」という観点から「何かである」という観点へのシフトも必要です。この点については、また別の機会に考えるとします(ブログの購読をよろしくお願いします)。

ともかく、「飽きるか飽きないか」というのは、自分の理性を含めた他人の視点に過ぎないと考えました。 そして期待があるために、飽きないことが求められるということでした。

僕たちが何を成したくて、何をしたいのか、それを考えるのであれば「飽きるか飽きないか」なんて判断はもはや不要だと僕は思っています。

この記事はShodo (https://shodo.ink) で執筆されました。

スタートアップが何を軸にするのか。自分が作った流れに、自分が翻弄される話

Shodo https://shodo.ink/ のオープンベータ版をリリースしてから、多くの方から反応をいただいています。ありがとうございます! ただスタートアップをやってる身として、 僕がここでぶれてはいけないんだな と最近思い始めました。

Shodoについてお話やお電話をいただくときに「AI校正スタートアップのShodoさんですね」と言ってもらえることがあります。 AI校正というワードはオープンベータ版のプレスリリースにも含めた、Shodoの重要なポイントの1つです。ですが、そうでない魅力を伝えられなかったかなと反省しております。 知っていただいて嬉しい反面、これは自分たちにとって新たなチャレンジのときだと気づきました。

ShodoとしてはAI校正だけでなく、その上位にある「執筆の場」という考えを大切にしたいからです。ツールではなく、執筆を通した仕事やライフスタイルそのものを変えていきたいと思っています。 たしかに「AI校正」という言葉はキャッチーですし、僕自身も利便性以外の思惑も(ちょっと)あって作った機能ではあります。ただ思った以上にAI校正という言葉が与えるインパクトは大きく、自分たちが、自分たちの生み出した流れに翻弄されつつあるな と思っています。「AI校正だけに注力すべきなのでは?」という仮説に心の軸を揺さぶられたりしちゃいます。実際、BERTを使って平均以上のAI校正は搭載していますし、今後も改良・チューニングしていきたい機能ではもちろんあります。

でも、Shodoが変えたいのは執筆のあり方そのものです。 今は存在しない、その世界を作っていきたいなと思っています。

記者さん、ライターさんやマーケターさんがどのように仕事をするのか、どうコミュニケーションするのか。本や寄稿文を執筆するときにどう進めてどうライターさんと連絡をとるのか。社内の魅力をどう伝えていくのか。どう次の仕事に活かしていくのか。

そういうものを根本から考え直して、より良く楽しく生産的な場所を作りたいと思っています。 それは僕自身が、そもそも記事を書いたり読んだりすることが好きだからです。

たしかに「なるほど、やはりAI校正が注目される。そこだけを押していこう」と判断しても良いでしょう。 でも今、実際にShodoを深く使ってくれている方は、レビューのやり取りやステータスの管理ができる点にも価値を感じてくれています。僕自身もShodoを使ったレビューのやり取りをしていて「これは便利だ」と感動します。

重要なのは 何で注目されているかではなく、何で本当に喜んでくれているか だからです。 その価値を見失わないことが今の僕に必要なことです。 便利なツールを作るのか、本当に生み出したい大きな場を追い求めていくか。

そこを今、試されている気がします。

この記事はShodo (https://shodo.ink) で執筆されました。

どうかプログラミングに向いてないと思わないでほしい。そしてプログラミングがキャリア化した功罪の話

プログラミングに興味がある人たち、どうか「自分はプログラミングに向いてない」と思わないでほしいです。

たしかに「プログラミングスクールに通ってるから」良いスキルがあるわけではないし、スクールよりも好奇心のほうが重要なのは僕も同意です。 というか基本的な考え方はたぶんこのツイートをしてる方と、僕は同じだと思います。僕もうっかりこういうことを言うこともあります。

実際、本当に大好きで休日もプログラミングしてしまう人のほうが、スキル面で伸びが早いのも当然でしょう。 でも「休日にもプログラミングしてしまう」ほど好奇心を持って好きになるにも時間はかかると思います。

漠然とした好奇心があっても、「のめり込むほどやりたい」と思えるまでは学びが必要 だからです。 そして、もはや今のプログラミングに関する産業は単純なスキルで済まない広さがあります

「のめり込むほど好き」になれるのはまだ先のこと

何ごとも始めたては正直よく分からないものです。 自分に向いてるかどうかや、本当に好きなのかなんて分かりません。

僕自体も昔はそうで、最初プログラミングをした12歳のときも「面白いけど僕のイメージするビッグなことはどうすればできるのだろう」という虚無感があったのを覚えています。その12歳の年末年始はたぶんゲームをしてたと思います。

でもプログラミングでできることが増えて、作れるものが増えていくうちに「今作ってるものを早く完成させたい」、「もっと良いものを作りたい」という執着ができはじめました。当時はゲームを作るのがただ面白かったときでした。 今くらいずっとずっとのめり込むようになったのは、プログラミングでの繋がりができたり、成長の先が見えるようになった18歳や19歳になってからです。

僕もプログラミングを始めてから「年末年始にやるほど」になったのは6年を要しています。 まだプログラミングスクールに通ってる人や、触り始めて半年や1年の人は「向いてる向いてない」や「このすごそうな人が言うほど僕は好きじゃないな」など判断しないでください。

ただあなたが興味があってやりたいなら、まずやってみてください。いつやっても良いんです。 夢中になれたらラッキーってだけです。そのちょっとした気持ちを大事にしてください。 向いてる向いてないなんて正直どうでも良いんです。

プログラミングがキャリア化した功罪

ただ僕が子どものころ熱心にプログラミングしていたときはまだ牧歌的で、プログラミングでキャリアなど考えずにただ好きを追求できました。当時のITがすごいと言えば、僕が知っていたのはオンザエッヂ(というか堀江貴文)くらいで、まだ一般的には関係ない世界でした。

たぶん元のツイートをした方は、面接などをするときに「プログラミングスクールで学んでます(エヘン)」という人を見てきて、自分の感覚との違いにズレを感じたんでしょう。 プログラミングがキャリアとして認知されて色々な人が学ぶようになった一方、キャリアとして整備されたことで「仕事として」のみ興味を持つ人が増えたということです。

これは仕方のないことです。 気持ちとしては僕も「好奇心がある人間でないと」と思うことは正直多くあります。 でも先述したように、本当に好きになるタイミングは遅れてやってきます。 仕事のためだけに始めたけど、いつの間にか死ぬほど好きになった という人が出てくるかもしれません。 その可能性を僕は潰したくないんです。

むしろ、好奇心が持てなくても良い

むしろ、プログラミングへの好奇心が最終的に持てなくても良いです。

第一に、物事の好き嫌い、向き不向きはある程度まで習熟しないと分かりません。 これは世の中の残酷なところではありますが、向き不向きや好き嫌いなんて最初は分からないものなんです。

でももし向いていなかった、好きになれなかったとしても、良いんです。 なぜならキャリアとして十分成り立つのが今のソフトウェア産業だからです。

「いやプログラミングに真に興味ないやつと仕事したくない」と思うかもしれませんし、僕も半分同意です。 でもたとえば「プログラミングが分かるマーケター」や「プログラミングが分かるマネージャー/リーダー」はエグいほど重要です。むしろ先鋭化したプログラマーこそ、そういう人に支えられています。 もしそこまでプログラミングを好きになれなくても別スキルと掛け算で超重要人物になれます。ご安心ください。

そしてそもそも休日にプログラミングしない超優秀エンジニアはいます。文殊堂 とか映画ばっかり見てますよ。

ただもしあなたが「プログラミングのスターっぽくなってGAFAでガファガファしたい!でもプログラミングにはぶっちゃけ熱中してない(けど僕かっこいいでしょ、ドヤ)」と思うならあんまり向いてないです。あと、僕は友達になれそうにありません。

周りの意見とかどうでも良い

というか、件のツイートとかを見て一喜一憂する必要なんてないんですよ。

  • プログラミングスクールから始めてすごいエンジニアになった人がいたら夢ありませんか?
  • 休日にプログラミングしない超優秀なエンジニアいたら逆にカッコよくないっすか?
  • 途中からマーケティングに興味を持ってプログラミングスキルを持ったまま転向したって人のほうがストーリー感じませんか?

プログラミングっていうのはもう「ピコピコ大好き少年・少女が大きくなりました」って時代じゃないと思うんですよ。 自分と同じ経緯や好奇心を他人に求めるって、すごい視野を狭める結果になると思うんですよね。 組織の多様性も失われるので、結果的に弱くなるとも思います。まだこういう感覚の人結構いるので危ない気がしています。

そもそも「雇われること」を前提に自分の時間を差しだすって僕はダサいと思ってますので、自分の気になることから突っ込んで行けばいいと思います。

最終的にプログラミングを好きになれなくても、あなたには好きに生きる自由があるんですよ。

他にオススメの記事

blog.hirokiky.org

blog.hirokiky.org

blog.hirokiky.org

伸びてるっぽいので、宣伝

僕が代表取締役の会社として開発しているShodoもぜひ覗いてみてください。

shodo.ink

この記事はShodo (https://shodo.ink) で執筆されました。

PyTorchでn次元のTensorからn-1次元のTensorを使ってインデックスする

PyTorch でn次元のTensorがあったときに、n-1次元のTensorを使ってインデックスする方法です。 以下のように a というTensorと、 idx というインデックスがあったときに、 answer を取る方法です。

a = torch.tensor([
    [100, 200, 300, 400],
    [500, 600, 700, 800],
])
idx = torch.tensor([2, 3])

# 欲しい値は以下
answer = torch.tensor([300, 800])

方法のコード

>>> a.gather(1, idx.unsqueeze(1)).reshape(idx.shape)
tensor([300, 800])

一旦 idx.unsqueeze することで次元の数をあわせてから、 .gather を使ってインデックスしています。 正直これがベストかわからないので、うまい方法があれば教えてください(僕はPyTorch初心者です)。

欲しいケース

transformersのMaskedLMモデルを実行した結果から、元のセンテンスの各文字がどんな値だったかを取得するのに必要でした。 上記の aresult = model(...) として result.logitsidxinputs = tokenizer.batch_encode_plus(...) として inputs.input_ids です。

この記事はShodo (https://shodo.ink) で執筆されました。

朝食の解はやっぱりカロリーメイト(チョコレート味)だった

僕はなるべく同じものを食べたい人間で、長いことほとんどカロリーメイト(チョコレート味)を朝食に食べてきました。 でもここ数年は完全食が面白いと思い、思いついたときに朝食や昼食として試していました。

  • COMP
  • BASE BREAD
  • ゴールドスタンダード
  • INゼリー
  • フルグラ

でも結局は、カロリーメイト(チョコレート味)が一番良かった

一番美味しいし、簡単に食べられる。 夏場の暑いときはこれからもINゼリーも食べるだろうし、気まぐれにフルグラやチョコワ、菓子パン(ベルギーチョコ蒸しケーキとかランチパック)も食べると思う。美味しいからね。 でもやっぱり定番としては、カロリーメイト(チョコレート味)には僕の中で勝つものがないと思う。

BASE BREADのメープル味は結構好きだった。ただ賞味期限や買いやすさという点でカロリーメイトには勝てないし、何よりチョコレートを食べたい。 BASE BREADのチョコレートはメープルほど美味しくないし、食べやすくもない。

もちろんカロリーメイトは小学校のころから親しんでいる味なので安定感が違うというのはあるけど、そうと言っても美味しいものは美味しい。食べたあとの胃腸の快適さや体調も一番良い気がする。 長期保存用のカロリーメイトも水分が少なめで悪くはないけど、でもやっぱりオリジナルが一番シックリくる。

年も変わってこれからは、あんまり新しいのに挑戦しなくて良いかなと思っています。 新年って、みんな新しいことやろうとするじゃないですか。 でも僕としては、そんなにコロコロ変わってもしょうがないと思うんですよね。

この記事はShodo (https://shodo.ink) で執筆されました。

「価値あるもの」を作らない。VRにある価値ではない「なにか」

f:id:hirokiky:20201230150332p:plain
VRの世界

僕たち製品やサービスを作る人は、常に「価値あるもの」を作ろうとしています。 人にとって何か価値があるものを提供して、それに対する対価を得るのがビジネスや事業と考えられます。

ここで難しいのは「価値」というものの意味するところです。

僕もよく「人の抱えている課題を見つけてそれを解決してあげれば価値になる(良いビジネスになる)よ」と言っています。でも「価値」という言葉を使って考える場合、どうしてもマインドが「普遍的に良いもの」を求めてしまいませんか?僕はこれを恐れていて、特定の視座に固定されてしまうように思います。要するに 価値だけ考えると、しょうもないものしか作れないのでは と危惧しています。

VRChatにある「なにか」

VRChatを考えてみましょう。 VRChatはVRのゴーグルを付けて、好きなアバターに変身して友だちとお話するサービスです。 正直言って VRChatに"普遍的な"価値はありません が、僕の心を掴む「なにか」があります

ちょうど丸1年ほどVRChatをやっていますが、そこには便利さや利点を超えた「好きである」という感覚があります。 VRChatは正直ダメなサービスです。高い機材がないと楽しみは半減するし、導入も分かりにくいし、一番楽しい部分を味わうにはコミュニケーションの障壁を乗り越える必要もあります。 実際にプレイヤーのプレイ時間を見ると「すぐやめる」か「ドハマりする」かの二極化するようです。 でも面白い。これは何でしょう。

イメージしにくい人は、黎明期のニコニコ動画2ちゃんねる、同人文化を考えてください。 そこに普遍的な「良いコンテンツ」はありませんが、ただ何か面白い熱量があったと思います。

たぶんVRChatは一部の人しかハマらないと思いますし、「キメェ」と思う人もたくさんいるだろうと思います。 でもそれこそが、何か新しいものである証明だとすら感じます。

VRChatに今僕が感じるのは、その熱のようなものです。

f:id:hirokiky:20201230145445p:plain
VRChatで友だちと飲む僕(真ん中が僕です)

熱を重視する

僕は「課題解決」と「価値」を重視してWebサービスを作ってきました。 でもいよいよそのモノサシを踏み外すときなのかもしれません。

もちろん現実的な課題が解決されることは最重要です。 ですがそれだけでなく「熱」というものも大切ではないでしょうか。

  • 何か新しい、これは面白いぞと思えるもの
  • 自分のこと、自分ができるんだ、と思わせてくれるもの
  • 未来を感じて熱狂してしまうもの

もっというと 「熱」を普遍的「価値」に昇華できること が良い事業開発なのかもしれません。 熱はまさに「芽」のようなもので、それを大衆に向けた普遍的な価値へ変えられることが魔法の杖の仕組みなのかもしれません。

価値とは何か、熱とは何か

改めて価値というものを考えれば、広くて便利すぎる言葉に思えます。 経済学的な効用価値の意味を考えれば、上記のような「熱」や「好き」も価値の1つと表現できます。

ですが僕は、やっぱり「価値」という言葉には危うさを覚えています 。 個々人がその言葉を感じるとき、どうしても普遍的で、交換可能な良さであるという文脈が尾を引いてしまいます。 それは製品やサービス同士を、比較表やスペックシートを使って比べるような貧相な発想しか産みません。

「好き」の大きさや熱量で考えてみましょう。あなたは自分の作ってるものに熱中してますか?熱中してくれる人はいますか?

価値をシッカリだしつつ、そこには熱があるのか「好き」があるのか、魂が震えるのかを今一度大切にしてみましょう。

VRChatで僕と握手!

f:id:hirokiky:20201230145216p:plain
Vketを歩く僕

この記事はShodo (https://shodo.ink) で執筆されました。