Blog

Writing & Notes

Technical posts on development, design patterns, Android, PHP, and lessons learned along the way.

Autoloading Classes in PHP with __autoload()

Eliminating repetitive include statements in PHP by leveraging the __autoload() function for automatic class loading.

PHPJanuary 30, 2011

Understanding the Data Transfer Object Pattern

A practical guide to Data Transfer Objects: what they are, why they matter, and how to implement them for cleaner architecture.

DevelopmentApril 24, 2011

Decoupling Classes with Interfaces in OOP

A practical guide to using interfaces for decoupling tightly bound classes, illustrated with an Android development example.

DevelopmentSeptember 14, 2011

Writing Clean, Maintainable Functions

Practical principles for writing functions that are readable, efficient, and easy to maintain.

DevelopmentNovember 16, 2011

Reducing Redundancy in Database Design

How to identify and eliminate field-level redundancy across database entities using shared reference tables.

DevelopmentNovember 27, 2011

Merging PHP Arrays While Preserving Indexes

A concise technique for merging PHP arrays without resetting their original index keys.

PHPOctober 23, 2011

What Mobile Development Teaches Us About Enterprise Software

How the strict constraints of mobile development cultivate engineering discipline that translates directly to enterprise systems.

DevelopmentOctober 13, 2011

Customizing ListView Appearance in Android

A guide to styling Android ListViews, covering background configuration, color hints, dividers, and selection states.

AndroidAugust 21, 2011

Implementing Press States for Android Buttons

How to implement visual press feedback on Android buttons and images using state list drawables.

AndroidSeptember 12, 2011

Preventing Duplicate Actions from Rapid Taps in Android

A straightforward pattern for preventing duplicate action triggers when users tap buttons multiple times in quick succession.

AndroidOctober 13, 2011

Controlling Back Button Behavior in Android

How to override or disable the hardware back button in Android, with guidance on when and why to use this approach.

AndroidNovember 3, 2011

Building a Navigation Stack for Android UI

Implementing a fragment-based navigation stack to provide intuitive back-button behavior in multi-screen Android applications.

AndroidNovember 3, 2011

Implementing Option Menus in Android Activities

A step-by-step guide to creating and handling option menus in Android Activities.

AndroidAugust 19, 2012

On Steve Jobs: Execution as a Form of Greatness

Reflecting on Steve Jobs' impact and why execution and vision deserve recognition alongside pure invention.

OthersOctober 27, 2011

Choosing a Programming Language: A Practical Framework

A practical perspective on choosing which programming language to specialize in, based on career experience across multiple platforms.

OthersNovember 28, 2011

Understanding the Landscape of Software Companies

A guide to the different types of software companies and what each environment offers for career development.

OthersDecember 6, 2011

Managing Facebook Privacy with Friend Lists

A practical approach to controlling content visibility on Facebook using custom friend lists.

Tips & TricksDecember 31, 2011

Recovering Data from a Corrupted File System with TestDisk

A step-by-step guide to recovering data from a drive with a corrupted file system using the open-source tool TestDisk.

Tips & TricksAugust 12, 2012

Fixing Broken Search in Outlook 2007

How to resolve the Outlook 2007 search indexing issue by rebuilding the search index.

Tips & TricksMay 11, 2011