The Official Status Thread


  • Notification Spam Recipient

    Status: Does the System Usage Report include the fact that the System Usage Report service is sucking a lot of usage of the system?

    0cad7f8d-ae1b-4569-bd35-5c655cadeeba-image.png

    Fuck, man....


  • I survived the hour long Uno hand

    @Tsaukpaetra said in The Official Status Thread:

    Status: Does the System Usage Report include the fact that the System Usage Report service is sucking a lot of usage of the system?

    0cad7f8d-ae1b-4569-bd35-5c655cadeeba-image.png

    Fuck, man....

    I thought you were all about when your robotic slaves computer minions were sucking :thonking:



  • @aitap said in The Official Status Thread:

    @Benjamin-Hall said in The Official Status Thread:

    Not a good sign, especially from non-technical folks.

    I'm trying not to be dismissive of the student. My first dynamic website was a failure in everything except teaching me how web stuff works. Maybe it's inconvenient or it'll result in performance problems if we enter 10000 Semantic MediaWiki data points to display in Maps for MediaWiki. (So if we go with a custom solution, we can at least make it more convenient to enter data.) Maybe if I'm there to steer things, learning will occur without the failure part.

    Academia could be enabling abuse like this, but at least this time, it's between consenting (no, enthusiastic!) adults, and the student gets paid.

    I've had two students under my tutelage that was fast ahead the average developer with raw ability. Sometimes you're surprised by people.


  • Notification Spam Recipient

    @izzion said in The Official Status Thread:

    @Tsaukpaetra said in The Official Status Thread:

    Status: Does the System Usage Report include the fact that the System Usage Report service is sucking a lot of usage of the system?

    0cad7f8d-ae1b-4569-bd35-5c655cadeeba-image.png

    Fuck, man....

    I thought you were all about when your robotic slaves computer minions were sucking :thonking:

    They ain't sucking me! Which is part of the annoyance.


  • 🚽 Regular

    I am easily amused.

    5d90d4c9-2946-4806-ab2f-a3e24e3b7092-image.png

    ⏰ 🚽


  • Notification Spam Recipient

    Status: Trying to distract myself with some AI generated pussies.

    I kinda like the contortions on this one

  • Considered Harmful

    @Zecc There's already C# 11? :belt_onion:

    All these new features are more or less useful, but I can't seem but to think it makes a previously elegant language more arcane and complicated. I guess designers gotta design.


  • Java Dev

    @Luhmann Cat gifs are important.


  • BINNED

    @Applied-Mediocrity said in The Official Status Thread:

    @Zecc There's already C# 11? :belt_onion:

    All these new features are more or less useful, but I can't seem but to think it makes a previously elegant language more arcane and complicated. I guess designers gotta design.

    *laughs in C++*
    *laughs in was never elegant to begin with*
    *starts crying just a little*


  • Considered Harmful

    @topspin said in The Official Status Thread:

    laughs in was never elegant to begin with

    @error_bot xkcd Lisp Cycles


  • 🔀


  • Considered Harmful

    @error said in The Official Status Thread:

    @topspin said in The Official Status Thread:

    laughs in was never elegant to begin with

    @error_bot xkcd Lisp Cycles

    Lisp cycles are recursive. This observation restates some prior observation: that this comic is a restatement of another prior observation: that every significant program contains at least a brain-damaged implementation of half of Common Lisp.


  • Considered Harmful

    Status: :belt_onion:, fuck yeah.

    Dungeon Siege Screen - 0001.jpg


  • BINNED

    @Applied-Mediocrity is that Dungeon Siege?
    *checks file name* Yes. Nice.

    I still remember some nights where we played that from 8pm to 5am, with a case of beer and some laptops. And the weird dreams you get from being exposed to the same repetitive sounds of grind-killing for multiple hours.


  • Considered Harmful

    @topspin That's Dungeon Siege at 3440x1440@120, with 6 GB of ESRGAN upscayledd texture pack, forced trilinear filtering to reduce shimmering (somewhat), doubled shadowmap size, doubled draw distance and full character shadows (not available with original in-game config, but otherwise the engine had them). Sadly, forcing AA creates shadowing issues, but can't have everything. Innit modern tecknology wonderful? 🏆

    Top gameplay, of course. Help your old neighbor clear the basement from orcs smashing all the crates, then proceed to smash all crates and barrels yourself to find tatters, chair leg, 5 gold pieces and a potion, and rob it all. It's just being neighborly.


  • BINNED

    @Applied-Mediocrity said in The Official Status Thread:

    6 GB of ESRGAN upscayledd texture pack

    Dang it, I can't keep track of all these fancy new tech things. That looks fucking impressive.



  • Status On a quixotic quest to get test coverage reports working in a particular project. The tests work. But no coverage report comes out. All the things I've seen mentioned to fix that produce errors or make the tests not actually run. Stupid cobbled-together node environment....


  • Considered Harmful

    @Benjamin-Hall at least you don't have to deal with some stodgy enterprise toolchain. npm is like half the length of gradlew. And no compilation... none. at. all. Truly you are living the future today.


  • Considered Harmful

    @Tsaukpaetra said in The Official Status Thread:

    @izzion said in The Official Status Thread:

    @Tsaukpaetra said in The Official Status Thread:

    Status: Does the System Usage Report include the fact that the System Usage Report service is sucking a lot of usage of the system?

    0cad7f8d-ae1b-4569-bd35-5c655cadeeba-image.png

    Fuck, man....

    I thought you were all about when your robotic slaves computer minions were sucking :thonking:

    They ain't sucking me! Which is part of the annoyance.

    Increase the voltage.


  • Considered Harmful

    @topspin Usually anything I don't (or don't want to) understand must therefore be shit, but this seems to be a worthwhile application of all this AI business. Image upscaling is a task where getting perceptually indistinguishable (but still incorrect) results can be easily afforded.



  • @Carnage said in The Official Status Thread:

    I've had two students under my tutelage that was fast ahead the average developer with raw ability. Sometimes you're surprised by people.

    This one takes programming courses from local FAANG wannabes. I don't know about the ability yet, but the knowledge must be there. We'll see.


  • Banned

    @Zecc said in The Official Status Thread:

    I am easily amused.

    5d90d4c9-2946-4806-ab2f-a3e24e3b7092-image.png

    Oh great, as if there weren't enough versions 11 of languages called C.


  • Banned

    @Applied-Mediocrity said in The Official Status Thread:

    All these new features are more or less useful, but I can't seem but to think it makes a previously elegant language more arcane and complicated.

    It reminds me of C++ in a way. C++ looks very ugly because they fucked up the original design and then had to fix it in a non-breaking way. Most of the additions after 2003 are of the "this is how things should work from the beginning" kind, except they couldn't change how the originals work because old code wouldn't work correctly then. So they had to invent new syntax, and that new syntax was ugly because all the nice options were already taken. This new !! thing is all about retrofitting non-nullable references into a language that traditionally didn't have any way to express non-nullability. And the list patterns is an expression of regret over not making C# a functional language right from the start (back in 2001, it wasn't obvious yet that functional languages are clearly superior).

    Fun fact: Rust doesn't have that problem. You must explicitly opt-in to new language edition on per-project basis, and the compiler understands all previous language editions just fine - they even can link to each other no problem. There are also raw identifiers that allow using function names normally forbidden by the language's grammar, in case the rules ever change in the future (or for interop with other languages with different rules).


  • BINNED

    @Gąska said in The Official Status Thread:

    back in 2001, it wasn't obvious yet that functional languages are clearly superior

    :um-actually: that depends on who you ask.

    Although it does make me wonder about SQL, where the academics have been right from the start (about relational algebra, not the query language itself), and yet a few years ago there's been this NoSQL hype by the can't be bothered to organize our data people.


  • Considered Harmful

    @Gąska said in The Official Status Thread:

    the list patterns is an expression of regret over not making C# a functional language right from the start (back in 2001, it wasn't obvious yet that functional languages are clearly superior).

    It's still not obvious to me now 😕

    The C++ comparison sounds appropriate. Perhaps they're trying to pull the Stroustrup joke - make a massive multi-barreled footgun, a language so arcane and full of gotchas (I mean, there is operator overloading, if somewhat limited and very discouraged, in C#) that when 10 years down some new and better language will have slowly, but definitely carved its way into general use (pray, probably your beloved Rust, finally), much the known world will still run on C#, and experts to untangle the painful mess written in C#17 (which will allow inlining a dialect of Javascript, somehow) will be very highly-paid indeed.



  • @topspin said in The Official Status Thread:

    @Gąska said in The Official Status Thread:

    back in 2001, it wasn't obvious yet that functional languages are clearly superior

    :um-actually: that depends on who you ask.

    Although it does make me wonder about SQL, where the academics have been right from the start (about relational algebra, not the query language itself), and yet a few years ago there's been this NoSQL hype by the can't be bothered to organize our data people.

    And NoSQL has slowly been reinventing SQL, but worse. As is the norm in programming these days.


  • BINNED

    @Applied-Mediocrity said in The Official Status Thread:

    I mean, there is operator overloading, if somewhat limited and very discouraged, in C#

    I always see that one as the weakest complaint. Operator overloading is perfectly fine for any language that has overloading to begin with. And the alternative to overloading is dealing with the mess that is abs, labs, llabs, fabs, fabsl, fabsf, and the resulting bugs.

    There is a shit-ton of complexity, backwards-compatibility, and foot-guns in C++. C++11 made the language much better, while adding more complexity. C++20 is supposed to do the same, but so far I've only seen truly baffling complexity but no success (might change if implementations actually get usable).
    Among all these problems, operator overloading is a feature, not a bug.


  • Notification Spam Recipient

    STATUS I've been struck by the dainty hippo of dispair. Firefox on iPhone is saving gifs as single images. I'll have to find them all again.


  • Discourse touched me in a no-no place

    @topspin said in The Official Status Thread:

    Operator overloading is perfectly fine for any language that has overloading to begin with.

    The problem with operator overloading is that operators have all sorts of implicit semantics (associativity, etc.) and you should only be allowed to overload if you still largely follow those rules and do whole appropriate groups of them at once. Thus if your thing works like a number, having all the number operators is fine, but having just a few of them and having them do I/O is not! Those who ignore Math on the subject of numbers are in for a bad time.

    The implicit typecast operators in C++ are another kettle of fish altogether. It's far too easy to hide something significant in there, producing code that has invisible landmines.


  • Discourse touched me in a no-no place

    Status: Thundersnow earlier, now blazing sunshine. This weather's all over the damn place, except not warm enough to sit out…


  • BINNED

    @dkf said in The Official Status Thread:

    The problem with operator overloading is that operators have all sorts of implicit semantics (associativity, etc.) and you should only be allowed to overload if you still largely follow those rules and do whole appropriate groups of them at once.

    That's largely irrelevant, because "doing stupid things" is orthogonal to operator overloading. If you have a matrix class that does stupid things for + that's no different than doing stupid things for add, except that you force ugly-ass names on everyone else. Likewise, if your equals is not symmetric, that's just the same problem as if your == is not symmetric.


  • Notification Spam Recipient

    Status: Apparently it got cold enough to form ice on my truck's windows.

    Good thing I knew of a little-known lifehack known as "liquid dihydrogen monoxide solvent".

    I suspect a lot of people will be calling out today due to "hazardous conditions"....



  • cvi *types up equation in powerpoint*
    : Here it is: *fugly multiline mess with no alignment*

    So, this isn't that important, and I C'tBA to typeset it properly in LaTeX and export it as an image to PPT, just because the latter is incompetent.

    cvi Let's manually adjust some of the things, e.g., line break it in ways that make some sense
    cvi *positions cursor & presses shift-enter*
    *thinking really hard*
    : Aiieeeeeeee
    : *hard crash*

    Well, that went ... about as expected. Should have known better.

    cvi *launches PPT again*
    : Here are a bunch of files that you can recover
    cvi: OK, open that one, the one with the equation.
    : Sure
    : Btw - what's that equation that you keep mentioning? I don't see anything like that.

    Conclusion: Well, I have now decided that I didn't actually really want to show that equation anyway.


  • Notification Spam Recipient

    @cvi said in The Official Status Thread:

    that equation

    What, this thing?

    011de1c4-7856-457a-bc9c-3ada0a897849-image.png

    Never used it. Apparently it's no good?


  • Notification Spam Recipient

    @Tsaukpaetra said in The Official Status Thread:

    Apparently it got cold enough

    Status: Apparently this internal shed we call a lab is also home to the building's central heating appliance.

    Guess how I found out?

    Sub-Status: Pondering if I should get an air-quality monitoring unit, the smell is... not pleasant.



  • @Tsaukpaetra It's not totally useless. Simple stuff tends to work OK, like a few greek symbols here and there. It accepts a subset of LaTeX commands (e.g. greek letters, \alpha ..., and a few symbols, \cdot, \sum, ... [IIRC]), which is convenient. It sucks at actual layout, e.g., if you need to align things across lines. (FWIW- I'm not exactly on the newest PPT version either.)

    I'd use beamer if it weren't for the fact that reusing slides & exchanging slides with colleagues is actually useful at times.


  • 🚽 Regular

    I felt like I was going insane.

    I used git checkout -b feature-branch instead of git checkout -b feature-branch origin/feature-branch, so I didn't actually check out the branch with $feature, but rather created a new branch with the same name as the remote while keeping the same code checked out.

    giiiiiiit! :shakes-fist:


  • Discourse touched me in a no-no place

    @Zecc said in The Official Status Thread:

    I felt like I was going insane.

    I used git



  • @Applied-Mediocrity said in The Official Status Thread:

    @Tsaukpaetra said in The Official Status Thread:

    Status: TIL there's a Cuphead Show.

    Seems to be a new craze of utterly shit ideas to see what will bomb harder. Disco Elysium, Cyberpunk, Fallout, Mass Effect, Dragon Age, Tomb Raider, Ass Creed, Division, Far Cry, even the old Splinter Cell all are getting shows this or next year.

    The Uncharted movie, too. What would've been great: a high-budget Uncharted movie in 2007 or thereabouts, starring Nathan Fillion. But now it's 15 years later and Fillion is too old, so they cast the kid from Spider-Man who looks like he's in eighth grade. And supposedly, even aside from the casting the rest of the movie is dog shit



  • @Tsaukpaetra said in The Official Status Thread:

    @cvi said in The Official Status Thread:

    that equation

    What, this thing?

    011de1c4-7856-457a-bc9c-3ada0a897849-image.png

    Never used it. Apparently it's no good?

    The Word 2007 version was pretty good. Dunno about any other versions


  • Considered Harmful

    @topspin said in The Official Status Thread:

    That's largely irrelevant, because "doing stupid things" is orthogonal to operator overloading

    Technically doing stupid things is irrelevant to any particular language feature. Why then we tend to discourage certain anti-patterns and code smells? I mean, who's talking. I write :wtf: myself, and I've used operator overloading in C#. Even the implicit typecasts @dkf warns from, namely, serializing certain structs to byte arrays (and the other way round). It has side effects of pinning unmanaged memory and leaking it if it throws. Very awesome.

    But really, outside of math problems which has loads of operators I cannot imagine a good use case. In C# you can't define your own. Say, you might want the × for cross product, because a subset of Unicode is supported, but nope. So it's even less useful than you probably believe.


  • BINNED

    @Applied-Mediocrity said in The Official Status Thread:

    But really, outside of math problems which has loads of operators I cannot imagine a good use case.

    That is already a good use case I wouldn't want to live without. Also strings (arguably). And vectors/arrays/lists/... (any type of container). And smart pointers, iterators, functors. ...

    It's no different from overloading other functions, except that you're using the natural name for it.


  • Discourse touched me in a no-no place

    @topspin said in The Official Status Thread:

    It's no different from overloading other functions, except that you're using the natural name for it.

    The problem comes when the code no longer “does what it says it does”. OK, not in the precise sense of not having semantics that the compiler can figure out, but rather in the sense that when you look briefly at the code, you can't determine what it is doing on the surface level. You end up asking “is that + an addition or is there something else going on here?” Hidden type conversions are worse, at least potentially (except when simple widening conversions), as they end up doing significant work yet have no actual representation in the immediate code. That's the landmine effect: things that can blow up despite being invisible. At least with a function/method call or an explicit cast, you can see that something is happening and know that you've possibly got to check what that actually entails.

    Invisible hidden magic is evil as it makes things difficult to debug.


  • BINNED

    @dkf except that + is no more invisible than add is. It's literally just a different name.
    If you have an object of class Foo that has a +, it's obiously overloaded because it's not a primitive. The name tells you just as much as add would.
    Doing something unexpected in the implementation there is no different in either case, and not knowing what the functions of a class you're using is also the same in either case.



  • @dkf said in The Official Status Thread:

    Invisible hidden magic is evil as it makes things difficult to debug.

    Not going to take a position on operator overloading, but this. In other contexts. I have to deal with Vue.js, which is full of invisible hidden magic. And have been bitten by JS's love of doing invisible type coersion...



  • Status Writing lots of tests. At this point, they're body-less, just a description of what the code is currently doing (the test runner marks those as pending). I'll eventually go and fill in the details, but it's a form of documentation.

    Question for the opinionated masses. Say you had a very large, nigh-unto-god 'controller' class for legacy reasons. It's got bunches of public functions, mostly unrelated (except that they're all called by the various API routes, usually 1 per route and exist in "groups", mainly CRUD-like). How would you organize the unit tests that exercise those functions? Note: At this point, I can't actually refactor the class, I can just write tests.

    There are (mostly) clean groupings (these ones deal with concept X, those with concept Y) and they only rarely call each other (but more frequently call shared private functions) .

    One test file per grouping? One really really big one for the whole class, with nested suites inside?

    It's purely cosmetic, as far as I can tell. But this is already becoming a really big file...without the bodies for about half the tests, and with only about 45% coverage.


  • Discourse touched me in a no-no place

    @Benjamin-Hall said in The Official Status Thread:

    But this is already becoming a really big file...without the bodies for about half the tests, and with only about 45% coverage.

    Separate test files then. You can factor out shared setup code from the tests.

    When is a file too long? When it's length is enough to cause you problems. Yes, it's subjective. 😜



  • @Benjamin-Hall Tests on my library are grouped together by class. They're also built into the library as a diagnostic tool. Does that go in the bad ideas thread?



  • @Zenith said in The Official Status Thread:

    @Benjamin-Hall Tests on my library are grouped together by class. They're also built into the library as a diagnostic tool. Does that go in the bad ideas thread?

    So in this case, one really big group (because the class has a bazillion different methods to be tested)?

    Our unit tests are built into the containers (so they could in principle be run on build under Jenkins and the build failed if they failed, even though that doesn't happen right now). So I don't see that as too much of a code smell.

    For a library designed to be used independently...I'd probably do it in a separate project (confidence...low). But make them available, to be sure.


  • Notification Spam Recipient

    status: Dwarf Fortress is on Steam?!?


Log in to reply