記事一覧

技術記事・日々の学びをまとめています。

モダンなJSの話──Destructuring assignment(分割代入)
アプリケーション 2017-12-25

モダンなJSの話──Destructuring assignment(分割代入)

モダンなJavaScriptの分割代入(Destructuring assignment)について解説する記事です。配列やオブジェクトのデータをそれぞれ別個の変数に取り出す書き方を、デフォルト値の指定や、別名(エイリアス)を付ける方法などの実例とともに紹介します。

#ES5#ES6#JavaScript

最新記事

モダンなJSの話──importとexport
アプリケーション 2017-12-25

モダンなJSの話──importとexport

JavaScriptのES6 import/export文を解説。名前付きエクスポート、デフォルトエクスポート、モジュールの構成方法を紹介します。

#ES5#ES6#JavaScript
モダンなJSの話──var/let/const
アプリケーション 2017-12-25

モダンなJSの話──var/let/const

JavaScriptのvar・let・const宣言を解説。スコープの種類、巻き上げ(hoisting)、Temporal Dead Zoneの挙動を紹介します。

#ES5#ES6#JavaScript
Reactでマークダウンエディタをシャッとつくる
アプリケーション 2017-12-25

Reactでマークダウンエディタをシャッとつくる

markedライブラリを使って、入力した内容をその場で表示できるライブプレビュー対応のマークダウンエディタを、Reactでサクッとつくる方法を解説する記事です。ビルド環境のセットアップを簡単に済ませつつ、Markdownを変換して表示するエディタを実装する手順を紹介します。

#ES5#ES6#JavaScript#React
Being Geek ギークであり続けるためのキャリア戦略
キャリア 2017-12-23

Being Geek ギークであり続けるためのキャリア戦略

『Being Geek ギークであり続けるためのキャリア戦略』の書評。ギークが書いた本だが、ギークでなくともエンジニアであれば学びの多い一冊。エンジニアとしての姿勢や考え方が、少しクセのある語り口で率直に綴られており、手元に置いて折に触れ読み返したくなる。

#書評
PHPカンファレンス2017で、「3年目エンジニアOSSをはじめる」というテーマでLT登壇してきました
ポエム 2017-10-11

PHPカンファレンス2017で、「3年目エンジニアOSSをはじめる」というテーマでLT登壇してきました

2017年10月8日に開催されたPHPカンファレンス2017で、LTに初めて登壇した際の記録です。「3年目エンジニア、OSSをはじめる」をテーマに発表し、自作のOSSがコミュニティからStarを得られたことなど、初登壇を通して得た経験や気づきを紹介します。

#OSS#PHP#LT#PHPカンファレンス
テスト駆動開発
テスト 2017-10-08

テスト駆動開発

『テスト駆動開発』の書評。Kent BeckによるTDDの原典。テストを先に書き、レッド・グリーン・リファクタリングのサイクルを回して設計を育てる手法を、実際の例を通じて学べる。TDDを学ぶならまず手に取りたい一冊。

#書評
macにanyenvをインストールする
インフラストラクチャ 2017-10-01

macにanyenvをインストールする

Macにanyenvをインストールする手順をまとめた記事です。若干ハマったところがあったためメモとして残しています。PATHや環境設定を整え、複数のプログラミング言語のバージョンをanyenvで管理できるようにするまでの流れを解説します。

#Shell Script#anyenv
LaravelにbowerでReactを導入してみる
アプリケーション 2017-10-01

LaravelにbowerでReactを導入してみる

統合するLaravelとReact。bowerパッケージマネージャー、Babel、JSX構文、gulp/elixirによるビルド環境構築の実装手法を解説

#Laravel#React
Laravelのデプロイツール Laravel Envoy を使ってみる
インフラストラクチャ 2017-10-01

Laravelのデプロイツール Laravel Envoy を使ってみる

Laravelのデプロイツール「Laravel Envoy」を解説。タスク定義、git hooks、Slackへのデプロイ通知などを使って効率的にデプロイする方法を紹介します。

#Laravel#デプロイ
Laravelでエラーメッセージを共通のテンプレートで対応する方法
アプリケーション 2017-10-01

Laravelでエラーメッセージを共通のテンプレートで対応する方法

実装するLaravelのエラー処理。HandlerクラスでのHttpException対応、共通テンプレート設計、カスタムエラーページの実装パターン

#Laravel
Laravelのフォームリクエストでバリデーションされる値をカスタマイズする
アプリケーション 2017-10-01

Laravelのフォームリクエストでバリデーションされる値をカスタマイズする

Laravelのフォームリクエストで、バリデーションの対象となる値をカスタマイズする方法を解説します。たとえば/post/:id/deleteのようなエンドポイントで、リクエストボディだけでなくルートパラメータにもバリデーションをかけたい、といった場面で役立つ手法です。

#Laravel
Laravelの多対多のリレーションでテーブル名を規則から外す時
アプリケーション 2017-10-01

Laravelの多対多のリレーションでテーブル名を規則から外す時

Laravelの多対多リレーションを設計する際に、Eloquentが規約から自動で決める中間(ピボット)テーブル名を、任意の名前にカスタム指定する方法を解説します。ドキュメント通りに進めたつもりで少し勘違いした体験をもとに、命名規則と明示的な指定方法を整理します。

#Laravel
Laravelのredirect('hoge')とredirect()->to('hoge')の違い
アプリケーション 2017-10-01

Laravelのredirect('hoge')とredirect()->to('hoge')の違い

Laravelのリダイレクトで何となく使い分けていた、redirect('hoge')とredirect()->to('hoge')の違いが気になって調べてみた記事です。それぞれのヘルパー関数が内部でどう動くのかを確認し、どちらをどう使うべきかを整理します。

#Laravel
LaravelにSPAを組み込む時に考えたディレクトリ構成とnginxのconfファイル
インフラストラクチャ 2017-10-01

LaravelにSPAを組み込む時に考えたディレクトリ構成とnginxのconfファイル

Laravelで作っているアプリケーションに、管理画面だけSPAを組み込もうとした際の記録です。フロントエンドとバックエンドをうまく振り分けるためのディレクトリ構成の考え方と、リクエストをルーティングするnginxの設定について、初めての試みをメモとしてまとめました。

#Laravel#React#Nginx
letsencryptの証明書自動更新(cron)とちょっとだけSlack連携
インフラストラクチャ 2017-10-01

letsencryptの証明書自動更新(cron)とちょっとだけSlack連携

長らく忘れていたLet's Encrypt証明書の自動更新を、シェルスクリプトとcronで設定する方法を解説します。証明書を定期的に自動更新するとともに、更新の成功・失敗をSlackに通知して連携させる仕組みまでを、実際の設定例とあわせて紹介します。

#cron#Let's Encrypt#Shell Script#Slack
Let'sEncryptの証明書自動更新に失敗し続けていたけど何とかした話
インフラストラクチャ 2017-10-01

Let'sEncryptの証明書自動更新に失敗し続けていたけど何とかした話

以前書いたLet's Encrypt証明書の自動更新スクリプトが、手動では成功するのにcronで実行すると毎回失敗する、という問題に悩まされていました。この記事では、その原因を探ってスクリプトを見直し、cronでも正しく自動更新が動くようにするまでの過程をまとめます。

#cron#Let's Encrypt#Slack#Shell Script
Letsencryptの証明書自動更新スクリプト
インフラストラクチャ 2017-10-01

Letsencryptの証明書自動更新スクリプト

Let's Encryptの証明書を毎月自動で更新するシェルスクリプトを紹介する記事です。以前から作っていたものの、不具合やサーバー環境の変化で完全版を残せていなかったため、改めてまとめました。シェルスクリプトの自動実行とSlack通知の連携までを解説します。

#cron#Let's Encrypt#Shell Script#Slack
php7をインストールした時にmysqlドライバーがなかった
インフラストラクチャ 2017-10-01

php7をインストールした時にmysqlドライバーがなかった

PHP7をインストールした際にMySQLドライバーがない問題を、REMI yumリポジトリからphp-mysqlndを入れて解決する方法を解説します。

#CentOS#MySQL#PHP#PHP7#さくらのVPS#yum
Nginxをリバースプロキシとして設定する
インフラストラクチャ 2017-10-01

Nginxをリバースプロキシとして設定する

Apacheで運用していたさくらVPSに、Nginxをリバースプロキシとして設定した際のメモです。ApacheとNginxを併用する構成やポート番号の変更、バーチャルホストの設定、ロードバランシングなど、リバースプロキシを構築するうえでのポイントをまとめます。

#CentOS#Nginx#Apache#さくらのVPS