Slashdot Mirror


Worst Bug or Shortcomings in a Standard?

Alastair asks: "Just curious what the Slashdot crowd thinks are the worst bugs ever to creep into a standard? For mine, the various security vulnerabilities in WEP would make the grade. Also perhaps the lack of a protocol field in HDLC, and which most implementations added in a non-compatible way. I'm thinking here about bugs which result in partial or total irrelevance of the standard itself, as opposed to just a lack of interest in adopting it."

270 comments

  1. .crap by Shadow_139 · · Score: 0, Troll

    For all Crap Slashdot Posts/Stories.

  2. That thing that makes Linux unusable by bugmenot · · Score: 0, Troll

    Oh yeah, Linux.

    --
    I stole this account from all of you. LOL!

    --
    This account has been seized by the GNAA. That is all.
  3. SMTP has no sender authentication. by OneDeeTenTee · · Score: 5, Interesting

    'Nuff said.

    --
    Stop the world; I need to get off.
    1. Re:SMTP has no sender authentication. by Homology · · Score: 3, Interesting
      'Nuff said.

      Not really. SMTP was designed a long time ago where there was little need for sender authentication. At that time the "Internet" (ARPAnet) was much smaller and friendlier than todays predatory Internet. Few at that time could imagine what Internat has become today. No need to blame those designers for lack of sender authentication.

      Now, the design of WEP is an entirely different matter. It was very well known that a design process of a new encryption protocoll should be public, but the designers decided to do this in secret. This was a bad decision going agains best practices.

    2. Re:SMTP has no sender authentication. by squiggleslash · · Score: 3, Interesting
      Why should it have had?

      SMTP is merely a transport system. Authentication, if wanted, was supposed to be part of the bodies of email messages according to whatever standard a user wanted.

      SMTP's lack of sender authentication is a modern-day fetish of the anti-spam crowd, and that anti-spam crowd only wants it because back when ISPs were deciding between giving users dedicated IP addresses or dynamically providing them, a debate that raged in the mid-nineties, they ended up going for the relatively anonymous dynamic IP addresses for the most part, which meant it became impossible to track email back to its original sender. Everything we've seen since with the explosion in spam and the more and more extreme methods of dealing with it really goes back to the fact that we no longer can associate an abusive user with an IP address.

      SMTP was designed at a time when the entire internet was peer to peer. In the process of turning it into a consumer product, many decisions have been made that while understandable (dynamic IP was seen as easier to maintain, roaming became seamless and efficient) nonetheless sat uneasily with how the Internet had been built thus far.

      --
      You are not alone. This is not normal. None of this is normal.
    3. Re:SMTP has no sender authentication. by AndroidCat · · Score: 1
      Who certifies that your authentication is authentic? ICANN, Verisign, Network Solutions, .. Microsoft?

      The idea that the "anti-spam crowd" is a unified body is .. interesting. I'm sure that that being told that an idea was discussed years ago and rejected might be annoying, but have you really looked at the various trade-offs that were discussed then?

      --
      One line blog. I hear that they're called Twitters now.
    4. Re:SMTP has no sender authentication. by squiggleslash · · Score: 3, Informative
      Who certifies that your authentication is authentic? ICANN, Verisign, Network Solutions, .. Microsoft?
      Depends. That's up to you. Back in the mid-nineties, there were various proposals and I think the major issue was the politics surrounding encryption (an indirect issue, but PGP was both an authentication system and encryption system) and the RSA patent more than disagreement on how it could work. PGP in particular used a pretty reasonable system that allowed you to create what boiled down to trusted networks. You'd certify your friends. Friends could certify each other. Get a key, see it's signed by people you know, and you can be pretty sure it's genuine.

      It was a nice system but network and real politics really ensured it didn't take off. You had patents. You had paranoid government agencies enforcing export controls on encryption protocols. You had commercial enterprises making email clients who didn't want to enter that particular can of worms if they could get away with it.

      The idea that the "anti-spam crowd" is a unified body is .. interesting. I'm sure that that being told that an idea was discussed years ago and rejected might be annoying, but have you really looked at the various trade-offs that were discussed then?
      I think you're trying to find things to take issue with. Nobody ever suggested the anti-spam crowd is unified. If I were to say that only Dogs are particularly interested in peeing on lamp-posts, would you claim that this is unfair because you know a lot of dogs that do not do that kind of thing?

      I also did explain the tradeoffs, in brief, in the whole accountable static IPs vs easy to administer and efficient with roaming dynamic IPs debate. (I could add paranoia over the supposed world wide shortage of IP addresses, but I don't think that was ever as big an issue as people maintained. If it had been, we'd be on IPv6 by now.)

      --
      You are not alone. This is not normal. None of this is normal.
    5. Re:SMTP has no sender authentication. by Anonymous Coward · · Score: 0

      Worst. Bug. Ever.

    6. Re:SMTP has no sender authentication. by NateTech · · Score: 1

      One could argue that there's been plenty of time to fix SMTP and thrash through any competing standards by now.

      Meanwhile various fixes for WEP are already in-place and available.

      --
      +++OK ATH
  4. Windows by cuteseal · · Score: 0, Offtopic

    Windows. Nuff said. :D

    1. Re:Windows by bugmenot · · Score: 0, Offtopic

      Absolutely right.

      Apparently the ideas of customer support, frequent security updates, and a professional development team are completely lost on the Slashdot If-its-not-free-its-not-for-me tin-foil-hat crowd.

      Windows 2003 is the best server I've ever had the pleasure of administering. And yes, I've had plenty of experience with both Linux and FreeBSD. Win2k3 beats them all in performance, price, and maintainability.

      --
      This account has been seized by the GNAA. That is all.
    2. Re:Windows by Anonymous Coward · · Score: 0

      Yeah sure. Im sorry if i have to laugh my ass off. Anyone who knows a bit about operating systems would tell you how idiotic your viewpoint is.

    3. Re:Windows by bugmenot · · Score: 0, Flamebait

      Really? So why don't you Mr. KnowItAll?

      --
      This account has been seized by the GNAA. That is all.
  5. It's not a Bug it's a feature by shoma-san · · Score: 2, Funny

    I love WEP. I see nothing wrong with it at all. It's so secure...

    1. Re:It's not a Bug it's a feature by Kizzle · · Score: 1

      Damn you just missed your chance to get all that useful funny karma. Simply cut the last few letters off of the word "secure" and delete the dots and you would of been HILARIOUS!!!1

    2. Re:It's not a Bug it's a feature by Short+Circuit · · Score: 1

      You mean, Trusted, right?

    3. Re:It's not a Bug it's a feature by Anonymous Coward · · Score: 0

      "would HAVE" you illiterate inbred retarded fuckwit!

    4. Re:It's not a Bug it's a feature by Kizzle · · Score: 1

      omg my gramar is teh sux!

  6. Linux Installation by Anonymous Coward · · Score: 5, Insightful

    I wish there was a way to install programs common accross all versions of linux.

    Linux zealots are now saying "oh installing is so easy, just do apt-get install package or emerge package": Yes, because typing in "apt-get" or "emerge" makes so much more sense to new users than double-clicking an icon that says "setup".

    Linux zealots are far too forgiving when judging the difficultly of Linux configuration issues and far too harsh when judging the difficulty of Windows configuration issues. Example comments:

    User: "How do I get Quake 3 to run in Linux?"
    Zealot: "Oh that's easy! If you have Redhat, you have to download quake_3_rh_8_i686_010203_glibc.bin, then do chmod +x on the file. Then you have to su to root, make sure you type export LD_ASSUME_KERNEL=2.2.5 but ONLY if you have that latest libc6 installed. If you don't, don't set that environment variable or the installer will dump core. Before you run the installer, make sure you have the GL drivers for X installed. Get them at [some obscure web address], chmod +x the binary, then run it, but make sure you have at least 10MB free in /tmp or the installer will dump core. After the installer is done, edit /etc/X11/XF86Config and add a section called "GL" and put "driver nv" in it. Make sure you have the latest version of X and Linux kernel 2.6 or else X will segfault when you start. OK, run the Quake 3 installer and make sure you set the proper group and setuid permissions on quake3.bin. If you want sound, look here [link to another obscure web site], which is a short HOWTO on how to get sound in Quake 3. That's all there is to it!"

    User: "How do I get Quake 3 to run in Windows?"
    Zealot: "Oh God, I had to install Quake 3 in Windoze for some lamer friend of mine! God, what a fucking mess! I put in the CD and it took about 3 minutes to copy everything, and then I had to reboot the fucking computer! Jesus Christ! What a retarded operating system!"

    So, I guess the point I'm trying to make is that what seems easy and natural to Linux geeks is definitely not what regular people consider easy and natural. Hence, the preference towards Windows.

    1. Re:Linux Installation by m50d · · Score: 1

      But the complicated instructions are usually because linux people giving advice make less assumptions. I ended up writing a paragraph on installing ut2003 for linux when in fact the process is exactly the same as for windows. Well, OK, one operation harder if you have autorun turned on for windows, but that's a security feature of linux that's worth the extra effort imo. Ditto with chmod +xing a downloaded binary.

      --
      I am trolling
    2. Re:Linux Installation by lachlan76 · · Score: 1

      Yes, because typing in "apt-get" or "emerge" makes so much more sense to new users than double-clicking an icon that says "setup".

      And where does that setup icon come from? I don't see an icon on windows that can download almost any program, compile it, and install it automatically.

      I put in the CD and it took about 3 minutes to copy everything, and then I had to reboot the fucking computer! Jesus Christ! What a retarded operating system!"

      You do realise that you're comparing the quake 3 install process to downloading video drivers and configuring X.org, right?

    3. Re:Linux Installation by dpilot · · Score: 2, Interesting

      Just "emerge quake3"

      Actually, I *almost* agree with you. The real problem is that Windows Wizards work most of the time. But when they don't, they work against you - even worse than not being there. They get in your way and make it hard to do things manually.

      I began preparing to leave RedHat when RH8.1 never happened, and they went staight to RH9. After looking for a while, and evaluating various distributions on their maintainability, etc, I came to a different realization: For home use, this is supposed to be a hobby. What the heck am I doing looking at maintainability as a prime criteria, when I should be looking at fun and the learning experience?

      So I ended up going with Gentoo. But far from being merely 133t, I find it incredibly maintainable, and I have never had such an easy time installing more, and more varied, software on any system. That includes Linux and Windows. I'll agree that Gentoo is still too intense for a novice, but with a little experience it brings a LOT to the table.

      --
      The living have better things to do than to continue hating the dead.
    4. Re:Linux Installation by slittle · · Score: 2, Insightful
      And where does that setup icon come from? I don't see an icon on windows that can download almost any program, compile it, and install it automatically.
      Anywhere.

      Unlike Windows, it's rather rare to find a Linux software package that includes everything it needs to run. Generally, you're fucked for anything not under package management.

      Personally, I anything I compile manually I do statically, and shove under /opt. The Unix way (spraying shit all over the filesystem) is just too much fucking work. Good thing Debian has an awesome collection of software to start with, or I'd be fucked.

      You do realise that you're comparing the quake 3 install process to downloading video drivers and configuring X.org, right?
      Installing video drivers in Windows is the same. Insert CD, click OK, reboot. Ooh, and here's the cool bit: if it (Windows GUI system) can't figure out WTF you're running, it drops back to 640x480 VGA. It never fails to at least start. EVAR. Unlike X, if you so much as sneeze on the same continent it'll refuse to start.

      Just another reason why none of my Linux machines (3) even have X installed...
      --
      Opportunity knocks. Karma hunts you down.
    5. Re:Linux Installation by ClioCJS · · Score: 1
      1) The setup icon is on the quake3 cd, one of few icons in the root dir.

      2) With autorun enabled you don't even need to locate the icon.

      3) Quake3 doesn't support soundblaster pro for redhat 6.2, so I had to wipe it and play under windows. End of saga.

      --
      -Clio
      Karma: Bad (mostly from not giving a fuck)
      Blog: http://clintjcl.wordpress.com
    6. Re:Linux Installation by Anonymous Coward · · Score: 0

      I wish there was a way to install programs common accross all versions of linux.

      If it's going to be easy to use, it's got to have a GUI way of doing it. But why on earth would you have a GUI on a server? And good luck getting the same thing to work on a Tivo too.

      Why do you think that equating different distributions makes sense? Just because they share a lot of code, it doesn't mean that they do the same thing or are aimed at the same markets. For all intents and purposes, they are all different operating systems.

      I don't see anybody claiming that Mac OS X is crap because its application install procedure differs from FreeBSD.

    7. Re:Linux Installation by mopslik · · Score: 1

      double-clicking an icon that says "setup".

      And how this is different than double-clicking an RPM?

    8. Re:Linux Installation by Stevyn · · Score: 1

      I agree with you. I've been using computers for about 10 years or so and went through about ever version of Windows. Eventually I got good at finding and installing software. The difficult part for finding software in windows seemed to be finding the place on the Internet to download it. Once I found the installer, it almost always was just a matter of double-clicking on it and the installer would do the rest.

      Now with gentoo that I've been using since July, it's just a matter of searching for it on portage, "emerge application," and it's magically there. Yeah, it takes longer because of compiling, but it's time spent by the computer and not me.

      I've found it easier to get software using if you look at the whole process. But these solutions always seem to be distro specific and not compatible with every modern linux distro, as in modern windows versions. So yeah, it is easier to install software once you get over the hurdles of installing Gentoo, but that required a lot of reading and dicking around beforehand.

      I would still like some standard package manager that would work seamlessly across all distros.

    9. Re:Linux Installation by Phleg · · Score: 1

      Not this tripe again.

      Linux zealots are now saying "oh installing is so easy, just do apt-get install package or emerge package": Yes, because typing in "apt-get" or "emerge" makes so much more sense to new users than double-clicking an icon that says "setup".

      I'll give you a hint. "apt-get" is just a tool. Likewise for "emerge". Better frontends can exist for them. As an example, Debian provides dselect and aptitude at the command line. More importantly, there's an entry in the GNOME 2 System Tools menu for the "Synaptic Package Manager". Sure enough, it's a nice, easily-understandible graphical interface for finding installing programs.

      Linux zealots are far too forgiving when judging the difficultly of Linux configuration issues and far too harsh when judging the difficulty of Windows configuration issues.

      And likewise, your examples are ludicrous. When people say that software for Linux is generally easier to install than software for Windows, most people aren't referring to compiling from source. 99.999% of what anyone needs is provided as a package for the distribution, and is easily installed via whatever frontend you choose to use (remember Synaptic?).

      --
      No comment.
    10. Re:Linux Installation by Anonymous Coward · · Score: 0

      or you simply have no clue what you are doing

    11. Re:Linux Installation by wayne606 · · Score: 3, Insightful

      Take your pick:
      Linux: everything is moderately hard
      Windows: 95% of the time it's easy, 5% it's impossible

    12. Re:Linux Installation by Anonymous Coward · · Score: 0

      Since you seem to be honestly ignorant: RPMs are built for a particular version of a particular distro and do not include the needed dependancies. "Setup" will just work 99% of the time, random RPMs you download will not.

    13. Re:Linux Installation by Anonymous Coward · · Score: 0

      I'll give you a hint. "apt-get" is just a tool. Likewise for "emerge". Better frontends can exist for them. As an example, Debian provides dselect and aptitude at the command line. More importantly, there's an entry in the GNOME 2 System Tools menu for the "Synaptic Package Manager". Sure enough, it's a nice, easily-understandible graphical interface for finding installing programs.

      The problem with all the Linux packaging systems is that they're centralised. Want to distribute a program to Debian users? Better hope you can persuade the Debian people to let you have it listed on the central repositories, then. Because most people aren't going to want to faff about editing their sources lists to add YOUR little repository, let alone fiddle with dpkg to install the plain .deb they downloaded straight from your website.

      This means that the barrier to entry is curiously higher on Linux than on Windows, where anyone and their dog can release a "setup.exe" and have it easily installable by just anyone, without having to convince a beaurocracy first.

    14. Re:Linux Installation by Anonymous Coward · · Score: 0

      Personally, I anything I compile manually I do statically, and shove under /opt. The Unix way (spraying shit all over the filesystem) is just too much fucking work.

      Or, you know, you could just compile a Debian package from your source if no one else has already done it. It only takes 3 commands (deb-make, dpkg-buildpackage, dpkg) to build and install. No more effort than your standard ./configure, make, make install and you get dpkg managing it.

    15. Re:Linux Installation by mattyrobinson69 · · Score: 1

      also, porthole - a front end for emerge (gentoo). Its in portage.

    16. Re:Linux Installation by Anonymous Coward · · Score: 0

      So, on Linux you need to have free disk space, where as on Windows you don't?

      Yeah, that's definitely a feature we should have too.

      Ditto for having a 3D driver, how does Quake3 run on Windows without one?

    17. Re:Linux Installation by slittle · · Score: 1

      Doesn't that require the source tree to have ./Debian control files?

      --
      Opportunity knocks. Karma hunts you down.
    18. Re:Linux Installation by Bluetrust25 · · Score: 1

      It's amazing that nobody's backing you up on this.

      None of the people responding to your post get it that Linux is a fucking nightmare to get anything installed on.

      Whoooosh.

    19. Re:Linux Installation by man_ls · · Score: 1

      This is one of the more insightful posts I've ever seen.

      If I had mod points, you'd get all of them.

    20. Re:Linux Installation by Cyn · · Score: 1

      I call bullshit.

      Anyone can release a .deb and stick it on the web and someone can apt-get install it, or dpkg -i install it. Just like with a .exe.

      Show me a 12-yr old kid who can post a setup.exe into windows update and get it 'officially recognized' blah blah and I'll show you that you just found a new virus.

      This "problem" you point out is a feature - eyes have seen and said "yes, this is worthwhile stuff" and put it out there.

      I don't see how "fiddling with dpkg to install a plain .deb" is different than "fiddling with the cursor to install a plain .exe" - I don't run a desktop or nautilus, but I'd wager if I did I could just double-click .debs and get prompted for install/etc. If I can't - well, then I clearly don't have shit for motivation if I can't be bothered to run a simple 'dpkg -i'.

      --
      cyn, free software and *nix operating systems enthusiast.
    21. Re:Linux Installation by Zorilla · · Score: 1

      I dual boot. I usually find it's the other way around. I need the hundreds of megs to install Quake 3 under Windows and I only need a few MB for the binaries under Linux. I usually just symlink the pak files to the ones under my Windows partition.

      --

      It would be cool if it didn't suck.
    22. Re:Linux Installation by Jonathan+the+Nerd · · Score: 1
      None of the people responding to your post get it that Linux is a fucking nightmare to get anything installed on.

      Maybe because we're all using versions of our favorite distros that were released in the 21st century. I'm partial to Debian and Gentoo, but most of the others have nice and friendly software installation too.

      On a slightly different subject, what about maintainability of software installations? Here's how it goes on Windows:

      • There's a critical vulnerability in IE! No problem, Windows Update automatically downloads and installs the patch for me.
      • There's a critical vulnerability in Office! No problem-- uh, wait, Office isn't covered by Windows Update. Guess I have to go to Microsoft's web site and download the fix myself.
      • There's a critical vulnerability in Adobe Acrobat! Hm, looks like I have to go to Adobe's site to get the patch. And I won't even find out about the patch unless I hear about it somewhere, because Windows Update won't tell me.
      • There's a bugfix available for Neverwinter Nights! Unless I read the forums or regularly check the web site, I'll never hear about it.
      Whereas, here's the situation on Linux:
      • There's a critical vulnerability in Firefox! No problem, just do "apt-get update" or "emerge sync" or whatever my distro's equivalent is. It downloads new versions and updates and installs them for me. And not just for Firefox -- for every program that the package manager knows about (which is usually a whole lot of programs). There, now my system is entirely up to date. If I don't feel like doing that manually, I can just put it in a cron job. There, now I'm perpetually updated on everything.
      You can keep Windows if you want to. I think I'll stick with Linux.
      --
      Disclaimer: The opinions expressed are not necessarily my own, as I've not yet had my medication today.
  7. "Referer" by typhoonius · · Score: 5, Interesting

    This is stupid, but it bugs me that we're stuck with "Referer" in HTTP.

    1. Re:"Referer" by Ithika · · Score: 1

      Hell yeah; it just... gets under your skin that doesn't it? ;)

    2. Re:"Referer" by AndroidCat · · Score: 3, Funny

      *sigh*, another sad victim of Referer Madness.

      --
      One line blog. I hear that they're called Twitters now.
    3. Re:"Referer" by identity0 · · Score: 1

      Well, at least that doesn't really affect code.

      How about all the 'bugs' in the English language itself? For example, the counting system. There are often occasions where you have to code up incremental counters, and the effort to make them grammatically correct in English is such a chore most people never bother.

      When you're counting something, for example days, you need to put a suffix on the number like '1st, 2nd, 3rd'. Suffixes by itself wouldn't be so bad, but the way it's determined is quite wierd. It goes 1st, 2nd, 3rd, 4th, then from 4th to 20th it's all 'th', but then becomes 21st, 22nd, 23rd, and the same for the 30s, 40s, and so on even tough the teens were all 'th'. In Japanese, you write it without suffixes, and even without plural forms, making it much easier to code incremental counts.

      And what about the teens themselves, anyway? Why don't you just write it as ten-one, ten-two, ten-three, like you do for twenties and beyond? That's how it's done for Japanese, and I find it much simpler. I know German also has the concept of 'teens', does anyone know why they're treated differently in western languages?

    4. Re:"Referer" by Anonymous Coward · · Score: 1, Interesting

      The "teens" are a relict of the old way to count (fourteen = four-and-ten), the way it still is in German and partly also in the Scandinavian languages. (26 = sechsundzwanzig (German) = seks og tyve (Norwegian, old) = tjue-seks (Norwegian, new) = twenty-six)

      twelve = (old English) twa leofan which basically means two-ten
      eleven = end leofan

    5. Re:"Referer" by Haeleth · · Score: 2, Interesting

      When you're counting something, for example days, you need to put a suffix on the number like '1st, 2nd, 3rd'. Suffixes by itself wouldn't be so bad, but the way it's determined is quite wierd. . . . In Japanese, you write it without suffixes, and even without plural forms, making it much easier to code incremental counts.

      Sure, Japanese is so logical.

      Let's consider the days of the month. "One" is "ichi", and "day" is "hi", so we put them together and get "tsuitachi". Then for the second, "two" is "ni", so we put that together with "hi" and naturally that produces "futsuka". Observe the transparency and regularity. Could Spock himself have come up with a more logical system?

      And what about the teens themselves, anyway? Why don't you just write it as ten-one, ten-two, ten-three, like you do for twenties and beyond? That's how it's done for Japanese, and I find it much simpler.

      Er, what did you think "fourteen" was, other than "four-ten"?

      Sorry, but Japanese is no more logical than English. And numbers are one of the worst features of Japanese, not the best. (Did you forget about counters? You know, where you count books by the volume, pens by the book, and rabbits by the wing?)

    6. Re:"Referer" by Anonymous Coward · · Score: 0

      I know German also has the concept of 'teens'...

      Unfortunately, German is handling the range 11-19 semantically similar to English: elf (eleven), zwöf (twelve), dreizehn (thirteen),vierzehn (fourteen) etc.

      If you go beyond 19, you will even find a less logical (in terms of your pattern) arrangement: twenty-one becomes "einundzwanzig" which is "one-and-twenty", and so on...

    7. Re:"Referer" by Anonymous Coward · · Score: 0

      Trivial point, but I think it is English that is similar to German, not the other way around.

    8. Re:"Referer" by identity0 · · Score: 1

      Okay, I think some people may not have understood what I was talking about originally. Imagine yourself writing a counter program in English, and all the special exceptions you would need to use to get the suffix right, not to mention the spelling.

      ..."One" is "ichi", and "day" is "hi", so we put them together and get "tsuitachi". Then for the second, "two" is "ni", so we put that together with "hi" and naturally that produces "futsuka"...

      ... And you missed the point. I may have confused you because of my second complaint, which was different than my first. The problem you point out is that if you were to pronounce them it would be pretty wierd because Japanese has more than one pronounciation of each number. However, if you were coding up a program to write them out, you wouldn't need to worry about it, as you would just write the kanji. I've never seen them written out phonetically, because you just need to write the character for the number, then the character for 'day'. The problems I pointed out in English would appear no matter what, because you *have* to write it out like that for it to be correct in English.

      Er, what did you think "fourteen" was, other than "four-ten"?

      If "fourteen" = 14, then does "fourtwenty" = 24? Why do the teens ave diffent syntax from twenties and thirties? It should be ten-four, not fourteen.

      Again, imagine yourself writing a program that needs to output a number as text. In English, you need to write special exceptions for the teens when spelling them out, and special exceptions for the 1st, 2nd, and 3rd of each set of ten, except for the teens. That is if you can even change the suffixes - many times, I will just see "(number)th" written, so it ouputs stuff like "23th" or "2th".

  8. LOL AT TEH WINDOZE AHAEAHEA IS TEH FUNNAY by Anonymous Coward · · Score: 0, Troll

    Cuteseal: Listen to me. This post is directed squarly at you.

    You are not funny. You are encouraging the mindless, raving IDIOTS that inhabit slashhdot. The complete cocksuckers who make stupid jokes about 'M$' and get a +5 funny. The ones who compare modern versions of Linux to Windows 98 and bitch about instability. The idiots who reply to every technical story with either obvious, misleading or totally incorrect information and get +5 informative. The inbred fuckwits who criticize Microsofts Monopoly, and then rush to suck Apples dick over the iPod. The misshapen freaks who repeat the same rant about how copyright is evil every tenth story, and get +5 informative, as if its an astonishing now viewpoint.

    You, cuteseal, are a member of this collective.

    I WANT TO KILL YOU ALL! HUNT YOU FUCKERS DOWN AND KILL YOU BY FORCING LINUX CD'S DOWN YOUR THROAT!

    You fuckers don't know the first thing about technology or marketing. You are scum. I bet you are either a child, or a man who is still mentally a child. I want to pick you up and shake the fuck out of you, whilst looking you in the eyes and screaming "YOU ARE NOT FUNNY, FUCKER!".

    None of you fuckers are funny. You're all stupid drooling retards who think that because they can play with computers (big fucking deal, a mechanic is more skilled then the typical programmer), they are gods gift to the world. Newsflash, morons! Your jobs are gonigto India for a reason. You have no talent, only the ability to constantly while for no fucking reason over your oh-so-wonder Linux. At least the BSD users generally have brains. I've never met a skilled linux user who wasn't an egotistical asshole. "Oh look at me!!! I know how to use linux. Fear me!" And what about your shitty open source? You can't really making money by selling open source. You can only make money by 'supporting' it. CAN YOU SPELL 'CONFLICT OF INTEREST'? Open source companies have no interested in making Linux better, they want it to be hard to use! Becaue then people will pay for support!

    To conclude: Cuteseal, I hate you. I hate all of you.

    WHAT THE FUCK IS WRONG WITH YOU PEOPLE!?!

    1. Re:LOL AT TEH WINDOZE AHAEAHEA IS TEH FUNNAY by m50d · · Score: 2, Insightful

      I compare modern linux (slackware 10) to windows 98 because that's what I can get on my budget.

      --
      I am trolling
    2. Re:LOL AT TEH WINDOZE AHAEAHEA IS TEH FUNNAY by WaZiX · · Score: 1

      The inbred fuckwits who criticize Microsofts Monopoly

      Well anyone who did economy would critisize Microsofts Monopoly... Monopoly is bad for the customer, declines the economy's well-being and puts a hold on innovation. Its funn that while most So Called Socialist European countries are getting rid of their governemental monopolies to give the consumer best prices and best service, Big American companies are either cultivating monopoly by Oligopoly or are a monopoly of its own.

      I do agree however taht on a purely economic perspective, patents are undeniably necessary, because commercial companies would have no interest in researching new technology if its new discovery could directly profit its concurrent.

      However if you think that microsoft is innovating, your putting your finger into your eye, let me explain:

      Microsoft through its immense market share has made the business of Operating System a market with a very high economy of scales (economie d'echelles in french, not sure thats how you say it in english), and the only reason it perfects its operating system is to maintian this type of market. Indeed, by investing in technology and making sure of dependency Microsoft establishes Strategic Barriers at the entry of the market, thi means that even if a company was ready to put the effort to introduce a new commercial Operating System onto the market, the revenues it would generate would not cover its costs in either the short or long term, this means that the OS market is almost bullet proof to new commercial OSs.

      Now to linux and other Free Operating Systems, its different strategy in terms of costs and benefits (almost no cost in development since most the work is voluntary,no real plan for profit at least from the developping of the kernel point of view and allowing companies to freely use the kernel to in turn allow them to make profit hence inducing very few costs of development of the kernel and other applications) allows for competitors to enter the market, and hence try and detrone Microsoft.

      Now the whole concept of the Free Software and the only way it can work is based on the motivation of its community, without it theres no way enough "free" resources can be accumulated to be able to enter the market.

      If you really believe that this motivation is bad, then not only are you a fool (because in term this same motivation will increase your well-being) but you also have no insight in economy whatsoever.

      To Conclude: Just Shut up will you?

    3. Re:LOL AT TEH WINDOZE AHAEAHEA IS TEH FUNNAY by sebFlyte · · Score: 1

      *applauds* Slightly lacking in subtlety, but i think that's needed.

      --
      "Nothing can shake my belief that this world is the fruit of a dark god whose shadow I extend." - Emil Michel Cioran
    4. Re:LOL AT TEH WINDOZE AHAEAHEA IS TEH FUNNAY by Anonymous Coward · · Score: 0

      Its funn that while most So Called Socialist European countries are getting rid of their governemental monopolies to give the consumer best prices and best service, Big American companies are either cultivating monopoly by Oligopoly or are a monopoly of its own.

      ... whereas the reasons for privaticing former governmental monopolies in "Socialist(???)" europe, most often are not at all related to increasing consumer satisfaction or better service, but getting rid of no longer or never-been profitable tasks that were understood being parts of public governmental services for years and years. Often this yields worse quality, higher prices and a monopoly within the business area now controlled by a privately-owned company. (However, this practice actually has initially improved services in a number of countries that really have been statist socialist for years, but simply because it oftencouldnotget much worse. Nowadays, it's actually the privaticed services in the public interest in those countries that receive criticism to no longer serve the people but wash money in the pockets of a few.)

      And it doesn't take me by surpirse that big companies try to establish their own monopolies because that simply would grant them guranteed and high profits, and companies tend to be much more interested towards these things than into ethics about what behavior would provide better services and more happyness to customers.

    5. Re:LOL AT TEH WINDOZE AHAEAHEA IS TEH FUNNAY by Ironsides · · Score: 1

      Monopoly is bad for the customer, declines the economy's well-being and puts a hold on innovation.

      I would disagree with this simply from the example of AT&T. They were innovating like crazy at bell labs where they were pumping all the money into and kept a very high quality of service for the phones. The only problem they had was the prices they had to charge for long distance phones. This was caused by the local governments not letting them charge the cost of local calls and so they had to make up the money on long distance fees. As I understand it, if AT&T had stayed together we would have ALL (everyone) had DSL in the 1980's and probably fibre by now.

      Monopolies are only a problem when the people running them get lazy and decide to stop doing things. AT&T never did while it was intact because they kept funding bell labs.

      --
      Fly me to the moon Let me sing among those stars Let me see what spring is like On jupiter and mars
    6. Re:LOL AT TEH WINDOZE AHAEAHEA IS TEH FUNNAY by agent · · Score: 1

      Is that a threat?
      You should get out side and do some physical activity.
      Peace.

  9. The US Missile Shield by WaZiX · · Score: 1

    The bug being that it can be rendered useless with a couple k.

  10. UTF-8 email headers by dimss · · Score: 2, Informative

    Standards are very unclear when you have to encode utf-8 'subject' header. Looks like there is no distinction between bytes and characters. I had to write automatic UTF-8 mailer last year. There were many, many issues with UTF-8 headers in different MUA. Especially with mix of english and non-neglish words in 'Subject'. Finally we decided to send two separate messages in two different 8-bit encodings.

    1. Re:UTF-8 email headers by Anonymous Coward · · Score: 0

      Especially with mix of english and non-neglish words

      Words such as neglish?
    2. Re:UTF-8 email headers by Anonymous Coward · · Score: 0

      Can't be nearly as bad as that MIME quotable-printable shit.

    3. Re:UTF-8 email headers by dodobh · · Score: 1

      Email headers are required to be 7 bit ASCII. See RFC 2821.

      --
      I can throw myself at the ground, and miss.
    4. Re:UTF-8 email headers by dimss · · Score: 1

      Of course, I know it. The problem is that MIME-encoding (Base64 or QP) of UTF-8 is tricky...

  11. No Timestamps in MIDI. by torpor · · Score: 1

    I know, I know, 31.25kb is too slow, but damn I wish MIDI had timestamps, from the get-go .. be perfect, otherwise.

    --
    ; -- the corruption of government starts with its secrets. a truly free people keep no secrets. --
    1. Re:No Timestamps in MIDI. by kauppi · · Score: 1

      Considering the time MIDI standard was created this is not a bug. And even nowadays, MIDI doesn't need timestamps.

      I wish cars could fly, beer would be free and Santa Claus would really exist (and his reindeers could fly).

    2. Re:No Timestamps in MIDI. by SmittyTheBold · · Score: 1

      Hey now, just 'cause Santa doesn't exist doesn't mean his reindeer can't fly.

      --
      ± 29 dB
    3. Re:No Timestamps in MIDI. by AndroidCat · · Score: 1
      I used to wonder how MS could possibly have an exploit in MIDI code. Then I found out how much junk has been retro-shoveled into that "standard" over the years. Yikes!

      How about beer that's free as in speech not as in beer? Umm.

      --
      One line blog. I hear that they're called Twitters now.
  12. TCP, SMTP, POP3, HTTP, ... by keesh · · Score: 1

    Really, any of the traditional protocols that have little or no concept of security.

    1. Re:TCP, SMTP, POP3, HTTP, ... by Creepy+Crawler · · Score: 1

      Your point? These protocols were made years ago, back when the internet was a bunch of colleges and .mil bases.

      If there was a mean or stupid user, you personally went over to meet them, and had a "friendly chat" before you rip his lungs out.

      However, these days, there's billions of people on the internet, with many millions wanting to cause problems for others.

      I dunno, I think POP, ftp, telnet and such had its purpose.. perhaps not now.

      --
    2. Re:TCP, SMTP, POP3, HTTP, ... by GuyWithLag · · Score: 1

      TCP is too low-level for security considerations.

      SMTP was designed at a time when every connected computer had a sysadmin that was legally responsible for it.

      POP has POP over SSL; while there is the option to use STARTTLS, I haven't used a POP server yet that used this.

      HTTP... What't the problem with HTTP?

    3. Re:TCP, SMTP, POP3, HTTP, ... by RFC959 · · Score: 1
      Is there STARTTLS for POP? *google* I'll be, so there is. I've set up TLS for SMTP, but that's it.


      Anyway, while I agree with your comment in general, I think we have to address exactly what kind of security we're talking about. TLS is fine for what it is - it's just that what it is is fairly limited. Perhaps one of the weaknesses of a protocol stack model is that you have to implement security for each level at each level. For example, TLS will prevent eavesdropping on your SMTP conversation, but it doesn't authenticate senders within the conversation. Personally, I don't regard the lack of security awareness in these protocols as "bugs". "Shortcomings", maybe, but if you look at the life of standards, you'll see that it's much easier for a standard to be adopted if it's simple, practical, decentralized, and has little competition. Most of the standards we've mentioned fit those criteria at the time of their introduction, and adding security features would probably have impaired their simplicity and hurt their adoption.

    4. Re:TCP, SMTP, POP3, HTTP, ... by AndroidCat · · Score: 3, Funny

      My wall sockets have little security either. At most there's a fuse, breaker or penny for protection. No user authentication or load request handshaking and management. It's shocking.

      --
      One line blog. I hear that they're called Twitters now.
    5. Re:TCP, SMTP, POP3, HTTP, ... by magefile · · Score: 2, Funny

      Linking college computers to military base computers is *exactly* the situation in which I would think you'd want security ...

    6. Re:TCP, SMTP, POP3, HTTP, ... by Anonymous Coward · · Score: 0

      I'd mod you Funny, but you've given me no reason to hate you that much.

    7. Re:TCP, SMTP, POP3, HTTP, ... by SupremeTaco · · Score: 1

      Hogwash!! TCP is the most sec%$82d . .. .

      --
      You have a constitutionally protected right to be wrong, and I the right to ignore you.
    8. Re:TCP, SMTP, POP3, HTTP, ... by mattj452 · · Score: 1

      IPsec works underneath the TCP layer, so I would hardly say it's too low level ;)

  13. Java by mwvdlee · · Score: 3, Insightful

    Most people don't call it a "bug" but I do; the operator overloading of '+', '+=' and '=' in the Java specification's String class.

    Why is this a bug? Because the creators of the standard explicitely denounce operator overloading yet they do it anyway for this exception. Operator overloading is explicitely not possible in Java... except this one time.

    If it is so incredibly useful in this particular case that they would bend the specification for it, can't they understand that it would be useful for other classes (ie. Matrix classes or even the standard Number classes) too?

    --
    Slashdot social media options: AIM, ICQ, Yahoo, Jabber and Mobile Text. Why no MySpace?
    1. Re:Java by stromthurman · · Score: 1

      I agree with this whole-heartedly. While I've gotten away from operator overloading on account of using Java, it bothers me every time I'm allowed to do a "this" + "sucks" and have it resolve to an object. I think the idea behind not providing operator overloading was to remove ambiguity, because some people might make arbitrary choices about how two different objects are combined with an operator that may not be intuitive to other developers. While that reasoning seems ok, consider what's happened instead. They wanted to prevent lines like:
      Date d = new Date() + 5;

      So, now what we get is this instead:
      MyDate d = new MyDate();
      d.add(5);

      Is it really any clearer to someone who's not going to dig through MyDate.java (provided it is available) what this is doing versus the previous example?
      I think Sun effed up on this choice.

      --
      I have discovered a truly remarkable sig which this margin is too small to contain.
    2. Re:Java by geminidomino · · Score: 1

      What about rewriting the MyDate constructor so that if it's passed an integer value, it initializes the object already modified?

      i.e. MyDate d= new MyDate(-2);

      Sorry... offtopic, I know. I really didn't miss your point. Damned programmer's mind...

      I'll be going now...

      Me.leave("topic");

    3. Re:Java by stromthurman · · Score: 1

      If we assume MyDate is a subclass of Date, and that it relies on Date's constructors, we should get a Date object that represents 2 milliseconds before the Epoch (Jan 1, 1970 00:00:00 GMT). Of course, how I know this is because of the javadoc documentation, so if we assume the programmer creating MyDate uses javadoc to indicate what .add(-5) does to MyDate, everything's still right as rain. However, they could just as easily do the same with the +/-* operators, and then everything is again, just as nice.

      PS: Love the sig ;)

      --
      I have discovered a truly remarkable sig which this margin is too small to contain.
    4. Re:Java by 91degrees · · Score: 1

      I think the idea behind not providing operator overloading was to remove ambiguity, because some people might make arbitrary choices about how two different objects are combined with an operator that may not be intuitive to other developers.

      If that's really the reason, then it was a really bad decision. this should be handled by coding standards. Not the language.

    5. Re:Java by stromthurman · · Score: 1

      Exactly. Removing a feature will not drastically improve coding practices. For instance, a bad programmer may do funny things with a '+' operator that confuse the rest of us, but they can just as easily do bad things like name a member function .doSomething( ... ), which is just as unclear within the code.

      --
      I have discovered a truly remarkable sig which this margin is too small to contain.
    6. Re:Java by AndroidCat · · Score: 1

      What are they using at the heart of that to hold the date/time value? (See my rant elsewhere about MS's use of floating point and time math errors.)

      --
      One line blog. I hear that they're called Twitters now.
    7. Re:Java by Hard_Code · · Score: 1

      "Is it really any clearer to someone who's not going to dig through MyDate.java (provided it is available) what this is doing versus the previous example?"

      uh, YEAH

      What is 5? Five *what*? Milliseconds, minutes, dates, months, years? Date at this point is deprecated except as a container of an abstract point-in-time millisecond value. Calendar classes should be used to manipulate time. Maybe that was a bad example, but the point is, when the mathematical symbols are not necessarily clear, it is much better to have methods that actually self-document at least by their name.

      d.addMillis(5);

      etc.

      (calculating dates is far from trivial at least for gregorian calendars and involves lots of subtle rules, so no it's not just as straightforward as mathematical 'add')

      --

      It's 10 PM. Do you know if you're un-American?
    8. Re:Java by stromthurman · · Score: 1

      I'm pretty sure it's a long, but I could be wrong.

      --
      I have discovered a truly remarkable sig which this margin is too small to contain.
    9. Re:Java by stromthurman · · Score: 1

      Right, but the point was, if there are people who make poor choices in operators for overloading, there are people who make poor choices in functional naming in the same way. I just used Date here because I happened to be working with one when I wrote the original post. The ultimate point is that "bad form" practices, such as unclear operator usage, or poorly named member functions, are affected only in a small way by forbidding operator overloading.

      --
      I have discovered a truly remarkable sig which this margin is too small to contain.
    10. Re:Java by SunFan · · Score: 1


      Would you rather still use strdup, strcmp, and strcat? Yuk. Overloading is generally a big ball of confusion, but, for strings, an exception can be made. Strings are so common and at the core of our programming experience that giving them special treatment is just fine, IMO.

      For other cases, like matrix arithmetic or numbers, using class methods is better. In the general case of overloading, there are just too many cases where there's more than one way to "add" or "divide" something, and a verbose function name is just clearer (for a good API design, that is).

      --
      -- Microsoft is the most expensive commodity operating system and office suite vendor in the marketplace.
    11. Re:Java by Anonymous Coward · · Score: 0

      No unsigned byte primitive.

      And God says: "Let there be char!" Okay, so it's two bytes in java, you can get over that.

    12. Re:Java by topham · · Score: 1


      I almost choked when I found the option to allow, or not illegal dates.

      For instance, you can tell it to access 02/31/2005 as a valid date. Actually, you have to modify the flag so it doesn't accept dates like that. (this was several years ago, probably depricated by now).

      While I can understand the appeal of allowing arbitrary, but invalid dates (for unusual circumstances) it should NOT be the default for the class.

    13. Re:Java by Lehk228 · · Score: 1

      what's wrong with using functions as they are meant to be used, hell I hate operator overloading in c++ because it takes something that means one thing 99.9% of the time and sometimes makes it mean something completely arbitrary.

      --
      Snowden and Manning are heroes.
    14. Re:Java by mwvdlee · · Score: 1

      I wholeheartedly agree with you, Java should not be using operator overloading at all! (or allow operator overloading everywhere, anything but the hacked solution they chose).

      --
      Slashdot social media options: AIM, ICQ, Yahoo, Jabber and Mobile Text. Why no MySpace?
    15. Re:Java by mwvdlee · · Score: 1

      So what does this do?

      String a = "12";
      a += "3";

      We all know what it does but it could just as well have produced either "122" (concatenate), "15" (add numerical values) or "42" (add aligned values), or add the hexadecimal values or some hashes or whatever.

      Operator overloading a String is just as logical or illogical as having i.e.

      Integer a = new Integer(1);
      a += 2;

      --
      Slashdot social media options: AIM, ICQ, Yahoo, Jabber and Mobile Text. Why no MySpace?
    16. Re:Java by mwvdlee · · Score: 1
      Strings are so common and at the core of our programming experience that giving them special treatment is just fine

      Would you say a String is more common than an Integer or a Boolean? They should have made the String into a primitive type then (such as int and char or arrays) instead of a class.

      p.s. How many ways are there to add matrixes? I mean; ways which all give different but correct results?
      --
      Slashdot social media options: AIM, ICQ, Yahoo, Jabber and Mobile Text. Why no MySpace?
    17. Re:Java by mwvdlee · · Score: 1

      Just a small note; many people would say that things such as Operator overloading is just eye candy because you can just as well use functions.

      Functions are eye candy too! In fact, everything but pure machine code is eye candy. Eye candy is there to make the lives of programmers easier so what's wrong with eye candy?

      --
      Slashdot social media options: AIM, ICQ, Yahoo, Jabber and Mobile Text. Why no MySpace?
    18. Re:Java by Anonymous Coward · · Score: 0

      >So what does this do?
      >
      >String a = "12";
      >a += "3";
      >
      >We all know what it does but it could just as >well have produced either "122" (concatenate),

      Nothing like errors to inspire confidence in someone's argument!

    19. Re:Java by Anonymous Coward · · Score: 0

      The problem with coding standards is that there are so many to choose from. Just look at any mess of spaghetti C++ or C code; you'll be hard-pressed to find many commonalities in such trivial yet ergonomically important things like indenting. And don't even start mentioning Perl.

      More authoritarian languages like Java and Python ensure a higher uniformity among code bases created by completely different people (there's just one way to do it, biznatch). You often don't need coding standards in these languages simply because of the pre-existing psychological inertia around conventions like camelCaps.

    20. Re:Java by Anonymous Coward · · Score: 0

      About (MxN)^(MxN) trivial ways, where M and N are the dimensions of your matrices. That's ignoring fancy matrix adding algorithms designed over the years to get even better performance or numerical than the naive approach.

      Never estimate the complexity of doing anything with floating point numbers; lots of smart people have gotten burned by this.

    21. Re:Java by mwvdlee · · Score: 1

      And these fancy algorithms can't be implemented in a method? (operators are just methods)

      --
      Slashdot social media options: AIM, ICQ, Yahoo, Jabber and Mobile Text. Why no MySpace?
  14. MSIE & XHTML by Anonymous Coward · · Score: 0

    As a web developer, I find it annoying to have to send XHTML content to MSIE with the incorrect Content-type "text/html" instead of the correct Content-type "application/xhtml+xml"

    Even if Microsoft supports application/xhtml+xml in MSIE 7, developers will still need to support MSIE 6 (maybe 5) by sending it as text/html to those HTTP_USER_AGENTs.

    --BladeMelbourne

    1. Re:MSIE & XHTML by Shinglor · · Score: 1

      Just switch based on the accept header, it's not much of a problem. IE's lack of CSS support is the main problem.

    2. Re:MSIE & XHTML by Anonymous Coward · · Score: 2, Informative

      That's not a bug/shortcoming in a specification. That's a bug/shortcoming in an application.

      Funnily enough, I thought of sending XHTML as text/html when this story popped up. There is a problem with the specification.

      The latest RFC for text/html claims that the XHTML 1.0 specification defines a profile that is compatible with HTML, and that you are allowed to label this as text/html.

      The first shortcoming is that it doesn't bother mentioning this "profile" by name. Most people take it to mean Appendix C.

      Here's the kicker though: Appendix C XHTML is not compatible with HTML. No form of XHTML is. XHTML can be compatible with most HTML user-agents, but only because most HTML user-agents don't fully support HTML.

      You see, HTML allows an SGML short cut. Instead of writing, say, <h1>My Heading</h1>, you can write <h1/My Heading/, and it will mean the same thing. Or at least it should.

      Only a few user-agents implement this though. Emacs/W3. The W3C validator. A couple of search engines. The rest, including every browser you are likely to have heard of, uniformly ignore this part of the specification.

      Here lies the trouble. XHTML uses a slash inside a tag to mean something completely different - that it is an empty element. The HTML for a a meta element might be <meta name="author" content="foo">.

      Since HTML, based on SGML, expects a fairly smart parser that can figure out from context and the document type where an element ends, this can be an empty element without explicitly marking it as such or using an end tag.

      XHTML, on the other hand, had a design goal of allowing parsers to be a bit more stupid. One of the results of this was that you have to explicitly mark empty elements with a slash as the last character inside a tag. So the XHTML equivalent of the above HTML is <meta name="author" content="foo" />.

      Of course, because they used a slash, instead of practically any other character, this made XHTML fundamentally incompatible with HTML. Because if you read the XHTML version as if it were HTML, it means <meta name="author" content="foo">>. Note the trailing >.

      HTML user-agents that implement the shortcut will break when they encounter XHTML that is labelled as text/html. This could have been avoided by simply picking a different character to signify empty elements. Of course, because neither of the two biggest browsers ever bothered to implement this part of HTML (Mozilla still doesn't, for everybody who claims it is "standards compliant" [sic]), nobody much cares - niche browsers can go screw themselves, right?

      Somebody else mentioned the Referer misspelling, but another problem I dislike in HTTP is that language tags don't generalise. For instance, if your browser sends Accept-Language: en-US;q=1.0, de;q=0.5 to signify that the user prefers American English, but can make do with German, according to the specification, a server with English (note: English, not American English) and German resources is supposed to supply the German resource to the user.

      Of course, Internet Explorer and Safari come preconfigured with en-US without en as a fallback, which means that anybody who is content negiotiating can either follow the specification and be broken for these clients, or follow Internet Explorer and Safari, and be broken for any client that follows the specification.

      Another problem I dislike is that of underscores in CSS 2. CSS 2 doesn't allow unescaped underscores in selectors. CSS 2 does allow unescaped underscores in selectors.

      What's that? I've just contradicted myself? Not me - the CSS 2 specification. The W3C sneaked in a change to CSS under the guise of "errata". This results in people getting an error when they try and validate their CSS that contains un

    3. Re:MSIE & XHTML by Lord+Prox · · Score: 1

      Whew...

      Soooo.... do you feel any better now?

  15. mirc by JohnFluxx · · Score: 2, Insightful

    Mirc file transfer sends data in packets, and waits for an ack for each packet.

    Over tcp.

    TCP of course already does this, and this just makes sending files very very slow. It should have just sent it as a single stream.

    1. Re:mirc by Firehawke · · Score: 1

      Is that mIRC or DCC in general? Do other clients do this as well? I'm not versed in the DCC protocol as that's a seperate RFC I haven't gotten to yet, but if that's across DCC's RFC, that's a braindead protocol design.

    2. Re:mirc by Anonymous Coward · · Score: 0

      DCC doesn't have an RFC - it's a poorly-specified protocol you can find a few textfiles about if you're lucky. Anyway, the DCC protocol was designed by idiots with no clue about how TCP works, since they do their own weak acknowledgement. Another amusing thing is that the ack packets specify the number of bytes received, but there's no provision for saying that you need bytes resent - it's strictly one-way. Even if bytes were resent, there would be no way for the sender to tell you what chunk it was resending. If you look at modern IRC clients, you'll see that they ignore the spec entirely, keeping track of "sent" and "acked" traffic separately and sending out a simple stream of data, only showing "acked" traffic as a point of interest.

      Bit of a pet peeve of mine. :P

    3. Re:mirc by Anonymous Coward · · Score: 0

      Just use large packets. Even I figured that out at 13.

    4. Re:mirc by JohnFluxx · · Score: 1

      The anonymous coward is totally correct. The mirc guys were on crack.

      There is no official dcc protocol as such, only a reversed engineered one from mirc.

      The anon is also right in that client ignore the wait before the ack. This is often does as an option, since there are still old mirc clients out there that need the ACK.
      This is what "fast dcc" option does in most irc clients.

    5. Re:mirc by JohnFluxx · · Score: 1

      Mirc has trouble with large packets unfortunetly. It has a maximum of 8kb, and even at that it frequently screws up the files.

  16. DCE and DTE i RS232 by geirt · · Score: 5, Insightful

    It should have been female connectors with only one pinout (e.g DCE) on all equipment supporting RS232, and all RS232 cables should be crossed (null modems).

    Instead we have a complete mess with male and female connectors, straight and crossed cables. Is pin 2 receive or transmit? Dohhh.

    Why female connectors on boxes? Male connectors are more fragile. If the pins break, replace (or repair) the cable. The female connector on the box is OK.

    Luckily, RS232 are dying ;-)

    --

    RFC1925
    1. Re:DCE and DTE i RS232 by slittle · · Score: 2, Funny
      Luckily, RS232 are dying ;-)
      Nooo!!

      **hugs USR Couriers**

      Don't you listen to that Bad Man...
      --
      Opportunity knocks. Karma hunts you down.
    2. Re:DCE and DTE i RS232 by AndroidCat · · Score: 1

      Blame the IBM PC for putting male connectors on the equipment rather than the cable. (So that there'd be a difference between the female DB-25 for the parallel printer port.)

      --
      One line blog. I hear that they're called Twitters now.
    3. Re:DCE and DTE i RS232 by cow-orker · · Score: 3, Interesting

      Luckily, RS232 are dying ;-)

      Yeah, but Ethernet repeated the same mistake and is sure to stay for a while.

    4. Re:DCE and DTE i RS232 by AndroidCat · · Score: 1

      How can you get it wrong with a coax cable? (Or do you mean that new fangled RJ-45 thing that some call Ethernet.)

      --
      One line blog. I hear that they're called Twitters now.
    5. Re:DCE and DTE i RS232 by Anonymous Coward · · Score: 1, Informative
      Yeah, but Ethernet repeated the same mistake and is sure to stay for a while.

      Luckily most of the current ethernet chipsets support auto-detection of crossover. I wont buy a switch that doesn't.

    6. Re:DCE and DTE i RS232 by geirt · · Score: 1
      Luckily, RS232 is dying ;-)

      Yeah, but Ethernet repeated the same mistake and is sure to stay for a while.

      The Gigabit ethernet spec have fixed that mistake since all GigE equipment is auto MDI/MDIX

      --

      RFC1925
    7. Re:DCE and DTE i RS232 by ShawnD · · Score: 1

      PCs are non-standard since all RS232 equipment should have female connectors. I think PCs went male to avoid confussion with the paralell port.

      BTW DTE/DCE makes sense when you look at what it was designed for - connecting a dumb terminal to a dumb modem.

    8. Re:DCE and DTE i RS232 by Garak · · Score: 1

      The RS-232 or EIA/TIA-232 as its know today has alot of shortcommings beyound the DCE -> DTE cabling mess. It has to be the worst standard ever!

      They didn't use ballanced cabling which limits the distance and the bandwidth big time. RS-422 and 485 both use ballenced cables and signals and can go up to 4000feet at 115,200 baud while RS-232 can only go 50feet at 19,200 baud.

      --
      God, root, what is the difference?
    9. Re:DCE and DTE i RS232 by ClosedSource · · Score: 2, Interesting

      The problem is that RS232 is (was) being used for things it was not designed for. It was never meant to be a general purpose serial communications standard.

    10. Re:DCE and DTE i RS232 by ClosedSource · · Score: 1

      Note that RS-422 has a higher number than RS-232. Technology improves over time and you can't judge designs across generations. RS-232 was first created in 1960 and wasn't bad for its time.

    11. Re:DCE and DTE i RS232 by SunFan · · Score: 1

      I think PCs went male to avoid confussion with the paralell port.

      So they wanted to save money on the PC end (eh, just make it all DB25), yet they still came up with an entirely different plug for the printer itself? Was this just so they could make money selling specialized printer cables instead of everyone using a unversal 25-wire cable?

      --
      -- Microsoft is the most expensive commodity operating system and office suite vendor in the marketplace.
    12. Re:DCE and DTE i RS232 by SunFan · · Score: 1

      RS-232 was first created in 1960 and wasn't bad for its time.

      Wow, talk about a good ROI!

      --
      -- Microsoft is the most expensive commodity operating system and office suite vendor in the marketplace.
    13. Re:DCE and DTE i RS232 by Bios_Hakr · · Score: 1

      RS-232 may seem to be dying, but it's far from gone. Just about any telecom system that needs to be configured is interfaced through a 232 serial port. Not to mention there's tons of stuff still using RS-530 and RS-449.

      While it may seem confusing to a relative outsider, RS-232 is beautiful to thoes working in the WAN/campus portions of the IT field.

      232 is usually DCE if it's female; DTE if it's male. A straight-through cable will fit most people's needs. If you enter into the world of crossover cables, then things like control leads and timing need to be examined on a case by case basis. Sure, you may pick up a cable at Radio Shack that works, but not always.

      In any event, working around rs-232 for 10+ years has given me a ton of respect for the people who designed it. It's as simple as can be yet powerful enough to still be implemented to this day.

      --
      I'd rather you do it wrong, than for me to have to do it at all.
    14. Re:DCE and DTE i RS232 by Cmdr+TECO · · Score: 1

      You might screw the tap in too far off the mark. (Assuming you didn't mean that new-fangled 10base2.)

      (And while we're on the subject of Ethernet and standards that suck, how about that slide lock on the connector?)

      --
      echo 33676832766569823265328479713269.8639857989Pq | dc
    15. Re:DCE and DTE i RS232 by Anonymous Coward · · Score: 0

      That's not "fixing", that's a workaround. Detecting which pin is send and receive, instead of specifying in the standard "this one is send and that one is receive".

      The euro-scart connector is the only one I know that got it right.

    16. Re:DCE and DTE i RS232 by Anonymous Coward · · Score: 0

      Printers are wired differently, so it probably actually saved confusion. Moreover, serial printers came before parallel printers, so you'd have some serious mixups if you had physically compatible cables.

    17. Re:DCE and DTE i RS232 by Anonymous Coward · · Score: 0

      RS-232 is also really useful for sysadmins who need to gain access to their boxes, which have gone crazy for some reason. My null modem cable has saved me much effort of lugging around a CRT and a keyboard many a time.

    18. Re:DCE and DTE i RS232 by Ashtead · · Score: 1
      PCs are non-standard since all RS232 equipment should have female connectors.

      No. According to that standard, the Data Terminal Equipment (computers and terminals) should have male connectors and the Data Communications Equipment, which basically means all kinds of modems, should have female connectors. However, many other manufacturers put female connectors on their equipment, for whatever reasons. Perhaps they considered them DCEs since these cables usually would have dumb terminal DTEs (with male connectors) at their far ends, and thus all cables could be made male-female straight-through, making them as simple and versatile as mains extension cords. Or maybe because the female connectors were slightly less fragile. Some old PC cards even had jumpers to change their configuration from the default DTE to DCE, just to confuse the matter further.

      I think PCs went male to avoid confussion with the paralell port.

      Very likely. The paralell port has TTL-voltage levels, 0V to 5V, whereas the serial port uses signals that can extend as far as +15 and -15V. The TTL chips sitting behind the paralell port would not stand these larger voltages, and everyone would have had a lot more hardware failures on their parallell port cards from plugging in serial-cables into them. Not everyone used more rugged chips than the 74LS240-series of the originals.

      BTW DTE/DCE makes sense when you look at what it was designed for - connecting a dumb terminal to a dumb modem.

      And connecting terminals to modems was the original scope of this standard. The naming of the serial-port devices on various OSes as COMX or /dev/ttyX or /dev/cuaX also reflects this old standard usage. There were teletypes, sometimes behind a pair of modems (tty), call-out connections (cua) or just some unspecified communications kit (COM) expected to be found at the other ends of those cables.

      It just so happened that the serial protocol with its relatively few wires, also seemed a good choice for connecting other kinds of equipment, notably printers and plotters. After all, an old-fashioned teletype was really a kind of printer. The problem was that not all the handshake and status lines for a modem would be relevant for the printer, and everyone came up with their own idea of which ones were to be used and which ones weren't.

      It isn't so much the standard, as its reappropriation outside its scope. It would have been a lot easier if there had been more guidance amongst the choices and options (male/female connectors, all the status and handshake lines: most of the 25 pins in the connector were actually assigned to some more or less obscure function)

      --
      SIGBUS @ NO-07.308
  17. Telecine'd DVD movies by wowbagger · · Score: 1

    I wish the creators of DVD had required players to support converting from 24 frames per second non-interlaced to 60 fields per second interlaced on the fly, rather than the current standard of the movie being converted when the disk is mastered.

    When I am watching a DVD on my computer, it is trivial for my monitor to switch to 72Hz refresh, and show each movie frame for 3 refreshes, rather than getting all the interlace artifacts. It would also have improved the compression of the DVD for a given quality.

    1. Re:Telecine'd DVD movies by GreatDrok · · Score: 1
      I wish the creators of DVD had required players to support converting from 24 frames per second non-interlaced to 60 fields per second interlaced on the fly, rather than the current standard of the movie being converted when the disk is mastered.

      What are you talking about? Movies are mastered to DVD at 24fps and the player does indeed perform the 3/2 pulldown process to produce the 60 fields per second NTSC TV requires. Progressive scan DVD players can directly output the 24fps non-interlaced image to a suitable TV/projection system which gets rid of any nasty judder.

      You shouldn't be seeing interlace artefacts when playing DVD on a computer unless the original source material was interlaced such as live TV recordings.

      --
      "I have the attention span of a strobe lit goldfish, please get to the point quickly!"
    2. Re:Telecine'd DVD movies by Alan+Shutko · · Score: 1

      Actually, the DVDs do indeed have 60fps interlaced video. Progressive scan DVD players have to reverse the process to get back to the 24fps. That's why some progressive scan players produce better results than others....

      Check out http://www.hometheaterhifi.com/volume_7_4/dvd-benc hmark-part-5-progressive-10-2000.html for one explanation.

    3. Re:Telecine'd DVD movies by GreatDrok · · Score: 1

      I think you are misreading this.

      DVDs sourced from 24 frames/ps film are encoded at 24 frames/ps 480 scanline progressive and converted to 60 fields/ps NTSC by the player. Material shot on standard NTSC video is sourced at 60 fields 480 scanlines interlaced and the player can just play that back. However, a progressive player while able to show 24fps 480p material nicely has a harder time with 480i material as it has to deinterlace it and the quality of the deinterlacer is going to affect the quality of the picture. However, the vast majority of DVD material is 480p and a progressive player will look fine with it.

      MPEG encoding interlace material is less efficient than encoding progressive and that is why film sourced material is encoded as 24fps 480p. Only if the source was originally 480i is it encoded with interlacing.

      I remember seeing an article very similar to the one you pointed at back in the days of LaserDisc (I still have a large collection) and it was accurate for LD which was recorded as interlaced NTSC video with 3:2 pulldown. I have a deinterlacer that returns a 480p signal to my projector from 480i LD and it substantially improves the picture.

      --
      "I have the attention span of a strobe lit goldfish, please get to the point quickly!"
    4. Re:Telecine'd DVD movies by iantri · · Score: 1
      Kind of.

      NTSC material from film on DVD can either be hard telecined (i.e. the source is interlaced, no inverse telecine has performed) or 24p with the appropriate flags set in the MPEG file.

      24p material is indicated using a standard, repeating pattern of toggling on and off the top field first and repeat first field flags. A regular DVD player will simply follow these instructions, producing 3:2 output.

      A progressive player will see the pattern of flags and know that the video is 24p, outputting it as such. The video is encoded as 24 whole frames per second -- it is simply flagged so that the DVD player outputs 29.97fps.

      Now the difference in progressive players comes into effect when you are talking about playing back material that has been hard telecined -- television shows shot on film are a good example, since they tend to be edited on video -- some have a far better inverse telecine filter than others.

  18. CSV files by Anonymous Coward · · Score: 0

    Not sure if this is the type of "standard" that the question means but CSV files are anything but standard. A very bad format.

  19. serial RJ45 connectors by UnderAttack · · Score: 1

    A lot of equipment uses RJ45 connectors to provide serial connections (e.g. terminal servers). But they all use different pin outs. Sometimes even different models for the same manufacturer need different adapters.

    --
    ---- join dshield.org Distributed Intrusion Detec
    1. Re:serial RJ45 connectors by ShawnD · · Score: 1

      Also the number of different, incompatible, interfaces that use the RJ45 connector. On one router I have seen: Serial, Ethernet, ISDN, T1 (Technically RJ48), Voice (E&M) and Token Ring. Some ISDN lines provide power that can nicely burn some resistors off of an Ethernet interface.

      BTW My annoyance is connector mis-naming. RJ45 originaly was the name for a specific type of analog phone line. When did it become a general term for 8 pin modular connector?

    2. Re:serial RJ45 connectors by lachlan76 · · Score: 1

      So the bug in the standard is the lack of a standard?

  20. XML. For existing at all. by baadfood · · Score: 5, Interesting

    Sure a well defined markup language is nice but really, people seem to loose all rational sense when it comes to XML - It cannot be used in a project without the project becomming "XML"? Scripting languages have been capable of processing all manner of free form text files in the past but somehow XML is necessary for interoperation? Why do people somehow think that XML encapsulated data will be small and quick to parse and are then suprised when it isn't? Why are they so fucking proud when their server can generate some trivial number of XML packets per second? What nutjob actually thought XML is easy to read? And what is the difference between a node an an attribute? Really?

    1. Re:XML. For existing at all. by Anonymous Coward · · Score: 2, Informative

      Sure a well defined markup language is nice but really, people seem to loose all rational sense when it comes to XML

      So in other words, there isn't a problem with the standard at all?

      Scripting languages have been capable of processing all manner of free form text files in the past

      And you've got to write a new parser for every new format.

      somehow XML is necessary for interoperation?

      Necessary? No. The best option? Usually.

      Why do people somehow think that XML encapsulated data will be small and quick to parse

      I see people claiming that XML is easy to parse, on account of every major language having at least one XML parser already available for free.

      I do not see people claim that using XML results in small documents (except where the other format under consideration is unusually large). I do not see people claiming that XML results in quicker parsing (except in relation to SGML).

      I often see people claiming that XML doesn't perform very well directly after they use the wrong tool for the job (e.g. DOM vs SAX).

      Why are they so fucking proud when their server can generate some trivial number of XML packets per second?

      There's no such thing as an "XML packet".

      What nutjob actually thought XML is easy to read?

      XML, for documents and config files, is very easy to read. It's only when you use XML for things it is unsuited for that it becomes difficult to read.

      And what is the difference between a node an an attribute?

      Generally speaking, nodes contain content and attributes contain metadata. There are grey areas because what people consider to be "content" and "metadta" has grey areas.

    2. Re:XML. For existing at all. by doofusclam · · Score: 1

      Damn right. I put my CV forward for a new job last week, the recruitment 'pimp' got back to me and said, although the CV was ideal, I needed to put XML on at least 3 previous jobs? Why? It's not like learning to use it takes any more than a couple of days, what with the different parsers and such, and therefore I just left it off my CV.

      The way I felt was that it's a marginal skill, and having to put it on my cv 3 times to placate some idiot in the HR department annoyed me.

      What is it about people that makes them think XML is not only complex, but also the universal panacea to all programming ills?

    3. Re:XML. For existing at all. by Anonymous Coward · · Score: 0

      amen. I don't have modpoints unfortunately, but I feel the need to "me too" this.

      We used to use .ini files for all the components of our system- these weren't real windows ini's, but workalike multiplatform text files with nearly the exact same format and a bunch of extra features. One day a decree is made that we are all going to convert to XML config files. Most people said "yay, were going to be in the 21st century finally!" but me and some of the other guys that were charged with maintaining these files saw no need for it and just kind of rolled our eyes, expecting a waste of a lot of development effort but not really hurting anything. In practice, when these new files were rolled out, it suddenly became a huge PITA to maintain these things. Where as before editing a file required only notepad, you either now had to risk screwing up tags, namespaces, etc, with one mistake making the entire file invalid, or you could get the help from an XML editor, which now have to be installed on every machine in the office to really be useful.

      And yeah, readability? I see no improvement. A coworker wrote an xslt script to make them look like ini files again because all the brackets and colors made his eyes hurt when opening them up in an editor, and when the node name is far longer than the value, quick scanning becomes almost impossible. IE: <SOME_PARAMETER_NAME>2</SOME_PARAMETER_NAME> -when youre screen is full of stuff like this you just want to gouge your eyes out.

      The largest improvements we got out of the debacle were the ability to validate values (IE being unable to set a value like MAX_THREADS to a negative number, or an alphabetical value), and being able to have * many types of one section
      (IE having a node <USERGROUPS> and then having as many <USERGROUP name="Group1" accesslevel="admin"/> type nodes underneath it as necessary whereas before we would have to do a hack of naming the sections USERGROUP1, USERGROUP2, and then parsing the names looking for all the "USERGROUP" keys- kludgy and annoying- the better solution was usually to include such information in a seperate text file or store it in the database. Still not ideal because it caused you to have to fish around to get all the information.)

      And for passing data over the web, I don't see how XML improves upon a published standard protocol. The net was built upon text based protocols and I never really heard anyone complain that passing data over http or even through a direct socket connection is really hard.

      Ok, im done.

    4. Re:XML. For existing at all. by Anonymous Coward · · Score: 0

      It's not like learning to use it takes any more than a couple of days

      That depends. "XML" is so simple that you can start writing documents in minutes. But if you put "XML" on a CV, three times, I'm going to expect you to have experience in at least a few of the related technologies - DOM, XSLT, XPath and so on.

    5. Re:XML. For existing at all. by Anonymous Coward · · Score: 0

      And for passing data over the web, I don't see how XML improves upon a published standard protocol. The net was built upon text based protocols and I never really heard anyone complain that passing data over http or even through a direct socket connection is really hard.

      To be perfectly honest, this paragraph makes it sound as though you don't even have a clue as to what XML is. I know that isn't true, because what you posted before that is fairly sane, but moaning that XML isn't better than sockets? WTF? In other news, I think it's terrible that people like dogs, because I never heard anybody complain that the colour blue isn't good enough.

    6. Re:XML. For existing at all. by doofusclam · · Score: 1

      Good point.

      The stupid thing is, I do have (most) of these, but they've been picked up on by HR types who deign them to be more important than they are. I know people who work there already and they wouldn't know anything about XML bar the MSXML parser.

      So in that job it's an irrelevance, but the HR eejits still insist I plaster it loudly and proudly on my CV.

    7. Re:XML. For existing at all. by Anonymous Coward · · Score: 0

      I admit I am not intimately familiar with the role of XML in passing data through webapps, and I also see now that I used some terminology in a horrendously ambiguous way that was very confusing.

      However, back in the "good old days" I used to do low levelish network programming and had no problem having a client and a server listening and sending messages to each other (plain text over a socket connection). AKA client would send a message "Request UserInfo " and I would send back an acknowledgement and then a stream of text in a specified format (aka "UID: 12345 FNAME: Joe LNAME: Schmoe DEPTCODE: CS", etc.) obviously it was a bit more complicated than that, but I never said "damn its real tough parsing this" nor in the instances when the client and server were written by two different people, was there ever a complaint that they couldnt parse the stream I was sending them after it was published.

      I think what probably really threw you off was the phrase "published standard protocol"- I was using it more in the sense of the definition of the format of the data I was sending them, which would be analogous to an XML Schema. "the published standard" that I was referring to was most commonly just a techspec developers shared on a project.

      Also, I meant that looking at protocols like ftp, no one had problems with the plain text nature of how they worked. No one saw the need to send something like get and file1 down the line to issue commads. I feel like in the post-XML age we are in, many apps are being designed like this.

      I feel like my argument is still not entirely clear: In essence I feel like specifically in sending data between machines, XML is solving a problem that was never a problem, as sending and later interpreting a clearly documented stream of text over a network has never been difficult. I suppose you could argue that instead of writing a parser for each application, you have standard ones in each language. In my experience though, the tedious work in passing data between machines has always been in marshalling that data into problem relevant data structures, whether it be an array, a struct, a class or whatever, and XML does not solve this problem.

    8. Re:XML. For existing at all. by Anonymous Coward · · Score: 2, Interesting

      Config file in XML:

      <?xml .... ?>
      <config>
      <connections>
      <connection>
      <type>mysql</type>
      <host>foo.bar.com</host>
      <username>bob</username>
      <password>2sekret4u</password>
      </connection>
      <connection>
      <type>mysql</type>
      <host>db.host.com</host>
      <username>jane</username>
      <password>flower</password>
      </connection>
      </connections>
      </config>

      Config file in (example) YAML:

      connections:
      - type: mysql
      host: foo.bar.com
      username: bob
      password: 2sekret4u
      - type: mysql
      host: db.host.com
      username: jane
      password: flower

      Which is easier to read? to type from scratch? to quickly edit (add another connection entry for instance)? And this is just a *simple* example. Ever work with an Ant build file? *shiver*

      XML is almost always the wrong solution. Not that it isn't useful for some things, but I'd rather never see XML again than have to deal with systems like the above.

    9. Re:XML. For existing at all. by Anonymous Coward · · Score: 0

      AKA client would send a message "Request UserInfo " and I would send back an acknowledgement and then a stream of text in a specified format (aka "UID: 12345 FNAME: Joe LNAME: Schmoe DEPTCODE: CS", etc.) obviously it was a bit more complicated than that, but I never said "damn its real tough parsing this" nor in the instances when the client and server were written by two different people, was there ever a complaint that they couldnt parse the stream I was sending them after it was published.

      That's fair enough. It's not a technical programming issue, but more of a policy issue. For instance, a lot of early protocols like HTTP and SMTP have syntax that is very short-sighted, and when there are problems, silly one-off workarounds are used.

      What XML gets you is a single, formalised syntax with very clear, precise rules about what characters are allowed where, how to escape special characters, and so on. This is solved once. No document format, protocol, or config file need think about it. It's all handled by the parser. All you need to worry about is the various sections. When it comes to config files, I can usually express what it is I want from the config file in a single XPath expression.

      The problem with your approach tends to be that the syntax is derived from a small amount of sample data and ends up being quite fragile. Separate fields with spaces? That's going to be trouble in the rare instances that a surname contains a space. Surround it with single quotes? That's going to be trouble when somebody with an Irish surname registers. And so on.

      I'm not saying that these issues certainly affect you personally, just that generally speaking, these types of issues crop up over and over again in a wide range of different situations, and a tremenduous amount of time and energy goes into "one-off" fixes that each of the programmers involved would describe as simple. Having XML as a standard format does a lot to eliminate these issues before they begin.

      Also, I meant that looking at protocols like ftp, no one had problems with the plain text nature of how they worked.

      I've never worked with FTP (but I have heard it described as a pretty ugly protocol). But I have worked with many other protocols of the same era. And they all have one-off fixes. And more one-off fixes. And more one-off fixes. Look at email alone. You have leading dot - and its workaround. You have spaces in To fields - and its workaround. It was designed with ASCII in mind - with more workarounds to follow. You have long headers causing problems for some software - so another workaround involving header folding. Sig separator? That's just random characters in the message body with no formalised workaround.

      Each of the workarounds in turn is quite simple, but then you realise that in virtually every case, those workarounds are specific to the protocol in question. You pick up a new protocol, and you've got to learn a whole set of other workarounds. A third protocol brings with it yet more issues.

      XML isn't right for every situation, and the people who constantly cheer for it are annoying to me too. But for most config files and document formats that I've worked with, XML would be a benefit.

    10. Re:XML. For existing at all. by Anonymous Coward · · Score: 0

      Which is easier to read?

      Are you kidding? I can pull out what I need from that with a couple of XPath expressions. That's practically zero programmer effort.

      to type from scratch?

      If you are typing it from scratch, you'll want a quick way to check the syntax. AKA validation.

      Ever work with an Ant build file?

      Yes actually. And I don't think XML was the right tool for the job there. But I'd use XML in the situation you are describing.

      XML is almost always the wrong solution.

      If you consider the example you gave to be wrong for XML, then I'm not surprised that you consider XML almost always wrong. I don't consider it to be wrong for XML. The worst complaint I have is that it's ugly. But ugly doesn't translate to more difficult to use.

    11. Re:XML. For existing at all. by SunFan · · Score: 1

      And what is the difference between a node an an attribute? Really?

      There is an arbitrary guideline for when to use a node and when to use an attribute. I believe this is what they call "best practices." That's how inane XML is.

      --
      -- Microsoft is the most expensive commodity operating system and office suite vendor in the marketplace.
    12. Re:XML. For existing at all. by Anonymous Coward · · Score: 0

      That's practically zero programmer effort.

      It is? There is such a high learning curve for XML, XSL, DSSSSSSSSL, XSLT, XPath, XML Schema (in all variants), XML namespaces, and so forth that I doubt anyone really uses XML properly.

      There's something to be said for using plain text files for when they are useful and then just giving up and using an SQL database for data. Everyone who is a good developer knows how to deal with plain text and SQL. Sure, people screw up SQL, but at least they aren't screwing it up and XML, too!

    13. Re:XML. For existing at all. by Anonymous Coward · · Score: 1, Interesting
      What XML gets you is a single, formalised syntax with very clear, precise rules about what characters are allowed where, how to escape special characters, and so on.
      Oh. That.

      You're allowed to write, say,

      foo&#000a;
      but not
      beep&#0007;
      But since it's useful to do -- the alternatives being to add a non-human-readable encoding layer, or an additional application-specific escape convention -- some software does it anyway. And then more anal-retentive software chokes.
      This is solved once.

      Where "solved" means "it's not going to be fixed".

      Ceterum censeo, XML delenda est.

    14. Re:XML. For existing at all. by Anonymous Coward · · Score: 0

      It's not like learning to use it takes any more than a couple of days...

      Learn it in a day, master it in two...no three...lifetimes. Oops, my first lifetime is up, and they changed the standard...again!!!

      Seriously, XML is a steaming pile.

    15. Re:XML. For existing at all. by Anonymous Coward · · Score: 1

      In my experience though, the tedious work in passing data between machines has always been in marshalling that data into problem relevant data structures, whether it be an array, a struct, a class or whatever, and XML does not solve this problem.

      You are 100% correct, sir! My opinion is that XML was invented to sell books on XML.

    16. Re:XML. For existing at all. by Brandybuck · · Score: 2, Insightful

      Any simple and standard text-based markup language for data encoding with several free parsers available would probably have been just as overhyped as XML.

      Numerous other formats performing the same role as XML exist, but they never got the hype because they either weren't a standard, didn't have available parsers, weren't simple, etc., etc.

      What nutjob actually thought XML is easy to read?

      I think it's easy to read! It's a hell of a lot easier to read than RTF, Postscript. Or consider Sendmail configuration files. Ick! While not as readable as traditional dot.ini files, it's a heck of a lot more flexible.

      If you can read HTML you can read XML.

      And what is the difference between a node an an attribute?

      What's the difference between a person and a trait? It's the same difference. Traits describe people, and attributes describe nodes. Think of nodes as nouns and attributes as adjectives. If a node is the name of an image file, then the attributes could be the image format, size, description, etc.

      Of course, like natural language, distinctions can be difficult to make. Is an email address a node or an attribute? But don't sweat stuff like this, because no one cares.

      --
      Don't blame me, I didn't vote for either of them!
    17. Re:XML. For existing at all. by Anonymous Coward · · Score: 0

      There is such a high learning curve for XML, XSL, DSSSSSSSSL, XSLT, XPath, XML Schema (in all variants), XML namespaces, and so forth that I doubt anyone really uses XML properly.

      You learn what is useful to you. If you aren't transforming documents from one type to another, don't bother learning XSLT. DSSSL was (is?) popular with SGML, hardly anybody uses it with XML. XSL doesn't exist (early drafts had XSLT and XSL-FO combined, they were split up to make things simpler). XPath is very useful as a way of addressing document fragments, so most people will want to learn this. No document consumer needs to worry about XML schemas, and XML namespaces only matter when you mix and match different documents.

      Yes, there are a lot of related technologies. But to parse a simple config? Load your XML library, plug in an XPath expression, and that's it, job done. Like I said, practically zero programmer effort.

      There's something to be said for using plain text files

      There is? There is such a high learning curve for plain text - sed, grep, awk, perl... please try and compare like and like here. If I held you to the same logic you used to argue against XML, you'd have a lot of learning on your hands.

      Everyone who is a good developer knows how to deal with plain text and SQL.

      Everyone who is a good developer knows to use the best tool for the job. Plain text is not a config file format. If you think you use plain text, then what you have actually done is build your own format, using your own syntax, on top of plain text. Depending on your needs, that may or may not be appropriate, but don't kid yourself into thinking it's "just" plain text, and that you haven't written your own parser.

    18. Re:XML. For existing at all. by Anonymous Coward · · Score: 0

      Your argument against XML is that you can't embed an audible beep in a document as a character? That is your argument?

      When I said "how to escape special characters", I meant special to the syntax. Using ad-hoc file formats, this is solved on a case by case basis, if at all.

    19. Re:XML. For existing at all. by Anonymous Coward · · Score: 0

      If a node is the name of an image file, then the attributes could be the image format, size, description, etc.

      How is the name of an image file not an attribute? Why should it be a node? What if an adjective is also a noun, like colors?

      But don't sweat stuff like this, because no one cares.

      The person doing the programming cares. They have to live with it.

    20. Re:XML. For existing at all. by Brandybuck · · Score: 1

      How is the name of an image file not an attribute?

      In the case of images, mostly likely it *would* be. I was just using it as an example. There are a myriad uses for XML. I most often use it for application data storage. In this case the the XML represents structured data, and not a structured document. Most structured document schemas (XHTML, DocBook) place the image file name as an attribute, but there is no reason this is mandatory.

      XML is extremely flexible. There are no rules on how you must structure your data. Equating nodes to nouns and attributes to adjectives is only a suggestion. For some domains it will work, for others it will not.

      The person doing the programming cares.

      But other people are not going to care. That was my point. If you're the programmer, don't sweat this stuff, because other people who don't have to write it won't care. Not unless they're anally retentive.

      XML is extremely flexible. That means you get to make up most of your own rules as you go along. I know one developer who won't use any attributes at all.

      --
      Don't blame me, I didn't vote for either of them!
    21. Re:XML. For existing at all. by Anonymous Coward · · Score: 0

      The fact that you need XPath expressions just to READ the XML file, shows that it is not easy to read.

      A plain (non-XML) text-file can be read using only your eyes, no XPath expressions needed.

    22. Re:XML. For existing at all. by Anonymous Coward · · Score: 0

      You don't know what you are talking about. Honestly.

      I was talking about reading it in from a programmer's perspective, i.e. coding the config loading function. Your eyes can't be embedded in a program.

      If you are talking about looking at the source, then you can open XML up in any old text editor and see it for yourself. Anybody with the remotest knowledge of XML knows this.

      Please, if you have absolutely no experience whatsoever with something, try and refrain from passing judgement on it.

    23. Re:XML. For existing at all. by farnz · · Score: 1
      A couple of questions on the YAML version:
      • How does the parser distinguish random whitespace after the colon from fields that begin with whitespace?
      • How do I extend the syntax to cover MySQL over both IP and domain sockets? In XML, I'd add an attribute to the "type" element, allowing for a default (omitted) meaning "any", and providing an enumerated list of available connection types.
    24. Re:XML. For existing at all. by Anonymous Coward · · Score: 0

      Unless stated otherwise, all XML documents are either UTF-8 or UTF-16 (or maybe just UTF-8). That means all Unicode characters are encodable in an XML document, without special escapes. Special escapes are only needed for characters which have other meanings in XML. Adding arbitrary special escapes just makes the format more complicated, because now you have canonicalization problems with characters/strings that have multiple representations, which means you end up converting the entire document to something like UTF-8 anyway.

      The people who created XML are a lot smarter than you (at least when it comes to creating a minimal interchange format), which just points out the whole advantage of XML: millions of other people have already worked the bugs out and created standard-compliant tools, leaving you with a standard that you can rely on to Just Work.

    25. Re:XML. For existing at all. by Frank+T.+Lofaro+Jr. · · Score: 1

      If you don't know which to use, use nodes. XML didn't really need attributes, except to allow HTML compatibility. You can live without attributes if you are writing your own XML-based documents.

      They are functionally equivalent in many ways, you can use one or the other, but nodes are cleaner.

      <connection>
      <protocol>tcp</protocol>
      <ip>127.0.0.1</ip>
      <port>80</port>
      </connection>

      and

      <connection protocol="tcp" ip="127.0.0.1" port="80" />

      mean the same thing, and I think some parsers will let you treat them as the same transparently (I am not 100% sure on this point).

      --
      Just because it CAN be done, doesn't mean it should!
    26. Re:XML. For existing at all. by Cyn · · Score: 1

      And what is the difference between a node an an attribute? Really?

      One's a container and one's a property. If you're adding some value to an XML file - and you think it does or will ever have other properties - or its parent will ever have more than 1 of it - then it's a node. Otherwise, it's an attribute. Some people like to make everything a node to be safe - that's fine, XML is bloated anyway :)

      But it does serve a purpose, specifically because it is a standard and got the hype it needed to be recognized and accepted.

      nodes and attributes are just like nodes and leaves in traditional tree structures.

      --
      cyn, free software and *nix operating systems enthusiast.
  21. Use of floating point for date/time by AndroidCat · · Score: 4, Interesting
    Microsoft, in their infinite wizzbang, uses a floating point representation for date/time in their OLE types, with the date (days from x) in the integer and time in the fraction. That's fine until you have to do math like timezone conversions. If you convert a local time to GMT then to someplace else and back, frequently your time is now off by 0.0000000001 seconds. That adds excitement to comparing two times, especially when only one has been converted to and from.

    It's not a huge problem to avoid, but unless you're draconian about using standard safe time math routines, it'll bite you .. eventually .. when you least expect it .. at a customer site running Martian Standard Time at local midnight. (Which will still be a bad hour for you to get a call no matter where it is.)

    And all because someone thought it would be pretty nifty to use floating point. Don't they teach the inherent dangers of round off or truncation errors in school these days? (And before someone automatically jumps on MS, with all the UNIX standards, what are you using? Is it safe?)

    --
    One line blog. I hear that they're called Twitters now.
    1. Re:Use of floating point for date/time by Anonymous Coward · · Score: 0

      This isn't a Microsoft format. It was originally created by Lotus 1-2-3. Actually, the two aren't perfectly compatible. Lotus incorrectly thought that 1900 was a leap year so there's a two month part of 1900 where they differ by one day.

      But it doesn't really matter if your time is 0.0000000001 seconds off. OLEAUT dates are to the nearest half second regardless of whether there's extra precision left over. You've still got the same single unique time that is being described. Round and compare. This is why people have written functions to do the comparisons for you.

    2. Re:Use of floating point for date/time by |<amikaze · · Score: 1

      Don't they teach the inherent dangers of round off or truncation errors in school these days? (And before someone automatically jumps on MS, with all the UNIX standards, what are you using? Is it safe?)

      We had to learn this one the hard way. We were in the regional ACM programming contest, and our solution worked perfectly on our local machine with the test data, but would return incorrect results on the marking machine. We ended up spending a ridiculous amount of time debugging it, which was hard, since we got the right answers :). Turns out there was a slightly different floating point process on the other end, and we had made the poor assumption that sqrt(x)*sqrt(x) == x. Sadly, 4.9999999999973 != 5.

      Lesson learned.

    3. Re:Use of floating point for date/time by Anonymous Coward · · Score: 0

      Oh my GAWD, is this true??

      And I thought some of the languages I was using (like Ruby) were broken because they sometimes used floating point for sub-second time!

      *shiver*

      Windows truly sucks, doesn't it?

    4. Re:Use of floating point for date/time by codemachine · · Score: 1

      I heard about that problem, since my university hosted part of the Mountain region's ACM programming contest.

      I think the Linux machines here and the Solaris machines at other sites returned different results, due to the differences in the architectures and their math libraries.

    5. Re:Use of floating point for date/time by hughk · · Score: 1
      Use of floats for date and time really quite reasonable as generally you are interested in a the value of a mantissa (i.e., that ten digits or whatever is normally enough to always give the resolution that you need), however all times should be normalised (to UTC, Stardate or whatever) before they are stored or used. Local times shouldn't exist outside data presentation layers. Rounding errors on time are really not so much an issue, rounding errors on money, now there is a problem!

      OTOH, I started when there was a lot of software floating point around and then you really wanted to use integers where possible in calculations.

      --
      See my journal, I write things there
    6. Re:Use of floating point for date/time by |<amikaze · · Score: 1


      I've got a feeling that what you heard about was my problem exactly. usask? The problem was definitely at the Rocky Mountain ACM.

    7. Re:Use of floating point for date/time by Anonymous Coward · · Score: 0

      Except most computer people want to use a timestamp like a counter value (observe the definition of C time() function, which despite hiding behind the time_t type is supposed to give you some integer number of seconds, perhaps wrapped in some sort of fancy structure). For any counter involved in logic, floating point is completely inappropriate. Floating point should really only be used for one thing, and that's any kind of fancy math, where all you're interested in is the numerical result to some finite level of precision, rather than using that result to drive your program logic. If that's the case, you need to make sure you use epsilons to keep the imprecision from escaping.

  22. Submarine patents by SgtChaireBourne · · Score: 3, Insightful
    Submarine patents and other proprietary gimmicks, are bad.

    A current example would be packing VC-1 into both Blu-ray and HD DVD.

    Though software patents are currently only a problem in the U.S., I'd still say that they threat of stealth patents would be the worst bug. Proprietary material shouldn't get through the standards process.

    --
    Beta is broken and the link to classic doesn't work. Stop wasting our time or there won't be anybody left here.
  23. DNS and service entries by hackstraw · · Score: 1


    DNS's MX entry is excellent, I wish it existed for other services as well.

    1. Re:DNS and service entries by outcast36 · · Score: 1

      Ask and you shall receive. Behold SRV

    2. Re:DNS and service entries by hackstraw · · Score: 1


      Excellent. I believe that I may have heard or seen the SRV RFC before. Now I did a quick search and saw plenty of references to that RFC, but none (besides a dead openldap thread) that talked about using it.

      Is SRV implemented in current DNS servers? Does the resolv library and/or any applications actually use this handy spec?

    3. Re:DNS and service entries by Anonymous Coward · · Score: 0

      SRV is used in, for instance, Rendezvous. I have all my servers in a text file, and a script advertises them over mDNS with WWW and SSH services. So I just click on my Terminal icon in the dock and there are "SSH to..." entries for all my web servers.

      And ditto in my web browser (OmniWeb, Safari), all the server web sites are automatically showing up in the bookmarks rendezvous menu.

    4. Re:DNS and service entries by smatthew · · Score: 1

      Microsoft Active Directory makes use of SRV records to let clients know where the domain controllers are. So a client can issue a DNS query for SRV records for ad.foobar.org and they'll find out the IP addresses of all the domain controllers for "ad.foobar.org"

      --
      slashdot username - at - email.domain.name
  24. Re:DCE and DTE in RS232 by Anonymous Coward · · Score: 1, Informative

    You can't do this in general because RS232 is not symetrical. All of those modem control pins - "ring indicator", for example - have one explicit direction.

    Of course we don't often use those pins any more, and the ones we do use (two data and two handshaking signals) are symetrical, so for that subset the proposal [one pinout, all cables cross over] is sensible. I think that there may even be another unused standard along those lines (RS4xx?).

  25. C++ by Grab · · Score: 2, Interesting

    The overloading of the bit-shift operators > for streams in C++. Kludge city! And C++'s templates don't exactly come out smelling of roses either.

    Grab.

    1. Re:C++ by leifw · · Score: 1

      Is there any implementation of templates or generics that you would hold up as satifyingly aromatic?

    2. Re:C++ by HeghmoH · · Score: 1

      If you don't restrict your answer to C-based languages, Lisp macros are pretty damned nifty. Why use a different language for compile-time code generation and run-time code execution when you can just use the same language for everything?

      --
      Mod down posts with a "Free Mac Mini/iPod" sig, they're spam!
  26. IMAP by Anonymous Coward · · Score: 2, Interesting

    IMAP should be a powerful idea in principle but it looks like it has been implemented by people who haven't had much experience with programming concurrent systems. I've learn about this the hard way while writing an IMAP server.

    Using IMAP it should be possible for several clients to connect to the same account simultaneously. Changes made by one are reflected in the others as they happen, since the server sends updates describing these changes. Think model-view-controller. (Some clients ignore these updates, but that's another problem.) This is great in theory, but I'll mention two ways in which it's broken.

    First, each client connection can receive updates for only one mailbox at a time. There is no fundamental reason why this has to be, but that's how IMAP works. So you can't be notified when new messages arrive in mailboxes other than the one you're viewing. Clients have to poll to work around this.

    Second, messages have message numbers and these change when a mailbox is expunged. But there is a race condition: if one client expunges and another fetches, the second may get the message as numbered before or after the expunge. There is no way to work around this apart from disabling expunge.

    The conclusion that I came to in the end was that for something as complex as what IMAP is trying to be it would be much better to build a standard on top of an abstraction layer like CORBA. CORBA provides an efficient binary over-the-wire protocol, rather than the ASCII of IMAP, and has been developed by people who really understand the concurrency issues inherent in the problem.

    1. Re:IMAP by Anonymous Coward · · Score: 0

      I agree with your opinion that IMAP sucks, but disagree about your conclusion. CORBA (like any other binary protocol) isn't that nice to work with itself. Like it or not, text-based protocols like SMTP, HTTP etc are a lot easier to hack - the result being a lot of developer mindshare, which brings with it a hell of a lot of benefits.

      Think about the difference between REST and SOAP. SOAP has all the XML-object-web-service buzzword appeal and handles a lot for you. But Amazon found that when they offered their services in REST and in SOAP, REST was overwhelmingly popular. Instant hackability counts for a lot.

    2. Re:IMAP by Anonymous Coward · · Score: 0
      First, each client connection can receive updates for only one mailbox at a time. There is no fundamental reason why this has to be, but that's how IMAP works. So you can't be notified when new messages arrive in mailboxes other than the one you're viewing. Clients have to poll to work around this.

      The RFC itself addresses the issue by requiring multiple TCP/IP connections to the server to select more than one mailbox. This isn't so impractical, because not many servers would be able to handle >60,000 IMAP sessions at once.

      Second, messages have message numbers and these change when a mailbox is expunged. But there is a race condition: if one client expunges and another fetches, the second may get the message as numbered before or after the expunge. There is no way to work around this apart from disabling expunge

      rfc3501 section 2.3.1.1:
      The unique identifier of a message MUST NOT change during the session, and SHOULD NOT change between sessions.

      Just manipulate messages by their unique identifier with the UID commands. You may even get an untagged EXPUNGE response to a UID command (section 5.5, 7.4.1).
    3. Re:IMAP by Anonymous Coward · · Score: 0

      Yes, you can have multiple connections for multiple mailboxes. I have about 800 mailboxes. So I need 800 times as many TCP sockets as I would do otherwise. Not great, and in practice all of the Linux clients that I've tested this on (thunderbird, evolution, sylpheed, balsa, [pine? not sure]) have a small pool of server connections (maybe 1, perhaps up to 5) and use them to poll the mailboxes that you have explicitly said that you want to check for new messages. If IMAP had been done properly this extra complexity wouldn't have been needed.

      Yes, IMAP has unique IDs as well as message numbers. If all of your clients always use UIDs for everything this problem is avoided. But as a server developer, how do I know whether my clients are looking at the message numbers or the UIDs? I don't, so to be safe I have to assume that they are using the message numbers.

      (Thinking about it, a client can't rely entirely on UIDs, since IIRC asynchronous status updates ["another client has marked message X as deleted"] do not include UIDs, only message numbers.)

    4. Re:IMAP by Anonymous Coward · · Score: 0

      It's true that text-based protocols are easier to hack around with. Telnet to port 25, for example. But once you reach a certain level of complexity the advance that that gives you is outweighed by the benefits of "doing it properly" with something like CORBA. You can perhaps compare it with the hackability of scripts and the compile-time error detection in compiled languages.

      What we need is a "sexy" protocol for something cutting-edge that's done using CORBA. As you note, _Mindshare_ is definitely what is needed. (Though, to be fair, the mindshare balance is a bit different outside the world of Slashdot readers.)

  27. EIDE by Deliveranc3 · · Score: 2, Interesting

    Reversable cables? Come on that is so unnessecary! And making them wide and flat come on!

    Plus the whole master/slave system is kinda fun.

    Basically it's the only thing a novice couldn't figure out on their own when doing an install :(

    1. Re:EIDE by 50000BTU_barbecue · · Score: 1

      Master / slave just means device 0 and device 1. I don't know why they chose those words, but they mean nothing, really.

      --
      Mostly random stuff.
    2. Re:EIDE by codemachine · · Score: 1

      True, but many novices can't get things to work b/c of bad jumper settings.

      I do think he's right that EIDE is normally biggest gotcha for the budding do-it-yourself PC hardware person. Either the cable is the wrong way, or the jumpers are wrong, yet it all appears to be plugged in just fine. Thankfully SATA will get rid of these problems.

      Those old AT power supplies with 2 different identically shaped plugs were also a brilliant way to screw up a system. ATX's single, non-reversable plug is much better.

    3. Re:EIDE by Ironsides · · Score: 1

      Master/Slave actually does have some meaning in IDE. The master device actually has priority over the slave device when it comes to sending/recieving data. The origin of Master/Slave comes from when one device controlled another (still used today, especially in broadcast) and they continued it into computers because essentially the Master can prevent the Slave from doing something if it needs to do something.

      --
      Fly me to the moon Let me sing among those stars Let me see what spring is like On jupiter and mars
  28. Very succinctly put. by Anonymous Coward · · Score: 0

    SMTP's lack of sender authentication is a modern-day fetish of the anti-spam crowd

    Actually, it's a modern-day fetish of parts of the anti-spam crowd.

    And what these fetishists fail to realize is that it won't do a thing to stop spam, as there's nothing it provides that isn't already being done without it.

    Accountability? Responsible ISPs already take action against their customers that spam. Irresponsible ISPs don't; what will authentication provide? Blacklisting? We already have that, via DNSBLs - which works quite well.

  29. Dont' forget DVD CSS and Y2K by scruffy · · Score: 2, Insightful
    CSS was supposed to copy protect DVDs, but didn't, both because of poor encryption and because it doesn't prevent a bit-for-bit copy.

    It was a de facto standard to use two digits to encode the year, which caused a lot of fun a few years ago.

    1. Re:Dont' forget DVD CSS and Y2K by yamla · · Score: 1

      CSS was never meant to prevent copying of the DVD, at least not from people who really understood it. It was meant to prevent unlicensed DVD players from playing back DVD content. Basically, it was meant to enforce licensing payments for any manufacturers of DVD players.

      It did that pretty well.

      It was marketed as copy-protection but in reality, it was always intended as playback prevention.

      --

      Oceania has always been at war with Eastasia.
  30. Sorry, you lose by Anonymous Coward · · Score: 0

    (How did this get modded up? slashdot utterly sucks now and is devoid of any content or insight. I laugh at the asshats that actually PAY for this tripe.)

    First, nothing you bitch about has anything to do with a standard. You will probably rebut with "It is a lack of standard that is the bug," and I counter that with "There are standards for each distribution, the bug is the vendor does not follow them."

    Second, you are wrong. To install a package on my distribution of choice, I download a package designed to install on my system, I click on the RPM, then click on install. Fin.

    What windows asshats fail to realize is that the ability to install software from any two-bit company with a 14 year-old writing installshield scripts or having a website automatically install software IS NOT A FEATURE. It is a bug and one that ends up with every Windows machine either being riddled with dozens of useless programs, malware infections and armsraces, and having to reinstall every year to "fix" it, or having a system so locked down so as to be unusable and still needing to reinstall every year to "fix" it.

  31. Java by rlp · · Score: 1

    No unsigned byte primitive. Grrrrrrr!! Also, the way Java handles date / time. Starting with mostly-deprecated util Date object, then abstract Calendar object AND GregorianCalendar object. Unless of course you're accessing a database, and then you need the SQL Date object, not to be confused with the util Date object. And don't forget the TimeZone, SimpleTimeZone, DateFormat, and SimpleDateFormat objects.

    --
    [Insert pithy quote here]
  32. IPsec by graf0z · · Score: 1
    The pristine IPsec protocol family lacked two key features: the ability to pass NAT and TLS/SSL-alike hybrid authentication. If these features would have been built into IPsec and its implementations ten years ago, network layer encryption would be far more used and crappy stuff like PPTP would never have raised its ugly head. (i know this does not hold the abstract's requirements for "shortcomings", but i think the internet would look different today without it)

    The NAT problem got resolved by UDP encapsulation ("NAT-T" = NAT traversal, after years of being a draft finally published 5 days ago as RFC) got implemented by most vpn software during the past two years (= too late).

    Hybrid auth means: peer A ("the server") authenticates itself to peer B ("the client") through asymmetric methods (like an RSA keypair and a X.509v3 cert). Peer B chooses a random symmetric session key and encrypts it for A, this sets up an encrypted tunnel. Inside this tunnel, B authenticates itself to A using simpler techniques like challenge-response or even clear passwords. Allmost all personalized TLS/SSL protected services (https, pop3s, imaps, ...) work this way: Servers has a cert, client has a password. Easy to admin, easy to deploy, easy to rollout.

    But with IPsec/IKE/ISAKMP you have to choose between shared secrets (bah!) or rolling out keypairs to all peers. And like all other protocols requiring all peers to be part of a PKI (PGP, S/MIME, SSL+certs on both sides) this slowed down propagation strongly.

    There is an IETF draft "A Hybrid Authentication Mode for IKE" which is adopted my more and more implementations right now (= far too late). Cisco is now pushing it because of the failure of their own "group password scheme" (of course they name it differently: "Mutual Group Authentication").

    Man, why did they wait so long?

    /graf0z.

  33. Album/Track information on CDs by JoeD · · Score: 2, Insightful

    With the space available on a CD, they should have allowed space for Artist / Album / Songname / etc on the disk itself.

    1. Re:Album/Track information on CDs by belg4mit · · Score: 2, Informative

      They do, CD Text is almost never used though.

      --
      Were that I say, pancakes?
  34. Session Initiation Protocol by Bookwyrm · · Score: 2, Interesting

    Beyond basing a standard for managing stateful telecommunications sessions on a protocol for stateless bulk data transport, the most blatant silliness in the SIP standard was the original "Alert-Info" header. The Alert-Info header allowed the calling party to specify the ring tone/sound by listing a URL that the receiving device would automatically attempt to fetch and play without waiting on the recipient user to allow/disallow it.

    Others:
    List of Evil SIP ideas

    Oh, and never updating the SIP version string despite syntax changes in the standard is evil.

  35. POSIX and Leap Seconds by Detritus · · Score: 1

    The standard insists on requiring broken behavior from new implementations to preserve compatibility with old software. Not a good idea when precision timing is becoming increasingly important.

    --
    Mea navis aericumbens anguillis abundat
    1. Re:POSIX and Leap Seconds by Anonymous Coward · · Score: 0

      It's not really broken; displaying local time is a PITA, which is all leap seconds are good for (in fact, factoring in leap seconds actually breaks many calculations). Otherwise, TAI is a much better time base.

  36. COPY AND PASTE! INCOMING MEME! by RMH101 · · Score: 1

    can we all copy and paste this? store it away. whenever we get the 12 year old "windose $uckors!" kid, paste it. repeatedly.

  37. One Tag by sharkey · · Score: 1



    'Nuff said.

    --

    --
    "Outlook not so good." That magic 8-ball knows everything! I'll ask about Exchange Server next.
    1. Re:One Tag by mopslik · · Score: 1

      Never fear! Now you can accomplish the same annoying effect using CSS.

  38. NFS by tedgyz · · Score: 3, Interesting

    NFS is inherently flawed in it's transaction acknowledgement and retry behavior.

    Back before M$ had Linux to kick around, there was the UNIX-Haters Handbook. I worked at Apollo/HP with a UNIX-Hater zealot. He enlightened me on the serious flaws in NFS, which I had experienced first-hand on a few occasions.

    A quote from the book: (page 287)
    So even though NFS builds its reputation on being a "stateless" file system, it's all a big lie. The server is filled with state--a whole disk worth. Every single process on the client has state. It's only the NFS protocol that is stateless. And every single gross hack that's become part of the NFS "standard" is an attempt to cover up that lie, gloss it over, and try to make it seem that it isn't so bad.

    --
    "No matter where you go, there you are." -- Buckaroo Banzai
    1. Re:NFS by Anonymous Coward · · Score: 0

      NFS was never meant to be perfect, just easy to implement. Compare all the complexity of the Andrew File System (AFS), which is a stateful distributed file system protocol, to the success of NFS and HTTP (which, I'll remind you, is also a stateless protocol--in fact, one of the major design principles of most Internet protocols is to avoid state as much as possible, because it's hard to do in an distributed environment correctly). NFSv4 will correct a lot of the existing limitations, but it's still a great success as is, especially for read-only volumes. It's the old Berkeley vs. MIT argument about crap winning.

  39. Networking in .Net / Mono by szyzyg · · Score: 2, Informative

    The Socket class is astonishingly broken
    IPAddresses are frequently imported/exported at Longs - 8 bytes with a sign bit
    Port numbers are 4 byte signed integers.

    Sure, Java doesn't have a signed int or long but .Net does.

    Now they introduced a way to get the IP address as an array of bytes, so that you can support IPv6, problem is the constructor that takes a byte array will only accept a 16 byte address, not a 4 byte one for us IPv4 users. On top of this they've deprecated the only other method that can get you an ip address in binary format.

    So if you want to serialize an IP address you have to either get it as a Long and cast it to an unsigned int - this generates all sorts of compiler warnings, so forget about clean compiles. Or you can get the address as a byte array and then on reception you have to turn it into an unsigned long.

    Oh yeah, there's no documentation on what the environment does about the endianess of IP addresses converted into longs.

    Now... we''ve also got the alarmingly bad Select() method which requires you to build lists of the sockets you're interested in and then proceeds to prune these to only leave the ones where activity has happened. Problem is that you can't reuse these lists so you need to construct them every time so you end up spending more CPU on building lists than you do on simply scanning the list of open sockets. Not that it matters, .Net throws and exception if you try to Select() on a list of more than about 30 sockets.

    Another retarded design decision is the implementatino of non-blocking IO and EAGAIN, they decided that this should be implemented as an exception. And we all know how fast exceptions are.

    Grrrrrrrrr

    I could go on and on.

    1. Re:Networking in .Net / Mono by ianezz · · Score: 1
      Now... we''ve also got the alarmingly bad Select() method

      Which is strange, because (by your description) it has exactly the same shortcomings of the old *NIX select(2) system call (that's why poll(2) is there). One would expect that people designing a library in the 21st century knew better than this.

  40. .doc by 4of12 · · Score: 1


    An unambiguous description of the One True Way to properly render .doc Always, Anywhere.

    --
    "Provided by the management for your protection."
  41. It's in the protocol by illuvata · · Score: 1

    source

    Data is sent in packets, rather than dumped in a stream manner. This allows the DCC SEND connection to survive where an FTP connection might fail. The size of the packets is up to the client, and may be set by the user. Smaller packets result in a higher probability of survival over bad links. The recipient should acknowledge each packet by transmitting the total number of bytes received as an unsigned, 4 byte integer in network byte order. The sender should not continue to transmit until the recipient has acknowledged all data already transmitted. Additionally, the sender should not close the connection until the last byte has been acknowledged by the recipient.

    1. Re:It's in the protocol by HeghmoH · · Score: 1

      The thing that's hilarious is that there's no mechanism for recovery or resend specified. So even if somehow TCP failed in its duties and the ACK actually conveyed useful information, how would the transfer recover? Extreme dain bramage if I ever saw it.

      --
      Mod down posts with a "Free Mac Mini/iPod" sig, they're spam!
    2. Re:It's in the protocol by Anonymous Coward · · Score: 0

      Has more to do with resuming a transfer. An FTP connection can be broken, but if you have your own packet sending scheme, presumably you could restart at some point other than the beginning. Of course, FTP has a much simpler way of doing this...

  42. Try being as fair as you want us to be. by SanityInAnarchy · · Score: 1

    Most of the time, it is actually as simple as Windows, or simpler. It's when you have problems that you need to talk to a zealot/guru, who will help you out with your individual problem, as opposed to a howto, which deals with every possible issue.

    Remember, too, that it's a good idea to have video drivers installed properly anyway, as most distros will encourage you to do, even when doing flat things like surfing Slashdot. Ever try Windows _before_ you download the nvidia drivers? My Linux will do higher resolutions a lot more readily with the generic VESA drivers than Windows will. And forget sound. Creative won't even give you a driver except on its original installation cd, whereas almost all soundblasters are supported out-of-the-box by Linux.

    For example:

    User: "How do I get Quake 3 to run in Linux?"
    Guru: "Linux is a kernel. What distro are you using?"
    User: (for the sake of argument) "Gentoo."
    Guru: "emerge quake3"
    User: "This looks like it will take awhile. Can I update my whole system, and then install quake3, without having to come back in between?"
    Guru: "emerge sync && emerge -uD world && emerge quake3"
    User: "It says I don't have my video drivers installed. How do I do that?"
    Guru: "emerge nvidia-kernel nvidia-glx nvidia-settings && opengl-update && nvidia-settings && echo nvidia >> /etc/modules.autoload.d/kernel-2.6"
    User: "That's a long line to type, can I cut and paste from this chat?"
    Guru: "Sure, hilight the line, then middle-click inside a commandline."
    User: "Ok, now what?"
    Guru: "You'll have to restart your X display. It'll probably work to do ctrl+alt+backspace."

    Now, try Windows. Assuming you can even get a Windows guru to help you. Linux communities are quite open these days; try irc.freenode.net#gentoo

    User: "How do I get Quake3 to run in Windows?"
    Guru: "Put the CD in the drive."
    User: "It says I don't have my video drivers installed. How do I do that?"
    Guru: "Go to nvidia.com and look around. You'll find them, eventually."
    User: "Ok, now what?"
    Guru: "You'll probably have to reboot the computer."
    User: "Whoops! It says it doesn't work with my version of Windows. How do I upgrade and then have it automatically install?"
    Guru: "You can't. You'll have to send a check to Microsoft for at least four, more likely ten or twenty times the cost of Quake 3."
    User: "Screw this! I want it for free!"
    Guru: "Try Linux."

    And let's remember -- if you got someone to install Linux for you, or you bought a computer with Linux pre-installed, it's a lot more fair of a comparison. There's still the fact of having to download and install it, as opposed to having it already on a CD, but "apt-get install" or "emerge" is still fine, especially because both have good graphical frontends. AFAIK, Windows doesn't have anything comparable to a package management system -- remember last time you installed some Windows thing that didn't come with an uninstaller?

    But you are right. To break the popularity of Windows, Linux will have to be significantly better, because Microsoft has billions of dollars to spend.

    --
    Don't thank God, thank a doctor!
    1. Re:Try being as fair as you want us to be. by Zorilla · · Score: 1

      Nice slant there. You assume the nvidia kernel module install works perfectly when in reality it's quite tricky (at least in my experience with Debian) and also assume that there is such a thing as an NVIDIA driver that doesn't work with a particular version of Windows (we're not talking about anything before 95). People don't just download the wrong version of the driver and say, "screw this" when it doesn't work.

      Both setups are probably of equal difficulty in reality, with the Linux install being a little bit more difficult because you have to manually copy the full version resources off of the Quake III CD.

      --

      It would be cool if it didn't suck.
  43. deprecated by w3c by Ramses0 · · Score: 3, Insightful
    This is by far the most egregious intentional hobbling of a standard by retarded people (the W3C). Ever since they deprecated the elements (and to a lesser extent: ) in a Markup Language, I have lost faith in their ability to properly evolve a standard.

    See the HTML 4.0 recommendation. I literally hit something when I first read this back in '97 (yes, I sometimes read standards documents and RFC's for fun :^). It's also referenced in the original ('97) release.

    The DIR element was designed to be used for creating multicolumn directory lists. The MENU element was designed to be used for single column menu lists. Both elements have the same structure as UL, just different rendering. In practice, a user agent will render a DIR or MENU list exactly as a UL list.

    We strongly recommend using UL instead of these elements.


    Remember that HTML is a markup language, and see above where the W3C intentionally took away contextual information from the document.

    Keep in mind this was *after* the release of CSS1 (Cascading Style Sheets, level 1 W3C Recommendation 17 Dec 1996 vs. HTML 4.0 Specification W3C Recommendation 18-Dec-1997)

    99% of websites on the planet have something you could consider a "menu", or "tabs" of some kind. Wouldn't it be nice if we had a particular tag for that, like "<menu>"? (we do ... or we did).

    Nowadays, lots of people are linking to other people (a <dir>ectory) of people with blogrolls, wouldn't it be nice to wrap those in a <dir> list and style them separately, without using arbitrary <ul class="blah"> tags? Or perhaps a list of files available for download (<dir>), or a list of (perhaps) emails in a web mailing client.

    Not that there's anything preventing use of ad-hoc class tags to achieve the same effect, but there is semantic information (especially in <menu>) that can be put to good use when standardized like this. Everybody complains about screen-readers, wrap / auto-skip anything in a menu tag. Make a special button that pops up (or reads) anything in a <menu>. Grr. The web could have been just a tiny bit better without that move by the W3C.

    --Robert
    1. Re: deprecated by w3c by Anonymous Coward · · Score: 0

      The W3C has pretty much given up on the idea of HTML as a markup language. In the future there will be only one tag: DIV.

  44. HTTP Header Comments by Crutcher · · Score: 1

    The HTTP protocol defines header comments, which are only valid on a few header fields. There are some increadible problems with them.

    1. Comments are recursive.
    2. Comments break the header continuation model used elsewhere for continued values.

    This means that HTTP headers must make semantic decisions about the header type they are working with in order to properly perform their lexical parsing. It might not seem like much, but it's a sublte stone bitch.

    --

    -- Crutcher --
    #include <disclaimer.h>
  45. W3C DOM by brunes69 · · Score: 1

    When you compare the standard W3C Dom to the one implimented by IE (and partially by Mozilla), you will find that the standard is sorely lacking.

    Properties such as offset(Left|Top|Height|Width) to discover the rendered position of an element are non-existant. The ability to capture context menu events is non-existant. And don't even get me started on the event model.

    People may hate how IE co-opted everything, but their DOM APIs are one thing MS got *right* - the IE DOM API is far more flexable and powerful than the W3C standard.

    1. Re:W3C DOM by elemental23 · · Score: 1

      The ability to capture context menu events is non-existant.

      And good thing, too.

      Context menus are part of my computer UI, not a part of your web site. Web sites should never be able to change client UI elements. This includes CSS styling of scrollbars (which is thankfully IE-only) and mouse pointers (which, unfortunately, isn't).

      Anything within the window area is yours. Anything outside of that, including controls that may appear to be inside the window (eg, scrollbars, cursors, menus, etc) is mine.

      --
      I like my women like my coffee... pale and bitter.
    2. Re:W3C DOM by brunes69 · · Score: 1

      Nonsense.

      HTML is not just the WWW anymore. I need to capture context menu events in web applications I work on *all the time*. Thankfully, both Mozilla and Safari implement IE's contextmenu event, so the apps can be cross-platform in this respect.

      Try thinking out of the box - there are a lot more applications that run on the browser nowadays than websites. The browser is now a platform. The W3C is not adapting to that reality quickly enough.

    3. Re:W3C DOM by elemental23 · · Score: 1

      In my experience, most web application developers could use a good course or two on usability and interface design. After that, you may not be so eager to interfere with the normal, expected behavior of your users' browsers.

      --
      I like my women like my coffee... pale and bitter.
    4. Re:W3C DOM by brunes69 · · Score: 1

      I totally disagree, and I think it is you who needs a course on interface design. . Because in a web application, the user is not using a browser. They are not surfing a web site. They are using an application. The platform the application is running on (the browser), is irrelevant.

      For example - I have a web application that presents a list view of items. Looks nearly exactly like a standard windows list view widget. Suppose I right-click on an item. What does the user expect here? Surely not a popup that says "Back", "Reload" etc - I right-clicked on the list item - the context is the list item. Therefore the context menu should reflect actions that can be performed on that item.

      There is a reason it is called the context menu - because it is supposed to be context sensitive. When the context is no longer web browsing, the developer should be able to provide a new menu.

  46. SQL by TheLink · · Score: 2, Interesting

    Plenty of stupid stuff in SQL.

    Why a different format for update and insert?

    update table set field1=value1,field2=value2 where rowid=x

    vs

    insert into table (field1,field2) values (value1,value2).

    --
    I don't know about "worst" but could the SQL standard be partly to blame for why porting data from one DB to another is hard in most cases...

    e.g. not covering stuff that most people find useful or even vital? And thus letting Oracle etc each define their own ways of doing things.

    --
  47. POSIX advisory file locking... by MrHim · · Score: 1

    int main()
    {
    int fd, fd2;
    struct flock fl;

    fd = open(TEST_FILE, O_RDONLY);

    if (fd < 0)
    perror("open failed");

    bzero(&fl, sizeof(fl));

    fl.l_type = F_RDLCK;
    fl.l_whence = SEEK_SET;
    fl.l_len = 1;

    if (fcntl(fd, F_SETLK, &fl) < 0)
    perror("lock failed");

    /* fd is now locked, whoohoo!!! */

    fd2 = open(TEST_FILE, O_WRONLY);

    if (fd2 < 0)
    perror("open failed");

    /* fd is now @^%$#ing unlocked!!!! For the love of God, why!?!?!? */

    return EXIT_FAILURE;
    }

  48. Why are Slashdot readers such XML bigots? by Creosote · · Score: 2, Insightful
    Slashdot moderation is usually fair except when the topic is XML, in which case outrageous, trollish, and uninformed comments that would be shot down in any other topic area are judged "interesting" or "informative".

    Yes, XML has been overhyped. Yes, it is used in many places where it's not appropriate. But it's completely unfair to tar an entire language and suite of associated technologies because of the way it's abused. Is Flash an inferior product because there are idiots who put loud, bloated Flash intros on their websites when a nice compact CSS-based splash page would do?

    A lot of people (notably on Slashdot) have the notion that when it comes to data XML is verbose and redundant with existing data formats and programming languages, and that when it comes to text XML is overkill because good ol' ASCII is all you need. Well, if the only things in the world that ever needed archiving, searching, and retrieval were highly structured data and Usenet news posts those would be defensible opinions. But those aren't the only things in the world. There is a huge, huge amount of content that consists of heterogenous mixtures of strictly typed data, free-form data, and text in various languages (including the languages of mathematics, of music, of graphics...). As of 2005, there's no better format with which to store it and process it than XML.

    Do a Google search on /'digital library' XML/ or try /XML site:loc.gov/ for example. And if you ever talk to anyone who's done serious programming for the kind of projects you'll find mentioned there, you'll discover they have skills that incommensurate with those of the people who put "XML" on their resume because they once used xsltproc to generate simple HTML output from a simple XSLT stylesheet. And believe it or not, some hiring officials are able to tell the difference. (Speaking as one who spent a good chunk of the last couple months looking at code samples submitted by applicants for one of those positions.)

    Sorry, but I've had it with knee-jerk XML bashing.

    1. Re:Why are Slashdot readers such XML bigots? by Anonymous Coward · · Score: 0

      XML is a well-defined *text file format*. It's not a *data storage model*. And as a text file format, it's not easy to read or write, in many of the domains it's used in. For instance XML config files are a pain in the ass, though XML versions of prose documents (like DocBook) are useful.

      Some people are proposing XML data models that have nothing to do with text files at all! Eh? They are just repeats of hierarchical databases which were tried in the 60s and rejected. Here we go again I guess.

      But those aren't the only things in the world. There is a huge, huge amount of content that consists of heterogenous mixtures of strictly typed data, free-form data, and text in various languages (including the languages of mathematics, of music, of graphics...). As of 2005, there's no better format with which to store it and process it than XML.

      This has absolutely nothing to do with XML. You can represent that data in all kinds of ways. Do you honestly believe that *graphics* should always be stored in XML?

      What exactly leads you to the conclusion that "there's no better format" than XML as of 2005? That makes no sense. I happen to think that raw bytes are good for storing PNG's for instance. I also think a binary format is best for music notation. When the markup for *1 note* is a page long, I start to laugh and/or cry.

      XML is no magic bullet. It's still going to be hard to deal with data in 2005, 2015, and year 5000. Have you ever downloaded an XML document that claims it is UTF-8 but has Windows cp1251 (or whatever it is) characters in it? What do you do? How about XML with an included schema, but it doesn't validate against that schema? Blah blah.. XML is just another arbitrary format.

    2. Re:Why are Slashdot readers such XML bigots? by Anonymous Coward · · Score: 0

      This has absolutely nothing to do with XML. You can represent that data in all kinds of ways. Do you honestly believe that *graphics* should always be stored in XML?

      You missed his point. His point was that many documents mix different types of structured data. If you invent a new syntax for each type of structured data, it becomes more difficult to mix the two in the same document.

      With XML, you can have freeform text, mathematical notation and vector graphics in the same document, with a highly regular syntax.

      XML is no magic bullet.

      Straw man.

      It's still going to be hard to deal with data in 2005, 2015, and year 5000.

      Straw man.

      Have you ever downloaded an XML document that claims it is UTF-8 but has Windows cp1251 (or whatever it is) characters in it? What do you do?

      What do you mean? Virtually no programmers deal with the actual file format themselves. They let the parser deal with it. That's the whole point!

      XML is just another arbitrary format.

      An arbitrary format that happens to represent a whole lot of structured data reasonably well, that happens to have a lot of developer mindshare, and a hell of a lot of software and libraries that can deal with it.

      you can invent a new markup scheme that is identical, but uses square brackets instead of angle brackets, and it will be far less useful than XML, despite being functionally equivalent in every aspect. It isn't just a matter of programming. It's a matter of software engineering.

    3. Re:Why are Slashdot readers such XML bigots? by Anonymous Coward · · Score: 0

      "Is Flash an inferior product because there are idiots who put loud, bloated Flash intros on their websites when a nice compact CSS-based splash page would do?"

      Flash has the redeeming value in that I've actually seen good uses of Flash. CSS, too.

      JavaScript...not really. XML...not really.

    4. Re:Why are Slashdot readers such XML bigots? by Anonymous Coward · · Score: 0

      " XML is no magic bullet.

      Straw man.

      It's still going to be hard to deal with data in 2005, 2015, and year 5000.

      Straw man."

      What? Just saying "straw man" doesn't invalidate the fact that XML is NOT a silver bullet and that handling data is a PITA! Your reduction to absurdity doesn't follow, man!

    5. Re:Why are Slashdot readers such XML bigots? by Anonymous Coward · · Score: 0

      Just saying "straw man" doesn't invalidate the fact that XML is NOT a silver bullet and that handling data is a PITA!

      Do you know what a straw man argument even is?

      He never argued that XML was a silver bullet. He never argued that dealing with data was going to be easy in 2005+.

      Arguing that XML isn't a silver bullet and that dealing with data is always going to be a pain is completely irrelevent to his argument, because everybody agrees.

      When you argue such things, you are simply constructing a straw-man argument, and knocking it down. You aren't addressing his argument whatsoever.

    6. Re:Why are Slashdot readers such XML bigots? by Anonymous Coward · · Score: 0

      He never argued that XML was a silver bullet. He never argued that dealing with data was going to be easy in 2005+.

      XML not being a silver bullet is SIMPLY TRUE. Data being difficult to deal with is SIMPLY TRUE. Straw men do not enter this picture, at all.

    7. Re:Why are Slashdot readers such XML bigots? by Anonymous Coward · · Score: 0

      Oh I see, you are an idiot who just wanted to disagree with somebody rather than a person with an actual point.

      Did your parents give you permission to go on the Internet without them?

  49. I nominate the ISO comittee process by Anonymous Coward · · Score: 0


    One rather large ISO standard I worked with missed the mark so completely due to rediculous complexity due to political infighting among countries who don't share a common interest at all in what to accomplish left me bewildered as to why the standard is still under development.

    The standard was supposed to be vendor independent, but even after ten+ years of development no one could come close to implementing its thousands of pages of atrocity. My lesson learned is that some problem domains are best served by proprietary software. I hate to say this on Slashdot, but it is true. Only a profit motive can lead people to tackle some of the problems out there.

  50. SQL !!! by Anonymous Coward · · Score: 2, Interesting

    Many years ago Edgar Codd presented up a complete model for storing data: the relational model. It was complete and sound, which no other data model is. It is based on predicate logic (to give meaning to the data) and set theory. You can store any kind of data in a relational database.

    To implement the relational model you just have to implement a number of set operators and relational operators (project, join, etc), and you have to enforce arbitrary constraints on the data.

    Much like arithmetic (add, subtract, multiply), all you have to do is implement these concepts in a computer and you'd have a system that works very much like the model describes.

    Yet, somehow, the standard that emerged, SQL, seems to be from an alien planet, bearing only fleeting similarity to the relational model.

    Example: If you're working with *sets*, you should use set notation. Not "SELECT * FROM Customer", but just "Customer". Not "SELECT * FROM Customer JOIN CustomerDetails ON Customer.id = CustomerDetails.id" but "Customer JOIN CustomerDetails".

    Example: SQL doesn't enforce the idea that relations are sets. So it allows columns with the same name, it allows positional specification of columns (ORDER BY 2 is allowed, but not the same as ORDER BY 1+1 by the way), it allows *duplicate rows*!! Argh. The relational model requires all rows to have a candidate key.

    Example: SQL doesn't allow you to compare query results. You can't say "give me a list of customers who purchased every book by author X" without bending over backwards. In a relational expression, you can just say, roughly, "Customers WHERE (Customer JOIN Purchases) = (Books WHERE Author = 'Joe')".. notice that the first "=" is comparing two SETS.

    Example: SQL has NULLs. Anybody who has worked with an SQL database knows exactly what a pain NULLs are. Quick, why does COUNT(*) count NULLs but SUM(*) doesn't? I don't know either. Certainly has nothing to do with the relational model. And to add insult to injury, SQL makes NULLable columns the default.

    Example: SQL differentiates between views and tables. You can't usually update a view. However the relational model says, you should be able to interchange views and tables completely. This means the most powerful abstraction feature of the relational model is completely missing! It's like programming in a language without subroutines or functions. (Yes some DBs allow a limited subset of updateable views, and some allow you to specify your own SQL triggers to update them, but that's not exactly the same as having the DB *infer* the constraints and rules itself for any view).

    Example: SQL doesn't allow arbitrary relational expressions. In fact there is a special name for nested expressions in SQL: "subselects" or "subqueries". As if this is something special. How often to do you use parenthesis in your math statements "2 * (a+4)". If math was SQL, that would be "OPERATE ON (OPERATE ON a WITH 4 USING ADD) WITH 2 USING MULTIPLY" or some nonsense.

    Example: SQL makes it difficult to create new types. So objects have to be "decomposed" into columns, and we have to have junk like "ORM layers" whose purpose is to splatter and unsplatter objects over and over again, instead of just being able to say "Customers" and getting a list of objects directly.

    The list goes ON AND ON. When people talk about the limitations of the relational model, they are talking about the limitations of SQL!

    So, yeah, SQL is the big suck. I don't know why other parts of programming have so much innovation (how many programming languages are there? Programming paradigms?), but SQL is stuck in this bizarro backwards world.

    Please, if any open source programmers out there want to make something really useful, please create a truly relational database system! Just pick up any DB textbook and implement what you read, it's all there waiting for somebody to *do* it!!! I know it will happen someday....

    1. Re:SQL !!! by justinb1 · · Score: 1
      Example: SQL differentiates between views and tables. You can't usually update a view. However the relational model says, you should be able to interchange views and tables completely. This means the most powerful abstraction feature of the relational model is completely missing! It's like programming in a language without subroutines or functions. (Yes some DBs allow a limited subset of updateable views, and some allow you to specify your own SQL triggers to update them, but that's not exactly the same as having the DB *infer* the constraints and rules itself for any view).
      CREATE VIEW vw_CantUpdateMe
      as

      SELECT CustomerID, SUM(TransactionCharge) as TransactionTotal
      FROM CustomerTransactions
      GROUP BY CustomerID

      go

      UPDATE vw_CantUpdateMe
      SET TransactionTotal = 496.95
      WHERE CustomerID = 12
      What exactly should happen in the mythically perfect updatable views universe?
    2. Re:SQL !!! by Anonymous Coward · · Score: 0

      NULLs may cause a few problems. But managers that create the rule "no nulls" cause many more. NULLs where invented for a reason.

      The "correct way" to avoid having NULLs gives you a million tables instead of 25, and joins that won't complete in this century. Result: Those rules force people to invent their own NULL values, which have to be checked everywhere.

  51. XML design flaws: by Frans+Faase · · Score: 1
    Apart from the lexical syntax being used XML, which is not very easy to parse at all, it has several design flaws, such as there are:
    • No explicit distinction between different kind of values, e.g. booleans, numbers and strings.
    • No explicit distinction between sets and lists.
    • No explicit distinction between identifying and non-identifying properties.
    • No explicit mechanism for defining internal references.
    • Does not allows complete typing of the values, instead of through an external defined schema.
    1. Re:XML design flaws: by Anonymous Coward · · Score: 0

      Apart from the lexical syntax being used XML, which is not very easy to parse at all

      It's easier to parse than virtually anything else whatsoever. Why? Because 99% of programmers don't parse it. They use a pre-existing XML parser.

      No explicit distinction between different kind of values, e.g. booleans, numbers and strings.

      XML Schema and NG have already solved this.

      No explicit distinction between sets and lists.

      Why is this a problem?

      No explicit distinction between identifying and non-identifying properties.

      ID does this.

      No explicit mechanism for defining internal references.

      IDREF and IDREFS does this.

      Does not allows complete typing of the values, instead of through an external defined schema.

      I can't parse that sentence, but isn't this the same as your first complaint?

    2. Re:XML design flaws: by Anonymous Coward · · Score: 0

      Are you one of those morons that want Lisp structures to be used for hetrogenus data exchange?

    3. Re:XML design flaws: by Frans+Faase · · Score: 1
      No. Although I have to admit that the syntax of LISP is much easier to parse than XML and that it is basically the same. LISP is also a little more compact than XML.

      But using LISP instead of XML syntax would not solve any of the mentioned problems.

    4. Re:XML design flaws: by Frans+Faase · · Score: 1
      It's easier to parse than virtually anything else whatsoever. Why? Because 99% of programmers don't parse it. They use a pre-existing XML parser.

      Yes, that is true. But those parser are complex, and each increasement in complexity also has an impact on parsing speed.

      XML Schema and NG have already solved this.

      The fact is that XML Schema is hardly used by any one. It could have been in the XML standard, but because XML comes from a domain where people work with textual documents, nobody thought about the fact that you might want to have a proper representation for other datatypes, such as integers, times, dates. With little effort it could have been put in XML. Please remember that this topic is about design flaws. Things that could have been done correctly in the first place, but where not done properly.

      Why is this a problem?

      There is an essential difference between sets and lists. One implies an ordering, the other not. XML is claiming to be a self explainatory representation of data. Because XML does not make this distinction, it is a flaw.

      ID does this

      There can be more than one identifying property. Another flaw of XML is that it does that you often have the choice between representing data as contents or as attributes. There is a logical distinction between contents and attributes, but the problem is that the kind of values that you can represent in attributes are rather limited. This means that you have to revert to using additional tags for representing "complex" attributes. BTW, I never knew that the ID attribute had some special meaning. And I can also not know of any XML parser that do anything special with this.

      IDREF and IDREFS does this.

      Again this is not commonly used. And again it is a after the fact fix of a design flaw. It is almost always a design flaw when certain "names" are given a special meaning and semantic.

    5. Re:XML design flaws: by davegaramond · · Score: 1

      It's easier to parse than virtually anything else whatsoever. Why? Because 99% of programmers don't parse it. They use a pre-existing XML parser.

      Well, if we don't care so much having to write our own parser, why not choose a nicer, easier-to-type format instead?

      When I think about it, XML scores pretty badly ("C or D student") as a data storage (or one would argue, also as markup) format.

      * EASY TO PARSE: not really

      * COMPACT: no

      * EASY TO TYPE: no (too much to type and all those angle brackets...)

      * EASY TO READ: not the easiest for the eye

      * FEATURE-RICH: no (no builtin datatypes, no syntax for intradocument references, no macro, no directives/flags, etc.)

      No wonder people hate XML so much...

    6. Re:XML design flaws: by Anonymous Coward · · Score: 0

      But those parser are complex

      More complex than a parser for any other syntax for representing hierarchical information?

      The fact is that XML Schema is hardly used by any one. [plus similar arguments for the rest.]

      If hardly anybody uses them, then wouldn't that suggest hardly anybody needs them?

      Please remember that this topic is about design flaws.

      Please remember that this thread is about how XML is totally unsuitable for anything and fundamentally broken - or otherwise :). I'm perfectly happy to admit that XML isn't perfect and has flaws. But I'm not willing to admit that it has flaws that prevent it from being the best tool for the job in many, many situations.

      There is an essential difference between sets and lists. One implies an ordering, the other not.

      XML preserves the order in either case. If the order is unimportant, you simply don't pay attention to it. That's why I asked why it was a problem, not because I didn't know the difference.

      XML is claiming to be a self explainatory representation of data.

      I've seen various "pundits" make this claim. I haven't seen anybody even remotely related to the technology make this claim. It's usually easily hackable if you are familiar with the problem domain and the native language of the person who decided upon the element type names.

      There can be more than one identifying property.

      Please try and stick to standard terminology, it makes things much clearer. IDs must be unique in a document, and element types can only have one attribute with an ID type. What do you mean by "property"?

      Another flaw of XML is that it does that you often have the choice between representing data as contents or as attributes.

      I see that as flexibility.

      There is a logical distinction between contents and attributes, but the problem is that the kind of values that you can represent in attributes are rather limited. This means that you have to revert to using additional tags for representing "complex" attributes.

      I agree, it's a shortcoming, but in practice I have found that it's very rarely an issue, even when you count code aesthetics or "design purity" as issues.

      BTW, I never knew that the ID attribute had some special meaning.

      It doesn't. Attributes defined as having ID values have the special meaning, and it only comes into play when a validating parser is used or the application has document type-specific knowledge coded in.

      It is almost always a design flaw when certain "names" are given a special meaning and semantic.

      You are basing this criticism on a misunderstanding, as I explained, there is no special significance attached to attributes called ID.

  52. SNMP V2 by Muad'Dave · · Score: 1

    My goodness, what a mess! 'Nuff said.

    --
    Tiller's Rule: Never use a word in written form that you've only heard and never read. You will end up looking foolish.
  53. You don't go far enough by Anonymous Coward · · Score: 0

    Local time? Leap years? Leap seconds? Variable days in the month?

    Our whole damn calendar and time system needs an overhaul.

  54. Perl's 2/3 digit year by fuzzy12345 · · Score: 1

    Remember that Perl bit that returned the number of years since 1900? Back when everyone used Perl for Internet stuff, they could count on that being a two digit number. Seeing stuff on the net dated 1/12/105 - that slays me!

    --

    Everybody's a libertarian 'till their neighbour's becomes a crack house.
    1. Re:Perl's 2/3 digit year by danpritts · · Score: 1

      it's not perl - it's the C library.

      man 3 localtime

  55. MIME & Quoted Printable by Frodo420024 · · Score: 1
    At least that's the only time I've heard Linus suggest to go out shoot anyone :)

    Linus in Flame Mode

    --
    I'm in a Unix state of mind.
  56. TIME_WAIT in TCP by Harry+Balls · · Score: 1
    One cannot, while remaining TCP standard compliant, continue to initiate (with SYN) and terminate (with FIN) tens of thousands of [short] TCP connections to the same destination without either:
    1. slowing down to a crawl because all available ephemeral source ports are already in TIME_WAIT state (and thus not available for the new connection)
    or
    2. "reaping" such source ports that are in TIME_WAIT state prematurely, thereby violating the TIME_WAIT mandate of the TCP standard.

    With faster and faster network cards (think 10 Gigabit) now readily available, this issue is getting worse and worse.

    Most manufacturers choose to workaround number 2, by the way, undoubtedly in order not to jeopardize benchmarks.

    Having 32 bit port numbers in TCP would alleviate this problem somewhat, at the expense of memory (all these 4-tuples in TIME_WAIT state obviously occupy memory). But this argument is moot, since port numbers are just 16 bits.

    (Why would you want to continuously open short connections to the same host over and over again? Think two back-to-back application level firewalls. Think eCommerce credit card authorization. There are many situations where this may be necessary.)

    1. Re:TIME_WAIT in TCP by Anonymous Coward · · Score: 0

      Applications that implement such connection flapping are broken. There are better ways of maintaining a persistent connection while negotiating multiple sessions within a connection.

      If you really want ~32 bit port numbers, just open up as N ports on the server to generate N*64511 possible connections between the two machines. As N approaches 65K, you will approach 2^32 possible distinct connections. Of course, that's a stupid idea, but it's no stupider than setting up and tearing down thousands of TCP/IP sessions a second in the first place.

  57. HTML.... well, sort of by jeffkjo1 · · Score: 1

    Just curious what the Slashdot crowd thinks are the worst bugs ever to creep into a standard?

    Having survived the great Revision '4.0' Browser wars, I have to say the worst 'bugs' ever were the proprietary extensions that crepts into Netscape and IE. It made it so difficult to design any sort of advanced page without all sorts of duplicate (albeight slightly different) code to satisfy both browsers.

  58. VLANs by macdaddy · · Score: 1

    No authentication or encryption in the 802.1Q standard. Ya'll can think Cisco for this fuckup. There were a number of pre-standard VLAN-like implementations back in the day. Most had authentication and encryption between 802.1Q switches and routers. Cisco's didn't however. It didn't have jack. However they put their pre-standard implementation on every single device they made and by default embraced a ground up approach to the use of VLANs, their VLANs. Unfortunately Cisco's implementation became so wide-spread that the IEEE 802.1Q working group ratifying any other VLAN implementation other than one compatible with Cisco's would lead to the creation of a standard that the majority of the market would ignore. The majority ran Cisco hardware and did anything Cisco told them. That's what I call a monopoly (or was a monopoly). Not all the competing standards died right away. Enterasys' (Cabletron's) pre-standard implementation called SecureFast thrived for years due to its widespread use within its userbase. It had so many features that netadms needed quite badly that they were willing to go with a homogenous Enterasys environment to get it. Cisco screwed the pooch and we netadms have been stuck paying the price since, what, December 2000 IIRC? Thanks Cisco.

    1. Re:VLANs by Anonymous Coward · · Score: 0

      You should complain about the same things for ethernet, since VLANs are simply virtual ethernet connections.

      Want security? Run IP-SEC or similar on top of your ethernet/VLAN.

      No "on this interface we need IP-SEC, but on that interface we don't, because it's already authenticated by the hardware" please.

    2. Re:VLANs by Anonymous Coward · · Score: 0

      i think i've just witnessed a stupidity recursion.

  59. That's more the lack of a standard by pjc50 · · Score: 1

    There is no standard (as in, made by a standards group) way of installing software either on Linux or Windows. In the case of Windows, you have the de facto standard of InstallShield.

    And on modern linux distros it can almost be as simple as on Windows, provided the software is shipped as an RPM. Open CD, doubleclick the package, enter root password, done.

  60. YAML vs XML (Re:XML. For existing at all.) by davegaramond · · Score: 1

    If you are typing it from scratch, you'll want a quick way to check the syntax. AKA validation.

    YAML parser will validate your YAML documents, much like an XML parser validate XML documents. And additionally you can quickly check the syntax with your _eyes_, since YAML uses indentation.

    YAML also has builtin datatypes, so when you load it, you will automatically get a data structure of strings, numbers, symbols, etc. instead of just strings for all values. And thus you save time by not having to cast datatypes.

    Basically, I've ditched XML and used YAML for all my config files and I've never been happier.

  61. FTP, Telnet, HTTP by Ancient_Hacker · · Score: 1
    FTP:
    • Passwords in the clear!
    • No standard file listing format, so you have to be a human or very clever code to extract the file names.
    • Requests that get out of sync with replies.
    • Using separate connections for cmds and data, and random ones at that.
    • No directory transfer cmd.
    Telnet:
    • The wonderfully flexible and broken option negotiations, which took several RFC's to describe the various race conditions therein, and the recommended kludges for avoiding or exiting same.
    • The various bizarre modes to support totally obsolete comm protocols.
    • The lack of recognition by the RFC's of ANSI or VT-100 formatting, both de-facto standards.
    HTTP:
    • The bizarre decision to have the client speak first, as if the client wouldnt want to know what the server is capable of.
    • The bizarre and perhaps unwritten rules about what to do with missing HTTP/version info.
    • The AFAIK unwritten rules about what to do with partial push data.
    • Not HTTP, but the whole JavaScript mess. Undeclared variables, a good thing?
    1. Re: FTP, Telnet, HTTP by Ironsides · · Score: 1

      FTP: Thats why they invented SSH

      --
      Fly me to the moon Let me sing among those stars Let me see what spring is like On jupiter and mars
  62. USB by FrankSchwab · · Score: 1

    I can't believe no one's mentioned this, even after the RS-232 thread above...

    After 40 years of screwing around with RS-232 (different combinations of Male, Female, 9, 25, DTR, DSR), a committee has a chance to define a new computer-to-peripheral interface...

    And they design one with two different connectors ( A and B), with male and female ends, and with a master-slave physical and logical architecture. And, the connectors do not work if you try to plug them in upside down.

    So, I have to have (again!) an entire zoo of USB cables and adapters to connect things. I own: 0. Standard A-B cables
    1. An A-A USB cable for connecting my Archos MP3 player
    2. An A(Female) to A(Male) extension cable
    3. An A to mini-B cable to connect my Camera
    About the only thing I don't have is a B-B cable.

    Would it have been so hard to create a hermaphroditic, small connector that autonegotiated master/slave at connection time? That connected no matter what orientation the connector was in (think headphone jack)?

    --
    And the worms ate into his brain.
    1. Re:USB by danpritts · · Score: 1

      while we're picking on USB let's remember my two favorites.

      1) the connectors don't have a positive lock mechanism

      2) A connectors are just as wide as RJ-45 connectors and you can, in fact, plug one in to an ethernet jack. and it seems right since there is no positive lock. but strangely enough it doesn't work.

    2. Re:USB by Ironsides · · Score: 1

      1) There is actually 4 different connectors for USB (A,B, mini, micro). Each with M/F ends. Not sure why they have both A and B, but the reason for mini and micro is for really small devices that can't fit a larger (A/B) port on (mp3 players) and they aren't for permanent connections like the larger ones are used for (printers). As for the hermaphroditic connector like a headphone jack? Thats cause the headphone plug is the only design (round cylinder) that that works for. And past 4 pins, you really need a different plug for it to work efficiently and in a small space. Also, I personally find the headphone jaks realtively easy to break compared to others. Finally, the reason for not having them reversable is that that would be a pain from the point of determining which side was for sending data and recieving. Lets remember that USB was invented before 1997 and computers were a lot less powerful.

      Will admot that a better design like the Fire Wire "notch" would have been better, thugh.

      --
      Fly me to the moon Let me sing among those stars Let me see what spring is like On jupiter and mars
    3. Re:USB by Anonymous Coward · · Score: 0
      Finally, the reason for not having them reversable is that that would be a pain from the point of determining which side was for sending data and recieving.

      Yes, because we all know that electrons can flow through a cable in only one direction.

  63. Thanks all for an excellent discussion by ar · · Score: 1
  64. Base 10! by Anonymous Coward · · Score: 0

    Base 10 sucks as a standard for our numbering system.

    Base 12 is far superior, being evenly divisible into thirds, quarters, and sixths.

  65. 802.11 self-interference by TheClassic · · Score: 1

    Wi-fi traffic jam http://ask.slashdot.org/article.pl?sid=05/01/11/15 7239&tid=193&tid=222&tid=4

  66. MPG2 by Ironsides · · Score: 1

    MPEG-2 and Dolby are both proprietary. VC-1 is nothing new when it comes to proprietary codecs becoming a standard.

    P.S. MPEG-2 is used as the encoding format for the current DVD video.

    --
    Fly me to the moon Let me sing among those stars Let me see what spring is like On jupiter and mars
    1. Re:MPG2 by Anonymous Coward · · Score: 0

      Actually, MPEG-2 isn't proprietary, although it isn't free. MPEG-2 is published in an open standard developed by the international MPEG standards group. However, to use it/get the standard you have to plunk down some change.

      Dolby Digital (AC-3) is proprietary in the sense that is a format created by Dolby Labs, a private company with complete control over the future direction of the standard.

  67. Amen by angedinoir · · Score: 1

    I know you're not supposed to post this, but a-fuckin-men. This voices the reason why I gave up linux and went back to windows.

  68. PNG not supporting animation by fyngyrz · · Score: 1
    One of the key ideas behind PNG was to replace GIF. But the PNG developers blew it by not specifying in the same kind of animation capabilities that Netscape's mutated GIF -- which was really the standard -- offered. It didn't kill PNG, but it sure as heck crippled acceptance severely. And that was a darned shame. Opportunity lost on several levels.

    And the mega-uber-bandaid MNG -- you don't want to get me started on what a mess that whole screwup was and is.

    --
    I've fallen off your lawn, and I can't get up.