Skip to content


I’m deeply thankful to those who provided detailed feedback to parts of my manuscript: Jason Cooper, Andres Ferrate, Michael Kaply, John Musser, Paul Rademacher, Jon Udell, and C. K. Yuan. John Musser graciously provided access to some data from

I would never have written this book without the inspiration I drew from my former colleagues at UC Berkeley. I want to particularly thank Chris Ashley, Isaac Mankita, and Susan Stone, who helped me persevere by listening patiently to my exuberant book talk over lunch or tea. Thom King and Tom Schirmer generously shared their knowledge of data architecture and software development. Shifra Gaman and Rich Meyer provided tons of technical and moral support. Thanks to David Greenbaum for his supportive attitude toward my teaching work and to Rick Jaffe, a colleague who took my class and who has been tirelessly championing my teaching to others. Sara Leavitt and Aron Roberts generously helped me learn about iCalendar and the Berkeley Events Calendar.

The School of Information at UC Berkeley has been an important intellectual home for the past several years. I’m grateful for the opportunity to teach my course “Mixing and Remixing Information” and the collegiality of the faculty and staff. Most of all, I want to thank my students, who gave me their attention and created wonderful projects and in turn inspired me. Thanks also to my teenage summer students for creating their mashup projects in a six-week sprint and teaching me about music mashups.

Thanks to the many people at Apress who made this book a much better product than what I alone could have written. In addition to consistently savvy editorial judgment, Matt Moodie provided me with just the right amount of encouragement in the last months of writing. Richard Dal Parto provided able project management, while Grace Wong pinch-hit in that capacity. Thanks also to production editors Laura Esterman and Lori Bring, senior production editor Kelly Winquist, and copy editor Kim Wimpsett for their work in turning code and text into a publishable form. I’m grateful to Tina Nielsen who was one of the first people I dealt with at Apress. A special thanks goes to Chris Mills, who, as my first editor, got me off to a solid start in the writing process with his enthusiasm and detailed feedback.

I learned much from the insightful comments of John Watson, who served as technical reviewer, as well as from his very cool Flickr mashups!

I would like to thank my friends, who were excited for me and cheered me on. My family, as always, was there for me; thank you so much for loving me and believing in me as I took on this huge project.

And finally, I thank my wife, Laura, for everything she did for me while I wrote this book: her love, encouraging words, and wise counsel; her listening to my ideas-in-process; her editing; and her sacrificial willingness to free up time for me to write. It’s time for us to take that long-postponed vacation!