Blog
Articles, guides, and notes on software engineering.
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.
Recent Posts
Attending PHP Conference Okinawa 2019
Master PHP metaprogramming, OOP, clean architecture, DDD, web security, mutation testing, and code quality preservation.
Attended PHP Conference Hokkaido 2019
Discover PHP fundamentals, CI/CD pipelines, microservices, testing frameworks, and CPU architecture concepts from sessions.
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.
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.
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.
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.
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.
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.
SQL for Generating Test Data in MySQL
A note on generating test data using only MySQL.
Participated and Presented at PHP Conference Fukuoka 2019
Understand URL routing creation in PHP through conference talk, clean architecture, and code deletion best practices.
Web Frontend High-Performance Tuning
Web Frontend High-Performance Tuning
Engineer’s Intellectual Productivity Techniques ── Learning, Organizing, and Outputting Efficiently
Engineer’s Intellectual Productivity Techniques ── Learning, Organizing, and Outputting Efficiently
Redirect with exec Command
Master shell exec command for dynamic file descriptor redirection, input/output control, and terminal manipulation.
Prompt Confirmation When Pushing Directly to Master
How to create a safety net to prevent direct pushes to the master branch in git.
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.
Learning Design Patterns with PHP - State Pattern
Learn the State pattern to switch behavior dynamically by encapsulating state-specific processing in separate classes.
10 Software Laws Learned from Gorillas
Understand key software development laws including Parkinson's, Brooks's, and Conway's Law to improve project management.
Notes on Implementing Hot Reload with Realize in Go
A memo on using Realize for hot reloading in Go applications.
Participated and Presented at PHPerKaigi2019
Discover insights from PHPerKaigi 2019 conference participation, including presentation experiences and URL routing design.