Stories
Slash Boxes
Comments

SoylentNews is people

posted by martyb on Tuesday April 13 2021, @02:31AM   Printer-friendly
from the ⌘-Z dept.

Developer Tim Bray, of XML fame, has written an ode to The Sacred "Back" Button.

Younger readers will find it hard to conceive of a time in which every application screen didn't have a way to "Go Back". This universal affordance was there, a new thing, in the first Web browser that anyone saw, and pretty soon after that, more or less everything had it. It's a crucial part of the user experience and, unfortunately, a lot of popular software is doing it imperfectly. Let's demand perfection.

Why it matters · Nobody anywhere is smart enough to build an application that won't, in some situations, confuse its users. The Back option removes fear and makes people more willing to explore features, because they know they can always back out. It was one of the reasons why the nascent browsers were so much better than the Visual Basic, X11, and character-based interface dinosaurs that then stomped the earth.

Thus I was delighted, at the advent of Android, that the early phones had physical "back" buttons.

[...] Nowadays Android phones don't have the button, but do offer a universal "Back" gesture and, as an Android developer, you don't have to do anything special to get sane, user-friendly behavior. I notice that when I use iOS apps, they always provide a back arrow somewhere up in the top left corner; don't know if that costs developers extra work.

[...] People using your software generally have a well-developed expectation of what Back should do at any point in time, and any time you don't meet that expectation you've committed a grievous sin, one should remedy right now.

The undo function has been around since the beginning, though invented and reinvented several times. Some systems got it much later than others, but now its presence is universally expected.


Original Submission

 
This discussion has been archived. No new comments can be posted.
Display Options Threshold/Breakthrough Mark All as Read Mark All as Unread
The Fine Print: The following comments are owned by whoever posted them. We are not responsible for them in any way.
  • (Score: 2) by hendrikboom on Tuesday April 13 2021, @04:01AM (11 children)

    by hendrikboom (1125) on Tuesday April 13 2021, @04:01AM (#1136838) Homepage Journal

    One useful thing XML accomplished which others didn't was namespaces for tags.
    The rest of the notation should have been accomplished more simply.

    Starting Score:    1  point
    Karma-Bonus Modifier   +1  

    Total Score:   2  
  • (Score: 4, Insightful) by Anonymous Coward on Tuesday April 13 2021, @05:18AM (9 children)

    by Anonymous Coward on Tuesday April 13 2021, @05:18AM (#1136868)

    The only reason XML took off was because the web was taking off back then, and XML looked like HTML, and everyone thought HTML must be the future because that's what webpages were. I am serious, and it is just as dumb as it sounds. Using a text markup language as a data language--completely inappropriate paradigm. You're not marking anything up. XML has no support for basic data types like dictionaries or lists. JSON was the obvious successor that fixed the fundamental stupidity of XML.

    • (Score: 0) by Anonymous Coward on Tuesday April 13 2021, @05:25AM

      by Anonymous Coward on Tuesday April 13 2021, @05:25AM (#1136873)

      Yeah just try to address the things people tried to do using regex D: my mind just melts when I see some of these shitpiles.

    • (Score: 5, Informative) by sjames on Tuesday April 13 2021, @05:41AM (2 children)

      by sjames (2882) on Tuesday April 13 2021, @05:41AM (#1136878) Journal

      This exactly.

      Then add all the marketing hype where people actually thought that two unrelated apps would magically inter-operate just because they both used XML. As if the industry hadn't JUST gotten over the idea that being CORBA compliant wouldn't, in fact, allow arbitrary unrelated apps to magically inter-operate.

      Then they piled it deeper and claimed UML expressed as XML would magically allow the average PHB to produce clean working code! (seriously!) Personally, given a choice between that and monkeys with keyboards I would have bet on the monkeys.

      • (Score: 2) by digitalaudiorock on Tuesday April 13 2021, @01:46PM (1 child)

        by digitalaudiorock (688) on Tuesday April 13 2021, @01:46PM (#1137000)

        You know...all these same industry buzzword bullshit alarms go off every time I see anything about object storage. It's always struck me that storage should be dumb, and is arguably the last place you'd even want any of that bullshit. Yet just as with XML I tend to think there's a similar notion that just because an object has "intelligent metadata", everything in the world magically understands it. I think we've seen that movie before.

        • (Score: 2) by sjames on Tuesday April 13 2021, @08:33PM

          by sjames (2882) on Tuesday April 13 2021, @08:33PM (#1137114) Journal

          Absolutely! It's not intrinsically a bad idea as a layer of a filesystem implementation (inode=object, extent=object), but the ways it will actually be marketed and used will certainly make a hash of it.

    • (Score: 3, Informative) by Anonymous Coward on Tuesday April 13 2021, @06:49AM (4 children)

      by Anonymous Coward on Tuesday April 13 2021, @06:49AM (#1136888)

      Sure they can. Just add these to your DTD or translate to the appropriate schema:

      <!ELEMENT dict (di*)>
      <!ELEMENT di EMPTY>
      <!ATTRLIST di key CDATA #REQUIRED>
      <!ATTRLIST di value CDATA #REQUIRED>

      <!ELEMENT list (li*)>
      <!ELEMENT li (#PCDATA)>

      • (Score: 0) by Anonymous Coward on Tuesday April 13 2021, @12:49PM (1 child)

        by Anonymous Coward on Tuesday April 13 2021, @12:49PM (#1136961)

        You are implementing dictionaries and lists in XML, but there is no native, dedicated syntax for them. That's a huge piece of critical, missing functionality in a data language. Scalars, dictionaries, and lists are about all you need!

        • (Score: 0) by Anonymous Coward on Tuesday April 13 2021, @08:58PM

          by Anonymous Coward on Tuesday April 13 2021, @08:58PM (#1137123)

          I'm sorry, I misunderstood. What you really meant is that you needed TOOWTDI language instead of TMTOWTDI. Forcing your data into a predefined structure instead of using the structure already inherent in the data.

      • (Score: 2) by DannyB on Tuesday April 13 2021, @06:38PM (1 child)

        by DannyB (5839) Subscriber Badge on Tuesday April 13 2021, @06:38PM (#1137091) Journal

        Yes, that. Because of DTDs, when I edit various types of XML files, my IDE knows exactly what is allowed next. Any wrong tags or attributes are underlined in red . . . as I type.

        --
        If you think a fertilized egg is a child but an immigrant child is not, please don't pretend your concerns are religious
        • (Score: 0) by Anonymous Coward on Tuesday April 13 2021, @11:47PM

          by Anonymous Coward on Tuesday April 13 2021, @11:47PM (#1137168)

          Oh you will love this new tool, it's called Clippy. Fixes your problems.

  • (Score: 0) by Anonymous Coward on Tuesday April 13 2021, @01:15PM

    by Anonymous Coward on Tuesday April 13 2021, @01:15PM (#1136974)
    Every browser allows you to use any arbitrary name fora tag, which you can then manipulate with css and JavaScript. It’s just an undocumented feature. For example, you can create a <dateline> tag to hold the date, time, and location of a story. XML is shit.