WTF Bites



  • @boomzilla I wonder if this has anything to do with Excel refusing to open two different files with the same name at the same time.


  • Discourse touched me in a no-no place

    @mzh said in WTF Bites:

    Excel refusing to open two different files with the same name at the same time

    Is that still a thing?



  • @pjh said in WTF Bites:

    @mzh said in WTF Bites:

    Excel refusing to open two different files with the same name at the same time

    Is that still a thing?

    Backwards compatibility!



  • C++ :wtf:: https://godbolt.org/g/vwf3p6

    #include <cstddef>
    
    int main(int const argc, char const *const *const)
    {
        std::size_t i = 123;
        if(argc > 3)
        {
            std::size_t j = 1;
            static_assert(sizeof(i) > 4);
            j <<= 32;
            i += j;
        }
        return i;
    }
    

    -O3 -std=c++17 -Werror -Wall -Wextra -pedantic

    main: # @main
      mov eax, 123
      ret
    

    It took me longer than I'm willing to admit to figure this out due to the context of the original code, but what's happening here is that clang (and gcc) sees that return i; casts from unsigned 64bit to signed 32bit and therefore all the bits in positions 32 and beyond don't matter, and it doesn't issue any warning despite using -Wall -Wextra -pedantic. If you want it to error out you have to use return {i}; or -Wconversion or -Wshorten-64-to-32.

    Guess what? MSVC issues two warnings at the default warning level (/W3):

    main.cpp(13): warning C4267: 'return': conversion from 'size_t' to 'int', possible loss of data
    main.cpp(13): warning C4365: 'return': conversion from '::size_t' to 'int', signed/unsigned mismatch
    

    :wtf: clang and gcc? This is probably why I see so many "possible loss of data" warnings in very popular libraries when compiling them for 64bit in MSVC: the developers work primarily on linux and have no idea their code is performing implicit lossy casts like this. If you use clang or gcc you may want to try -Wconversion or -Wshorten-64-to-32 as they are not included in -Wall or -Wextra.


  • Notification Spam Recipient

    @pjh said in WTF Bites:

    @mzh said in WTF Bites:

    Excel refusing to open two different files with the same name at the same time

    Is that still a thing?

    Now you've made me curious!

    0_1524696604295_6b290d20-f8e7-4714-be90-765fc6ff4f49-image.png

    Well I'll be damned...



  • @tsaukpaetra Yeah - as I remember, it's because of how Excel does external links - the filename is part of the cell's data. If multiple were open, it wouldn't know which one.


  • Notification Spam Recipient

    @dcon said in WTF Bites:

    @tsaukpaetra Yeah - as I remember, it's because of how Excel does external links - the filename is part of the cell's data. If multiple were open, it wouldn't know which one.

    Yes, what makes it even more fun is when you have cross-book links that work just fine, but then open a different book named the same but in a different path, and Excel transparently (and without warning) replaces those links to point to the new (incorrect) book.

    Fun times...



  • @tsaukpaetra I think giving the full path in the reference would eliminate that problem (it'd still point to the correct workbook, even if you had another one with the same name open), but you still wouldn't be able to open both workbooks at the same time.


  • Notification Spam Recipient

    @anotherusername said in WTF Bites:

    giving the full path in the reference would eliminate that problem

    It would, so long as the original file still exists. I believe (memory is sketchy) that if for some reason Excel couldn't load it, and you tried refreshing, and there was a file of the same name, it just updated the links to the currently opened book of the correct name. One of those hidden gotchas for when some ass saved the source book as "Book1" and you have a scratch space open, I think it was how it came up on me...



  • @djls45 said in WTF Bites:

    @DCoder said in WTF Bites:

    Eventbrite is cancer:

    Basically: "We (and whomever we say) can do anything we want with your stuff, and you are responsible for all third-party permissions necessary to do so."

    Well, it's not really your stuff. It's their photographs or recordings of your event. The only nasty part is that you have to let them come and make photographs or recordings of your event if they want to (and you have to make sure they're allowed to, most of which would be covered by requiring attendees to allow their images to be used, etc., which I expect is in the T&Cs of them using Eventbrite anyway).


  • :belt_onion:

    @anotherusername said in WTF Bites:

    @tsaukpaetra I think giving the full path in the reference would eliminate that problem (it'd still point to the correct workbook, even if you had another one with the same name open), but you still wouldn't be able to open both workbooks at the same time.

    That's been the default for a bit now; it leaks a hell of a lot of information though and it won't work when you send it to other people. My impression is external links should be avoided whenever possible.

    That reminds me that a classmate recently sent me a draft report for a group project we're working on... now, for some reason my Word at home is set to display field codes (like { DATE \@ "d MMMM yyyy" \* MERGEFORMAT }) by default until I right-click the field and toggle it. I can't figure out how to turn that off. Anyway, I saw something in his report like { LINK "\\<AD domain I recognize as belonging to a certain intelligence agency>\Home\<his username>\Desktop\Report.xlsx" }

    I advised him, "You may want to learn how to use Document Inspector... also, may not want to work on school stuff at work..."



  • @heterodox said in WTF Bites:

    for some reason my Word at home is set to display field codes (like { DATE @ "d MMMM yyyy" * MERGEFORMAT }) by default until I right-click the field and toggle it. I can't figure out how to turn that off.

    Options > Advanced > Show document content > untick "Show field codes instead of their values"


  • :belt_onion:

    @scarlet_manuka said in WTF Bites:

    Options > Advanced > Show document content > untick "Show field codes instead of their values"

    You are a gentleman and likewise a scholar.


  • Notification Spam Recipient

    @heterodox said in WTF Bites:

    a classmate

    Was it Chris? Tell me it wasn't Chris again!



  • I was online the other night and started getting some connection errors, so I power cycled the ADSL modem/router (giving it some breathing room in between like you're supposed to). The LAN lights came on for a couple of seconds, but no other lights, then all the lights went off. Power cycled again and no lights at all. None of the other computers can see the network at all, though my office computer says it can see the network, just not the Internet. But it continues to say this even after I unplug its cable from the modem and even when the modem is turned off, so I'm pretty sure it's just lying about that part. Hooray, dead modem.

    So I called my ISP to see if they would replace it for me. The support lady I got was very anxious to believe that it was not a modem fault. First I had to try swapping out the phone cable, then I had to try connecting to a different socket, and making sure there was dial tone, and then she asked if I had another modem I could use, which I didn't. So she wanted me to see if I could borrow one from friends or neighbours to confirm that it was really the modem that was the problem "because there might be some issue at the exchange". I tried to point out that an issue at the exchange wouldn't stop the modem's power and ADSL lights from coming on (and in the latter case, blinking a lot), but this didn't seem to penetrate. I did eventually get her to agree to log a fault even though we hadn't completed the "try another modem" part of the troubleshooting process.

    But then she discovered some issue that might affect Internet access for customers in my area and said she couldn't log a fault for me until after that ended in 6 hours time. (Not true, because what she'd said her screen was telling her seconds earlier was that technical details couldn't be retrieved automatically and would have to be filled in manually. I'm assuming she either didn't know how to or didn't want to do it the hard way.)

    So I assumed I'd be getting some followup later that morning (it was around 2am when I called them). Nope, I got a call back from the same lady at apparently the start of her shift which was about 8pm. (From a comment she made, it sounded as if she's in South Africa, 6 hours behind us.) She verified that I still had the issue, so I had to leave the modem and computer on and connected for 24-48 hours so they could do fault testing from their end, and after that she would log a fault.

    The next day I got two copies of an SMS message saying basically "your fault should be fixed within the next 2 days, if not please let us know" and I wondered what that meant: were they going to send me a modem and that was the estimated time of delivery, or what? Apparently not, because later that day a technician from Telstra (who are not my ISP) showed up to check the line, because apparently the ISP support lady logged it as a fault with them instead of logging it as a hardware fault with the modem.

    The Telstra tech confirmed that yes, the line was fine and he got a good connection on it with his device, so the modem appeared to be at fault. I assured him that I was well aware of that. According to him, my ISP should have sent out their own tech first before logging it as a fault with Telstra.

    That was yesterday. I haven't had any further word from them, so I have no idea yet on when (or indeed whether) they're going to send me a replacement modem. I should probably call them again today, I guess.

    Surprising, because up until now I've generally got quite competent support from them, and have recommended them to other people on that basis.


  • Notification Spam Recipient

    @scarlet_manuka said in WTF Bites:

    then she asked if I had another modem I could use

    WTF? Like, is it common to have multiple modems where you live? A commodity item you just have on hand?

    @scarlet_manuka said in WTF Bites:

    The next day I got two copies of an SMS message saying basically "your fault should be fixed within the next 2 days, if not please let us know" and I wondered what that meant: were they going to send me a modem and that was the estimated time of delivery, or what?

    No, that's usually an outside tech...

    @scarlet_manuka said in WTF Bites:

    Apparently not, because later that day a technician from Telstra (who are not my ISP)

    Ah, yes, you were able to actually see them. You're luckier than almost all of my dispatched-on calls...

    @scarlet_manuka said in WTF Bites:

    According to him, my ISP should have sent out their own tech first before logging it as a fault with Telstra.

    Yes. Well, with AT&T we would have normally drop-shipped a replacement modem first, and then a prem tech, and the prem tech would have scheduled the outside tech... Well, unless our tools basically verify that an outside issue was present.

    @scarlet_manuka said in WTF Bites:

    Surprising, because up until now I've generally got quite competent support from them, and have recommended them to other people on that basis.

    I can't speak for Telstra, but at AT&T your instanced issue would not have happened.



  • @tsaukpaetra said in WTF Bites:

    @scarlet_manuka said in WTF Bites:

    then she asked if I had another modem I could use

    WTF? Like, is it common to have multiple modems where you live? A commodity item you just have on hand?

    Yeah, I wondered that too. I guess maybe if I'd bought another modem because... um, shiny I guess?... then I might still have the original one lying around somewhere?

    Ah, yes, you were able to actually see them. You're luckier than almost all of my dispatched-on calls...

    Yesterday happened to be a public holiday, so I was home. (And rather surprised that Telstra would actually send a tech out on a public holiday).

    I can't speak for Telstra, but at AT&T your instanced issue would not have happened.

    Telstra are not my ISP, they just own the line. Though I don't think I've ever heard anyone say anything good about Telstra's customer support either.

    I was certainly expecting the call to be more along the lines of "these are the modems we have, you can get one for {free|$X}, this is when we can send one to you". But we never got to that stage at all. I'm hoping it's just clueless support drone syndrome.

    She did ask me at one point - after asking me the modem manufacturer and model number - whether it was a black box. "No, beige," I answered. At the time I had no idea what the point of that was, but later I checked out their site and found that their current modem offering (there seems to be only one) is a nice little black number. So now I suspect that the model of modem I have was old enough not to be in her support docs, and I failed her "can this idiot even identify the modem" test, so she then ignored everything I said about the modem and LAN and just processed the complaint as "hurr durr internet no work".



  • @blek said in WTF Bites:

    T-Debile

    That's the right name for them, yes,

    @blek said in WTF Bites:

    Vodacancer

    Where'd you get this one. It does not really rhyme. ‘Vodafume’? ‘Waterfone’?

    @blek said in WTF Bites:

    O2

    And what about ‘O/2’?



  • My ISP just called me to let me know that the Telstra tech had identified the likely problem as the modem. My response of "Yes, that's what I said right from the start" was ignored :)

    They graciously suggested to me that I could go and buy my own replacement modem since mine was not under warranty (nor did I expect it to be, 10.5 years later). I asked if they could arrange one - I'd seen earlier on their website that they were giving them out free with a 24-month contract, as is pretty usual - and they said "yes, for $90 + delivery", but with a little bit of prodding agreed that I could get it for free if I re-contracted, which was about what I was expecting in the first place. So, two and a half days wasted but we got there in the end. 3-5 business days for delivery, which is a bit disappointing.



  • @bulb said in WTF Bites:

    Where'd you get this one. It does not really rhyme. ‘Vodafume’? ‘Waterfone’?

    Vodablown? Vodabone? Vaderfone? (I've been watching Star Wars the last few nights.)

    Interestingly my spellchecker only complains about the last of those. Maybe it can't figure out any suggested matches for the other two so it adopts a policy of "eh, if you say so".



  • @lb_ said in WTF Bites:

    It took me longer than I'm willing to admit to figure this out due to the context of the original code, but what's happening here is that clang (and gcc) sees that return i; casts from unsigned 64bit to signed 32bit and therefore all the bits in positions 32 and beyond don't matter, and it doesn't issue any warning despite using -Wall -Wextra -pedantic. If you want it to error out you have to use return {i}; or -Wconversion or -Wshorten-64-to-32.

    Guess what? MSVC issues two warnings at the default warning level (/W3):

    main.cpp(13): warning C4267: 'return': conversion from 'size_t' to 'int', possible loss of data
    main.cpp(13): warning C4365: 'return': conversion from '::size_t' to 'int', signed/unsigned mismatch
    

    :wtf: clang and gcc? This is probably why I see so many "possible loss of data" warnings in very popular libraries when compiling them for 64bit in MSVC: the developers work primarily on linux and have no idea their code is performing implicit lossy casts like this. If you use clang or gcc you may want to try -Wconversion or -Wshorten-64-to-32 as they are not included in -Wall or -Wextra.

    The switch to 64-bits created a lot fewer of these warnings because Microsoft chose the LLP64 model instead of the LP64 model the other platforms use. Because in the 32-bit times, many programs mixed int and long and suddenly that started to generate conversion warnings—but not on Windows where long remained 32-bit.


  • BINNED

    @lb_ said in WTF Bites:

    int main(int const argc, char const *const *const)
    

    Don't you think you're slightlyextremely overdoing it with the const qualifiers? Especially considering the paremeter isn't even named.


  • 🚽 Regular

    @topspin Does it use argc but not argv the unnamed second argument?


  • BINNED

    @zecc said in WTF Bites:

    @topspin Does it use argc but not argv the unnamed second argument?

    Yes?
    Although it doesn't after the compiler is done with it.


  • 🚽 Regular

    Perhaps I wasn't clear. I was asking whether there is a reference to argc being made other than the argument declaration.

    In other words: is the code using the number of arguments, but not their actual values, for something?


  • Notification Spam Recipient

    @zecc said in WTF Bites:

    Perhaps I wasn't clear. I was asking whether there is a reference to argc being made other than the argument declaration.

    In other words: is the code using the number of arguments, but not their actual values, for something?

    I've wondered about that sometimes, before realizing that for some reason knowing the length of an array is hard, historically speaking.


  • Discourse touched me in a no-no place

    @scarlet_manuka said in WTF Bites:

    Vodablown? Vodabone? Vaderfone?

    I just think of them as “fucking assholes”. It saves a lot of time.

    Also, I don't ever want to be a customer of them again.


  • ♿ (Parody)

    @mzh said in WTF Bites:

    @boomzilla I wonder if this has anything to do with Excel refusing to open two different files with the same name at the same time.

    I think it's definitely related due to the fact that you end up using the file name in formulas.


  • Discourse touched me in a no-no place

    @topspin said in WTF Bites:

    @lb_ said in WTF Bites:

    int main(int const argc, char const *const *const)
    

    Don't you think you're slightlyextremely overdoing it with the const qualifiers? Especially considering the paremeter isn't even named.

    And also: neither of them are const to begin with, unless you're going with option #3 (where all bets are off anyway):

    5.1.2.2.1 Program startup

    1. The function called at program startup is named main The implementation declares no prototype for this function. It shall be defined with a return type of int and with no parameters:
      int main(void) { /* ... */ }
      or with two parameters (referred to here as argc and argv, though any names may be used, as they are local to the function in which they are declared):
      int main(int argc, char *argv[]) { /* ... */ }
      or equivalent; or in some other implementation-defined manner.


  • @tsaukpaetra said in WTF Bites:

    It would, so long as the original file still exists. I believe (memory is sketchy) that if for some reason Excel couldn't load it, and you tried refreshing, and there was a file of the same name, it just updated the links to the currently opened book of the correct name. One of those hidden gotchas for when some ass saved the source book as "Book1" and you have a scratch space open, I think it was how it came up on me...

    Oh, that's evil.



  • @pjh Yeah. I'm actually really curious how legal that is -- the const qualifiers are definitively taken into account when overloading ordinary functions, so from that perspective that main definition is really non-standard (but then again, main is special to begin with).

    But @topspin is also right ... since the parameter isn't named, making it const all the way seems really unecessary. You can't change the contents anyway when it's unnamed (but as an added bonus, you're now in maybe-not-really-defined--land because you might be using a non-conforming main()).


  • Discourse touched me in a no-no place

    @cvi said in WTF Bites:

    @pjh Yeah. I'm actually really curious how legal that is -- the const qualifiers are definitively taken into account when overloading ordinary functions, so from that perspective that main definition is really non-standard (but then again, main is special to begin with).

    This is C. What overloading?

    Additionally: this is main - it's not even overloaded in C++.

    Thought experiment - what would you expect the following program to do if compiled and run with 0 arguments? 2 arguments?

    #include <iostream>
    int main(void){
    	std::cout << "void\n";
    	return 1;
    }
    
    int main(int argc, char** argv){
    	std::cout << "argc, argv\n";
    	return 0;
    }
    

    As to the 'legality' of adding const - entirely legal. It's basically a hint to the compiler that nothing in the function should be modifying anything that parameter may be an alias for.

    Removing it OTOH...


  • :belt_onion:

    @pjh Optimistically, I would expect it not to compile and say "You're a dumbass" but that's probably not the case sooo... will test in MSVC shortly.


  • Discourse touched me in a no-no place

    @heterodox said in WTF Bites:

    @pjh Optimistically, I would expect it not to compile and say "You're a dumbass" but that's probably not the case sooo... will test in MSVC shortly.

    GCC for reference:
    $ make main
    g++     main.cpp   -o main
    main.cpp: In function ‘int main(int, char**)’:
    main.cpp:7:5: error: conflicting declaration of C function ‘int main(int, char**)’
     int main(int argc, char** argv){
         ^~~~
    main.cpp:2:5: note: previous declaration ‘int main()’
     int main(void){
         ^~~~
    <builtin>: recipe for target 'main' failed
    make: *** [main] Error 1
    


  • From a recent commit:

    // add foos until the total number of valid foos has been reached (
    // note: there is only one foo allowed, even though it's defined as an array in "barEntities.d.ts") 
    let transferFoosValidLength = 1;
    var i = 0;
    while (i < transferFoosValidLength) {
        // instantiate the foo object (including the quxes)
        var fooItem = this._createTransferFoo(
            baz,
            transferFooQuxesValidLength
        );
        // add the foo to the array of foos
        baz.foos[i] = fooItem;
        // next foo
        i++;
    }
    


  • @pjh said in WTF Bites:

    This is C. What overloading?

    The original code definitively is C++ - @lb_ specifically mentions C++ and the compiler flags in his post select C++17.

    Additionally: this is main - it's not even overloaded in C++.

    In C++, it would overload if it were an ordinary function (i.e., not main()), because constness is an intergral part of the type (and not just a hint). So f( char const* ) is a different function from f( char* ). If the standard only permits main(), main( int, char*[] ) (and equivalents, so main( int, char** )), and perhaps main( int, char**, <additional stuff> ), then main( int, char const* const* const ) could very well be illegal.

    Most compilers will probably accept it, though.



  • @dkf said in WTF Bites:

    @scarlet_manuka said in WTF Bites:

    Vodablown? Vodabone? Vaderfone?

    I just think of them as “fucking assholes”. It saves a lot of time.

    Also, I don't ever want to be a customer of them again.

    I still remember the call where I had to use a car analogy to explain the Vodafone agent on the other end of the line that there are actually three basic criteria for quality of connection:
    a) Bandwidth
    b) Ping
    c) Packet loss

    The first two were known to her, the third was a complete mystery, hence the car analogy.

    "Sooo, imagine driving on the Autobahn. The number of lanes is the bandwidth, the speed of the cars is the ping... and the number of aliens randomly abducting cars is the packet loss." - "**mumble**" - "No, anything other than 'zero abducted cars' is most definitely not fine."


  • BINNED

    @pjh I guess implementations have historically been non-strict with main, e.g. allowing non-standard void return type.

    @cvi said in WTF Bites:

    @pjh Yeah. I'm actually really curious how legal that is -- the const qualifiers are definitively taken into account when overloading ordinary functions, so from that perspective that main definition is really non-standard (but then again, main is special to begin with).

    Yeah, changing int argc to const int argc doesn't change the function signature, but the argv one should. From a C perspective, it's probably ABI compatible.

    But @topspin is also right ... since the parameter isn't named, making it const all the way seems really unecessary. You can't change the contents anyway when it's unnamed (but as an added bonus, you're now in maybe-not-really-defined--land because you might be using a non-conforming main()).

    But that was mostly a side remark. Even if argv were both named and used (and also ignoring the question of allowed signatures for main), I'd still consider it excessive to const-qualify every level.
    I'd expect char const ** is good enough, char const * * const is pedantic, and what he wrote is supremely pedantic.



  • Anyways, a proper WTF Bite:

    So, we're still saddled with our software from hell. Maybe we'll be able to switch over in the summer, depends on how much extra budget we can shake loose.

    Enter the exam mode, once again. This one is supposed to:

    1. Lock down the PCs (No internet, no USB mass storage, all network shares disconnected)
    2. Connect a special exam network share

    Well, it managed to do number 1 at least. It failed at number 2 for three PCs. Thus I thought to myself: "What if I disable exam mode on those three PCs and then re-enable it again?"

    Turns out that, while you can disable the exam mode for just those three PCs, you then can neither re-enable exam mode nor disable exam mode for the other PCs.

    Luckily, it was possible to at least enable USB access again so I was able to use sneakernet to get the completed exams.

    Today I was more clever (or so I thought) and used another method: You can force the pupils to "login" with their names only which also disconnects the network shares. Then I distributed the exam files to a special folder (yes, "special" as in "back of the bus"-special. Namely: C:\temp) through their UI. It is then possible to collect all files out of that special folder again - I'll receive a folder in my documents library which contains a bunch of folders with the pupils' names (set through the "force login" method) which then contain the files.

    This method has two problems:
    a) If a PC crashes or is shutdown the files are gone because the C:\ drive is wiped upon reboot. I wrote this in red on the first page, stated this very fact repeatedly throughout the semester and proclaimed it loudly at the beginning and at least thrice during the exam.

    Still had one nincompoop where I had to say: "Yes, I said you're done and that you can close Excel now after saving. I, however, did most definitely not say: 'Shut down the computer.' Hmmh? What you're to do now? Well, ... you've got 10 minutes left. Get cracking."

    b) This problem I discovered at the end when I tried to collect the files. Started the collection method. Which crashed out when collecting files from PC #3. Thankfully didn't crash the whole program. Tried again. Crashed again at #3.
    "What's so special about #3? The pupil is named ... René ... waitaminute... youvegottobeshittingme."

    You guessed it: Everything which is not ASCII is of the devil for this method. And as we have a number of pupils with foreign backgrounds, Turkey being particularly prominent, you can imagine how it went on. What with the "ü" being a very popular letter in Turkish.

    Sneakernet to the rescue, once again.

    :wtf:


  • BINNED

    @scarlet_manuka said in WTF Bites:

    So I called my ISP to see if they would replace it for me. The support lady I got was very anxious to believe that it was not a modem fault.

    That's interesting, I always have the exact opposite experience. When I call them, they insist that the modem/router is at fault and I should get a new one. I tell them it's quite definitely not, and I've already tried with a different one. Their disbelief goes on until I agree to them sending me another modem so I can tell them, surprise, that doesn't work either.
    That, coincidentally, is also how you end up with a lot of free* spare, old modems. (*Technically, you have to send them back at some point when you change contracts, but I've only ever had to do that for cable modems)



  • @rhywden said in WTF Bites:

    And as we have a number of pupils with foreign backgrounds, the Turkey being particularly prominent, you can imagine how it went on. What with the "ü" being a very popular letter in Turkish.

    You're German, right? So I would think even your locals have a greater-than-average number of umlauts in their name


  • BINNED

    @hungrier said in WTF Bites:

    You're German, right? So I would think even your locals have a greater-than-average number of umlauts in their name

    Thanks for reminding me, I still have to bring @dkf's legendary cluebat level 4 to IEEE for their complete inability to correctly do something which should be no more difficult than copy-and-paste.
    I've been mentally postponing doing that for weeks: If I ever get around to it I should write a long-ass rant about it.



  • @rhywden said in WTF Bites:

    exam mode

    Why does this still exist when everyone is capable of cheating via the Internet in their pocket?



  • @hungrier said in WTF Bites:

    @rhywden said in WTF Bites:

    And as we have a number of pupils with foreign backgrounds, the Turkey being particularly prominent, you can imagine how it went on. What with the "ü" being a very popular letter in Turkish.

    You're German, right? So I would think even your locals have a greater-than-average number of umlauts in their name

    Yes, there's that as well. But it's usually a low number in the single digit percentages. If you add Turkish people to the mix the percentage goes up to at least 30%.



  • @mott555 said in WTF Bites:

    @rhywden said in WTF Bites:

    exam mode

    Why does this still exist when everyone is capable of cheating via the Internet in their pocket?

    That you can actually spot quite easily. Plus, this only really helps you with material you can learn by rote. If you have to understand what you're doing you're SOL.



  • @mott555 said in WTF Bites:

    @rhywden said in WTF Bites:

    exam mode

    Why does this still exist when everyone is capable of cheating via the Internet in their pocket?

    GSM jammer in the classroom? :trollface:



  • @rhywden When I was in college 10 years ago they had exam mode stuff on everything. They also made you take tests from home/your dorm on your own time so you could have more lecture time. Which meant almost everyone just grabbed their roommate's university-assigned laptop and looked things up on it to cheat.



  • @carnage said in WTF Bites:

    @mott555 said in WTF Bites:

    @rhywden said in WTF Bites:

    exam mode

    Why does this still exist when everyone is capable of cheating via the Internet in their pocket?

    GSM jammer in the classroom? :trollface:

    I'm more particular to that approach here:

    https://www.youtube.com/watch?v=rK8B_7n1IdM



  • @topspin said in WTF Bites:

    @lb_ said in WTF Bites:

    int main(int const argc, char const *const *const)
    

    Don't you think you're slightlyextremely overdoing it with the const qualifiers? Especially considering the paremeter isn't even named.

    I did have the second parameter named but since I wasn't using it, it resulted in a warning about unused variable.



  • @lb_ said in WTF Bites:

    since I wasn't using it, it resulted in a warning about unused variable.

    Our codebase is littered with stuff like

    /* Shut up Visual Studio compiler */
    someUnusedVar = someUnusedVar;


Log in to reply