Coffeehouse Thread

25 posts

Forum Read Only

This forum has been made read only by the site admins. No new threads or comments can be added.

Bret Victor's newly released

Back to Forum: Coffeehouse
  • User profile image
    fanbaby

    Recorded July 9, 2013:

    http://vimeo.com/71278954

  • User profile image
    fanbaby

    Just watched it:

    Presentation: 9.5/10, this guy is a master presenter!

    About the content, I think that the fact that we're not using visual programming, isn't entirely because we lack vision. Maybe we haven't found its right form.

     

     

  • User profile image
    Richard.Hein

    Thanks ... it's very good.  I think we don't use visual programming because the main input device is a text input device.  I think that will slowly change and we'll need some kind of shell that doesn't rely on text as the primary mode, and languages that don't rely on text as the primary mode.  Long road.

  • User profile image
    Bas

    I think it's weird that interface languages are still text-based. Sure, there are designers for them, but usually it's still more convenient to write them via text. I don't get why that is. Surely designing a visual component via a visual method would be less of a disconnect? Is it just that the tools are bad, because they are still based on 1990's concepts of what interfaces should be like, or is there some other reason?

    I don't get it. Nobody who works with a visual medium does so primarily via text. I don't see photographers editing XML files to tweak saturation and such. Why are software interfaces the odd one out?

  • User profile image
    kettch

    @Richard.Hein: Visual designers can work for high level concepts. I use SSIS all the time. I'd consider that a visual way of modeling program flow. We also use a workflow product from our document management system that allows a great deal of process modeling without having to write code. That one is all based on Windows Workflow. However, with both systems, you always have the option of throwing in a scripting object to get down to the metal.

    I don't know about using a general purpose visual language, but in a specific domain, it can work pretty well.

    @Bas: I'm happy with visual designers as long as they write clean markup. I think that's mostly true these days. FrontPage and the days of *drag drag drag* "Oh my god, WTF?" are gone. I'm happy to be able to drag out some stuff to get the rough structure in place, and then switch to code in order to tweak things to perfection. For me it's because the mouse is so imprecise.

  • User profile image
    felix9

    If your primary input device is Kinect then you can programming in interpretive dance Smiley

    http://www.reddit.com/r/ProgrammerHumor/comments/1cnr5m/xpost_rcrazyideas_a_programming_language_where/

  • User profile image
    Bas

    , kettch wrote

    @Bas: I'm happy with visual designers as long as they write clean markup. I think that's mostly true these days. FrontPage and the days of *drag drag drag* "Oh my god, WTF?" are gone. I'm happy to be able to drag out some stuff to get the rough structure in place, and then switch to code in order to tweak things to perfection. For me it's because the mouse is so imprecise.

    However, you want it to write clean markup because you want to work with the markup. Otherwise, it wouldn't matter if the markup were clean, let alone readable. And if we need to resort to text for precise tweaking, then that to me suggests that there is still something wrong with the designers. Again, I never see someone use a stylus in photoshop and then crack open an xml editor to tweak their photo's.

  • User profile image
    kettch

    @Bas: I agree. Is it because the tools suck, or because we don't trust the tools? I remember switching to WinForms after being in VB6 for a while and being happy that all of the UI was expressed in code. I never actually made any changes to it, but it made me happy that it was there.

    I've spent some time with Lightswitch, which has no way to edit the UI in code. It does everything based off of fields in the dataset and presents you a tree view that you add fields to as opposed to adding controls. I don't know if that's the best way to do it, but it works well for the capability that it provides.

  • User profile image
    Richard.Hein

    , felix9 wrote

    If your primary input device is Kinect then you can programming in interpretive dance Smiley

    http://www.reddit.com/r/ProgrammerHumor/comments/1cnr5m/xpost_rcrazyideas_a_programming_language_where/

    LMAO, funny.

     

  • User profile image
    Richard.Hein

    , Bas wrote

    *snip*

    However, you want it to write clean markup because you want to work with the markup. Otherwise, it wouldn't matter if the markup were clean, let alone readable. And if we need to resort to text for precise tweaking, then that to me suggests that there is still something wrong with the designers. Again, I never see someone use a stylus in photoshop and then crack open an xml editor to tweak their photo's.

    Yeah, I think the tools suck for non-text input.  I mean we're kind of stuck in a text as the canonical representation of ... whatever ... everything.  We can't do simple things like mix text and images arbitrarily and have true composition of media when we always ultimately boil it back down to text form.  The types of input, be it visual, auditory and even tactile or scent - raw sensory information ... that's got to become the form of input, and we then have to create a system that understands raw sensory primitives, which happens to include text.  Text could be treated as purely visual images, and when it's all mashed together with other images or other sensory inputs, the system has to interpret how all this mishmash of input needs to be composed.  It's extremely complicated, because what I'm essentially talking about is something that simulates and interprets sensory input like the human brain.  And we certainly don't convert everything we hear or see into a pure text form.  Even if a computer could understand information like a human being does, we still need tools for rapidly creating complex sensory experiences, that can be used as an input device.  Right now, it's an art form ... and it will certainly continue to be one, but hopefully one that we'll have better and better tools for.

    To start imagining small, why is text, and documents created from text, 2D?  Restrictions of the medium, and the abilities of the writer to artistically draw out what they want to communicate ... it's a form of projection and compression of 3D and higher-dimensional concepts.  What would a 3D text-based language look like?  Would you embed 3D models of real objects directly as words, rather than have a phonetic alphabet represent everything - 3D pictographs?  If you forgot everything you know about writing today, and could reinvent it with current technology, how would writing evolve?  Maybe the symbols would take up a limited space, and transform over time in place, instead of being spread out everywhere, and you'd play a document like a movie, rewinding and fast-forwarding at will.  Maybe you'd have to design the symbols using topology, to find the ideal shapes to allow smooth transformations from one to another.  I don't know.

     

  • User profile image
    figuerres

    I think that one of the things is that we have all spent say 2+ decades learning how to write text to communicate our ideas.   Like right now... why am I not putting an audio clip or a movie here to say this ?

    think on that, and on how we train our selves to "read" and understand.

    another part of it is the problem of how to translate a text based programing language into a symbolic network that we can all view.

     

    class diagrams, flow charts and UML have each been efforts to visualize elements of programming.

    but how much are they really used by more than a limited number of developers and why is that ?

     

    I have long pictured a form of "Exploding Flowchart" to view and edit code but I have never had the time to spend creating the editor for it.  heck the tooling needed to take even one language and do the transforms to and from text and the object graph is not a small thing....

    do you store the program code as text? as a graph? both ?

    what happens to compilers as a result ?  would a graph make the compile process better ?

     

  • User profile image
    fanbaby

    , figuerres wrote

    I have long pictured a form of "Exploding Flowchart" to view and edit code but I have never had the time to spend creating the editor for it.  heck the tooling needed to take even one language and do the transforms to and from text and the object graph is not a small thing....

    Hah, we do share a common interest after all Smiley

  • User profile image
    kettch

    In thinking about visually laying out program operations, I realized that text can be extremely dense. 20-30 lines of text code could require a lot of real estate in order to express in other ways.

  • User profile image
    figuerres

    , fanbaby wrote

    *snip*

    Hah, we do share a common interest after all Smiley

    Hey, I have a *lot* of ideas and interests, just that when I ask a question I want an answer to the question I asked.

    That Aside and back on the topic:

    I can at times "See" the answer to a problem but not in the form of a picture of a thing nor a picture of the code but in a - how to say it -  I can put it into code but it's like a chunk of data, not exact but it's there ....

    I like some of the ideas of a flow chart that would be interactive.  but we need a set of meta symbols like "FOR LOOP" , "WHILE LOOP" , "CASE BLOCK" and a container that works like the C# {}

    to allow levels of detail to collapse into a simple diagram / graph that gives the higher level abstraction of the algorithm at hand.

    such a tooling may also be of help if you have to work with some large source tree you are not familiar with, if you can get a high level map of what goes to what in the package so that you can find the part you want to modify.

     

  • User profile image
    davewill

    @figuerres: Yes! and be able to drag and drop things in and out of those constructs at a high level and low level.

  • User profile image
    kettch

    @davewill: I could see that as a way of abstracting an existing code base, but I can't imagine having to write anything meaningful that way.

  • User profile image
    davewill

    @kettch: I sure could. The biggest problem I have is my brain is working on 14 different areas of the code base. If I had visual access to those areas of the code base up on a wall or big board and I could quickly move back and forth between those 14 areas without losing the particular thought for that area before a thought for another area takes over ... pure awesomeness.

  • User profile image
    kettch

    @davewill: I'm not sure we're all talking about the same thing. Somehow I got the impression that we were talking about actually writing functionality using some kind of visual language construct.

Conversation locked

This conversation has been locked by the site admins. No new comments can be made.