WTF happening in real time as I write this



  • I am taking a training class for a Majorly Bitchin' commercial tool as I write this. The instructor is explaining to us that the tool supports evaluating mathematical expressions. The subtopic is boolean expressions.

    So help me God, the instructor just explained to us that the tools' concept of a boolean variable can have four states: true, false, not found, not set.

    Ok, true and false are standard. I will accept not set as object oriented langauages all have the concept of null.

    WTF is not found?!!  (she couldn't really explain it)<p>

    The sad part is that there are four people in the class who are newbies and are writing down everything she says... Ah well, more fodder for this forum I suppose...



  • Obviously it's like FILE_NOT_FOUND without the FILE_.



  • @Veinor said:

    Obviously it's like FILE_NOT_FOUND without the FILE_.

    I was thinking that myself, but chose not to go for the obvious.. This woman is *clueless* - ah well, it's a week away from the office!



  • Gaaah - she just said that we can support any number of states for the boolean object.....

    Shoot me now!



  • ...and finally, the parting shot at the end of the module:

    "If you can dream it, you can do it"

     Oh my dear Lord?!!

     



  • @snoofle said:

    Gaaah - she just said that we can support any number of states for the boolean object.....

    Shoot me now!

     

    Sweet!  Now you know you can add FILE_NOT_FOUND, to go with NOT_FOUND. 



  • @snoofle said:

    I am taking a training class for a Majorly Bitchin' commercial tool as I write this.

     

    OK, snoofle, you've got to tell us what the MB tool is... the Googles, they do nothing.  All I get is Wikipedia defining MegaByte, Mercedes Benz, and the  Manila Bulletin Online. 



  • Well, isn't that true for most booleans?

     

    boolean a = true, b = false, c;

    print a; // true

    print b; // false

    print c; // not set

    print d; // not found

     

    *sigh* *bangs head against desk* 



  • @sinistral said:

    @snoofle said:

    I am taking a training class for a Majorly Bitchin' commercial tool as I write this.

     

    OK, snoofle, you've got to tell us what the MB tool is... the Googles, they do nothing.  All I get is Wikipedia defining MegaByte, Mercedes Benz, and the  Manila Bulletin Online. 

    Think WebSphere...



  • @snoofle said:

    "If you can dream it, you can do it"

     

    I dreamed I ran out of the room screaming.



  • @snoofle said:

    ...and finally, the parting shot at the end of the module:

    "If you can dream it, you can do it"

     Oh my dear Lord?!!

     

    I thought that "Adobe, the Adobe logo, Adobe Illustrator, After Effects, PageMaker, PageMill, Photoshop, PostScript, Streamline, and "If you can dream it, you can do it" are trademarks of Adobe Systems Incorporated." Or so the Google search says.


  • Ah, so the backronym for MB would be Musiness Bachines if I understand this WebSphere thing right.



  • @snoofle said:

    Gaaah - she just said that we can support any number of states for the boolean object.....

    Shoot me now!

    It's quantum!



  • @Nandurius said:

    Well, isn't that true for most booleans?

     

    boolean a = true, b = false, c;

    print a; // true

    print b; // false

    print c; // not set

    print d; // not found

     

    sigh bangs head against desk 

    But then, d doesn't hold a value of not_found.

    If something like that is valid syntax, that would be pretty poor. 



  • I guess not_found would be equivalent to Javascript's [i]undefined[/i].

    In JS, a boolean variable can have 4 states indeed: true, false, null (which coerces to false) and [i]undefined[/i], which basically means that the name has never been encountered and generates an error.



  • @Gabelstaplerfahrer said:

    Ah, so the backronym for MB would be Musiness Bachines if I understand this WebSphere thing right.

    ahem, Message Broker



  • I understand this idea that so many new things are championing of booleans having 3 or 4 values. It makes good sense to have deterministic handling of undefined or undeclared variables and to support some math oriented logic operations. BUT they really need to stop calling them booleans. C booleans win, 0 = false, every other bit pattern = true . You can't have undefined and 'gate not found' in a logic gate. All these new variables are nice for OO programming and plugging in java beans and .net whatever modules and webshit, but they are not booleans.



  • @fennec said:

    @snoofle said:

    ...and finally, the parting shot at the end of the module:

    "If you can dream it, you can do it"

     Oh my dear Lord?!!

     

    I thought that "Adobe, the Adobe logo, Adobe Illustrator, After Effects, PageMaker, PageMill, Photoshop, PostScript, Streamline, and "If you can dream it, you can do it" are trademarks of Adobe Systems Incorporated." Or so the Google search says.

    Well, the Walt Disney Company must be paying them a buttload of money, because I hear that goddamn "if you can dream it..." thing every time I ride the friggin' monorail from smeggin' EPCOT to frackin' Magic Kingdom.



  • Dang -- I was sure it would be Multi-valued Boolean or something like that.



  • @SpoonMeiser said:

    But then, d doesn't hold a value of not_found.

    If something like that is valid syntax, that would be pretty poor. 

    I can see that with auto-declaration in a language. The first time you try to read d, it comes back as "not found" and the system happily declares it. The second time you read it, it has a value of "not set". Usually this sort of thing is abstracted away before the user ever sees it; the system conceals the "not found" and "not set" values from you by handling them as exceptions and assigning a reasonable default.

    read(boolean d) { try { get d; } catch (not_found_exception nfe) { create(d); read(d); } catch(not_set_exception nse) { initialise(d); read(d); } }

    Granted, recursion isn't the best mechanism, but it works and it was fun to write. It's not the worst way to do it.



  • But if it's not_found, then it's automatically not_set either. why not just create(d); initialise(d); read(d); in the first catch block?



  • I think that we need an official name for all of these non-boolean horribly broken and extended booleans.

     

    Can I suggest a name for this category as "Enterprisey Booleans"?



  • @RayS said:

    I think that we need an official name for all of these non-boolean horribly broken and extended booleans.

     

    Can I suggest a name for this category as "Enterprisey Booleans"?

    How about "Trulean"

     



  • @mrprogguy said:

    @fennec said:
    @snoofle said:

    ...and finally, the parting shot at the end of the module:

    "If you can dream it, you can do it"

     Oh my dear Lord?!!

     

    I thought that "Adobe, the Adobe logo, Adobe Illustrator, After Effects, PageMaker, PageMill, Photoshop, PostScript, Streamline, and "If you can dream it, you can do it" are trademarks of Adobe Systems Incorporated." Or so the Google search says.

    Well, the Walt Disney Company must be paying them a buttload of money, because I hear that goddamn "if you can dream it..." thing every time I ride the friggin' monorail from smeggin' EPCOT to frackin' Magic Kingdom.

     

    They shouldn't be paying anything, because it's a quote from Walt Disney himself. 



  • @sycro said:

    @mrprogguy said:
    @fennec said:
    @snoofle said:

    ...and finally, the parting shot at the end of the module:

    "If you can dream it, you can do it"

     Oh my dear Lord?!!

     

    I thought that "Adobe, the Adobe logo, Adobe Illustrator, After Effects, PageMaker, PageMill, Photoshop, PostScript, Streamline, and "If you can dream it, you can do it" are trademarks of Adobe Systems Incorporated." Or so the Google search says.

    Well, the Walt Disney Company must be paying them a buttload of money, because I hear that goddamn "if you can dream it..." thing every time I ride the friggin' monorail from smeggin' EPCOT to frackin' Magic Kingdom.

     

    They shouldn't be paying anything, because it's a quote from Walt Disney himself. 

    An inspection of the USPTO actually shows that Adobe's trademark on the phrase is dead. There are several more trademarks on that phrase; the live one is listed as "IF YOU CAN DREAM IT YOU CAN DO IT AT THE HOME DEPOT".

    ah, IP law is the real WTF? ;)



  • @phithe said:

    But if it's not_found, then it's automatically not_set either. why not just create(d); initialise(d); read(d); in the first catch block?

    Because then you have to duplicate the initialise() call in the second one. Duh. Then you end up with this:

    read(boolean d) { try { get d; } catch (not_found_exception nfe) { create(d); initialise(d); read(d); } catch(not_set_exception nse) { real_initialise(d); read(d); } }

    Now if your boolean is "not found", it doesn't know about the fifth boolean state you added last week for customer #3245.

     



  • @fennec said:

     An inspection of the USPTO actually shows that Adobe's trademark on the phrase is dead. There are several more trademarks on that phrase; the live one is listed as "IF YOU CAN DREAM IT YOU CAN DO IT AT THE HOME DEPOT".

    An acquaitance of mine (not that there's anything wrong with him) reported that when he went to Home Depot at 4 a.m. there were only a few customers there, all male, and the background music system was playing "It's Raining Men".

    The men weren't doing it, not that there would be anything wrong with it if they were.

     



  • @newfweiler said:

    @fennec said:

     An inspection of the USPTO actually shows that Adobe's trademark on the phrase is dead. There are several more trademarks on that phrase; the live one is listed as "IF YOU CAN DREAM IT YOU CAN DO IT AT THE HOME DEPOT".

    An acquaitance of mine (not that there's anything wrong with him) reported that when he went to Home Depot at 4 a.m. there were only a few customers there, all male, and the background music system was playing "It's Raining Men".

    The men weren't doing it, not that there would be anything wrong with it if they were.

     

     

    There are Home Depots open at 4 am? Why? 



  • @tharfagreinir said:

    @snoofle said:

    Gaaah - she just said that we can support any number of states for the boolean object.....

    Shoot me now!

    It's quantum!

    No, because then it wouldn't be "any number of states" it would be "infinite states"

    and not like "you have infinite choices at a supermarket for dinner"

    Like "any one of an infinite number of choices is as likely"

    Imagine programming that?

    anyone remember googolplex.tgz.tgz.tgz?

    I think that wasn't a file of zeros... i think it was the new code for the infinite state boolean. :-D



  • @sycro said:

    There are Home Depots open at 4 am? Why? 

    Home Depot is open 24 hours a day, 7 days a week.  Why?  Probably because Wal-Mart is too.

     



  • @sycro said:

     
    There are Home Depots open at 4 am? Why? 

     

    I suppose for situations like waking up just before 4am and finding the floor covered with water. 



  • @newfweiler said:

    @sycro said:

    There are Home Depots open at 4 am? Why? 

    Home Depot is open 24 hours a day, 7 days a week.  Why?  Probably because Wal-Mart is too.

     

     

    Not where I'm from. 


Log in to reply