Evolving toward a programmable world