猫でもわかるWebプログラミングと副業

本業エンジニアリングマネージャー。副業Webエンジニア。Web開発のヒントや、副業、日常生活のことを書きます。

LoL民が交流するsummoners-riftodon.jp を立てた話とマストドンに絵文字を追加する話

はじめに この記事は Mastodon Advent Calendar 2017 - Qiita の20日目の記事です。 summoners-riftodon.jp を建てました LoL(League of Legends)をプレイする人たちが交流するマストドン、 https://summoners-riftodon.jp/ を yota くんという人と一緒に…

curlで複数のファイルとファイル以外のパラメータをPOSTして、PythonのFlaskでそれらを受け取る

curlでファイルをPOSTしてFlaskで受け取る方法 Webアプリ開発中、curlでAPIの動作を確認したい時があるかと思います。 先日PythonのWebフレームワーク Flask を使ってWebアプリを開発していたのですが、curlでどうやってpostしたらいいのか、さらにはFlaskで…

Emacsでマイナーモードを定義してみたり、 M-x で動くインタラクティブ関数を定義してみたりする

はじめに この記事は Emacs Advent Calendar 2017 - Qiita の18日目の記事です。 パッケージをインストールしているだけでは物足りない時がある EmacsでPHPのシンタックスハイライトやコードフォーマッタを導入する、といった場合には、適当なパッケージを導…

MySQL 5.6 で実装されたGTIDレプリケーションについて誤解を恐れずに、とにかく簡単にわかりやすく解説する

はじめに この記事は MySQL 5.6.4 で実装されたGTIDレプリケーションを、とにかく簡単に、とにかくわかりやすく解説したものです。それゆえ正確な説明ではなくなっているところがあります。ご了承ください。正確な知識を得るための導入としてお読みください…

Linuxでディスクの容量が大きくなってきた時にどのディレクトリが容量を食っているのか調べる方法

ディスクの容量を見るコマンド df 指定したディレクトリの容量を調べるコマンド du -hs ディスクの容量を見るコマンド df $ df Filesystem 512-blocks Used Available Capacity iused ifree %iused Mounted on /dev/disk1 487849984 369271528 118066456 76%…

MySQL 5.7のマルチソースレプリケーションを活用する - 無停止でシャーディングを解消

はじめに この記事は ドワンゴ Advent Calendar 2017 - Qiita の15日目の記事です。 昨日の記事は ytanaka さんの Goadを使った負荷試験とパフォーマンス分析手法について - Qiita でした。 自己紹介 ドワンゴでニコニコ動画の開発をしています。 *1 去年も…

PHP の composer で remove する時にパッケージの依存関係も含めて remove したい

PHP

状況 composer remove --update-with-dependencies でもだめだった 一番確実なのは composer.lock を作り直すことだが... ただ、バージョンが固定されておらず composer.lock を簡単に消せないことも ではどうすればいいのか composer.lock を読む どうやっ…

TypeScript 1.5 から internal modules の名前が "namespace" に変わったらしい

A note about terminology: It’s important to note that in TypeScript 1.5, the nomenclature has changed. “Internal modules” are now “namespaces”. “External modules” are now simply “modules”, as to align with ECMAScript 2015’s terminology, (n…

ニコニコ動画は動画の時間とコメントが紐付いているのでそれを解析したら何かできないかなという話

ニコニコ動画とYouTubeのコメントの違い ニコニコ動画とYouTubeのコメントの違い、、、ニコニコ動画は画面の上にコメントが流れる、だけでなく、動画の時間とコメントが紐付いているのが面白いです。YouTubeは動画自体にコメントするのに対して、ニコニコ動…

Code Quest 連鎖ノ試練(しりとり問題)をクリアする

Code Quest 前にも書いたCode Quest、今回は連鎖ノ試練を解いていきます。 geek-out.jp 連鎖の試練 与えられた単語の中からしりとりをできるだけ長く繋ぐようにします。 しりとりはグラフで解ける しりとりは、ノードが文字、エッジが単語のグラフで書けます…

JavaScriptのundefined判定、jQueryのdomが見つからなかった時の判定

Javascriptのundefined判定 if(hoge === undefined) { // } ただし、 undefined の再定義ができるので、注意が必要だが、普通そんなことしないので、基本的には undefined と === 比較したらいいと思います。 例えば行かのようにundefinedの再定義ができます…

Ansibleで構築したVagrant上のLaravel環境を使ってlocal開発環境を整える

この記事の続きてきなやつです yoshiki-utakata.hatenablog.com local環境で書いたLaravelのコードをすぐにvagrant上で動作確認したい 開発しているPCにPHP7を入れるのはめんどいので動作確認はVagrant上でした 書いたコードが即VagrantのVMに反映されて動作…

Ansibleを使ってPHP7環境をVagrant上に構築してLaravelに入門

この記事は Laravel Advent Calender 2017 7日目の記事です。 昨日の記事は LaravelのControllerクラスって何やってるの? - Qiita でした Laravel DI からはじまり何もかもが揃っていてグッドなフルスタックフレームワークLaravelを使っていきましょう。Ans…

Code Quest 「毒沼ノ試練」を頑張って探索してクリアする

この記事は 〇〇勉強してみた Advent Calendar 2017 の6日目の記事です。 昨日も書いた Code Quest の記事ですが、今回は皆が一番苦戦したであろう「毒沼ノ試練」について書こうと思います。 Code Quest プログラミング学習用ゲーム的な、あるいはプログラミ…