資産運用計画 (2021年~)
概要
そろそろ資産運用を始めても問題なさそうなくらいの貯蓄ができたので始めようと思った. あまり明確な目的がない状態だけど普通に預金で置くよりかはいいと思ったので運用していく.
大事なこと
持ってる資産が大きくマイナスになっていても心を折らない!
心が折れて売るほうが圧倒的に損なので,むしろいつもより多くの口数を購入できると思って嬉しくなろう.
運用ポリシー
長期で運用するため基本的には売らない.
しばらくは つみたてNISA だけで運用する.
給料が増えたりしたら自社株を積み立てで購入する「るいとう」を始めようかなと.
月の積立額はつみたてNISA年間限度額の40万円を12で割った 33333円. これをいくつかの投資信託に分散で積み立てていく.
ポートフォリオは 100%株式 で 国内株式30% ,国際株式70% となるようにする.
国際株式のうち 40%を先進国 ,30%を新興国 とする.
ただ先進国の投信の投資先は大体米国株式で先進国だけでみると今後も米国1強時代は続きそうなので,それなら米国株だけの株価指数をベンチマークとしているインデックス投信を選ぶ.
購入する投資信託はインデックス投信から選択.アクティブは信託報酬が高いのと選択肢が様々で難しいので保留
同じ積立金額を維持していても割合に差が生まれ始めると思うので 半年に一度リバランスを行う .
リバランスの方法は現在の資産割合が半年後に国内30%,米国40%,新興国30%になるように積立金額を調整を行う.
例えば現在の資産が以下のようになっているとする.
カテゴリ | 金額 | 割合 |
---|---|---|
国内 | 60万円 | 30% |
米国 | 90万円 | 45% |
新興国 | 50万円 | 25% |
この場合米国が少し好調で伸びているが新興国が不調でマイナスになってしまっているので,新興国の積立金額を増やして6回の積立で限りなく元に戻すように調整する.
半年で変化が無ければ(そんなことはあり得ないけど)合計で約20万円の積み立てが行われるので220万円を本来の割合で考えて以下のようになるように調整したいので
カテゴリ | 半年後の予定金額 | 割合 |
---|---|---|
国内 | 66万円 | 30% |
米国 | 88万円 | 40% |
新興国 | 66万円 | 30% |
積立金額は国内 10000円,米国 0円,新興国 23333円となる.
運用する商品
インデックス投信はどれを選んでもベンチマークが同じなら同じ値動きをするので信託報酬が最も安いものを選ぶべき.
eMAXIS Slimシリーズが業界最低水準のコストを維持すると宣言して販売されているので,このシリーズから選ぶ.
国内株式 30%
「三菱UFJ国際 - eMAXIS Slim 国内株式(TOPIX)」に10000円
日本の株式の代表的な株価指数は日経平均株価とTOPIXがあるが,日経平均は対象銘柄が225銘柄でごく僅かな銘柄の値動きに影響されるとのことなので,東証一部上場全銘柄を対象としているTOPIXをベンチマークとしている投資信託を選択.
先進国株式(米国) 40%
「三菱UFJ国際 - eMAXIS Slim 米国株式(S&P500)」に13333円
米国の株式の有名な株価指数S&P500.ダウ平均という指数もあるがこちらは対象銘柄が30なので国内株式同様より幅広い対象となる方を選択.
新興国株式 30%
「三菱UFJ国際 - eMAXIS Slim 新興国株式インデックス」に10000円
ベンチマークはMSCIエマージング・マーケット・インデックス.
中国,台湾,韓国,インド,ブラジルで75%以上を占めているらしい.(以下引用)
最後に
この計画でまずは10年続ける.ライフイベントが発生して考える必要が出たら改めて考える.
おまけ
色々調べる前に試行錯誤でNISA枠で購入したやつ.5年後に売るか一般口座で保有し続けるかどうしようかなって思ってる.
上京半年で分かった色々
この記事は、 大阪工業大学 Advent Calendar 2019 の15日目の記事です。
誰?
2019年卒業の人
概要
家を借りるところから生活を行うまでに色々と必要なものが出てくる.
それらを考えるには実際に生活を行うか,実際に生活をしてる人から聞くしかない.
そういったものをまとめて,参考になるところは参考にしていただき無事上京してほしいと思いながら書く.
具体的には以下の流れで紹介していく.
- 家を借りるまでに考えること
- 生活を始めるまでに考えること
- 実際に生活を始めてから考えること
これらを私が実際に行ったことを元に書いていく.
鵜呑みにしないでください.
家を借りるまでに考えること
不動産屋に行くまで
家を借りるというのはとても深く考えないといけないし,人によって必要と思う条件が違うので難しい.
私の考えていた絶対に外せない条件を以下に示す.
- 会社まで乗り換えなしで通勤可能
- 風呂トイレ別
- 築10年以内
- 2階以上
条件が決まれば次に住むエリアを決める.
住むエリアは会社まで乗り換えなしで通勤可能という条件を含めていたので決めやすかった.
エリアが決まればsuumoなどのサイトでどんな家があってどれくらいの相場なのか毎日調べる.
ちなみに家賃は就職先に提示されている初年度収入から逆算して考えるとよい.
私の場合は7.5万円くらいを想定していた.
不動産屋に行く
不動産屋はsuumoで希望のエリアの掲載が多かったところに事前に連絡を取っていた.
1月~3月は繁忙期なので事前連絡なしでは家を紹介してくれない可能性もあると思ったからである.
あと,suumoに載ってるめちゃくちゃいい物件は絶対に借りることができないと考えておいたほうがいい.
それは釣り物件である.
いい物件は実際に不動産屋に行かないと分からない.
予約していた不動産屋に入ると事前に希望条件を出していたのですぐに何軒か家を紹介された.
紹介された家の中で実際に見たい家を選び内見を行う.
内見時に考えるべきことは複数あって
- コンセントの数,位置は生活するうえで問題ないか
- 自炊するならキッチンの広さに問題はないか
- 風呂の換気は適切に行えそうか
- カーテンを取り付ける場所の幅と高さを記録しておく
とこんな感じだと思う.他にも絶対にこれだけは調べるというのを考えておくとよい.
カーテンの計測に関してはこのタイミングでしておくことで早く設置できるので良い.
私はカーテンを住み始めてから購入したためしばらく外から生活が丸見え状態であった.
色々な家を見て悩みたいところだろうが,悩んでる暇はない.少しでもいい家だと思ったら即契約したほうが良い. なぜならその家は遅くとも明日にはなくなるからだ.
契約
住みたい家が決まると契約が行われる.
とはいってもすぐに契約が出来るわけではなく,大体の家では審査が行われるはずだ.
審査用の書類を書いて不動産を出て審査通過を待つことになる. その日中に電話が来て審査通過を知らされた.
後日不動産屋を訪れて大量の書類にサインをして契約する.
家を借りるのに必要なお金は色々あって,
- 敷金, 礼金
- 仲介手数料
- 初月の家賃
- 他色々ある場合もある
私の場合家賃の5か月分近く払ったので通常より高いが,一般的には大体30万円近くかかると思っておくとよい.
生活を始めるまでに考えること
生活を始めるまでに家電や家具などを揃える必要がある.
私が最初の月に買ったものを以下に示す.
- 冷蔵庫
- 洗濯機
- 寝具
- PCデスク
- 照明器具
- カーテン
- 炊飯器
- 調理器具
- PC
他にも買ったかもしれないがこんな感じだと思う.
既に家を借りるので大量のお金を失っていると思うので,必要だと思うものは最小限としたほうが良い.
洗濯機はコインランドリーという選択肢もあるし,調理器具や炊飯器は一旦買わずにしばらくは外で済ませるという手もある.
上京資金として用意したお金と相談して考えるとよい.
ちなみに私は何もかも揃えようとしたのでここまでで100万円くらいお金が使われた.
このお金は大学の給付型奨学金やアルバイトで貯めたもので,まさかなくなるとは思っていなかったが…
このあと住民票を移したりガス,電気,水道,インターネット回線の契約をしたりする
実際に生活を始めてから考えること
入社式も終え社会人生活が始まる4月
初給料で色々買いたいものあると思うがちょっと待ってほしい.
先に毎月必ず失われるお金を計算しておかないと破産する.
私の例を以下に示す.
- 家賃: 8万円
- 電気ガス水道代: 1万円
- インターネット,携帯電話料金: 6000円
- 食費: 3万円
計13万円弱といったところである.
もちろん日用品などでも時々失われるので実際は15万円くらいなのかもしれない.
つまり給料-15万円が自由に使えるお金だと考えられる.
この自由に使えるお金から貯金をしたり好きなものを買ったりすることになるだろう.
私は毎月なぜか色々出費があるので平均18万円くらい使っているようだ.
おわり
ざっくりまとめると,
- 上京するまでに50万円くらい貯めておくといい
- 私は上京するのに100万円使いました
頑張ってください.
自作キーボードビルドログ(ErgoDash mini)
2018年は自作キーボードというものがブームとなったみたいです.
TwitterのTLにも自作キーボードについて流れることがあり,じわじわと作りたい気持ちが強くなっていきました.
購入したもの
キーボード材料
自作キーボードキット
自作キーボードは個人の方が様々な種類のものをキット販売しており,私もそれを購入しました.
購入したキットは @omkbd さんが販売しているErgoDash mini
(Corne Cherryも気になったのですが在庫切れだったため断念…)
キースイッチ
キットにはキースイッチとキーキャップは付いていないので別で購入する必要があります.
キースイッチはCherry MX互換性のあるものであれば何でもいいらしいです.
ただ残念なことにメカニカル式のキーボードを触ったことがなかったので,何軸が自分にあってるのかわからず…
とりあえず最初なので無難だと言われているGateron Silentの茶軸を購入しました.
購入するのに使った通販はAliExpressという中国の通販で,種類が多くてなおかつ安い! 海外の通販なので到着が遅いのが難点.
キーキャップ
キーキャップにもいろいろ種類があるみたいなのですが,よく分からなかったので適当に購入しました.
ここでもAliExpressを利用しました.
TRRSケーブル
分割されているキーボードを接続するケーブル.オーディオ機器でも使われる4極のもの.
MicroUSBケーブル
何でも良さそう.家に余ってたけど購入しました.
道具類
必要なものは以下のサイトが役に立ちました.
キーボード自作、特に Helix キーボードキットの製作に最低必要な工具のメモ · GitHub
作業工程
ダイオード取り付け
一気に折っている画像をよく拝見するのですが,上手く出来なかったので諦めて1本ずつ丁寧に足を折っていきました.
その後丁寧にはんだ付けをした.
TRRSジャック,リセットスイッチ,Pro Micro用ピンヘッダ取り付け
Pro Micro用のピンヘッダのはんだが辛かった…
キースイッチ取り付け
アクリル板の上からスイッチを植えていきます.しっかりと埋め終えたらはんだ付けをします.
Pro Microの取り付け
Pro MicroのUSB端子はもげやすいみたいなので取り付け前にセメダインで頑丈にしておきます.
しっかりと固まったのを確認したら基板にはんだ付けをして取り付けます.
ファームウェアの書き込み
以下は私のkeymapです.
まるでCorne Cherryみたいな割当の少なさですが,指が楽に届かなかったところを排除したらこうなりました.
完成?
@omkbd 初めまして.ErgoDash miniの全てのはんだ付けを終わらせてProMicro2枚にFirmwareの書き込みをしたのですが,どちらも左キーボードのマッピングになってしまいます.またTRRSケーブルを接続してもUSBケーブルを接続している方しか反応がありません.原因の方わかりますでしょうか…?
— wheson (@wheson) 2019年1月10日
TRRSケーブルを接続してもUSBケーブルを接続していない方のキーボードが反応しない…
お返事ありがとうございます.ただいまTRRSケーブルを完全に奥まで挿さずに少しだけ緩めに挿してみると,両方のPro Microが点灯し左右のキーボードとして認識されました.全キーの動作確認も出来たので無事完成したみたいです.
— wheson (@wheson) 2019年1月10日
TRRSケーブルを少し緩めに挿すと左右のキーボードが反応して一応動作しました.(大丈夫なのだろうか…)
完成!
中学以来のはんだ付けだったり,不安要素が多かったのですが無事(?)完成してよかったです.
TRRSケーブルが市販品だとダサいのでケーブルも自作しようかなと思ったり.(自作する人も結構いるらしい)
次キーボードを自作するときはLEDも付けてみようと思います.
(この記事はErgoDash miniで書きました)
PHPにPHPを埋め込みさせる
この記事は,OIT Advent Calendar 2018の2日目の記事です。
また,本記事は雑に書いてます.自己責任で読んでください.
何をしたいか
下記のようなPHPファイルがあるとします.
<?php $hoge = "Hello World!";
それに"代入演算子がある次の行"になにか任意の処理を埋め込みたい.
<?php $hoge = "Hello World!"; # ここに下のコードを追加したい echo("ここに代入演算子があったぞおおおおお!!");
もちろん手で書き換えるのもいいが,3000近くのファイルに対し同様のことを行いたいと考えると厳しい.
解決策
PHP-Parserというライブラリを利用する.
(composerで導入するので,composerの知識はちょっと必要)
このライブラリはPHPのソースコードを構文木の状態にして解析しやすいようにするものである.(多分)
構文木の状態にせずに直接ソースコードの状態でやろうとすると色々とダメなパターンが出てきて無駄に苦労する.
<?php // composerで管理してるライブラリをrequire(各自ファイルパスが違う気がする) require_once 'vendor/autoload.php'; use PhpParser\ParserFactory; use PhpParser\Node; use PhpParser\NodeTraverser; use PhpParser\NodeVisitorAbstract; $code = <<<'CODE' <?php $hoge = "Hello World!"; CODE; // array_insert関数の中身は略してます. function array_insert(&$base_array, $insert_value, $position=null) {..} class MyNodeVisitor extends NodeVisitorAbstract { public function enterNode(Node $node) { for($i = 0 ; $i < count($node->stmts) ; $i++){ $value = $node->stmts[$i]; $valueType = $value->getType(); if($valueType == "Expr_Assign"){ // ここで自ら埋め込みたいソースコードの構文木を構築する $echoStr = new \PhpParser\Node\Scalar\String_("ここに代入演算子があったぞおおおおお!!") $echoArg = new \PhpParser\Node\Arg($echoStr); $echoArgs = array($echoArg); $echoName = new \PhpParser\Node\Name("echo"); $echoFunc = new \PhpParser\Node\Expr\FuncCall($echoName, $echoArgs); $i++; // array_insert関数は自作関数 array_insert($node->stmts, $echoFunc, $i); } } } } $parser = (new ParserFactory)->create(ParserFactory::PREFER_PHP5); $traverser = new NodeTraverser; $prettyPrinter = new PhpParser\PrettyPrinter\Standard; $traverser->addVisitor(new MyNodeVisitor); // parse $stmts = $parser->parse($code); // traverse $stmts = $traverser->traverse($stmts); // pretty print $code = $prettyPrinter->prettyPrintFile($stmts); echo($code);
array_insert関数は以下のサイトから持ってきた.
構文木構築パートは,事前に構築したいソースコードの構文木がどうなるか確認しておく必要がある.
構文木は$parser->parse($code)
した後の$stmts
変数をvar_dump()
あたりで出力すると確認できる.
その後は頑張って構文木パズルをするんだよ.
なんでこんなことをしてたか
埋め込みたい気分になった.(詳細は省く)
PHP-Parserの情報が少なくて結局ライブラリのコードを読んでこの方法に辿り着いた.
多分正しい使い方ではなさそうなので自己責任で.(これしたい人が存在するかわからないけど)
ICPC2018国内模擬予選参加記
今年もICPC国内予選の時期になりましたね.
昨年度は競プロを始めて間もなかったので,あまり大したことが出来なくて悔しかった思い出があります.
今年は1年間競プロをして力もある程度は付いた気がするので楽しめるかなと思ってます.
チームメンバー
チーム名は”Incoming Tomoya”です. 弊学の2軍チームでAtcoderではレートが全員緑色です.
wheson (@wheson)
僕です.B4で来年就職なので今回が最後のICPC出場になります. メンバーで唯一C++で競プロをやってます. そのためライブラリは必然的に僕のものを使う感じになりました.
たいちょー (@xztaityozx_001)
M1の先輩です.競プロを始めたのは僕と同じ時期で,ちょうどレベルも同じくらいなのかなぁと言う感じです.難読化シェル芸をしてるみたいで,怖い人ですが,怖くないです. 普段はC#で競プロをしてるらしいです.
いらいざ (@eliza0x)
後輩です.コンパイラを作ったり,CPUを作ったり,最近は機械学習をしてたりと,幅広く何かやってます.構文解析を得意とするらしいので,構文解析の問題は彼に投げます. 普段はHaskellで競プロをしてるみたいです.
模擬予選の内容
開始前
ライブラリの印刷をして,適当にダラダラしてました. 会場はたいちょーの研究室を使うことになっていたので,準備は彼に全て任せてしまってました.
開始
A・B・Cと流し見して,AはやるだけだったのでPCを受け取り実装しました.
15min
AをACする. Bをたいちょー,Cをいらいざ君がやることになったみたいで,先にいらいざ君がPCを受け取る. とりあえず僕はDを読み始める.
60min
Cを実装していたいらいざ君からC++わからんと言われ,コードを見ると,Lambda式で闇のようなことをしていてこれは読めないと思ったので,悲しい顔をした.
Dをたいちょーと考察して桁ごとに個数を決められそうだなーと思って数式に起こすが,誤差が出てダメだった.
諦めてEを読み始める. たいちょーにEの概要を伝えると,二部グラフっぽいと言われて,確かに二部グラフですねと返した.二部グラフのライブラリは印刷しておいたので,とりあえず実装を固めるために紙コーディングを始める.
90min
結構長いこといらいざ君がPCを専有していたので,そろそろ交代しようということで,たいちょーに交代した.
120min
たいちょーもバグらせる. Eがやるだけなので実装したいと伝えると,交代してもらえたのでライブラリの写経を始める.
130min
Eのサンプルが合わない. 後ろでBとCの考察の確認をしていたみたいで,交代して先にCをいらいざ君が修正を始める.
150min
いらいざ君がCをACする.
とりあえずホッとした.
170min
たいちょーがBをACする.
ちょうどその時に,二部グラフの写経ミスに気付いたので,急いで修正を始める.
178min
僕が実装に焦って,横でたいちょーが過呼吸のマネ(田中ヒメのマネ)を始めて,いらいざ君が落ち着いて落ち着いてと言う地獄みたいな状態になってた.
Eのサンプルが通ったので,提出するとACする.
終了後
ABCEの4完55位(ゲスト除く)だった.
ランキングを見ると,学内1位だったのでテンションがとても跳ね上がった.
その後,国内予選突破圏内を意味するselectedになっているのを見てテンションがおかしくなりそうになった.
本番も同じ調子で行くぞー
neovimでLSP(LanguageServerProtocol)を使ってみる
今までずっとALEっていう非同期コードチェックプラグインを使ってましたが,少し挙動が遅いと思ってました.
先日この記事を見て,
LSPを使うと早くなるっぽい??って思って導入してみました.
結果として,コードチェックは爆速になりました.
LSPとは
この記事に詳細があります.
language server protocolについて (前編)
要約するとLSPを使うことで,
- 自動補完
- ヒント(ホバー)の表示
- シンボルの定義の位置を取得
- コードの整形
- エラー分析,修正案の提示
等が利用できるようになります.
neovimでLSPを導入する
LanguageClient-neovimを使います.
上記プラグインを入れる前はvim-lspを入れたのですが,コードチェックの挙動がおかしかったのでやめました.
プラグイン構成
- LanguageClient-neovim
- deoplete
- neosnippet
dein.toml
[[plugins]] repo = 'autozimu/LanguageClient-neovim' rev = 'next' build = 'bash install.sh' hook_add = ''' source ~/.config/nvim/plugins/LanguageClient-neovim.rc.vim '''
dein_lazy.toml
[[plugins]] repo = 'Shougo/context_filetype.vim' [[plugins]] repo = 'Shougo/neosnippet.vim' on_event = 'InsertCharPre' on_ft = 'snippet' depends = 'context_filetype.vim' hook_source = ''' source ~/.config/nvim/plugins/neosnippet.rc.vim ''' [[plugins]] repo = 'Shougo/deoplete.nvim' depends = 'context_filetype.vim' on_event = 'InsertEnter' hook_source = ''' source ~/.config/nvim/plugins/deoplete.rc.vim '''
~/.config/nvim/plugins/LanguageClient-neovim.rc.vim
set hidden let g:LanguageClient_serverCommands = {} " 言語ごとに設定する if executable('clangd') let g:LanguageClient_serverCommands = { \ 'cpp': ['clangd'] \ } endif augroup LanguageClient_config autocmd! autocmd User LanguageClientStarted setlocal signcolumn=yes autocmd User LanguageClientStopped setlocal signcolumn=auto augroup END let g:LanguageClient_autoStart = 1 nnoremap <Leader>lh :call LanguageClient_textDocument_hover()<CR> nnoremap <Leader>ld :call LanguageClient_textDocument_definition()<CR> nnoremap <Leader>lr :call LanguageClient_textDocument_rename()<CR> nnoremap <Leader>lf :call LanguageClient_textDocument_formatting()<CR>
~/.config/nvim/plugins/neosnippet.rc.vim
let g:neosnippet#snippets_directory = '~/.config/nvim/snippets' imap <C-k> <Plug>(neosnippet_expand_or_jump) smap <C-k> <Plug>(neosnippet_expand_or_jump) xmap <C-k> <Plug>(neosnippet_expand_target) if has('conceal') set conceallevel=2 concealcursor=niv endif
~/.config/nvim/plugins/deoplete.rc.vim
" deoplete options let g:deoplete#enable_at_startup = 1 let g:deoplete#auto_complete_delay = 0 let g:deoplete#auto_complete_start_length = 1 let g:deoplete#enable_camel_case = 0 let g:deoplete#enable_ignore_case = 0 let g:deoplete#enable_refresh_always = 0 let g:deoplete#enable_smart_case = 1 let g:deoplete#file#enable_buffer_path = 1 let g:deoplete#max_list = 10000
言語ごとのLanguageServerを導入する
上記サイトから自身が使う言語のLanguageServerを導入してPATHを通してください.
一例としてclangdをmacで導入する流れを紹介します.
clangdを導入
- Homebrewでllvmをインストールする
$ brew install llvm
- PATHを通す
brew install llvm
で出力された最後の方に現在のshellでの通し方が書いてあるのでそれを見てください.
$ clangd --version
でPATHが通ってることを確認する.
使用感
コードチェックが爆速すぎて気持ちがいい.
今まで:%s/hoge/huga/g
で置換をしてたけど,それが変数であれ,コメントであれ全てのhogeが置き換わって不便だった.
LSPの機能のRenameを使うと変数のhogeだけを置き換えるということが出来るので凄くいい.
気になったこと
- LanguageServerから取得される補完リストを出力するのが少し遅い
nvim newfile.*
で新たにファイルを作成しつつneovimを起動すると,LanguageServer-neovimが起動しない.手動で:LanguageClientStart
とすると起動する.
参考サイト
僕の競プロ環境(2018/4現在)
競プロ初めて1年が経ちました.
まだ全然実力が付いてないのですが,RUPC以降精進しまくってるので伸びると信じてます.
ちょうどMacBookAirを買って1年にもなり,競プロ環境が整ってきた気もするので,現在の競プロの環境を紹介します.
環境
現在競プロをする時に使っているのは以下のものです.
- iTerm2
- Neovim
iTerm2
これはターミナルです.⌘D
で左右に画面を分割できるので良いですね.
shellはfishです.
これは最初からコマンド補完機能やら付いていて,文字入力をサボることが出来るのでいいです.
fishのプラグインで入れているものは以下のものです.
- z (雑にディレクトリ移動ができる)
- agnoster (おしゃれなテーマ ※要powerline font)
Neovim
エディタとしてNeovimというものを利用してます. iTerm2上で起動します.
理由は特にないです.
色々と便利にしていったのでこれ以外で競プロ出来ないくらいになってしまいました.
プラグインとして色々入れてますが,ここでは競プロ時に利用しているものだけを紹介します
- deoplete
- neosnippet
- ale
deoplete
補完してくれるやつです.次に紹介するneosnippetと連携してます.
neosnippet
スニペット機能を利用できます.
独自にスニペットを登録することができ,僕はテンプレートとライブラリを登録して,使う時にさっと展開してます.
例えばこう書いて <C-k>
~/.config/nvim/snippets/cpp.snip
にスニペットを書くことで登録できます.
ただそうすると,cpp.snipがかなり膨大になるのでオススメしません.
そこでsnipファイルを分ける方法があります.
cpp.snip
にinclude cpp/*.snip
と書くと,cpp.snip
と同じディレクトリにあるcpp
ディレクトリ以下の*.snip
ファイルをincludeしてくれます.
これをすると競プロライブラリをいい感じに管理できるようになります.
僕は以下のリポジトリをcpp
ディレクトリ以下に置いています.
現在は競プロライブラリを随時増やしていってる途中です.
ale
aleは非同期コードチェックをしてくれるプラグインです.
コーディング中に色々と指摘してくれるので,コンパイルをせずにエラーを潰すことが出来ます.
最後に
競プロはいいぞ