メタラーまとんがハイソにやらかすようです

東大理系修士卒JTBCエンジニアのハイソサイエティ(上流階級)な日常

素人投資家のリアルな現実をお伝えします。300万円が1年半で何円になった?

ども!投資ブロガーのまとんです。

個人投資家で資産を増やすことに成功するのは、わずか10%だと言われています。

残りの90%は、最初はビギナーズラックでうまくいってTwitterなどでドヤりますが、気が付けば大失敗をして、SNSからいなくなります。これを「退場する」と言います。

 

では、2019年8月に国内株式を始めた素人投資家である僕の資産は、コロナショックを経た今、どうなっているのか?

リアルな現実をお伝えしようと思います。

先に結論を述べますと、1年半かけて、300万円が302万円になりました。退場しないでくらいついています!!

コロナショックまで

2018年12月につみたてNISAを始めて、2019年8月から個別株取引を始めました。

2019年の年末までは調子がよく、100万円→110万円に増やすことに成功しました。

そのときのイキり記事はこちらです。

highso.hatenablog.com

その後、2020年2~3月にかけてのコロナショックで株価が暴落。

僕の資産もアホほど減りました。

それでも何とか、損切りを断行して、退場せずに食らいついていました。

2020年3月末の時点で、110万→95万になっていたようです。

そのときのイキり記事はこちらです。

highso.hatenablog.com

そのあとは株価が回復していったこともあって、2020年6月上旬時点では95万→107万まで回復していたようです。

highso.hatenablog.com

PSSショック

2020年6月下旬、まだイキる余裕があった僕は、100万を入金します。

この記事が終わりの始まりでした。

この記事の最後で「PSSを買います!!!勝負にでるぞ!!!」とかアホ言ってますね。

この後、僕は、PCR銘柄のPSSに50万ぶっぱし、大失敗しました。

 

2020年2~3月は、マスク関連銘柄がダダ上がりするマスク相場でした。

そのあとの4~6月は、PCR関連銘柄が上がる、コロナ相場の終盤でした。

僕はここで、PCR検査装置のド本命であるPSSを200株買ってしまいました。

f:id:highso:20210206140212p:image

こちら、PSSの週足をご覧ください。

僕は2700円程度で200株を購入しました。実に、見事なジャンピングキャッチ(JC)ですね。

 

当時の僕は、PSSが世界を救うと本気で思っていました。

結果的に、PSSはビジネス的には何の問題もないのですが、2800円は期待がかかりすぎていたようで、順当に下落していきました。

 

2020年4~6月は某有名株ツイッタラーがPSSを煽っており、まんまと載せられてしまった僕は大失敗をしました。

当時のTwitterは、多くのPSSホルダーで阿鼻叫喚の地獄絵図となっていました。

それ以降、僕は株ツイッタラーという人種を信じることをやめました。

現在の保有銘柄は?

PSSで40万ほど失ってしまった僕は、ほぼ退場していました。

最初に100万を110万に増やした過去の栄光に囚われて、-40万という現実に目を向けることができず、ほぼ投資をやめていました。

そのあと、今振り返ってみると、2020年下期は世界の株価が右肩上がりを続けていたので、普通に株をやっていれば儲かったのかもしれないですが、-40万という現実が辛すぎて、積極的になれない自分がいました。

 

それから時は流れて2021年2月現在、僕の保有銘柄はこんな感じです。

 f:id:highso:20210206140216p:image

PSS(プレシジョン・システム)の-30万が燦燦と輝いています!

他の塩漬け銘柄は、2020年6月に「世界の感染者数が減ってきた!旅行業界復活やー!」と叫ばれていたときにJC(ジャンピングキャッチ)したJALの-2.4万、

「これからは鬼滅の時代やー!」と叫ばれていたときにJCした、鬼滅フィギュア関連のエディアの-3万があります。

その他は少しずつアドを出してきていますが、やはりPSSの-30万がでかすぎて、評価損益はいつでもマイナス何十万です。

それでもなんとか、スタート地点に戻ってきた

最初は100万でスタートして、途中で200万を入金したので、元手は300万です。

こちらは僕の楽天証券口座の総合サマリーです。

f:id:highso:20210206140206p:image

トータルで406万円となっています。

「株式投信」の104万はつみたてNISAなので、それを差っ引くと、個別株用の資産は302万円です。

なんとか300万を302万にまで回復させることに成功しました!!!

スタート地点に戻ってきたぞー!!!うおおおーーーー!!!

 

2019年8月から、素人なりに試行錯誤して、42万ほど稼いで、PSSなどの大失敗(他にも多々ある)で40万失って、なんとかトントンまできました。

これが素人投資家のリアルです。

僕の投資資産の推移

楽天証券では資産の推移が見られないので、マネーフォワードで楽天証券口座の推移をグラフにしてみます。

f:id:highso:20210206145009p:plain

 

2018年12月につみたてNISAを始めて、月3万ずつ入金しながら、株取引用に100万を3回入金しています。

コロナショックとPSSショックで二度のダメージを受けて、それでも食らいついています。

結局、投資信託インデックス投資)が最強なんだよなぁ

 ところで、投資信託の成績はすこぶる良いです。

f:id:highso:20210206145205j:image

つみたてNISAで運用しているeMAXIS Slim 先進国株式は、コロナショック期をドルコスト平均法でうまく利用し、現在は運用2年2か月目にして+24.68%という好成績。

つみたてNISAは非課税なので、+20万円から税金20%を引かれることもありません。

今月から追加した深センイノベーション株式ファンドも、なんだか上がってくれそうな気がします。

(2月から投資信託を追加したときの話はこちら:投資ビギナーLv.2「16,667円積み立て」について解説! つみたてNISA/楽天証券/楽天カード - メタラーまとんがハイソにやらかすようです

 

素人投資家は、下手に個別株に手を出さずに、おとなしくインデックス投資をしておけ。と、2万年前から言われ続けていますが、

どうしてもやめられないんだよな・・・投機楽しいもん。

 

以上、メタラーまとんでした。

ではでは。

投資の現況記事

1. 株主優待目当ての投資を始めていくぞ!

2. 投資の近況報告!!積み立てNISA、ドル建て生命保険、国内株式

3. JTBC社員が投資に走るワケ

4.【国内株式】なんとかコロナを生き延びてます。3ヶ月を振り返る

5. 資産運用の現況!第二次コロナショックに備えてどうする!?

6. 父の日なので100万円を入金しました!ポートフォリオを見直して17年後の2000万円を目指す!

7.  素人投資家のリアルな現実をお伝えします。300万円が1年半で何円になった?

投資ビギナーLv.2「16,667円積み立て」について解説! つみたてNISA/楽天証券/楽天カード

ども!投資ブロガーのまとんです。

皆さん、毎月の積立投資、やっていますか?

現代で最も効率的な投資方法は「毎月定額のインデックス投資だと言われています。

今日は、投資ビギナーのLv.2である「16,667円積み立て」について解説していこうと思います!

インデックス投資ドルコスト平均法

インデックス投資とは、世の中の景気や経済など市場全体の動きを表す指標(インデックス)への投資する投資信託です。

例えば日本の経済の動きを表す日経平均や、アメリカのダウ平均などに追従する投資信託があります。

これらの投資信託を買えば、世界中の企業に広く分散して投資することができます。

 

投資信託と対になるのは、自分で考えて個別銘柄を買うやり方です。

自分で選ぶと、うまくいけば大当たりでしますが、大抵は失敗します。(99%は負けるといわれています)

素人が自分で考えるのではなく、プロの投資機関にお金を預けて、良い感じに運用してもらうのがインデックス投資です。

 

また、インデックス投資では毎月の定額積み立てが最適解と言われています。

例えば、毎月の1日に3万円分を買い増しするように設定して、あとはほっておくのが望ましいです。

世界経済は、長い目で見ると少しずつ上昇しているという前提がありますが、一時的には悪化することもあります。

毎月定額で買っておけば、一時的に悪化したときに多くを買うことができるため、長い目で見ると利益が伸びやすいといわれています。これをドルコスト平均法と言います。

 

例えば、2020年はコロナウイルスの影響で株価が大暴落しましたが、現在では元の水準に戻っています。

その間も僕は毎月3万円の積み立てを続けていたので、特に2020年3~6月ごろの大暴落期に買った分は、大きな利益を生んでくれました。

このように、世界のリスクを逆に利用できるのがドルコスト平均法のメリットです。

 

初心者投資家にとっては、インデックス投資ドルコスト平均法をやっていくのが、リスクが少なく、結果として手堅く資産を増やすことができるのでオススメです。

つみたてNISAの年40万枠=月33,333円

日本の財務省は2018年1月から、国民の余剰資金を株式市場に流入させて経済を活発化させるため、つみたてNISAという制度を始めました。

つみたてNISA枠で投資すれば、利益にかかる税金約20%がナシになります。めちゃくちゃ美味しいです。

とはいえ、投資初心者の国民が投資に手を出して、失敗して資産を減らすようなことがあってはなりません。

なので、つみたてNISAで買えるのは、財務省が選択した、リスクが少なく安定して資産の増加が見込める優良インデックス銘柄だけになっています。

 

つみたてNISAでは、年間40万円までを購入することができます。

毎月の定額つみたて設定をすると、毎月33,333円で、12か月で399,996円となり、40万枠をキッチリ使い切ることができます。

なので、「初心者が投資を始めるなら、まずはつみたてNISAで月33,333円」と言われており、実際につみたてNISAから投資の世界に足を踏み入れた人は多いと思います。

楽天カードを利用した現代のベストプラクティス

さらに2018年10月から、楽天証券では楽天カードでのつみたて投資が可能となりました。

楽天カードは1%のポイントがつくので、つみたてNISAを楽天カードで支払って、確実に+1%のアドを稼ぐことができます。

33,333円なら、毎月333円のポイントが付くことになりますね。

これを利用した「つみたてNISAで33,333円を楽天カード支払いで333円ポイント」は、現代のベストプラクティスと言われており、多くの投資Youtuberなどもオススメしています。

Lv.2:楽天カードの5万枠を使い切る16,667円積み立て

さて、以上で述べたように、つみたてNISAで33,333円を支払う「Lv.1投資家」は多くいます。

しかし、しばらく投資を続けていると、33,333円だけでは物足りないと思うようになってきます。

すると次にやるのは、NISA枠を超えて、個別銘柄に手を出したり、FXを始めたり、仮想通貨や、原油不動産などに進んでいきます。

これらはインデックス投資と比べるとハイリスクハイリターンなので、誰にでもオススメできるものではありません。(99%負けるので)

そこで、限りなくリスクが低いものは、やはりインデックス投資です。

20%の税金が引かれますが、NISAを使わずに普通にインデックス投資をやるのが無難です。

 

では、何円やるか?

そこで楽天カードの投資は、毎月5万円の上限があることに気が付きます。

すると、5万円をキッチリ使い切るため、33,333円に加えて16,667円を追加をすることで、楽天ポイントを最大の500ポイント得ることができます。

これが、投資ビギナーのLv.2「つみたてNISAだけでは物足りず、楽天カードの5万円枠を使い切るようにインデックス投資を16,667円追加」の秘密です。

僕と嫁で66,666円→100,000円に増額

というわけで、僕もLv.2に移行しました。

我が家では、僕の楽天カードの家族カードを使って、嫁もつみたてNISAをやっています。

我が家では楽天カードはつみたて投資専用にしているので、毎月の明細がシンプルで良いです。

これまで二人で66,666円投資でしたが、来月からは100,000円投資になります。

インデックス投資の銘柄チョイスは、少しハイリスクなものを選択しました。

無難に積み増ししたい人は、楽天全世界を増額しておけばよいと思います。

 

以上、メタラーまとんでした。

ではでは。

highso.hatenablog.com

highso.hatenablog.com

「レアカード売り時お知らせ君」をクラウドモダンアーキテクチャで作った!AWS Lambda, DynamoDB, EventBridge

ども!AWS認定ソリューションアーキテクトアソシエイトのまとんです。

「レアカード売り時お知らせ君」を半分くらい作りました!

TL; DR

  • 自分が持っているレアカードを登録しておくと、売り時を教えてくれるLINEボットを作る
  • サーバーサイドはサーバーレス構成(Lambda, DynamoDB, EventBridge, API Gateway)で実装した
  • フロントエンド(LINEボット回り)はまだ未完成

MTGプレイヤーの悩み

僕はMTG(Magic: The Gathering)というトレーディングカードゲームのゆるふわプレイヤーです。

新しいパックが発売されると、友達の家に集まってリミテッド戦(その場でパックを開けて出たカードでデッキを組んで遊ぶ)を楽しんでいます。

トレーディングカードゲームユーザーにとって、永遠の悩みがあります。それは、

f:id:highso:20210117005220j:image

レアカードがどんどん溜まっていくことです。

高額なカードは売ればよいのですが、わざわざ売るためにショップに行くのもめんどうだし、タンスの肥やしになりがちです。

しかし、カードの価格というのは水物でして、環境が変化すると、昔は見向きもされなかったカードにプレミアがついて高額になったりします。

とはいえ、タンスの肥やしになっていては、それに気が付かず、売り時を逃してしまいます。

誰かが「今が売り時だ!売れーー!!」と教えてくれたらいいのに!

これが永遠の課題です。

作りたいもの「レアカード売り時お知らせ君」

「今が売り時だ!売れーー!!」と教えてくれるロボットを作ります。

具体的には、以下のようなロボットを作ります。

  • 自分が持っているレアカードを、事前に登録しておく
  • 1日に1回、レアカードの価格をwebで調査
  • 価格が急激に上がったカードがあれば、LINEで「売れーー!!」と通知してくれる

MTGのカードの価格は、大昔から運営されているWisdom Guildさんのサイトから調べることにしました。

f:id:highso:20210123190520p:plain

出展:歩行バリスタ/Walking Ballista:シングル価格 - Wisdom Guild
Wisdom Guildさんの「トリム平均」の値を取得させていただくことにしました。

アーキテクチャ

f:id:highso:20210117010950p:plain

ロボットの維持費にお金がかかっては元も子も無いので、コストを下げるためにサーバーレスアーキテクチャ仮想マシンを常時稼働することをしない)で実装します。

フロントエンド

フロントエンドはLINE botとnotifyの仕組みで実装します。

友達とリミテッド戦をしたら、引いたレアカードをその日のうちに、LINE bot経由で登録します。

僕はずぼらな性格をしているので、「いつか暇なときに登録しよう」だと絶対に登録を忘れするなと思いました。

なので、帰りの電車の中でスマホでポチポチやって登録できるようにします。

LINE bot回りは、以前に実装したことがあるので、やればできると思います。

LINE Botに生命保険の解約返戻金を教えてもらえるようにした!Messaging API, Amazon API Gateway, Lambda - メタラーまとんがハイソにやらかすようです

サーバーサイド

データはNoSQLのDynamoDBを使います。

使った分だけ課金されるオンデマンド型で利用できるため、データ量が極めて小さい今回のユースケースには適任と考えました。

DynamoDBとのやり取りや、Wisdom Guildのサイトから価格をスクレイピングする機能は、サーバーレスでPythonコードを実行できるLambdaで実現します。

EventBridgeでLambdaを定期的に実行することで、一通りの機能は実現できます。

「売り時」の基準は難しいですが、さしあたりは「1か月前より50%高騰したとき」のような簡単なルールにしようと思います。異常検知などの機械学習アルゴリズムを組み入れることができれば、よりナウいのですが。

f:id:highso:20210117011005p:plain

今回はサーバーサイドの実装をしました。

フロントエンドは、以前にやったことがあるので、やればできるだろうと思って、後回しです。

習得したいスキル

エンジニアとしてスキルアップという観点では、今回習得したいスキルは三つです。

  • NoSQLデータベースのDynamoDBを使ってみたい。
  • Pythonウェブスクレイピングをやってみたい。
  • Lambda関数をGitHubで公開するのに慣れたい。GitHubで公開する習慣を身に着けたい。

実装

カードのリストを保持するDynamoDBテーブルを作成

自分が持っているレアカードを登録しておくテーブルを用意します。

公式サイトのチュートリアルが十分わかりやすいです。

NoSQL テーブルを作成してクエリを実行する方法 – AWS

以下のような設定でテーブルを作りました。

キャパシティーモードは、従量課金制のオンデマンドと、固定費がかかるプロビジョニングがあります。

今回のような小規模アプリケーションにおいては、書き込み/読み出しの回数に応じてコストを計算しやすいオンデマンドが適していると考えました。

書き込みと読み込み、それぞれ100万回あたり1.25USDと0.25USDです。(正確には回数ではなく書き込み/読み込みユニット数に依存)

今回のケースでは、せいぜい月に1000回程度なので、月に0.15円程度でしょうか。

データストレージは25GBまで無期限無料なので、保存にかかる料金は無しです。

 

DynamoDBはKey-Value型のNoSQLのため、後からなんでも項目を追加できるのですが、大事なのはパーティションキーとソートキーの設計です。

パーティションキーとソートキーでレコード(DynamoDBでは項目という)を指定するため、DBのパフォーマンスを左右します。

今回はカード名のCardと、保有している人名のOwnerにしました。

Ownerは、将来的にこのシステムをMTG仲間数人で共有するとき、誰が持っているカードかを設定できるようにするために用意しました。

(ただ、この組み合わせだと、同じカードを複数名が保有しているケースに対応できません。どうしたらよいのだろうか・・・)

完成したテーブルに、項目を追加するとこんな感じで表示されます。

f:id:highso:20210117011958p:plain

PicesやURLの列については、次のLambda関数で項目を新規追加する際に生成しています。

新しいカードをDynamoDBに追加するLambda関数を作成

作成したDynamoDBに、項目を追加するLambda関数「SellTimeRemainder_InsertItem」を用意します。

Lambda関数の設定は以下のようにします。

  • 一から作成
  • 関数名:SellTimeRemainderGetItems
  • ランタイム:Python3.8
  • AWSポリシーテンプレートから新しいロールを作成
  • ロールを新規作成:SellTimeRemainder_GetItems_Role
  • ポリシーテンプレート:シンプルなマイクロサービスのアクセス権限 DynamoDB

こうすると、DynamoDBにアクセスできる権限を持ったLambda関数が作成されます。

しかし、このLambda関数は、本アカウントのあらゆるDynamoDBテーブルにアクセスできるようになっていました。

DynamoDBは今後ほかの案件にも使うかもしれないので、全てのテーブルにアクセスできてしまうのはセキュリティ上望ましくありません。

そこで、今回作った「SellTimeRemainder」テーブルだけにアクセスできるようにします。

IAMで「SellTimeRemainder_GetItems_Role」を選択し、ポリシーをJSONで表示します。

"Resource"の最後が「table/*」になっており、全てのテーブルにアクセスできることになっていたので、「*」を「SellTimeRemainder」に変更すればOKです。

f:id:highso:20210117012046p:plain

Lambda関数の中身は、GitHubに公開しました。

github.com

READMEにも書いてありますが、以下のようなテストを設定して実行すると、テーブルに新規項目が追加されます。

{
  "card": "弧光のフェニックス",
  "owner": "まとん",
  "url": "http://wonder.wisdom-guild.net/price/Arclight+Phoenix/"
}

urlはWisdom Guildの「弧光のフェニックス」のシングル価格ページのURLです。

カードの価格を問い合わせてDynamoDBに更新するLambda関数を作成

次に、テーブルに保存したカードを全て読み出し、Wisdom GuildのURLにアクセスして本日の価格をスクレイピングで読み出し、テーブルの"Prices"マップに本日の日付をキーにして価格を格納するLambda関数「SellTimeRemainder_GetItems」を作ります。

ソースコードGitHubに公開しました。

github.com

ウェブスクレイピングのために、PythonのrequestsライブラリとBeautiful Soupライブラリを使います。

LambdaはPython標準でないライブラリを使うためには、ライブラリごとソースをzipに固めてアップロードしなければなりません。

具体的な手順はREADMEにも書いたのでご参考ください。

僕はWindows10を使っていて、WSL2(Ubuntu)環境でpipやらzipやらしました。

zipをアップロードした際のLambdaの画面はこんな感じです。

f:id:highso:20210117012031p:plain

次に、このLambda関数を1日1回、日本時間お昼12時に起動する設定をします。

LambdaのConfiguration→トリガーで、EventBridgeを選びます。(以前はCloudWatch Eventsでしたが、名前が変わったようです)

周期の設定は、細かい設定ができるcron文を使いました。

EventBridgeのタイムゾーンUTCのため、JSTUTCで9時間の時差があることを考慮して、

cron(0 14 * * ? 2021)

としました。cron文については以下のサイトを参考にしました。

AWS_Cron式のワイルドカード - Qiita

Lambda→概要画面で、以下のように可視化されていればOKです。

f:id:highso:20210117012059p:plain

1日に1回、カードの価格がDynamoDBに追加されることを確認

数日ほど待って、Pricesのマップに毎日1件ずつ価格が追加されていることが確認できました。

f:id:highso:20210123190704p:plain

ウェブスクレイピングについての注意

ウェブスクレイピングは、相手のサーバーに負荷をかけるため、実施する前に相手に許諾が必要です。

今回は、Wisdom Guildさんに連絡し、「基本的に問題はないが、サーバーに極力負荷がかからないよう配慮すること」というお返事をいただきました。

 

さて、次回はフロントエンド回りを実装します。

以上、メタラーまとんでした。

ではでは。

過去に作ったエンジニア作品

highso.hatenablog.com

highso.hatenablog.com

highso.hatenablog.com

highso.hatenablog.com

highso.hatenablog.com

highso.hatenablog.com

過去のMTG記事

highso.hatenablog.com

highso.hatenablog.com

Windows10HomeにWSL2(Ubuntu20.04)とVSCodeでPython開発環境を構築した

ども!まとんです。

先日、プライベートでPCを新調しました。

highso.hatenablog.com

仕事用ではないので、「ブログ執筆ができる程度のスペックがあればいいや」と思って、軽さと持ち運び性を重視してSurfaceGo2を買ったのですが、

やっぱりPythonの開発環境くらいは構築しておかないと日常生活に支障をきたすので、構築しました。

TL; DR

今回のポイントは以下です。

  • Windows 10 Home Editionである。(個人用SurfaceではProfessional Editionを変えない。ただ、結論からいって、Home Editionでも特に問題なかった。
  • WSL2 (Windows Subsystem for Linux)を導入する
  • VSCodeでWSL2にインストールされたPython環境(pipでライブラリ追加)で開発できるようにする

f:id:highso:20210110231819p:plain

過去に自分が書いた記事

highso.hatenablog.com

2019年3月当時は、WSL1で、Ubuntu18.04を入れていました。

highso.hatenablog.com

WSLにpyenvとpipenvを使ってPython仮想環境を切り分ける方法の記事を書いていました。

ただ、今回はそこまでやる元気がなかったので、pyenvとpipenvは導入していません。

今回使ったもの

手順

WSLをインストール

Microsoft Storeで「Windows Subsystem」と検索します。

様々なLinuxディストリビューションがでてきますが、今回はUbuntuの最新バージョンであるUbuntu 20.04 LTSをインストールしました。

f:id:highso:20210110221228p:plain

WSLの初期設定

Windowsメニューから、インストールされたUbuntuを開きます。

すると、ここでいきなりエラーを吐いて躓きました。

 Installing, this may take a few minutes...
WslRegisterDistribution failed with error: 0x8007019e
The Windows Subsystem for Linux optional component is not enabled. Please enable it and try again.
See https://aka.ms/wslinstall for details.
Press any key to continue...

 エラーコードの「error: 0x8007019e」でググると、以下のサイトがヒットしました。

Windows 10 WSL を有効にする方法 | SEECK.JP サポート

このサイトによると「コントロールパネル→プログラム→Windows の機能の有効化または無効化→Windows Subsystem for Linuxにチェックを入れる」とよいそうなのですが、Windows Subsystem for Linux」のチェック欄がありませんでした。

結局、以下のサイトを参考にしました。

WSL 2(Windows Subsystem for Linux 2)の違いとインストール方法 | パソコン工房 NEXMAG

「コントロールパネル→プログラム→Windows の機能の有効化または無効化」から、LinuxWindowsサブシステム」と「仮想マシン プラットフォーム」の二つにチェックを入れました。

再起動を促されるので再起動して、Ubuntuを立ち上げると、無事にWSLのUbuntuが立ち上がりました。

(もしかしたら、上記のチェックを入れなくとも、再起動するだけでよかったのかもしれません)

Ubuntuのdefault UNIX userを作成

Ubuntuを立ち上げると、最初にdefault UNIX userを作ることになります。

好きなユーザー名とパスワードを設定します。

この点、前回にUbuntu18.04を導入した際には、Windowのユーザー名とパスワードが自動的に引き継がれてしまって不便だったのですが、改善されたようです。

(前回、Windowsのユーザー名を本名にしていた僕は、ブログにスクショを載せる際に本名部分をいちいち消すのが面倒だったのでUbuntuのユーザー名を変更していた経緯があります。)

f:id:highso:20210110221211p:plain

今回はユーザー名「maton」で作成しました。

Ubuntuのアップデート

とりあえずアップデートしておきます。

$ sudo apt update

$ sudo apt upgrade

パスワードは先ほど作成したdefault UNIX userのパスワードです。

数分間かかります。

これでWSL1でのUbuntuのセットアップは完了です。

WSL2の設定、カーネルのアップデート

インストールしたUbuntuを、WSL1ではなく、WSL2で開く設定をします。

Windows Powershellを開き、以下実行すると、Ubuntu20.04のversionが1となっており、WSL1の設定になっていることが分かります。

PS> wsl -l -v

次に、Ubuntu20.04をWSL2で開くよう、以下のコマンドを実行します。

PS> wsl --set-version Ubuntu-20.04 2

(setの前のハイフンは2個です)

すると、カーネルコンポーネントの更新が必要です」と案内が出ました。

f:id:highso:20210110222540p:plain

案内にある「https://aka.ms/wsl2kernel」を開き、「x64 マシン用 WSL2 Linux カーネル更新プログラム パッケージ」をダウンロードしてダブルクリックで実行して、アップデートを行います。

再度以下を実行すると、変換処理が始まりました。

PS> wsl --set-version Ubuntu-20.04 2

変換には数分かかりました。

変換が終わったら、以下のコマンドでversionが2になったことを確認します。

PS> wsl -l -v

これで、UbuntuをWSL2で開く設定が完了しました。

UbuntuにはPython3.8が最初から入っていた

Ubuntuを開き、python3を実行すると、python3.8.5が最初から入っていました。

pythonを自分で導入する必要が無いようです。これはラクチンですね!

VSCodeのインストール

令和のプログラマーは、みんな口を揃えたように統合開発環境VSCodeが良い」と言いますね。

僕は流行りものが好きな性格なので、VSCodeをインストールしていきます。

公式サイトからWindowsのStableをダウンロードして、インストールします。

Visual Studio Code - Code Editing. Redefined

バージョンは1.52.1でした。

VSCodeのExtensionをインストール

VSCodeを開き、左バーのExtensionから、以下を検索してインストールします。

WSLをVSCodeから開く

VSCodeの左下の緑色ボタンを押して、「Remote-WSL: New Window」を選択します。

f:id:highso:20210110224056p:plain

すると、別ウィンドウのVSCodeが立ち上がります。左下に「WSL: Ubuntu-20.04」と表示されていればOKです。

WSLのPythonHello world

WSLのVSCodeで、左バーのExplorerから、Open Folderで「/user/<Ubuntuのユーザー名>」を開きます。

てきとうにPython/test」ディレクトリを作り、「test,py」を作ります。

以下だけ入力して上書き保存しておきます。

print('Hello world')

なお、先ほどインストールしたPythonのExtensionは、WSLのVSCodeには引き継がれないようなので、インストールし直しました。

test.pyを実行するために、上バーから「Terminal→New Terminal」を選びます。

右下に表示されたターミナルで、以下を入力。

$ cd Python

$ cd test

$ python3 test.py

Hello world」と表示されれば成功です!

f:id:highso:20210110224720p:plain

pipのインストールと、ライブラリの追加

WSLのUbuntuにはPython3.8が最初から入っていて親切だなぁと思っていましたが、pipは入っていませんでした。

VSCodeの右下のターミナルを使って、pipをインストールします。

$ sudo apt install python3-pip

てきとうにライブラリをインストールします。わりと必要なものは一通り入っているようなので、今回はline-bot-sdkを入れてみます。

$ pip3 line-bot-sdk

VSCodeのtest.pyを以下のように変更して実行してみます。

from linebot import (
LineBotApi, WebhookHandler
)
print('Hello world')

エラーが出なければ、VSCode経由で、pipでline-bot-sdkを新しくインストールしたWSL2(Ubuntu)で、開発できる環境が整った」ことになります!

感想

少しひっかかったのは、

(1)WSLを実行するためにコントロールパネルで2か所にチェックを入れて再起動する必要があるところ

(2)WSL2に変換するためにカーネルのアップデートが必要なところ(ダウンロードしてインストールするだけ)

です。

それ以外は、全体的にUbuntu20.04が優秀だったので(特に最初からPythonが入っているところ)、すんなりいけました。

 

是非参考にしてください!

以上、メタラーまとんでした。

ではでは。

過去に作ったエンジニア作品

highso.hatenablog.com

highso.hatenablog.com

highso.hatenablog.com

highso.hatenablog.com

highso.hatenablog.com

2歳の長女がパズルにハマった話

ども!育児ブロガーのまとんです。

最近、2歳の長女がパズルにハマっています。

f:id:highso:20210107212249j:image

こんな感じで、幼児用のパズルを楽しんでいます。

うちの長女は、ハマると異常なほどハマってしまうので、朝起きた直後から「アパのパズルする?」とパズルをやり始めています。※アパ:アンパンマン

パズルは思考力とか記憶力とか、色々と良い効果がありそうなので、知育によさそうですよね!

きっかけは、小池さんの「こども商品券」

昨年、小池百合子都知事のコロナ対策で、妊婦を対象にタクシーチケットとして1万円分のこども商品券をもらました。(次女がお腹にいました)

結局うちはタクシーをほとんど使わなかった(こども商品券を使えるタクシー会社が近くになかった)ので、1万円分のこども商品券が余っていました。

こども商品券はトイザらスで使えるということで、1万円分のおもちゃを買うことにしました。

トイザらスで何を買うか

1万円分のオモチャを買えるわけですが、まだ2歳なので、ボールなどのスポーツ用品は早いし、ゲーム系のオモチャも早いし、人形は長女があまり好きではないので、意外と買えるものがありませんでした。

まずは、長女がハマっていたトミカを買いました。

takaratomymall.jp

トイザらストミカコーナーは充実していて、面白いレアトミカをたくさん買えました。

しかし、トミカだけで1万円分も使うのは難しく、まだ商品券が余っていました。

 

で、次に選んだのがパズルです。

トイザらスはパズルコーナーも充実していました。

初めてのパズルだったので、まずはこれくらいかな?と思って、一番簡単そうな6ピースのを選びました。

ただ、せっかくなのでもう少し難しいのも買っておくか、と思い、30ピースのも買っておきました。

アンパンマン 天才脳はじめてのパズル 30ピース 楽しい広場

アンパンマン 天才脳はじめてのパズル 30ピース 楽しい広場

  • 発売日: 2014/11/08
  • メディア: おもちゃ&ホビー
 

一瞬で30ピースをクリア

家に帰ってやってみると、6ピースはなんと瞬殺。

30ピースも、1日も遊んでいるうちにできるようになってきました。

面白くなって、メルカリでパズルを大量に購入。

パズル10種類くらいをローテーションして遊んでいると、パズル歴1か月ほどにして、65ピースのパズルもすらすらできるようになってきました。 

アンパンマン パズル 65ピース

アンパンマン パズル 65ピース

  • メディア: おもちゃ&ホビー
 

幼児は記憶力がハンパない

パズルができるのがすごいなと思うのですが、根本的に、パズルの解き方がすごいなと思います。

幼児は記憶力がハンパないので、絵の完成系を暗記しているわけです。

なので、ピースを持った瞬間にカレーパンマンはここ!」と、まっさらな土台にバシッと差し込めてしまいます。

計算量で言うとO(1)です。ソートを必要としない。最強のアルゴリズムこんなんズルいわ。

僕のように、30歳で脳細胞の成長が終わった人には不可能な解法です。

幼児は、脳が成長中なので、いくらでもインプットできてしまうのですね。うらやましすぎるぞ・・・。

パズルは新品の方がよいかもしれない

我が家はケチなので、絵本はメルカリで中古仕入れるのですが、パズルはなるべく新品を買った方がいいかもしれません。

幼児向けパズルには土台があり、ピースを正しい場所に置くとパリッと固定されるようになっているのですが、中古だと固定が甘くてズレやすいです。

新品だと、65ピースまでは600円程度、80ピース以上は1000円程度です。

ちょっと高いですが、明らかに知育に良いグッズなので、しぶしぶ新品で買っていこうと思います。

 

以上、メタラーまとんでした。

ではでは。

「amazonの絶対思考」を読んだ!100万人超の企業でも企業統治が効いている理由が感じ取れた

ども!JTBCブロガーのまとんです。

アマゾンジャパンの創成期から成長期を経営層として10年務めた星健一さんの書籍「amazonの絶対思考」を読みました。

amazonの絶対思考

amazonの絶対思考

  • 作者:星 健一
  • 発売日: 2019/11/02
  • メディア: 単行本(ソフトカバー)
 

amazonは2020年9月に従業員数が100万人を突破したというニュースが記憶に新しいです。

jbpress.ismedia.jp

100万人という数字は驚愕です。

例えばトヨタでも連結従業員数は約36万人です。

JTBCでは太刀打ちできない規模になっています。

こんな巨大な企業を、どうやって統治しているのか。この本から、その片鱗を感じ取ることができました。

組織として「コア」となる規範があって、変わらない。

amazonには社員に求める14項目の行動規範「リーダーシッププリンシプル」があります。

社員は業務のあらゆる場面でこの14項目に立ち返り、意思決定するのだそうです。

この規範は2001年に原型ができ、2011年に今の形になって変わらない。

リーダーシッププリンシプルは世界中のamazonで共通なので、グローバルな会話でも共通言語として使える。

人材採用においても、リーダーシッププリンシプルを満たす人材であるかどうかが採用基準となる。

なので、100万人を採用しても、全社員がこの原則を意識し、体現する。

全社員のベクトルが、第一の行動規範「Customer Obsession(顧客中心の判断基準は妥協するな、顧客第一主義)」をもとに、同じ方向を向いている。これにより、企業統治が働く。

JTBCはカルチャーのガラパゴス化を許容してしまう

この行動規範がamazonの強みだなと思いました。

JTBCで考えると、どの会社も「社訓」とか「ビジョン」「DNA」などの標語で組織を表現しますが、それを実業務で意識したりする場面は稀です。

もっと言えば、隣の部署でも「うちの部署の文化はこうだから!」など言って独自性を認めたり、「うちの事業所は成り立ちが違うから!」などと言って、ガラパゴス化を許容してしまう。

さらに、その組織の上層部が、そのガラパゴス化を受け入れるというか、むしろ誇らしげに語ってしまうフシがある。

それゆえに、スケールメリットが効かない。従業員が多くても、活動範囲が広くても、まとまらない。企業の統治が効かない。ましてや、プラットフォームなんて作れない。

 

amazonでは、そのような独自カルチャーは許されず、全社員が14個の行動規範を意識する。

社員のほとんどが中途採用で、行動規範をもとに採用した人材が集まっているから、このカルチャーが成立する。

amazonの強みは色々あると思いますが、僕が一番強いなと思ったのは、カルチャーによる企業統治およびそれが機能している点にあると思いました。

トップを信用できるという強み

また、リーダーシップをとる創業者のジェフ・ベゾスがまだ現役というのも強いと思った。

JTBCにいると、トップや経営層は数年単位でコロコロ変わり、どんな成果を上げた人かもよくわからないし、正しいメッセージを発しているのか疑問を感じてしまう。

平たく言えば、上の言葉を信用できない。盲信させてくれない。

気が付けば、「上は何も分かっていない。俺の提案の方がいい、俺の方針の方が優れている」という優秀な若手が現れる。

それは良い。しかし、結局トップは変わらないし、自分の半径10メートルを変えても、ガラパゴス化が進むだけである。

 

「盲信したい」という気持ちには、もちろん悪い側面もある。

しかし、大学の研究室では絶対的な教授のことを「盲信」できていた。教授が発する言葉は、どれをとっても自分の発想を凌駕していて、正しいと思えた。信じさせてくれた。

今振り返ると、「盲信できる」環境は幸せであったと思う。

JTBCに入社してからの僕の主要な不満の一つは、「盲信したいと思える上司がいないこと」だ。

グローバルIT企業は、トップのリーダーシップが効いている。

カニズム化する

この本にはジェフ・ベゾスの言葉が色々掲載されていますが、僕が一番好きなのはこれです。

"Good intention doesn't work, only mechanism works."

「頑張るだけじゃだめ、メカニズムだけがうまく事を動かす」

JTBCに共通する課題の一つは、属人化だと思います。

様々な業務が属人化しているのに、それをメカニズム化したり、自動化する投資を重要視しない。

その結果、だれかが長期休暇で抜けたり転職すると、無人化システム(担当者がいなくなってしまったシステム)などの問題が発生する。

「無人化システム」を駆逐する組織マネジメントとエンジニアリング

 

amazonは、業務を少しずつ自動化し、効率化することで、事業拡大してきた。

例えば商品の価格設定を、他社Eコマースと比較して、最低価格に設定することを自動化している。

商品の売れ行きを予測して、自動的に発注して在庫を切らさないようにしている。

このような自動化システムを少しずつ構築してきたことで、効率化を進め、2億点の商品を扱えるシステムを維持できている。

イノベーションは効率化の積み重ね

何より面白いなと思ったのが、これら自動化のシステムなどをイノベーションと呼んでいることだ。

僕はJTBCのエンジニアをやっているが、社内でイノベーションというと「誰も思い付かなかった全く新しいアイデア」のように捉えられがちである。

それもイノベーションの一側面ではあるが、amazonの業務自動化のように、一つ一つを効率化していく施策もイノベーションだ。

このような効率化の積み重ねが企業の成長につながっていて、気が付けば他社が辿り着けない至高の領域に達している。

イノベーションは、必ずしも世界No.1である必要はないのだ。

感想

企業カルチャーというものの重要性を感じた。

JTBCのカルチャーは、メッセージ性が弱く、カルチャーのガラパゴス化を許容している。結果として、非効率なシステムなどの結果につながる。

ただ、企業のカルチャーはボトムアップで変えられるものではないし、一朝一夕でできるはずもない。

僕は、どうしたらいいんだ。

 

以上、メタラーまとんでした。

ではでは。

2020年の振り返り。家族は俺の年収律速になってきた。

ども!まとんです。

今年は会社で大嫌いな納会が無かったし、クリスマスっぽいイベントも特になかったので、年末感があまり無いのですが、2020年の振り返り記事を書きます。

家族がうまくいっている。ダメなのは俺だけ。

今年は夏に次女が産まれて4人家族となりました。

我が家は育児を最優先事項として運用しています。

次女が産まれた後も、長女には引き続き英才教育を継続できています。

絵本教育、知育教室、ベビースイミング、テレビを見せない生活、褒める育児、怒らない育児。すべて継続できています。

その分、部屋の片づけなどの育児に直結しない部分はおろそかになっていますが、最優先事項は育児なので、問題ありません。

育児のストレス発散として、我が家は土日の交代制育児を採用しています。

主に、土曜日は僕がフリータイムで、日曜日は嫁がフリータイムです。

日曜は僕が担当なので、長女と次女を公園に連れていくパパムーブにも慣れてきました。長女は滑り台と砂場が大好きです。

子供の教育資産形成についても、予定通り継続中。一人当たり2000万円の資産形成を目指して、積み立てNISA、ドル建て生命保険、国内株式、米国株の運用を続けています。

 

これらの甲斐があってか、長女はめちゃくちゃ賢い子に育っている気がします。

2歳の月齢にして、普通に大人と会話で意思疎通ができるし、公園でお友達に「こんにちわ!」できるし、体幹のバランス感覚も良いし、一人で絵本を読んで遊ぶこともできるし、50ピースのパズルもできるし、なにより性格がとても穏やかで良い子。

現在イヤイヤ期ですが(なんでもイヤ!と言う)、暴れたりモノを投げたりしないので、とても育てやすいです。

毎日10冊の絵本を読んで地頭を育てる絵本教育の効果が出ているのだと思います。

あと、なにより、めちゃくちゃ可愛い。天使か?

自分の子供は可愛く見えるものですが、普通に顔面偏差値80くらいある気がする・・・。

器量良しで、賢い。我が家の宝です。

 

となると、我が家でパッとしないのは、僕の年収です。

僕の年収は普通の日本企業相当です。

せっかく長女が賢いのに、「どこでも好きな私立の学校に行ってくれ!」と言えない。

長女の能力を伸ばしたいのに、金銭面で全力で支援することができない。

今、我が家は僕の年収律速になっています。

 

次女にも長女と同じように絵本教育をするつもりなので、おそらく、次女も長女と同じく優秀になってくれるでしょう。

となるとますます、僕の年収に律速されて、子供たちの能力を開花させることができない。

男として情けないです。

約2年前にGoogleに落ちて以来、今年はコロナを言い訳になんやかんや転職活動をできていなかったのですが、来年こそは年収ジャンプを狙って転職活動を再開しようと思います。

明日から本気出す。

 

週1でブログを書き続けたコロナ禍

さて、コロナ禍では家にいる時間が長くなったこともあり、週1回、土日にブログ更新する習慣を続けました。

夏頃までは「week〇」と連番を振っていましたが、連番は秋ごろに辞めました。

当時の僕は、長女が可愛くてかわいくて仕方なくて、ブログに写真を載せまくっていましたね・・・。

しかし、このブログは「メタラーまとん」つまり僕のブログなので、読者の皆様は僕を見に来てくれているのだと思っています。

なので、なるべく「子供可愛いブログ」にはならないように、「JTBCの育児エンジニアパパのブログ」になるように心がけていこうと思っています。

 

さて、では今年書いた記事を列挙していきます。

週1で書いていたので、記事数はけっこう溜まっていました。

1. エンジニア

今年のエンジニア活動について。

1-1. WSLでPython仮想環境

1-2. ノーコード(Amazon Honeycode)

1-3. 資格取得(CG-ARTS画像処理エンジニア検定ベーシック)

1-4. 無料版はてなブログスマホ版のCSS編集

2. 育児

今年は育児に比重が置かれました。

2-1. 次女が産まれた

今年のメインイベント。

2-1-1. コロナ禍での出産立ち合い

2-2. 長女の英才教育

英才教育の効果が出てきたので嬉しい。

2-2-1. 地頭を育てる絵本教育

2-2-2. メルカリ絵本

2-2-3. わらべきみか絵本

2-2-4. ベビースイミング

2-3. 俺の育児

僕のこだわり

2-3-1. TOLOTフォトブック

2-3-2. ソロパパ活

3. ファイナンシャルプランニング

ファイナンシャルプランナー2級として情報を発信してきました。

3-1. 投資で資産形成

子供一人当たり2000万ためるのが目標

3-1-1. 父の日に100万入金

3-1-2. 教育資金4000万を貯めるために

3-2. 株主優待ライフ

株主優待は楽しい

3-2-1. トミカ

3-2-2. サンリオピューロランド

3-3. 節約

資産形成の3本柱は「稼ぐ・節約・増やす」

3-3-1. 食費週7000円生活

3-3-2. 定食屋ヨメ

3-4. 生活の知恵

お得な制度は使っていきましょう

3-4-1. 育休カードで社会保険料控除

highso.hatenablog.com

3-4-2. キャッシュレス比較

3-4-3. マイナンバーカード

3-4-4. ふるさと納税とGOTOトラベル

3-4-5. ANAマイル

4. 趣味

育児中は趣味に時間を使いづらいですが、少しは趣味活動できました。

4-1. 読書

話題作と気になった本を読みました。

4-1-1. みずほ銀行システム統合

4-1-2. 感染症の近代史

4-1-3. PFN - Learn or Die

4-2. ハイソ趣味

GOTOトラベルのおかげでハイソホテルに泊まることができました。

4-2-1. シェラトン都ホテル - アフタヌーンティー

4-2-2. ザ・プリンスタワー東京

4-2-3. ホテルオークラ東京ベイ

4-2-4. GOTOクーポンで夫婦喧嘩

4-2-5. グリスプ

4-3. 水彩画

なんとか1枚描いた

4-3-1. iPhoneとクリスタでデジタルに初挑戦

4-4. 新しく始めた趣味

4-4-1. フルーツ切り

4-5. ゲーム

次女産まれてからはゲームできていない。。。

4-5-1. ドラクエ8

4-5-2. FF6

4-6. 映画

夏までは全く映画館に行けなかったです

4-6-1. TENET

4-6-2. 鬼滅の刃

まだブログを書いていないですが、劇場版を見てきました。

終盤20分は手に汗握って、手が離せませんでした。エンドロールで泣いたのは初めてです。

来年の抱負

今年はブログ記事は色々書きましたが、特に大きなイベントは次女が産まれたことくらいで、僕個人の大きな成長が無かったなと感じました。

子供が成長するのにつれて、パパも成長しないといけない。

来年は年収ジャンプを狙って転職する。これが来年の抱負です。

 

ということで、今年はこのあたりで筆を置こうと思います。

皆様、よいお年を!

メタラーまとんでした。

 

これまでの年末振り返り記事