Blog

Articles, guides, and notes on software engineering.

Algorithms and Data Structures - Lists
Algorithms and Data Structures 2019-10-18

Algorithms and Data Structures - Lists

Learn how singly linked lists work: O(n) access vs. O(1) insertion/deletion, pointer-based node traversal, and a Go implementation of a linear linked list.

#Linked List#Singly Linked List

Recent Posts

Attending PHP Conference Okinawa 2019
Poem 2019-10-13

Attending PHP Conference Okinawa 2019

Master PHP metaprogramming, OOP, clean architecture, DDD, web security, mutation testing, and code quality preservation.

#PHP#PHP Conference
Attended PHP Conference Hokkaido 2019
Poem 2019-10-06

Attended PHP Conference Hokkaido 2019

Discover PHP fundamentals, CI/CD pipelines, microservices, testing frameworks, and CPU architecture concepts from sessions.

#PHP#PHP Conference
Upgrading from FuelPHP 1.8.0 to 1.8.2 and PHP 5.6 to PHP 7.3
Application 2019-10-05

Upgrading from FuelPHP 1.8.0 to 1.8.2 and PHP 5.6 to PHP 7.3

Summary of the application version upgrade from FuelPHP 1.8.0 to 1.8.2 and PHP 5.6 to PHP 7.3.

#PHP#FuelPHP
Handling Docker 'Operation not permitted' Error
Infrastructure 2019-09-27

Handling Docker 'Operation not permitted' Error

Fix the Docker Operation not permitted error in docker-compose by adding privileged: true or using cap_add: SYS_ADMIN with seccomp:unconfined to grant required Linux capabilities.

#Docker#Docker Compose#Linux#Linux Capabilities#Seccomp#Tips
Implementing a Trie in Golang
Algorithms and Data Structures 2019-09-24

Implementing a Trie in Golang

Learn how Trie (prefix tree) data structures work: O(m) search and insertion, applications in HTTP routing and IP lookups, and a Go implementation of insert and search operations.

#Golang#Radix Tree#Trie
Controlling Container Startup Order with Dockerize in Docker Compose
Infrastructure 2019-09-17

Controlling Container Startup Order with Dockerize in Docker Compose

Control container startup order in Docker Compose using Dockerize. Learn why depends_on is insufficient, how Dockerize waits for tcp://host:port readiness, and a practical docker-compose example.

#Docker#Docker Compose#Dockerize
How to Restore Hosts Removed from Monitoring in Mackerel
Infrastructure 2019-09-17

How to Restore Hosts Removed from Monitoring in Mackerel

Recover accidentally excluded monitoring hosts in Mackerel by updating hostId after host migration or removal from monitoring system.

#Mackerel#Tips
Clean Architecture in Go: A Practical Implementation Guide
Application 2019-08-18

Clean Architecture in Go: A Practical Implementation Guide

Learn how to implement Clean Architecture in Go with practical code. Covers layer separation, dependency rules, directory structure, and real-world trade-offs.

#Clean Architecture#Golang#DIP
SQL for Generating Test Data in MySQL
Database 2019-07-16

SQL for Generating Test Data in MySQL

A note on generating test data using only MySQL.

#MySQL#SQL#Cross Join
Participated and Presented at PHP Conference Fukuoka 2019
Poem 2019-07-04

Participated and Presented at PHP Conference Fukuoka 2019

Understand URL routing creation in PHP through conference talk, clean architecture, and code deletion best practices.

#PHP#PHP Conference
Web Frontend High-Performance Tuning
Performance 2019-05-29

Web Frontend High-Performance Tuning

Web Frontend High-Performance Tuning

#Frontend#Performance Tuning#Book Review
Engineer’s Intellectual Productivity Techniques ── Learning, Organizing, and Outputting Efficiently
Business 2019-05-14

Engineer’s Intellectual Productivity Techniques ── Learning, Organizing, and Outputting Efficiently

Engineer’s Intellectual Productivity Techniques ── Learning, Organizing, and Outputting Efficiently

#Book Review#Productivity Techniques
Redirect with exec Command
Application 2019-05-08

Redirect with exec Command

Master shell exec command for dynamic file descriptor redirection, input/output control, and terminal manipulation.

#bash#shell script#exec
Prompt Confirmation When Pushing Directly to Master
Application 2019-05-08

Prompt Confirmation When Pushing Directly to Master

How to create a safety net to prevent direct pushes to the master branch in git.

#Git#Shell Script
Note on Volumes Not Being Deleted Even After Removing Docker Images and Containers
Infrastructure 2019-04-28

Note on Volumes Not Being Deleted Even After Removing Docker Images and Containers

Learn why Docker volumes persist after removing containers and images, how to inspect and remove orphaned volumes with docker volume ls/rm, and the shortcut docker-compose down --rmi all -v.

#Docker#Docker Compose
Learning Design Patterns with PHP - State Pattern
Application 2019-04-20

Learning Design Patterns with PHP - State Pattern

Learn the State pattern to switch behavior dynamically by encapsulating state-specific processing in separate classes.

#GoF#PHP#Design Pattern#State Pattern
10 Software Laws Learned from Gorillas
Application 2019-04-17

10 Software Laws Learned from Gorillas

Understand key software development laws including Parkinson's, Brooks's, and Conway's Law to improve project management.

#Software Development
Notes on Implementing Hot Reload with Realize in Go
Application 2019-04-11

Notes on Implementing Hot Reload with Realize in Go

A memo on using Realize for hot reloading in Go applications.

#Golang#realize
Participated and Presented at PHPerKaigi2019
Poem 2019-04-01

Participated and Presented at PHPerKaigi2019

Discover insights from PHPerKaigi 2019 conference participation, including presentation experiences and URL routing design.

#PHP#PHP Conference#PHPerKaigi