eng-note

エンジニアノート

技術関連の自分用メモ書きブログ

Javascript関連のTips

型関連

色々なデフォルト値
// hoge が偽と判定される場合、vに0を入れる
var v = hoge || 0;

// hoge がundefinedの場合, vに0を入れる
var v = typeof hoge === "undefined" ? 0 : hoge;

// hogeが数字じゃない場合、vに0を入れる ※数値かどうかの判定方法は色々ありそうでどれが一番いいのか不明
var v = typeof hoge === "number || Object.prototype.toString.call(hoge) === "[object Number]" ? hoge : 0;
booleanに直す
// hoge が偽と判定される場合、bにtrueを入れる
var b = !hoge;

// hoge が真と判定される場合、bにtrueを入れる
var b = !!hoge;

// これだとhogeやfugaがboolean以外の値の場合、bもbooleanにはならないので注意
var b = hoge && fuga;    // 左辺値が真なら 右辺値がbに入る
var b = hoge || fuga;    // 左辺値が真なら 左辺値がbに入る
整数に直す
// hoge の値によってはバグるので注意
var i = hoge >> 0;
var i = hoge | 0;

// これが安全
var i = Math.floor(hoge)

Go言語のメモ

Goのインストール

centos7 (特定のバージョンのみインストール)

$ uname -m

アーキテクチャ確認して
Downloads - The Go Programming Language
でダウンロードURL確認

$ sudo su -
# cd /usr/local/src
# wget https://dl.google.com/go/go1.10.3.linux-amd64.tar.gz
# tar -zxvf go1.10.3.linux-amd64.tar.gz
# mv go /usr/local

PATHに/usr/local/go/binを通す

mac (goenv使う)

$ brew update
$ brew install goenv

~/.bash_profileに以下を追記

export GOENV_ROOT=$HOME/.goenv
export GOPATH=$HOME/.go
export PATH=$GOENV_ROOT/shims:$GOPATH/bin:$PATH
eval "$(goenv init -)"

goenv install -l で入れるバージョン確認して

goenv install 1.10.3
goenv global 1.10.3

GoLand

SDKのフォルダ設定

SDKフォルダを選ぶ時に.goenvフォルダが表示されず選択できない。 その場合は [Command + Shift + g] を押して直接パスを入力する。

勉強サイト

A Tour of Go

SSH関連のTips

参考

お前らのSSH Keysの作り方は間違っている - Qiita

ssh-keygen

SSH鍵を作る

ssh-keygen -t rsa -b 4096 -C "email@example.com" -f "hoge_rsa"
  • 4096bitを指定しておくと安全らしいしデフォルトの2048bitじゃないと意識高いっぽい感じがするので指定しておく。
  • -Cはただのコメントなので空でもいいらしいが鍵を複数作る場合はコメント入れておく方が安心かも。
  • パスフレーズは面倒なのでなくても許される環境ならいらない。付けるなら長めのパスフレーズじゃないと意味ないし個人的には本人が忘れるリスクの方がメリットを上回る気がする。

強度チェック

ssh-keygen -l -f ~/.ssh/id_rsa.pub

色々追記予定。