Jump to main content

Programming a Logo

With over 40,000 versions, MIT Media Lab's new logo is computer-driven design. You can see some of the permutations of the algorithmic logo in this video.
As anyone interested in (or who dabbles in) computer programming knows, computer programs can be written to perform an infinite array of 'make-life-easier' or 'help-pass-the-time' tasks. Having spent more hours than I should probably admit carefully choosing my launch direction and pull-back strength and sending cute little chubby (albeit 'Angry') birds hurtling toward structures made from wood, concrete, and glass, I've again found myself poking around here and there for information on programming for this overwhelmingly successful and perfect for "gotta have it" apps platform.

I've taken turns with my kids playing countless games we've installed, and even as I join the quest to best the top score, when it's not my turn, I marvel at these apps, knowing that the footprint (the size of each app) is small, and yet the functionality and visual display is compelling (and, okay, addictive... have you played Fruit Ninja?). I think about the explosion of the app market, especially given the relatively standard low per-app price point. I wonder... how hard is it? I wonder... can I get my students (who unwaveringly want to be video game designers) started designing and coding by lifting the hood on a gadget they already love?

(Reality: we've got a few years before they're ready for Objective-C.) Still, with so many cool platforms available, it's an exciting time for students just beginning to explore programming, and for many of these platforms, visual design and the sophistication of the graphics is given top billing.

A Logo with 40,000 Versions

As much as I love the nuts and bolts (or bits and bytes) that bring about savvy programming that we front-end users can enjoy, I love good design even more, whether it's classic, cutting-edge, postmodern or just knock-your-socks-off innovative.

When I saw mention of MIT Media Lab's new logo, I found an innovative blending of design and technology. Logos are typically finite marks. They are created to be "the" visual mark for a company or brand and are intended to be produced in certain colors at certain sizes. Branding is important, and businesses can get pretty stuffy about rules regarding the use of their logo. That MIT Media Lab's new mark may appear in any of 40,000 permutations, which involves twelve color combinations, is mind-boggling—and way cool.

The new logo has a few basic parameters: each iteration uses three colors and three spotlights. The size, color, and orientation of those spotlights, however, vary for each unique version of the logo. Everyone at MIT Media Lab will have his or her "own" version of the logo. And no two people will have exactly the same version. The logo is as edgy and geeky as the group it represents because the permutations of the brand are based on an algorithm which can spit out the multitude of versions.

A Programmatic Approach to Design

The creation of the MIT Media Lab logo uses an open source programming language called Process. While Process is unique in its focus on visual and graphical manipulations, students can begin creating and exploring their own image-oriented applications--and algorithms--using MIT's Scratch programming environment.

The Science Buddies Scratch User Guide walks you through the installation and can help you get started with your first program.

If you think the story behind the new MIT Media Lab logo is cool, you might explore the visual side of Scratch by putting the math in place and investigating fractals in the Scratch environment. (There are plenty of examples in the Scratch gallery). You can find out more about fractals in the Exploring Fractals project idea.

We'd love to see what you create!

(Science Buddies projects in the area of computer science are sponsored by Symantec. Projects in the area of video and computer games are sponsored by AMD.)


You Might Also Enjoy These Related Posts:

Free science fair projects.