Sakiのプログラミング学習ブログ

プログラミングについて学んだことや、学習の振返りを書いています。

"できたこと"に目を向けるために、8月を振り返る

目次

なぜ振り返ろうと思ったのか

 最近、「あれもこれもやりたいのに、時間がない」と焦る気持ちが強かった。
やりたいことというのは具体的には、プラクティスを進めたい、自作サービスのアイデアを考えたい、もっと勉強会に参加したい、もっとアウトプットしたい、もっとRubyで書く力を身につけたい、もっとフィヨルドブートキャンプの方々と交流したい、などだ。すべて、「本当はやりたくないけどやらなきゃいけないもの」ではなく、「心からやりたいと思っていること」なので、なおさら辛かった。

私は働きながら学習しているので、お仕事を辞められてプログラミング学習に取り組んでいらっしゃる方に比べて、学習に割ける時間が少ないので、「割ける時間が少ない分、もっと頑張らなくては」と、肩に力が入っている状態だった

この精神だと、"できたこと"よりも、"できていないこと"にばかり目が行ってしまい、自己肯定感が下がって良くないと思ったので、自分がやってきたことにも目を向ける機会を設けようと思った。今年の1月~4月まで、学習の振り返りとして週報を書いていたのだが、なかなか書くのに時間がかかるため、やめてしまっていた。
しかし、週報を書いていた時は、「一週間前にはこんなことも知らなかったのか」「最初は"何もわからん"状態だったのに、一週間でこんなに理解が進んだのか」と、成長を実感できていたことを思い出したので、月ごとに振り返りをしてみようと思った。

8月を振り返る

フィヨルドブートキャンプのプラクティス

ラクティス 学んだこと
JavaScript環境の設定 ・Node.jsとは(JavaScriptとの違い)
・nvmとnodebrewの違い
・NodeとNode.jsの違い
・nvmをfishシェル環境下で使う手順
・nvmでnode.jsの最新版をインストール
・デフォルトで利用するNode.jsを最新のバージョンにする
FizzBuzz問題(JavaScript) for文でスマートに書けた
npm ・npmとは何か
・ npmパッケージを検索・インストール・アップデート・アンインストールできる
emojemoji-grassで遊んだり🥳
Linter(ESLint) ・インストール&設定
・ローカルかグローバルどちらにインストールすべきか?
カレンダーのプログラム(JavaScript) Rubyと細かい書き方が違う
非同期処理 ・非同期処理はどういうものか、なぜ使われてるのか
callback , Promise , async/await3つの方法それぞれの特徴と簡単な書き方
・JSPrimerのGitHubのユーザーIDからプロフィール情報を取得するアプリケーションを作成するを一通りやった
JavaScript入門を読む ・外部ファイルを非同期で読み込む(async属性,defer属性)
・ラッパーオブジェクトとプリミティブ型
Node.jsでメモアプリCLI版を作る(未完) ・引数を受け取る
・ユーザーの入力を受け付ける
・パイプラインの詳細を忘れたので復習
・タスクの洗い出し(実装方法が未知なのでざっくり)
・Nodeでsqlite3を使う方法

8月のできごと

日にち できごと
4(水) ぺろ(id:mosshu0703)さん主催のLT発表練習会(登壇者の皆で集まって、気軽に発表してFBをもらう会)に参加
5(木) ・@june29さんとランチ会
詳しくはjune29さんとランチ会をしました - Saki
フィヨルドの「初めてのLT会」の発表リハーサル
・『オブジェクト指向でなぜつくるのか』輪読会2章
・『ガールコード』読書会3章
7(土) 「初めてのLT会」本番
詳しくは:「初めてのLT会」に登壇した感想 - Sakiのプログラミング学習ブログ
12(木) mitaka.rbに初めて参加
18(水) NaITE オンラインもくもく会 vol.19に初めて参加
19(木) ・輪読会B班話し合い
ペパトークに参加
・『ガールコード』読書会4~5章
23(月) ・輪読会B班(平日18:00~19:00にRuby超入門を読む会)がスタート
・『オブジェクト指向でなぜつくるのか』輪読会4章
24(火) フィヨルドのミートアップ🍻
26(木) ペパボエンジニアとメンターが語る、「エンジニアとして働くということ」 - connpassに参加
28(土) Rails Girls Gathering Japan 2021 - railsgirls-japan | Doorkeeperのイベントに参加→懇親会も少し参加
29(日) Rails Girls Tokyo, More!のもくもく会に初めて参加

8月のアウトプット

気づき・考えたこと

  • 語彙をもっと増やしたい。自分が知ってる言葉でしか自分の考えや感情を相手に伝えられないので、もっと語彙を増やして、自分の考えを一番適切に表してくれる言葉を使えるようになりたい。
  • 仕事後は疲れてしまい、学習できないことがほとんどなので、輪読会の予定があると良い意味で強制的に本に向き合えるのでありがたい。去年teshplay女子部の方で輪読会を3冊やっていて、チェリー本輪読会を平日の朝にやっているのを見て"楽しそうだな、またやりたいな"と思っていたので、B班ができて嬉しい。
  • Ruby超入門の輪読会が始まった。初めて読んだ時・一人で読んだ時とはまた違う発見があって面白かった。
  • プログラミングスクールへの期待と提案について - ペパボテックブログを読んだ。今の自分にとって大事だと思ったのでメモ。

    なぜそのようなアプリを作ったのかという、モチベーションの部分が見えにくいことが多い
    エンジニアとしての狭義の技術的スキルはもちろん必須ですが、それに加えて、仲間になるかもしれない方が、どのようなモチベーションや考え方でプログラミングに取り組んできた方なのかという、人となりも知りたいと思います。モチベーションを知ればこそ、お互いがうまくマッチするかどうかを検討もできますし、そのようにして選考過程が進んでいくことは、募集する側にも応募する側にも、双方にとってよりよいことだろうと思います。

  • メモアプリ、分からないことだらけ問題。これは、やはりタスクを細分化することが解決策と思い至った。
    lsコマンドも、最初はそもそもコマンドを作るってどういうこと?とか、ファイルの情報ってどうやったら取得できるの?とか標準入力ってどうやったら受け取れるの?など分からないことだらけで、完成への道が果てしなく遠く思えたけど、 タスクを細分化して、まずは標準入力を受け取るにはどんなライブラリ・クラスを使えばいいのかとか、ファイルの情報をとってくるにはFileクラスやDirクラスをとってくればいいのか!とかちょっとずつできるようになったら、進められてる感を感じられてよかった。
    ということを思い出したのでちょっとずつでもやっていこう!という気持ちになった。 あと、Rubyでは超入門→チェリー本とRubyの知識をかなり丁寧に読んでから課題に移ったので、Rubyの基本的な知識がある状態で課題にのぞめたが、JSは「ふりがなプログラミング」というJavaScript入門というよりはプログラミング自体が初心者な方向けの本しか読んでいないので、単純にJavaScriptについて知らないから分からないのだろうな、と思う。他の方の日報を見ていると、みなさんJSPrimerや初めてのJavaScriptをしっかり読んでいらっしゃるので、私も基礎的なところをもっと知るところから始めようと思った。

  • 今働いている会社で、社員さんが作ったkintoneを使って仕事の進捗管理や顧客管理をしているのだが、入力されているべきデータが空白だったり、入力ルールを間違えていたりなどの不備が多いので、入力方法を分かりやすくまとめたマニュアルを作ってほしいと頼まれた。マニュアル作成にあたってkintoneアプリのデータがどこから飛んでくるのか等仕様を調査していて、「分かりづらいアプリの使い方を丁寧に教えるよりも、使いやすいアプリを作るべきではないか?」と思った。しかし、改善するには、「どこをどのように変えたら使いやすくなるのか」を言語化できないといけない。これがなかなか難しい。プログラマーの方々は、「どのようなデザインだとユーザーが使いやすいか」を、どうやって学んでらっしゃるんだろう?と気になった。

嬉しかったこと・シャウトアウト(感謝)

  • 分報チャンネルで「1個1個丁寧にやるのが癖になっていて、それなりの完成度ですすめるの苦手だ」とつぶやいたら 、uda(id:ud_ike)さんに、

個人的にはSakiさんのすごくいいところだと思いますけどねー。私は時間があってもできないし、アウトプットもいろんな人の役に立ってると思います👏

と言っていただけて嬉しかった。「もっと効率よく進めなきゃ」とか「時間がかかってしまっているなあ」とか、ネガティブな側面だけを見ていたので、ポジティブな面に気づくことができた。

  • こちらのツイートの、

    「これわかんないんですけどなんてキーワードでググったら良いですかね」が最強の質問方法だとずっと思ってる。 社内知見だけで共有されてるのは「一回一緒にやってもらえませんか」(その後知見をドキュメント化すると喜ばれることが多い、自分のために書いたメモなんですけど…って言いながら)

を読んで、ドキュメントを書くのは現職でもマニュアルを作ったり好き&得意なので、プログラマーになってからもお役に立てるかも、と分報チャンネルでつぶやいたら、メンターのりほやんさんから、

かなり稀有な存在でありがたられること多いので推していくといいとおもいます!

とアドバイスをいただいた。プログラマーの方々は几帳面でマメなイメージを持っていたので、稀有なのは意外だった。開発だけでなく、ドキュメント作成でもお役に立てたらいいな、と思った。

  • 8/5(木)のLTのリハーサルでは、udaさんとアルトさんが「スクラム開発大変だけど楽しい!」とお話されてて、モチベーションが上がった。
  • @june29さんにランチ会で、「論理的に考えられる」「前向き」と言っていただけたのがとても嬉しかった。

振り返ってみて

  • もっとやりたい、と思っていたことを、振り返るとすでに結構やっていたことに気づけた。
  • JavaScriptの学習は、7/17から始めたので、まだ始めて1ヶ月半と考えると、「そりゃあまだまだ知らないことだらけだよね」と腑に落ちた。基礎を分かっていないので、焦らずJS Primerを読んでじっくり向き合おうと思う。

9月の目標