君は心理学者なのか?

大学時代に心理学を専攻しなぜかプログラマになった、サイコ(心理学)プログラマかろてんの雑記。

2019年ふりかえり〜失敗したことリスト〜(前半)

概要 去年は大量に失敗をした。 こんなにたくさん失敗したことって人生でないかもしれない。 自分だけでは気づけない失敗もたくさんあった。 フィードバックをくれた方、本当にありがとうございます。 今回はエモ度低めでお送りします。 前編 1月 失敗したこ…

Qiitadon忘年会まとめ 2019

序章 予告 qiitadon.com qiitadon.com わからない、流れ qiitadon.com 迎えにいきます qiitadon.com qiitadon.com 挫折 qiitadon.com なのやつへの期待 qiitadon.com 届く、カーテン qiitadon.com qiitadon.com ももせさんのカーテン qiitadon.com すぐに名…

【nginx】status codeが400系/500系の時に限り、CORSエラー(Origin http://xxxxxx is not allowed by Access-Control-Allow-Origin)が出る

背景 静的サイト(originサーバがドメインA)からAPI(ドメインB)へアクセスする、 いわゆるCORSの仕組みを使ったAPI通信をしていた。 CORSを実現するため、nginxの設定ファイルには以下のように記述をしていた。 location / { add_header Access-Control-A…

もし、蓮舫が我が家の事業仕分けをしたら

蓮舫「先月と比べて、我が家の財政状況はきわめて悪いと言わざるを得ません」蓮舫「今日は徹底的に仕分けをしたいと思います」 蓮舫「ここに先月の家計簿があります」蓮舫「〇月△日、この一日に用途不明な50,000円もの出費が記録されています」蓮舫「こちら…

Qiitadonで起こったカットイン

カットイン qiitadon.com qiitadon.com qiitadon.com qiitadon.com qiitadon.com qiitadon.com 絶賛 qiitadon.com qiitadon.com qiitadon.com qiitadon.com qiitadon.com qiitadon.com 補足 まえかわ氏はあまりLTLに現れない。

ECSのコンテナヘルスチェックが数分おきに落ちてしまうときにみたいログ

現象 ECS > クラスター > サービス > イベントを確認した時に、 service *** task **** failed container health checks. が数分おきに起きている。 調査 1. コンテナインスタンスにログインします 2. /var/log/dockerをみる tail /var/log/docker 3. …

ELBまとめ(メモ)

AWS

ELBとは AWSのロードバランシングサービス。 webサーバやアプリケーションサーバのスケールアウトに使用する。 ELB自身のスケールアウトは勝手にやってくれる。 特徴 ELB自体の安全性の確保 セキュリティグループの設定ができる。 ELBの名前解決 ELBへの接続…

逃げるんだ。2019年から、全速力で。

紅白が、そろそろ終わる。 狭い狭い学生寮の一室。 真ん中に年代物のこたつが一つ。 元の模様がなんだったのか、 まったくわからなくなってしまうほど擦り切れてしまったこたつぶとんを肩まで引っ張り、 白石はぬくぬくと2018年最後の夜を過ごしていた。 こ…

localStorageをwrapしてくれるnpmパッケージ、store.jsについて調べた

いきさつ localStrageを使う機会があった。 今までは普通にlocalStrageを使っていたが、 npmにlocalStrageのwrapperがあるのを職場の人が見つけてくれた。 github.com 気になったので少し調べてみた。 概要 ブラウザやそのバージョンによってlocalStrageの扱…

pullreq出したらコンフリクトが起きて、githubのweb上から解消できなくなった時にやること

Git

前提 プロジェクトのリポジトリを、個人のリポジトリにforkして開発している プロジェクトのリポジトリをupstream、個人のリポジトリをoriginとする originできったfeatureブランチをupstreamのdevelopブランチに対してプルリクを出した コンフリクトし、Git…

2018年振り返り(9月〜12月)

9月 屋久島にいった 退職した開放感によって大変気が大きくなっていた私は、単身屋久島に渡った。 正確には、 福岡で一泊、 鹿児島で一泊、 屋久島で二泊、 鹿児島で一泊、 実家に一泊 というかなりの長旅だった。 旅の目的は、九州で一番高い山に登ること。…

2018年振り返り(1月〜8月)

今年はいろいろな動きがあった年でした。 1月〜8月 9月〜12月 で大きな動きがあったので、分けて書いていこうと思います。 1月 記憶がない 2月 初めてQiitaの記事がバズった qiita.com 個人ブログでは50pv/dayくらいしか読まれていなかったのに、 10,000pv/d…

ログ解析で用いられるElasticsearchとはなんなのか

いきさつ Elasticsearchについて「大量のデータをスピーディーに解析する」 くらいしか理解できていなかったので、整理することにした。 ただし、今回は「ログ解析」という観点に絞って整理する。 ログ解析の一般的な構成 おもにログ収集、ログ集積、ログ解…

Qiitadon忘年会まとめ

日曜日なのにQiitadonが早い qiitadon.com qiitadon.com qiitadon.com 今日はQiitadonの非公式忘年会だから qiitadon.com ホテルニュー淡路 qiitadon.com qiitadon.com qiitadon.com はやすぎるひとたち(集合は16:00) qiitadon.com qiitadon.com 駅集合な…

babelで現在のnodeJsのバージョンに合わせてトランスパイルする

** あとで少し追記する babelのinstall yarn init -y yarn add @babel/cli --dev yarn add @babel/core --dev コンパイルするソース class Hoge { constructor() { } } const hoge = new Hoge(); コンパイル 何も入れず、そのままコンパイルしてみる yarn ru…

dockerのコンテナを削除する〜サブシェルについて〜

いきさつ とまっているDockerコンテナを全部削除したい。 と思って方法を調べたら「サブシェル」という技術を知った。 方法 $ docker rm $(docker ps -aq) 解説 ( ) ( )でくくった処理はサブシェル内で実行する。 親シェルの環境変数を汚したくないときに…

releaseブランチを導入するメリットについて考える

Git

背景 masterブランチとdevelopブランチ、 それとfeatureブランチで開発しているケースを考える。 developからfeatureブランチを生やして、featureの開発が終わったらdevelopにマージ。 developにマージしたものをリリースのタイミングでmasterにマージ。 そ…

AWSのCloudFrontの設定(OriginPath)を、aws-cliから変更する

AWS

いきさつ デプロイ自動化の一環で、 AWSのCloudFrontの設定をaws-cliから変更したくなった。 (今回変更したのはOriginPath) 前提 aws-cliが使用できる環境 jpが使用できる環境 出来上がったシェル # Etagの抽出 RAW_ETAG=$(aws cloudfront get-distributio…

Go言語製のmigrationツール、sql-migateを使ってみた(postgresSQL編)

経緯 開発環境と本番環境のDB差異をできる限り無くすためにmigrationツールを導入する。 プロジェクトリポジトリと同じリポジトリでマイグレーションファイルを管理することにより、 ソースコードとDBスキーマのバージョンを同期させることができる。 使用す…

AWS CLI S3にまつわるコマンドメモ〜一覧表示、ダウンロード、アップロード〜

一覧表示系 s3内においてあるbucketをすべて表示する aws S3 ls S3内においてある特定のbucketの中身を表示する aws s3 ls {bucketName} ダウンロード系 S3上のファイルをlocal上のフォルダに落としてくる aws s3 cp s3://{bucketName} {localFolderName} --…

【告知】1本5分のpodcast、ナノキャスはじめます。

この間ポッドキャストに初めて出た。とても楽しかった。 monorazi.hateblo.jp だから自分でもやろうと決めた。 自分で言うのもなんですが、かなり特殊なポッドキャストになる予定。 現時点での構成はこんな感じ。 1本5分きり 僕が喋りっぱなし 内容はフィ…

標高3000メートルから先は、異世界だった。そして僕らはそこにいた。

絶対、絶対にこれ以上、登りたくない。もう散々だ。午後8時、雨嵐吹き荒れる山荘、標高3000m近くで僕はそう思った。 話は入山1日目に巻き戻る。 入山1日目。 僕は登山を完全に舐めていた。ハイキングみたいなものだと完全に勘違いしていた。楽しく森林浴…

死神が予備校にいた。彼はりんごばかり食べていた。

予備校にいた、死神の話。 僕が通っていた予備校には死神がいた。 その死神は毎日りんごばかり食べていた。 みんな知ってると思うけど、死神はりんごしか食べないんだ。 死神は昼休みになると、予備校の地下にあるリフレッシュルームに降りてくる。 そしてハ…

予備校は牢獄だった〜浪人時代予備校にいた「7浪さん」の話〜

僕は大学に入るまで、3年かかった 3年。長かった。 受験勉強を始めたのが高3の夏。 それなりに勉強をしたのだが結局志望校には入れなかった。 結局僕が入ったのは予備校。そこで1年、そして2年といた。 よく「浪人時代は本当に苦しかった」と言っている…

OSSから設計について学ぶ〜クラスの依存方向について〜

要約 僕が間違ってました。すみませんでした。 いきさつ 「Mapを使ったアプリケーションで、Mapの上にMarkerを立てたい」 という要件を満たすために、leafletというOSSを使うことにした。 リポジトリ github.com 公式サイト leafletjs.com インターフェース…

本当にオブジェクト指向を使う必要があるのか?

タイトルについて すみません、煽りました。 いきさつ オブジェクト指向で設計した時と、 オブジェクト指向を使わなかった時について、 「単純にコード量だけで」比較してみます。 その上で、オブジェクト指向の利点について再度考えてみます。 つくるもの 1…

DDDのリポジトリについてちょっとしらべた

いきさつ 昔書いていたアプリケーションがあまりにあまりなので、 (モデルの責務がいたるところに染み出している) DDD使って書き換えられないか検討するために勉強を始めた(1日目) Repositoryからやっていきます Repositoryについて エンティティの永続…

JavaScriptのgetter, setterについて復習してみた

getter, setterとは オブジェクトに値を代入したり、 参照したりする時に呼ばれる関数のこと。 書き方 set {プロパティ名}(value) { // 処理 } get {プロパティ名}() { // 処理 } のように書く 実例 var obj = { set value(val) { this._value = val + 1; },…

json-serverが鬼のように便利で、しかも可愛かった

いきさつ APIのmockがほしかった。 今までexpressとかで実際にAPIをつくっていたのだが、 ちょっとめんどくさくなってきた。 何かいい方法がないかな〜と思ってたら「json-server」という良さげなものがあったので試してみた。 github.com install npm insta…

【突然の沈黙】JavaScriptのobjectスプレッド演算子について

いきさつ ソースコードを読んでいたら、 var arr = [1, 2, 3] var arr2 = [4, 5, 6] arr.push(...arr2) とつぜん処理の中で沈黙(...)し始めた。 気持ち悪かったので調べてみた。 ドキュメントを見てみる スプレッド構文を使うと、関数呼び出しでは 0 個以…