iku8log

Webエンジニアのタダのメモ。

Grafanaのアップデートが「sudo yum update grafana」ではできなかった。

環境

OS: CentOS7 grafana: ver5.1

経緯

Grafanaのalertで、障害発生時にリマインドしたかったので、5.4くらいに上げたかった。

どうもgrafanaのalertのリマインド機能は5.3からの様子。だから上げたかった。

f:id:iku8:20190226000758p:plain

でもdocにかかれている、以下の方法じゃ上がらない(もしかしたらインストールした方法が違うのか、忘れた)。

Upgrading | Grafana Documentation

sudo yum update grafana

なので、以下の方法を試した。

Download Grafana | Grafana Labs

wget https://dl.grafana.com/oss/release/grafana-5.4.3-1.x86_64.rpm 
sudo yum localinstall grafana-5.4.3-1.x86_64.rpm 
grafana-server -v

で、

Version 5.4.3 (commit: 6539180, branch: HEAD)

上がってた。

そして、

f:id:iku8:20190226002114p:plain

よしよし。ということで目的達成。送りまくるぞ。

エンジニアの勉強法について考えてみた

僕は勉強の効率が良くなく、あたまも良くない。 ある事柄を理解して記憶するまでおそらく人より時間がかかる。

基本的に勉強は量をこなすようにしています。

もっと今後のエンジニアライフをもっと実りのあるものにしていくために、自分なりの勉強法について考えてみました。 この方法が良いか悪いかは、未実施なのでわかりませんが、そさそうな気はしています。

実践する勉強法

  • 勉強分野を分ける
  • 週1で復習の日を取り入れる
  • 週1で酒をのみ映画を見る
  • 業務にも取り入れる

勉強分野を分ける

ざっくりと勉強する分野を分けました。 僕の場合、以下のように興味があり必要だと思うことについて分けました。

  • フロント
  • サーバサイド
  • インフラ

毎日上記の分野にそれぞれ学びます。 例)1時間毎にフロント、サーバサイド、インフラの計3時間。

この時各分野について、覚えておくべきことをメモしておきます(復習の時使います)。 メモのポイントとしては、キーワードをメモします。文章ではなく。 さすがにキーワードだけだと無理だろうと思う箇所は文章で。

週1で復習の日を取り入れる

復習ってちょー大事。学生の頃も、忘れた頃にもう一度解くということを良くやってました。 勉強したときはちゃんと理解したつもりになるけど、すぐ忘れちゃいますからね。

僕は復習の日は「日曜日」に設定しました。 理由はモチベがあまり高くなく、時間が確保できる曜日だからです。

モチベが高くないところがポイントで、モチベが高い日は頭が冴えているので新しいことを学んだほうが良いんです(僕はね)。 しかも次の日、会社だし....。

日曜は復習の日だけど、勉強もするかも。

週1で酒をのみ映画を見る

ま、安めってことですね。

余暇も大事です。 この日は勉強しない。あえて勉強しないことで「勉強したい!」モチベを高めます。

勉強お休みの日は「月曜日」に設定しました。 会社の始まりでやる気が出にくいので、ぱーっと飲んで映画見ます。

業務にも取り入れる

プライベートで、1週間に1日復習の日を設け、1週間に1日休みの日を設けました。 これを業務にも取り入れます。

業務は5日しかないので、僕は、

月曜日を復習の日と設定しました。休みはないです。業務なんでね(というか土日休んでるし)。

月曜日を復習の日に選んだ理由としては、先週の月〜金にした業務を土日に忘れかけて、月曜日に思い出す! という、忘れた頃に思い出す作戦です。

業務でもメモは自分なりにとっていて、毎日つけています。 次の日するべきことを前日に作成し、todoリストとして消していく。っていうのが今までしたが、 これに加えて、その日学んだことや覚えておくべきことがらをメモしていく(個別にメモしていたので日単位ではまとまっていなかった)。

このメモをtodoリスト以外月曜に復習します。

その他&懸念点

  • プライベートの勉強法で、復習日の日を休みにして、「忘れた頃に作戦」をしたいが、土曜日を休みにするのはもったいないので出来ない。
  • 飲み会の日や風の日はどうするか問題
    • もちろん何もしない。効率が落ちるから次の日にしたほうが良い
    • ただ、継続力が欠けてくる可能性がある

3日前から、この勉強法を実践しています。 結果は出てませんが、今までのダラダラ勉強よりは確実に良くなるはずです。

今後、改善改良を加えていって、自分の勉強法を確立していきます。 また、効果が実感できれば報告します。

参考: 効率重視のエンジニアが実践している効果的な勉強法を解説する - paiza開発日誌

SpringBoot2 gradleコマンドによる起動まで

SpringBoot2 gradleコマンドによる起動まで

gradleコマンドを使って、SpringBoot2を起動するまでの流れをメモ。 ※開発環境はMacjava、gradleコマンドが使えることが前提。

起動までの流れ

  • 雛形を取得(Spring Initializr)
  • ビルド
  • 起動

雛形を取得

SpringBootプロジェクトの雛形ファイルはSpring Initializrよりダウンロードできる。

セレクトボックスで「Gradle Project」に変更し、 DependenciesにWebと入力し選択する。

あとは下の「Generate Projectボタン」より雛形のzipファイルをダウンロードできる。

f:id:iku8:20181223161405p:plain

ビルド

まずはzipファイルなので解凍。 解凍が終わったら「demo」ディレクトに移動し以下コマンドを実行。

gradle build

これでビルドが完了。

※ポイント build.gradleファイル中を覗いてみると、

implementation('org.springframework.boot:spring-boot-starter-web')

という行がある。

通常のプロジェクトでは 「org.springframework.boot:spring-boot-starter-web」ではなく 「org.springframework.boot:spring-boot-starter」となっており、Webアプリケーションようではない。

「Spring Initializr」でWebと選択したため、Webアプリケーション用の設定に書き変わっている。

起動

ディレクトリで上で、以下実行。

gradle bootrun

ポートは8080で起動するので、ブラウザでアクセスすると

http://localhost:8080/

以下のような画面が出る。

f:id:iku8:20181223161419p:plain

エラーとなっているが、コントローラやビューなど表示するものがないので想定通り。 これからコントローラ等を追加し、アプリケーション作成していく。

とりあえずこれで、開発までの下準備は完了。

コマンドメモ

  • gradle build
    • javaプログラムをビルドする(build.gradleの設定を見る)
  • gradle bootrun
    • buildされたファイルによってアプリケーションを起動する
    • java -jar jarファイル名でも起動可能(今回の例)
      • java -jar build/libs/demo-0.0.1-SNAPSHOT.jar

phpstorm mac 便利なよく使う機能まとめ

これはただのメモになります。環境によっては動きません。

ショートカット

ファイル名検索

command+shift+O

直近に開いていたファイル一覧

command+shift+E

なんでも検索

shift shift

シフトキーを2回押すと開きます。 クラスやファイル名、アクション名など検索できます。

ブックマークする

command+F3

ブックマーク一覧

command+shift+F3

戻る、進む

一つ前に見ていたファイル(または場所)に戻る

command+[

上の逆(進む)

command+]

行の移動

移動させたい行にカーソルを持っていき(複数行選択でも移動可能)以下を実行

下移動

command+shift+↓

上移動

command+shift+↑