The Art, Science and Industry of Coding
Program dates: June 19-22, 2018
Program cost: $510
Includes lodging, all meals and any field trips. Students arrive on campus Tuesday, June 19, and depart Friday, June 22.
Let's face it – computers are everywhere, in businesses, schools, homes, hospitals, deep under the ocean, roaming on Mars and on your favorite cell phone or tablet where you can deftly defeat zombies or cleverly crush candy. What you may not realize is that besides supporting a thriving software and information technology industry, computer science has become a foundational discipline that supports a wide range of artistic and scientific endeavors.
In this course, we'll explore both the yin and the yang of computer science... and the interconnectedness of this digital glue. You will learn basic coding (computer programming) skills in the accessible (but powerful) NetLogo language, and use these skills to code a scientific simulation, and create beautiful artwork and 3-D animations. You'll also learn about some special effects for cinema, and how even simple computer simulations can lead to surprising results, in fields such as biology, physics, geology, social justice, and more. To top things off, you'll learn a little bit of the Java language and develop a small adventure game for Android phones/tablets.
All are welcome, whether you have any previous computer programming experience or not.
Tuesday, June 19
- 4:30 p.m. — Check-in
- Evening activities
Wednesday, June 20: Focus on Science
- Ice breaker: friends & enemies game (and simulation)
- Emergence and the new science of complexity
- More computer simulations, puzzles, and games
- "Talking to turtles" — getting started with the NetLogo coding lingo
- Building an agent-based computer simulation (tutorial)
- Advanced science simulation topic: the rise of network science
- PageRank: Behind the search engine magic
- Preferential attachment networks (and why the rich get richer?)
- Epidemiology: virus on a network
Thursday, June 21: Focus on Art
- Coding 2-D art
- Using shape, color, opacity
- Creating your own 2-D art piece
- Coding 3-D art
- Manipulating shapes in 3-D
- Advanced graphics rendering: ray-tracing
- Creating your own 3-D art piece.
- The illusion of 3-D
- The magic of single-image stereograms
- Dual-image stereoscopes & 3-D
- 3-D glasses (Red-blue anaglyph, polarized light)
- Computers & the Silver Screen
- Frame-based animation (and playing with a praxinoscope)
- Special effects: fire, smoke, & water using particle systems
- Physics-based graphics simulation (fireworks)
- Creating your own 2-D or 3-D animations
Friday, June 22: Focus on Industry
- Creating a mobile app (Adventure Game) for Android phones/tablets
- Software life cycle
- Design, development, testing, and deployment
- Guest speaker from industry (or possible field trip) — tentative, TBD.
- Depending on student interest & earlier time-tables , continued development/exploration of:
- scientific simulations
- artistic/creative works
- mobile Android app/game
- Closing: Re-unite with families, informal student show & tell as desired, depart at leisure.
Instructor: Dr. Forrest Stonedahl
Dr. Forrest Stonedahl is an assistant professor of computer science at Augustana. He earned his Ph.D. from Northwestern University, based on research in artificial intelligence and scientific computer simulations, with application areas from A to Z (archeology to zoology). He also enjoys (and has taught college courses in) computer-generated art, and his artwork was selected for the cover of the ASME's flagship mechanical engineering magazine.
At Augustana, Dr. Stonedahl teaches courses ranging from an introductory survey of computer science to the advanced team-based project course on mobile app development. He has a passion for collaborative research with undergraduates, and regularly oversees independent study projects (such as modeling the Ebola outbreak, or evolving intelligent robot behavior). He coaches the Augustana programming contest team, and is the faculty mentor for the Augustana photography club.