#programmers-off-topic

1 messages · Page 36 of 1

safe dragon
#

at least from the bevy folks who obsess over compile times it's pretty clear that the apple silicon ones run laps around almost anything else

#

and windows is just far behind

#

even when you try to match the linker used

#

fun stuff

#

sounds perfect

pliant snow
#

what jetbrains products are free now

#

rider, the rust one, pycharm

#

whatever the fuck aqua is

lethal walrus
#

oh rider stole the .cs extension

rotund violet
lethal walrus
#

oh, there's ads in my visual studio installer

cinder karma
#

The corner of "shit for documentation" and "15 min compile times" make me want to walk into the sunset

rotund violet
#

Though those other 4 bubbles could certainly be hiding more chum-buckety stuff.

lethal walrus
#

oh yeah it's by fair the best form of advertising possible

safe dragon
#

they'll replace these with ads for kfc someday

rotund violet
#

Nah, Microsoft considers themselves too high-brow for that. (And please carefully note the words "considers themselves".) Oh, they'll degenerate into commercial advertisements alright, for sure, but it'll be for other crap they sell, or sponsor, or invest in.

#

Like SharePoint, or their latest AI chatbot abortion.

cinder karma
#

My work laptop screen is flickering

#

I want to throw this thing out thr window

sand frost
#

Would that make it a…windows laptop? SDVpuffersquee

rotund violet
#

A broken windows laptop.

floral parcel
#

how old is the laptop?

cinder karma
#

Less than three years

safe dragon
#

punch it

floral parcel
#

turn it on and off again.

safe dragon
#

if it's turned off the screen doesn't flicker

cinder karma
#

Ah ha! Firmware update

safe dragon
#

update: fixed flickering screen, screen is now always half on half off

cinder karma
#

Well, screen flicker not fixed

#

Grumvled

safe dragon
#

rest in peace

rotund violet
#

I hate to say it, but usually a flickering screen is an indication of either a failing display or failing graphics hardware.

#

Of course, you being the electrical engineer, maybe you can pop it open and find what is almost certainly a blown capacitor or loose connection.

safe dragon
#

I have had it before as a software issue once when there was some weird desync where the monitor though freesync was off while the OS thought it was on

#

or the other way around I forget

#

doubt that's what's going on though

#

probably hardware

cinder karma
#

So the exact flicker is funky

#

It is actually placing some other program on the screen for a frame or two

safe dragon
#

huh

#

your programs are z-fighting

cinder karma
#

Anyways, I think I'll have some time Friday or Saturday to do some laptop surgery

#

I also emailed our help desk

rotund violet
#

And it manifests less as "flickering" and more as "display turns off for about a second".

devout vault
#

I'm using a library for deep cloning for my game project, and it's attempting to do the static fields/properties too??? (And failing, causing bugs)

#

What. The. Heck.

safe dragon
#

huh

#

I've never actually tried to clone anything with static fields before

cinder karma
#

Cloning makes no sense on statics no

#

Although. Crumble. Do you know what a classmethod is

#

(I also tried to do an abstract class in python today for the nine millionth time.)

safe dragon
#

uh the name sounds straightforward

#

oh it's a python thing

rotund violet
#

This documentation adventure has also had me trying out so many programs over the past 2 weeks that are sort of almost good enough, like 85% of the way there and the other 15% is a complete trainwreck.

#

I can clearly remember a time when I used to be really impressed by almost every open-source project out there. Now, when I get lucky enough to not have one utterly crash and burn under the most basic scenarios, I'm just waiting for the other shoe to drop as soon as I try to do anything more subtle.

median tide
candid pilot
#

there's like abc.ABC and abc.abstractmethod but i assume you've already messed w those

#

and it's really not the same

cinder karma
#

Yeah, I just did a base class that throws if you call any of the methods directly

rotund violet
#

Explosive abstraction.

thin estuary
rotund violet
#

Copy #[derive(Clone)] as a source generator.

thin estuary
#

that would be cool, but i need mine to work with arbitrary types, as i'm working in a modded scenario, and people could bring in more types that need to be deep-copied

safe dragon
#

reflection based cloning would be the only way to go then right

thin estuary
#

i'm emitting custom copy implementation for each type. if there's a no-arg ctor, i use that, and if not, i ask for an uninitialized object of the given type, whatever the method for that was

#

and then i proceed to copy each field's value

pliant snow
#

...do i actually need to set up tree-sitter? Have I not really been using it?

safe dragon
#

in nvim?

#

just :TSInstall the one you need

#

I've never needed more than that I think

#

alternatively like the "ensure_installed" thing

pliant snow
#

Is :TSInstall baked in, or do I need a plugin

#

I installed a plugin, but idk if I need it lol

safe dragon
#

hmmm

#

maybe it is

pliant snow
#

oh i got it working

#

there is indeed more colors

safe dragon
#

good job

#

so you've also been missing out on everything else treesitter does

pliant snow
#

It was a dependency for the neovim package, so I assumed it was enabled by default somehow

#

what else does treesitter do

safe dragon
#

I forget what it comes with tbh but since treesitter is just an AST parser I think it has a few extra things like being able to fold sections

#

I assume a lot of other plugins rely on it but I imagine you'd have gotten a warning if you had any of those

pliant snow
#

I think they've installed it as a dependency, but the behavior wasn't exposed

#

oh yeah, better indending, folding, huh

cinder minnow
#

Why does SSIS have to be such a pain. I hate it. Especially SSIS I didn't write.

safe dragon
#

huh... I've used sql server for years and hadn't even heard of ssis

#

we had a lot of import/export procedures but I don't think we used SSIS at all

cinder karma
#

I regret talking to IT

#

That was an hour lol

pliant snow
#

Here's a challenge to you Rustaceans

#

All I want is a function that will accept either a u8 or u16 and an index. The function will clear the bit at that index, and return the new value. How would you do it

rotund violet
#

num_traits?

#

Or your own trait I guess. That's my intuition but maybe you already tried that and ran into some issue.

pliant snow
#

This is more of an open question, I was curious what people would think

rotund violet
#

I admit I'm just going with my gut here and I'm not sure if there are any issues specific to bitshifting, but it sounds pretty similar to what I did in https://github.com/focustense/mina/blob/14cb3d056e408388d95ee8f377aabd1fb570e38c/core/src/interpolation.rs#L41

(The current implementation does involve some messy macro stuff, but that's because it's meant to be used with external types and I ran into issues with the orphan rule; if I only cared about two types, I would definitely try num_traits or a local trait first.)

pliant snow
#

ayyy that's very similar to what I had at first. I'm doing this for a guide, so I wasn't sure if that was too confusing, but I think I might be changing my mind...

rotund violet
#

Generic math is not really confusing, just very niche. Tends to only come up in library code. So, probably not likely to get readers saying "I don't understand this", but rather likely for many to say "that's interesting, I guess, but how does it help me?"

#

Inventing simplified, scaled-down but still somewhat realistic or useful scenarios is by far the hardest part of writing docs for me.

safe dragon
#

all math is scary

sand frost
#

Math is fun!

half moss
#

Hello everyone, I'll be very quick.
A friend and I have created a tool that allows you to view your save's progression.
We made a post on the Stardew Valley forum if y'all want more information about it!
https://forums.stardewvalley.net/threads/stardew-dashboard-a-user-friendly-companion.32123/

Here is the project source code: https://github.com/NicolasVero/stardew-dashboard
If you enjoy using Stardew Dashboard and want to support our work, please leave us a star! We’d really appreciate it, thank you! 😄

rain apex
#

this is nice but u probably want to post it in one of the sdv channels

half moss
#

a moderator told us to post it here, I don't know if I'd be allowed to put it anywhere else

rain apex
#

this is the channel where ppl who dont play sdv hang out and nerd about programming stuff monS

#

im not saying you r break any rules and im not a mod, just saying it'd have more reach in an on-topic channel

half moss
#

I'll ask for authorisation and put it there if it's good, I'll also leave it here because it's above all a programming project. Thanks for your feedback

safe dragon
#

cool stuff

pliant snow
long verge
#

Really cool project tho

half moss
rain apex
#

i had this persistent issue where things like vscode segfaults unless i run in root

#

turns out it's cus i was using LD_PRELOAD jemalloc LilyDerp

devout vault
#

Me with half my projects (mainly my mods)

ivory shadow
#

Fix your warnings, casey. Make Visual Studio happy. 🙂

sand frost
#

I can be devils advocate: keep them! Let the little yellow triangle keep its job on the screen!

devout vault
#

I mean, I hide them, so I'm not sure I'm satisfying either of y'all

#

And that's with only a few of my mods loaded

sand frost
#

If they really wanted you to fix it, surely it would have stopped you from compiling 😛

rain apex
#

Do you also have 999+ unread notifs

sand frost
#

Nah I’m too nosy for that

#

I’ll read it and then never reply, instead 😛

devout vault
sand frost
#

That’s actually impressive

devout vault
sand frost
#

I’ve seen the horror show that your comment sections are

#

53 is way lower than I expected

devout vault
pliant snow
#

whats it like to be a war criminal

devout vault
#

That seems a bit extreme 😛

#

Most of the emails I get aren't stuff I'd actually want to open, and most of my apps I don't even use

vagrant basalt
#

She says like that excuses it

austere comet
devout vault
#

Becasue I don't think about them

#

And I transfer my phone data when I get a new one

sand frost
#

I read all my emails and every so often go on a spam deleting spree

#

But it does take a certain amount of time

vagrant basalt
#

Before I got sick I regularly had a completely empty inbox because I organised my emails so much

austere comet
#

The trick is actually to turn off email notifications

sand frost
#

I love the “just turn off notifications” trick, I’ve banned most of my apps from making noise or giving me banners even

austere comet
#

There’s like, maybe 5 apps thst I’ve let give me notifications

#

The rest don’t deserve notifications

devout vault
#

I don't get notifications from email, just the little badge

#

The only notifications I pay attention to are texts and discord - I really need to disable notifications for some other apps that just use them for marketing

austere comet
#

I only get notifications from a select few discords, I’ve got 99% of discord servers muted

devout vault
#

Me too

safe dragon
#

it's fine honestly

#

the biggest issue we ran into was that the project kept being unable to compile whenever another CVE was opened on one of the nuget packages

#

it's nice that we were forced to know about CVEs that way instead of hiding them but it wasn't ideal for our build pipelines

sand frost
#

What’s a CVE?

safe dragon
#

essentially reports on security vulnerabilities found

sand frost
#

Ah, I see

safe dragon
#

so really anything from a ddos vulnerability to remote code execution exploits will get a cve

#

so far I've never experienced one that actually tangibly affected one of our products

#

lately there's been a lot of CVEs made for microsoft's serialization packages

#

kept breaking our build pipelines smh

cinder karma
#

I used to be an inbox zero person

#

I wish I was still an inbox zero person

devout vault
#

Yeah, I used to be too. But once it got out of control I gave up

sand frost
#

I hate outlook so so much but learning the filters was a big improvement

pliant snow
#

i spent like 15 minutes yesterday trying to find the dialog of how to embed an image in outlook

safe dragon
#

I've never used outlook before...

sand frost
#

Lucky

safe dragon
#

I start a new job on friday, maybe my luck will run out

cinder karma
#

Your luck will run out

cinder karma
pliant snow
#

I have never once put a document on sharepoint, sent it to people, and had them have the right permissions to view it

rain apex
#

outlook keeps putting interview scheduling mail into spam for me

worn remnant
cinder karma
pliant snow
#

my favorite is when you upload a picture to teams that you've uploaded somewhere else "oh hey! That picture has already been uploaded? Want me to upload it again?" I... yes?

safe dragon
#

I will be discovering the pain of sharepoint soon enough myself I'm afraid

sand frost
#

I hate hate hate how outlook makes me do some attachments in sharepoint and then the upload just never finishes

#

I always have to switch over to share point or one drive or whatever the hell it calls itself to upload separately and then “attach”

cinder karma
#

I had to copy the docx to somewhere else on my hd

#

To send it

ivory shadow
pliant snow
#

Must not abuse bot to send more notifications to people...

devout vault
#

Yeah, I don't really answer DMs from people I don't know, so I have 7 DM requests pending (and 9 spam ones)

#

I should clear them out

ivory shadow
#

I am usually like "eeeeh" looking at them until they're like a couple months old and then I go "Well I'm sure they realize I'm not gonna reply by now delete"

#

As if that makes any sense

sand frost
#

I just delete them immediately to remove the red thing

#

But I’m also sure I get less SDVpuffersquee

devout vault
#

Surprisingly most of the ones I get aren't from SDV server people. They're just spam bots on other servers

sand frost
#

Mine are usually just “hey can you give me personal debugging help” which is just a no

devout vault
#

That's completely fair, I'd be the same way

sand frost
#

Oh I also get spam bots! Sometimes I’m not sure and I’ll ping them publicly here

#

But if they never reply then I assume spam

devout vault
#

I got one DM over a month ago of someone wanting a build of the latest SpaceCore from github, because they didn't want to build it themselves

#

There's a reason I haven't released that version of SpaceCore yet - it breaks marriage schedules 😅

sand frost
#

Maybe they are yearning to break their game

devout vault
#

(Though I commented out the 0 schedule fix so it won't do that anymore, since I doubt I'll get around to fixing it in time for 1.6.9)

sand frost
#

They’re just wishing for the day when their spouse stays home all day

rain apex
#

getting dm notif is scary so mine have been off for years

devout vault
#

I wish you could keep them on, but turn them off for group chats unless pinged

sand frost
#

Oh I’m just too technologically bad to figure it out if i don’t have notifs

#

I do DM with people I know, just not like random people I’ve never talked to

rain apex
#

i think the main impedement i ran into while attempting to build spacecore is the few not-no-github-but-in-sln projects

#

wish there was some way to have a local sln

sand frost
#

(Occasionally someone actually reads my bio and asks if we can chat and it’s pretty much always someone I definitely know!)

#

Can’t you just unload everything when you build?

#

Besides SC

#

That’s usually what I start with when I mess with Casey’s repo

rain apex
#

yea i did that it worked out Bolb

#

but the big wall of red and yellow was scary

ivory shadow
#

So has anyone else used generic static classes before? I just used one and it feels kinda dirty, lol

#
public static bool TryGetEnum<TEnum>(string[] array, int index, out TEnum value, out string? error, [CallerArgumentExpression("value")] string? name = null) where TEnum : struct {
    return TryGetEnumHelper<TEnum>.TryGetEnum(array, index, out value, out error, name);
}

private static class TryGetEnumHelper<TEnum> where TEnum : struct {

    private delegate bool OldTryGetEnumDelegate(string[] array, int index, out TEnum value, out string? error);
    public delegate bool TryGetEnumDelegate(string[] array, int index, out TEnum value, out string? error, string? name);

    public static readonly TryGetEnumDelegate TryGetEnum;

    static TryGetEnumHelper() {
        var method = typeof(ArgUtility)
            .GetMethod(nameof(ArgUtility.TryGetEnum), BindingFlags.Static | BindingFlags.Public)?
            .MakeGenericMethod(typeof(TEnum));

        if (method != null) {
            var parameters = method.GetParameters();
            if (parameters.Length == 5) {
                // New Version
                TryGetEnum = method.CreateDelegate<TryGetEnumDelegate>();

            } else if (parameters.Length == 4) {
                // Old Version
                var del = method.CreateDelegate<OldTryGetEnumDelegate>();
                TryGetEnum = (string[] array, int index, out TEnum value, out string? error, string? name) =>
                    del(array, index, out value, out error);
            } else {
                TryGetEnum = (string[] array, int index, out TEnum value, out string? error, string? name) => {
                    value = default;
                    error = "Invalid TryGetEnum method signature.";
                    return false;
                };
            }

        } else
            TryGetEnum = (string[] array, int index, out TEnum value, out string? error, string? name) => {
                value = default;
                error = "TryGetEnum method not found.";
                return false;
            };
    }
}
#

For 1.6.8/1.6.9 dual compatibility since Pathos' otherwise top notch rewriters doesn't like generics.

rain apex
#

this is basically same as a generic method in a regular static class right

#

just for the specific usecase of not exploding rewriters

ivory shadow
#

I'm basically just making the type system do my caching for me.

rotund violet
#

If it has the correct semantics then it's a valid (and oft recommended) alternative to double-checked locking.

#

It's definitely more common in my C# coding to use regular static classes with generic methods, but that's mainly for dealing with types not known at compile time. If you know the types at compile time then whatever floats your boat.

cinder karma
#

I like how Khloe is planning to support both 1.6.8 and 1.6.9

#

While I'm planning on supporting neither

ivory shadow
#

I just want to release an update before .9 comes out and not need to immediately drop another update

cinder karma
#

1.6.9 is like the 4th

ivory shadow
#

And I just about have an update ready today lol

#

I guess I could just delay it

rain apex
#

i vote for slacking

sand frost
#

You could release for 1.6.9 and let people figure it out

cinder karma
#

Lol

rose pumice
#

Is this channel only about c#?

safe dragon
#

nope

austere comet
#

this channel is questionably about programming at all sometimes

safe dragon
#

yeah it's simultaneously a programming channel and just the regular off topic channel for modders

sand frost
#

This channel is probably more about Python than C# some of the time

#

And by Python I mean complaining about Python’s quirks

pliant snow
crystal wren
#

Technically, it's more about Rust than any other specific language.

A place for off-topic programming chatter (i.e. stuff not related to Stardew Valley). #sebs-basement #codeybois #lost-rustaceans

pliant snow
#

where do we put the found-rustaceans

cinder karma
#

Found rustaceans are very rare

#

Most rustaceans cannot find a job doing rust

#

So we drift, sadly

safe dragon
#

Last time I checked indeed there were no rust job listings in my country at all

#

at least when NFTs were all the rage you had some

#

C# and Java devs are set though

#

I saw over a dozen listings just for a Spring framework web dev

rain apex
#

is there anyone pushing for rust jobs

#

rust always seemed like a hobby language

safe dragon
#

it's mostly being pushed in security critical fields

#

places that normally used C++

#

but even C++ jobs seem fairly uncommon here

fleet wren
#

who probably have had their share of horror stories regarding C++ memory issues
So if you want to get Rust jobs, get hired as a C++ dev and backdoor Rust in

rotund violet
#

A lot of Android is Rust now. (The OS itself, that is, not the apps.)

#

I'd say the opportunities are out there, but they are drowned out by the vast ocean of garbage "at least it's not tech support" programming jobs.

safe dragon
fleet wren
#

this but unironically

safe dragon
#

it'd probably help to have experience with C++ for rust regardless

#

not the worst method

supple ether
#

I think it's mainly just an age thing at this point. Rust is still young, relatively speaking, and any new thing takes a while to start seeping into enterprise software. (unless it's a Javascript framework, apparently.)

cinder karma
#

For a young Lang, it's going places

rotund violet
#

JS frameworks in enterprise software? That's surprisingly forward-looking; I usually expect to see Java, SQL and maybe a little COBOL. The typical dino-corp is terrified of anything front-end.

cinder karma
#

I feel that

#

My front end is a Jupiter notebook on a good day

#

On a bad day it's physical leds

pliant snow
#

I still don't really understand the appeal of Jupyter notebooks tbh. I guess if you're doing a lot of graphing or visualizations it makes sense, but I always just turn to a formal script

cinder karma
pliant snow
#

what is NI

cinder karma
#

I use a jupypter notebook for fast iterative development

rotund violet
#

It may be shit, but NI has the best documentation (and APIs, and so on) of any company in that industry, as far as I know. Everything else is way worse.

cinder karma
#

Oh I know lol

ivory shadow
#

I am so tired of JavaScript.

supple ether
#

I like fiddling with frontend stuff, but SPAs are evil and typescript is only marginally an improvement on js

Browser tech was never meant to support web apps

#

I get why it's popular but it's still horrible

rotund violet
cinder karma
#

I only want to program in bespoke languages no one has heard of

#

Please support me in my endeavors

devout vault
#

Real programmers program in lolcode

safe dragon
cinder karma
#

I do not want to be a game developer

#

I cannot see many other paths I'm less suited for

#

Or have fewer skills in the area of

devout vault
#

You've modded before, you definitely have some

cinder karma
#

Zero

safe dragon
#

a little amusing for someone with the mod author role

cinder karma
#

Negative

#

Minus infinity

#

What mod author role

#

What mods

safe dragon
#

this definitely has nothing to do with me knowing nothing about sdv modding

devout vault
safe dragon
#

the beef programming language is surprisingly active

cinder karma
#

All I program in is rockstar

rotund violet
#

I kind of agree that modding is quite some distance from game dev. Although it is less distance than, say, enterprise dev or embedded systems is from game dev.

cinder karma
#

So I can be a rockstar developer while drinking rockstar

devout vault
#

Hence why I said "some" and not "a lot"

cinder karma
#

I get weird when I have to think of pipelines that are of any length lol

safe dragon
#

AoC is coming up so normally it would nearly be time to pick some random funky programming language to force myself to use for it

#

probably not this year

devout vault
#

Woah, Beef lets you add extension variables to types?

#

WANT

rotund violet
#

Someone actually made a language named Rockstar? Geez, we are a sad bunch sometimes...

safe dragon
#

Rockstar is seemingly everything

#

it's a secondment/recruitment company here

devout vault
safe dragon
#

unlike beef weirdly enough

rotund violet
#

Oh, I assumed it was a joke/meme language. But as a joke/meme, it's still pretty on the nose.

cinder karma
#

Dylan beattie is amazing

rotund violet
#

Who?

cinder karma
#

(He made the Rockstar language as a joke. I also love his tech parodies)

supple ether
candid pilot
#

ugh there's no way to create a reference in python?

#

the most i can find is weakref

rotund violet
#

A reference in python is just a... variable? Python doesn't really distinguish between value and reference types.

candid pilot
#

nvm

candid pilot
#

alright spent way too long making something silly. here's out vars in python

#

patching.get_out_var is surprisingly little code for the couple hours it took to write. was a lot of fun though, so idm at all!

#

2 out vars

#

it also returns the actual return value for the function

tender heath
#

So we're getting ready for the 1.6 update for console and mobile, what are some things I can do to prepare?

cinder karma
#

This is the part of the discord that pretends stardew doesn't exist

#

Half the time

halcyon viper
#

Y'all got any leetcode tips?

#

I suck at DP

safe dragon
#

never did them tbh

candid pilot
pliant snow
#

What's the benefit of doing that?

candid pilot
#

it allows you to get the final state of a variable when the function finishes running. It allows you to pass arguments and get their state no matter the changes the function does on them. It works like the whole out var thing in C# but it's more complicated bc python sucks

safe dragon
#

when do you use out variables

#

I'm not particularly fond of them

lethal walrus
#

like getting a value out of one

candid pilot
#

mhm. and they're useful in harmony patches in C# too

worn remnant
#

the Collection.TryGet pattern uses them a lot

safe dragon
#

they're nice for like Try[Something] functions yeah

rain apex
#

I think in py u would normally just return all the values in a tuple

#

Dynamic typing blobcatgooglyblep

candid pilot
worn remnant
#

you can return tuples and structs and so on in C# but i sometimes do a TryGet-style bool with an out var

rain apex
#

Yeah but u can't return tuples of arbitrary type and length

worn remnant
#

it's all vibes. what do i feel like doing today? i don't have a ton of style rules

candid pilot
#

same

rain apex
#

So doing optional out is kind of eh

#

Also the whole boxing thing confuses me LilyDerp

rain apex
#

In python it's valid to have return "thing", 1 and return False, "foo", 3 in same function

#

Whether this is good style is different discussion but it is a lot more flexible than c# tuple/struct

fleet wren
rain apex
#

I shud do aoc with rust this year

candid pilot
#

yeah. this one just adds references to the arguments mentioned in the function call, builds a tuple, and returns it. the actual return value of the function is the first item in the tuple, the rest are the specified out vars in order

rain apex
#

My last attempt at rust project was years ago and it didn't go very well tbh

#

possibly because the attempt was based on a previous py project so there was a lot of bolbwaitwhat as I attempted to translate the design

ivory shadow
#

Returning a tuple is slower than an out parameter last I recall, in c#

candid pilot
#

ok now you can return false to stop the execution of the rest of the function

safe dragon
#

with the added goal of having a total runtime of all days combined under 1 second

#

ended up at like 350ms I think

#

could not have done it without the rayon crate

#

aka the parallel iteration crate

fleet wren
#

my last AOC was 2021 and I did entirely in rust
(well, almost entirely, I did it up to day 18, after which the actual holidays started and I never bothered again. then I kinda just stopped lmao)

pliant snow
#

the AoC special

cinder karma
#

Rayon is amazing

sand frost
#

Is rayon a programming language or a yarn? 😆

cinder karma
#

Not a language

safe dragon
#

it's so good

cinder karma
#

Based on cilk

safe dragon
#

oh good a different programming language

pliant snow
#

its what the people want

safe dragon
#

it's true

#

always need a fresh supply of new languages to sacrifice to the AoC gods

#

I've been waiting for 2 years for the Roc programming language to have its first versioned release so I can try it out for AoC

#

alas

#

I still see them completely change some fundamental bit of syntax every once in a while

cinder karma
#

Cilk is a c/++ runtime?

#

I doubt I'll have time this year to do it well but I'll try for something I guess

safe dragon
#

I probably won't have much time

#

considering I start at my new job tomorrow

pliant snow
#

starting on a friday

#

two days to recover if its a rough day

cinder karma
#

Hmm

#

What about zig

#

I've always wanted to do a polyglot but that takes time I don't have

#

Polyglot us when you pick a different language each day

rotund violet
#

I still feel like Zig is the CoffeeScript of systems languages, thinking it is so much cleverer than it is and suffering from a constant inferiority complex over Big Brother Rust, but I'm waiting for history to prove me wrong.

cinder karma
#

For me, AOC is taking a language out for a test drive

#

Also I don't have mods to maintain anymore

#

Life is good

safe dragon
#

really just starting on the first work day of the month

#

which happens to be a friday

safe dragon
#

but maybe

#

maybe I'm wrong and my new job is super chill

pliant snow
#

zig might be interesting to look at... everyone loves it

#

may i recommend the geat Nim language to anyone

safe dragon
#

you may

pliant snow
#

a taker i see

#

an enlightened soul

safe dragon
#

oh I wouldn't go that far

#

you just may recommend it

#

who knows

#

maybe I will use nim

pliant snow
#

im looking at the zig syntax and it doesnt immediately win me over

safe dragon
#

gotta love a language that's interesting but with a syntax I just dislike

fleet wren
#

My impression is that it's kinda Rust-but-not-really. I don't see any other problems (granted I haven't coded any serious programs with it)

pliant snow
#

I think it's for C users who want a better syntax but only want to live in low level world

safe dragon
#

there's a whole category of programming languages that comes down to "C/C++ but hopefully better"

#

most blatantly probably Carbon which just calls itself an experimental C++ successor

rain apex
#

what if they just make c std lib itself better

fleet wren
#

Carbon is designed to be a straght up drop in C++ replacement yeah

pliant snow
#

Im not sure that inspires confidence

safe dragon
#

ther's only so much you can do to make a language better when everything that already exists needs to continue to work

fleet wren
#

The Typescript to C++'s Javascript

safe dragon
#

nah

pliant snow
#

Better than C++, but still has to support all of C++

safe dragon
#

Carbon has no intention to support c++ syntax

fleet wren
#

the analogy's flawed, but the idea is bidirectional interop

safe dragon
#

you can't do what you can do with typescript where you just change the extension name and bam it works

rain apex
#

i thought typescript gets transpiled back to js first

fleet wren
#

yeah, the idea is that you gradually swap carbon modules into in your current cpp project

safe dragon
#

I have no stake in what all these C++ "successors" are trying to do but I will watch it from a distance

#

I have never used C++ or C and I probably never will outside of just messing around in my free time

rain apex
#

my experience with C++ has mostly been in cmake

#

whyyounolink.png

safe dragon
#

that's one thing that stopped me last time I wanted to try C++ due to some library. I couldn't even figure out how to make a C++ project with that library

#

there's like a lot of competing build tool things

#

but I didn't have the energy or time to figure out how the fuck C++ manages dependencies

rain apex
#

well if ur on windows then u can just use microsoft's stuff for c++

safe dragon
#

I am not

rain apex
#

then cmake with g++ or clang

safe dragon
#

my only experience building C++ projects is being told to run some command with like cmake or ninja or whatever and then I spend 15 years of my life waiting for it to compile

#

it's mental how slow C++ things compile. When I install something from the AUR and realize it's building some C++ project I'm often tempted to just stop it

rain apex
#

wheres the xkcd

safe dragon
#

compiling the entire cosmic desktop in rust took less time than building some random ass third party minecraft launcher one time

pliant snow
#

and rust isnt even that quick

safe dragon
#

nope

#

one of the biggest complaints people have about rust is its compilation times

#

but at least in my experience C++ makes it looks extremely fast by comparison

#

idk if I could configure something to make the AUR use mold as the linker

#

presumably that would help a lot

pliant snow
#

symlink ldd to mold

safe dragon
#

that sounds like a great idea and nothing would ever go wrong

pliant snow
#

im sure the owners made them compatible in that way

#

I do have sudo symlinked to doas because why not

rain apex
#

what r the pratical implication of that

pliant snow
#

so i dont have to have sudo installed but yet scripts that want it can still have it (so long as they dont use some flags, which most dont)

#

why does microsoft teams insist on having some Markdown spec that only they use, drives me nuts

rotund violet
#

CMake definitely has to be my least favorite build tool ever.

fleet wren
#

didnt D had a GC
that kinda makes it not really a C++ successor right

rotund violet
#

I understood it to be some weird hybrid, where there is GC but you have some level of control over it, and can explicitly free objects, use RAII style, etc.

cinder karma
#

Interesting

cinder karma
#

The nerd posted again!

rain apex
#

oh thats the machine which makes the tasty freeze dried durian DokkanStare

leaden marsh
#

I really want to try durian

sand frost
#

they sell frozen durian at costco

rain apex
#

wait you never had durian bolbphase

#

i don't like the actual fruit very much (it's squishy) but i enjoy various derivatives

leaden marsh
rain apex
#

that is true it is less intense when mixed with other stuff

#

i feel like durian is fairly common in asian supermarkets tho, usually sold as just the flesh rather than whole thing

leaden marsh
#

It was out at my local Asian market (or maybe the delivery service refused to bring it)

uncut seal
#

Where the hell does that come from?! I need preview features enabled to make an abstract static interface method, and it worked for literal months, but today everything is red after a sudo dnf update, and I have no idea what packages I have to up/downgrade to fix this

#

nvmd, .Net Install tools VSC extension wasn't activated for some reason...

#

Nope, didn't fix it, still red

rotund violet
#

This is why I never update anything.

uncut seal
#

Ok, so a dotnet build (unsuccessful because I have a bunch of WIP methods) fixed the include errors, but now data structures like List and Dictionary don't exist

#

also this

rotund violet
#

Is that a lambda arrow =>? It looks like some crazy Unicode arrow.

uncut seal
#

Ok, I had deleted Implicit Usings in the csproj by mistake, everything seems fine now

supple ether
uncut seal
#

honestly don't remember, lemme check

#

yup that's it

supple ether
#

Yeah that's what I use too

fleet wren
#

Same

#

I looked into one other font with ligatures and it looked nice but it wasn't free, so FiraCode it is

rain apex
#

say is there ligature for += and -=

pliant snow
#

it's funny how people are either 100% on board with ligatures, or hate them

#

i personally dont like them at all lol

uncut seal
#

i like comparators and arrows, but there are some that I'd like to disable but it seems like I would have to get special font editing software to do that

worn remnant
#

i like ligatures just fine for typesetting, but i am fully against them for code

fleet wren
#

my tolerance for ligatures may have something to do with my math major background

#

(that was a lie. It was back in high school. it has nothing to do with it. I like pretty symbols)

cinder karma
#

I hate ligatures

rotund violet
#

They're pretty great for putting icons into content, docs, etc. Don't think I'd want to use one in my code editor though, I need to see what's really there.

safe dragon
#

first day at new job is over

#

my life escaping outlook and SharePoint have come to an end

rotund violet
#

Meaning, you can no longer escape them and are stuck with them? Or you no longer have to spend time escaping them?

supple ether
#

I used to hate ligatures but they've grown on me

rotund violet
#

Aw man, now you and Atra are going to be back and forth for hours about the evils of SharePoint...

#

Outlook isn't really so bad in a corporate setting, at least. I'd never allow it into my home, but in an office? Eh.

safe dragon
#

I'm hoping I won't see it very much

#

as far as Microsoft programs go I think the one I will become painfully familiar with is Microsoft Access

#

not to develop in but to look at to figure out what its replacement needs to do

rotund violet
#

Access upgrades fairly easily into SQL Server as long as there isn't too much Forms BS.

#

If they used Access to build the GUI, then... yeah, better make sure the coffee machine is in good repair.

safe dragon
#

it's all gui, the database is oracle

#

it was a very slow application

#

at least I won't develop for it

#

in fact they haven't developed for it in like 2 years

rotund violet
#

They used Access to build just the GUI? Nuts.

safe dragon
#

yeah

rotund violet
#

I just wonder what the exchange was like in the room where they made that decision. "We just spent a million dollars (Euros, whatever) on Oracle licenses and consulting, what should we use to build the UI? How about this cheap, ugly, slow, and generally awful Microsoft app that you get for free with Excel?"

safe dragon
#

idk it happened 30 years ago

#

they used excel before that I believe

rotund violet
#

I would build a time machine to stop 30-years-ago me from making that decision.

safe dragon
#

I wouldn't be surprised if they only reason they use access is that it lets you copy paste from excel

#

that's future me's problem

#

API work has priority

#

enterprise never fails to surprise me

rotund violet
#

If they knew how to make smart decisions, you'd be out of a job.

cinder karma
#

I just wish the bean counters would tell me what half this shit means

#

Fucking accounting lol

#

At my last place they didn't make engineers do accounting lol

#

We just bought shit and someone else figured out what category it went in

safe dragon
#

who makes engineers do accounting

#

that’s just a bad idea

#

they’re gonna fuck it up

#

and then you’re just going to end up having to get people to fix all the mistakes

#

I had to do a course in bookkeeping for my previous job since we had to write a lot of procedures around journalizing transactions, handling invoices etc

#

miserable stuff to do I’ll be honest

cinder karma
#

Exactly

#

Well

#

The accountants will yell at me on Monday probably

safe dragon
#

something to look forward to

ivory shadow
#

Get revenge. Make the accountants program something.

rotund violet
#

That might be unwise. Someone might have to use that program someday.

ivory shadow
#

It'll be fine as long as you don't put "temporary" in the name in any form.

safe dragon
#

never call something a proof of concept

#

been there

#

proof of concepts are only that till a client is interested

rain apex
#

what do u call it instead

safe dragon
#

and then your cobbled together terrible proof of concept becomes the real product

safe dragon
#

be exceptionally vague about what it even does

#

really I've just learnt that depending on your company's culture you just should never build something with the idea that it's a proof of concept

#

build as if it's going to be a real product immediately

#

go in with the expectation that whatever shit you just wrote will actually go live someday

rotund violet
#

Mockups in pencil sketch and comic sans style are an OK way to get started. Normies understand visuals only; if it looks like a half-assed prototype then they'll treat it as one.

safe dragon
#

just copy paste the Figma design into your code

rotund violet
#

lol, the demo is literally a screenshot, complete with redlines.

#

Even better, take a photo with your phone, then paste that into the prototype.

thin estuary
#

hey, let's say a game that currently uses MonoGame switches to FNA, while the MG version of it already had a modloader and mods built for it. do you think it would cause any problems? like, broken assembly references?

cinder karma
#

Yes

thin estuary
#

so both FNA and MG pretending to be XNA doesn't matter in this case at all?

devout vault
#

Admittedly I don't see a lot useful in this context

thin estuary
#

i don't think i'm too worried about feature cross-compatibility

devout vault
#

There's probably a few small API differences

cinder karma
#

Actually I'm not sure anymore

#

Gotta test that, I assumed it would matter

thin estuary
#

yeah, i assume they sharing the namespaces only helps if you rebuild everything, but otherwise would still cause problems

cinder karma
#

Right yes

#

The assembly name matters

#

Maybe if you lied about the assembly name

thin estuary
#

...would i have to rewrite FNA libs with Cecil to identify as MonoGame libs? rofl

devout vault
#

You could add compat rewriters to this other game's mod loader too

#

For the mods themselves

#

Definitely doable, that's what my original prototype back in Farmhand days did (in addition to Windows vs Mac/Linux SDV assembly name fixing)

ivory shadow
#

In unrelated C# stuff, I am baffled by this exception I've gotten from a non-Stardew modding project. I hope the user who reported this to me gives me more information soon because, in general, what the fuck lol System.AccessViolationException: Attempted to read or write protected memory. This is often an indication that other memory is corrupt. at Interop.BCrypt.BCryptHash(UIntPtr hAlgorithm, Byte* pbSecret, Int32 cbSecret, Byte* pbInput, Int32 cbInput, Byte* pbOutput, Int32 cbOutput) at System.Security.Cryptography.HashProviderDispenser.OneShotHashProvider.HashDataUsingPseudoHandle(String hashAlgorithmId, ReadOnlySpan`1 source, ReadOnlySpan`1 key, Boolean isHmac, Span`1 destination, Int32& hashSize) at System.Security.Cryptography.HashProviderDispenser.OneShotHashProvider.HashData(String hashAlgorithmId, ReadOnlySpan`1 source, Span`1 destination) at System.Security.Cryptography.SHA256.HashData(ReadOnlySpan`1 source, Span`1 destination) at System.Security.Cryptography.SHA256.HashData(ReadOnlySpan`1 source) at System.Security.Cryptography.SHA256.HashData(Byte[] source) at WTSync.Helpers.ToSha256(String input) in /work/repo/Helpers.cs:line 30
Relevant method: ```csharp
internal static string ToSha256(this string input) {
if (string.IsNullOrEmpty(input))
return string.Empty;

    byte[] buffer = Encoding.UTF8.GetBytes(input);
    byte[] digest = SHA256.HashData(buffer);

    return BitConverter.ToString(digest).Replace("-", string.Empty);
}
#

I'm assuming that they're running in a weird environment like proton on Linux and there's funky memory stuff happening that I just have no control over.

safe dragon
#

that’s odd

rain apex
#

Aren't these all C# builtins

ivory shadow
#

Yes, they are.

#

I'm probably just going to swap to the older API that calls SHA256Managed even though it's not nearly as elegant. Since it isn't calling an external API like bcrypt, it'll hopefully not do... whatever is happening here, lol

safe dragon
#

it definitely feels like an error that’s more like something completely unrelated broke and it happened to result in an error here

ivory shadow
#

Also I should mention that the string it's hashing can't be longer than 42 characters, so there's not any funky bcrypt-can't-handle-big-strings stuff happening.

rotund violet
#

If I had to guess, I'd say there's something very fishy about the string going in, perhaps a pointer that has been unsafely cast to a string.

ivory shadow
#

Yeah, I've had thoughts that it's related to the string being weird, but on the other hand, wouldn't it then be Encoding.UTF8.GetBytes that throws? Very odd.

#

I'm like 99% sure it's a proton bug at this point. I have 1-2k users of this mod and only this one report. And the user who reported it has rustlang repos on their github.

rotund violet
#

Does Encoding use Span in the current versions?

#

It might not allocate a new array.

ivory shadow
#

World's only arch linux user to miss an opportunity to tell us they use arch

safe dragon
#

as an arch user I'm not surprised

oblique sable
#

I just got iridium for the first time, what do i do with it first?

#

Bruh wrong channel

pliant snow
#

That is off topic to SDV modding.... it might be allowed

rain apex
#

nah iridium is also a switch xnb manager making it on topic \lh

safe dragon
#

it's also just a chemical element which makes it a good topic for this nerdy place

#

iridium seems to ahve a pretty good number of uses

#

including a form of radiation therapy

#

though idk what you'd do with it at home...

fleet wren
#

apparently the most corrosion resistant metal

safe dragon
#

clearly we should coat every boat and bridge in iridium

pliant snow
#

should coat ourselves in iridium

sonic mirage
#

iridium ring making a lot more sense suddenly

sand frost
#

Iridium is used in certain battery technologies

#

I don't remember why but someone told me once "it's the best element for this application"

cinder karma
#

Lack of corrosion

rotund violet
#

I swear, every single goddamn Windows update... this time, Microsoft helpfully decided for me that I want Edge to open automatically every time I boot up. Because I'll Get To Browsing Faster!

cinder karma
#

Today we hate printers

safe dragon
safe dragon
#

I've now had to learn teams and I gotta ask why it launches so extremely slowly

#

it somehow boots up several times slower than anything else on the system

cinder karma
#

IT is currently trying to figure out why it takes 40+min to print a 1.47mb/35 page pdf

rotund violet
#

Restart the printer?

safe dragon
#

is it a really intricate color print

rotund violet
#

Works for me sometimes.

safe dragon
#

printers are an enigma

cinder karma
#

It is not a very intricate color print

safe dragon
#

it's just having a case of Mondays

cinder karma
#

I'm having a case of the mondays

leaden marsh
#

Stardew is having a case of the Mondays

sand frost
#

Well, today's the day for having a case of the Mondays, being Monday!

safe dragon
#

it's only Monday for 12 more minutes

sand frost
#

wdym clearly it's monday for 6 hrs 12 min more 😛

safe dragon
#

smh

cinder karma
#

My printer seems to be ignoring me now

#

We have downgraded from "takes 30 minutes to print"

sand frost
#

printers are full of demons

safe dragon
#

this seems to be a toxic relationship

cinder karma
#

To "only prints the first page for some reason."

sand frost
#

had to stop a Zoom call recently so I could print over wifi

#

Since with Zoom call running I guess it didn't have enough wifis

safe dragon
#

but does it print the first page 30 times

sand frost
#

I do not know how wifis work, this is solely a conclusion based on observation

safe dragon
#

that shouldn't make sense but printers are mysterious beasts

sand frost
#

the minute I hopped off the zoom it printed

safe dragon
#

I don't own a printer and it's better that way

cinder karma
#

This is the work printer

safe dragon
#

unfortunately it's considered bad practice to throw away the work printer

rotund violet
#

I really wasn't joking about rebooting the printer. Mine often eats print jobs until it's rebooted.

sand frost
#

Mine never does that, but I have to wrestle the wifi for a little bit first a lot of the time

#

I really like my printer actually, it's been a solid companion

#

I got it during covid and it's been with me through several moves, long periods of neglect, and only infrequent toner replacement

rotund violet
#

This one's got a lot of literal scuff marks. Not sure how they got on a printer.

#

Protip: If you have a choice in printer colors, don't get white.

sand frost
#

I did not have a choice but luckily my not-choice was grey and black

regal ingot
pine tusk
#

I hate printers

jade sphinx
#

Is there any mobile mod for gold?

fleet oriole
#

Is there a way to tell ILSpy to not use ternerary operators? (cause they are not super readable when there are like a million nested ones!)

#
string text = (housemate ? ((gender == Gender.Female) ? Game1.content.LoadString("Strings\\StringsFromCSFiles:SocialPage_Relationship_Housemate_Female") : Game1.content.LoadString("Strings\\StringsFromCSFiles:SocialPage_Relationship_Housemate_Male")) : (isCurrentSpouse ? ((gender == Gender.Female) ? Game1.content.LoadString("Strings\\StringsFromCSFiles:SocialPage_Relationship_Wife") : Game1.content.LoadString("Strings\\StringsFromCSFiles:SocialPage_Relationship_Husband")) : (entry.IsMarriedToAnyone() ? ((gender == Gender.Female) ? Game1.content.LoadString("Strings\\UI:SocialPage_Relationship_MarriedToOtherPlayer_FemaleNpc") : Game1.content.LoadString("Strings\\UI:SocialPage_Relationship_MarriedToOtherPlayer_MaleNpc")) : ((!Game1.player.isMarriedOrRoommates() && isDating) ? ((gender == Gender.Female) ? Game1.content.LoadString("Strings\\StringsFromCSFiles:SocialPage_Relationship_Girlfriend") : Game1.content.LoadString("Strings\\StringsFromCSFiles:SocialPage_Relationship_Boyfriend")) : ((!entry.IsDivorcedFromCurrentPlayer()) ? ((gender == Gender.Female) ? Game1.content.LoadString("Strings\\StringsFromCSFiles:SocialPage_Relationship_Single_Female") : Game1.content.LoadString("Strings\\StringsFromCSFiles:SocialPage_Relationship_Single_Male")) : ((gender == Gender.Female) ? Game1.content.LoadString("Strings\\StringsFromCSFiles:SocialPage_Relationship_ExWife") : Game1.content.LoadString("Strings\\StringsFromCSFiles:SocialPage_Relationship_ExHusband")))))));
        ```
Like, I don't know if this is the most ternerary thing ever, but it's likely up there!
safe dragon
#

this isn't even ternary operators anymore this is evil

pliant snow
#

gotta keep rechecking if their gender is female, wouldnt want to save that off

night estuary
#

How to edit? this problame?

rain apex
pliant snow
#

lol what

worn remnant
#

i love it. i wouldn't use it (or maybe i would turn it down some), but i love it

shadow wing
#

me deleting my bad code:

safe dragon
#

it's like neovide's funky animated cursor but 10 times more flashy

marble jewel
safe dragon
#

clean code

devout vault
#

Me after deleting all my bad code:

#

(all my code is good)

#

(Though that file in particular is the end of the decompiled Game1.cs from a few versions ago - I don't have any 16.5k line files)

safe dragon
#

shame

#

10k+ line files are my favorite

sand frost
#

just merge your whole repo into one file

safe dragon
#

I don't really think my entire codebase for the API I'll be working on in the next few months will reach 10k lines

sand frost
#

are you allowed to put two classes into one file?

rain apex
#

In most languages yeah

marble jewel
#

files/folders are just a convention for organization. In C# you can write your whole program in a single file, and not even use classes at all.

cinder karma
#

Got it

#

Making all the code on magnetic tape

safe dragon
#

C# people do love putting every single class in their own file though

ivory shadow
#

Best I have is a 6,500 line file

marble jewel
safe dragon
#

no method should ever have more than three lines of code or it's not clean

worn remnant
#

change that to "levels of indentation" and i almost agree with it

safe dragon
#

that would be a somewhat reasonable idea

#

I don't like it

worn remnant
#

(i do also think that "good code" and "clean code" are false ideals. working code is good code)

rain apex
#

my code needs unhealthy amounts of margin from the left side, it's a security blanket \s

worn remnant
#

obviously that's oversimplifying and there's room to get rid of shlemiels and make things easier to understand (indentation!) and so on

safe dragon
#

maintainable comprehensible working code is good code...

#

I have seen some terrifying but technically functional code

devout vault
safe dragon
#

yup

#

you're not gratz

marble jewel
safe dragon
#

I bet you don't even define an interface for absolutely everything you make regardless of whether you have even the slightest intention of doing anything with it

marble jewel
safe dragon
#

one dot per line would be one brutal restriction for object oriented languages

devout vault
#

Here's one of SpaceCore's files - I have a bad habit of sometimes (often, lately, for mods) using files as namespaces

#

Admittedly the vast majority of those classes are annotation based harmony patches

marble jewel
marble jewel
#

The example given:

safe dragon
#

list.All(x => x.IsValid)
oh no you did a crime

marble jewel
#

It's not well-received advise, and most people agree it goes to an extreme that is not beneficial

#

However, it was a hot-topic in programming years ago

safe dragon
#

always fun

rain apex
#

isnt this gonna inflate the callstack

safe dragon
#

we do love our nearly arbitrarily chosen laws to restrict ourselves to

marble jewel
devout vault
#

If a callstack is less than one hundred methods deep, I don't want to see it

worn remnant
#

making this instance private ensures that you won't try to do something bad
i would like you to meet my friend crimes

marble jewel
#

I mean look at this rule

cinder karma
#

I just newline

#

And align the dots

#

Forever

devout vault
marble jewel
#

I'll also bring back this old video https://youtu.be/gyrSiY4SHxI?si=VMbxXtowOFSIfj5O

Become a Patreon and get source code access: https://www.patreon.com/nickchapsas
Check out my courses: https://dometrain.com

Hello everybody I'm Nick and in this video I am going to cover a ruleset called Object Calisthenics. Object Calisthenics was defined by Jeff Bay in his The Thoughtworks Anthology book and it defines 9 different rules that...

▶ Play video
#

A sensible take on the rules

safe dragon
#
thing
  .NestedObject
  .EvenMoreNestedObject
  .EvenMoreMoreNestedObject
#

clean

cinder karma
#

Correct

cinder karma
#

Rust tells me to do thar

fleet wren
#

This is your brain on OO

cinder karma
leaden marsh
ivory shadow
#

I already write code like that at times. Stuff like csharp builder.Group() .Texture( skill.SkillsPageIcon, skill.SkillsPageIcon.Bounds, scale: 3, align: Alignment.VCenter ) .Space(false, 4) .Text(label, align: Alignment.VCenter) .EndGroup();

devout vault
worn remnant
ivory shadow
#

New dot, new line. It works sometimes. But making it a hard rule is stupid lol

safe dragon
#

fluent api's

devout vault
safe dragon
#

fluent api's my beloved

#

I shall write the entire codebase as a long string of extension method calls

devout vault
worn remnant
#

setting aside the particulars of this calisthenics thing, in my opinion the actual crime he commits is using "clean" to describe "a thing i personally find appealing or useful"

devout vault
#

(I wish gist let you search your gists, that was kinda painful to find)

ivory shadow
#

That is like half fluent at best, lol

devout vault
#

Oh yeah I realize it's not fully there

#

But it's closer than the current gmcm design 😛

#

Also I just spotted a syntax error, huh

ivory shadow
#

"Blah blah blah" )

devout vault
#

Yep

#

Why explain your mod config when you put filler text

#

I call dibs on lorem ipsum

#

And a large variety of meows

marble jewel
ivory shadow
#

Lorem ipsum is old news I use the bee movie script

devout vault
#

Ah, you know what? Fair

safe dragon
#

the entire bee movie script?

devout vault
#

Yes

ivory shadow
devout vault
#

smh

worn remnant
devout vault
#

Yeah, like, who defines immersive

ivory shadow
#

Merriam-Webster?

devout vault
#

I've been outplayed

cinder karma
ivory shadow
#

But they're all... eventually consistent and stuff. What's so scary about it

devout vault
#

To be fair, that is how we use netfields in base game (and also in my mods that use new netfields)

devout vault
#

(I mean, I understand them, but most modders don't)

ivory shadow
#

I know too much of the mystery at this point.

devout vault
#

I know so much mystery I can predict mystery box contents

ivory shadow
#

If I never have to fix NetMutex again it will be too soon.

devout vault
#

Wait, that's on topic, don't ban me

ivory shadow
#

But if you get banned that means you can take a vacation right

devout vault
#

Besides any major issues that pop up

#

Why I'm still hanging out on the stardew server... good question

marble jewel
#

I found a copy of the source material online, and I think the way it was originally presented is less clickbaity than how it's been shared since then:
https://theswissbay.ch/pdf/Gentoomen Library/Programming/Pragmatic Programmers/The ThoughtWorks Anthology.pdf#page=70&zoom=auto,-325,418
Notably different - to me it reads more like a thought exercise. Like try these rules out to understand some concepts, but not really prescriptive as in you should actually do this IRL.

Do a simple project using far stricter coding standards than you’ve ever
used in your life. In this essay, you’ll find nine “rules of thumb” that
will help push you into writing code that is almost required to be object-
oriented. This will allow you to make better decisions and give you more
and better options when confronted with the problems of your day job.

ivory shadow
#

Because we're fun to talk to

sand frost
devout vault
#

I can't remember the last time I saw a cat picture here

sand frost
#

I think I'm the opposite of you — not on a break in theory, on a break in practice

devout vault
#

(me having to click on the mathperson's every time I see it to remember which mathperson I'm talking to)

#

I should be able to remember it based on quantum vs classical

sand frost
#

Here's a cat

devout vault
#

But I just had to click your name, so apparently not

#

CAT

sand frost
#

He's super fluffy

devout vault
#

Very

sand frost
#

Such a friendly cat

devout vault
# marble jewel Yeah?

I mean, yours still has some resemblence of your old name, not "adjective MathPerson". Also your color doesn't match the other two

sand frost
#

Atra does quantum stuff, I do classical stuff 😛 and I'm the original Mathperson

#

So it makes total sense

devout vault
#

I know you're the original, it confused me so much when atra became quantum

devout vault
#

CAT

sand frost
#

What a pretty cat!

ivory shadow
worn remnant
devout vault
#

Mine literally has my name, and also nobody else active is a kitty cat something

worn remnant
#

i have pfps visible and those haven't changed so i have not had much trouble distinguishing

sand frost
#

which is super convenient when I want to search something up that you said

#

I don't have pfps visible

#

So even I get confused at a glance who's talking

devout vault
#

I'm on compact mode

marble jewel
devout vault
#

No profile pictures for me, unless I'm on mobile

#

ANOTHER CAT

marble jewel
#

I had to prove my namesake

devout vault
#

And to be fair, I have a special role color

ivory shadow
#

I am boring I never change my name

devout vault
#

It's very rare that I do

marble jewel
#

Jammers and Developers have a pretty close color resemblance

sand frost
#

Matt is almost the same color as casey

worn remnant
# sand frost is "worst" ok?

"worst" is fine, i would think. it's probably self-deprecating or a shitpost, so it's not asserting its own priors in the same way

devout vault
#

More so on smaller servers, but I'm not really active much else than here right now

marble jewel
#

I feel like Jammers are a blend between Developers and Modders

cinder karma
ivory shadow
#

Just wait till next April for Worse Crafting

marble jewel
#

I'll do my Worse Chests too

devout vault
sand frost
#

every time you try to cook something, it picks the most expensive/hardest to find fish

cinder karma
marble jewel
ivory shadow
sand frost
#

a shop menu where all the prices are invisible

marble jewel
#

I'm going to make the Better SDV Mod Pack with any mod that uses the word Better in its name

devout vault
worn remnant
#

taking compact/no avatars for a spin and the confusion makes more sense in this mode

ivory shadow
#

A shop menu where every time you buy an item the shop keeper has 3 seconds of dialogue and then the menu closes

devout vault
#

I thought I turned on avatars in compact mode at one point SDVPufferThink

sand frost
#

The prices have commas, but the commas are randomly placed

#

10,00g

devout vault
#

There, now it's enabled again

#

No more confusing math people

worn remnant
ivory shadow
#

The prices are in Zimbabwean dollar

sand frost
#

everything is randomly slightly misaligned

devout vault
#

(Not seen: a typo that used a different letter for math)

#

(I said it directly but of course automod didn't like that)

sand frost
#

Don't worry, people have asked me if I do math

ivory shadow
devout vault
#

...how?

#

I got an automod message when I typed that word SDVPufferThink

#

I wonder if it didn't count it inside a `` block

marble jewel
#

I think Better Chests is done. I need to get into the "Even Better" game. That's where it's at.

sand frost
#

"Slightly Worse" "About 10% Better"

devout vault
#

Don't forget Redux

#

Even Better Chests Redux Remastered, 1.6 edition

ivory shadow
#

If that's where the typo was

marble jewel
#

Pretty Much the Same Chests. Reverts everything back to vanilla.

ivory shadow
#

I have to say between this conversation and the work meeting I'm vaguely paying attention to, I am getting nothing done. (I guess I'm getting a meeting done, but that doesn't count.)

devout vault
#

I'm on lunch break

sand frost
#

I should be eating lunch

devout vault
#

Me too

sand frost
#

I didn't pack lunch today though, just a snack, so that means leaving the building

#

Truly a daunting task

ivory shadow
#

I've had lunch already, and I did early voting so I can't use that as an excuse to take a break.

marble jewel
#

Lunch, I had breakfast like 2 hours ago

cinder karma
sand frost
#

It's my mom's friend's cat

ivory shadow
#

Matt you may be amused by a comment I got on BC earlier.

hi! SMAPI is telling me that this mod is unable to be added and I'm not sure why :<

      - Better Chests 2.18.3 because initialization failed:
System.Reflection.ReflectionTypeLoadException: Unable to load one or more of the requested types.

Yes, that's right, these people still exist and comment on Nexus.

cinder karma
marble jewel
ivory shadow
#

We need to start a whole series of mods. Better Coops. Better Clint. Better Caves. Better Crustaceans. Better Crops. Better Children. Better Controls. Better Cabins. Better ...

devout vault
#

Clearly we need to lump all the Better mods into a single mod called Better Stardew

marble jewel
#

I'll rename. Better is subjective anyway. A more accurate description would be Customizable Inventories.

ivory shadow
#

The Glorious BC Empire

sand frost
#

What about a single mod called Butter? Or Batter? Or Better Bitter Batter Butter Battle?

devout vault
#

B[aeiou]tter

#

Usign regex for your mod name is pretty common, right?

ivory shadow
#

Batter Better Bitter Botter Butter

marble jewel
#

I don't think SDV has gotten into the elements game yet, there's a whole world of irrelevant things that mods can be named after

sand frost
#

I call dibs on Titanium

cinder karma
#

Someone should release a mod called iridium

devout vault
#

I was just about to say

cinder karma
#

It will claim to reduce lag

#

It will do nothing

marble jewel
#

My next Better Chest mod will just be called Radon

devout vault
#

Just start at the beginning of the periodic table and name each consecutive mod a new element

cinder karma
#

I like how quantum and classical Mathperson is the same length

devout vault
#

That'll work unless you become aedenthorn

rain apex
#

shouldnt sdv be produce themed

cinder karma
devout vault
marble jewel
#

Sodium for SDV

cinder karma
cinder karma
#

Right, MathPerson?

#

But it'll stop working once our names are different colors

rain apex
fleet wren
#

hmm Butter Chests, a place to store my 4 Butters

sand frost
#

I did pick Classical for the length and the theming

cinder karma
#

You're a wonderful person

rain apex
#

atra just needs to help out next mod jam

cinder karma
#

I wish I could be 3% as cool as you

cinder karma
devout vault
fleet wren
#

that page is good, because it agrees with my opinions

devout vault
rain apex
#

slander :(

UPDATE 2023: Still truly baffled how many feel this is their favorite apple. However, I have not had the chance to try a Fuji straight from Japan where I hear they may be better. That being said, I have had better Fujis in my re-testing. +3 Taste, -1 Juiciness, +2 Cost/Availability. TOTAL SCORE: 48 -> 56 (Horse Food -> Barely Worth It).
sand frost
#

I like Fujis 😢

fleet wren
#

how Red Delicious are still on shelves instead of all its sellers becoming bankrupt 15 years ago remains one of America's greatest mysteries

sand frost
rain apex
#

maybe they dont decompose

sand frost
#

Red delicious are disgusting

marble jewel
#

Honeycrisp = Nearly Perfect. Sounds about right.

sand frost
#

That I can get behind

fleet wren
#

I also slightly disagree with the ranking of Granny Smith, but I also never eat that stuff raw so maybe the author's right

marble jewel
#

Granny Smith is ranked #2 for baking which I agree with

#

At least that's my go to for Apple Pie

safe dragon
#

ah yes programming off topic has started a conversation about apples

marble jewel
#

Wait, I thought this channel was Programming/Off-Topic

sand frost
#

I have an Apple computer

#

So this is basically on topic

safe dragon
#

it's whichever is more convenient at the time

#

is your computer in the rankings

ivory shadow
#

If apples are so good why is there no Apple II

devout vault
safe dragon
#

wtf

sand frost
#

Wtf

safe dragon
#

they spent all that money on a macbook only to then just use it to remote into a different system

devout vault
#

No, the macbook is personal

#

I have to remote into a windows computer, I just only have it set up on my laptop

safe dragon
#

oh

sand frost
#

I mean I love my MacBooks but if I was going to remote in..:

ivory shadow
#

Kids using slang when they're talking about apples? Here's a helpful guide!

wtf = want that fruit

fleet wren
#

all our work laptops are just glorified SSH/remote terminals

safe dragon
#

my work laptop is actually the laptop I work on

marble jewel
#

If I can count the number of OS that run in my house as "having X computers" then I have -
3x Windows
1x Ubuntu
2x MacOS
2x iPadOS
2x iOS
1x Android
1x Raspbian
1x unraid
1x TrueNAS
1x Home Assistant
1x Proxmox
And I think that's it....

devout vault
#

One thing that drives me insane about my mac is that every day I get a popup that says "Some iCloud Data isn't syncing", and when I try to x it out, it thinks I wanted to open the icloud settings instead

sand frost
#

I thought iPads just run iOS

devout vault
#

Me too

marble jewel
#

iPadOS forked from iOS some time ago

cinder karma
sand frost
#

I don’t use iCloud

safe dragon
#

iPadOS is basically iOS with some fancy extras

marble jewel
rain apex
#

What does each of your 3 windows do

safe dragon
#

update

sand frost
#

Would a cooler person struggle to understand delegate syntax? I think not!

ivory shadow
#

update (incorrectly)

devout vault
rain apex
#

Do they scheme against you in cohort

marble jewel
#

The VM is actually running AtlasOS which is a modified Windows installation

rain apex
#

A turncoat!

fleet wren
#

Never heard of AtlasOS before. That's quite a bold tagline

marble jewel
#

It runs quite nicely, and I still have access to Windows updates and such

#

Ideal for my VM. I use it for a lot of background/automation tasks. It's always on while my gaming PCs are not.

devout vault
#

Why is it advertising it self as an OS if it's just tweaks for windows

fleet wren
#

I mean that's 90% of Linux OSes

rotund violet
#

There's a long tradition in the industry of advertising skins and tweaks as entire OSes.

marble jewel
#

Had to restart because of a power outage yesterday

devout vault
#

Don't linux OSes usually have their own software network (apt-get for example)?

rotund violet
#

Stardock had once built a pretty lucrative business on that very concept IIRC.

fleet wren
#

(fellas check out my new OS that's not reskinned Arch)

rain apex
#

is AtlasOS like a linux distro

devout vault
#

I used to have some stardock stuff like windowblinds, never understood it as a new OS

devout vault
marble jewel
fleet wren
marble jewel
#

As long as the power is not out for more than an hour, my UPS keeps things going. Unfortunately it took like 4 hours for them to restore my power.

fleet wren
#

apt, yum, pacman, uuuh whatever Gentoo uses

rotund violet
rain apex
#

yea ig my question is, does it change as much from windows as say, RHEL -> fedora

ivory shadow
#

The uptime of my desktop machine is sad. These are rookie numbers. But I have a memory leak in one of my drivers so I periodically am forced to restart.

marble jewel
#

I think prior to the outage, my uptime might have been for several months

rain apex
#

or does that question just makes no sense in windows context blobcatgooglyblep

rotund violet
#

I just had to restart yesterday because of the SDV freezing issue... before that I had like a 6 month uptime.

ivory shadow
#

Fortunately power outages aren't an issue for me. I have an automatic backup generator.

devout vault
long verge
rotund violet
#

Oh, I do have to disable the automatic Windows Update restarts to achieve those uptimes. (And sometimes it pisses me off enough to just nuke Windows Update entirely.)

ivory shadow
#

My home server be like 18:57:38 up 614 days, 19:31

lethal walrus
#

this is definitely not the server running my major discord bots
Uptime: 751 days, 16 mins

rotund violet
#

Even my router does not stay up for 2 years at a time.

marble jewel
fleet wren
#

I'm skeptical how much of that is a genuine improvement and how much is from just uninstalling all the OEM crap

safe dragon
#

I always believe anything said by the company offering the product

rotund violet
#

Whoever is seeing 0% CPU usage clearly is not running Discord.

safe dragon
#

or just... things

rotund violet
#

It's chugging away at 3% all on its own. And then there's Chrome (still not sorry).

ivory shadow
#

Hmm, I expected longer. My firewall has only been up for 329d 2h 9m

devout vault
marble jewel
#

It's not even really a Product though at least not in the monetized sense. It's an open-source effort.

long verge
ivory shadow
#

I guess I updated it a year ago

rotund violet
#

I don't know what VALORANT is anyway, show me the TimeSpy Extreme benchmark.

#

(he says to no one in particular)

ivory shadow
#

Is Valorant one of those pokemons the kids like these days

marble jewel
fleet wren
#

Valorant is some kernel level spyware

safe dragon
#

they only mean the 0.1% lows as far as I can tell but even then