Blog

Technical articles and historical engineering writing on software and systems engineering, real-time data processing, artificial intelligence, speech and signal processing, digital forensics, cybersecurity and algorithms.

The Blog contains my technical articles on software and systems engineering, artificial intelligence, digital forensics, cybersecurity, and the history of technology.

Resilient Backfill for Date-Partitioned Data

For date-partitioned backfills, progress can be derived from completed outputs instead of an in-memory cursor. Data-closure time, missing-partition discovery, atomic publication, and idempotent effects determine restart behavior.

Deterministic Scheduling with Identity Modulo

Mapping an identity value modulo 24 assigns records deterministically to fixed hours without additional coordination state; the same identity always maps to the same hour.

Deterministic Time Axis in PCM Processing

In PCM processing, media time is derived from the number of samples processed per channel rather than the wall clock. The same counter keeps stereo frames, partial reads, and segment boundaries on one time axis.

Shannon Capacity and the Geometry of Information

The geometry of signal, noise, and distinguishable regions in Shannon channel capacity provides a useful way to reason about capacity and robustness in embedding and latent spaces.

Max Normalization in Map Visualizations

Max normalization divides each value by the highest value in the selected set. Interpreting the resulting map colors requires attention to outliers, comparisons across periods, missing values, negative data, and denominator choice.

Queue Stability in ASR Systems

RTF alone does not determine ASR capacity; arrival rate, segment duration, service-time distribution, batching, and heterogeneous workers jointly determine whether the queue remains stable.

Deterministic Speaker Separation in Stereo Streams

When a stereo recording system binds the left and right channels to fixed speakers, identity does not need to be estimated again biometrically. Independent VAD decisions and a single-active-segment state turn channel ownership into repeatable segments.

When Noise Becomes a Weapon

The effect of noise is not determined by sound level alone; temporal pattern, spectral content, predictability, and context can change its impact on sleep, attention, and stress.

Change-Resilient Architecture with SOLID

SOLID is useful for controlling reasons for change and dependency direction, not for maximizing the number of abstractions; unnecessary indirection creates design debt of its own.

Developing a NiFi Custom Processor with Java

Java custom processor development in Apache NiFi: Processor API, FlowFiles, ProcessSessions, lifecycle, transaction integrity, provenance, backpressure, clustering, concurrency, and verification.