アーカイブ 2019

45 件の記事

2019年の振り返りと来年の抱負
ポエム 2019-12-21

2019年の振り返りと来年の抱負

2019年の1年を振り返り、来年の抱負を綴った記事。公私ともに良い機会や経験に恵まれた一年をポエムとして総括し、リードエンジニア的な役回りの経験などを振り返りつつ、翻年への抱負をまとめる。

#振り返りと抱負
URLルーティング自作入門 エピソード2
アプリケーション 2019-12-15

URLルーティング自作入門 エピソード2

「URLルーティング自作入門」シリーズのエピソード2です。エピソード1に続き、URLルーティングをトライ木を使って実装していきます。パスのマッチング処理や、HTTPメソッドに対応した動的なルーティングの構造について、図解を交えながら実装を進めていきます。

#HTTP#URLルーティング#router
URLルーティング自作入門 エピソード1
アプリケーション 2019-12-14

URLルーティング自作入門 エピソード1

「URLルーティング自作入門」シリーズのエピソード1です。趣味でURLルーティングを自作してきた経験から、自作の敷居や応用範囲について触れつつ、ルーティングに使う木構造のアルゴリズムや、各種Webフレームワークの参考実装を探索していくモチベーションを紹介します。

#HTTP#URLルーティング#router
2019年の全PHPカンファレンスをコンプリートした
ポエム 2019-12-03

2019年の全PHPカンファレンスをコンプリートした

2019年の日本のPHPカンファレンス(仙台・Laravel JP・PHPerKaigi・福岡・北海道・沖縄)を全制覇した記録を紹介します。

#PHP#PHPカンファレンス
Design It
アーキテクチャ 2019-11-25

Design It

『Design It』の書評。ソフトウェアアーキテクトが果たすべき役割や責任を学べる一冊。アーキテクトをビジネス・技術・ユーザーの3要素の中心に立つ存在として捉え、エンジニアリング視点からの問題定義など具体的な責務を整理する。

#アーキテクト#書評
アルゴリズムとデータ構造 - キュー
アルゴリズムとデータ構造 2019-11-17

アルゴリズムとデータ構造 - キュー

アルゴリズムとデータ構造を学ぶシリーズの記事。FIFOのキューというデータ構造を取り上げ、enqueue・dequeueの操作やスタックとの計算量の比較を、Goでの実装例とともに解説する。

#データ構造
アルゴリズムとデータ構造 - スタック
アルゴリズムとデータ構造 2019-11-17

アルゴリズムとデータ構造 - スタック

アルゴリズムとデータ構造を学ぶシリーズの記事。LIFOのスタックというデータ構造を取り上げ、push・pop・peekの操作と計算量を、Goのスライスを使った実装例とともに解説する。

#データ構造
GolangのHTTPサーバーのコードリーディング (Go6 Advent Calendar 2019)
アプリケーション 2019-11-03

GolangのHTTPサーバーのコードリーディング (Go6 Advent Calendar 2019)

Qiita Go6 Advent Calendar 2019向けにGolangのHTTPサーバー内部実装をコードリーディング。net/httpパッケージのListenAndServe、ServeMux、Handlerインターフェースの動作を詳細に解析。

#Golang#コードリーディング#router
アルゴリズムとデータ構造 - 配列
アルゴリズムとデータ構造 2019-10-31

アルゴリズムとデータ構造 - 配列

アルゴリズムとデータ構造を学ぶシリーズの記事。データ構造としての配列を取り上げ、O(1)のランダムアクセスやO(n)の挿入・削除、静的・動的なメモリ確保の違いを、Goでの実装例とともに解説する。

#データ構造
アルゴリズムとデータ構造 - リスト
アルゴリズムとデータ構造 2019-10-18

アルゴリズムとデータ構造 - リスト

単方向連結リストの仕組みを解説。O(n)のアクセスとO(1)の挿入・削除、ポインタによるノードの走査、Goでの線形連結リスト実装を紹介します。

#データ構造
PHPカンファレンス沖縄2019に参加してきた
ポエム 2019-10-13

PHPカンファレンス沖縄2019に参加してきた

PHPカンファレンス沖縄2019で聞いた、PHPのメタプログラミング、OOP、クリーンアーキテクチャ、DDD、Webセキュリティ、ミューテーションテストなどのセッションを紹介します。

#PHP#PHPカンファレンス
PHPカンファレンス北海道2019に参加してきた
ポエム 2019-10-06

PHPカンファレンス北海道2019に参加してきた

PHPカンファレンス北海道2019で聞いた、PHPの基礎、CI/CD、マイクロサービス、テスト、CPUアーキテクチャなどのセッションを紹介します。

#PHP#PHPカンファレンス
FuelPHP1.8.0→1.8.2、PHP5.6→PHP7.3へのバージョンアップした
アプリケーション 2019-10-05

FuelPHP1.8.0→1.8.2、PHP5.6→PHP7.3へのバージョンアップした

FuelPHP 1.8.0から1.8.2、PHP 5.6から7.3へアプリケーションをバージョンアップした際の作業内容と対応ポイントをまとめます。

#PHP#FuelPHP
DockerのOperation not permittedというエラーに対応する
インフラストラクチャ 2019-09-27

DockerのOperation not permittedというエラーに対応する

Docker Composeを使ってGoのテストを実行した際に遭遇した「Operation not permitted」というエラーへの対応メモです。エラーが発生する原因と、privilegedオプションやケーパビリティの付与などによって解決するための方法を紹介します。

#Docker#Docker Compose#Linux#linux capabilities#seccomp#Tips
Golangでトライ木(Trie)を実装する|前方一致検索
アルゴリズムとデータ構造 2019-09-24

Golangでトライ木(Trie)を実装する|前方一致検索

トライ木(プレフィックス木)というデータ構造のアルゴリズムと、そのGoでの実装についてまとめた記事です。O(m)で検索・挿入ができる特徴や、HTTPルーティングなどへの応用、Radix Treeとの使い分けについて、挿入・検索の実装例を交えて解説します。

#Golang#データ構造
Dockerizeを使ってDocker Composeのコンテナの起動順を制御する
インフラストラクチャ 2019-09-17

Dockerizeを使ってDocker Composeのコンテナの起動順を制御する

Dockerizeを使ってDocker Composeのコンテナ起動順を制御する方法。depends_onだけでは不十分な理由、tcp://host:portの待機の仕組み、実践的なdocker-compose例を解説します。

#Docker#Docker Compose#Dockerize
Mackerelで監視対象から外れたホストを再度復帰させる方法
インフラストラクチャ 2019-09-17

Mackerelで監視対象から外れたホストを再度復帰させる方法

Mackerelの監視対象から誤ってホストを退役させてしまったり、意図せず監視対象から外してしまったりしたときに、そのホストを復帰させる方法をまとめたメモです。mackerel-agentを再起動しても自動では復帰しないため、hostIdを更新して対応する実務的な手順をガイドします。

#Mackerel#Tips
Goでクリーンアーキテクチャを実装する実践ガイド
アプリケーション 2019-08-18

Goでクリーンアーキテクチャを実装する実践ガイド

Go でクリーンアーキテクチャを実践する方法を解説。レイヤー分離・依存ルール・ディレクトリ構成・実際のトレードオフを具体的なコードで学べます。

#Clean Architecture#Golang#DIP
MySQLでテストデータを生成するSQL
データベース 2019-07-16

MySQLでテストデータを生成するSQL

MySQLだけでテストデータを生成するSQLの書き方についてまとめたメモです。テストデータをスクリプトで生成する方法は柔軟性が高い一方、数万件のレコードでパフォーマンステストをしたいときなどは、SQLだけでも十分な場合があります。その具体的な書き方を紹介します。

#MySQL#sql#cross join
PHPカンファレンス福岡2019に参加・登壇してきました
ポエム 2019-07-04

PHPカンファレンス福岡2019に参加・登壇してきました

PHPカンファレンス福岡2019に参加・登壇。PHPでのURLルーティング作成の発表や、クリーンアーキテクチャ、コード削除のベストプラクティスを紹介します。

#PHP#PHPカンファレンス