modular programming articles