Post

2017-10-11 21:49:26

PHPカンファレンス2017で、「3年目...

初登壇! 2017年10月8日、PHPカンファレンス2017にて、LT初登壇してきました。 初めてのLTでPHPカンファレンスという舞台に立てて、自分としてはとても良い経験になりました。 スライド Speaker Deck - 3年目エンジニアOSSをはじめる by bmf_san 「3年目エンジニアOSSをはじめる」というテーマで、自分のOSSプロダクトを紹介しつつ、OSSに取り組んだ背景や学び得たことなどについてお話しました。 動画 Japan PHP Conference Track1 (LT) - LT, クロージング 内容をもっとブラッシュしておくべきだったと反省しています。。。 R...

ポエム

oss php LT phpカンファレンス

2017-10-01 16:44:38

単一テーブル継承・クラステーブル継承...

概要 リレーショナルなデータベースは継承をサポートをしていないので、オブジェクトの継承関係をデータベースにどのように表現するのか考慮する必要があります。それを表現する3つのパターン、単一テーブル継承・クラステーブル継承・具象クラス継承とはについて説明します。  ※各パターンの実装におけるメリット・デメリット等には触れません。 前提 今回想定する登場するクラスは4つです。 Rarty PeopleがRich Peopleを継承するという構造はちょっとわかりづらいかもしれませんが、イメージが伝われば良しとします。 People(人々) 全クラスに共通する属性を持っています。 idは一意なキーで...

プログラミング

PofEAA

2017-10-01 16:34:53

さくらVPS+CentOS7.3+Ans...

概要 AnsibleでさくらVPSの初期セットアップを自動化します。 環境 さくらVPS CentOS7.3 Ansible2.2.1.0 前提知識 さくらVPSをの初期設定の流れを理解していること。 さくらVPSの初期設定 さくらVPSにCentOS7をインストール さくらVPSのコンソール画面からOSインストール>カスタムOSインストールを選択してCentOS7をインストールしておきます。インストールが開始されると、CentOS7のインストール用コンソール画面(VNCコンソールのHTML5版かJava Applet版)を開くことができるので、環境に合わせて好きな方を選びま...

インフラ

ansible centos sakuravps Iaas

2017-10-01 16:34:12

Vagrant上のMySQLで"MyS...

LaravelでマイグレーションやSQLファイルのインポートを繰り返したり、中断したりと無茶をやっていたらMySQLがおかしくなりました。 対応 MySQLの設定ファイルにログサイズを設定したら直りました。 innodb_log_file_size=5M 所感 無茶はやめよう! 参考 "Plugin 'InnoDB' registration as a STORAGE ENGINE failed" というエラーで MySQL サービスを起動できません症状 innodb_log_file_sizeを気軽に変えると死ぬよ

インフラ

mysql vagrant

2017-10-01 16:31:05

Vagrantを1.7.4から1.9.1...

Vagrantのバージョンが1.7.4というちょっと古いバージョンだったのでアップデートしてみたらネットワーク周りでエラーがでてハマった話です。 エラー詳細 "/etc/udev/rules.d/70-persistent-net.rules" is not a file ==> default: Configuring and enabling network interfaces... The following SSH command responded with a non-zero exit status. Vagrant assumes that this means the...

プログラミング

apache vagrant virtualbox

2017-10-01 16:30:03

VagrantでVirtualHost...

VagrantBoxを作りっぱなしでほったらかしな仮想環境を維持してきたのですが、今更ながらVirtualHostの設定をしました。 やること vagrant-hostupdaterのインストールとVagrantfileの設定 Apacheのconfファイルの設定(VirtualHostの設定) やらないこと vagrantのインストール symbolic linkの設定とか面倒なこと 環境 Vagrant vagrant-hostsupdater・・・今回インストールするvagrantのpluginです。 CentOS6系 Apache Hosts・・・インストールしておくとMAC...

プログラミング

vagrant

2017-10-01 16:29:26

VagrantでCentOS6.7の開...

概要 最近、Boxを再構築した際に、「Vagrant開発環境のワークフローをちゃんとまとめておきたい」と思ったのでまとめてみました。レポジトリにほぼ同じワークフローメモがあります。 github - bmf-san/vagrant-development-workflow 前提 以下のアプリケーションがホストマシン(Mac)にインストールされていること Vagrant VirtualBox 環境 ホストマシン(Mac) macOS Sierra v10.12.2 仮想環境 CentOS6.7 構築手順 開発環境ディレクトリにて、Vagrantfileを作成する vagrant...

インフラ

apache centos vagrant

2017-10-01 16:28:26

Vagrant+CentOS7.3+An...

概要 AnsibleでVagrantの環境構築をする最初の一歩です。プロビジョニングができる環境を整えます。 環境 Vagrant1.9.1 CentOS7.3 Ansible2.2.1.0 CentOS7.3のVagrnat Boxを用意する 任意のディレクトリ(例として今回はcentos7.3)にてVagrant環境を構築します。 vagrant box add https://atlas.hashicorp.com/centos/boxes/7vagrant init ここまでのディレクトリ構成 centos7.3/ ├── .vagrant.d ├── Vagrantfile ※デ...

インフラ

ansible centos vagrant

2017-10-01 16:27:12

Slack+hubot+cron(nod...

以前、slackとhubotでShellScriptをSlackから実行しようという記事を書きました。さくらvps+hubot+Slackでslack botをつくる 今回は対話形式のコマンド実行ではなく、cronで定期的にShellScriptを実行、Slackに出力結果を報告しようという試みです。 意外とこの類いのコピペでパクれるリスペクトできる参考ソースが調べても出てこなかったので、途中で挫折仕掛けましたw API叩いてcrontabで回すという無難な方法もありましたが、せっかくつくったhubotを活躍させたかったので頑張りました。 注意: この記事を執筆している時は確かに動いていたので...

インフラ

cron centos slack sakuravps coffeescript hubot logwatch shell

2017-10-01 16:26:00

redux-formのサーバーサイド...

概要 redux-formでサーバーサイドのバリデーションを実装している時に、promissをいじってredux-formのSubmissionErrorを投げていたらUncaught (in promise) errorと怒られた話です。 解決策 returnがなかっただけでした。 修正前 class Categories extends Component { onSubmit(props) { const {createCategory, fetchCategories, reset} = this.props; createCategory(props).then...

プログラミング

react redux redux-form