お知らせ

現在サイトのリニューアル作業中のため、全体的にページの表示が乱れています。
投稿日:
ジャンル::雑記ジャンル::思考

最近仕事での身の振り方や、世を生きるための処世術で悩むことが多いが、一定の方向性が見えてきたのでここに書き記す。

まず結論から書くと「自分が正しいと思ったことをする」ということだ。理由は後述する。

まず悩みについてだが、正解がないことへの正解を出すことに悩んでいた。

例えば上司から「バナナを売ると儲かるらしいからバナナを売って儲かる方法を教えてくれ」と言われ、この上司がバナナを売ることに痛く固執している場合があったとする。バナナを売ること以外を提案しても耳を貸さず、バナナこそが絶対で、バナナ以外に道はないといった具合だ。

私はバナナを売って儲かる方法を考え続け、バナナ以外の選択肢は考えず、ChatGPTにバナナを売ることで年商10億円に達する、絶対に失敗しない銀の弾丸を聞いたりするが、当然答えは得られない。内心上司はアホなのでは?と思いながらやっているわけだが、事実上司はアホである。しかしそのアホに従う私もまたアホなのだ。

しかしこれでは駄目だと思った。私は恐らく上司を変えないといけない。何せ上司は赤字になろうとバナナを売ろうと言い出す始末だ。最早上司に当初の目標はなく、バナナを売ることだけが目的になりつつある。

要するに上司はどうにかしてバナナを売りたいのである。バナナが売れさえすれば後のことはどうでもいいのだ。会社の業績など関係なく、我を失っている状態ともいえる。バナナを売ることができれば実績を作り、御旗を立てられるとでも思っているのかもしれない。

この様な時に私がすべきことは、上司に従うことではなく、上司を導くことではないか?と思った。上司をバナナの妄信から解き放ち、バナナ以外の道へ誘導するということだ。

ではそういった時にどうすればいいのか?まずバナナを売っても儲からないということは肌感で分かっているのだが、根拠がない。なので、まずは根拠を出す、バナナが難しければ何か説得に繋がる根拠を出すのだ。

しかし「バナナは儲かりません。理由はこうあり、これによってこうです。」と正論を述べたところで上司は不機嫌になるだけだろう。なので、代案を出す。

代案は最低でも二つ以上、更に互いの優劣を出せると恐らくより説得力が出せるだろう

つまるところこのケースで私がすべきことは上司が求める期待通りの模範解答を絞り切った雑巾を絞る思いで出すのではなく、暴走する上司を止め、説得する材料を作り、導くことなのではないかと思ったのである。

他にも類似の悩みは多くある、欧米社会が喧伝する人権及び基本的自由は普遍的価値やSDGsに関してのことだ。これらに関しては何が何でも従わなければならず、これに従わないことは犯罪であるような印象が私の中にある。しかし私はあまり従いたいとは思っていない。これは私は私の生き方をしたいし、なぜ法律ですらないものに従わなければならないのかと思うからだ。いや、仮に法律でもこんな矛盾に満ちた内容に従う気はさらさらない。

正直私は各国の歴史と風俗を「人権及び基本的自由は普遍的価値」という名前で破壊していく欧米が嫌いだし、こんなものはなくていいとさえ思っている。恐らくこの主義の向かう終着点は国民国家と法の破壊で、全てをEUに一極化し、自分たち以外の異文化を排除するところにある気さえしている。参考までに日本の外務省は「人権及び基本的自由は普遍的価値であること。また、各国の人権状況は国際社会の正当な関心事項であって、かかる関心は内政干渉と捉えるべきではないこと。」と発表しているため、日本は破壊される側である。

まぁそれはそれとして、これから必要なのは「誰かがそういったからそうやる」とか「上司が言うので、言われたとおり、期待通りにやる」ではなく、「自分の立場を明確にし、自分が思うことをする」ということだ。

これまでも私は他社の言論に対して指摘するときに極力「正しい・間違っている」とか「良い・悪い」という表現を避けてきた。避けていても相手によってはそう取られることはあるのだが、まぁ個人としては避けてきたのだ。理由としてはいかなる論説にあっても正誤はないと考えているからだ。但し法律や方程式のように、そのスコープ内では存在するので、それは指摘する。スコープの外であれば指摘しない。

例えば現実世界で人を殺すことは日本国においては犯罪であるが、戦時ではそうでない場合があるし、ゲーム内であればどうでもいい話だ。なので単純に「殺人は良いことか?」と聞かれれば私は一概に善悪の判断をしない。戦争やPKゲームの中の話なら殺せば殺すほどいいだろうし、仇討ちでも仇となった側からすればそれは良いことだと思う。勿論、殺される側にとってはたまったものではないだろうが…。

こういった具合に物事を相対的に見ることに努めているのだが、その先で出てきたのが今回の考えというところだ。

究極的に正誤や善悪はその立場によって異なり、絶対的なものはなく、相対的なものであるとしたときに、絶対がないのであれば自分がやりたいことをすればいいというのが私の考えとなった。

この考えにたどり着くまで様々な人と話し、色々考えてきたが、決め手になったのは「答えのないゲーム」を楽しむ 思考技術という書籍だった。私はまだこの本を読み切っていないが、この本には答えのない問題に対する対処法や、反対意見を持つ人との穏当な渡り合い方などが書かれているようなので、是非とも参考にしていきたいと思っている。

まだ三割ほどしか読み進めていないが、非常に実践的で、相手に腹落ちさせるための議論の進め方が書かれた本だと思っているので、自分の主義主張をいかにして他社に飲ませるか、という技法に長けた本だと思っている。読み終わったらこの記事の続きを書くかもしれない。

恐らく今私が嵌っているのは社会人10年目の壁とかいうやつで、新人でもベテランでもなく、中堅社員が陥る穴みたいなものなのだろう。これは「社会人 10年目」などでググると出てくるもので、みんな似たようなことで悩んでいるのだなと感じている。ちなみに私は数え方にもよるが社会人を10年もやっていない。数え方によってはやっているのだが、履歴書ベースだと約9年である。

私の経歴は恐らくかなり特殊な部類で、まず学卒で内定がなく、3年半ほどフリーターをしており、そのフリーター期間も職を転々としていた。ごみ収集、ECサイト制作、コンビニ店員、風俗サイトのSEO施策、ペーパーカンパニーで事務作業、大手家電店での中古情報機器のリサイクル作業など多岐にわたる。いよいよ正規の職に就かないといけないということでハローワークを通じて当時存在したトライアル雇用という既卒者向けの就職支援事業を利用して最低賃金で一社目に入った。酷いブラックだったので、一社目を辞めた後は一年と少しの間、残業代で貯めた貯蓄を原資に反動でニートをしていた。このニート時代ではMMORPGプレイヤーとして新規プレイからほぼ頂点級の廃人にまで上り詰めることができた。数々の実績を残し、正直伝説だったとさえ思う。この時に得た様々な経験は仕事や私生活でも役に立っているので、個人的には無駄ではなかったと感じている。

そこから先は一回転職で事故ってブランクができたものの、完全に定職についており平穏の社会人として生活している。因みに転職での事故というのは離職時の交渉が上手くいかず、一番平和な方法がその月で辞職することだったためだ。私の交渉術がポンコツ過ぎたため、次の入社日まで在職することは難しかった。

まぁこういったことがあり、私は年齢に応じた経験がない。ないが、同年齢の人間より仕事は出来るほうだという自負はある。あるが、このままではまだ駄目だと思っているので、SESで13次から8次、5次、3次に上がり、最終的に事業会社へ入社してきたように、次はメンバー層からマネージャー層に上がらなければならないと考えている。年齢に対する経験年数が浅いというのは一生付きまとってくる課題なので、同一年齢の人間よりできねばならないと思うし、年上のできない人を見ていると純粋にこうなったら終わりだなと感じるので、出来るだけ実績を残して、やれることを増やしていきたいのだ。

まぁ私は非常に怠惰な人間で、基本情報をとると言い出して十数年、未だに取れていなかったりあるので、どこまでやるのかは不透明なところもあるが、それでもやっていこうという志だけは捨てたくない、志だけはという感じだ。

11月の終わりから12月の初めにかけてポエミーな記事を幾つか書いてきたり、社内でも変な話をよくしていたし、ここ数年はそう言ったことで色々悩んでいたが、その悶着に一つの決着がついたのが今回の記事という感じだ。

やっと靄が晴れたような気がするので、これからもこれまでの自分の連続として、やっていけたらなと思うところである。多分これが今年の抱負というか、所信表明だ。

EdgeとChromeは同じだったがNode.jsでは異なる挙動をしていたのでそのメモ

確認環境

Env ver
Microsoft Edge 120.0.2210.9
Google Chrome 120.0.6099.130
Node.js 20.0.0

環境別の確認結果

Edge

DevToolsで確認

const err = new Error('test');
Object.getPrototypeOf(err);

// {name: 'Error', message: '', constructor: ƒ, toString: ƒ}

Google Chrome

DevToolsで確認

const err = new Error('test');
Object.getPrototypeOf(err);

// {name: 'Error', message: '', constructor: ƒ, toString: ƒ}

Node.js

node -iで確認

const err = new Error('test');
Object.getPrototypeOf(err);

// {}