初歩からの無職

プログラミング初心者がまたまたハッカー養成塾第2回に行って参りました

    こんにちは。かなりマイペースに進めてるたねのぶです。初回に参加したハッカー養成講座ですが、2回目も参加してまいりました。第2回と言っても全員同じペースで進めてるわけではないので、早い人ははるか先に行っています。僕の進捗状況も含めてやったことを書いていきます。

    Vim習得

    Vimの進捗具合はどれくらいキーボードショートカットを活用しているかというのをチェックしています。進行表みたいなものもあるのですが、とりあえず使えるようになったかなーってモノを書いていきます。

    ESC, Ctrl + [ ノーマルモード

    挿入モードから戻るときに使うアレです。ESCはMacbookだと結構小さくて押しづらいのでCtrl + [ でやってます。ちなみにMacbookのUSキーボードだとCaps lockがControlキーの場所にあるので本講座でキーバインドを変更しました(そのほうが押しやすい)。大丈夫かなって思ったけどSpotlight検索くらいだったので特に問題なく移行できました。

    i , a, o, s 挿入モード

    挿入モードに移る時、iはカーソルの位置の左に、aは右から入力開始になります。oは新しく行を挿入して入力かいし、sはカーソルの文字を削除して入力開始になります。

    h, j, k, l, 0, $, gg, G カーソルの移動

    h, j, k, lはそれぞれ左、下、上、右にカーソルを移動させます。移動から何からとにかくホームポジション内で完結させてスピードアップを目指す本講座のキモですね。まだまだ慣れてないです。0は行頭、$は行末に移動です。ggはファイルの先頭へ、Gは末尾へ飛びます。

    x, (n)dd, (n)yy, p コピペ

    xは文字カット、ddは行カット(3ddなら3行カット)、yyは行コピー, pがペースト。コピーっていうとvimmerからお叱りをうけそう(ヤンクっていうらしい)。ともかく削除でもクリップボードにコピーされてるっていう感覚でやるといいかもです。このへんはビジュアルモードとかも絡んできそうなのでもっと挙動勉強しないとなぁ。

    :q, ;q!, :w. :wq, /hogehoge, :nohl 終了とか保存とか検索とか

    閉じる時は:q、保存せずに終了するときは:q!、 保存は:w、保存して終了は:wq、/hogehogeでhogehogeという文字列を検索、その時ハイライト表示されるのでハイライトを消したいときは:nohl。NO HighLightかな。

    キータイピング

    用意された短いコードを1分以内に正確に打つというドリル形式です。一回でも打ち間違えたらやり直し。最終的には一切キーボードを見ずに完結することが目標です。正規表現(僕はこの言葉の意味するところをあんま理解してないけど)とかもガンガン出てきます。

    ホームポジション矯正!!

    実は僕にとってこれが一番の難関で、10年以上我流タイピングでやってきました。vimにしろ、タイピングの正確性やスピードにしろ、このまま我流で続けてもホームポジションのタイピングの恩恵が得られないので、これを機にタイピングを矯正しようと思います。これがなかなか大変で今もおじいちゃんみたいなスピードでのろのろ打ってます。我流から矯正するときに厄介なのはキーボード配置は頭に入っているだけに間違った指で覚えてしまう可能性もあるので、その辺注意してやろうと思います。

    サンプルアプリをいじる

    懐かしのBBS形式のサンプルに色々と手を加えていきます。まずはAngularJSの部分をいじります。サンプルアプリの改良に必要なモノは次の通り。

    JavaScript

    兎にも角にもMEANは全部Javascriptで動くらしいのでJavascriptは必須です。僕はとりあえずドットインストールで基礎部分はやりました。

    AngularJS

    これ便利ですねぇ。勉強したてでなんですが、かなり短いコードで色々できるのですごく面白いです。第2回はほぼこれの勉強してました。公式ドキュメントも分かりやすいですが、英語もJSもアレなので忌避。

    Bootstrap

    Twitter社のCSSフレームワークですね。これは結構触ってるので大丈夫だと思いたい…。レスポンシブなグリッドシステムとかかなり便利です。公式ドキュメントも分かりやすいですし、毎度毎度ですがドットインストールもおすすめです。

    jade

    これは完全に初見でした。Javascriptのテンプレートエンジンらしいです。CSSで言うところのSassみたいなものでしょうか。Jadeの記法は次回までに覚えておきたいですね。以下のリンクあたりで勉強しとこうと思います。

    git

    なんとな〜くaddしてcommitしてpushするものだと思ってきたgitですが、サンプルアプリに手を加えたらブランチを切ってコミットするらしいです。…はい、次回詳しく聞きますね。

    現状、サル以下です。

    マイペースでもOK

    繰り返しですが、初回参加後は各自タスクを進めていく感じです。特に僕はプログラミング未経験なので、一つ一つしっかり理解して進めるよう気をつけてます。早い人はもうAngular部分を終えてるみたいですが、焦って僕も進めてもしょうがないので宿題にして持って帰りました。初心者でも十分学習できる環境があるのはやっぱり助かります。Angularもドットインストールで見た感じすごい便利そうだし、Jadeもすんなりモノにできそうな気がしますが、問題はタイピング矯正ですねー。2週間で矯正したって人もいるので、ここだけは危機感もってやらないとなと思います。

    飲み物いただけます

    hajuku4 参加費を払ってる人は冷蔵庫の飲み物もいただけます。ありがたや。

    テザリング環境もあるといいかも

    Wifiもあるのですが、一斉に作業した時に回線が重くなるときもあるので、テザリング環境もあると便利かなと思います。僕はスマホをMVNOにしたのでdocomoのwifiテザリング問題で使えないんですよね。USBテザリングは標準だとできないからちょっと考えないといけない。

    次回もよろしくお願いします。

    勉強しときまーす!