After 30 years, I still find the problems more interesting than the answers.

I'm a Technical Solutions Architect. I write about what I'm working through — AI in real applications, architecture trade-offs, and the gap between how systems are designed and how they actually behave.

The systems I build — PromptSpark, WebSpark, GitSpark, DevSpark — aren't just portfolio pieces. They're how I test whether my ideas hold up under production constraints.

About Me

I've been writing software since the early 1990s — through client-server, the web, cloud, and now AI-augmented development. Each wave brought new tools and new versions of the same fundamental questions about how systems should be structured, how decisions should be made, and how to know when something is working.

I started writing publicly because the act of explaining something is how I find out what I actually understand. The blog posts here are where I work through those questions — not polished conclusions, but honest explorations. Some of them turn out to be wrong. That's fine.

More about my background

Systems Built to Test Ideas

Each system holds some constraints constant and changes others. The comparisons expose trade-offs that are hard to see from specs alone.

DevSpark

Spec, build, validate, evolve

DevSpark is an implementation of Adaptive System Life Cycle Development (ASLCD), a full lifecycle model for building software with AI collaborators. It carries intent from specification through implementation, validation, and evolution.

PromptSpark.Chat

Operational prompt workflows for real applications

PromptSpark.Chat explores how prompt systems behave when they become part of an application workflow. It focuses on structured conversations, reusable prompt assets, and practical integration patterns.

DocSpecSpark

Documentation that becomes implementation context

DocSpecSpark frames documentation as a working system asset instead of a static afterthought. It supports the bridge from architectural intent to implementation-ready specifications.

Coming SoonView Code

TailwindSpark

A controlled frontend architecture comparison

TailwindSpark is a React and Tailwind implementation that consumes shared service patterns while emphasizing composition and utility-first design. Its value is clearest when compared with BootstrapSpark against the same architectural constraints.

Same APIs. Different Systems.

TailwindSpark, BootstrapSpark, PromptSpark, and supporting services make architecture visible by holding some constraints constant and changing others. The point is not to crown a framework; it is to see how complexity moves.

Architecture As Evidence

The shared service layer connects WebSpark, PromptSpark, GitHub Repository Spark, and markhazleton.com content. That connection turns portfolio work into a living architecture study.

Explore the Architecture