• Tobias Brox (unregistered) in reply to Omnifarious
    Omnifarious:
    Not trying to start the flamewar again, but I use Linux almost exclusively (except for my Powerbook) and I haven't owned a TV in over 10 years, so I wouldn't use it for scheduling TV shows either.  :-)


    Same goes for me :-)

    Schema is a bit weird, particularly having that string describing who the event is for is weird, but what really made my "wtf"-circuits blink red is the statement that ... "sql queries built at client side by javascript".  Never trust the client.  Well, probably it works out in a in-house, small-office environment.

    I was once making an app where the client actually _could_ send arbritrary SQL to the database - but then again, there were no business logics in that app, only a database, every app-user was also registered as a database user, so I actually had the database control the ACL.

    Another thing that really bugs me is - presenting a database schema as an image?  wtf?  Particularly, at the beginning of my current project, there were some tables that were imported more or less directly from the precursor application we are replacing.  We had a skilled windows sysadmin running the old system, and my boss called him up to get the tables from the old application - and I got them - as image files in a mail file.  I mean - WTF?  That's just plain evil, isn't it?  Does MS-SQL take backups in the same format?

  • (cs)

    I think that the wtf here is that they were able to mess up the database that has a perfectly normal table design with wrong data...

     

  • (cs) in reply to Chris F
    Chris F:
    Yeah!  Who needs symbolic links anyway!

    Oddly enough, NTFS actually DOES have symbolic links, but for some reason MS doesn't ship the app to create them. You can get one from sysinternals tho.

    Not sure why MS included the functionality but excluded the tools, but it isn't the first time MS has done that.

  • (cs) in reply to triso
    triso:
    Manni:

    ...Wow, I thought I was wasting my time by counting sand, but clearly you have a better use for those long hours.

    I hope you're counting grain by grain and not counting spoonfuls * number of grains in a spoonful.  That would be cheating.

    Total mass of pile/average mass of sand grain

    Now, I'll grant you that you have to recalibrate with elevation, but its surprisingly reliable!

  • (cs) in reply to Xepol

    Wow does this forum software ever hate me. Maybe its just IE 7...

  • (cs) in reply to Xepol
    Xepol:
    Wow does this forum software ever hate me. Maybe its just IE 7...


    There is not IE7 yet. Whachoo talking boot? The Javascript "IE7" CSS enhancement?
  • (cs) in reply to dhromed

    Also, Hungarian notation on column names is just... weird.

  • (cs) in reply to James Schend

    ... well, if you do need them, you'll be happy to know that NTFS has them.  (Well, they're called "junctions," but it's the same idea; NTFS also supports hard links.

    It also supports substituted drives, another way of organising data.

    Most systems don't actually have the junction program on them, but you can get one that does the same thing from www.sysinternals.com.

  • emilv (unregistered) in reply to dhromed
    dhromed:
    Xepol:
    Wow does this forum software ever hate me. Maybe its just IE 7...


    There is not IE7 yet. Whachoo talking boot? The Javascript "IE7" CSS enhancement?


    Yes, there is. It's in beta.


    Beek:
    Anonymous:
    This has already been posted (November 2004). Use the search function :)


    Jake is actually CmdrTaco????????


    LOL
  • poster (unregistered) in reply to dhromed
    dhromed:
    Xepol:
    Wow does this forum software ever hate me. Maybe its just IE 7...


    There is not IE7 yet. Whachoo talking boot? The Javascript "IE7" CSS enhancement?


    Which cave are you living in?
  • Welcome To The Machine (unregistered) in reply to Jehos
    Jehos:

    Ross Day:
    DZ-Jay:

    "What is this Normal Form you speak of?"


    Normal Form is what the rest of the world is...and we computer geeks are not.

    If you don't believe me, ask any female.**




    ** Obligatory anti-"I have a GF" and anti-"I am married" disclaimer...the above is what is known as a "joke"...it is intended to be humorous, and it utilizes what is called "sarcasm".

    Heh, I have a wife *and* a girlfriend.  Probably because I don't use Linux.

    My wife has a girlfriend, and neither of them use Linux. A trend methinks.

  • (cs) in reply to Manni
    Manni:

    Anonymous:
    This has already been posted (November 2004). Use the search function :)

    Do you really spend your time searching through the WTF archive to see if it's been reposted? Wow, I thought I was wasting my time by counting sand, but clearly you have a better use for those long hours.

    Maybe he first remembered that WTF posting, and then he used the search function...
  • (cs) in reply to Gary
    Anonymous:
    DZ-Jay:

    "What is this Normal Form you speak of?"


    Normal form is fixing the database schema to be how you should have designed it in the first place.


    "What is this irony you did not speak of?"

        dZ.
  • lenan (unregistered)

    After reading the article posted, explaining the great way we can all do ln -s in windows..

    To even think this comes near the ease and robust unix fs utils is a bit far fetched...

    if you mean typing fstuil hardlink create, etc, every time, for a hardlink is in some way as flexible as ln -s your very much deluded.

    If you read that article, the junctions NTFS feature is " undocumented ", programming it has been done by a handful of people... there is pratically no use of this feature..

    I really never seen anywhere using these feature, yet you will not get a linux distribution running with out links...You cannot compare some programmers good idea at microsoft, with a venerable feature of the worlds oldest operating system.

    NTFS has it spec changed every service pack, making deciphering it super complex... ; nobody can use it on anything apart from read access..

    This is irrelevant anyway, you wont even see files in longhorn! Get used to searching, Access denied - This file is not signed, and This file was not brought at 3x its markup price from a microsoft partner.....

  • (cs) in reply to lenan

    I had trouble following your post, so I'm gonna take a stab somewhere... 

    I really never seen anywhere using these feature, yet you will not get a linux distribution running with out links...You cannot compare some programmers good idea at microsoft, with a venerable feature of the worlds oldest operating system.

    All this tells us is that Linux needs this functionality, while Windows doesn't.  Either way the functionality is there.

    Ok, enough with the ignorant MS-hate, I reckon.  It's getting boring and it really isn't cool anymore.

  • Nunya (unregistered) in reply to Beek

    <FONT face=Arial>PLEASE refrain from using that Linux-lover's pen name on this glorious website.  /. is for geeks.  TDWTF is for everyone else.</FONT>

    <FONT face=Arial>Pwnt.  Please drive through.</FONT>

  • (cs) in reply to johnl
    johnl:


    I had trouble following your post, so I'm gonna take a stab somewhere...

    I really never seen anywhere using these feature, yet you will not get a linux distribution running with out links...You cannot compare some programmers good idea at microsoft, with a venerable feature of the worlds oldest operating system.


    All this tells us is that Linux needs this functionality, while Windows doesn't.  Either way the functionality is there.


    No.  The functionality is not there.  Junctions are not as functional as generic symbolic links.  Read the thread.
  • (cs) in reply to Nunya
    Anonymous:

    <FONT face=Arial>PLEASE refrain from using that Linux-lover's pen name on this glorious website.  /. is for geeks.  TDWTF is for everyone else.</FONT>

    <FONT face=Arial>Pwnt.  Please drive through.</FONT>

    <FONT face="Courier New" size=2>what are you talking about?  /. is limbo for script kiddies.  "geek" is a wonderful label.  treat it with reverence.</FONT>

  • (cs) in reply to Schol-R-LEA
    Schol-R-LEA:
    Anonymous:
    Schol-R-LEA:
    phred:
    I tried to use linux once and the damn cd FORMATTED MY HARD DISK!

    As it is, it sounds like pilot error to me.



    As it is, it sounds like you're missing the joke to me...


    Probably. I often field questions on beginner's fora, and as a result tend to take a lot of stuff like this at face value, simply because it all too often is meant seriously. I thought it might be a joke, but I wasn't sure... and habit got the best of me.

     

    Er, you spend time on beginner's forums but say things like "sounds like pilot error" - geez, hardly sounds like you're on those forums to give friendly or helpful advice [:S]

  • (cs) in reply to tufty

    tufty:
    I like how dat(Start|End)Time is a smalldatetime, not a date.

    The database system is probably SQL Server which does not have a date data type. It does have a datetime but if you don't need the level of precision it offers you can halve the bytes used with the smalldatetime type.

    Not everything that people don't understand is a WTF.

  • (cs) in reply to poster
    Anonymous:
    dhromed:
    Xepol:
    Wow does this forum software ever hate me. Maybe its just IE 7...


    There is not IE7 yet. Whachoo talking boot? The Javascript "IE7" CSS enhancement?


    Which cave are you living in?


    [asscover]

    I was going to ask that *of course*, ^o, but just to be sure IE7 wasn't already in beta I went to microsoft.com. No mention of such a thing on the front page, on the product pages or in downloads. Assuming they'd put up a download like that in clear view, I searched no further.

    [/asscover]

    But I just searched the site, and lo, IE7 with tabs, some CSS enhancements and PNG support! I cheer a mild Yay, and will reserve further yay-ing for when I find out the extent and quality of the enhancements.

    To answer your question:
    The cave I apparently just evolved out of.


  • David (unregistered) in reply to dhromed

    dhromed:
    Also, Hungarian notation on column names is just... weird.

     

    Hungarian notation on anything is just wierd. 

  • (cs) in reply to dhromed
    dhromed:
    Anonymous:
    dhromed:
    Xepol:
    Wow does this forum software ever hate me. Maybe its just IE 7...


    There is not IE7 yet. Whachoo talking boot? The Javascript "IE7" CSS enhancement?


    Which cave are you living in?


    [asscover]

    I was going to ask that *of course*, ^o, but just to be sure IE7 wasn't already in beta I went to microsoft.com. No mention of such a thing on the front page, on the product pages or in downloads. Assuming they'd put up a download like that in clear view, I searched no further.

    [/asscover]

    But I just searched the site, and lo, IE7 with tabs, some CSS enhancements and PNG support! I cheer a mild Yay, and will reserve further yay-ing for when I find out the extent and quality of the enhancements.

    To answer your question:
    The cave I apparently just evolved out of.




    Having seen screens of IE7, it reminds me of Firefox.. a lot.  I'd imagine that when it ships, it'll be a poorly implemented version of that, with all the current IE bugs and security holes to boot.
  • (cs) in reply to Drak
    Drak:

    Anonymous:
    DZ-Jay:

    "What is this Normal Form you speak of?"


    Normal form is fixing the database schema to be how you should have designed it in the first place.

    I must honestly say that I forgot totally everything about designing a database the moment I left school to go to work. I did like the classes though, but can't remember one single bit about what I learnt.

    Drak

    You are a 'programmer' who does not know or who has forgotten about database normalization?

    You do not have to be a DBA to know that.

    Don't tell me that you have forgotten about SQL or Object-Oriented Programming?

    Those are used in almost any project of size at some point.

    If somebody asked about 'AJAX' or 'SOA' that would have been fine.

    My point is, as a programmer you must know (how to use) the basics of software engineering (from declaring a variable to implementing a database).

     

    P.S. I do not provide tutoring.

     

  • Carsten Otto (unregistered) in reply to Franky

    Well, I really did not read the first line - sorry. So please ignore my original post :)

  • (cs) in reply to kdd
    kdd:

    My point is, as a programmer you must know (how to use) the basics of software engineering (from declaring a variable to implementing a database).

    Oh, does all programming have to involve a database then? Or have you redefined anything that doesn't use a database as not being programming?

  • (cs) in reply to Carsten Otto
    kdd:
    My point is, as a programmer you must know (how to use) the basics of software engineering (from declaring a variable to implementing a database).

    Oh, does all programming have to involve a database then? Or have you redefined anything that doesn't use a database as not being programming?

  • (cs) in reply to Bellinghman

    (One day I'll work out how to get quoting to work with Opera. But obviously not today. Sigh.)

  • (cs) in reply to Carsten Otto
    Anonymous:
    This has already been posted (November 2004). Use the search function :)


    Anonymous:
    Well, I really did not read the first line - sorry. So please ignore my original post :)


    Wait, wait! I wanna play too!!!

    Didn't you read the first line?? It says its a Classic WTF!

    There.

        dZ.
  • (cs) in reply to phred
    phred:

    I once had a project that I decided not to normalize, it was an attendance system, it had a table for students, a table for courses, a table for meetings and a table for student attendance. Without using repeating groups, the actual student attendance table would have been at least 100 times the actual size required (one bit, present or not), simply because of the foreign keys required. By making a repeating group I saved immensely on programmer time and computer efficiency.

    Phred,

    Are you really somehow trying to justify violating 1NF?  Please, give us a break.

    All,

    I think seeing these lame justifications for what otherwise would be a WTF is better than the WTFs sometimes.

  • Lectrick (unregistered) in reply to Chris F

    For some reason I love the sheer esoteric spectacle of a geek argument.

    I have to admit that Chris F is winning this matchup so far... I too use cygwin on windows (I use it to rsync a backup to my home Mac faster than the "corporate" backup software does it... which of course I cannot remove) and sure enough "ln -s" will create a crappy Windows shortcut file.

    It pays to double-check your sources before you try to touché someone.

  • (cs) in reply to davidmwilliams

    The database system is probably SQL Server which does not have a date data type. It does have a datetime but if you don't need the level of precision it offers you can halve the bytes used with the smalldatetime type.

    I am aware of SQLServer's deficiencies, yes. I was referring to the use of hungarian notation, not to the lousy standards compliance of one database server over another.

    Not everything that people don't understand is a WTF.

    And not .... No. Fish in a barrel.

    Simon

  • (cs) in reply to Chris F

    No.  The functionality is not there.  Junctions are not as functional as generic symbolic links.  Read the thread.

    Apologies, should have gone to the next page.  (That is one thing I don't like about this forum - pages are only visible at the bottom.  On most forums, they have them at the top as well.)

    But the point still stands.  You said that they can only be used on directories, and this is true.  I'm assuming that, since you pointed this out, Linux can use them on files as well?  <sarcasm>Wow, that's a major leap in functionality.</sarcasm>

    Seriously, you're just being picky now.  Stop it.  It's just not cool, funny, clever, intelligent, or anything like that.  It's just stupid.

  • (cs) in reply to johnl

    There's times when having a junction on a single file would be very useful, but even *nix uses folder links most of the time. It's just a minor convenience, not a reason to damn or laud a filesystem.

    Versioning, however, is.

    NTFS is nearly identical to ext3, aside from minor details like file-level symlinking. But it's reiser that we should be going to, and higher-performance database backends; fortunately NTFS supports third-party version-control plugin drivers, but that's less than ideal.

  • (cs) in reply to johnl
    johnl:
    But the point still stands.  You said that they can only be used on directories, and this is true.  I'm assuming that, since you pointed this out, Linux can use them on files as well?  <sarcasm>Wow, that's a major leap in functionality.</sarcasm>.
    I said they functionality isn't there and it's not.  None of your ignorance over the utility of file symbolic links will change that.

    johnl:
    Seriously, you're just being picky now. Stop it.  It's just not cool, funny, clever, intelligent, or anything like that.  It's just stupid.

    What's not cool is pretending you know how important a feature this is to me or anybody else here.  You're like the deaf man talking about how overrated music is because you can read lips.
  • (cs)

    You should consider very carefully the wisdom of posting a VB6 WTF whilst attempting to poke fun at Linux folk; in my experience, you (all programmers) are a bit ghey. So the one poking fun at the other is rather a lot kettle->blackpot.

    Retards.

  • eagle (unregistered) in reply to johnl
    johnl:

    But the point still stands.  You said that they can only be used on directories, and this is true.  I'm assuming that, since you pointed this out, Linux can use them on files as well?  <sarcasm>Wow, that's a major leap in functionality.</sarcasm>

    Seriously, you're just being picky now.  Stop it.  It's just not cool, funny, clever, intelligent, or anything like that.  It's just stupid.



    Seriously, not only Linux can, but every Unix I encountered can.

    Almost every Unix uses it to map certain important configuration files from their original location (for example below /opt) into /etc.

    Likewise almost every Unix uses it to map the most current of different library versions to the default name. (It is always libc.so, but if you need a special version you still can explicitly bind libc.so.4 or libc.so.5. On the other hand on Windows if you run a VB5 program you will need the msvbvm50.dll exactly, although you might have msvbvm60.dll already installed. There is no "most-current-symlink" from msvbm.dll. Too bad! Well actually the situation with VB is not the worst. Ever had two applications at the same time on the same machine that needed different versions of comdlg32.dll ?)

    Solaris uses it to map logical device names to physical devices (for example /dev/dsk/c0t0d0s0 may point to /devices/pci@1f,0/ide@d/dad@0,0:a).


    So don't tell me, that symlinking files it is just another unimportant feature. It is essential to me (on Unix), and NTFS doesn't have it, but luckily I don't need it on Windows, but I'd like to have it..

    cu
  • (cs) in reply to Chris F

    What foxy said...

    Unless, of course, you can explain why it's so vitally important that you be able to symlink files, as opposed to the directory?  No?  Oh, ok, then, you're just blowing hot air.  I thought so

  • (cs) in reply to johnl

    Sorry, that was @Chris F

  • (cs) in reply to johnl
    johnl:
    Unless, of course, you can explain why it's so vitally important that you be able to symlink files, as opposed to the directory?  No?  Oh, ok, then, you're just blowing hot air.  I thought so

    The single most important use of symbolic links to me is their ability to abstract and maintain the integrity the filesystem.  Systems have been using them for decades to protect against incompatibilities, provide organization, centralize configuration, and relieve the stress of structural changes.  All without touching application code.

    It's not my job to stroke your dimunitive imagination.  Others have given more specific demonstrations.  But a word to the wise: If a programmer thinks fundamental concepts like abstraction aren't "vitally important", I would suggest they are either seriously inexperienced or in the wrong line of work.
  • Jimbo (unregistered) in reply to Beek
    Beek:
    Anonymous:
    This has already been posted (November 2004). Use the search function :)


    Jake is actually CmdrTaco????????


    Mod parent up funny!!!!!!!!!!!!11
  • Ertach (unregistered) in reply to JohnO
    JohnO:
    phred:

    I once had a project that I decided not to normalize, it was an attendance system, it had a table for students, a table for courses, a table for meetings and a table for student attendance. Without using repeating groups, the actual student attendance table would have been at least 100 times the actual size required (one bit, present or not), simply because of the foreign keys required. By making a repeating group I saved immensely on programmer time and computer efficiency.

    Phred,

    Are you really somehow trying to justify violating 1NF?  Please, give us a break.

    All,

    I think seeing these lame justifications for what otherwise would be a WTF is better than the WTFs sometimes.



    You know, the purpose of normalisation is to produce smaller, more well structured relations from relations with anomalies.  While it is very important to take all your database designs through the steps from conception to 3NF, any decent DBA or software developer knows that there comes a time that redundancy is a good thing.  Okay, so it violates normalisation rules, but if it improves the performance of the application and the database access times, why not do it?  Don't we spend part of our time trying to figure out the "optimal" solutions in our code?  Why not let the DBMS do its job with the data so we don't have to.  I mean, it's better at it than us....
  • (cs) in reply to emptyset
    emptyset:
    What are you talking about? /. is limbo for script kiddies. “geek” is a wonderful label. treat it with reverence.
    I have to agree. See also Quit Slashdot.org Today!
  • (cs) in reply to eagle

    eagle wrote some very sensible stuff,then:

    Likewise almost every Unix uses it to map the most current of different library versions to the default name. (It is always libc.so, but if you need a special version you still can explicitly bind libc.so.4 or libc.so.5. On the other hand on Windows if you run a VB5 program you will need the msvbvm50.dll exactly, although you might have msvbvm60.dll already installed. There is no "most- current-symlink" from msvbm.dll. Too bad! Well actually the situation with VB is not the worst. Ever had two applications at the same time on the same machine that needed different versions of comdlg32.dll ?)

    I don't think you've really summed it up :

    • both platforms provide the ability to 'version' libraries according to any versioning model you like, as long as it works by file name changes.
    • the unix model allows one to link against either an explicit library version or against the 'latest' (created, by convention as a symlink)
    • the Windows model allows one to either link against the 'last installed' version (by keeping the filenames the same) or against specific versions (by changing names per version) but not both.

    As it stands, the unix model would certainly seem to be the more flexible, but it is still far from perfect

    I would argue that what is really needed is a paradigm shift to using file metadata in one form or another - that way one could have multiple versions of a library which would not interfere (much like the unix model), but would be able to link against files in a more flexible manner (latest version that is > 4.2 and < 5.1, for example).

    I believe the old Be filesystem could do this, but I may be wrong.

    The ability to do something like symlinking will still be necessary (and it does need to be at an atomic, file level, sorry NTFS lovers) but there's no need for it to be implemented as it currently is under any existing filesystem. It could, for example, be done using a 'view' on a real filesystem implemented as a database.

    simon

  • (cs) in reply to tufty

    The single most important use of symbolic links to me is their ability to abstract and maintain the integrity the filesystem.  Systems have been using them for decades to protect against incompatibilities, provide organization, centralize configuration, and relieve the stress of structural changes.  All without touching application code.


    That's a nice feature, I'll admit, but it's far from essential.  Try again.

    It's not my job to stroke your dimunitive imagination.  Others have given more specific demonstrations.  But a word to the wise: If a programmer thinks fundamental concepts like abstraction aren't "vitally important", I would suggest they are either seriously inexperienced or in the wrong line of work.

    Ah, the claim of the wrong. 

    Me: "explain your assertions"

    You:  "I don't have to explain them!"

    If you aren't willing to back up your assertions, don't make them.  Oh, and a word to the wise:  abstraction in programming is a completely different issue.

    On the subject of DLL-Hell, Windows definitely has issues in this area.  Some of these are COM-related, some are to do with replacing files.  Windows Installer, Application Isolation and .NET all go some way to solving this problem, though they don't do it completely.  (.NET is the only one to really get it right, but to use it you have to program in .NET, which obviously doesn't work for everyone).

  • (cs) in reply to johnl

    (.NET is the only one to really get it right, but to use it you have to program in .NET, which obviously doesn't work for everyone)

    How does it do it? (Not a troll, just actually interested)

    simon

  • (cs) in reply to tufty

    Firstly, apps have to work really hard to access assemblies outside of their own directory structure (meaning two applications never crash).  Secondly, and most importantly, there's the Global Assembly Cache, which can store multiple versions of the same file, and can be accessed by all applications.  Each assembly (what .NET calls a dll) in the GAC has a number of different identity components (public key, culture, version, etc).  So an app calling a particular DLL asks for a particular DLL of a particular version.  If someone else installs a different version of that dll, they coexist side by side, so your app still gets the version it wants

  • (cs) in reply to johnl

    meaning two applications never crash

    that's supposed to say "meaning two applications never clash" [8-)]

  • (cs) in reply to johnl

    Firstly, apps have to work really hard to access assemblies outside of their own directory structure (meaning two applications never clash)

    Doesn't that somewhat defeat the object of having shared libraries?

    Secondly, and most importantly, there's the Global Assembly Cache, which can store multiple versions of the same file, and can be accessed by all applications.

    Hmmmm - okay.

    Each assembly (what .NET calls a dll) in the GAC has a number of different identity components (public key, culture, version, etc).

    please tell me that the metadata lives within or is otherwise permanently linked to the 'assembly', and not separate, in the global cache. Please tell me that. Because as described it sounds rather like a "registry for dlls" :)

    Simon

  • (cs) in reply to tufty

    tufty:
    _please_ tell me that the metadata lives within or is otherwise permanently linked to the 'assembly', and not separate, in the global cache.

    Of course.  It's stored within the DLL.  How else could you have multiple versions of the same file?

Leave a comment on “tblCalendar”

Log In or post as a guest

Replying to comment #:

« Return to Article