Group Abstract Group Abstract

Message Boards Message Boards

Mathematica as the media for thinking about the unthinkable

Dear community members, after watching this video by Bret Victor, I'm wondering if Mathematica could become the media for thinking about the unthinkable. What are your thoughts? How easy would be to replicate and extend the examples shown in the video using Wolfram Language?

Bret Victor - Media for Thinking the Unthinkable

enter image description here

15 Replies
Posted 10 years ago
POSTED BY: Douglas Kubler

I looked at this video and several others by Bret Victor. The examples he gives are interesting, but I don't think that they scale.

I think that the most important thing is interactivity, whether one is manipulating graphics or writing code snippets. Fro the most part, I think it would be faster to build up a graphic or an analysis by building up Wolfram Language code than to do all the (similar in principle) steps needed to make a graph directly.

More could be done in Wolfram Language, of course. The suggestions bar could be made more robust, and the function to roll up all the changes made with the suggestions bar could be made more robust. It should be possible to have a command like "Turn this into a function" or even "make these functions into a package". The idea is to make things as transparent as possible. There are some actions in WL that tend to break this transparency.

I used to write music. I started with this at a time when you had to use pen and paper. I welcomed even the most primitive software. However, none of it is transparent. Right now, with software like Finale, you can play on a keyboard (or use a microphone for a flute or Violin) to enter music. It is certainly more transparent than using the computer keyboard to enter one note at a time, but there are drawbacks. First, you need to be really competent in the instrument to make it work. Second, there is still an awful lot of work to clean up even the best transcriptions. Third, it works best for things like simple music or choral music. For complicated stuff, a composer still needs to have the fine control that only manipulating single symbols provides.

In a similar way, direct graphic manipulation to make code may be useful for a lot of simple cases, but there comes a point where only code will do well. For some things, such as 3-D plots or large data sets, direct manipulation would be much harder than code. What Wolfram Language provides is a faster, more intuitive (in the right hands) way to get things done with code.

Having said that, it would be nice to have more widgets for directly manipulating graphics in Wolfram Language.

Free standing Mathematica DynamicModules or Java applets are very nice and have their place. It would be nice if a DynamicModule could be converted to a Java applet within Mathematica and then put on a web page.

Nevertheless, we must recognize that these objects are rather small boxes. For example, Bret Victor's applet that Nasser points to has just a single 2D Slider as a control. (There are two examples but they are basically the same.) So this is indeed a small and restricted box! But a very nice display - Bret does have style.

If you want to do mathematics, science, engineering, physics or economics there is a much larger box you can work in - by many orders of magnitude. It's called a Mathematica notebook. Even better are notebooks backed by applications. DynamicModules can play (a modest) role in notebooks. The entire notebook, Mathematica and supporting applications will breath a more vibrant life into them.

There is too much effort in trying to provide "Mathematica without Mathematica". I don't think these efforts are really that successful as a means of communication. They don't really serve the scientific community. I'll believe the scientific community is being served when I see Mathematica notebooks on http://arxiv.org/. If students go to university they have to pay tuition, and buy textbooks. If people want computers and internet service they have to pay for it. If you want to fly to a scientific conference you have to pay air fare. If you publish a journal paper someone has to pay page charges. (But not for posting Mathematica applications and notebooks!) So why don't people just buy Mathematica and facilitate their work and communication? Be free to play in the big box.

Please no Java applets! Java is dying, chrome is already blocking them, most mobile phones and tablets can't/don't run them. Definitely not good to invest in Java. It will die soon, like flash did. Javascript is much better choice nowadays, it is very 'hot', and most browser do a lot of tricks to run it incredibly fast!

POSTED BY: Sander Huisman

Bret Victor frequency response of the filter example shown in the video (at 18:10 time), he has on his different web site, that one can interact with directly also. (bottom of the the page).

Of course, one can do this example and much more using Manipulate and Dynamics. Many examples at Demonstration site. But the nice thing about this example, is that it runs directly inside web page, and runs smoothly, with no additional installation of anything by the user.

If there is a way to compile Manipulate to Javascript (and any kernel code needed of course) and somehow be able to run Manipulate inside web page without any plugin, this will go a long way to make Manipulate more popular.

POSTED BY: Nasser M. Abbasi
Posted 10 years ago
POSTED BY: E Martin

I agree with you that it is not easy at all. However, the thing Bret made is probably even so not that easy! I can't imagine another programming language where you can 'whip out' these kinds of programs, he shows some nice visualisation and 'manipulation software' (for lack of better words) but the code behind it is definitely not easy.

POSTED BY: Sander Huisman

The examples he shows are very impressive, but also very very specialised! There is always a balance between those I think. Mathematica is less specialized but can certainly do the tasks he showed, but it will take some time to program them. But I'd bet it also took him quite some time!

POSTED BY: Sander Huisman

I completely agree that Mathematica could probably do amazing things. IMHO, the problem is that there's not so much clear information about how to create dynamic interactive interfaces and the existing documentation is spread all over the place. Until existing and potential users have access to that, people will still underestimate or be unaware of the power of the Wolfram Language. I hope Wolfram Media can publish some titles in the near future about the topic. It would really help to make Mathematica and the Wolfram Language go mainstream!

I think quite the contrary, this is one of the best areas covered. The doc's page on Manipulate links to 5 very extensive tutorials. Plus Manipulate and Dynamic pages have numerous examples. And more than 10,000 examples on Demonstrations.

enter image description here

POSTED BY: Sam Carrettie

Bjorn Tipling, the author of the post If programming languages were weapons, would possibly answer "yes", as he sees Mathematica as "a low earth orbit projectile cannon, it could probably do amazing things" ;-)

enter image description here

POSTED BY: Sam Carrettie

An interesting question. IMHO Mathematica is definitely the top interactive programing environment. I think you have to also consider Wolfram SystemModeler as it also represents visual interactive approach to programming. A related post: Climate change and programming?

POSTED BY: Vitaliy Kaurov
Reply to this discussion
Community posts can be styled and formatted using the Markdown syntax.
Reply Preview
Attachments
Remove
or Discard