4 ms·
GUI layout is not programming; it's GUI layout. (Or, more concretely: it's specifying a dataset.) When software construction is finally "solved", visual repre
by david927 15y ago
GUI layout is not programming; it's GUI layout. (Or, more concretely: it's specifying a dataset.)
When software construction is finally "solved", visual representations and interfaces will be common. Our current mechanisms are simply too crude, lacking sufficient methods of abstraction, to work well. In fact, they do the opposite and point out what deep flaws exist in the current state of the art.
- nostrademons 15y agoHTML, CSS, XML, SQL, JSON, YAML, and other configuration languages are also not programming; they're specifying a dataset. I can basically guarantee that any large project will have large quantities of them, though, and that code will have bugs. For that matter, Lisp is not programming; it's specifying a dataset. Except, well, it actually is programming, because you can execute that dataset. When you push it far enough, the distinction between code and data disappears. This is probably an indication that software construction will never be "solved": once an acceptable representation has been found for one level of complexity, someone will quickly build on that and take it to the next level of complexity, and then the abstractions will once again prove inadequate.
- david927 15y agoIf I draw a picture, did I program? Are artists programmers? What if I try to execute that binary of a digital image? I would say: no to the first, yes to the last. I think it's a big difference: the aesthetic and basic syntax qualities of markup, the completeness of a list of invitations to a party, and executable code. To me, HTML, CSS, XML, etc. are not code and do not have real bugs; they have design flaws and syntax flaws, just as a picture may need more red or blue. (But note that I'm not sure there's a right answer here, and I certainly respect you and your opinion.) I also think that it's not about abstractions but better abstraction mechanisms which work to reduce complexity at any level. It may get more complex, but you can manage that complexity much more skillfully. I am absolutely confident that we can find better abstraction mechanisms.
- bartonfink 15y agoGUI layout in the sense of moving around graphical elements to produce a larger, desired image is not programming. GUI layout in the sense of creating a series of instructions for a computer to automatically create and display the same image is much closer to programming than you're making it out to be. In fact, I would say that it is programming at a higher level, as you're not producing an image - you're producing code that tells the computer how to produce that image. If that's not programming, I don't know what is.