— jong @ ITP

Hookpad is a tool for quickly prototyping musical progressions using intervals as building blocks:


Screen Shot 2014-11-10 at 12.06.20 PM












  • Relatively quick to get started / come up with something that sounds okay, once you understand the interface.


  • Unclear who the target user is. Someone with little to no musical background would have a difficult time understanding the features, while someone who understands musical intervals wouldn’t use a clunky online tool to prototype. Is there a middle ground?
  • Many of the features are heavily tied to musical notation. E.g. time signature, inversions, emb?
  • Interface is clumsy and bloated: the click to add + drag to increase the note length is not intuitive.

Changes I Would Consider Implementing

Simplify the interface: limit the number of features available to augment the musical progression. I would remove things like chord inversions, and time signature — or at least attempt to make them more generic features.

Make the entire interface drag + drop: this is a more natural / common interaction on the web, and eliminates the musical notation assumption of building in order or writing a rest.


Read More

For the past week, I’ve been collecting tweets with the phrase, “Temple Mount”.

I’m curious about this topic for several reasons:

  • From a newsworthy perspective: Israel has recently closed and opened for safety reasons — preventing anyone from praying atop it, which includes the Al Aksa mosque, the third holiest site in Islam.
  • From a religious perspective: Judaism, Christianity, and Islam all revere it as a physical, holy site.
  • From a community perspective: Because it’s a relatively revered site, the communities that are interested / talking about it should reveal something.

So what could be done with this data? What hunches do I have about what the tweets will reveal, especially after the last week of tensions in and around the physical area?

What I’m hoping to learn about are the groups of people talking about the issue. Who does it matter to, and why? What we know is that far right-wing Jews desire the right to pray atop the mount (something that’s forbidden with the current status quo), but are there other communities invested in the topic? Who is viewing this as an escalation, versus justified, versus another precursor to violence?

Read More

Over the months of September and October, the trending topic “May Allah” appeared on Twitter in eight different geographic specifications:

‘Kuala Lumpur’, ‘Malaysia’, ‘Klang’, ‘Petaling’, ‘Hulu Langat’, ‘Pakistan’, ‘Singapore’, ‘United Arab Emirates’

5 of 8 of these regions are in Malaysia. Here is a plot showing the number of times per five minutes the May Allah topic was trending in each country:

Screen Shot 2014-10-29 at 2.11.52 PM

Here is a lag plot — a measure of how “random” the dataset is.

Screen Shot 2014-10-30 at 12.16.41 AM

Read More

For a midterm, I prototyped a sequencer called “stock music”. Here is the premise:


  • Patterns in nature are abundant, allowing us to model and represent them via scientific, abstract, or creative means. 


  • What patterns can we observe man made structures / institutions, for example the financial markets?*
  • Could we hear those patterns?

*Typically a question reserved for economists, bankers, traders, etc.


Create a sequencer whose steps represent the latest price & trading information for given stocks / indices.

Here is what the first prototype looks like:

Screen Shot 2014-10-27 at 12.20.24 PM

Read More

This one lets you change the height of the bars to change the frequency of the step.

bar sequencer

I struggled a bit this week to challenge myself. I’m continually tempted to just build a fully functioning, robust sequencer that works in the browser. But I’m not sure this would be a fruitful exercise for a couple reason:

  1. Sequencers are a valuable framework to explore computer music, but I’m not convinced they’re the route I want to explore with code of music.
  2. Physical sequencers are great interfaces, but with the web you run into a lot of design challenges / issues because of space and lack of physical affordance. If I’m going to do something on the web, it should take advantage of something more interesting (e.g. sockets, 3D, etc.)
Read More

Spent the last week using traceroute to try to get an understanding of where my Internet traffic is routed through when I browse the web.

The following sites were pinged from various locations across NYC (my apartment in Williamsburg, ITP, Crown Heights, a couple coffee shops, a bar …):
- google.com
- twitter.com
- jffng.com
- nytimes.com
- timesofisrael.com
- weibo.cn

It was a pretty simple bash script to get the job done:

traceroute google.com >> traceroutedump.txt
grep '\(.+\)' ./traceroutedump.txt -E -o > ips.txt

This gave me a list of the ips, of then I parsed and handled in python for a few operations:
- getting rid of the parentheses surrounding each IP
- using a rest API to return the location of that IP
- creating a network graph of all the cities those IPs originate in (or just IPs if no city could be found) .

The graph resulted in something like this:



My takeaway here is that final destinations are often obfuscated from understanding exactly where the traffic is going — making long hops over routers who will not return the address before reaching the final destination.

Read More

Made an 8 step sequencer based of Yotam Mann’s Tone.js Transport example.

The sequencer also makes use of a basic music theory library I made last semester, randomly generating 8 steps in the G major scale.

Sequencer here, code here.

Read More

Using Gephi on my macbook air is a battle. Much of my time in constructing the following graph was attempting to find juusssttt the right number of labels to display that wouldn’t crash the program and, subsequently, my computer.

Anyhow, here is the graph I ended up with, showing cooccurence of words in tweets with the hashtag #adrianpeterson:


1. Partitioned by modularity with a resolution 1.5
2. OpenOrd layout
2. Expansion layout

Read More


This week in telephony, I made a simple app that lets you hear three different laughs, or choose to record your own as a voicemail and send it to me.

Unfortunately, two of the laughs are a bit annoying in my opinion. But the idea is there.

Extensions code is here. 

Voicemail config is here.


Read More

First code of music class, gave this sequencer a spin:

Screen Shot 2014-09-11 at 1.39.14 PM

Pretty poorly designed:

  • Unclear what the numbers above each step do / how they affect pitch
  • Parameters are all at the top, grouped together.

Adarsh and I made an attempt at redesigning it. Here were two pieces of sage advice we received from oblique strategies:

  1. Listen to the quiet parts
  2. Which parts can be grouped?


Read More