WTF Bites



  • @BernieTheBernie said in WTF Bites:

    When the script was able to run all the commands, it reported "success".
    Even when some of the commands had returned an error: because that did not prevent it from running all the commands.
    You had to investigate its log file to see these errors. Actually, all of the commands could have returned an error, and the script still reported "success".
    Health Care IT....

    👩🏻⚕: Good news! Your operation was a success.
    👨: You... you mean that's it? I'm cured?
    👩🏻⚕: Whoa! I just meant "you're still alive".


  • Discourse touched me in a no-no place

    @BernieTheBernie said in WTF Bites:

    @Rhywden said in WTF Bites:

    WTF of my day: User complained that duplicating a course in Moodle never completes and is stuck at 100%. Looked in the task log and saw this:

    9154332a-d617-4fc9-96b9-4aa68ebc6ab4-image.png

    "Ergebnis: Erfolgreich" translates to "Result: Successful".

    :wtf_owl:

    :um-actually: Reminds me of the backup utility of a Hospital Information System.
    It was a script which contained many commands.
    When the script was able to run all the commands, it reported "success".
    Even when some of the commands had returned an error: because that did not prevent it from running all the commands.
    You had to investigate its log file to see these errors. Actually, all of the commands could have returned an error, and the script still reported "success".
    Health Care IT....

    3268651c-0bde-40bb-b5fb-67ff6519d22b-image.png


  • BINNED

    @Rhywden said in WTF Bites:

    Sometime back someone very clever at the post office decided that if you want to send something to a smaller village in a district, you instead have to use the district's main town instead.

    :sideways_owl: :sideways_owl:
    Does that work differently up in the north?? Because here in the south-west I've never heard of such a thing.


  • Discourse touched me in a no-no place

    @topspin said in WTF Bites:

    Does that work differently up in the north?

    Might be some local post office official deciding that reality was too complicated and that he'd impose some sense and regularity on it. Some of the weirdest bureaucratic rules I've come across at WTF-U turned out to be impositions by a secretary for purely personal religious reasons; strange rule-but-not-a-rule stuff doesn't faze me any more.


  • Java Dev

    The classics are the best.

    error-noerror.png


  • BINNED

    @Atazhaia with a name like “the crap”, what did you expect? 🍹


  • Java Dev

    @Bulb said in WTF Bites:

    UK is rather special in the regard that people tend to use postal codes for general purposes. In most countries people use just city (+ quarter if needed) + street + number and only bother with postal codes, where they even exists, when actually sending stuff via post.

    NL does the same thing. The common flow to enter a physical address on a website is that first the user enters the postal code, house number, and suffix, then the website displays the corresponding city and street names.

    I do not know if postal code distribution is (still) sane.


  • Notification Spam Recipient

    Status: Installing node because why not.

    root@namp:/mnt/temp # pkg install node
    Updating FreeBSD repository catalogue...
    FreeBSD repository is up to date.
    All repositories are up to date.
    The following 2 package(s) will be affected (of 0 checked):
    
    New packages to be INSTALLED:
            libuv: 1.42.0
            node: 17.0.1
    
    Number of packages to be installed: 2
    
    The process will require 37 MiB more space.
    8 MiB to be downloaded.
    
    Proceed with this action? [y/N]: y
    [namp] [1/2] Fetching node-17.0.1.pkg: 100%    7 MiB   3.9MB/s    00:02
    [namp] [2/2] Fetching libuv-1.42.0.pkg: 100%  117 KiB 119.5kB/s    00:01
    Checking integrity... done (0 conflicting)
    [namp] [1/2] Installing libuv-1.42.0...
    [namp] [1/2] Extracting libuv-1.42.0: 100%
    [namp] [2/2] Installing node-17.0.1...
    [namp] [2/2] Extracting node-17.0.1: 100%
    =====
    Message from node-17.0.1:
    
    --
    Note: If you need npm (Node Package Manager), please install www/npm.
    

    Ok, sure, let's get npm too...

    root@namp:/mnt/temp # pkg install www/npm
    Updating FreeBSD repository catalogue...
    FreeBSD repository is up to date.
    All repositories are up to date.
    The following 3 package(s) will be affected (of 0 checked):
    
    New packages to be INSTALLED:
            gmake: 4.3_2
            node16: 16.15.1
            npm: 8.5.2
    
    Number of packages to be installed: 3
    
    The process will require 50 MiB more space.
    10 MiB to be downloaded.
    
    Proceed with this action? [y/N]: y
    [namp] [1/3] Fetching npm-8.5.2.pkg: 100%    2 MiB   1.9MB/s    00:01
    [namp] [2/3] Fetching node16-16.15.1.pkg: 100%    8 MiB   4.0MB/s    00:02
    [namp] [3/3] Fetching gmake-4.3_2.pkg: 100%  416 KiB 425.8kB/s    00:01
    Checking integrity... done (1 conflicting)
      - node16-16.15.1 conflicts with node-17.0.1 on /usr/local/bin/node
    Checking integrity... done (0 conflicting)
    Conflicts with the existing packages have been found.
    One more solver iteration is needed to resolve them.
    The following 4 package(s) will be affected (of 0 checked):
    
    Installed packages to be REMOVED:
            node: 17.0.1
    
    New packages to be INSTALLED:
            gmake: 4.3_2
            node16: 16.15.1
            npm: 8.5.2
    
    Number of packages to be removed: 1
    Number of packages to be installed: 3
    
    The process will require 13 MiB more space.
    
    Proceed with this action? [y/N]:
    

    :headdesk: So the version of npm installed is only for node 16. Why?



  • @PleegWat said in WTF Bites:

    @Bulb said in WTF Bites:

    UK is rather special in the regard that people tend to use postal codes for general purposes. In most countries people use just city (+ quarter if needed) + street + number and only bother with postal codes, where they even exists, when actually sending stuff via post.

    NL does the same thing. The common flow to enter a physical address on a website is that first the user enters the postal code, house number, and suffix, then the website displays the corresponding city and street names.

    Yeah, Netherlands is the other âť„. IIRC that's the only two countries where the map provider even had the postal code layers, and the only two where the geocoding by postal code worked.



  • @Tsaukpaetra said in WTF Bites:

    :headdesk: So the version of npm installed is only for node 16. Why?

    Because excavator. That's why.



  • @Bulb said in WTF Bites:

    UK is rather special in the regard that people tend to use postal codes for general purposes. In most countries people use just city (+ quarter if needed) + street + number and only bother with postal codes, where they even exists, when actually sending stuff via post.

    In France we tend to use postal codes as a shorthand to the city (for mail and for statistical purposes: for example, stores often ask for your postal code if you register for their "repeat business discount" program).

    You'll never actually see a letter with only the postal code and no city name, but on most French websites where you're prompted to type in an address, the site will fill the "city" field automatically once you type in a postal code.



  • @Tsaukpaetra said in WTF Bites:

    Status: Installing node because why not.

    ...

    :headdesk:

    I hope you'll learn your lesson, young man.



  • @Tsaukpaetra said in WTF Bites:

    Status: Installing node because why not.

    Is there a message size limit here on this forum?

        node: 17.0.1
    

    Reason #6232: always use an even-numbered major version (ie 16 here, or 18 if you are especially masochistic). Odd ones are basically just a noob trap.

    :headdesk: So the version of npm installed is only for node 16. Why?

    Reason #876: If your distribution/os package manager maintains separate packages for node and npm, do not use it. Ever. Theoretically the package maintainers (Linux or BSD) should be able to juggle the co-dependencies correctly, but in reality they aren't. Use a âť„ manager like nvm, or maybe even just download the archive from https://nodejs.org/.


  • Discourse touched me in a no-no place

    @Kamil-Podlesak said in WTF Bites:

    If your distribution/os package manager maintains separate packages for node and npm, do not use it. Ever.

    That reminds me of the godawful mess in a bunch of other languages. Or rather the godawful mess inflicted by redistributors. Even more fun when they insist on making really ancient versions default because of some snowflake software somewhere, despite the fact that almost everyone else has moved on. Mismatched versions are just the diarrhoea icing on the turd cake.


  • Notification Spam Recipient

    @Kamil-Podlesak said in WTF Bites:

    Is there a message size limit here on this forum?

    I believe the default is 32kb


  • ♿ (Parody)

    @Rhywden said in WTF Bites:

    @Arantor Germany has similar fun. So, we have the usual differentiation - you have the state, the districts and then the cities and villages belonging to this district, with one town usually being the nominal main town for the district.

    You often see similar things here, though they don't really cause problems. It's usually due to someone looking up the city name based on the zip code, which will be wherever the main post office is for the zip code.

    I guess it might if you had duplicate street names but I have never heard of that happening.


  • Considered Harmful

    @Tsaukpaetra said in WTF Bites:

    @Kamil-Podlesak said in WTF Bites:

    Is there a message size limit here on this forum?

    I believe the default is 32kb

    (looks for public domain Wittgenstein translations)


  • Considered Harmful

    @Tsaukpaetra said in WTF Bites:

    @Kamil-Podlesak said in WTF Bites:

    Is there a message size limit here on this forum?

    I believe the default is 32kb

    I kept running into this while rendering SVGs for e.g. Minesweeper, because the forum only supports inline data URIs for SVG (and that incurs bloat for base64 encoding). To get around this, I had to implement a bunch of Stupid Compression Tricks.


  • Java Dev



  • @Gribnit eh, he was a beery swine who was just as sloshed as Schlegel.


  • Trolleybus Mechanic

    Our client was struggling to make a request to our API. Eventually he asked for a code snippet to make it work. In PHP.
    Ok, I wrote a small library, packed it into a composer package and sent the repo URL.

    'It doesn't work with our version of PHP'
    'What's your version?'
    '5.6'

    :rimshot:

    That's the same client who requested we don't write anything in PHP, because it's not prestigious enough.


  • Notification Spam Recipient

    @error said in WTF Bites:

    that incurs bloat for base64 encoding

    Wish it wouldn't...


  • Considered Harmful

    @Tsaukpaetra said in WTF Bites:

    @error said in WTF Bites:

    that incurs bloat for base64 encoding

    Wish it wouldn't...

    It's really fucky how the forum breaks uploaded SVGs. I think it was for fear of some kind of XSS. If we could get SVG attachments working, I could do a lot more with the SVG renderer, but no one cares and :kneeling_warthog:


  • Notification Spam Recipient

    @error said in WTF Bites:

    no one cares

    Pull requests recepted?



  • @Kamil-Podlesak said in WTF Bites:

    Use a âť„ manager like nvm, or maybe even just download the archive from https://nodejs.org/.

    Make a docker image with the version of node and npm you want to use and don't ever let it anywhere close to the host system.

    @dkf said in WTF Bites:

    That reminds me of the godawful mess in a bunch of other languages. Or rather the godawful mess inflicted by redistributors.

    Meanwhile ancient C and C++ libraries continue to compile with addition of a missing #include here and there (over time, gcc split the system headers into smaller bits so some definitions used to get accidentally pulled by unrelated headers and don't any more) and if they compile, generally tend to also work.

    Even more fun when they insist on making really ancient versions default because of some snowflake software somewhere, despite the fact that almost everyone else has moved on. Mismatched versions are just the diarrhoea icing on the turd cake.

    Well, the compilers and interpreters are there primarily to build and run the other software. Developers will tend to use their language's repositories anyway.


  • Trolleybus Mechanic

    @boomzilla said in WTF Bites:

    I guess it might if you had duplicate street names but I have never heard of that happening.

    Fun fact: Warsaw has dozens of duplicated street names after it swallowed nearby towns in the '90s-'00s. You must put the zip code or add the name of the district in braces (same as the swallowed town) or your mail will be misdirected.



  • @error said in WTF Bites:

    To get around this, I had to implement a bunch of Stupid Compression Tricks.

    See? Spending time on WTDWTF is not a waste of time, it's a gain of experience :half-trolleybus-br:



  • @sebastian-galczynski said in WTF Bites:

    Our client was struggling to make a request to our API. Eventually he asked for a code snippet to make it work. In PHP.
    Ok, I wrote a small library, packed it into a composer package and sent the repo URL.

    'It doesn't work with our version of PHP'
    'What's your version?'
    '5.6'

    :rimshot:

    That's the same client who requested we don't write anything in PHP, because it's not prestigious enough.

    Context for those who like me, don't follow PHP: A quick Google search on PHP version says this:

    PHP version 7.4 is the most used version.
    Stable release 8.1.7 / 9 June 2022

    So 5.6 is hilariously obsolete even by old PHP standards.



  • @Medinoc it changes the situation to understand that there is no PHP 6, and 5.6’s longevity was extended specifically because of dramatic b/c breakage in 7.0.

    5.6 went EOL in December 2018.

    Current releases get 2 years general support plus a year of security-only fixes and a new version of the language comes out in November each year. We’re on track for 8.2 this November, having had 7.0 through 7.4 then 8.0 and 8.1.


  • Discourse touched me in a no-no place

    @Bulb said in WTF Bites:

    Meanwhile ancient C and C++ libraries continue to compile with addition of a missing #include here and there

    That's OK, until you run across some library that wants an older version of the language because it uses a now-retired feature in an unusual way (often in a way that was actually non-standard but which worked fine with a particular implementation) and so you now have to have several versions of the standard library in the binary at once. Which is where the crazy lies.

    It's possible to make stuff like that work, but it's really awkward. More so if you've got someone on the team who insists on static linking everything.


  • BINNED

    @Arantor said in WTF Bites:

    Current releases get 2 years general support plus a year of security-only fixes and a new version of the language comes out in November each year. We’re on track for 8.2 this November, having had 7.0 through 7.4 then 8.0 and 8.1.

    Now I'm imagining this situation for C++, meaning that C++17 would be EOL by now and C++20 would be next year.
    I'm currently using 17 for internal stuff, bust mostly still support 11 or 14 otherwise. Haven't even touched 20 yet because the things I wanted to try weren't universally implemented in all of gcc/clang/msvc.



  • @topspin we have the situation that there is only really “the PHP interpreter” rather than several, but I think it moves a little fast for those of us who don’t necessarily have the resources to keep things updated.

    Like… my own stuff is reasonably future-proofed but when 7.4 goes out I need to spend time (and client money) getting their stuff updated because the frameworks do trendy shizz that doesn’t play nice.


  • Trolleybus Mechanic

    @Arantor said in WTF Bites:

    dramatic b/c breakage in 7.0.

    I wouldn't call that dramatic. If you don't write idiotic hacks (like relying on foreach-by-reference changing the internal pointer etc) and your code was written in the last decade, there were approximately zero problems. I personally had to change 1 line in a 100k+ line project.

    The only major change was the removal of mysql_query() and friends (the infamous driver that caused injections, because it couldn't bind params correctly, obsolete since ca 2005) and the posix regexp engine which nobody used, because PCRE is superior. It's not like somebody was writing normal code in 5.6 and suddenly had to rewrite everything for 7.0 due to bc breaks. Far from it.


  • ♿ (Parody)

    @topspin said in WTF Bites:

    @Arantor said in WTF Bites:

    Current releases get 2 years general support plus a year of security-only fixes and a new version of the language comes out in November each year. We’re on track for 8.2 this November, having had 7.0 through 7.4 then 8.0 and 8.1.

    Now I'm imagining this situation for C++, meaning that C++17 would be EOL by now and C++20 would be next year.
    I'm currently using 17 for internal stuff, bust mostly still support 11 or 14 otherwise. Haven't even touched 20 yet because the things I wanted to try weren't universally implemented in all of gcc/clang/msvc.

    My current compiler (though we need to upgrade our RHEL soon) is g++ 4.8.5, which allegedly supports C++11, though I'd be shocked if any of our code uses anything there. It's pretty stable at this point and not worth updating just to end up breaking something.


  • Discourse touched me in a no-no place

    @boomzilla said in WTF Bites:

    My current compiler (though we need to upgrade our RHEL soon) is g++ 4.8.5

    We use a much more recent version at work, but that's because it finally generates code for our platform as compact as the ARM commercial compiler but without needing to mess around with license servers. (We also use it in C mode — as gcc — because there are things in our code that are outright incompatible with C++; the languages have diverged.) Clang can't build our code at all; it doesn't support the standard language extensions we use.


  • BINNED

    @boomzilla same here. We got a lot of modules for more recent compilers, but RHEL 7's system default is still 4.8.5, which thankfully is good enough for full (I think) C++11 support. RHEL 6's version was 4.4.7 and that was just unusable, so I had to do who knows what to install the scl dev toolset. But since $customer so far hasn't complained I finally got to silently drop support for that stone-age shit.

    Although I haven't experienced any backwards compatiblity problems when using newer gcc versions, besides occassionally being spammed with a crap-ton of new (useless) warnings.



  • @sebastian-galczynski oh you sweet summer child. The removal of mysql alone is why PHP extended the EOL of 5.6 for years after the introduction of PHP 7.

    You have no idea how much crap out there doesn’t use frameworks, doesn’t use abstractions etc. - the platform I was maintaining in 2016-2017 was about 80% of the way to using MySQLi but we ended up writing a polyfill for all the mysql_ functions in the end, it was awful. I assume they finished the migration to newer versions but I wouldn’t be surprised if the polyfill I wrote is still in actual use.

    Bear in mind when I started poking around I found actual use of mysql_escape_string. In 2016. They didn’t even have version control from 2011 to 2015!

    Hell, I was still supporting a PHP 5.5 app until July 2020, with extended server support from Canonical because they hadn’t signed off the upgrade of the underlying platform from the 2014 edition to the 2019 edition even a year in…


  • đźš˝ Regular

    @Arantor said in WTF Bites:

    a polyfill for all the mysql_ functions in the end

    not_actual_mysqli_real_connect()

    Preemptive: yes, I know "polyfill" implies having the same name as the original, thank you very much.



  • @Zecc said in WTF Bites:

    not_actual_mysqli_real_connect()

    mysql_pretend_escape_string()


  • Trolleybus Mechanic

    @Arantor said in WTF Bites:

    the platform I was maintaining in 2016-2017 was about 80% of the way to using MySQLi

    Why not PDO?



  • @sebastian-galczynski because the 50 servers had MySQLi installed but not PDO and installing that on Windows servers by hand is a pain. (I didn’t pick them. I did however make them not be fundamentally broken.)

    But it’s also not too hard to go from MySQL to MySQLi when you have an existing chunky application, unlike ripping it out and going PDO which would have yielded zero benefits (because none of the queries were parameterised) and for a 1.1mloc codebase where clients didn’t pay directly for feature dev or maintenance (just a SaaS figure a month), I’d never have convinced anyone to go for a full scale conversion to PDO anyway.


  • Considered Harmful

    @Arantor such software very release much quality



  • @Gribnit there is an entire Lounge thread about it.


  • Considered Harmful

    @Arantor said in WTF Bites:

    @Gribnit there is an entire Lounge thread about it.

    Is it the same one with the sausages?



  • @Gribnit no.


  • Considered Harmful

    @Arantor said in WTF Bites:

    @Gribnit no.

    Quit leaking Lounge content, yeesh. That was an entire bit.



  • @Gribnit is it a leak if I am providing info about my own writing?


  • Considered Harmful

    @Arantor said in WTF Bites:

    @Gribnit is it a leak if I am providing info about my own writing?

    No. But the bit is coupled to the sausages as well! BAHAHAHAHA!


  • Discourse touched me in a no-no place

    @Gribnit said in WTF Bites:

    the bit is coupled to the sausages

    Enough of this sausage-fest!



  • @dkf said in WTF Bites:

    (often in a way that was actually non-standard but which worked fine with a particular implementation)

    Ah... dragons.


Log in to reply