#programmers-off-topic
1 messages · Page 31 of 1
Lmao
but it also says use gcc9 so im
about this
i dont think this has anything to do with python 
Apparently I'm wrong and py is a slow asf
Nah it doesn't
Gcc9 just old
And came out around 3.11 of python so me shoehorning relation to python didn't even hit
See if I care tho
So guys does sve still have a place?
Or does the update actually have all that bad ass extended desert shiet
go ask in #modded-stardew
Just call me the off topic guy
Aka annoying bastard
But yes can't you just cmake?
Some repos too hip for releases
building and linking isnt the issue
more that it dun work if jemalloc and im unsure why
Hmmm
And wondering If it dead?
Like if it's actually gon be maintained
I bought one year of runwayML
atm i suspect we built jemalloc wrong
And how stupid am I? And what should I do with it.
Make a movie about programming ew god no
How
Jeez that auto correct felt some type of way
Random flashback to the morning conversation of "why would you want numeric traits" - I want generic math right now for a slider control, but crusty old .NET 6 doesn't have it.
is that like c# version of operator overloads
No, it's a complete feature in .NET 7 and above.
https://learn.microsoft.com/en-us/dotnet/standard/generics/math
(which is more or less the same as num_traits and trait math in general in Rust)
Number of times i have been tempted to decompile something at work ++
pretty impressive how much faster blazor webassembly has become over the last few years and how terrible it still is despite that
I swear microsoft also just changes their mind on the core identity of what blazor even is with every new .NET release
with .NET 8 they introduced the revolutionary concept of basic static page rendering which is now also immediately the default, with you having to opt into interactive components manually
at least for .NET 9 they don't seem to be completely overhauling the core project structure of a blazor application for once
so many odd things about blazor that I fail to understand
By default it uses both "enhanced navigation" and "prerendering" which currently do not work when used together
maybe by .NET 10 they'll fix that
there's definitely worse though
https://github.com/dotnet/aspnetcore/issues/10522
This issue has been moved and moved since .NET Core 3
despite debounce and throttle being fundamental features of web frameworks
it's blazor tradition though to consider fundamental web framework features as low priority
lord knows what they do actually consider high priority
I think they're not putting their best people on that particular project.
I sure hope not
if this is the best they got
blazor is very powerful but man it's full of so many footguns that are so easy to run into you can't understand why they're allowed to exist
having used svelte 5 for a while now I become increasingly disappointed by blazor
I don't think it's a doomed project but they really gotta fix the biggest footguns
y u no use Tauri?
I meant instead of blazor of course.
tauri makes more sense as a replacement for like... webview or something
MAUI as well
which uses webview
at least when you do a hybrid blazor maui app thing
blazor is just for running websites not necessarily for standalone applications
Oh I thought blazor was just for the frontend... like vue/svelte/next/react/angular/etc.
more like sveltekit than svelte
I was doing some azure stuff recently and the fact that there isn't a way to do functional tests with .net 8 isolated workers was so aggravating. Had to run multiple instaces of VS and run the functions manually instead
Ok so... why not tauri with sveltekit lol
it'd be a website so tauri is useless
this would be for work though
I would not pick blazor out of personal choice
Ahhh, ok, that makes a lot more sense.
my personal project uses sveltekit
sounds very convenient...
blazor does have advantages over sveltekit but not when it comes to website performance
a big advantage is no npm/node 🙏
also a lot more out of the box for security, antiforgery, that kinda stuff
and you actually have a proper type system instead of the clearly kinda tacked on nature of typescript with sveltekit
Sveltekit does admittedly have a lot of suckiness. If I have to do another website, I'm probably going to try Rocket.
rocket to me is a rust web api framework
oh is that what you mean...
I suppose you can use that
It's web in general, not just web APIs.
Should not have much trouble running a vue or angular app? But again, have not tried.
probably not
I've only really used axum
which I do like though it doesn't have a pretty website like rocket
Axum is probably just as capable, yes.
I like my separation of concerns. I realize there are conveniences like hot reload, but I'm not a huge fan of the regression toward do-it-all frameworks that try to bundle the backend/middleware and HTML/CSS/JS content like ASP.NET used to do.
So to me a good setup is: write a REST API using some backend, write a router using same/different backend, write frontend using a JS framework. If there's some passive integration then great.
I do like when there's at least a clear separation for what runs on the server and what doesn't
that's the same way I tend to do things
I'd say the main downside of not using the dedicated server for some Javascript framework is features like treeshaking
so that it doesn't need to load the entire Javascript bundle before anything loads
Many of the client-side frameworks have module support now.
I guess modularization requires a little more upfront design than top-to-bottom tree-shaking but it works pretty well.
Dumb question, a pull request is when a person grabs your repo, makes some changes, and then requests that it be merged into the main? Is that common with open source stuff? Can anyone do it if my stuff is on github and visible?
Might feel more common in this community I guess, it's very collaborative.
So that would be like, I put an i18n into a mod, then someone who wants to do a translation would grab the i18n, translate everything, and then pull request it back to the main mod, where I accept it and then push an update to nexus.
Or straight up code changes
And then what's protocol if a mod is abandoned and someone updates it? I assume the updater just makes it work again and does not add function but do you put it on your own github page and at what point if it's fully abandoned does it become "yours"?
It depends
For my stuff, For example, because I'm permissively licensed
Someone could just do it
Even if I didn't formally abandon
If it's a permissive license you can make unofficial update if you want
That's "redistribution of binaries"
It never becomes "not theirs" but your code changed/commits are yours
So if you also perish and a third person comes along to maintain all 3 of u r license holders to various degrees 
I haven't seen a lot of people going wild west on it is why I wondered if people just respect that someone "owns" a mod unless it's abandoned, or if there's just not that many coders who would make copies/updates.
I'll protect my open source ip by making my code so awful that nobody can understand it.
Yeah, and sometimes u look at ppl's code and decide to make your own 
Not on purpose, that's just how it goes when learning.
is that a challenge
Yes
(as much as I would like to say I'd take on the challenge, no I wouldn't)
See! Horrifying
I'd say your code isn't horrifying, just a bit complex
(Hence why for wearables I just implemented from scratch)
i18n is actually one of the most contentious things to PR because it's not a real update and Nexus already has a mod translation feature.
Rather than "oh my god this person should be banned from python forever"
Even in corporations, typically, translations are kept separate from source code.
Chue I'm using getattr in production
Same code base does bitwise math in python in two locations
some of it i expect is that when you make a mod, that's a thing that you wanted to change or make. some others may agree with the result and use the mod, but few of them would want to make (and, critically, maintain) it themselves
Fwiw, my previous policy on translations was I liked them. However the translator wanted to do it
You like to go on about this, but you've also seen the kind of stuff that's out there.
"You want me to climb the alps and intercept a pigeon for the translation? Sure!"
I don't mind translations per se, but in the one or two instances I've gotten them from someone who didn't want to make their own mod, I had to explain that it was going to be an optional file etc. because a translation doesn't constitute a semver bump.
I also have personal code that uses exec
It just... complicates things.
(Basically dataclasses before dataclasses)
I didn't know that about translations, so does the person upload it directly to your mod or does it have to go through you first?
Am I banned from python yet
(Frankly, I don't get all the fuss about Atra or Casey code being so scary. It's not. There are thousands of mods and some of the 20-line ones are way scarier to me.)
Of course, my definition of "scary" is either "I'm not sure this is actually safe to run" and/or "you could not pay me to maintain this".
I mean, I have multithreaded code
Which is why I have strong opinions on c# threading
Go directly to jail do not collect $200
Doing MT without TPL in C# is pretty weird. I haven't noticed that.
Sweet! Banned from python too
Horrible code is writing a for loop and then putting a switch-case on the loop variable.
I see you saw the game's equipment code
one of my work code bases also use getattr - for context it serializes a proprietary markup language into python-readable objects, however for some reason it serializes dictionaries into classes whose keys are the fields on the generated class
Undertale jokes.
lol, I did not, I was thinking of one or two mods. Tell me that's not really in the game?
why? why not
It's ok everything is dicts in snakey land
(as a.. uh.. intermediate? ...beginner? no not quite, uh, as someone somewhere along some lines at c#, I've never looked at atra code but i can say Casey code never scared me and I don't get the hype over Casey's code being scary, i regularly look at casey code to see where i've gone wrong/if i don't know how to do x thing that i know casey has done)
I should also clarify... horrible code is dumping a bunch of hardcoded items into a list, and then writing a for loop over it and switching over every item in the loop. Yes, people really do that.
Yeah, I use a toml file to dispatch functions
My pet peeve is ElementAt
There is very few good reasons to use elementat
If you use element at on a dictionary in a loop please
The only thing I find fit to make fun of in Casey code is functions like DrawOld.
searches own code, finds
ElementAtOrDefault
Mmhm. I did it. I went there.
In my defense, it's ElementAtOrDefault(1), so it's not exactly going to kill performance.
The second element in a dictionary?
It's a regular list, not a dictionary.
I know I could write foo.Count > 1 ? foo[1] : null, but ElementAtOrDefault saved me 2 whole seconds during coding.
Yeah, it internally gets translated to a list indexer anyway. But VS likes to complain about it.
I don't think I've seen ElementAt used on a dictionary before.
No serious code like
for ( int I = 0; I < dict.Count; i++)
Is it something like
for (int i = 0; i < dict.Count; i++)
{
var (key, value) = dict.ElementAt(i);
// stuff
}
(I'm not sure what code is CA or what is a contractor)
That's in NetDictionary right? The netcode was originally a contractor I think
Didn't even think about contractors; I thought the lore was that CA did it all himself.
MP was 1.2 or 1.3 I think
Yeah, whoever implemented that in net dictionary without turning their brain on lol
Original release was all him
he did for the first releases
Ditto with the netlist array swap thing
(I'm pretty sure CA has a CS degree?)
This isn't a comment on CA specifically, but having spent a lot of time with CS graduates, there is most definitely a "learning to code" phase after graduation and sometimes continuing for many years.
In fact, sometimes that phase involves unlearning half the CS junk.
hey, it works for C++, it should work for C# right?
(learning that unordered_map is only introduced in C++11 makes me take psychic damage)
Unordered map isn't even unordered if I recall correctly
It's hash based
(I could be totally misremembering)
Agree, there's a huge difference between someone who skipped college and started coding and someone who went to college for CS in the same timeframe. I feel the hands on experience trumps the education.
randomly tuned into here to see this -- really? Geeze, TIL. Modern C++ has us spoiled.
I started coding when I was 12 - college was so easy (at least the CS stuff... the rest, well, I would have graduated maybe if it was easy like CS, but dysphoria-induced depression won in the end)
The great programmers are usually the ones who were coding on Apple II's when they were eight years old, or whatever the modern zoomer equivalent is. There are lots of good programmers who started in college CS, but most are less effective than the lifelong enthusiastic amateurs.
Completely unrelated, but I'm trying to decide what kind of xbox controller to get. Do I want the $50 one, or the one that's over double that. (I don't like the Dpad on new xbox controllers, and it looks like the latter can be swapped out...)
Just don't get a Razer. I am so sick of their defects.
What kind of game r u hoping to play
There's also an inbetween price that's galaxy themed:
I dunno, whatever. I can't play Spelunky 2 right now since my old controller died (and I'm not playing that on keyboard)
Is that not a phone
I was writing C++ code in middle school. I hate programming I wish I got interested in a different, cooler profession
(not really, I like it. But not enough to write non-Stardew-related code in my free time)
Razer makes a lot of electronics but I don't know about phones
Maybe? It's a company that makes input devices mainly for gaming.
C++ was the first "real" programming language I used
(I say "real" because lua and GML are totally real, but I didn't take it seriously until I got to C++)
If it's not fps things any xinput controller is fine right 
interesting, it was apparently a thing: https://en.wikipedia.org/wiki/Razer_Phone
I used to do basic on a Tandy200 like.... 20 years ago. Wish I remembered anything.
All controllers work fine when they're new, sure... it's a question of how quickly they develop problems.
Double presses, stick drift, just straight-up falling the hell apart...
Clearly you should just 3d print your own
Only half joking, really; there's a cottage industry of "home remedies" as long as you can solder.
Oh yeah, my first computer.
I mean, I almost made my own many years ago. Think I've told you about that though
With some - not all - of these controllers, you can bring them up to better-than-new status with a few inexpensive after-market parts.
I had one of these for the early 2000s aesthetics, it was nice until the dpad broke
https://asset.conrad.com/media10/isa/160267/c1/-/en/519585_LB_00_FB/image.jpg
Not recommended 
Hah, I had one of those too, piece of junk
But it's very good shape
I've never owned a controller in my life
And I'm sure not going to start now
skip the intermediate step and build yourself a fightstick
When will u get into the custom gamecube controller for melee business
this is where the real sickos are /lh
I mean... a custom xbox controller but gamecube layout was the one I was working on at one point 😅
I should do it again for fun
I've spent a lot more time in toto playing with mouse and keyboard controls but have gotten to the point where I just won't touch 99% of games without controller support. It's an ergonomics thing. If you're in the "why does everything hurt" stage, you'll get there too.
Atra doesn't play things though, atra knits
I feel like some of y'all are too young for early 2000s aesthetics
I'm -2 years old
Of course, that is provided he actually plays something again, yes.
(and as I said earlier, I'm pretty sure I'm older than you)
Seriosly I don't get it I wasn't even running that fast this week
Usually I know exactly what I did (aka bothered to strength training for once in a blue moon.)
The strength training more than once in a blue moon is mainly how you prevent it.
Most causes of various soreness for me are "not enough time in the gym". It tracks pretty consistently.
(I run six days a week.)
side note speaking of controllers but I can confidently say I own one of the world's rarest controllers, no more will be ever made
(No I wasn't a ||Stadia subscriber||, I got this during a clearance giveaway)
(I don't even use it, I just keep it around like the Predator keeping the skulls of its previous prey)
What is it?
the controller of this thing: https://en.wikipedia.org/wiki/Google_Stadia#Controller
Google enabled the Bluetooth on those after they shut things down so that they're not e-waste, just FYI
yeah I did, my PS4 controller is still the favored child though
c++ didn't get a hashmap until 2011?
nooope
If I remember correctly std::map is a red-black tree (whatever that is)
Awww
That is a spectacularly undescriptive docs page
(I watched a talk by these folks once: https://github.com/abseil/abseil-cpp/blob/master/absl/container/flat_hash_map.h)
i thought rb tree was just for hash collision 
Wrll it has the performance of a rb tree
Hmm
Docs say "usually an rb tree" but doesn't commit to it
looks like libstdc++ is use rb tree https://gcc.gnu.org/onlinedocs/gcc-4.6.2/libstdc++/api/a01056_source.html
and libc++ is some kind of tree but i dont feel smart enough to figure out what https://github.com/llvm/llvm-project/blob/main/libcxx/include/map
(I gave kt the old college try but also I can't even find the insert function because I'm on mobile)
AHA!

I will say the bet is likely that rb tree.
it's a binary tree with balancing. rb is likely
Python's dictionary hassss to be indexer pointing to a linked list
It makes sense now
Sorry
For a long time it's bothered me that the python dictionary somehow managed to remember insertion order
that's odd
apparently since python 3.6
looks like a python map is basically two array in a trench coat
the first array contains the values in order and the second array holds the indices for where to find the value
we are all two arrays in a trench coat
The python one, I knew it could deal with deletions somehow without losing the order
(Which the c# one can't.)
So I was like
How.
it replaces the index with a dummy value
and replaces the value with null
apparently
Would that make a dictionary increase in memory footprint indefinitely
...huh
clearing the dummy values
...huh.......
I don't question the programming language overlords
that's a lot of lines of code for a dictionary
Heya guys — my bf & I want to take a coding class, he wants it to add onto his resume for fintech product management positions, any advice on which language to try and learn first?
you could always go for that one that was ancient when the stars were young, COBOL.
it's still used for a lot of critical businesses like banks, though as a 60+ year old language, there's equal movements to replace it or update it, though getting businesses and governments to change like that is... an undertaking
python, Java, c++... it kinda depends what part of fintech he'd be dealing with
C# isn't uncommon either
Oh that I’m not sure about
Kinda wanna do this myself for stardew modding lol
But I heard it’s not easy for a first timer
it was my first language
was fine tbh
I didn't really have any major extra hurdles I feel like
I didn't understand many parts of C# but I don't think I would've done any better if my first language had been python or something
the only real downside I experienced was that I had no idea how to use a terminal even though I'd been programming for a few years cause visual studio does it all for you
Hmmm interesting then.. thanks, any other tips I wouldn’t find in yellow book?
no idea what yellow book is
A good book for learning c# is https://www.robmiles.com/c-yellow-book

General advice I suppose would be to not worry too much about whether you're doing something the "right" way and only on whether it works. Only once you can write stuff that works should you start caring about whether it can be done better
that's a common one I've seen people get stuck on
people too worried about writing "bad" code
Ooo thanks. That’s good to know
My problem is I’m a perfectionist (no pun intended lol), so I make sure I have no errors in VS
tackling any warning would be good
used too many projects with thousands of warnings everyone has hidden
Thanks 
I'm wrong here, it just marks that entry in the table null until next resize
yes
I was read about minecraft modding and specifically mixins which I understand to be analogous to harmony
Don't quite understand how it resolves multiple mixins, and whether it has a transpiler analog
Is it possible to use python to automatically apply sensitivity labels to excel documents
....asked chatgpt
Oh god
Why are there https requests involved, chatgpt
I'm not sure if I'm more concerned if chatgpt is right or wrong
lmao
Maybe there's some pytorch model for that 
Anyone else driven mad by the fact that you can't hot-reload any changes to a generic type? It seems so arbitrary.
seems like it's a thing in .NET 8?
https://devblogs.microsoft.com/dotnet/hot-reload-generics/
C# hot reloading is so unreliable that often I forget it even exists and just rebuild the project
you guys have been hot reloading? I always rebuild the project.
Must be very annoying for my steam friends to see "Teoshen is playing stardew valley" every five minutes.
#justlinuxthings
Love hot reloading, especially when doing UI stuff
when it actually functions it's very nice
i could theoretically use hot reloading, however i am not gonna wait for VS to load up my game with 400 mods in the first place, so build and run through stardrop it is for me
I do my testing with bare minimum, so only 10 or so.
You can set up a separate game instance to use for development than you use for playing. (Let me know if you want to know how, I can either DM you or move to #making-mods-general )
There's even a way to have multiple instances if you launch VS through a bat file
Say are there hot reload type things in other compiled languages?
yeah
Even C++ has it I think (with VS)
elixir has flawless hot reload as far as I've ever been able to tell
(Though C++ is somewhat limited compared to C#)
rust has semi okay hot reload but it's not there yet
for elixir I've never noticed it having issues hot reloading anything at all
I suppose a language purpose built to be able to recover from failure states would be a good fit for hot reloading
huh all I did was make a backup of my regular mod folder, then clear it out.
It'd be nice if I could just reload particular .so that were rebuilt
I was going to say WPF but that's the same compiled language. And I guess languages like TypeScript don't really count, they're more "transpiled" than "compiled".
Anything dealing with WASM as an intermediary can generally do it to some degree, but depends on the tooling.
Java also has it (they call it hot swap).
i always build idk how to hot reload
i run it through stardrop with a development mod profile and usually i don't have steam open. so my steam friends are spared
(and im on linux so hot reloading might be more complicated)
I do run it through stardrop, I wonder if that skips the steam part.
probably only if you don't keep steam open
if u see SteamAPI_Init steam would knows about this
that's dangerously close to me being efficient, that doesn't seem like me at all
work hard not smart
Yes.
Oh you fucking change the whitespace in a generic class?
Jail for you
Jail forever
banned from c#
Imagine hiring someone to paint a fence - which, absolutely, requires advance preparation, knowing the type of material to be painted, how to mix the colors, whether it needs primer, etc.
They come. They paint. It's going OK for a while.
Then you tell them, "hey, not bad but you missed a little spot over there."
"You asshole, making changes at the last minute, now I have to start the whole job over again."
(like, why? fucking, why? just patch that spot.)
I surely have not, but all big companies and their $vendors are pretty much the same.
i would like to have hot reload. i wonder what the incantation is to do it (surely the IDE is doing something to accomplish it)
what i have now is that if the game is running and i rebuild, it crashes as soon as the game interacts with my now-changed dll
so, something is happening i guess
Add more RAM.
hot reload is something that sounds nice but too newfangled for me
(I think it doesn't work on macs or something)
(but also sometimes I'm a luddite)
Good ol relaunch the game 10 million times has always worked for me!
thank you for your input, but i don't think that's the problem
total used free shared buff/cache available
Mem: 31868 3208 19636 611 9023 27583
Swap: 8191 0 8191```
Ah. Django
Blast from the past
Hey chat, what is your choice for a responsive Javascript grapher
i only used chart.js before
Responsive meaning performant, or for responsive UI?
Second!
This is internal use only
We don't need it to scale
but i also just
We also don't need to support random ass browsers
wrote v-for svg to draw my own graphs
Firefox is good
its potato/5
I was going to point out D3 for performance, it is hard to use though. Google charts are surprisingly not bad.
theres various npm packages that r use D3 in the back
with simpler api
depends on if you can find the exact graph u want tho
Thank you!!!!!
https://fxtwitter.com/phoronix/status/1833083470928650623
what does this mean
did this software timetravel back 2 years
wat
wow cpp linalg 
I wonder if this is the release that would finally fix that annoying bug where I'd randomly focus on an XWayland window on a different workspace
(then again, serves me right for using an NV*DIA graphics card. Dunno if that's actually the cause, but I'm blaming it anyway)
my hyprland environment hasn't been used in a few weeks
i'm coming here in hopes of finding someone smarter or someone who actually happened upon and solved this particular issue. i'm working on Nickel, a mod loader for Cobalt Core. we have a very similar ModBuildConfig NuGet package to the one SMAPI has. one of our modders is using a Linux machine, and they're having this warning (and our custom analyzers don't seem to be working for them).
now, i've noticed the version it complains about corresponds to what i have in my package's csproj here (it used to complain about a newer version, and then i've downgraded this verson and pushed a new package, and now that's what they get): https://github.com/Shockah/Nickel/blob/master/ModBuildConfig.Analyzer/ModBuildConfig.Analyzer.csproj#L13
of course it's an issue on that modder's side, but they believe they have a pretty standard setup with .NET 8 installed, whatever way you install that on their particular Linux distribution (if that matters, i can ask what distro they're using)
running nuget restore doesn't work?
i believe we've been trying that like months ago, and it didn't help at all
but i'll ask them again
What IDE do they use

I've entered a weird world of C# with this server that isn't married to visual studio
nuget packages aren't managed by the distro's package manager so I feel like it shouldn't affect things
At work I semi regularly have to delete the VSCode cache files
And for VS I used to have to semi regularly remove wrong versions of nugetd
my main question is, where does the "currently running version" here come from
Does it complain if they install the nuget through dotnet instead of vscode
from the text, it seems to be from their dotnet executable itself (or whatever other executable, if applicable, runs when you invoke dotnet build)
I have arrived
I have a vague memory of messing around with dotnet before because the stuff from the package manager was outdated somehow
But considering I'm not using ~/.dotnet/dotnet to build, that's probably fixed?
so any ideas how to get that... updated? changed?
there is manual script to install runtime/sdk
https://learn.microsoft.com/en-us/dotnet/core/tools/dotnet-install-script
Seems familiar. I'll try that
Hm. I ran the script, but the warning still shows up
Here's dotnet --info
Not sure if it's outdated
it is by a few patch versions (i have 8.0.401), but kinda doubt that would make difference
The C# compiler version is not the same as the .NET version, it's related very specifically to Visual Studio: https://learn.microsoft.com/en-us/visualstudio/extensibility/roslyn-version-support?view=vs-2022
When using dotnet it uses the latest installed SDK version. You need to udpate your SDK.
Going by https://learn.microsoft.com/en-us/dotnet/core/porting/versioning-sdk-msbuild-vs, version 8.0.107 is associated with VS/MSBuild 17.8 which is close to a year old and is in fact 4.8.0, not 4.9.2.
There's a possible workaround involving adding global.json to the project if you want to actually target an earlier version of the compiler. (Details: https://stackoverflow.com/a/76741003/38360). But I don't know what side effects that could have; better to just update the installed SDK.
(You'll want to be on SDK 8.0.2xx or newer)
Alright I'll try that
Aight so my package manager is installing stuff in ~/.dotnet, while my dotnet command and script installs are going for /usr/share/dotnet
Now I just gotta figure out how to switch over
you can use AUR on manjaro right
Yeah
odd
I'm on arch and it's installing to /usr/share/dotnet
Cause the pacman package says it's dotnet 8.0.7, but when I check the file there it's 8.0.1
use this then, its easier to deal with different sdk through AUR
if you want to use the manually script then you need to put --install-dir /usr/share/dotnet
never mind. The plot thickens... I also have two version of dotnet
What does this do, exactly? It doesn't seem like the sdk
its the dotnet tool, and the latest version of the runtime + sdk
Huh alright
the idea is that you first install that
then whatever not latest net you happen to need (for example 6 for sdv modding)
for some reason I have both the .net 9 preview and .net 8 installed
the dotnet preview lives in usr/share and the regular one lives in .dotnet
alright uninstalling the preview fixed my double dotnet install 🙏
This is quite confusing
I just had two
In separate folders?
I believe used to use ~/.dotnet/dotnet for my commands, then switched to just dotnet
Now I gotta actually figure out how this works
what do you get when you call pacman -Qe | grep 'dotnet'
maybe you also have multiple installs
dotnet --info is now giving me 8.0.8 dotnet but 8.0.1 sdk
I have no idea how I'm supposed to update the sdk, nothing seems to work
did you uninstall existing dotnet before doing the AUR stuff
Nope
try doin that i guess, and turning it off and on 
Aha! After some now-informed research I have found the --install-dir parameter for dotnet-install.sh
And I was able to install the latest skd in the actual folder where I need it
The issue is solved now
Thanks for the help
oh yea i should have been more clear back here oops
glad it work
Yeah I skipped over that oopsie
niceee
You can also see which package owns a command with pacman -Qo $(which dotnet) although it looks like its solved
How do I get ruff to autosplit too long lines but avoid unsplitting lines unless the resulting line is actually quite short
In other words
Under 80 char: ruff pls unsplit
Between 80-120: ruff pls leave alonr
Above 120: ruff pls split
I have never heard of ruff in my life so I cannot help you
nor have I ever had to split/unsplit lines through a script before
huh
ruff is a linter
oh and a code formatter
I've never really wanted a formatter to unsplit lines of code before
Theres probably a ruff config file you can mess with. Ive heard of it but also never used it
it has the standard setting of line-length but nothing else that I can find
Is line-length 120 not what you need?
it doesn't merge lines under 80 characters maybe idk
idk why a formatter would ever merge lines
well actually
maybe for like a fluent api type thing
It's merging lines and I would like it to stop
What if you just use some other linter like black
from what I can find ruff prides itself on 99% compatibility with black
so i'd assume the problem is in both or neither
If you’re paid by the lines of code you write, you can pass --line-length with a lower number.
🙏
Tl;dr I have
if(
function_call(a)
and not function_call(b)
):```
And it's right on the boundary
easy, give the functions longer names
Black ignores previous formatting and applies uniform horizontal and vertical whitespace to your code.
guess you can't really guide it in any way by your original formatting
idk if there actually an answer other than longer function names...
if you really want that formatting despite apparently being fairly short
just add like not not not not not
that should do the trick
any(map(function_call, (a, b))
The actual code is a bunch of different functions lol
Combinatorix is fun in production code, eh?
luckily I don't know what that means
The code is n^2
can be fine
not that bad
that's one atrocious runtime for 1 cycle
Yup
Turns out the real world takes time lol
I can do some things about the constant factor but like
The real world takes time. My electrons only move so fast
Better than 2^n, right
gotta get yourself some faster electrons
Oh, I was being rhetorical. But I have actually seen O(2^n). Trying to remember where, I think it was a bin packing problem.
oh yeah I knew it was rhetorical
It's very very very slow unless N is very very very small.
Mind you, I guess it is not as bad as the O(N!) we were discussing the other day
I think I have O(3^n) somewhere around here
But it's fine
N is never more than 2
All algorithms are equally fast for small N. (not really, but close enough)
time complexity is practically irrelevant for very small numbers of n yeah
if it doesn't need to scale
Maybe if you somehow managed to write something that was like: O(N^(2^(N^2))) or something
Even that would be OK for N = 2 although it starts to look ugly for 3+
Is that a challenge?
lol, if you can find a way to solve a practical problem with that type of complexity curve, then yes, it's a challenge.
(In this case is a "test all possible combinations")
So the complexity is inherent to the problem
Sounds like you need a quantum computer.
Combinatorial explosions!
explosions are always exciting
most of the code I deal with doesn't really go beyond o(n) but I fear to even find out how many n+1 problems are in our APIs that use entity framework
I think I've run into combinatorial explosions of requirements more often than combinatorial explosions of code. Like, the requirements dictate entirely separate logic depending on the interaction of 4 variables and I really don't want to write 24 implementations.
And oh yeah, Entity Framework and its predecessor Linq2SQL were magnets for N+1 problems.
It was just so easy to write them, and whatever was going on underneath was totally opaque unless you fired up the profiler.
most ORMs try really hard to guide you away from N+1 queries. EF practically begs for you to make them
I've swung back and forth between trying to get ORMs to work nicely and giving up on them totally. Most recently in the giving-up phase.
They're nice when they work, yeah, but it never takes long to start running into edge cases.
I'm squarely in the camp of "just let me write some damn sql" camp nowadays
Exactly. Maybe an "ORM" that would just let me do a simple mapping of a result set to a model, sans relationships and any of that crap.
Actually I think we have that already (IIRC it's what AutoMapper does/did)
sqlx in rust is my favorite of any I've used. You just write regular sql but can opt into compile time query validation where it will query a configured database to verify the validity of the query and return errors
it's not an orm
I just like it
mappers... also a place where I've seen my fair share of n+1
I suppose it's the same n+1
my next employer uses oracle db... no idea what options are even out there with that
I've never seen any library I've used support oracle db
I found a spill on the floor at my job. Do you see him? 😭🤣
my discontent with blazor continues
I should look at their list of actually solved issues to find out what kind of shit they aren't constantly moving to future milestones
nah the closed issues annoy me just as much
rip
I think I have a decent design in my head to work around the 2700 footguns blazor throws at you though...
praying they solve some by .NET 10 instead of just adding more...
it's pretty telling when almost all component frameworks for blazor don't support the now default template
even after almost a year of it having been around
the only one I've found that does work with it essentially decided to not use C# interactivity at all and just implemented all its components with javascript
absolutely
you can do overloading in python but it's weird
ignore bad/unfinished code this is proof of concept for me
Why
Have you not seen singledispatch
i haven't. thank you
what will u use it for 
i just wanted to try it 😭
theres also typing.overload
i knew it prob already existed when making it but i figured it would be fun to make smth myself idk
"typing.overload" sounds like a successor to Mavis Beacon Teaches Typing.
(typing.overload is an insane hack that only makes sense in python's typing system.)
It's, hilariously, also not proper overloads
Looking at singledispatch, it appears to be a straightforward lookup table and doesn't even try to handle inheritance
Probably wise tbh
Python inheritance is Fun TM
inheritance in general is Fun
Basically, sealed tells the compiler that no class should be able to derive from this class. I tend to do it by default. It also enables some jit optimizations.
Interesting, I guess the optimizations are good, can't imagine why you'd bother for a SDV mod otherwise lol
(I consider it good practice:
unless a class was specifically designed to be inherited from, in which case you have thought about it while you were writing it, something in the middle usually becomes messy + harder to maintain.)
I always forget that they added the sealed keyword
didn't know it helped the JIT
I thought it was just a handy word to convey your intentions
You know how it goes
One day it's a language feature
The next there are optimizations built around it
Oh boy, breaking pacman changes
no more installing, we build like real Gentooers
Wow what exploded in pacman
Oh no, ghosts?
Something about changing which user owns downloaded packages, which can mess with local repos
And they updated some library, so paru and yay are broken
Oh, yeah, yay is outright dead for me right now.
Huh, weird
I'd say multiple inheritance is n-squared the fun.
I really do love python
But I love it because of its bullshit
Not despite it's bullshit
Also at least it isn't perl
your yearly attempt at getting into godot
they changed how tweening worked within that time I think
No it was changed before this. I completed a little game last fall in it and it was the same as now
was 4.0 released that long ago already
gimp still hasn't hit 3
it wont
somehow arch got away without it
I do need to branch out and try more godot nodes out
I use pretty much the same 5 all the time lol
aren't there like 150
probably
A radio button or option button is a graphical control element that allows the user to choose only one of a predefined set of mutually exclusive options. The singular property of a radio button makes it distinct from checkboxes, where the user can select and unselect any number of items.
Radio buttons are arranged in groups of two or more and d...
Neat
...oh, well now I feel old. I thought this was an obvious thing. 
Is this an age thing or just a "what's your job" thing? I knew of radio buttons as a kid with windows 95 stuff, and then again doing wordpress forms and oracle flexfields.
Cat 
pretty sure cat means the etymology specifically
I'm younger than cat though and have used a physical radio
Its still a weird name, ive always thought they look nothing like real radio buttons
it's about the function not how they look 
I curse all websites and ui designers who make radio buttons look like checkmarks though causing you to have to double check whether it's multiselect or not
I barely overlapped with FM radio and I agree irl buttons do not look like that
(We are going to quickly get into the generation where no one recognizes where the save and folder icons come from.)
I'm overlapping with FM radio right now 😔
causing interference
i even still have a radio set up in my office, although i rarely use it
Technically FM radio still exists and is in my car i just....don't use it
I feel like a lot of designers are dropping the save icon already
maybe not a lot actually
What icon do they change it to.
Concerning radio buttons, I did feel a little old seeing the exact model of clock radio I had as a kid in a thrift store. Physical tuner, 9v battery backup... Fond memories of a 13 year old me listening to Coast to Coast AM at midnight wondering why the government doesn't do something about all the aliens and ghosts wreaking havoc on the country.
lol Coast to Coast AM
I assure you, we are already in that generation. Not "we" specifically, but the average zoomer has never seen a floppy disk.
I don't think it's a bad thing that the icon is archaic, given that the whole idea of explicit saving is rather archaic. It's far nicer to use software that "saves" automatically and has infinite or near-infinite undo.
wait is that where we are heading 
I can't predict that all software is going to become like that, because it's harder to do and developers (and/or their employers) are lazy (and/or cheap). But it's definitely become a lot more common now that there's no technical barrier in terms of memory or disk space for an event log.
for any software where saving is a trivial quick process it's been moving that way for quite a while
Also, skeuomorphic UI has a history of being terrible and it's a good thing that radio buttons don't look like actual buttons on actual radios.
Makes me think of Apple's bad old days circa 2001-2005.
yea ig i have ctrl s in muscle memory at this point so it wouldnt really make diff if software did just save every 10s for me
same
might even avoid some "ah shit i forgot to save before git pull"
Google Docs actually has a placebo save because they know people reflexively press Ctrl-S. At least I think it's GDocs.
or :wa for me which is ingrained so deeply into me that I still keep typing it when I use regular editors
I also keep hitting escape to go back to normal mode in editors
:wq for me since any time I open vim it's usually a one-shot deal.
I use vim keybinds for any code editor I use
I think it's a reflex now to ctrl-s every 15 seconds when writing, I don't even think about it anymore.
vim itself is also just a quick edit and close thing for me
that feeling when you keep accidentally trying to save a whole web page with ctrl s
That's definitely happened once or twice.
Also, reflexively hitting F12 when some random app is bugging out.
I love when VS is being stubborn about picking up external changes so I hit F5 to refresh and... wait, that's not what I wanted at all.
try using blazor and having to restart visual studio completely cause you moved a file (through its own solution explorer)
try using blazor
Nope.

But I sympathize. I've had to use far worse for work.
me too
blazor annoys me in the context of other modern web frameworks but I'll take it every day over ASP.NET WebForms or the older razor pages
and over WinForms
or writing anything with nothing but jquery...
(or classic ASP... or classic Perl)
https://en.m.wikipedia.org/wiki/Floppy_disk
Floppy disks were so common in late 20th-century culture that many electronic and software programs continue to use save icons that look like floppy disks well into the 21st century, as a form of skeuomorphic design.
A floppy disk or floppy diskette (casually referred to as a floppy, a diskette, or a disk) is a type of disk storage composed of a thin and flexible disk of a magnetic storage medium in a square or nearly square plastic enclosure lined with a fabric that removes dust particles from the spinning disk. The three most popular (and commercially avai...
cgi-bin 
Neat
thanks cat
I remember playing wheel of fortune on ms-dos on a tandy 1000, but I don't remember if it was on a 5 or a 3 inch floppy.
8" were the best.
damn I have incredible news
the next version of blazor is actually going to fix 1 problem I'm having
unprecedented
a big problem with blazor webassembly has always been dealing with the browser caching files
in .NET 9 they're finally going to start
- compressing the static assets
- fingerpinting versions of files so the browser knows not to reuse a cached version
When were 8 in floppies a thing
in WarGames
I have never seen an 8in floppy in mh life
I still own a single floppy I think
I definitely don't
In the 1970s, but you could still find them around in the 1980s.
a 5 1/4" disc for an Apple II
there's an apple 2 in my mom's garage
that's a big closet
Nice. Welcome to 2012, Microsoft.
I'll have to go ask Dad if he's ever used a 8in floppy
I still own a floppy but not an 8"
I don't own any 8" floppy disks, that I know of. I've seen them, though.
it was only really a major issue with the wasm builds because they use some funky service worker caching thing but still it's crazy blazor didn't just launch with this
As for other form factors, I'm sure there are plenty sitting in various boxes in the garage that have survived 4 moves already.
how often do people still use any discs
(That's what in every old moving box, as far as I know. Spiders and floppy disks.)
smh
Are we still talking about floppies or CDs now?
whichever
I don't have a disc drive on my laptop, but i have an external drive for blu ray
It's different with CDs because there is a lot of music in people's old CD collections that you can't just pull off iTunes or whatever.
I mean, you can rip it once and be done with it. But you still need a drive to rip it with.
One of those non-region locked ones which allow for ripping
Yeah, pretty much exactly the setup I have.
USB connection, cost very little, takes up very little space, and even if I only use it once every year or two, there's no downside to keeping it around.
And every so often I might get the nostalgic urge to play one of those ancient CD games.
I have a 4K bluray drive in my PC I use every so often
and I still use my minidisc deck every so often lol
Minidiscs, haha... would you believe I have one of those too, a portable one. But I haven't touched in many years.
I'm not a hoarder but some part of me just refuses to get rid of it.
i just think they're neat
I think I got mine in literally the same year the iPods came out, or maybe a year or two earlier, so it was almost immediately obsolete and out of fashion.
its retro and hip again now, maybe
it's hip to be retro
mine is still part of my thrift store hi-fi
the finest audio equipment other people didn't want
a highly contested category of audio equipment
you can come use mine if you need to
how else will you rip your 4K films
i mean uh
legally... back up
actually i paid for them i will do what i want
Big Bluray won't boss me around
that's what you think
if it wasn't so hard to just play the blu-ray on my pc without even more software, I wouldn't have... legally backed it up
legally backed it up hosted through a jellyfin instance
i'd gladly just use 1 blu-ray disk instead of the ~20 GB of disk space each one is taking up rn
I should probably get another external drive at this point lol
so this is the channel i have hidden
the best channel
less off-topic about programming, and more, we're programmers talking about anything
which happens to usually be tech related cause that's the way we are
Except for the nominal topic of the server, which off-topic.
True!
mentioning mods is explicitly banned
gasp you just mentioned it by mentioning mentioning it!
You are only allowed to refer to it in oblique terms.
oh no
uh oh
yea no talk of farming sim third party plugins here
no custom creations
A landline (land line, land-line, main line, fixed-line, and wireline) is a telephone connection that uses metal wires from the owner's premises also referred to as: POTS, Twisted pair, telephone line or public switched telephone network (PSTN).
Landline services are traditionally provided via an analogue copper wire to a telephone exchange. La...
Neat
my mom still has a landline connection to this day
I think the last landline I had was in my dorm room
Also, I've never equated radio buttons to the radio station-changing buttons in a car and I A) do web development and B) enjoy the satisfactory cha-chunk of buttons in older cars where a whole mechanism had to move to unselect all other buttons when you selected a new one
The satisfaction of car radio buttons has an inverse relationship to the age of the vehicle
Lastly, I have a box of multi-colored floppies I've been saving to decorate something retro with
..someday
I have a landline in my office maybe, idk it's a fixed telephone
which plugs into the wall
i read landmine
Most "landlines" these days are just VOIP, so if the internet goes out they do, too
DSL and dial-up use the phone line
dsl is still pretty common here
Oh are phoneline and landline different
I guess it's voip, idk because I haven't used it at all
adsl still goes up to like 100 mbps here though so it's not exactly the old telephone lines
Interesting, here DSL fell way behind cable-based internet in speeds and not many use it that I know of
wait did i miss something about why the landline wiki page was linked here
adsl is mostly disappearing here now cause of fiber optic cable
cat has been sharing things pretending he has never heard of em
smh
WebAssembly (Wasm) defines a portable binary-code format and a corresponding text format for executable programs as well as software interfaces for facilitating communication between such programs and their host environment.
The main goal of WebAssembly is to facilitate high-performance applications on web pages, but it is also designed to be us...
neat
holy shit TIL this exists:
https://en.wikipedia.org/wiki/United_States
dam
woah
it's like the EU but different
states? like city states?
they are 50 countries but they're one???
I liked that better when it was colonies \s
There's a guy I watch on YT that is building a voxel game engine that compiles to WASM, Douglas Dwyer
He switched it back to doing path-traced lighting and it's kinda nuts it can run in the browser
very impressive stuff on a technical level, I'm excited to see what the actual gameplay is like though
browsers are very capable in this day and age
lots of PT shadertoys at this point
and voxel PT is way faster bc of DDA raymarching
also douglas uses octrees iirc?
or some similar acceleration structure
should see the rendering development channel of a game engine discord weep having to deal with webgl limitations
all hoping to one day wake up and find out every major browser suddenly supports webgpu
the time in 2012 when web was moving so fast that I thought for sure it would be the best platform for making cross-platform games
Well Safari is still back in 2012, so thanks Apple
I made a lot of in-browser games, and I still think the potential is there but
Sometimes i like using half-functional software because it motivates me to for ex. waste less time on facebook
I do think the hurdle of multiple browsers having varying levels of support for stuff is just a hurdle i personally do not want to overcome
when can we run ue5 in browsers
it was already the best platform for cross-platform games in 2006
cough Flash cough
(Facebook wants desperately for users to install the app on mobile, I refuse to, hence I use Facebook less)
fair but I mean more like
(ok Flash has its own issues. Big ones. but still)
the 3D demos that were coming out in 2012
like hexgl
or the mmo prototypes like uh
chrome on windows does support webgpu but chrome on linux still has it behind an experimental flag
firefox and safari still have it in experimental branches...
the mobile browsers still have zero webgpu support

always a fun feeling when you find out about some really cool or handy thing for css/html only to find out it's not supported by some major browser
usually safari
my current job only officially supports chrome though
rip
i love voxel path tracing
and the folks in MC's shaderlabs that figured out how to do it with Optifine way-back-when is still insane to me
it's substantially easier nowadays because more people have entered the space so Optifine/Iris have added more features to support more advanced shader programs
but some of them are so pretty now too, like MollyVX
or Rethinking Voxels
Stardew path tracing for 1.6.10, right?
yup despite not having meshes
Just give it the Paper Mario look, but everything is one pixel thick
implement radiance cascades in sdv
Like Minecraft tools in your hand
need utah teapot as furniture in my game
add a handheld lantern that casts light around you
it would be pretty cool to see Core Keeper's lighting in stardew
utah teapot and the suzanne the blender monkey
and the Stanford dragon
honorable mention to just a single big triangle
can't wait for the Sponza farmhouse
what about generic 6ft man
DirectX?
I hear I need to ask you
(Dumb question: what about directy? Or directz
Or direct rho)
or directw
actually DirectW looks like a Windows API command lol
with a counterpart, DirectA
...oh geez, it does.
that's a lot of direct letters
Ah yes, DirectY and the new console that uses it, YBoY Series Y
and the extended versions, DirectExW and DirectExA
yboy
yboy is what my father said when I knocked over a bowl
lmaoo
loll
wonder if the xbox one x would've sold better if they'd stuck with the code name of xbox scorpio
yboy gemini
i envy the fact that gemini both sounds cool and has a decent meaning
the idea of twins is very versatile for naming lol
meanwhile ♋
unlucky
i do like the origin story though
xbox is so desperate to not use numbers in their console names (or anything even hinting at an ordinal order) that they resorted to the stupidest naming scheme of all time
what if the next nintendo console is called the nintendo gemini cause they're trying a wii u concept again having two devices that are used together
these other constellations r all heroes or mythical beings
wii u was a banger console
and then there's this 🦀 heracules stepped on
yeah because the Xbox One has no numbers
you got me there
this is a jump back to an old topic, but do browser games have access to other input devices like controllers?
I recall there's a controller input API yeah
oh sick
oh right lol, i should have remembered, given i used a web app to configure my dualsense edge last week
i guess it still needs to prompt the user for perms though?
yea
speaking of web stuff I find https://mozilla.github.io/standards-positions/ a pretty useful page to keep track of the wacky stuff going on in web API proposals land
(WebUSB? Really?)
i'm so out of the loop with web stuff these days
the last time i was trying to keep up, HTML5 cache manifest was still a thing
Web development by behated
there is definitely a movement to make web the second "OS" in term of capabilities (because, let's be honest, for the vast majority of end users it already is)
Lol
hey Microsoft can I open this xlsx in the browser
wait a minute...
It's no more ridiculous than WebMIDI (god I hate that feature).
is it a "why is this a thing" or "why is this designed like this" or both
I'm leaning towards the former reading it
(I'd have to use it to have opinions on the latter lol)
It's a "stop stealing my goddamn MIDI interface Chrome/FF/etc." thing.
Oops wrong channel
"Why won't this dedicated recording app respond to the MIDI keyboard? Oh, because the freaking WEB BROWSER decided to block it"
It's the type of feature that makes me long for an Apple/Android-style permission system on Windows, where I can just say "no, this app can't have access to that feature, ever, no matter how badly it wants to"
If it's like other similar APIs it should already be asking for perms right
Wait the browser is allowed to block it for everything??
Because that seems wack lol
Nothing asks for permissions on Windows?
I guess "block" is relative but it opens the device in exclusive mode so nothing else can access it.
And refuses to close it. Ever. For any reason.
Oh I see, yeah why 
The only way to make it let go is to either quit the browser or find and force-close the handle with something like Process Explorer.
So yeah, I imagine WebUSB would be very similar. "Why can't I access my printer today?" "Chrome decided it needed it more."
Does this apply to things like permission to use webcam though?
The thing I found with WebMIDI is that even if you disable it for all websites, the browser still opens the device (exclusively). Even if you disable the feature entirely in the browser flags, it still sometimes opens the device (exclusively).
Web site permissions do normally work, more or less, though I was talking about an OS-level permission on the browser itself.
Better or worse than "you can't print on Wednesday"
Is that an OpenOffice reference or something more recent?
I'd have to say, for me it's worse since I hardly ever print. For a business in 2015ish... probably the printing issue is much worse. (But then what business ever used openoffice?)
which is more expensive division or switch 
i was think about this bc i wrote a get digit func like this
internal static IEnumerable<int> Number(int num) {
while (num > 0)
{
int digit = num % 10;
yield return digit;
num /= 10;
}
}
while focustense did it with a switch
Did what now?
You know what's less expensive? Converting the number to a string, getting each character from the string, and converting each character back into a number :>

