The document discusses lessons learned from deploying ubiquitous computing systems based on the author's experience. It describes how real-world deployments uncovered unexpected issues like cell signal fluctuations and lack of remote access. This led to systems failing or not working as intended. The author advocates designing systems to be robust to these kinds of issues through strategies like making components stateless and independent, exploiting persistent storage, and enabling remote access for debugging. The overall message is that deploying systems brings to light challenges not anticipated in the lab and informs the design of deployable ubiquitous computing technologies.