Contents
Programming Media
Art Using Processing
STUDENT CONTRIBUTORS
Amelia Berry
Claire Bridges
Blake Brownyard
Lorena Bustillos
JJ Chasavah
Maiah Cooper
Natalie Cote
Elijah Devillanueva
Sierra Gillingham
Flavia Huerta
Sarah Hughes
Samuel Kahn
Noah Lau
Ricardo Lednick
David Lopez
Olivia Madarang
Maelee McCarron
Tuesday Motch
Darryl Nagal
Liam Nolan
Nalani Patterson
Gillian Probert
Connor Port
Angelica Quevedo
Jakob Rosen
Tung Tran
Cianan Veltz
Kathryn Wylie
Michel Yanez
Margaret Noble was born in Texas, raised in San Diego, and received her key artistic training in Chicago. She holds a BA in Philosophy from the University of California, San Diego, and an MFA in Studio and Sound Art from the School of the Art Institute of Chicago, Illinois.
Margaret Noble is an accomplished media producer with a background in public education, artistic production, and large-scale exhibition development. Her artworks have been exhibited nationally and internationally. Margaret Noble came to education from industry as a professional artist. Throughout her 13+ years of teaching in secondary and higher education, she has consistently supported diverse learners in producing meaningful, community-driven, multimedia projects.
Margaret and her students have also received several awards and recognitions for their classroom projects, including features in Edutopia and Wired magazine. To learn more about Margaret Noble's work, please visit: https://nobleeducator.com.
First Edition published 2021
by CRC Press
6000 Broken Sound Parkway NW, Suite 300, Boca Raton, FL 33487-2742
and by CRC Press
2 Park Square, Milton Park, Abingdon, Oxon, OX14 4RN
2021 Margaret Noble
CRC Press is an imprint of Taylor & Francis Group, LLC
The right of Margaret Noble to be identified as author of this work has been asserted by her in accordance with sections 77 and 78 of the Copyright, Designs and Patents Act 1988.
Reasonable efforts have been made to publish reliable data and information, but the author and publisher cannot assume responsibility for the validity of all materials or the consequences of their use. The authors and publishers have attempted to trace the copyright holders of all material reproduced in this publication and apologize to copyright holders if permission to publish in this form has not been obtained. If any copyright material has not been acknowledged please write and let us know so we may rectify in any future reprint.
Except as permitted under U.S. Copyright Law, no part of this book may be reprinted, reproduced, transmitted, or utilized in any form by any electronic, mechanical, or other means, now known or hereafter invented, including photocopying, microfilming, and recording, or in any information storage or retrieval system, without written permission from the publishers.
For permission to photocopy or use material electronically from this work, access
Trademark notice: Product or corporate names may be trademarks or registered trademarks and used only for identification and explanation without intent to infringe.
Library of Congress CataloginginPublication Data
Library of Congress Cataloging-in-Publication Data
Names: Noble, Margaret (Performance artist), author.
Title: Programming media art using processing : a beginner's guide / Margaret Noble.
Description: First edition. | Boca Raton : CRC Press, 2021. | Includes bibliographical references and index.
Identifiers: LCCN 2020038700 | ISBN 9780367508289 (paperback) | ISBN 9780367509590 (hardback) | ISBN 9781003051985 (ebook)
Subjects: LCSH: Processing (Computer program language) | Computer graphicsComputer programs. | New media art.
Classification: LCC QA76.73.P75 N63 2021 | DDC 006.6/8dc23
LC record available at https://lccn.loc.gov/2020038700
ISBN: 978-0-367-50959-0 (hbk)
ISBN: 978-0-367-50828-9 (pbk)
ISBN: 978-1-003-05198-5 (ebk)
Typeset in Minion Pro
by KnowledgeWorks Global Ltd.
eResources for each chapter are available at www.routledge.com/9780367508289.
If it wasn't for the support I received from the community members of High Tech High, this book would not have happened. I would like to start with a very special thanks to the school leader who hired me, Robert Kuhl. Furthermore, I am grateful to the school founders: Larry Rosenstock, Rob Riordan, and Ben Daley. Their support and encouragement for over a decade of teaching (including a one-year fellowship to study computer programming) opened the door for my students and me to explore an exciting new learning environment with endless creative possibilities. I also want to recognize my collaborative colleagues throughout the years, who pushed my thinking and showed me new ways to serve my students' learning and growth.
Truth be told, I am most grateful for the collaborative learning I experienced with my students. Without the frequent input and creative production put forth by my students, I wouldn't have had the insights I needed to shape this curriculum. Every year, students revised how the class tackled challenging problems, discovered and shared new coding techniques with each other, and produced dynamic project examples for future students to build on.
These acknowledgements wouldn't be complete without a celebration of the Processing community. Thank you to Casey Reas and Ben Fry for creating such an accessible and artistic entry point into computer programming. Their Processing project has opened the door for many students who would not have previously entered it. Thank you to the Processing Foundation, which is made up of community driven educators and leaders like Daniel Shiffman. These teachers and organizers support and further these transformative learning experiences, which are highly engaging and open to all. Also, a big thank you to every kind stranger on the Processing forum who answered the many questions posted by me and my students.
Finally, thank you to my husband and my mom. They keep me believing in myself and exploring new frontiers.
This book is designed for learners with little or no computer programming experience and an interest in making interactive graphics. There are a variety of ways to learn computer programming and the lessons from this book were shaped by the feedback received from hundreds of students. Many of these students were intimidated by computers, while others had prior experiences with programming lessons that were frustrating or felt inaccessible. All learners are different. However, two consistent challenges were frequently expressed: (1) the illegibility of code training manuals (often due to a sea of small, black and white text) and (2) the assumption of pre-existing knowledge (even in beginning manuals). To address these concerns, this book employs a variety of strategies. The designers of Processing wrote a programming language that uses color markers to make key information visible, and this book is also published in color to clearly illustrate examples and concepts. The code examples published in this book also feature a line-by-line numbering system to help learners keep track of where they are when working through a lengthy code transcription. Furthermore, the lessons in this book are rhythmically broken down into digestible parts with code annotations and diagrams to help learners focus on the details, one step at a time. There is no assumption of any pre-existing programming experience for users of these lessons.