Notes from 12+ years of PHP & WordPress development.
Tutorials, lessons and architecture decisions from the work I do every day — building WordPress plugins, Laravel applications and small SaaS products from Kathmandu, Nepal.
Recent posts
Long-form notes on WordPress plugin development, Laravel architecture, code rescue and the practical side of running an engineering project. Each post is designed to stay useful for several years — patterns and decisions rather than version-specific tutorials.
The posts below come out of 12+ years of building production WordPress plugins, Laravel applications and PHP systems from Kathmandu, Nepal. Three topic clusters I write about most often:
- WordPress plugin engineering — architecture, security, the WordPress.org review process, hook patterns and the maintenance side most tutorials skip. See the plugin architecture and security checklist posts.
- Code rescue and audits — inheriting an existing PHP codebase, sizing the rescue, writing the report a buyer can actually act on. See auditing a legacy PHP codebase.
- Stack decisions and hiring — when to pick WordPress vs Laravel, and how to hire a senior developer from Nepal without burning your timeline. See WordPress vs Laravel and the buyer's guide to hiring.
-
Hire a WordPress developer in Nepal: what to ask, what to avoid
A buyer's guide. The questions that separate seniors from juniors, the red flags worth walking away from, and how to scope a low-risk trial.
-
Auditing a legacy PHP codebase before you inherit it
What to read first, the smells that matter, how to scope the rescue and what to put in the report. The audit I run before I quote.
-
WordPress vs Laravel: when to pick which
A practical decision framework, not a tribal war. Three questions that decide it, and the hybrid that often wins.
-
WordPress plugin security checklist every developer should follow
Sanitize, escape, capability-check, prepared statements, REST permissions and the patterns to make all of them habit.
-
WordPress plugin architecture for the long haul
Folder structure, autoloading, hooks-as-seams, schema versioning, settings, i18n. The structure I reach for when a plugin needs to survive five years of feature creep.