Hacker Culture

MDST 2012

it seems to me sometimes I've entered some inverted zone, some mirror world where the dorkiest shit in the world is completely dominant. The world has dorkified itself.—Mercer in Dave Eggers, The Circle (2013)

What is this course about?

Are we all hackers now? This course plays with a kind of identity that began among geeky tinkerers and a murky criminal underground, only to be adopted by management consultants and CEOs. How has hacker culture helped form our technological lives? Do hacker formations like Wikileaks, Anonymous, and open-source software represent a new kind of politics, or a rejection of politics as we know it? How does this culture manage boundaries of access and power in the online economy? We will explore the contested figure of the hacker in the past, present, and science-fiction of the Internet.

This course includes assigned sources, class discussions, guest speakers, and a significant component of hands-on practice. All levels of technological prowess are welcome, but expect to learn some skills and to help teach others. Hacker culture is not a spectator sport.

Instructor

Nathan Schneider (“Nathan” or “Professor Schneider”)
nathan.schneider@colorado.edu (tips)
Armory 1B24
Office hours Wednesdays 3-5 pm or by appointment
Website: nathanschneider.info

Objectives

  • Gain familiarity with the varieties of meaning and mystique surrounding hacker culture
  • Acquire some hacker skills and the confidence to acquire more independently
  • Apply lessons from and against hacker cultures in creative practice

What are the expectations?

Infrastructure

All students are expected to use two software platforms to carry out work for the course:

  • Canvas is an open-source learning management system developed by a for-profit company, Instructure. It is currently our campus's official LMS, and we will use it for a variety of tasks, from announcements to evaluation.
  • Hypothesis is a non-profit, open-source annotation platform that enables users to annotate the Web. Each week we'll use this to annotate and discuss the assigned sources.

Bounties

Grades are not especially conducive to hacking, but we need some equivalent in order for this course to be legible to the university. Therefore, work will be rewarded with bounties. These are functionally the same as grades, but perhaps giving them a different name will prevent them from killing the learning process in the way that grades normally do.

Bounties will be compiled in (more or less) real time on Canvas for easy access. The final grade will be calculated by adding up the bounties each student has earned. Final grades will be awarded as follows: A (94-100), A- (90-93), B+ (87-89), B (83-86), B- (80-82), C+ (77-79), C (73-76), C- (70-72), D+ (67-69), D (63-66), D- (60-62), F (0-59).

Extensions under extenuating circumstances are possible by arrangement with the instructor prior to the due date; otherwise, late work is subject to a penalty of approximately one-tenth of the total bounty per day.

Objective 0: Contribute

25 points

Computers count from zero, so hackers do too.

Students are responsible for contributing to discussions both in class and through online annotations. Annotations and class participation will be evaluated twice in the semester—at the midterm and at the end.

Annotations

Using Hypothesis on the assigned readings each week, aim for at least 3-5 thoughtful annotations in each assigned reading, or more if it is helpful for you. At least one should be a reply to a fellow student.

A strong annotation is one that reflects an understanding of the text and builds on it in some thoughtful way. If you're marking that a certain passage seems important, explain why in your own words. If the passage rubs you the wrong way, explain what you think the author is trying to say and how you see the issue at hand differently.

Some course materials cannot be annotated, and annotations are not expected for those.

Bounty rubric:

  • Critical thinking and prolificacy in online discussions (15 points)

Class discussions

Plan to have completed the assigned sources for in-class discussion. Be ready to raise insights and questions from the sources. If we have a guest speaker, be prepared to ask excellent questions. One strategy is to make great annotations on each week's readings, print them out, and bring them to class.

Also, be ready for a more practice-oriented time. Plan to have done some preparatory thinking on that week's Exploit—the skill we'll be learning together. We'll share our ideas, however preliminary, and we'll work on them in class.

No attendance will be taken in class. However, showing up and participating in all scheduled meetings will help you get the most you can out of the course, and absence is not particularly compatible with participation.

Bounty rubric:

  • Geeky enthusiasm, insight, and attention to others in class (10 points)

Before this assignment is due, you are welcome to propose the bounty you think you have earned with a one-paragraph explanation. The instructor will determine final bounties, taking your input into account.

Objective 1: Hack

30 points

Each week, each student should contribute an Exploit—a hack that addresses the week's topic in a creative way, reflecting technical ingenuity (though not necessarily expertise) and engagement with the week's sources. Exploits are due in Canvas by sunrise on Saturday morning.

The format of the Exploits can vary based on the assignment. They might be primarily graphic or primarily textual, or code. Show, don't just tell—provide screenshots, diagrams, source code, and other media. If your media are not self-explanatory, include a README text that explains the nature and rationale of the hack.

Exploits need not and should not be lengthy; their value is in the adventuresomeness of their thinking, not their girth. Create enough material for about one side of a sheet of paper. Just be sure to include engagement with at least one assigned source from the week. Also: do not break the law.

Bounty rubric:

  • Clear explanation of the Exploit along with supporting evidence
  • Creative implementation that develops skills
  • Sophisticated engagement with at least one of the module's assigned sources

Objective 2: Teach

20 points

Hackers learn from each other. Each week, usually during the second meeting, a group of students will present to the class about a hacker skill related to that week's topic and Exploit assignment. Each presentation should be no more than 10 minutes long, with slides. One student in the group should turn in the group's slides on Canvas before the class period of the presentation begins.

At the end of the presentation, student presenters will lead an accessible, interactive DiscoTech exercise for the class, using whatever format they like to invite participation, collaboration, and the sharing of ideas.

Bounty rubric:

  • Completion of an accessible and fun introduction to a skill and its significance (5 points)
  • Engage with assigned materials, demonstrating both comprehension and critical engagement (5 points)
  • Contextualize in culture and history, documenting additional research with both scholarly and primary sources, appropriately cited in APA format in APA format on slides (5 points)
  • Teach a skill with a well-planned, effective DiscoTech exercise relevant to the week's Exploit (5 points)

Objective 3: Master

25 points

Become a goon. The final project for this course is to write an illustrated, 1,800-to-2,000-word report on a real-world hack that for a relevant establishmentarian organization. Pick a hack that particularly fascinates you.

If the hack in question is of questionable legality, write as an FBI agent, perhaps. If the hack is just a brilliant piece of technology, write as a stiff for a big computer company trying to figure out how to capitalize on it. In any case, with clear language and documented research, explain the nature of the hack, its significance, and a recommendation for what your organization should do about it.

The final product itself should be a convincing hoax in the voice and visual character of the organization it supposedly represents. For examples of what this could look like, peruse reports from Cisco or FireEye, or Wired's Hack Briefs.

This project includes a built-in debugging and revision process, as well as a one-minute presentation on the last day of class.

Bounty rubric:

  • Beta version and participation in debugging with substantive comments on two fellow students' betas (5 points)
  • One-minute presentation, with a compelling slide, on the last day of class (5 points)
  • Revised final (15 points)

Terms and conditions

  • This syllabus is a living document and may be revised during the course. The current, binding form will be maintained on Canvas, and any changes will be explained in a Canvas announcement.
  • We will be intentional about any use of screen devices, which risk interfering with our learning experience and that of students around us.
  • We respect one another's privacy and freedom to explore. Content shared in the course, in class or online, will not be shared beyond it without permission.
  • We adhere to basic university policies regarding accessibility and academic honesty; we take responsibility for understanding relevant policies and procedures. Verbum sat sapienti est.

Schedule

Each week's annotations are due at 3 p.m. that Tuesday and Exploits are due on Saturday at sunrise. All other due dates are at 3 p.m. Mountain Time:

  • Project proposal: April 9
  • Project beta version: April 30
  • Final presentations: May 2
  • Final project: May 2

What topics will be covered?

The following is the schedule of readings for the course. One book is required that must be acquired independently: Edward Snowden, Permanent Record (Metropolitan Books, 2019).

1. Version history

  • Edward Snowden, Permanent Record (Metropolitan Books, 2019): Part I
  • Steven Levy, Hackers: Heroes of the Computer Revolution chapters 1 and 2 (1984)

Exploit: Do something worthwhile with an old machine. Dig up an obsolete machine and have fun with it. What's lying around your house or dorm collecting dust? What neat software have most people forgotten about? What can it do that a fancy smartphone can't? Pay a visit to the Media Archaeology Lab on campus and play around. Show us what you can do with a neglected tool.

2. White, black, gray

  • Edward Snowden, Permanent Record (Metropolitan Books, 2019): Part II
  • Charlton McIlwain, Black Software: The Internet and Racial Justice, from the AfroNet to Black Lives Matter (Oxford University Press, 2020): 28-43, 55-58
  • The Mentor, “The Conscience of a Hacker (aka Hacker Manifesto),”​ Phrack 1, no. 7 (1986)

Exploit: Compose a testimony or manifesto. Using appropriate typography and layout, or posting it to an appropriate place, create a testimony or manifesto that introduces your hacker philosophy to the world. Identify yourself any way you like or not at all. Seek to recruit, warn, alienate, terrify, or inform readers. Let the medium be part of the message.

3. Hacktivism

  • Edward Snowden, Permanent Record (Metropolitan Books, 2019): Part III
  • Gabriella Coleman, “The Public Interest Hack,” limn (February 2017)

Exploit: Set a valuable piece of information free. Lots of data and knowledge are caught up in places that aren't accessible—in offline archives, behind paywalls or private intranets, trapped in someone's mind. Following the hacker dictum that “information wants to be free,” let something loose in a way that will facilitate its flow. Post it online in an appropriate spot, or share it with those who will, or find a liberating offline place for it, like a flyer or a megaphone. Be sure to explain what makes the information valuable and how what you do with it is meaningfully liberating.

Exploit: Make a remix. Take something out in the world and turn it into something else. Mash up music or video into something surprising, or rewrite a book. Create a bit of knock-off shanzhai. Make some fan-fiction. Save a website's HTML code to your computer and mess with it. Explore the possibilities of free culture, or what culture would be like if it were really free. Show us what you can come up with.

5. School

Exploit: Teach yourself a bit of a computer language and make a program that does something neat. It might seem scary or fancy, but it's completely possible to start learning how to code online, and lots of hackers are more or less self-taught. Whatever you know already, use this Exploit to learn a new programming language or trick. You can do something as simple as the classic “Hello World!” or make your own chatbot. Try the elegant language Python on CodeAcademy, or get visual with JavaScript at Khan Academy, or play with MIT's Scratch. The Hour of Code project has tons of activity ideas on top of that.

6. Avatars

Exploit: Create an identity. Who you appear to be can change what you can do. Try on a new online mask—on a social network, an online game, or a creator platform. Develop a profile, take on a character, interact with others, and see what happens. What can you do that you might not otherwise try? Share screenshots or other documentation of what your identity allowed you to do.

7. Craft

Exploit: Practice the craft of self-optimization. Work on your development as a hacker by hacking yourself. See math or art where you didn't before. Measure some aspect of your life, routine, mind, or body, and test strategies for optimizing it. Explore creative, counter-intuitive possibilities. For inspiration, consider resources like Lifehacker and Hacker News. What are you optimizing for, and why? Produce data based on your experiment and present it so the rest of us can better hack ourselves.

8. Arms race

Exploit: Plot a world takeover. Dream up a virus, zero-day, or other sort of cyberattack that will break and reshape the world order. Describe in detail how it works and what it will do, as well as potential limitations and possible defenses against it. What would you do with the power you obtain? Let your imagination go wild.

9. Social engineering

Exploit: Get someone who doesn't know who you are to do something. Use your identity created in an earlier module, or try another, or use no identity at all. This can be online, over various kinds of networks, or in meatspace. Take a stranger to lunch, or get a stranger to send you a dollar. Make a friend or an enemy. But exercise your capacity to influence the world, without your existing social capital, through crafty engineering of interpersonal interactions.

10. Security culture

Exploit: Audit your communication practices and identify improvements. Review some of your regular practices, digital and otherwise, and locate potential security vulnerabilities. Do some research about the nature of potential threats and how they might be mitigated. Check out software listed at AlternativeTo, PRISM Break, PrivacyTools, or Surveillance Self-Defense if the dangers are digital. Go further with Janet Vertesi's Opt Out Project. Try out a few patches, and determine whether they're worth the trouble.

11. Disintermediation

Exploit: Devise a tool that disrupts a gatekeeper. What is in the way of something worth doing? What systems do you encounter that are needlessly cumbersome or inefficient? Who is leeching profits without contributing any useful value? Come up with an idea—you don't have to implement it, especially if it's risky—that would clear the way. Bypass a government, master the university bureaucracy, or skirt around a corporate middleman. Get the goods.

12. Beyond the valley

Exploit: Build a world. Devise an imaginary world that doesn't exist yet. Make a map, tell a story, provide a timeline, or offer some other picture of your world. What does this world allow you to explore that the “real” world does not? What is the same, and what is different? What does that world reveal about this one? These "laws" from a practicing game designer, or this guide from a master fantasy writer, might help.

13. Singularity

Exploit: De-recuperate something. Notice something fresh, original, grassroots, and authentic that has been transformed into something palatable, profitable, and safe for a dominant class. Reverse the process. Identify forgotten radicalisms, incite people to re-embrace them, and renew their dangerousness to the powers that be. Reflect on the consequences of doing so.

14. Mastery

Debug the final project with peers and conclude the course.


What should I be checking out to keep up with hacker culture?