Skip to content
3 November 32010 / Robin Wellner

Crazy idea: visual command line

Here’s another crazy idea, inspired by the latest entry in the wonderfully original programming-and-more blog Programming in the 21st Century: why not use a GUI to chain together programs, like in a command line?

A simple mockup, equivalent to grep something Input.txt | wc

What I have in mind, is an application, comparable to a shell, which allows you to drag and drop commands into a working area. There are data source commands, where you can get data from a file or from a text field, filter commands, which process the data they are given and pass it on, and target commands, which can store data in a file, put it on screen, etc.

Sounds familiar? It should. This is just like plain old Unix pipelines. Of course, because we add a second dimension, these graphical pipelines can be much more powerful than textual ones — unless you resort to temporary files and other messy solutions. But in my idea, we can avoid that.

Another mockup, this shows tee Out.txt | wc, with the input being read from the keyboard.

Another thing I think makes this interesting, is that we can change something early on in the pipeline, and all the elements that depend on it are refreshed automatically.
This could cause some worrying about efficiency and problems with administrative tasks, but I don’t see this used in time-critical or administrative settings, but to allow moderate to advanced users a way to harness the power of the command line without getting bogged down in details or having to learn something they don’t want to learn (at least for now).

If you feel like protesting, that this is just dumbing down the command line into a GUI or something ridiculous like that, think of this: if you are reading this blog, you are probably not in the intended audience for this application. However, you’ll have to admit: it would be incredibly awesome to use this once, to play with it, to see what you’ve always done blindly. (Apologies if you’re actually blind. In that case, I said nothing.)

I’m not sure this makes sense, if this would actually work, if this has a future. But hey, it’s just another crazy idea.

Last but not least, I’d like to close this blog from a quote from the tagline of Programming in the 21st Century, which I think fits with this idea quite well: “It’s not about technology for its own sake. It’s about being able to implement your own ideas.”



Leave a Comment
  1. Nout van Deijck / Nov 7 2010 13:25

    Hey, I don’t wanna act like a wet blanket, but on Mac OS X we have something like Automator which exactly does like you’ve described in your post….

    Some screenshots from my own (some workflow I just created, they call a series of commands and processes a workflow (takenreeks), you can save it either as a workflow, that you can access from richt-mouseclick, or topmenu, or save it as an app or mapaction):

    Still a nice idea though!
    kind regards

    • Robin Wellner / Nov 7 2010 16:37

      Yeah, I’ve been notified. Didn’t know about it when I wrote the post.

      Although it’s cool it actually exist, I think there are some aspects (mostly complex data flows) that are not possible in Automator, but I can’t say for sure, since I’ve never seen it in action.

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

%d bloggers like this: