"Twenty Things to Do with a Computer" Revisited

Another domain to consider is exact arithmetic as in Snap!'s bignum library. E.g. my My encryption project based on converting text to bignums Another example is that using rational numbers one can explore series like 1/2, 3/4, 7/8, ... and NOT get 1 after about 30 iterations (due to floating point number limitations). I recall a 10-year old who disliked mathematics who was so excited when her program that repeatedly multiplied by a small number produced a number that had over 2000 digits in it. She got up excitedly to tell her friends what she just did.

Danny Hillis a few years after Twenty Things wrote Ten Things to do with a Better Computer. All the examples were AI challenges (mid-1970s era). Adele Goldberg then wrote "Doing what Danny wants" which addressed some of Danny's challenges in Smalltalk. If anyone has either paper please share!!

Maybe we need a "Twenty machine learning challenges to address in Snap!"

Those are great examples, Jens.

I'm so not that kind of person, though. My favorite projects are things like Church numerals and solving logic puzzles. (Who lives in the yellow house?)

@bh @jens These are all great examples! For symbolic reasons, I would add the Snap! extension, TurtleStitch, and computer-controlled embroidery machines (because of Cynthia Solomon's current work in this area).

@toontalk I found this reference to "Ten Things to Do with a Better Computer" in a paper by Mitch Resnick:

Behavior Construction Kits

"Seymour Papert and Cynthia Solomon wrote a memo called "Twenty Things to do with a Computer" (Papert and Solomon, 1971). The memo described a wonderful collection of activities, pushing computers in directions that few other people had imagined. Some of the activities on their list eventually became commonplace; others are still visionary today. A few years later, Danny Hillis (then an undergraduate at MIT) wrote a memo entitled "Ten Things to do with a Better Computer" (Hillis, 1975), describing a new set of activities that would be possible if computers could execute instructions in parallel. Hillis later realized some of these ideas in his massively-parallel Connection Machine computer (Hillis, 1985)."

Yes, definitely. That's only the first step into programmable power tools; think laser cutters, for example.

Second step; I forgot BeetleBlox and 3D printers.

For that matter, there are the Snap! extensions that aren't about the physical world, such as Edgy for graph theory. That'd go on the list, although another unstated goal in the Twenty Things paper is that they're things for youngish children, and Edgy is more aimed at undergraduates (18-22 years old).

I'd add to your list

  • Making animations with interactive parameters.

(That's my favorite)

One can interactively animate a fractal tree or plots/diagrams (math); it can be a virus spread (biology); it can be gravitation and/or magnetism acting on a chain of linked elements (physics); it can be text editing in text editor (office tool); it can be Benham disc; it can be various size/shape 'pointilism' (art); etc etc etc

Maybe someone can make a wiki post (is that what it's called?)?

I'm pretty sure that "x" should be a "cks".

Does this count?
Snap! 6.9.2 Build Your Own Blocks

That sounds interesting; are there any projects that do this? (that you know of)

Sure! Here:


  • Spice up your photos with your own graphic effects
  • Turn your voice into that of a giant / mouse / monster
  • Make a magic mirror
  • Turn your name into colors
  • Hide a secret in a song / picture
  • Make a weather / CO2 / air quality / tidal map
  • Make a painting entirely with dice


  • Making animations with interactive parameters.


  • Church numerals
  • Solving logic puzzles


  • Drawing patterns with math, especially
    • graphing complex functions like Binet's formula
    • this


Did the newline count to the 5 letters? Or the exclamation point?

The !, I suppose.

Apparently that is it.

OK but let's not steal the thread.

One thing that might not have been anticipated fifty years ago is the extent to which adults continue to enjoy using tools like Snap! throughout their lives. Contributions from the Snap! forum appear to come from participants from a wide range of ages. This also seems to be true for related user communities like the TurtleStitch discussions.

The success of a school orchestra is not measured by the number of students who go on to play in professional orchestras. Similarly, the success of a student drama or school play is not judged by the number of participants who go on to become professional actors. Rather, an important rationale for inclusion in the curriculum is lifelong enrichment. Yet the language around programming and coding often focuses on workforce development – the need for workers in STEM fields and the need to remain competitive as a nation. As a result, a significant percentage of federal funding in these areas is directed to STEM fields.

Is there a case to be made for coding as a lifelong recreational pursuit similar to the benefits of participation in community music and theater activities? The same qualities that make Snap! effective as an educational programming environment also make it attractive for recreational activities. Recreation in this instance might be described that anything done for personal enjoyment that is not dictated by school or work. Many – if not the majority – of activities discussed on the Snap! forum likely fall into this category.

A list of “Twenty Things to Do with Snap!” that include activities for a wide range of age groups and capabilities – from novice to experienced users – seems more interesting and useful. I personally would vote for casting a wide net even if the focus of the original paper was narrower. Diversity in a list is better if the goal is to stimulate and provoke thought. Ideally the current list is inspired by the original Twenty Things paper but not constrained by it.

"Authors include Cynthia Solomon, Sugata Mitra, Conrad Wolfram, Audrey Watters, David Thornburg, Yasmin Kafai, Dale Dougherty, Nettrice Gaskins, Dan Lynn Watt, Molly Lynn Watt, Gary Stager, Artemis Papert, Stephen Heppell, along with forty other brilliant thinkers and legendary educators."

I'm one of those forty. :slightly_smiling_face:

@toontalk This looks terrific! My copy will arrive on Wednesday, and I'm looking forward to reading it.

Is there a reason that the book is not being made available in electronic (Kindle) format? My wife also would like to read it, but would need the ability to increase the font size (on her Kindle) in order to read it.

Good question about an e-book. Best to ask sylvia@inventtolearn.com and gary@stager.org

I'll get my free copy next month in return for contributing a page or two.

@jens We used discussion in this strand as the basis for an article, "Twenty Things to Do with Snap!" for publication in the CITE Journal along with the original 1971 "Twenty Things" paper:

Brian reviewed it and made revisions. Could you read it and make further revisions that you judge would be useful to a general audience of teachers? For example, would it be helpful to include a few words about the design principles that guide development of Snap! ?

@toontalk I followed up with Gary, who contributed an essay about development of his book of readings ("Twenty Things: Forward 50"). Thanks for bringing this to my attention.