ハトネコエ Web がくしゅうちょう

プログラミングやサーバー関連、チームマネジメントなど得た技術のまとめ

DNSサーバ引っ越し時のメモ

また忘れそうなのでメモ書き。 基本的に引っ越しは、NS レコードを書き換えて 移行先のDNSサーバに誘導するようにするんだけど、ConoHa はトップドメインの NS レコードを変更できない。 でもそもそも、ドメイン取得サービスの DNS サーバが起点となっている…

ConoHa ちゃんを裏切って DigitalOcean に移行した話

約2年に渡って使ってきた ConoHa から、メインのサーバを DigitalOcean に移行した話。美雲このはちゃんがこんなにもかわいいのに、それを失ってまで VPS サービスを DigitalOcean に変えた理由とは……

Docker の ARG の宣言箇所に注意

ARG の宣言を FROM の後に書くようにすべき話と、ADD や COPY でソースとして扱えるファイルは特定ディレクトリ以下だよ、って話

Makefile の = と := と ?= (makeの基礎)

Makefile の変数定義で扱われる演算子 = , := , ?= の違いを解説。例があるのでわかりやすい

Docker で Ansible の実行環境を作る(Ubuntu 18.04)

Ansible を簡単に何度も流せる Docker イメージを作成します。 また、Makefile を活用し、コンテナの開始・終了もおこないやすく。 --cap-add NET_ADMIN オプションなど、ハマりどころも解説。

gRPC チュートリアルで入門しようぜ!

gRPC 公式の Quick Start Guide をベースにしつつ、より深く掘り下げられるよう追加・変更を施した、gRPC 入門のためのチュートリアルです

Studio One 用の Addictive Drums マッピングを作成し公開しました

Studio One 4 にアップデートしたら、 Addictive Drums 2 を使おうとすると普通のピアノロールじゃなくてドラム用のピアノロールが自動で選ばれて「おお〜!」って思ったんですけど、 キーマップが「GM Drums」しかなかったので作りました。 github.com 過去…

期日(完了予定日)の作り方

0. 最初はわからなかった 働き始めた頃は、「いつ頃終わりそうですか? 完了予定日を設定してください」と言われると「うーん、全然わからない」と困ってしまっていたのですが、 しだいに慣れてきた気がするので、自分の中での期日設定の方法(工数の概算)…

Hacking HR! #2 に参加して採用業務の失敗を聞いてきたよ

会社にとって一番大事なものってなんでしょう? 間違いなく採用です! そんな採用に関するおもしろそうな勉強会を発見し、参加してきました。 Hacking HR! #2 です。 スタートアップ企業の人事の勉強会で、特に採用に関してのテーマでやっているようです。 …

ブログをMixed Content対応しつつHTTPS化しました 🎉

今年の4月から、はてなブログのドメインを使用している全ブログが HTTPS 化に対応しました。 (2月の時点ではまだ段階的に提供開始というステータスだった) 対応したいなと思いつつも、 「Mixed Content 対応のためには記事をひとつずつ保存し直してね、て…

FirefoxとChromeは表示される色味が違う!!

ブログのデザインを微変更していて気付いたのですが、 (Mac版だけかもしれませんが)FirefoxとChromeの色味って違うんですね! (左:Firefox、右:Chrome) Firefox は Chrome よりもきらびやかな色になります。 Firefox でカラーを調整していたので、Chro…

Docker Swarm モードはわかりやすい!

Docker Swarm モードのひととおりの流れを解説しています。 Kubernetes に比べ、非常に簡単な方法で、Dockerクラスタの管理ができることがわかると思います。

macOS の再インストールに苦労した話

久しぶりの、設定に苦労した系の日記です。 友人にMacを貸す必要があったため、 MacBook Pro Early 2015 をクリーンインストールしようとしました。 1. macOS Utilities を削除する失敗 Mac は起動時に Command + R を押しっぱなしにすることで OSユーティリ…

マネジメント半年やったので良かったことと改善すべきこと

↓ この記事は 『ハトネコエの人事・採用ブログ』 側へ移動しました! ↓ hatone-hr.hateblo.jp

Mac Firefox にて二本指スワイプで戻る・進むがおこわなれないように

世の中のプログラマがたいていChromeを使う中、 私は家ではFirefoxをメインに使っているのですが、 トラックパッドを二本指スワイプでスクロールしてると誤認識で「戻る」が働くことが時々あってムムッとなってました。 こちらの記事を読んで解決しました。 …

【CircleCI 2.0】GitHub Pages へ指定ディレクトリ内だけを push するための config.yml

約2年前に上のような記事を書いたのですが、 いよいよ CircleCI ver.1 も今月をもって廃止ということで、 CircleCI 2.0 向けに書いたものを貼りつけておきます。 1. config.yml の設定 以前と同じように、結果から貼りつける形にしようと思います。 このよう…

Wi-Fiの接続先が変化した際にシェルスクリプトを走らせる(Mac OSX)

すごく稀なユースケースだと思うんですが、 例えば研究室の無線LANに接続しているときだけプロキシ設定を有効にし、それ以外のときは無効にしたい場合を考えます。 通常であれば、研究室のWi-Fiに繋いだら export http_proxy="http://www-proxy.waseda.jp:80…

DiscordのbotをRubyで簡単に作成したのでコード晒します

同僚と松屋で食べてたら盛り上がって、 Discord の部屋を立てました。 Slackと違ってアプリ連携できないよな〜と思ってたら bot は作れると知ったので「よっしゃ! 作るしかない!」と Ruby で作りました。 1. 完成形 こんなものができました。 2. 必要なも…

エンジニアマネージャーに必要なことってなんだろう?

↓ この記事は 『ハトネコエの人事・採用ブログ』 側へ移動しました! ↓ hatone-hr.hateblo.jp

Googleスプレッドシートでセルの文字列の文字列結合(IFの活用)

スプレッドシート関数の書き方わからなくて困ること多いのでメモ。 こんなふうに、右の列に "/releases" と文字列をくっつけた行が続く場合には関数で書きたい。 文字列の結合は & で書ける。 なので、C2 には =B2&"/releases" と書けばいい。 ただ、これで…

Datadog のメモリ監視に関するダッシュボード設定

「君のアカウント、試用版だから有料版にアップグレードするか無料版にダウングレードするかしないと消すね」 と Datadog から警告が来たので、もし設定しなおす場合の参考用に。 1. メモリを used, buffers, cached, free の分け方で見る場合 free コマンド…

CygWin 環境に nokogiri , ffi, mysql2 をインストールできるようになるまで

Windows で Rails アプリを動かしたくて CygWin で bundle install したら nokogiri で止まってしまうので、必要なものをまとめた。 なお、 Windows 10 64bit 環境に CygWin64 をインストール、 apt-cyg mirror には http://cygwin.mirror.constant.com/ を…

ちょっとしたWindows向けウィルスをPythonで作ろう

プログラマーはたまに「ハッカー」と呼ばれることなんてあります。 ハッカーって言葉のイメージと言えばウィルスです。 そうだ、ウィルスを作ろう! これが今回のテーマです。 と言っても悪いことしたら捕まってしまうので、 友達にメールでexeファイルを送…

letsencrypt renew 後に nginx restart が必要

久しぶりにメモ。 自分で管理してるサイトにアクセスしようとしたら SSL証明書の有効期限切れエラーを見ることに。 で、なんか設定忘れてるのでは、という気がして他の人の renew のやり方見ていたら、(Let's Encrypt で Nginx にSSLを設定する - Qiita) …

エンジニアが辞めない組織について本気出して考えてみた

↓ この記事は 『ハトネコエの人事・採用ブログ』 側へ移動しました! ↓ hatone-hr.hateblo.jp

プログラマのための数学LT会 2! 開催しました

プログラマのための数学LT会 2! ふたたび主催やらせていただきました! 『プログラマのための数学LT会 2!』 です。 https://techplay.jp/event/624044 場所は dots. あらため TECH PLAY さんで開催させていただきました。 2回目ですが、1回目開催の時は開催…

Ansibleで、サーバー上の特定ディレクトリにあるファイル名一覧を取得する

個人のサーバーでgit運用したくて、Gitbucket を立ててるんです。 それで、この前 Gitbucket の更新をするときにプラグインファイルも更新をかけたのですが、 困ったことに、プラグインをダウンロードするだけのAnsibleタスクだと 古いバージョンのプラグイ…

ヤバイサイトのセキュリティはどれだけヤバイのか検証してみた

1. 前置き 先日、このツイートがエンジニア界隈でちょっとだけ話題になりました。 https://twitter.com/ymotongpoo/status/866929418073120769 事の発端は、このツイートにあります。 https://twitter.com/e_Traning_html5/status/866677588315447297 WebRTC…

git利用者に贈る、Subversionがダメな理由

このブログを始めてからだいたい2年が経ちました。 2年前はどんな記事を書いてみたのかと見てみると……これですね。 このときはプログラミング始めたてで、まずは git の使い方を覚えようとしていたようです。このように、ここ数年でプログラミングを始める…

DataDog に Ansible を連携させる ansible-datadog-callback の使い方

DataDog の Ansible Integration が上手く動作しなくて頭を抱えました。 Configuration をよく読むと、 ansible-datadog-callback を入れなさい、と書いてあります。 なるほど、と設定しようとするもどこに何を置けばいいのかわからず困りました。 ローカル…