Drop the NDA and focus on customer development

Hi John or Jane Doe, I’m going to respectfully decline to sign the NDA. I assure you that I have not shared the idea and that I am not pursing it myself. I have neither the time nor your passion for it. Nobody else does either. I suspect this is not your primary concern and […]

How Technology Terrifies and Inspires Wonder

The following essay was prepared for a talk I gave at TEDxOU 2014. The talk may be viewed at tedxou.com/phil-dow/. Learning how to program will change your world. When you learn how to program you develop analytical and critical thinking skills that allow you to see the world differently. You are empowered; you create applications […]

The Paradox of Recommender Systems

I am taking a Coursera class on recommender systems right now. It is excellent, just the right blend of mathematics and practice. Exposure to the content of the class motivated this post. In case you aren’t familiar with them, recommender systems are computing systems which make recommendations to the users of an application. You’ve surely […]

Practical Blocks: Refactoring for Small Victories

Blocks are a great way to encapsulate reusable units of code that still require a degree of customization. They let you abstract out common patterns, leaving behind more concise code that yields to the programmer for the details. But blocks are a relatively new concept for Obj-C developers, and it isn’t always clear when you […]

Data Visualization: Annual GDP Rate of Growth

The map visualizes GDP growth rates for the world from 1961 to 2011. Positive growth is represented as increasingly dark shades of green and negative growth as shades of red. The timeline makes it possible to view changes in growth from one year to the next or more casually. Significant historical events are clearly visible […]