I gathered a list of tools / languages / ways of seeing / approaches. This list reflects my personal perspective and preference towards simple, fluid, accessible, open design practices. There are too many things in this list to learn in 8 weeks but I think that this list is very learnable. Maybe we can continue our quest beyond this workshop?
The reading list is partitioned into sections on history/general background, artists @ work, and deeper concepts (tl;dr). Code is like math ::: it can intimidate. All coders feel this way. Even advanced programmers face steep learning curves as languages, hardware, software systems, goals, processes, paradigms change. It is quite normal to need to read something over many times. The patterns often have many layers. Like good poetry, one starts at a surface reading that shimmers with submerged possibilities. There is a rich, layered, multi-faceted, elusive, strange, gorgeous depth that rewards the patient swimmer. Dive into this sea slowly, repeatedly & you will discover inventive ways of seeing, creative leaps ::: the beautiful human mind at work ::: Geppetto's workshop.
There is a moment of first reading ::: beginner's mind ::: where things seem completely opaque. We experience brief flashes as the mind attempts to make sense from the shadows ::: dim figures briefly flicker against the cave wall. This moment is rich with misunderstandings ::: mistaken meanings ::: wrong turns ::: skewed navigations. It is tempting to hurry past this awkward, failed engagement. But I think that we might find some great art in this house of mirrors ::: this strange place is where we draw upon every metaphor held from past experience. We attempt to use every wayfinding tool that we own. It is a time of great reaching, stretching, longing, friction. "Getting it wrong" often leads to great innovation.
You will often need to read and re-read code tutorials, theoretical discussions, historical background and conflict / debate. However, don't stay stuck on a particular term, concept or application too long. Do a search on what confuses you. If you are grappling with an obstacle you can be sure that many other have grappled with the same. There is a wealth of knowledge out there. If one explanation doesn't work for you, look further. Be aware of the publish date for any question, response, article, tutorial, standards document. This is a rapidly moving field. Core concepts may be timeless but implementation details evolve very quickly. Stay towards the core of community-based standards. These are the things most likely to be implemented across platforms (browsers, devices …). This is the syntax and functionality most likely to endure. Where so many perspectives are at work honing a "common language" you are most likely to witness best practice ::: beautiful craft. Watch for places that are hotly disputed in this common core. Read the debates ::: where do you find your fit?
Be kind towards early artwork ::: work that now may seem dated / awkward. Be patient with broken links & things that no longer work. Preservation is a major challenge in this field. These works are raising important questions about the value of cultural preservation. Should we resist the ephemeral nature ::: the natural decay ::: the time-sensitive aspect of these creative expressions. If we want a historical record ::: an enduring legacy ::: how exactly can we accomplish this preservation? Artwork that is wrought in a shifting digital landscape is destined to face extinction as the fragile ecosystem of language, software and hardware changes through time. Should we record, emulate, migrate this work? What exactly does the artist see as being the work? Is it the recipe ::: the code or is it the exact performance of the code in a particular digital environment? Is it the output? Is it the process?
The software industry in the U.S. has become an exclusive club. This wasn't always true. Some of the pivotal concepts behind computing systems, algorithms and code come from far-away places ::: ancient times. Women were deeply involved in the beginnings of the modern computer age. Being in the know on the newest, coolest tools, hippest acronyms, hottest frameworks is often what it takes to get a job in this market. This may be in part is because there are market forces shaping the hardware/software we use (become dependent on ::: buy) and there is a club trying to maintain its secret handshakes. I believe that by standing one step back from the cult of the new ::: the mirage of the complex ::: the lure of the market, you can learn to code and you can use those skills in your artistic practice and sustenance base.
Think simple. This is a great time to do exactly that. The industry is looking back at first principles ::: breaking down complex systems ::: seeing the value of lean, open-source toolsets.
I have a strong conviction that an artist's craft and practice can be mapped to coding space and that an artist's way of seeing can innovate / disrupt the field in valuable ways. I also feel that an artist should feel free to take the metaphor and leave the rest ...