とあるIT屋の独白

ITや経営について主に書きます

自由とは主観的なものかもしれないという話

以前にこのブログで自由について取り上げました。

toaruit.hatenablog.com


自由について色々な考え方があるかもしれませんが、個人的にはミルの「他者の功利を損なわずに自分の幸福を追求する自由」というのが、現実的な考え方かなと感じます。このミルの考え方をベースとする場合、「幸福」と「自由」が大きく関連します。ということは、自分にとっての幸福に関係ないことで、ルールで縛りがかけられてることは不自由であると言えるか、というのはやはり気になる点です。個人的には自分の関心が薄いところで、ルールで縛られてもそれは不自由であるとは言えないと感じます。もちろん、自分に関係があるところでルールで縛られたら、それは不自由と感じてしまう可能性が高いでしょう。

例えば、以下のセグウェイの例。セグウェイは現状、公道での走行は日本では不可です。これはセグウェイを買った人にとっては、なんで走れないんや、と言いたくなるでしょう。ただ、おそらくですが日本の大半の人はセグウェイを持ってないので、多くの人にしてみたらセグウェイで走れる・走れないの問題は、自分の幸福には関係の無いことになるでしょう。

www.webcartop.jp


逆に、一昔前にかなり話題になった、香川県でのゲーム対策条例。おそらくゲームは多くの人が触れたことがあるもので、それが規制されるようなルールはけしからんという考えを持ったこと
でしょう。ただ、完璧に推測ですが、この条例を提案した人はゲームにさほど興味がなく、自分にとっての関心ごとではなかったように感じます。

ja.wikipedia.org


人によって、何が自由・不自由と捉えるのか、主観的で個人差があると私は考えています。だから、一見自分と関係ないじゃんと思えることでも、不自由と感じる場合もあるだろうし、逆もまた然りです。また、人の価値観も多様化している中で、人が何に関心を持っているか、個々で違くなってきてる側面はあるでしょう。だから、一昔前よりもこういったことが、議論になりやすくなっているのかもしれません。

また、留意したいのが、ミルの考え方にもある「他者の功利を損なわず」という点。いくら自分がそれによって便益を得たとしても、他者がそれによって損することになるのであれば、それは規制する必要は出てくるでしょう。これも一昔前の話ですが、漫画村のような例は典型的で、いくら読者が便益を得ても作者が損するという状態は、やはりダメだよねという話にはなります。

www.fuhyo-bengoshicafe.com

どこにいるか、何をなすべきか

自分が今どういう環境で働いたり学んだりしているかというのは、非常に重要であることは改めて言うまでもないかもしれません。環境によって、自分の力が発揮できなかったりすることは往々にしてあり、だからこそ節目節目の選択が大事になってくると感じます。自分が今いる環境にそこそこ満足していて、それなりに自分の能力も活かせているというのは、幸せなことと思います。
ただ、今の自分の環境が未来永劫、自分に合う環境というわけではないかもしれません。環境変化でトップが変わったり、会社が買収されたりすることもあるでしょう。その時は、どこにいるかという観点だけでなく、そこで「何をなすべきか」という観点も求められてくると考えています。以下の記事でいう「出世はたいした問題ではない」というのは、現代において、より大事な考え方なように感じます。

next.rikunabi.com


もちろん、環境変化が比較的緩やかだった一昔前なら、「どこにいるか」という観点だけでも乗り切れたかもしれません。ただ、今はその観点に加えて「何をなすべきか」も考慮しないと、従業員がいざ会社から放り出された時に、太刀打ちできないリスクもあるでしょう。最近でいうと、ジョブ型の雇用やキャリア自律といった論点が出てきたのも、こういった背景からと感じます。
企業側は、今までの良い給料と肩書きを与えれば従業員は離職しないといった考えから、徐々に転換する必要はあるように思います。もちろん給料や肩書きが重要なのは言うまでもありません。それに加えて、従業員一人一人が「何をなすべきか」をどう考えているか考慮し、適切なポジションを与えるといったことが大事になってくると、個人的には考えています。
例えば、「営業」や「システム開発」といったある程度大枠の職種で括るのも必要ですが、その中でも従業員一人一人が何を為したいか、それが今の会社で設定されている職種でカバーできる領域かというのは、日々検討すべきことなのかもしれません。以下の記事にあるいわゆる「キャリア自律」では、いわゆる紋切型の役割というよりは、一人一人の得意分野等に合わせてキャリアを作り出していくような考え方が述べられています。

www.hj.sanno.ac.jp

社外取締役のあり方について考えてみる

最近は、そこそこの規模の会社で社外取締役を置いてるところも、珍しくなくなってきました。社外取締役の大体が、いわゆる名義貸しみたいな感じになってる風潮もなくはないですが、最近だと以下の記事のように社外取締役が解任される、みたいなこともちょくちょく起きてる印象はあります。

toyokeizai.net


そもそも社外取締役とはどのようなものか。下記の記事に概要がまとめられています。

基本的には上場企業には制度上は設置必須となるので、形だけ置いているという企業も多いようには感じます。本来的に求められる役割としては、社外の視点からの助言であったり、株主からの意見を経営に反映させるといったものとなります。

schoo.jp


個人的に重要と感じるのは、以下の記事で触れられている「経営陣・支配株主から独立した立場で、少数株主をはじめとするステークホルダーの意見を取締役会に適切に反映させること」という点です。特に上場企業にもかかわらず大株主が存在する場合は、全て大株主の意向で経営方針が決定されてしまう、といったことも起こりえます。冒頭に紹介したエニタイムの事例では、大株主が自分と意見が合わない社外取締役を解任という、元も子もないことをしてるわけです。

株主とのコミュニケーションを軽視するIR方針 | 蝶理の株主価値向上に向けて


東芝でもこのような事例が、少し前にありました。東芝の大株主であるファンドのメンバーを社外取締役に選任しようとしたところ、綿引さんという社外取締役が反対したという件です。反対自体は、非常にまっとうな意見と感じます。

president.jp


結局は綿引さんは、解任されてしまいました。正しいことをやろうとしたら解任される、これでガバナンスが担保されるとはあまり思えません。

www.yomiuri.co.jp


非上場であれば別に良いとは思いますが、上場企業は多くの少数株主も存在する中で、大株主が自分の意のままに会社を支配するのは如何かなと感じます。その中で社外取締役のポジションは重要と感じますし、あるべき役割が果たせるような制度の整備は必要な気はします。

2022年時点のWeb3について考えてみる

最近、Twitter等々でWeb3のことが話題になってますねぇ。DXと同様に書いてる人はWeb3のこと理解してんのかって思うようなのも散見され、結局Web3ってなんだかよく分からん怪しいものみたいな感じで、読んでる人も多いのではないでしょうか。
現状のWeb3は投機的なトピックが主に論じられていて、本来の目的ではない部分で扱われている気はします。もちろんお金に絡む部分はあるのですが、そこばかり論じても中々本来あるべきところにはたどり着かないように感じます。

thebridge.jp


というわけで今回は、そもそもWeb3とは何なのかというのを取り上げ、今後の展望的なのも少し書いてみたいと思います。

まずWeb3の目的とは何かという点ですが、下記の記事にあるような「GAFAMなど特定企業に依存しない個人に焦点」を当てることになると思います。つまり、GoogleAmazonのようなある種の中央集権的な組織に、データや資産を管理されるのではなく、個人で管理していくものを目指すものになると思います。

www.ejworks.com


個人でデータ管理って言っても不安がある、というのが実際のところでしょう。その不安を解消する仕組みがブロックチェーンです。ブロックチェーンの詳細については割愛しますが、「誰が何をしたか」というのが改ざんされず記録されていく仕組みが、データの基盤として使われています。

monstar-lab.com


さて、このWeb3の目的ですが、多くの人が特定企業に依存したくないと感じているのでしょうか。もちろん、GoogleAmazonにデータを預けたくないという人も一定数いるとは思いますが、多くの人がGAFAMのサービスを使っているように、別にWeb3の目的を達成しなくても良いと感じている人が現状の大半と私は思います。にもかかわらず、なぜ世間でそこまでWeb3がもてはやされているかというと、ある種ずるいやり方でお金を稼ごうとする人が存在するからだと感じます。

例えば、ゲームプラットフォームを運営しているSteamでは、仮想通貨の使用は2022年時点では取りやめています。それは仮想通貨の信頼性が、担保できないということに起因しています。具体的にはその出元が不正なものだったり、裏で違法なことが行われているということです。個人が自由に取引できるということは、悪意を持ったプレイヤーが入り込むというリスクもあって、そのリスクがまだ制御できていない段階なのかなとは感じます。

www.gamespark.jp


個人で管理することが必要である以上は、その安全性を担保することが必要になってくると考えています。今まではデータはサービス運営者が管理していましたが、Web3になると個人が管理することになります。悪意を持った人が出てくるとその金融資産を抜き取られるリスクもあるので、仕組みでどう防ぐかというのはまだまだ課題と思います。もちろん、Web3自体はまだ始まったばかりなので、安全性や価値のあるユースケースの確立もまだこれからかなと考えています。

個人的に考えるユースケースの一つとしては、法定通貨の信用が落ちた場合の代替手段です。ナイジェリアの例でいくと、通貨の下落により国民がビットコインを買うような動きがあるそう。アメリカや日本などでは通貨の信頼性が高いので、まだこのようなことにはならないと思いますが、ハイパーインフレが起こるような国では、信頼できない中央ではなく仮想通貨が流通する可能性のあるでしょう。

www.coindeskjapan.com


我々の身近なところでいくと、オンラインゲームでのユースケースが挙げられます。

オンラインゲームは運営元がサービスを終了するリスクが付きまとって、サービス終了となればそのゲームで得たポイントやアイテムは、なくなってしまいます。私も昔やってたゲームがサービス終了になったりして、悲しい思いをしたりしています。。
Web3でのいわゆる「NFTゲーム」と呼ばれる領域では、アイテムをNFT化し自分の資産になったり、ゲーム内のポイントを仮想通貨に交換できたりします。たとえサービスが終了しても、仮想通貨に換金しておけば手元に資産は残るし、持ってるNFTを他のゲームで使い回しできる仕掛けが用意されているゲームもあるそう。もちろんゲームなので、楽しくなければ成立しないのですが、今まで自分がかけた時間が資産化できる点は、けっこう良いなとは感じています。

www.caica.jp


NFTゲームについても、最近はSTEPNが怪しいと批判されている通り、まだまだ始まったばかりでこれからあるべき形は模索されると思います。ゲームで積み上げた資産を中央集権で管理するのではなく、ちゃんとネットワークで共有できる仕組み自体は良いと私は考えているので、変に投資詐欺のような方向に行くことがないことを個人的には願っています。

家庭崩壊が起きた時のケア

既にニュースで多く報じられていますが、安倍元首相が参議院選挙の時に銃撃を受けてしまいました。心からお悔やみ申し上げます。

まだ、事件の詳細は捜査中だと思いますが、今のところ出ている情報だと、おそらく犯人の個人的な恨みによるものが、動機であるだろうと言われています。そして、恨みの対象が安倍さん個人ではなく、家庭崩壊の原因となった宗教であるという供述がされています。以下の記事によると、犯人を取り巻く環境はかなり壮絶な状況だったことが推察されます。

bunshun.jp


安倍さん個人に恨みが無いかつ政治的な思想が動機でない以上、今回の犯行は無差別的な性質に近いものと考えています。同様の事件として挙げられるのが、京アニの放火事件です。京アニ事件の犯人も、家庭環境がかなり壮絶で、あのような常軌を逸した行動になるまでに、社会への恨みが大きくなったと思われます。
今回の安倍さんの事件において、もちろん宗教の問題だったり、政治家と宗教の関わり方について考えるのは非常に大事でしょう。ただ、宗教以外にも家庭環境が崩壊する原因も考えられ、今後このような家庭環境が崩壊する人が出てきた場合、どのようにケアするかも大事と考えています。

安倍さんの事件も京アニ事件も、家庭崩壊が起きたのが、犯人がちょうど思春期の時期になります。また、家族が自殺しているというのも共通点です。特に家族が自殺したというのは、非常にショッキングな出来事だと思うので、そのようなことが起きてしまった時は公的機関などでケアすることなど検討すべきでしょう。今回の事件であれば、もし以下の記事に書いてあるような弁護士の方が相談に乗っていれば、事件が起こってない可能性もあったでしょう。

www.daily.co.jp


家庭崩壊が起きて、残された若者がほっぽらかしになる状態は、このような凶行につながるリスクがあると考えています。思春期に起こったショッキングな出来事は、後に尾を引くことが多いかなとは感じます。自分の力で立ち直れる人もいるとは思いますが、やはり心が折れてしまう人もいるでしょうし、そこは社会としてフォローすべき事とは思います。

個人的に感じるのは、家庭崩壊が起きてしまった時に、特に気を付けたいのは独りにしないということ。カウンセラーが定期的に連絡を取ったり、落ち着くまでシェアハウスの部屋などを提供するのも良いでしょう。そこに対してはきちんと税金を使って、一人でも多く立ち直れる人を増やす仕組みを作るべきではと考えています。
日本は少子化という課題を抱えている中、若者をより大事にする施策を検討していかないと、後々の凶行にもつながる恐れがあるし、何より子供が減るという傾向は続いてしまうように感じます。もちろん社会を完璧に平等にするのは不可能です、どこかしらに不平等は起きうるものだと思います。運の良し悪しもあるでしょう。ただ、本来能力がある人が不運により報われないという事をいかに減らすか、そろそろ真剣に考えるべき時ではないでしょうか。

プログラミング言語自体の機能以外での選定観点

何のプログラミング言語を選べば良いのかという課題は、エンジニア界隈で盛り上がる話題の一つですよね。個人的には言語自体の機能やメンバーの志向みたいなのが一番大事とは思いますが、とはいえ使いたい言語がユースケースにはまらないのではという懸念もあります。今の時代は絶対的に優れている言語は無いと思っていて、ユースケースに応じていかに使い分けられるかという観点も大事と考えています。
というわけで、今回はあくまで個人的な見解ですが、プログラミング言語自体の機能以外での選定観点を挙げてみたいと思います。

① パフォーマンス・低レイヤー対応

OSに近い部分の操作が必要であったり、コンマ数秒の単位でのパフォーマンスを求められている場合は、現在でもC/C++を選定するのが王道でしょう。このようなユースケースで、RubyPHPが採用されることはほぼ無いでしょう。
最近だとRustが、C/C++の代替としてちょくちょく話題になっているので、低レイヤー層のプログラミングをやってる人はキャッチアップしても良いかなと思います。

② 使用するツールやパッケージに紐付く

例えばブラウザベースのアプリケーションを開発する場合、フロント部分でそれなりに凝った実装をするなら、現状ほぼJavaScript(もしくはTypeScript)一択になるでしょう(クロスプラットフォームとかWebAssemblyをメインで使わない限りは)。フロント部分がJavaScriptならバックエンドも合わせたいよねって話にはなるので、サーバサイドjsは現実的な選択肢にはなりつつあるように感じます。
あと、分かりやすいところはPHPで、WordPressEC-CUBEをシステムの基盤として採用する場合は、間違いなくPHPを選定せざるを得ないでしょう。
このケースは、いくらその言語がイケてないと感じていても、選択において他に代替手段が無いに等しいので、あまり議論の余地が無い状況になることが多いと思います。

③ ライブラリやフレームワークの存在

このケースは、他の言語でも実現不可能では無いんだけど、便利なライブラリやフレームワークがそろっているから、それ使えばいいじゃんって場合になります。
一番分かりやすいところでいくとPythonです。機械学習やデータ分析をメインで行う場合に、他の言語でも不可能ではないんだけど、普通にPythonで良いよねという結論に大体はなると思います。PythonはWebフレームワークも一応あるので、分析系と合わせて言語をPythonに統一するっていう選択も珍しくない気はします。
あと、スタートアップで使用するWebのフレームワークと言えば、まだまだRailsが使われていると感じます。少人数でスピード出したいよねっていうケースには、RubyRails)が候補に入ってくるでしょう。

④ 使用するプラットフォームとの相性(企業の観点)

インフラの基盤にGCPを使うとなった場合、バックエンドの言語はGolangが候補になるでしょう。GolangGoogleが開発しているので、GCPで何か機能を使いたいとなった場合に、環境が整備されているからです。もちろんGCP自体は他の言語もサポートしているので、他に重要なユースケースやこだわりが無い場合は、やはりGolangを選定するのが無難かなとは感じます。

cloud.google.com


個人的にはJavaもこの方針になってきてると感じます。もちろんJavaはライブラリが充実しているので、その観点で選定される可能性も十分にありうるのですが、JavaOracle傘下で開発されているので、Oracleのプラットフォームを使用する場合は、Javaを選定するのが良いのではと感じます。(もちろん他の言語でも動くとは思いますが)

最近だと、以下の記事にあるようなOCIの基盤で、Javaのアプリケーションを管理する機能もあるようですので、今後もJava特有の機能が実装される可能性はあるでしょう。

prtimes.jp


さて、ざっと言語の機能以外で個人的に意識している選定基準を書いてみましたが、直近で衰退していると言われている言語にも触れてみたいと思います。特にその言語をディスる意図は全くないのですが、言われることが比較的多いと思われるPerlScalaについて、なぜ衰退するような感じになってしまったのか書いてみます。

Perl

Perlは2000年代前半頃は、Web開発で普通に使われていたのですが、Railsの普及であったりPHPとの競争に敗れたりで、今の時点でWeb開発で採用されるということは、ほぼ無いでしょう。ここら辺はユースケースが被る言語との競争になってしまうので、致し方ない面はあります。

anond.hatelabo.jp

言語自体の書き方は好みによるので、それについてPerlが劣っているとは私は思いません。Pythonとの比較で挙げられるのは、データ分析系界隈の人がPythonを好んで使うことが多くて、それでライブラリが充実していったという経緯もあります。仮にPerlPythonに匹敵するようなライブラリが存在していたら、今の状況も変わっていたかもしれません。

el.jibun.atmarkit.co.jp

Perlは言語自体のアップデートも結構カオスになっています。この記事を書いている時点でもいまだにPerl7はリリースされていない模様ですし、コミュニティの中でもゴタゴタがあったそう。このような状況でシステム開発においてPerlを選択するのは、やはりリスクを感じてしまう気はします。

scrapbox.io

Scala

私も触っていた言語で、個人的には好きな言語です。Javaのライブラリも使えるし、Javaより便利なメソッドも揃ってるし、関数型の機能も使えるし、言語のコンセプトとしては今でも素晴らしいと感じています。

scalapedia.com

ただ、今はネガティブな印象で見られてしまうことがある気はしていますし、新規開発でScalaを採用するという話も以前よりも聞かなくなったと思います。理由としては以下の記事でいくつか挙げられていますが、個人的には「Spark絡み以外の嬉しさがもう一つというか、結果的に他にキラーなものが生まれてこなかった」というのが大きい気はします。

blog.kaelae.la

Spark自体が今はBigQueryのような競合サービスが出てきた点と、Kotlinの台頭やJavaの機能アップデートもあって、Scalaが段々と選ばれる理由付けが弱まっている気はします。

qr.ae

加えて最新バージョンのScala3へのフレームワークやライブラリの対応の遅さです。Scala3自体は2021/5にリリースされたのですが、Scalaで最もメジャーと思われるWebFrameworkのPlayFrameworkは、いまだにScala3対応が済んでいません。おそらくですが、開発言語としてScalaを採用している現場のほとんどが、まだScala3に上げてない状態と思われます。

この2つの言語は環境変化に対して、確立したユースケースを実現できなかったという点と、言語および周辺のフレームワークをきちんとアップデートできなかったという点が、ちょっと対応として微妙だったという気がします。もちろん、まだアップデート自体は続いてますので、今後も状況は注視するべきとは思いますが。
あらためて、言語自体の機能が重要なのは言うまでもないのですが、それ以外の要素でどう使ってもらうかを意識しないと、中々プログラミング言語は普及したり使ってもらえなかったりするのかなと最近感じます。ユースケースが明確な言語は廃れにくいし、逆にこのユースケースなら他の言語でもいいよねってなってしまうと、言語自体の存在意義を見直すタイミングなのかなと思います。

関心とメンタルは互いに影響し合うかもしれない

以前に、無関心と関心は伝染するかもしれないという記事を書きましたが、

toaruit.hatenablog.com

今回は似たようなトピックで、関心とメンタルについて書いてみたいと思います。

鬱っぽくなる時とか私もあるのですが、その時は今やってる仕事とか人付き合いに対して、関心を失いますよね。そういう時は寝たり、気分転換にどこかに行くとか酒飲んだりして、何とかメンタルを戻そうとはします。もちろんひどい時は薬を飲むとかも、必要な時もあるかもしれません。

www.hanazono-clinic.jp


最近私が考えるのは、なぜ鬱っぽくなってしまうかということ。もちろん、嫌なことがあればそりゃ落ち込みますわという話はあります。ただ、嫌なことが積み重なっていくと同時に、それに対して関心を持たなくなってしまう面はあるような気はします。
自分が生活している時間の多くが関心の無いものという状態になったら、そりゃ鬱になるリスクは上がるでしょう。なので、メンタルを保つ上でちゃんと関心を持つというのは、重要な要素と感じます。

とは言え、どうやって関心が持てるものを見つけるかというのは、難しいですよね。私は一応ITのエンジニアをやっていますが、なんでITに興味を持ったのかと言われると、たまたま就職活動してた時にITの会社に受かったから、、みたいな特に深い理由があったわけではないです。ただ、その時に置かれた環境ってけっこう大事だと思います。以下の記事で、子供にどうITに興味を持ってもらうかということで、

thewonder.it

親から与えられたからといって、素直にそれに興味を持つ子どもばかりではありません。でも、「大人が何かすごいことをしている」と思うと、興味を持つのではないでしょうか。たとえば弊社のエンジニアも、小さい頃から家にパソコンがあって、親の見よう見まねでプログラミングをはじめたようです。教材を与えるだけじゃなく、親が一緒になってものづくりに取り組むのが、興味を持たせるのには効果的だと思います。

ということが言及されているのですが、関心を持つ上でやっぱり最初は、周囲であったりその中で自分が置かれた環境の影響は、大きいかなとは思います。なので、自分が今関心を持てるものが無いという場合は、少し違う環境であったり、普段あまり接しないような人と少し絡んでみる、といったことはけっこう有効なのかなと感じています。