とあるIT屋の独白

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

テーブル設計の考え方とAPIについて

以前にこのブログで、APIをどのような観点で設計するかということについて書きました。その際に設計の観点として大きく、DBのスキーマ・画面・ドメインを意識する必要性を挙げました。

toaruit.hatenablog.com

今回はDBスキーマの設計、つまりはテーブル設計に少しフォーカスして、APIとの関連について書いてみたいと思います。

まず前提としてテーブル設計にはデータモデリングが必要になり、このデータモデリングは下記の記事にある通り、ドメインモデリングとは異なるという位置付けとします。もちろんドメインモデリングとデータモデリングが被ることは全然あり得ますが、データモデリングの目的はあくまで、データをいかに適切に永続化するか、ということにあるからです。

logmi.jp

データモデリングを行った後に個々のテーブル設計を行うわけですが、テーブル設計の進め方については下記の記事が参考になります。記事にも触れられている通り、DBのテーブルは基本的に変化に強くないので、いかに将来の拡張性を見据えて設計するかというのは大事だと思います。また最終的には正規化をするのが基本なので、重複や不整合が無いような設計にするのも大事でしょう。

agilejourney.uzabase.com


システムが対象にする業務が複雑では無い時、例えば画面においてもCRUDが出来れば良いというケースであれば、画面≒テーブル定義≒ドメインとなると思います。APIもテーブルのフォーマットに合わせれば、ほぼ問題ないでしょう。ただ、業務が複雑になってくるとそうはいかなくなります。
テーブル設計の観点は上記で書いた通り、業務をいかにデータに残すかに加えて拡張性や正規化などを加味した結果です。ドメインはあくまで業務が対象とする領域を表現したもの、画面については画面を触るユーザの関心事が主になります。この3者がズレていた場合、一致させるというのも一つの手ではありますが、要所要所でどれを優先させるかというのがやはり現実的かなとは感じます。

では、この3者がズレていた場合APIはどうすれば良いか。もちろんテーブルのフォーマットにAPIを合わせるというやり方は分かりやすいですが、APIの利用者が必ずしもそれで使いやすいという状況にもならないでしょう。現実案としてはAPIの利用ケースによって、どこに合わせるかはその時々で判断するというのが、落とし所になるかなとは感じます。
とはいえ、バックエンドで全てのケースに対応したAPIを用意するのは、非効率になるかもしれません。なのでGraphQLなどを利用して、BFFを別途立てるという選択肢もありかなとは思います。

zenn.dev

雇用においていかに市場の観点を取り入れるか

最近はフリーランスであったり正社員でも副業を行ったりなど、ぼちぼち働き方の多様性が出てきたかなとは感じます。一昔前は、派遣であったりフリーターでの雇用は労働者側にとってかなりキツいのではと議論されていました。もちろん、派遣やフリーターの働き方が一概に悪いとは言えないし、それでキャリアを積み上げてきた人もいるでしょう。ただ、企業側がコスト削減という意図で、このような雇用をしている側面も否定は出来ず、キャリアをきちんと積み上げ出来なかった人も一定数出てしまっていることは、課題かなと感じます。

nyaaat.hatenablog.com


終身雇用の時代は、その会社でいわゆる昇進を目指すことが、キャリアの積み上げに等しいことだと感じます。もちろん今でもそのような働き方は全然ありと思いますが、終身雇用が保証されていないかつ、一つの会社でのキャリアの積み上げが正解かが分からない、といった面はあるかなと。
企業側もすぐ辞められると困るので、正社員雇用するというケースはまだまだ全然多いでしょう。ただ、正社員は解雇をしにくいということもあり固定費になってくるので、中々給料を上げにくいということはあると思います。

anond.hatelabo.jp


今の職場で正社員で給料が上がりにくいから、転職したりフリーランスになるという話もけっこう普通にあるでしょう。とはいえ、今の職場でキャリアを積み上げていくことが自分の為になるのであれば、あえて辞めるという選択をとるのはもったいない気はします。
このようなことを減らすために、下記の記事にあるように市場価値と比べて自分の給与がどの程度になるのかというのを、把握しておくことは大事かなと思いますし、企業側も自社の人材がどのくらいの価値があるかは意識する必要がある気はします。

type.jp


では、どうすれば社外の市場の視点が得られるかということですが、個人的には厚生労働省がやっている「在籍型出向」の制度は良いなと感じています。支払う給料がどちらの企業かは契約によって変わると思いますが、出向先の方が給料を支払う場合は、出向先企業の社員と比べて給料がどう違うのかというのは、一つ参考になるかなと思います(もちろん給料のベースを教えてくれるケースに限りますが)。
出向契約が終わって戻ってくる時には、自分の社外価値みたいなのは少しでも把握できるでしょうし、それを元に自社でどう改善すべきかというのも、生まれてくるかなとは感じます。

www.mhlw.go.jp

メタバースを価値あるものにするためには

最近はザッカーバーグが、メタバースで撮った写真が話題になってますね。このブログでも、昨年にメタバースについて取り上げ、

toaruit.hatenablog.com


セカンドライフの事例や、Metaの取り組みなどについて触れました。そこでもメタバースユースケースについて言及しましたが、今年になってもそこまで目新しいユースケースが生まれたというわけでもないかなと感じます。もちろん、メタバース空間はセカンドライフ全盛期よりも洗練されているとは思いますが、このままだとセカンドライフとそんなに変わらんじゃんという結論になってしまうでしょう。では、どうすれば価値あるメタバースが実現できるかというのを、今回少し書いてみたいと思います。

メタバースの位置付けとしてはいわゆる仮想の空間なわけですが、仮想の世界でどう価値を出すのかというのはけっこう難しい話です。もちろんエンタメのコンテンツとしては全然ありと思いますが、実世界との関連が薄い以上はそこからの広がりが限界があるからです。実世界といかに関連させるかが、メタバースの価値を上げる上で大事なのかなと感じます。
一個の方策としてはセカンドライフと同様に、現実世界の企業がブースのようなものをメタバース上に出店して、集客に利用するといったものでしょう。以下の記事に事例がありますが、ガールズコレクションやゲームショウといったものもメタバース上で行われてますので、セカンドライフの時よりは認知度も上がってるかなと思います。

www.nice2meet.us


とは言え集客にしか使えんとなると、中々厳しい感もあります。集客のためにコンテンツも用意しないといけないし、セカンドライフの時に上手くいったとも言えないので、別の視点も必要になるように思います。
逆の発想で現実世界のものを仮想空間に持っていく、デジタルツインの取り組みは注目すべきかなと思います。メタバースとデジタルツインは別物と位置付けられることが多い気もしますが、個人的にはデジタルツインがメタバースの主流となっていく可能性もあると考えています。デジタルツインの概要については以下の記事にありますが、仮想空間において現実世界と近い状況でシミュレーションできるのは、かなり価値ある仕組みと感じます。

sogyotecho.jp


実際に製造業等で、デジタルツインの事例は出てきています。コストの削減だったり稼働の最適化といった価値が出ていて、やはり実需が伴うと活用は広がっていくかなと感じます。

www.capa.co.jp


デジタルツインとは別の観点ですが、オンラインMTGの高度化もメタバースに繋がっていく可能性があると私は感じます。下記の記事でビル・ゲイツはオンラインMTGはここ数年で、メタバースに移行すると言ってます。

www.moguravr.com


デジタルツインとオンラインMTG高度化は、マイクロソフトがとっているメタバースの戦略です。メタバースを戦略をど真ん中に置いてるのはMetaですが、現実に即して法人をターゲットとしてるマイクロソフトは現実味があるというか、ユースケースが明確とは感じます。

xtech.nikkei.com

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

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

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