Catch up on stories from the past week (and beyond) at the Slashdot story archive

 



Forgot your password?
typodupeerror
Programming IT Technology

The Pitfalls and Perks of Adopting a New Standard 87

Posted by ScuttleMonkey
from the don't-argue-do-it-my-way dept.
Monta writes to tell us that IBM DeveloperWorks has an interesting article about the pros and cons of 'adopting a standard before it becomes one'. From the article: "Whether a standard will succeed and be widely adopted is ambiguous at first, regardless of who endorses it -- a major player or a fringe element. So if most people don't like to welcome the new guy, why would they put all their eggs in a standards basket when that basket might not exist tomorrow?"
This discussion has been archived. No new comments can be posted.

The Pitfalls and Perks of Adopting a New Standard

Comments Filter:
  • Yeah... (Score:5, Funny)

    by GillBates0 (664202) on Wednesday October 19, 2005 @03:05PM (#13829912) Homepage Journal
    Whether a standard will succeed and be widely adopted is ambiguous at first, regardless of who endorses it -- a major player or a fringe element

    ...we really need a standard way of adopting a new standard.

    • Re:Yeah... (Score:4, Funny)

      by Tribbin (565963) on Wednesday October 19, 2005 @03:10PM (#13829958) Homepage
      There already is.

      1. Wait for a good open standard to come out.
      2. Embrace.
      3. Extend incompatibly.
      4. PROFIT!!!
    • Re:Yeah... (Score:3, Insightful)

      by Fred_A (10934)
      I know this was meant as a jest, but we already have one and it works too (or more truthfully, it used to).

      It goes like this :
      1. Write an Internet-Draft RFC
      2. Implement (twice) the standard to be and deploy it
      3. Create a working group and document how your two different implementations work great together
      4. Write a Draft-Standard RFC
      5. Write a mail rule to redirect flames to /dev/null
      6. Reword your Draft Standard and write a Proposed-Standard RFC
      7. Empty /dev/null which overflows from all the flames that were dumped into it
      8. ???
      9. W
  • by Anonymous Coward on Wednesday October 19, 2005 @03:07PM (#13829938)
    So if most people don't like to welcome the new guy


    I, for one, welcome the new guy!

  • Sometimes... (Score:5, Insightful)

    by Stanistani (808333) on Wednesday October 19, 2005 @03:08PM (#13829947) Homepage Journal
    Getting a product to market with a new technology can advance the adoption of a standard.

    Chicken, meet egg.

    Of course it's a gamble...
    but that's one way to make the big money.
    • Re:Sometimes... (Score:3, Insightful)

      by Myu (823582)
      Getting a product to market with a new technology can advance the adoption of a standard.

      It is, arguably, the only way to advance it. No matter how efficient a standard is at its job, it doesn't become "Standard" until successful implementation.
    • Reptiles lay eggs too. And some mammals, too.
    • I think you meant "Egg, meet chicken". Since the egg came first and all. Or..wait.
    • Re:Sometimes... (Score:2, Informative)

      by ergo98 (9391)
      Getting a product to market with a new technology can advance the adoption of a standard.

      This is true not only for standards that spend years wallowing through standards boards - someone releases an implementation, and it lights a fire under their asses to get something out the door - but also by creating de facto standards that advance the state of the art. Most of the innovations didn't come from large and wide standards bodies, but rather by a couple of people who did something that was adopted and sprea
  • Examples (Score:5, Informative)

    by Bogtha (906264) on Wednesday October 19, 2005 @03:09PM (#13829949)

    For one example of pitfalls and perks, consider stylesheets. Netscape threw their weight behind JSSS, Internet Explorer threw their weight behind CSS. CSS got taken up by the W3C, JSSS got chucked. Internet Explorer 3 was first with CSS support, Netscape 3 had none, and Netscape 4's CSS support was an abysmal wrapper around JSSS.

    Another example is XSLT; Microsoft implemented a draft version, and ended up with support that was incompatible with the final specification and later versions of their own browser.

    Of course, who was first doesn't matter in the long run. What matters is an ongoing commitment to conformance - being first with partial support means nothing if you do as Microsoft did with CSS and forget to implement the rest for years.

    • Re:Examples (Score:2, Interesting)

      by GWBasic (900357)
      Maybe Microsoft learned their lesson and isn't being quick to adopt the Open Office file format until it's been established with clear customer demand?
      • Re:Examples (Score:4, Informative)

        by Bogtha (906264) on Wednesday October 19, 2005 @03:53PM (#13830368)

        "Established with clear customer demand" is not the same thing as being published as a completed specification. The OpenDocument format has already been published as a completed specification, so it's an entirely different situation to implementing an unfinished specification.

        Note that the OpenOffice document format is the older, discontinued format; OpenDocument is the newer, standardised format.

    • Re:Examples (Score:4, Informative)

      by grcumb (781340) on Wednesday October 19, 2005 @04:57PM (#13830912) Homepage Journal

      I was going to moderate this thread, but there's no 'factually incorrect' rating available, let alone 're-writing history', so I'll have to reply instead....

      "For one example of pitfalls and perks, consider stylesheets. Netscape threw their weight behind JSSS, Internet Explorer threw their weight behind CSS. CSS got taken up by the W3C, JSSS got chucked."

      Several corrections:

      1. Microsoft did *not* throw its weight behind CSS as a standard - they openly espoused 'extending' it with proprietary attributes and behaviours. HTML 4 and CSS 1 are the first examples of MS' 'embrace and extend' lock-in tactic. To characterise this as anything other than subversion of the standardisation process is disingenuous at best.
      2. IE 3's CSS implementation was so broken that people resorted to relying on its broken Cascade model (the C in CSS) in order to avoid sending any directives to it at all. Google 'dummy-rules.css [google.com]' for details on this.
      3. CSS did not get 'taken up' by the W3C; it was designed by the W3C. And this was not, as you imply, a result of MS' support. Believe me, CSS did not succeed because of IE, but in spite of it.
      4. MSIE 3 was, IIRC, not the first popular browser to support CSS. I believe that honour goes to Opera.
      5. JSSS did not get chucked so much as it got dropped. It was a pretty transparent ploy on Netscape's part to control the future of the web, and given their experience with Netscape's impositions in the past (including the <blink> abomination) nobody was willing to buy into it. While Netscape may have submitted the JSSS spec as a draft standard to the W3C, it was never officially supported. The W3C has to consider submissions from all of its members - it's a consortium, after all - but a submission should never be construed as support.

      "Another example is XSLT; Microsoft implemented a draft version, and ended up with support that was incompatible with the final specification and later versions of their own browser."

      To my knowledge, MS has *never* done a clean implementation of any Internet standard where they didn't absolutely have to. While their TCP/IP stack (which was based on the Berkeley implementation) may more or less work as advertised, their web browsers, email software and Internet-related developer tools have always been skewed from the relevant standards.

      Micosoft does provide some object lessons in the difference between de facto standards and true standards, but I would hesitate to claim that it ever made any effort to support or adhere to any open standard.

      • Re:Examples (Score:4, Informative)

        by Bogtha (906264) on Wednesday October 19, 2005 @05:56PM (#13831244)

        Microsoft did *not* throw its weight behind CSS as a standard - they openly espoused 'extending' it with proprietary attributes and behaviours.

        Well right off the bat, CSS doesn't have attributes, so you are wrong there. Do you have a cite for the "openly espoused extensions"? And how can you say that it didn't throw its weight behind CSS when it was both the first to implement it and a member of the W3C when they took it on?

        IE 3's CSS implementation was so broken that people resorted to relying on its broken Cascade model (the C in CSS) in order to avoid sending any directives to it at all.

        What's your point? I already alluded to incomplete implementation, nowhere did I say that Internet Explorer 3's support was complete.

        CSS did not get 'taken up' by the W3C; it was designed by the W3C.

        Wrong. CSS originated outside of the W3C. The first draft of the CSS specification was written by Håkon Wium Lie and published in 1994. The W3C wasn't even operational until the following year - although it was founded in the same month as the draft was published, it took a while to get up and running.

        And this was not, as you imply, a result of MS' support.

        You are reading too much into what I am saying if you think I implied that. However, it may be true. From Cascading Style Sheets, designing for the Web, the book about CSS written by the creator of CSS, it states:

        The workshop was also an experiment to see if it was possible for W3C to organize events outside the US. Indeed, this turned out to be possible and the workshop was a milestone in ensuring style sheets their rightful place on the Web. Among the participants was Thomas Reardon of Microsoft who pledged support for CSS in upcoming versions of Internet Explorer.

        MSIE 3 was, IIRC, not the first popular browser to support CSS. I believe that honour goes to Opera.

        You don't recall correctly. From the above cited book:

        Had it not been for the browsers, CSS would have remained a lofty proposal of only academic interest. The first commercial browser to support CSS was Microsoft's Internet Explorer 3 which was released in August 1996.

        JSSS did not get chucked so much as it got dropped.

        Chucked and dropped are synonyms in this context. What distinction are you drawing?

        • Re:Examples (Score:3, Insightful)

          I read the first guy's post and I was like "wow he really has some good points." Then I read your post and I was like, "wow, that first guy was an idiot." It really goes to show how far someone can go with a bunch of stuff put together with no factual basis and a bunch of terms from the topics at hand thrown in. I can't believe I didn't catch several of the things you pointed out about his post on my first reading.
    • And another example in a sense is UML (Universal Modeling Language). It's not like something else came through and stole UML's thunder, but only betwen 10 and 20% of software developers use modeling consistently at all (from Software Developer magazine, Brian Selic interview).

      Standards are a strange beast in this way as sometimes there's no need for a standard in the first place...

    • Being that this article came from IBM, some of thir standards flops should be mentioned. Well, at least one of them.

      I give you exhibit 1: Micro Channel Architecture [wikipedia.org], a peripheral bus which was meant to replace dumb 'ol ISA with something smarter, but which ultimately lost out to PCI.
  • Assuming a normal distribution on the bell curve, aiming for "standard" is to aim right for the big, juicy middle of the curve. Doesn't that mean you're aiming for average overall?

    What does it mean to have or be a "standard"? Average business practices? Average technology? "Average" doesn't sound too bad, but the word "mediocre" sure does. As a business owner, I would hate to have mediocre technology.

    When your software is online, running on servers, controlled entirely by you... why go for average

    • No seriously, You have nearly unlimited code and storage space for your programs in modern PCs. You have intelligent and hard-working programmers. And you have the specifications for the various 'standards'.

        So just code all the 'standards' into your program so that it just fu*king works! , regardless of what is or becomes the 'standard'. Please spare your customers all the BS excuses as to why the program that they bought doesn't function correctly.
      • "So just code all the 'standards' into your program so that it just fu*king works! , regardless of what is or becomes the 'standard'. Please spare your customers all the BS excuses as to why the program that they bought doesn't function correctly."

        Yes, and all developers, even small startups with possibly innovative products, have the resources to code the thousands of lines necessary.

        And, of course, apps are only developed for PCs.

        Let's make sure we have as much code bloat as possible when bringing n
        • Yes, and all developers, even small startups with possibly innovative products, have the resources to code the thousands of lines necessary.



          Share the code for all the standards. Don't reinvent the wheel. Have each company code one standard and freely share the code with all the rest of the companies.
          This idea that every company hires programmers to write the same functions for the same types of programs is just total nonsense that should have been abandoned in the mid 1980's.
          • I think you've missed the point of an accepted standard. No one wants multiple versions of something that accomplish the same thing equally, much less redundant standards that're inferrior. Do you really want an internet that supports every network protocol ever invented? Even if there were some magic way that all OS's could share protocol stacks just maintaining all that garbage would be a nightmare. As a programmer I certainly don't want to learn how to code to 15 different network protocol APIs. SMT
          • Yuo're still dealing with unnecessary bloat. It doesn't make any sense to have to insert code to deal with a dozen formats for data, or to create conversion utilities.

            The whole point of a standard is to increase efficiency by eliminating the need to reinvent the wheel.

            What you are talking about is not standards at all. Have each company create its own standard, and then have everyone else implement code to translate their format into the native format used by an app? That's not a standard at all, t
    • Wrong standard [reference.com].

      That's like comparing being a karma whore to to posting in English. Yes there's some grey area with technology standards since we do choose among new ones but it's still not the same.
    • by Red Flayer (890720) on Wednesday October 19, 2005 @03:39PM (#13830212) Journal
      Assuming a normal distribution on the bell curve, aiming for "standard" is to aim right for the big, juicy middle of the curve. Doesn't that mean you're aiming for average overall?

      No. Did you read the article, and understand any of it? If you did, maybe you'd understand what is meant by "standard."

      A standard, in this context, is not a statistical point or distribution of points that falls on a bell curve. It is not the "average" level of quality, it's not even a measurement of quality. It is, instead, a set of criteria that is generally accepted by consensus of the community. Typically, this is to allow interoperability and product substitution capacity, and is necessary for consumer adoption of new technology.

      Look at Betamax vs. VHS, for example. Would it do you any good, as a movie distributor, to create a new standard for videocassette content delivery that is better than Betamax or VHS? Because VHS is only "average"?

      To take that a step further, say you are developing what you hope to be the next "standard" for in-home movie content delivery, the Laserdisc. Would it make sense for you to develop an entirely new interface between the TV and your device, when most of your potential customers already have televisions that have coaxial cable connectors?

      Standard != average. Standard = used by the majority.
      • A new "standard" is to make everything into a Service Oriented Architecture. XML is the new standard for everything from communication and messaging, to remote procedure calls, to application configuration.

        Microsoft integrated XML pretty deep into .NET, so naturally they are trumpeting the usefulness of the XML standard and SOA. Have you noticed they sell tools? Have you noticed the implementations for SOA are so difficult that you need tools to create it? ($$$ for VS.NET, just to add [WebMethod] to a

        • No, you're still not using the word correctly. Javascript Object Notation is also a standard, as evidenced by the fact that you can go to www.json.org and read a complete description it. You're using the term 'standard' as in 'standard practices' or 'standard operating procedure', where 'standard' means 'common' or 'widespread'. This is about 'standard' as in 'a public specification'.

          Take the network protocol used for Windows filesharing. In the sense that you're using the term, that's a standard, by

        • I understand what you are saying, that adhering to a standard stifles innovation, or causes people to waste resources by working with that standard if it's not optimal.

          Sure, sometimes the standard is not the best option available. Look at Betamax and VHS -- most experts now would agree that Betamax was a better format than VHS. However, because more people adopted VHS, the video publishers (which equate to developers, here) published their content solely in VHS after a while -- it became the standard.
        • Actually, you used the word ambiguously. In fact you seem to be trying to deliberately conflate two different usages of "standard"; one meaning "commonplace", the other refering to an agreed protocol to allow interoperability.

          Microsoft integrated XML pretty deep into .NET, so naturally they are trumpeting the usefulness of the XML standard and SOA

          Oooh... Microsoft! Funny thing about Microsoft, but they suffered a major setback recently. Seems that the Commonwealth of Massachusetts opted for an indepen

        • I totally agree with you. I find XML tedious, boring, terrible to look at, and can't understand why people cum in their pants at its mention.

          Having said that, it's cheaper than porn, so perhaps it isn't so bad.

        • I think I get what you're saying. A dodgy standard can be a pain in the arse, especially if everyone does the sheep thing and follows it.

          Problem is that at a certain point of technological maturity a standard really is necessary, otherwise you get vendor lockin and all the associated grief. However, if the standard is formalised much before that time it won't be able to keep up with a still-high change, and probably won't be much good. The trick is either waiting til the right moment or being willing to
    • The different from Standards and Mediocre, is that standards are most widely used. It is basically how a business man protects themselves from making bad IT decisions. So if something is standard and the technology fails to do what he wants he just points to all the other people who are successful using it to show that he didn't make a bad decision. Mediocre just means it works well enough for what it is Does, in terms of the the Standard Deviation Curve Mediocre falls 1 to 2 deviation away from average
    • When your software is online, running on servers, controlled entirely by you... why go for average or mediocre? Why not be smart about it and go for something simple that bucks the "standard" trend? (SOA comes to mind).

      If you have a compelling reason to do so, and it's core to your business then by all means go for it.

      However, in general 'standards' are about fairly low-level base technologies. On top of that have higher level business logic / custom stuff for which there is no reasonable standard. Then o
    • Like you said, depends on what you mean by "standard".

      Look at web standards. They are useful because they encourage good coding practices and maintainability. Some people hate it when others throw around terms like "w3c standards" but having worked on projects that used standards and some that did not, I can tell you web standards are a good thing. In this case, they do not prevent innovation. Some may say "the w3c is just some organization with no real clout so why pay attention to their standards?
    • What are you talking about? The word standard has many definitions. One (the one the article is talking about) means something like "a set of rules that software developers adhere to so that different implementations work together." I made this definition up right now, so it may be lacking in some ways. Things that fit this definition of standard include (in my mind) FTP, HTTP, TCP/IP, the C programming language, etc. Now these things which I'm talking about, simply put, have absolutely nothing to do w
      • Actually, in the case of TFA, it's pretty clear that "standard" means "something approved by an official standards organization".

        That still leaves lots of rooms for ambiguity, of course, as there are over 180 countries on Earth, not to mention international standards bodies.

        Then there's the "standard American" definition, as exemplified by all the hardware stores that sell tools and other measurable things in two kinds of sizes: "metric" and "standard". (To people in the rest of the world: No; this is not
    • The "standard" was the banner your army flew on a battlefield. Rallying around a standard meant literally doing just that - going to where your banner flew. The "standard" was not the average or the norm, it was simply a statement of being. Normally, if anything, it would be at the front of the field, leading the way. Standard-bearers tended not to have long lifespans, in those days.

      However, that is the model I believe standards should follow today: "This is the point you should be reaching now", not "This

    • I believe you're confusing "standard" in the sense of "regular" or "average" with "standard" in the sense of "benchmark" or "target".
  • by Tribbin (565963) on Wednesday October 19, 2005 @03:14PM (#13829992) Homepage
    Stolen quote: The great thing about standards is that there are so many to choose from.
  • lets see (Score:2, Funny)

    by mayhemt (915489)
    lets see if we can /. IBM...
  • Good Quote! (Score:4, Insightful)

    by dkf (304284) <donal.k.fellows@manchester.ac.uk> on Wednesday October 19, 2005 @03:24PM (#13830086) Homepage
    "Great minds think alike; hurried developers make similar mistakes."
  • by 8127972 (73495) on Wednesday October 19, 2005 @03:32PM (#13830152)
    .... To make sure that Zonk doesn't post dupes.
  • Little Red: why would they put all their eggs in a standards basket?
    Big Bad Wolf: Heh.. Eggs??? Basket??? I didn't see anything... but why not?
    Little Red: Even when that basket might not exist tomorrow?
    Big Bad Wolf: *nervous laughter* Why would you think your basket would be missing tomorrow!?!?!?
  • by msauve (701917) on Wednesday October 19, 2005 @03:37PM (#13830201)
    "adopt a standard before it becomes one?"

    Is that like going to McDonald's, ordering a Chicken Sandwich, and getting an Egg McMuffin?

  • RS-232 (Score:4, Insightful)

    by mark-t (151149) <markt@@@lynx...bc...ca> on Wednesday October 19, 2005 @03:40PM (#13830231) Journal
    Many people adopted that "standard" long before it became EIA-232 (now TIA-232, I believe).

    Adoption that makes things become standard. Not the other way around. At most, all you do is create a "recommended standard", which is interestingly what the RS stood for in that famous 25-pin bus.

  • by Webmoth (75878) on Wednesday October 19, 2005 @03:41PM (#13830236) Homepage
    One well-adopted "standard" (which isn't a standard at all) is ID3 [id3.org] (and its successor, ID3V2), the standard for tagging files with metadata.

    The interesting thing here is that it is as standard proposed and written in the spirit of Open Source -- its development is moderated by a core group of loosely-knit volunteers, and anyone can contribute to the discussion.

    It has been adopted by practically every developer -- commercial, open source, Joe-in-Basement, etc. -- of multimedia software, even Microsoft.

    No standards body (IEEE, IETF, ISO, NIST, W3C, IANA, etc.) has accepted it as a standard; to my knowledge it has never been submitted to any organization as a proposed standard.

    By community involvement and acceptance, it has become a de facto standard, and for the most part everyone plays by the rules.
    • '...a de facto standard..."

      Man, do I hate that phrase.
      I've had bad experiences with it since Office 97 came out and was such a bloated POS that produced files that crashed Office 95 so bad that the organization just buckled and "upgraded".
      Why? Certainly not because it was vital to upgrade. It was just to move to the "de facto standard".

      I think MA is on the right track.
    • I'm still waiting for someone to invent IDX--an XML-based ID3 tag. I *hate* having...
      a million albums by Stevie Wonder
      a million albums by Paul McCartney
      Paul McCartney and Stevie Wonder - Ebony and Ivory
      why can't I just specify more than one artist for a song and have it show up under each separately? (Especially since so many duets are not made by people who sing together often.) First of all, it's a pain because I never know, for example, if I should scroll to P or S for that particular song. Secondly, it'
      • I understand.... I'd be upset if my music collection was full of Paul McCartney too.
      • It sounds like you are really looking for a relational DB format of ID tagging.

        A song can have many authors.
        An author can have many names
        An author can have many songs
        A name can have many authors

        You need a many-many for song/artist, for artist/name, for name/artist ("Monkeys", for example, may not mean the same people today as it used to), etc.

        In fact, you'll have many/many tables EVERYWHERE in a really complete system, and you're going to want some way to transfer information from one DB to another DB maint
        • Bah, I should not try to make database posts without a little p-coding as well.

          Ultimately, you're developing a distributed relational DB. Either you need to refer all new additions through a uniquing site (which will prevent duplication, and eliminate the need for large UUID's all over the place), or you'll need to have a way to unique duplications together at each end (which is yet more tables for recombining entries).

          Alright, I admit it: My RDBM experience is primarily non distributed; where it is distrib
    • Are you f*cking kidding me? Ask anyone that has ever had to write software for reading and writing mp3 tags (and not just utilizing someone else's id3 tag library) and they will tell you that it is a cess pool of pain.

      The original ID3 tag format (v1) was HORRIBLE:
      - Artist/Title fields limited to 30 characters.
      - The genre was just a fixed number, an index into a list. This meant that everyone had to agree that 136 is "Christian gangsa rap". This list of genres is done differently by various programs, whic
  • In Korea only old people follow standards!
  • When something new comes out, there will be a tendency to ignore it and watch it out of the corner of the eye to see if it goes away. Once something grows in size and complexity, it looks intimidating to get into. That disadvantage can be avoided by getting in early.

    A new idea can sometimes be extended and new avenues of use can be found. Early adopters may get a chance to become innovators too that way.
  • by jc42 (318812)
    I used one important thing for at least a decade before the standard came out: the C language. And I've never regretted it.

    Funny thing was that when ANSI C finally came into existence, there was hardly any of my old K&R code that didn't work. I just casually ignored the warning messages, until I got around to inserting the type-cast noise (all the while grumbling about idiotic compilers that obviously knew how to do it, just as the old compilers had ;-).

    I did like the addition of // for comments, thou
  • ...they border on useless?

    For example, the principle taken from the first section: Users want products that work but early adopters are willing to cut slack in some areas but not in others. Can that be responded to with much other than "Duh!"?

    Not at all one of Peter's better articles.
     
  • "Whether a standard will succeed and be widely adopted is ambiguous ... why would they put all their eggs in a standards basket when that basket might not exist tomorrow?"

    The reward of first mover advantage is worth the risk.

System going down in 5 minutes.

Working...