Programmable Microenvironments