June 26, 2025
The smooth package provides a comprehensive state-space framework for forecasting, centered on the Augmented Dynamic Adaptive Model (ADAM). ADAM offers a unified structure that integrates and extends classical time series models like ETS, ARIMA, and regression beyond their standard implementations. Originally developed within the R statistical environment, the growth of Python’s forecasting ecosystem motivated the development of a native implementation for its expanding community of researchers and practitioners. This presentation focuses on the engineering specifics of implementing the smooth framework in Python. We explain the architecture, which utilizes the original C++ backend, and detail the refactoring process used to transform the initial translation into an idiomatic, object-oriented Pythonic API. Finally, we discuss key engineering takeaways on cross-language package development, along with the opportunities presented by modern Large Language Models (LLMs) to accelerate similar development efforts.