software for good the maker movement - stickyminds · 2012. 12. 7. · one project at...

2
I belong to a hackerspace. The word “hack” doesn’t mean what it used to—or, to put it another way, it is gradually re- suming the definition that those of us in the software world have ascribed to it for quite some time. After years of viruses, trojans, and compromised privacy, “hack” has a dirty reputa- tion, but this wasn’t always the case. Our venerated Jargon File, for those like me who are old enough to remember it, de- fines “hack” as “an appropriate application of ingenuity” [1] or, perhaps more relevant in the context of today’s raging do- it-yourself culture, a verb meaning “to work on something.” [2] This, to me, is the allure of the hackerspace and the reason I chose to get involved. A few years ago, a couple of my friends got together to discuss forming a hackerspace in our city. The idea, patterned after successful predecessors such as Brooklyn’s NYC Resistor, is simple: Provide a communal workshop where people can hang out, work on projects, share tools and equipment, and, most importantly, draw on the experience and insightfulness of others, collaborating to produce a whole that is greater than the sum of its parts. These are lofty ideals, and while I think that in practice they are realized, my hackerspace experience has been a lot less principled: I’m there to have fun, write code, learn new things, and blow off steam in a way that I just can’t do at the office. One project at HackPittsburgh that immediately drew my attention was that of local artist Lori Hepner. Hepner’s Status Symbols is “a series of virtual portraits that are studies of identity in the digital age of social media.” [3] The project involved creation of a motor-driven sculpture containing an array of colored LEDs on a rotating arm. When active, the sculpture displays real-time messages from Twitter in bi- nary code, which Hepner then photographs with a medium- format camera. For this project, I wrote code in Python to search Twitter via its API. The Python script retrieves tweets matching certain search criteria and sends them to the sculp- ture’s control board, a popular open source microcontroller platform called Arduino. There, embedded software uses the sculpture’s LED array to display the binary representation of the tweets in a number of different colors: red for hash tags, purple for quotes, orange for mentions. I wrote the embedded software for Arduino in C to the artist’s specification. Hep- ner’s Status Symbols has been shown around the world and featured on Time magazine’s LightBox blog [4]. I also participated in HackPittsburgh’s LEAD Balloon project [5]. Our goal was to launch a weather balloon into near-space, photograph the curvature of the earth, and re- trieve the balloon after it had landed. This posed a number of challenges, so the fairly large project team was divided into sub- teams responsible for launch site selection, lift, airborne tracking, photography, data logging, re- covery, and the airframe itself. I wrote several bits of C code, again for the Arduino platform. The first controlled a sixteen-channel analog multiplexer connected to a number of airborne sensors, and the second recorded sensor and GPS data to an SD card during the flight. I took responsibility for integrating all of the team’s code into the final flight software package. I even designed and fabricated the parachute using online resources to cal- culate the proper diameter necessary to produce our desired descent velocity. HackPittsburgh has made four launches to date and recovered three of the four payloads, resulting in some breathtaking photographs, a peak altitude of 101,030 feet, and fourth place in the Hackerspaces in Space competi- tion. After the second balloon landed, I wrote my second-ever program in a Java-based language called Processing. It visual- izes the balloon’s flight path and altitude alongside the photos taken during the flight in accelerated time. The program is far from perfect, but it’s a lot of fun to watch, and writing it was a great learning experience. Perhaps the project I’m most proud of, however, is Hack- Pittsburgh’s Physical Pixels workshop. Before our group had a shop to call its own, a few other soon-to-be members and I began teaching introductory classes focused on programming and building simple circuits. We held these events in living rooms and dining rooms and, eventually, at HackPittsburgh The Maker Movement Hackerspaces are springing up all over the world, bringing innovation and the opportunity to contribute creatively both inside and outside of the software community. by Jon Speicher | [email protected] Software for Good 14 BETTER SOFTWARE JANUARY/FEBRUARY 2012 www.TechWell.com “…my hackerspace experience has been a lot less principled: I’m there to have fun, write code, learn new things, and blow off steam in a way that I just can’t do at the office.”

Upload: others

Post on 21-Jan-2021

1 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Software for Good The Maker Movement - StickyMinds · 2012. 12. 7. · One project at HackPittsburgh that immediately drew my ... professor Golan Levin at CMU’s STUDIO for Creative

I belong to a hackerspace. The word “hack” doesn’t mean what it used to—or, to put it another way, it is gradually re-suming the definition that those of us in the software world have ascribed to it for quite some time. After years of viruses, trojans, and compromised privacy, “hack” has a dirty reputa-tion, but this wasn’t always the case. Our venerated Jargon File, for those like me who are old enough to remember it, de-fines “hack” as “an appropriate application of ingenuity” [1] or, perhaps more relevant in the context of today’s raging do-it-yourself culture, a verb meaning “to work on something.” [2] This, to me, is the allure of the hackerspace and the reason I chose to get involved.

A few years ago, a couple of my friends got together to discuss forming a hackerspace in our city. The idea, patterned after successful predecessors such as Brooklyn’s NYC Resistor, is simple: Provide a communal workshop where people can hang out, work on projects, share tools and equipment, and, most importantly, draw on the experience and insightfulness of others, collaborating to produce a whole that is greater than the sum of its parts. These are lofty ideals, and while I think that in practice they are realized, my hackerspace experience has been a lot less principled: I’m there to have fun, write code, learn new things, and blow off steam in a way that I just can’t do at the office.

One project at HackPittsburgh that immediately drew my attention was that of local artist Lori Hepner. Hepner’s Status Symbols is “a series of virtual portraits that are studies of identity in the digital age of social media.” [3] The project involved creation of a motor-driven sculpture containing an array of colored LEDs on a rotating arm. When active, the sculpture displays real-time messages from Twitter in bi-nary code, which Hepner then photographs with a medium-format camera. For this project, I wrote code in Python to search Twitter via its API. The Python script retrieves tweets matching certain search criteria and sends them to the sculp-ture’s control board, a popular open source microcontroller platform called Arduino. There, embedded software uses the

sculpture’s LED array to display the binary representation of the tweets in a number of different colors: red for hash tags, purple for quotes, orange for mentions. I wrote the embedded software for Arduino in C to the artist’s specification. Hep-ner’s Status Symbols has been shown around the world and featured on Time magazine’s LightBox blog [4].

I also participated in HackPittsburgh’s LEAD Balloon project [5]. Our goal was to launch a weather balloon into near-space, photograph the curvature of the earth, and re-trieve the balloon after it had landed. This posed a number

of challenges, so the fairly large project team was divided into sub-teams responsible for launch site selection, lift, airborne tracking, photography, data logging, re-covery, and the airframe itself. I wrote several bits of C code, again for the Arduino platform. The first controlled a sixteen-channel analog multiplexer connected to a number of airborne sensors, and the second recorded sensor and GPS data to an SD card during the flight. I took responsibility for integrating all of the team’s code into the final flight software package. I even designed

and fabricated the parachute using online resources to cal-culate the proper diameter necessary to produce our desired descent velocity. HackPittsburgh has made four launches to date and recovered three of the four payloads, resulting in some breathtaking photographs, a peak altitude of 101,030 feet, and fourth place in the Hackerspaces in Space competi-tion. After the second balloon landed, I wrote my second-ever program in a Java-based language called Processing. It visual-izes the balloon’s flight path and altitude alongside the photos taken during the flight in accelerated time. The program is far from perfect, but it’s a lot of fun to watch, and writing it was a great learning experience.

Perhaps the project I’m most proud of, however, is Hack-Pittsburgh’s Physical Pixels workshop. Before our group had a shop to call its own, a few other soon-to-be members and I began teaching introductory classes focused on programming and building simple circuits. We held these events in living rooms and dining rooms and, eventually, at HackPittsburgh

The Maker MovementHackerspaces are springing up all over the world, bringing innovation and

the opportunity to contribute creatively both inside and outside of the

software community.

by Jon Speicher | [email protected]

Software for Good

14 BETTER SOFTWARE JANUARY/FEBRUARY 2012 www.TechWell.com

“…my hackerspace experience

has been a lot less principled:

I’m there to have fun, write

code, learn new things, and

blow off steam in a way that I

just can’t do at the office.”

Page 2: Software for Good The Maker Movement - StickyMinds · 2012. 12. 7. · One project at HackPittsburgh that immediately drew my ... professor Golan Levin at CMU’s STUDIO for Creative

itself. In these bring-your-own-Arduino workshops, we pro-vided attendees with a solderless breadboard and electronic components, including hook-up wire, resistors, potentiom-eters, and a bright LED capable of displaying millions of colors. This LED served as the “physical pixel.” We led the group through building a simple circuit with the LED con-nected to the microcontroller, and then, starting from scratch, we walked through the process of building a program for Arduino to read the potentiometer values and modify the LED’s color in response. Along the way, we touched on coding concepts such as constants, variables, functions, loops, and conditionals. We also covered microcontroller basics like analog-to-digital converters, digital inputs and outputs, and pulse-width modulation. This was, for many attendees, a first introduction to electronic circuits and to writing code. The workshops were surprisingly popular. People came to Pitts-burgh from Detroit and Cleveland to attend, local reporters dropped by [6], and parents brought their children for an af-ternoon of hacking together. I’m happy to say that every at-tendee left with a working project, and many continued to explore long after the workshop was over.

The projects above represent just a small slice of the op-portunities I’ve had as a member of a hackerspace. In addi-tion to them, I’ve learned distributed version control, played with Rails and Sinatra, practiced pair programming and the Pomodoro technique, and burned myself with soldering irons more times than I care to disclose. My wife and I built Hal-loween costumes using embroidered circuits and 800 lines of code. I worked on HackPittsburgh’s entry to the Power-Wheels Racing Series, a 430-Watt monster version of the kids’ toy racer that competed in drag, road, and endurance races. I wrote a scrap of code in Python to send commands to a robot that prints words using spray cheese. I’ve traveled to Maker Faires—festivals filled with DIY projects—in Detroit and San Francisco. I served as a teaching assistant and volunteer for an Arduino workshop at Art && Code, a local symposium exploring the intersection of art and technology organized by professor Golan Levin at CMU’s STUDIO for Creative In-quiry. I’ve visited other hackerspaces and have met a number of like-minded people, many of whom I now call friends.

I work as a software engineer in a regulated industry during the day, and sometimes into the night and weekends when the job requires. I love what I do. There is, however, something undeniably liberating about side projects, especially the kind I find through my hackerspace relationship. The ability to work with artists, machinists, crafters, and musicians is something I wouldn’t otherwise find. I find the loose organization, lack of milestones and schedules, and atmosphere of pure, unfettered creativity and collaboration to be refreshing and inspirational. Completing a side project—no matter how small—brings me an immediate sense of satisfaction and motivates me to keep on finishing things. Furthermore, the technology that I pick up, whether through hands-on involvement with projects or by looking over the shoulder of others, has been directly ap-plicable to my professional work as an embedded systems de-

Software for Good

www.TechWell.com JANUARY/FEBRUARY 2012 BETTER SOFTWARE 15

veloper. The people I’ve met extend my professional network, and the projects I’ve completed through the hackerspace con-tribute to my resume just as much as projects I do for pay. They have the additional benefit of serving as a small contri-bution to the open source world as well, something that is a source of pride for me. To share the code I love, teach it to others, and contribute it to the community and to art is an exhilarating opportunity, and it recharges my creative spirit in a way that extends to all aspects of my life, including my “day job.”

The maker movement is real, and it is immediate. Hack-erspaces are springing up all over the world, and with them comes real innovation. If you’d like to get involved, consider finding your local hackerspace. If it doesn’t exist, consider founding it. The rewards, in my experience, are significant. {end}

For more on the following topic go to www.StickyMinds.com/bettersoftware.n References

This article originally appeared on TechWell.com. Visit http://well.tc/MakerMovement to see photos from the Phys-ical Pixels workshop and to post comments and questions for the author.

SOFTWARE CONFIGURATION

MANAGEMENT FORAgile, Waterfall, & Everything in Between

www.accurev.com | [email protected]

Top 5 Software DevelopmentProcess Challenges

Download White Paper: www.accurev.com/top512

SCM