#programmers-off-topic
1 messages · Page 40 of 1
it's just "try everything"
still no idea why my home pc is so much faster for Day 6 specifically... I guess it supports some instruction set doesn't or something? But they're both zen 3 ryzen processors. One a 5800X and the other a 5700G
I expect some difference due to more cores in the 5800X but that difference should more be like it is for day 7
damn, that's some pretty efficient BF then, mine takes about a minute to solve
well I'm partially being carried by the C# compiler without a doubt
my biggest optimization was using some funky ass concat operation someone wrote down on stackoverflow
https://stackoverflow.com/questions/1014292/concatenate-integers-in-c-sharp
I tried both actual string concat and I tried the regular logarithmic method first but then started googling to see if someone had something faster cause it was a major bottleneck
using this alone caused a 3x speedup
I also use ReadOnlySpan all over the place even when not really doing anything with them because the C# compiler just goes insane when it sees a span or something and gives you a free speedup even when you change literally nothing else
like
for day 7 for example, if I pass the numbers as an array instead of a ReadOnlySpan it takes 2.3 ms instead of 1.8 ms
even if what I'm passing in is still technically an array and it does the conversion implicity
♥️ spans
(Do you know why?)
I know technically but it will never stop feeling like magic
as I do nothing except change the type and none of my code
and get a massive speedup
oh that's nice, that's something I thought about but that's not going to help much, my part 1 is also pretty slow...
what's the definition of a span?
I got that much
spans are essentially (potentially stack allocated) slices
the main idea behind a slice is that you can operate on a section of a collection without having to create a new collection with that data
aka a slice
like, apply a function to a slice of your data structure in place?
yeah, in rust, think a view on a str or something
(I don't know any rust)
The idea I get is the python slice except it's actually efficient
yeah they're slices in that regard except what python is doing when you can slice is essentially making a new array and then copying over the slice into that new array
it's not a python slice, I think
I think of it more of a safe (ish) typechecked pointer
my (former) mods used them a lot
yeah, I know, that's why I menitoned "actually efficient", I know it isn't very clear
honestly I do believe C# is doing some arcane magic under the scene the moment it sees a readonlyspan or something
ah those even the stackalloc ones
yeah, the first one was because I wanted to switch on a str, case-insensitive
so nistead of just doing .ToLowerInvariant, I...did a thing
||how do I make maths left to right??||
you ||throw PEMDAS out the window||
||I suppose writing my own expression parser is better than eval()||
||surprisingly easy to do though||
I'm kind of curious what you're doing that this is a question you're asking even though I know it's about AoC
are you ||inserting operators into the input string and evaling it||
||eval was my first idea as well||
||yes, until I read the question more||
Okay, so I want to give an update on the assignment I had last week that asked to summarize the lecture with genAI: first, the teacher specified that doing a handwritten summary is fine, then they explained that the goal of it is to see how student react to genAI and give them a bit of help on how to filter the output (which is fair), because this is a class where a lot of students have a biology background and no CS knowledge. As a true researcher, the teacher is mainly looking at how the student's reaction evolves every semester, and was interested by the fact that this is the first year where there was opposition to the use of genAI, meaning that more students know about it, how to use it, and how it works.
So I guess I'm less mad now
the goal of it is to see how student react to genAI
Yeah, I've heard that one before. "It was just a test, to see if you'd go along with it! Your reaction to the test is part of the test!" Suuuure it is.
Am I the only one who went for ||recursion|| on AOC day 7
the only people I know doing AOC are a bit insane so I was sitting here like "am I the insane one today"
I'm honestly not sure how you do this without recursion without just... mimicking the call stack with a manual stack
yeah true
I'm not following the AOC stuff but I've had to do that a number of times for traversing big graphs; the recursion is just too deep for call stack. It's also more efficient for some edge cases like exception handling and partial traversals.
I'm not sure if I'd frame it as mimicking the call stack, it's a true iterative solution that just happens to use a LIFO data structure.
can you say more about what you mean by BF in this case? I mean I know what the general concept is but having a hard time figuring out what exactly you are doing
I thought the recursive solution came out really readable which I liked
here's my code
shouldn't be too difficult to parse if you know what an average day 7 solution looks like
it's just ||brute force while avoiding allocating extra arrays and skipping checking for part 2 when it was already valid for part 1||
thanks!
the recursion is just too deep for call stack
laughs in scheme
shit I'm hitting the recursion limit
sys.setrecursionlimit(giant_number)
(from making mods) what is the deal with redis's company 

Bit of reading: https://www.gomomento.com/blog/rip-redis-how-garantia-data-pulled-off-the-biggest-heist-in-open-source-history/
Anyways in summary the company is silly and just use keydb or whatever anyway
excellent, I never really understood what redis was and now i dont have to
i think this is the first time i have heard of redis!
It's just a key-value store.
Fancy Dictionary that can be partitioned and mirrored across lots of machines. To simplify.
big dicts for things much bigger than any hobby thing i could potentially do
saving SDV mod data keys on Google Spanner
At work we used redis for caching API results, and also rate limiting.
Now we use keydb I think and I'm not sure if we're still using that for rate limiting or just caching.
You didn't go from Redis to Valkey?
We might use valkey I just remember needing to use keydb for a thing earlier this year
I'm not in ops and don't pay a lot of attention lol
I don't use Redis, I was just curious how big of a deal the whole close source thing actually was IRL, and whether businesses moved to the open sourced fork
I'm waiting for someone to tell me "actually we use a super secret fourth thing"
Businesses care very little about open vs. closed source, and far more about the actual license.
Also about having support for a project. And all the big cloud providers basically abandoned redis for valkey didn't they?
Since redis wanted protection money
the biggest ones just have their own key store 
It is the second hour of attempting to update ubuntu
I'm somehow back on the default windows manager 😦
You can usually find.... "cells" within those companies using "unapproved" software. But yeh, Microsoft or Google wouldn't be caught dead using redis or keydb for anything major.
I used ||itertools|| to BF it, but I started implementing a recursive optimized solution while it was running in case it took too long to solve.
@safe dragon Just doing some clearing out, and I found this old gem.
The One!
There's a Wooting 2 with Hall effect switches now...
I remember being excited for the Lekker originally...
Has anyone dealt with
nope cause even when I dual booted I always had secure boot off
I disabled secure boot and the issue presists
I got into my windows partition at least
And an poking around at my boot entries
github mobile has "Trending Repositories"
okay, I manged to completely fuck up my ubuntu install
so
sell me on your linux variant
Arch. That is all.
Web site: hannahmontana.sourceforge.net/ Origin: Category: Desktop Desktop environment: KDE Architecture: x86 Based on: Ubuntu Wikipedia: Media: Live CD The last version | Released: 2 | June 30…
Alternatively that, yes.
SteamOS still isn't out for general availability yet so I've got nothin lol
I've heard good things about Pop, but... eeew gnome
i thought steamos is just valve's archlinux
fine I'll go figure out a way to grow a neckbeard
It is, yeah. But it's not an arch experience.
I suggest eyeliner and lots of crosshatching for shading.
You could always knit a neckbeard?
Neckbeards are usually more of a lack of conscious effort.
Knitbeard.
DecidedlyDadjoke
(Actually though. If you look up knit beards there are so many pictures lol.)
how do I put it politely? I don't have the hormones to make a neckbeard happen
there really is. I think crochet is easier
what exactly is an arch experiance 
If that's not a Venture reference, it should be.
You have to climb to the top of a great mountain, naked as the day you were born, and yell commands into the aether to partition your drives, format your file system, and install the base system packages and boot loader
(Compare this to gentoo, users of which think the arch users are lazy for just finding a mountain and not building their own.)
hm i had been under impression that this is all linux 
You're not a real Linux user unless you compile your own kernel.
Ubuntu is usually plug and play tbh
To put it slightly less meme-ily, Arch Linux doesn't really have an installer. It has a guide. You install it manually.
granted my experiance had just been arch or w/e linux at school/work where i assumed the sysadmin ppl climed the mountain for me
And SteamOS does use arch linux, but you don't actually do any of the arch linux things. Valve has set up a read-only system partition with everything pre-installed and configured. You get a Steam Big Picture environment, and can alternatively boot into a KDE environment. Pretty simple for the end user. BUT that's just with it only supporting the SteamDeck. We'll see how things go once it's more generally available.
this seems like the opposite of what i want for a PC 
Except for the bundled archinstall now!
Yeah but contrast that to basically every other distro just having a shiny GUI installer
archinstall is pretty nice though for people like me who are technical enough to understand what it's saying but not familiar enough with all the funky commands to set it all up manually
I like it
Yeah, I used it for my last install because I knew I would be doing the exact same things manually, so why?
Oh definitely
It beats having a wiki page open to copy paste commands
(And that's assuming you can copy paste and you're not stuck retyping)
The arch live image has sshd.
It even has a tool for automatically configuring sshd and/or connecting to wifi by including a file on the installation media, good for headless installs.
Source: Have done a headless install
neat
i use ubuntu occasionally at work, and im just surprised how fed up i am with it. I used ubuntu for many years in the day, but boy does it drive me crazy now
Real question: why do brits use stonws
https://en.wikipedia.org/wiki/Stone_(unit) England and other Germanic-speaking countries of Northern Europe formerly used various standardised "stones" for trade, with their values ranging from about 5 to 40 local pounds (2.3 to 18.1 kg) depending on the location and objects weighed.
With the adoption of metric units by the agricultural sector, the stone was, in practice, no longer used for trade; and, in the Weights and Measures Act 1985, passed in compliance with EU directive 80/181/EEC, the stone was removed from the list of units permitted for trade in the United Kingdom.
The stone remains widely used in the United Kingdom and Ireland for human body weight
Shortly after the United States declared independence, Thomas Jefferson, then Secretary of State, presented a report on weights and measures to the U.S. House of Representatives. Even though all the weights and measures in use in the United States at the time were derived from English weights and measures, his report made no mention of the stone being used. He did, however, propose a decimal system of weights in which his "[decimal] pound" would have been 9.375 ounces (265.8 g) and the "[decimal] stone" would have been 5.8595 pounds (2.6578 kg).
My reaction every time someone links me to their source code and it's hosted to GitLab and I have to remember how to navigate this wonky website:
Although post-MS Github is starting to get enshittified
On official site Steam says that SteamOS uses Debian 8... maybe they changed of distro but uses a lot of Arch https://store.steampowered.com/steamos
Title result: SteamOS
I got a dream. Got personal info on a USB pendriver with security and cross device. I tried Arch, Ubuntu and Debian. By now I really like Debian with KDE
- That website is hilariously out of date. SteamOS 2 was based on Debian and SteamOS 3, which is unreleased but what the SteamDeck uses, is Arch.
- Please don't ping me.
sorry
Yeah, that was the old SteamOS, the one that ran on those Steam Machines they used to sell. When they made the version that runs on the Steam Deck they changed to Arch-based
Never thought I'd say it, but I think I'm starting to understand the appeal of curved displays. The viewing angle on these non-curved 32" beasts leaves a lot to be desired.
I recommend Nobara if you want to play video games and have the NVidia curse.
do you prefer KDE? I've tried both but kde is giving me more issues than gnome...
oops sorry for the ping
I need to setup a Japanese Anthy keyboard, so I went with ibus, and I gave up trying to make the layout switch hotkey work (it only works when a text field is focused on firefox or the terminal), also it doesn't work at all on zoom, but I'm 90% sure it's a zoom issue.
Yes, I prefer KDE. But I don't have a ton of experience with it recently if you were looking for support.
(Neither are true for me.)
feel like in 2024 there are barely any difference between distros in the same "family" aside from defaults
I still can’t get over them calling pull requests „merge requests”
basically do you want deb, rpm, pacman, or a secret fourth/fifth thing
granted, defaults are pretty significant; there are plenty of people out there with a lethal allergic reaction to GN*ME
I honestly prefer the name merge request; I think it makes more sense than pull request
The name "pull request" is because you're requesting a pull. A pull is literally the name of what it is. It's basic git.
I understand what a pull is, I'm just saying git merge is also a command
Requesting a merge makes a lot of inherent sense without being familiar with git terminology
A pull can sometimes involve a merge.
A merge always involves a pull.
If someone is using git without being familiar with basic terms, they should be educated. Don't make the tools dumber make the users smarter.
That's just my opinion, I understand the rationale
I propose we start calling them fetch-merge requests instead just to truly confuse people. /j
I do fundamentally disagree with calling it "[making] the tools dumber," but I'm not going to argue
I want my developer tools to tell me what they're doing. If it was software for end users, then I'd agree that merge is clearer language for what's probably going to happen.
imma call em rebase requests
collaboration requests
just to screw with people using the CR acronym for code review
That's a completely fair & valid take. I'm coming from the perspective of having worked with many uni students forced to take an entry level CS class for their degree who get confused by why it's called pull
To really fuck with people design the UI for mercurial and just make it do git things.
If only there was some sort of class that could teach them
honestly I've never thought about the name I just learnt that the process was called a pull request and accepted that blindly
(And yes I am aware I just described bitbucket that is the joke.)
I mean, we did. I'm just saying that choosing the word pull in the git ecosystem was far from a self-documenting name, that's all
That's fair, but... does it have to be self-documenting?
No, with git itself as the developer facing tool, I'd argue, not necessarily
I just like the name merge request lol
(I think the biggest and most important takeaway on this is that Stardew's 1.6 update was (likely?) made with a lot of misters. MRs.
...I've apparently woken up as an agent of true chaos today.)
(Indeed, I believe 1.6 more than tripled the accepted MRs)
mingle requests
isn't that like a nintendo wii thing
uh maybe
like the thing on the Mii channel where your mii's could like, enter other people's mii channels or something
i never actually used that feature i have no clue
Sneaks in here
Im not a programmer or anything by any means, just wanted to say ty for all those who make mods for this game 
ok bye 
then you're not in the right channel hah
this channel is specifically for non-mods/modders
dnf my beloved
what are the reason for Gnome hate? I've used both kde and gnome and I don't see a reason to hate one or the other, appart from experiencing personal issues.
primary one I think is just that they're very opinionated on what things should be like and generally prove to be the biggest obstacle in adopting any new standard in for example Wayland
to the point of one of the gnome developers getting banned completely there
gnome is for example basically the only environment that does not support server side window decorations on Wayland
they decided they don't see value in them so they just refuse and they're big enough for everyone to have to kind of accept that
whether you like using gnome would be personal preference but on the development side they're not particularly popular
often enough when there's some rhetoric of "Wayland doesn't support x" it means "everything on Wayland supports this except gnome because they don't want to and are 7 years deep arguing about every minute detail"
I see, I was indeed missing some context
I actually really enjoy Gnome as a desktop experience for a laptop or very strictly single-screen system.
that's my experience too
this is because gnome laces its entire shit with allergens
one specific one that i have to live with all the time is gnome's file picker, whose crimes include failing to receive keyboard input in a sane fashion (try typing the name of a file you are looking for and selecting it quickly)
Yeah, I'm uses to gitlab now
It's nothing different
I don't remember having this issue, but I see how it can be frustrating. The one I have with kde is the file picker using a different software than the default pre-installed file explorer (dolphin), which confused me for a while because they don't have the same layout at all and I think I had to replicate some of my shortcuts
also gnome had a symbol dictionary app pre-installed and it was quite nice
oh wait nvm just found it on kde
What's a symbol dictionary
like an app to find a symbol by its name, in case you haven't memorized the entire ascii and unicode tables
the KDE file picker and dolphin should resemble each other, but yeah theyre distinct programs
Fuck computers
Why am I doing this and not living in a little cabin in the woods
(Work laptop crashed.)
I'm having to do what might be one of the most mind-numbingly monotonous tasks at work ever.
Data governance randomly decided that they want every table and column to have a comment, and that we need 95%+ compliance by the end of the year
And I only have about 12K null columns to update
Malicious compliance: make every single one commented with //some data
Why do you have 12k null columns
For real. I think this will do more harm than good. I can't be bothered to meticulously analyze every column, so I'm using a built in Generative-AI tool to populate them. The problem is every column needs to be clicked on one at a time, and you can't click on the next one until the previous one is done saving.
12K null columns spread across 400 tables
🫂 for matt and his bullshit task
I've learned though that I can have multiple tables open at once and update columns within each of them. So I'm tabbing through 5 tables and updating their columns in "parallel" by the time I get back to the first table it's done saving
aside: i love (for certain values of love) that you have a department called "data governance". peak dystopia
I feel like this task can probably be automated somehow, but I'm worried that the time it would take to figure that out might be longer than just brute-forcing it
🫂
My work laptop keeps on bsod
This is incredibly aggravating
Like, I'll get my ide open, my outlook open, and then it bsod so I have start over
ugh that sounds super annoying
like it gives you a glimmer of hope
and then snatches it away
tfw even the computer doesnt want to use outlook
relatable
I have two browsers open with outlook as a tab because I can't otherwise conveniently look at both the calendar and an email
also for a while outlook was just allergic to having 2 accounts open at once
So far I haven't managed to grab the bsod code which is also annoying
My guess rn is overheating
IT wants to see if a bios update helps
Atra thinks looking at the actual bsod code is step #1
for a moment I misread that as "atra looking into the line that throws the bsod in the actual Windows source code"
do they even show the bsod code anymore when they replaced the old BSOD screen with one that shows a giant ":("
My sympathy. But at least it's not privacy annotations.
I legitimately want to see if I can use python to automate that
I have so far painstakingly updated 4650 columns and have 7506 to go. I think my brain is melting out of my ears.
id column: holds the id
name column: holds the name
good luck with those column descriptions
I mean I'm using Generative AI so it's not much better than that
what are these comments for
Cataloguing the data
I know next year they're going to ask to add tagging to columns, and that's a future-me problem
normally speaking the column name itself describes what is inside it
I've never heard of this
good luck
Yeah, my org follows the medallion architecture, and my team is a bronze-sourcing team so we just have all of the third party vendor data in our database without any comments or descriptions up until now
guess I'm googling
starts good cause the description for a the architecture immediately hits me with the term "lakehouse" like that's a totally normal tech word
ok I kinda get it
Yeah, bronze = raw. So it's only job is to faithfully represent the source system, including all/any of its issues.
In other words, rather than hitting the application at its source, you hit the bronze tables. There isn't much thought that goes into it, so adding metadata to the tables was never a thought before.
the what
maybe someday youll be a silver source team
idk how this works
seems to be a data science thing. Bronze tier just stores the raw data with no processing, then silver cleans and improves it and the gold is the layer your dashboards and shit would actually make use of
How do I type annotation in python grumbles
It should be a crime that in 2024 a UI can show a list of suggestions, and you have to click each on individually rather than there being an accept all button
Are you sure there's no DML or other script you can run to update the columns, rather than doing them by hand? Is it SQL?
I can use sql to update the comments, but the source I'm using for those comments is based on a Generative AI model that's built into the tool
It's still an early feature so it doesn't provide any scripted access yet
(Also yeah, these globocorp management fads are all a ridiculous waste of time that's killing industry. Every few years they write another iteration of CMM, Six Sigma, QM, TQM, Lean, Lean Six Sigma, etc., as if somehow even though all the previous ones utterly failed to produce any positive result, the next one totally will.)
Hm. AutoClicker?
So the catch is if I click on a comment before the previous one is done saving it results in an error
Or, that looks like it might be web-based, you could write a little JS to do it.
Yeah, it'd have to be through the console or something because my work pc is locked down. I can't even install unapproved extensions
Yes exactly, just open the page and paste it into the console.
Knowing the kinds of tools who design these things, I'll bet they block right-clicks, but they can't block F12.
Yeah, everything is there that would probably allow me to script a solution. I was hesitant to spend too much time on that though because I'm making enough progress using the tedious brute force method, and I'm planning on taking the last two weeks of the year off.
So I'm really aiming to get this done by this week
I mean I can right-click, inspect, debug etc. but my Javascript and knowledge of the DOM is a bit rusty
Pyautogui?
What I'm allowed to run on this device is very limited
The process to get new software is a whole tangled mess of documents and approvals
My own software gets blocked, that I compile on my work PC!
I actually once attempted to go through the process to get new software approved, and the response was a loop of "Why can't you use [insert completely unrelated software] instead?"
What if you print a physical auto clicking device that you hoist over your mouse
If only the issue was solely related to clicking, if that were the case I'd probably go down the automation path. The added challenge is responding to visual feedback, and precisely clicking on a button the changes position as you interact with the elements
Obligatory.
I've had something like this happen to me IRL. Although the example is a bit dated since with AI the task is a bit more feasible now.
Kids these days won't know how absurd of a task it would have been to identify a bird in a picture
It's been 5 yrs and many research teams 
xkcd doesn't age well.
A lot of Dilbert doesn't either, but far too much of it is sadly timeless...
Some xkcd ages well. Some doesn't.
What are some simple/hard tasks these days
Eating too much/sleeping enough
Drawing a hand with the correct number of fingers or foot with the correct number of toes is still hard.
Anything that requires the synthesis of multiple concepts, or really anything that's not just rote memorization with a little bit of wiggle room, is still very hard for machines. So far I still haven't seen a single demo of an AI solving a novel problem.
Hey, today i broke my code because I forgot my own data format so
Maybe the human is also bad a code
No, they don't think, so how would they
(In my defense I wrote the code in a meeting.)
Comments like this makes me sad about LLMs poisoning the term AI 
it's ok, I haven't solved a novel problem either
I had a fight today with copilot which kept insisting on writing some absolute nonsense as I was writing some funky oracle db stuff
Your problem is having copilot on 
it's usually a nice timesaver!
but it seems even a model trained on all of github cannot understand oracle
as much as I dislike the poor quality of information online about oracle db it has been phenomenally performant
so at least it does something well
What is the point of comparison here
sql server is most of my background
I figured relational db is mostly a solved thing when it comes to low level perf
"modern" tools all follow similar approaches ever since the HADOOP era of big data
I only used mysql and postgres and for casul <10k rows things
I've never experienced real productivity gains from Copilot or other LLM tricks. Convenience, yes, sometimes, but rarely anything that translates into real gains.
Even the AI-lite in VS/Rider that helps complete boilerplate lines like constructor initialization, while very impressive and feels good when it's right, doesn't actually make me objectively much more productive, since that's 2% of the actual time spent.
I'll take any database tbh though sqlite gets annoying if you actually want genuine types
I measure the usefulness of LLMs when it comes to coding in terms of keys typed vs relevant characters produced
If I can prompt correct code faster then typing it out myself, then it's served its purpose
I'm not too fussed about my "productivity" regardless. If it makes me job nicer to do I'm happy
and one thing copilot is good at is do the boring stuff
What really helps productivity is Google, or I guess search engines in general. Trying to do anything with an unfamiliar tool or API without a search engine is torture.
Try spending an entire day of coding without internet.
oh yes that's nearly impossible
even with the terrible info on oracle stuff online I need what is out there anyway
especially since oracle did not fuckin document their library itself
not in the code itself at least
Well if u write only C with stdlib then the docs are all there 
Of course not, how else would their consultants get paid?
👌
I think this is the difference between the usecase you're describing vs how I use LLMs for coding. I only generate code that I already know how to write myself.
I'm still highly confused by something oracle from today which works but through magic or something
Does oracle let u look at the source code
does decompilation count
I get it; if the "useful" metric is mostly "makes me hate my job less" then that's cool. I find it unimpressive on a literal time-saving basis though; shaving mere minutes off a 6-8 hour day.
I can tell you there's almost nothing useful to find in their decompilations
Can't believe crumble is just making oracle db mods smh
i defined a "user defined type" for some table parameter I needed but then if I used that table as the object for the parameter it would crash... So then I just made an array instead and somehow through arcane magic it then started initializing the table type
I can set breakpoints in the table class I defined and they get hit but I never make one
but when I do make one myself it breaks

a mystery for tomorrow
at least it kinda works
Yes! Finally
If you count only the time I got for undisturbed dev time that is a first try pass (mostly?)
We will ignore that the time I got for undisturbed dev time started after 5pm
two hours of phone calls....
Reminds me of that time that I had to explain that no, I do not study social network platform recommendation algorithms
in C# is there any practical diff between
MyEvent += Handler1;
MyEvent += Handler2;
```vs
MyEvent += HandleBoth;
void HandleBoth(...){
Handler1();
Handler2();
}
One less virtual dispatch
is that a good or a bad
presumably you can remove one handler if you add them separately
generally good (virtual dispatches have a cost) but may not be worth fretting over
my brain is broken and will fret over it, hence me asking 
ig the form i'd want is prob
MyEvent += Handler1;
void Handler1(args){
...;
Handler2(args);
}
(Meanwhile, I am messing with source generators to automatically register events based on attributes.)
I've never written a source generator before, so it's a neat project.
And it's something I could potentially release to help the community, in case people would find it helpful.
It seems like a generally useful nuget yea
Tho I'm unsure how u would source gen for things like
Register event when activate, deregister when deactivate
I do wish c# sourcegen was more flexible like python decorators
I know, I know, but like
magic to "unregister this harmony patch if it threw an error"
I wish C# just straight up had c macros
then again, at work today I wanted a delegate
But hm for this use case I would actually want python with context manage
like
def do_thing(filter: uh how do I type annotate this)
I mean I know it exists, the sort function does that
but I was jsut like...wait, uh, how do?
I legit had a like, LogError extension in my repo
but yeah, unpatch on error was something I wanted but didn't have
Callable?
yeah, callable, but I wanted to force the signature of said callable
also, like, to be honest with you chu2e11, today was a mess
force a type
in the snek language
I was in about two hours of phone meetings, plus an hour and a half of in person meetings
I literally wrote half my code I did today IN A MEETING
"yes! 5pm!" "so you're going home?" "no I finally can actually work!"
At the risk of posting something way too on topic, this is the sort of thing I'm setting up my source generator for. https://gist.github.com/KhloeLeclair/bdd6c3ec820b0302eaeab3a891bf459c
(Also with support for static stuff, and with changes to how it generates code to require passed helpers instead of using the Mod helpers if the class isn't a Mod subclass. The ability to change which access levels it uses, also.)
Ah I imagined something more general 
Nah this source generator is to reduce the startup time of my mods by doing the fancy stuff I'm already doing, but at compile time.
Yeah makes sense 
I did have vague thoughts about how there should be a source gen version of the annotation type of harmony patch
I was considering something like that too, to be honest.
One day someone will go past mere thoughts 
I'd probably want some feedback from multiple people about how to implement that before actually doing it.
Since that's a lot more open to interpretation than the existing things.
today I looked up how to do the perfectly innocuous task of functionally™ mapping one vector to a new one in C++ and the resulting syntax made me cry blood
that doesn't sound very healthy
"the technical term for this curve is OH NO"
God I've been spoiled by VS
it is hard to beat
ignoring frameworks where it barely functions like maui/wasm blazor
Fuck everything tbh
Miles of swear words
People need to stop asking for my attention during the day
Barricade your office door?
I don't have an office (just a desk)
I am literally hiding behind a movable whiteboard
Anyways I'm grabbing dinner at in and out so I have maybe a hour to work in fucking peace
:(((
Something I learned over my many years of work. Like all advice, take it or leave it. No one really cares if you end up a few days behind, regardless of what the deadline says. They do care if you're irritable or unhelpful to coworkers, and it will show up in reviews and raises.
I have the same instincts as you, believe me, but they're maladaptive in corporate life. Learn to love the distractions, or else be unhappy and unsuccessful (at least, relative to your capabilities). Either that or start your own business/go freelance where you decide how to allocate your attention.
"why is my laptop running like shit? I only have VSCode and firefox open!" remembers I started a BF solution while coding the DP "oh that's why"
Not to pick on your specifically, but in general I think this is solid advice, and something that you don't hear a lot of. Every yearly review I've ever had has vaguely mentioned the projects I worked on, but the things that has really caught my boss' attentions are the small little things that aren't strictly part of your job. I have a habit of enjoying random small jobs that need doing (is it because I'm avoiding doing real work? Who can say) but volunteering or being willing to help out with that stuff goes a long way, and is something that every boss I've had seems to take positive note of, more so than anything else I do as part of my job
...new idea: bot maintenance reviews. 
In that we should be reviewing the junimos? not a bad idea
they could certainly use the feedback 📝
What does that mean
R we gonna fire Uber for misconduct
oh no
sometimes I question whether I go to far with optimizations
day 11 advent of code spoilers
doing this horrific precalculation is around 33% faster compared to just doing ToString() and then splitting
how does the SatansLadder impl on that screenshot fare against just using Log10
although hmm, Math.Log10 works on doubles
I tried log10 first and it was around the same as the string conversion strategy
except with fewer memory allocations
this also removes the pow I'd normally need
Hey guys what’s the best way to make an outfit made and would I be able to do in clip studio paint
Because my character has a jacket in her ref but not in game
How would I go about doing this ?
I'm guessing this is about sdv mods, in which case #making-mods-art
Shoot sorry sometimes it’s hard to know what goes where
I thought this was talking about stv still again my apologies
Writing source generators is annoying.
The fact that symbols aren't equatable is fucked.
(I am trying to figure out how to get caching working so it doesn't re-emit on every key press when VS is in that mode.)
The pipeline handles it in theory, but you need to return objects with equality support.
You can't just toss a node in a box and call it good.
And this method has to be fast, so minimal processing.
Yet symbols aren't equatable, so I need to extract all the information I could ever need from the symbol in this step?
It seems fuckin backwards
You can't add diagnostics info in that step either, which is cool because the Location that you use to attach a diagnostic info to a bit of code? Isn't equatable
Yes, this is pretty well-documented, you never want to use any part of the semantic model in the output of an incremental generator, you need to define your own model for incremental generators to work correctly.
Have you gone over the ISG Bible Blog Post?
Trade ya - I'll write a readonly record struct model for your source generator, you figure out why my global transform propagation is somehow propagating to content that's already been drawn.
I'll trade you finding where the bad solder join on this pcb is
Nothing in return. Just help me find the issue 
No, see, that's just work. There's a difference between that and self-selected problems that happen to be difficult or frustrating.
Fun facts: Windows update just murdered my PC
So now instead of playing games with friends I am installing Windows this is great fun
Hopefully I don't reinstall whatever was giving me a kernel level memory leak
This is why one of my first steps when setting up a new PC is to murder Windows Update.
I think I have hardware failure at this point
Never got to the point of installing Windows
microsoft heard you badmouthing the source gen api
Bill gates is en route with a machete
If Microsoft was coming after me it'd be because of all the shit I talk about windows 11, not the incremental source generators
But also my ram is failing memtest now so that's a thing
I'm suspicious of my graphics card too.
But hopefully just memory. Sadly I can't replace it till Friday, since shipping.
I killed a laptop that way once. Ram went bad, I hibernated the computer, and when it woke back up everything was fucked. Ram dead, file system completely nuked. Had to take it to a shop for hard drive replacement, and did data recovery myself. Basically everything was either orphaned or corrupted.
I already replaced the SSD since I had one lying around. Nothing.
Try downclocking the RAM before replacing it, sometimes the XMP profiles are way off and the memory controller gets progressively buggier over time.
I've tried several different things. All permutations of sticks across all slots, several different profiles. The sticks are just toast.
As long as it's not the memory controller on the motherboard I'm good... come Friday
Did you end up deciding on a laptop?
I still am hoping to buy a Framework 16 using mostly Nexus money next June or July.
Any money necessary to fix my PC shouldn't come out of that pool... unless I need a new graphics card and I get something expensive.
is there special shenanigans for using libstdc++ with clang++ 
that's so many pluses
just regular compiler flag shenanigans, i think, although there are probably weird edge case problems
There's 4 + in a #
you only need 2 if you fudge the proportions
you don't need any if you just use |
Does anyone actually use github copilot
One of the grad students I used to work with wanted to
I told him (gently) that it was not a good idea
The longer explanation being that with his current level of skills (and commenting) it was not a good idea
a coworker use it
one time we were screenshare and copilot was generating nonsense as he tried to type out some specific api code
See. I've found the VS autocomplete about 90% helpful, mostly because it doesn't kick in that often
It's almost always just done what I would have done
Like, super obvious stuff
It's gotten pretty good at the "copy all of X's fields/arguments to Y" boilerplate that's terminally boring to write manually.
In unrelated, I feel like somehow there are fewer gyms around
I have a long commute; I have found one gym along it
Yes, there are much fewer than in 2018 or so. The specifics of the "somehow" don't leap out at you?
im sorry. what? (spoilered bc of image in the game files??? in case people don't want to know this exists)
Seems suspiciously on-topic 😛 It's an easter egg
i didn't know where to put it since its not really modding specific since I was just trying to figure out something in the files 😭 my bad
#programming-off-topic
It's fine to ask in places like #making-mods-general if it's related to making mods
There's also #stardew-spoilers
Once again, I apologize.
It’s no big deal! Just trying to point you for next time
I worked in the Finance industry as a programmer/analyst - The only way I knew how to stop distractions was put my headphones on, and stick up a sign "Come back later, I'm in the Zone"
(I'm 62 and retired now) I also assigned time where I would help people as I was usually one of the more knowledgeable people there (because I'd been doing it for so long). When you have asperger's it's really important to control distractions. @cinder karma The thing I found is that if people knew I was coming around to see how they were and if they had any questions they usually saved up their questions for then. I still got distractions but they were back to a manageable level.
Headphones work for that purpose if and only if your entire work group understands and respects that "contract", usually if it's a team of programmers in a silo type environment with other job functions in separate areas or buildings.
I've worked on teams where headphones mostly guaranteed focus time, and other teams where they accomplished nothing at all except to generate negative feedback from coworkers and make the distractions even more distracting - because now it's not just the question itself, it's the whole production of getting tapped or shouted at, pausing the music, taking off the headphones, etc., then doing it all in reverse.
Tbh I'm going to be honest - that was a wildly exaggerated rant because I was annoyed
Interruptions are fine. Most of the time.
maybe for like day 1 somewhere
day 1 always has some completely out there choices
pretty sure there's been years where day 1 was solved using little big planet
Solving day 1 with crabs
I think today’s one could easily be solved in just about anything capable of 64 bit math
especially since parsing the input is often not included in the very out there choices
i wish i was brave enough to write "makefile nonsense" on this commit
makefile nonsense is the sort of commit message you put on a commit four commits deep into trying to fix a CI pipeline
(I'm looking at you, GitHub Actions)
Six commits later it's just "ahhhhhhhhh"
Today I learned how to install and configure an apache http server, and how to manually configure it for php
Any reason you went with apache and not something a bit more... modern?
Are there more modern php stacks?
Mostly I went with it because I knew it would do what I wanted
(which is, to serve php/html/files and allow custom rewrite patterns)
Most servers support FastCGI these days, afaik.
There's nothing necessarily wrong with using Apache, it's just a bit dated compared to some of the alternatives so I was curious.
What are the alternatives? I only know of nginx and apache, and I have zero experience with nginx
nginx is the big, popular one. Lately I've been a fan of Caddy.
Huh, I'll have to tinker with that
I'm running Caddy at home because of the sheer ease of setting up reverse proxying and SSL.
Ooo auto https,that's nice
Yeah, it's the big thing that got me to try it over nginx on my home lab
My caddyfile is basically a big chain of caddy some.domain.name { reverse_proxy http://10.1.1.15:8000 }
I use Traefik on mine, it's as dead simple as Caddy but has a few extra features I take advantage of
Particularly some middleware like authentication, dashboards, and ones that let me add custom css to some of my containers
The last time I looked at traefik I had trouble finding docs that weren't "just set up kubernetes and it does stuff" lol
I don't even use their discovery stuff, I configure everything through yml files
Maybe I'll upload all of my compose files for reference, I'm hosting like 50+ things
Injecting custom css would be useful for some of the plex-adjacent services I run that don't have native dark themes.
Though I would be incredibly surprised if there wasn't a plugin for injecting HTML into a response with caddy
Yeah, I self-host theme park for most of the apps that support it so that they can all have a consistent theme
Something else I should mention WRT project goals is that I want to be non-permanent. Right now I have it rigged with a batch file so I can pass the directory to serve as a cli parameter so I can use the same server for developing a multitude of projects without obnoxious path hackery
Ah yup, caddy can absolutely mess with content
And caddy config files do let you use placeholders, including one for the working directory.
Oh nice!
At some point I should see about learning Go. I've been hearing a lot about it lately
I put off learning golang so long it turned into putting off learning rust
I have actually written one application in rust. I hated it lol
It's memory safe because I can't get anything to compile and the safest code is code that you don't run
🙂
I think mostly I struggle with rust because I don't have a string grasp on its design patterns
It's so very different from the languages I'm used to
There's something satisfying about struggling for half an hour to get it to compile and having it work perfectly the first time once it does... vs something that compiles every time but I have to debug for 3 hours to find the typo.
I can see some people liking that but it doesn't tickle my immediate feedback itch
Granted, it would be nicer to have both. But I've never worked in a language that has both.
And if you're skilled like me you can struggle for half an hour to get it to compile and then it still doesn't work 😎
I hate stupid bugs I can't track down smh
Leaks and other lifetime issues are some of the hardest to track down.
Ah yes, that time in c# when I made a one-letter typo that created a recursive property setter and exploded when I ran it
It's a trade-off, for sure. You'll spend many hours dealing with lifetime frustrations, not least of which because Rust's borrow checker is still a bit sucky. And if you're doing the type of project where sharing violations aren't a concern, then maybe it never pays off. On the other hand, if you're in a situation where a leak means you spend upwards of a week hunting it down (and I have personally been in that situation), you start to see the value.
I'm still surprised the compiler didn't flag that with a warning
The compiler be like
Haha, I will never stop hating underscores and will cling to my single-character case-sensitive naming conventions until my dying breath, but it does result in the inevitable "oops I referenced the field/property instead of the property/field" errors.
(i have no other input except to add a +1 recommendation to caddy)
Apparently caddy has built-in php via something called "frankenphp" these days
Hmm
Embedded PHP in-process. Sounds spooky to me
The last time I really used php was like 2007 though so just php existing is spooky to me
Yeah
Facebook has really sunk way too much developer effort into improving php
Today's bug....insufficient capacitance? Too much capacitance? I don't know and playing guess and check isn't fun
Give it another 10 years and we'll hear that FORTRAN is making a comeback. Or maybe Visual Basic.
I'm just using it to template a static site rn
focus don't test me I can and will write a Stardew mod in visual basic
This will hurt me more than you and is an empty threat but
Say what you will about php but it is good at templating
Can you make a framework mod in Visual Basic that lets you run mods written in VBScript?
Evil
Ah yes, Visual Basic for Applications
I would hope php lets you do that. That's why php was invented.
And then people kept cramming more and more turing completeness down its throat and gave it anxiety
Actually VBScript and VBA are different beasts.
I would rather use Flask tbh
You could do a Lua framework for stardew
VBScript was supposed to be the alternative to JavaScript.
Flask would be more fun
ExcellentSoup: The Luau Framework
Yeah luau or moonscript would probably be nicer
Flask is just express for Python
I thought someone was already on that Lua project.
Wait luau is a programming language
Python isn't really designed to be integrated through
It's lua with types, by the Roblox devs
I thought you were suggesting partying on a beach
Lua variant
Downside of having a lua framework though would be that lua mods would be unpatchable by other mods
That's quitter talk
Which would make compatibility really annoying
just patch the lua framework then
Write a lua to cil on-the-fly transpiler
Actually that sounds like something that probably exists
It seems like there's several projects in that arena
Could easily just be an interpreter
That was my original thought, just using the standard lua lib and plugging it into the game
Though now that I think of it, smapi did not like my last attempt to make a mod with native libs
Too bad the lua to IL project hasn't been updated in like 17 years
is C# even seventeen years old
C# is 24 years old.
Hard to believe, I know. Seventeen years ago I think was when we were already starting to get fancy features like Linq.
Might've been a few years afterward.
(Who remembers CAS? And the days before generics?)
The earliest I used C# was in 2006. Didn't do much with it at the time, though. Can't say I even remember what I was doing.
I just vaguely remember using it for something
cas is a brand of calculator?
That's Casio.
PC update: It wasn't RAM 😄
So now I'm waiting for a new motherboard, which will hopefully arrive Tuesday.
do u have back up laptop 
I'm rocking my Steam Deck right now in fact. Have it hooked up to my biggest monitor and my keyboard/mouse.
The desktop mode is excellent so long as you've got peripherals.
KDE is my favorite desktop environment, easily.
Wish VS supported Linux, because I want to work on modding more. And I don't really want to figure out Rider.
(And VSCode is right out.)
Or maybe I should just grab godot and mess around
I always put that off
Rider is less awkward than I remember it being several years ago. It's got the usual JetBrains idiosyncrasies, but when I was doing Mac stuff a few weeks ago I definitely found it a much better experience than VSCode. Most things actually worked without any major fuss.
If you give yourself about a week to get used to it, you'd probably be fine.
I've been using rider for AoC this year and apart from the syntax highlighting breaking every once in a while it's been nice
syntax highlighting breaking has been an issue I think I've had with every jetbrains IDE I've tried
Yeah, hence "usual JetBrains idiosyncracies", that's definitely one of them. Compared to VSCode though, I didn't have to waste hours struggling with framework versions, CPU architectures, launch profiles and all that insanity. I just opened the project, pressed F5 (after choosing VS-style shortcuts) and it launched and debugged.
Although on the whole I'm definitely sticking to Visual Studio, there are a few little things about Rider I actually liked better. It would show me generated code without forcing me to jump through hoops, for example. And it has less of the awkward "why aren't you showing intellisense and/or method/parameter description" moments that I can never understand in VS.
I've come to look at VSCode as an "editor on steroids", like "vim/notepad++/sublime but better". Whereas Rider is at least an actual IDE.
On a whole I’ve preferred Rider to Visual Studio, but a particular bug has plagued me for years now so I’ve made the switch to Studio for the foreseeable future.
That said Visual Studio has come a long way since I originally made the switch.
And with Resharper I have most of what I missed from Rider anyway.
I prefer Rider’s git experience to Studio and its debugging.
Although VS did add GitHub integration, so that typing # into a commit description pulls up a dropdown list of open issues, filters by the text you enter, etc. I missed that immediately when I made the (temporary) switch to Rider.
For me that put VS above Rider again vis-a-vis the Git integration. The in-app tooling for diffing and merging isn't awesome, but it isn't awesome in Rider either, and I'm used to just popping open git gui which still somehow manages to be the best for many tasks despite the distinctive 90s-era design.
I never use the git integration in editors, aside from blame/changed lines. Anytime I actually need to switch branches or make a commit or anything I just use the command line
even when I use nvim I use a git gui
I can use the git cli but I don’t really like to
i tried like tig or lazygit or all them, but I just kept forgetting to use them
The IDEs are fine for run-of-the-mill "commit everything in my workspace" commits, but as soon as any kind of fine-tuning is involved, it's back to git gui.
Rider is rather more like git gui in that respect though, being able to just scroll or tap down a list of files and immediately see the changes on the right. At least JetBrains understands that "doing source control stuff" tends to be a different workflow and different headspace from "writing code". I don't know why VS's approach of merging them into a single UI feels so wrong and awkward, but it does.
I'm probably an odd case though, since I use the IDE, git gui and the command line depending on what I happen to be doing.
is vs that different from rider in this regard? instead of clicking it in rider you double click it in vs
perhaps I’m just too used to visual studio’s way of doing it
the most fine-grained I ever commit anything is like… only staging some of the files I changed instead of all of them
what kind of fancy git stuff do u do besides commit push pull
stash, merge and rebase should at least also be in there
It's different enough for me, but it's a case where it's easier to see intuitively than it is to try to explain. It's not just a double vs. single-click, it's the whole conceptual model the UI imposes.
I very often want to stage or unstage individual lines during a commit, or amend commits. I use rebase quite a bit, and merge sometimes.
rider seems to have a neater showcase of changes and the ability to deny or allow specific ones though I rarely do
funky lil arrows between the diffs
it's prettier if anything
More elaborate things I've done with Git that pretty much have to be done on CLI are filtering/remapping entire repos like I did with Atra's thing.
Typing reset --hard for me is way more convenient than the IDE's undo function.
yes 
i dont really like rebase though
the whole walking back commit thing is too much for my feeble mind
You're missing out.
I seem to fuck it up sometimes
a thing i was involved with long ago did preferred rebase
and it mainly just lead to
commit histories
Rebase is arguably the crowning feature of Git, it keeps commit histories a hundred times cleaner than constant merging.
almost everything I've ever worked on basically did: squash all pr commits -> merge
Well, I can't speak to every team, people do screw it up. But look at any of my repos and you probably would have no idea that I use rebase, it just looks like one big stack of good commits.
I really should squash PR commits - whatever GitHub's CLI does seems to have some trouble with anything like that, though, sometimes it gets disconnected from the PR.
well the lack of merge commits is the thing right 
Yeah, but not just the lack of merge commits, also the lack of random-ass "fixing stuff" commits.
ultimately i think it is just which one is easier to brain for me
In the professional world, so much nightmare fuel happens during merge commits, there's good reason to hate and fear them.
i treat a merge conflict commit as "i have completed and tested the merge" so i dont really have "fixing merge errors" immediately after
Good luck trying to bisect after a gigantic merge.
my old job had some funky rule for a while where we were required to commit our changes at the end of the day regardless of whether it was even in a compilable state.
Of course since we ultimately squashed all the commits when the PR merged it wasn't too bad but it felt very icky
And when it turns out that you didn't test quite enough, and the QA team or some random end-user discovers a huge revenue-eating, brand-destroying bug?
then i perish 
easy, you blame the testing team
im not sure how rebase would prevent such a scenario
Haha... the "you" here doesn't mean "you personally / you're fired", it happens all the time in the real world. What I'm pointing out is how easy it is to recover from those two situations.
someone's gotta look at changes and decide what is right code
If the bug crept in during a 20kloc merge commit, you are screwed, you are going to spend the next week figuring out what the hell went wrong. If the org had a policy of rebasing, you just fire up bisect and find it in 2 hours, assuming you've got reasonable build times.
Code reviews, unit tests, integration tests, etc... those are all well and good, and they all have different functions and solve different issues.
bugs that sneak in during merge conflict resolution are always fun ones
Nightmares.
Every so often I still wake up in cold sweats just from thinking/dreaming about debugging them.
a surprise for later 
never really experienced a really bad one luckily
I've also worked with devs who intentionally snuck changes into merge commits.
oh that's exciting
Yeah, I dreaded the code reviews.
dont ppl have to like
"Don't worry it's just a merge commit" - "oh it is, is it?"
pull from upstream and get their PR into mergable state 
In the specific GitHub workflow, yes, there are a few guardrails around that (emphasis on few).
Git is not GitHub, though.
(Also, IIRC this org used Mercurial... ugh)
oh it was policy at my work too
idk about this new place we r using some wacky internal thing that i dont understand yet
most my experience comes from azure devops so I get very confused navigating github
"Get your PR into a mergeable state" implies that someone else is doing the merging. Which is fine, if you have it; like if you're a Jr and there's a TL or main owner who handles all that, or like it is with a public open source project.
What it all comes down to is who actually does the merge, and what rules they have to follow.
Actually I shouldn't make it about "following rules" per se - it's about what discipline they have (or lack).
Is terraria worth the 14.99?
not very programming but yes
It's worth it, but it also constantly goes on sale
I’ve gotten enough out of it to even consider 100 usd a reasonable price
Absolutely 100%
Best $15 I ever spent
It also has a modding engine with steam workshop integration
Thanks guise!!
Sorry for posting in the wrong place. I'm old lol
Idk how to drive this thing.
However I am thinking of learning python
What would be the best route?
That really depends on how you like to learn
Regardless of language, the first thing you need is fundamentals, but you can learn those from video guides, interactive tutorials, text-only guides, visual programming, all kinds of options
fundamentals first and then find literally anything that motivates you enough to keep going
There used to be a subreddit that had a bunch of programming challenges, I learned python by just going through their backlog
The itch to disable bug reports on my Nexus page to force things to only happen on GitHub is so incredibly strong...
Beware the Law of Unintended Consequences.
It might help to think of the Nexus comment thread as a kind of moat.
Hello everyone, I just joined this server!! I'm trying to make a mod for Stardew for a school project. I'm pretty proficient in coding both in general and in game development, but I've never made a mod for a game before. Right now I'm having some compatibility issues regarding .net and SMAPI and other packages that I'm still familiarizing myself with.
I'm creating a new project, but I'm not sure with .net framework I should use? A YouTube video from 3 years ago said 4.5.2 but I'm assuming it's outdated..can anybody help me?
!startmodding follow the C# guide
also #making-mods-general is a better channel for your future questions
Making mods can be broadly divided into two categories:
- Content packs are formatted text files, and don't need any programming knowledge. They can add/edit NPCs, maps, new items, shops, and more. To get started, see the list of framework mods, the wiki tutorial for Content Patcher, and there might be relevant guides on the tutorial wiki.
- C# mods use programming code to change fundamental game mechanics. See getting started with C# modding.
Usually it’s easier to start with making content packs, since you don't need to learn programming.
you sound like you actually understand Git vs just knowing what commands to type. do you have any suggestions for resources for that? it confuses the stuffing out of me. I'm the personification of that xkcd cartoon 😆
I broke my repo last week and typed some various commands and it magically got fixed and I still have no idea how I pulled that off
for me so far it has been an extremely gradual process of suddenly needing to do something with git I’ve never done before once every year
see, what had happen was 😆
I updated the readme on the github website after I finished working one night, right? Then forgot I had done so. And so I didn't pull the changes down to my local machine, and I got to work and did a bunch of coding. Then I couldn't push my changes because the readmes didn't match.
What's.. the right way to fix that?
it's something like ignore unrelated history
commit your local and pull + merge from your remote then push
No one understands Git.
Either that or what chue saif
I don't think the actual maintainers of Git understand Git.
I don't understand why we all have to use something so dang confusing either
Svn is worse
Don't get me wrong, not understanding it doesn't mean it's bad. I don't understand how my car works, but I can still drive it.
@rotund violet You leveled up to Rancher. That's level 250. Woot!
Well yeah, but thank goodness we don't have to type commands into our car's command line
car goto work
tries to go to the store, ends up in a tree
well that was unexpected
Git is like a vast ancient redwood tree weighting hundreds of tons and growing thousands of branches from all the maintainers and changes over time. Perhaps it's getting old, gnarled and unsightly, but what shall we replace it with, and how long will that take?
Every attempt at a "more intuitive" replacement has ended up being much, much worse. (coughmercurialcough)
Of all the version control I've used, git is the best
Yes, with daylight second.
I've never used any of these others. how could they be WORSE than git?
So to circle back to the original question... I don't know of any good formal learning process. Like Git itself, it's just a process that unfolds over time.
Yeah, we were discussing rebases yesterday for example. It seems you either get it, or you don't. Maybe at some point it just clicks for you.
it was just very frustrating because I knew exactly what the problem was and what conceptually needed to happen to fix it, but actually getting that to happen??? woof
A lot of source control arcana, like a lot of software and technology arcana in general, is wrapped up in tribal knowledge, which I'm sad to say is slowly getting lost. But if you're working at an engineering company then finding a mentor for that stuff will be immensely helpful.
I still have to look up git things quite often. Reflog scares me.
yeah... I need to get a job too hehe
although my specialty is data so I may not have to worry about it at work 🙂
the heck is reflog? haha
What's his face who made gitbutler and who wrote the book on git
What's his face again
Ref-log haha
A list of previous actions
Reflog is how you rescue a seriously FUBAR repo. But it's incredibly opaque in and of itself.
Scott Chacon's FOSDEM 2024 talk on Git Tips and Tricks.
Scott talks about:
00:00 - Introduction
01:06 - About Me (well, Scott Chacon)
02:36 - How Well Do You Know Git?
05:09 - Our Agenda
06:25 - Some Helpful Config Stuff
09:42 - Oldies But Goodies
16:22 - Some New Stuff (You May Not Have Noticed)
23:48 - Some Big Repo Stuff / Monorepo Stuff
33...
my initial experiences with git was a lot of cursing and confusion
merge conflicting on myself was fun
oh, so not re-flog. LOL
No. You are not flogging the repo
I definitely read that as re-flog
After enough experience it gets to the point where you can predict merge conflicts before even starting the merge, or before even looking at any of the specific changes, just the files on the list.
You'll know what it's good at merging and what it sucks at merging. Almost like it's a sentient being of its own...
haha nice
I guess it could be worse. Once I was working on a project with some people and a guy made a mistake of some kind and panicked and didn't know how to fix it so he just... replaced the whole thing with his local backup from 2 days ago, erasing a bunch of other people's work.
I managed to fix it and get their work back but he was so freaked out he wouldn't let me show him how!
Some people just really struggle with source control at a conceptual level. I've had to remind people not to commit commented-out code to the repo (if we want it back, that's what the history is for). I blame academia for this, I think in their minds committing or "checking in" is the same as handing in their assignment.
at my previous job there were a few changes that were almost guaranteed to cause merge conflicts
appending anything to the translation resource files was a big one. Anotheer was updating the openapi.json/nuget package for one of the apis
and then we had like a project that housed all the database stuff to turn into a dacpac where any stored procedure added would end up in the .csproj and that would guaranteed cause conflicts if someone else also added a new procedure
all mindnumbingly easy conflicts to solve but very annoying
honorary mention to autogenerated .designer files
One of my old nemeses was package dependencies. Two different changes would add their own new dependencies to the references list and it literally did not matter at all which order they were in, but nevertheless the source control would always give up and say "nope, you have to resolve that one manually".
yeah same for our translation files
I always ended up intentionally just throwing those translations in some random spot in the middle of the file to avoid it
how did that help?
Less likely to merge conflict if they're not on or near the same line.
if the insertions aren’t done at the exact same location in the file, git generally just figures it out
!! how odd
What do you use for merge style
By defualt
Git has four iirc
t-there’s merge styles?
Diff styles technically
haha what
the only thing I know is like “please ignore whitespace differences for the love of god”
wydm my car can go diagonally??? 🤣
when it says something is "greedy" what does that mean?
Huh, that list has expanded since I last checked it. I remember minimal but I'm not sure if I ever tried histogram.
Tbh none of this shit helps me when the labview develops a merge conflict
I don’t actually know if any of these help alleviate any problems I’ve had
idk what these mean
I have noticed before that visual studio and azure devops don’t use exactly the same merging logic because sometimes devops would fail but then I’d merge it locally to fix conflicts only to find it merge perfectly fine
you’d kind of think microsoft would be using the same stack to handling their git merging procedures in both of their products but I guess not
I am accustomed to seeing wildly different diffing algorithms/visualizations used in different parts of many organizations.
I’ve now escaped this stuff for better and for worse because I’m the only person who’s touching most of this code
They're usually maintained by different teams, with highly divergent tech stacks and histories.
For example, a web-based tool might be employing some python- or PHP-based differ, they won't be going directly to Git for it.
hello, random question. sorry! I am new to SDV world, can a PC and mobile play together? thank you
yes, and not the right channel
not the right channel but I believe the answer is no
oh
yes
this is why it’s not the right channel
🙏
sorry, I can't see the channel for it, can you guys link it to me? I apologize for the inconvenience
!gameplayquestion
Hi! This is a support channel for issues such as game errors, missing saves, games not launching, and so on. Your question seems to be more gameplay focused, and as such would be better suited for:
- #stardew-valley
- #stardew-spoilers if your question is about something post community center or other late-game content
- #modded-stardew if you want to know what mod something is from or what mod changes some game aspect.
Hmm, we need an off-topic version of that bot command.
(i guess the first part of this command isn't correct because this is also not a support channel)
Appreciate you guys, thank you
Like... !gamequestion or something.
the bot should contextually provide the correct info 
...yeah, that'll happen.
that would be a pretty sweet bot, I'd like to see that
maybe if we bribe aquova
I’ll tell aquo to drop everything right away
he already finished his advent of code today what else could he possible have going on
that reminds me, I need to go to the liquor store after D&D
In that case, let's just have a single universal !nothere command that also automatically figures out what they were asking about and where it's really supposed to go.
(alias: !shoo)
of course, re-flog, and now, no-there
I do accept bribes
Actually it works both ways. "Not here" or "no, there!"
(Also, hi myuu!!!)
I can offer a bribe of a 16x16 piece of pixel art
(hello!)
Today: 11.5km!
I'd probably take the pixel-art bribe for a lot of special requests. But I don't know bots.
Also I looked up my 15km PR and it looks hit-able. 1:23
Aka 33 full minutes over my 10k. I recall it being on the world's worst surface to run on in the world (sand)
sand??? wow
I get sick of running on sand basically immediately
And the 15k was on the beach
and then stop
So anyways. It's five years later. I haven't trained 15k at all. I still think I can hit that
I get sick of running basically immediately
I would like to get better at running, but my doctor put me on some antibiotics with a rare side effect of tendon ruptures and told me to take it easy for a while
Oh no take care!!!!!
I'm totally fine, just need to kick an infection
Like physically I'm fine, doesn't hurt
i need to get back on the wagon for my annual half marathons
Wouldn't being on a wagon for a marathon be considered cheating? /s
every year a bunch of little kids complete the whole thing sitting in strollers. oughtta be DQed, the dirty cheaters
do you dress up like a castle when you run
what do you mean dress up
hey, i would like to ask what language is "sampi" built on, and i really want to ask if there anyone else working on rebuilding or fixing the android version of the application
thanks in advance
nvm, found it
sigh
Does anyone here have experience with Swift on Windows or Linux?
I think Shockah tried once on windows
do you want SMAPI android?
Microsoft: how likely are you to recommend SharePoint
yes i would if there is a port for it or a team working on it
unless there is not, so i can work on my own port
they're asking you because they've already done work on porting it to 1.6
finally some good news
isn't using windows overrated nowadays?
i mean switching to linux is the best u can do
yeah it has some problems, but that only for games and a few parts but most of the important things work just fine
Ah, yes, let me switch this entire company over to Linux. That will end well
im sure they'll love using open/libreoffice too
(i do, but they probably won't enjoy abruptly moving)
i use linux but i would not recommend it to a regular person
meh i used to be regular person
the installation process isn't that hard
u can just enter a few words in the terminal and u already installed the sys
not that much diff of windows tbh
Please prepare the presentation to the company about why they should drop everything for the next month and do this migration
one month is insanely optimistic, tbh
not to mention all the times down the line when one of the replacement softwares doesn't support a feature or crashes weirdly and there isn't a number you can call to address it
or simply isn't available to begin with
The great thing about open/libreoffice is how it offers literally every single thing office does that my parents use but it is slightly different so they continue to refuse anything other than Office 2003.
The great thing about office in general is how it hasn't even advanced as a product since 2003.
some parts of libreoffice are even better, you can write macros in like 5 different languages
not my problem
i can't really force anyone
but linux is just better
especially after the mold microsoft published (win11)
When you work with other people, their problems are also your problems, to some extent
Two months. Christmas is in two weeks.
Also please explain how to use the windows only software on Linux XD
I'm willing to give LibreOffice another try (last would have been about 5 years ago), but my past experience has been the perfect case study in the difference between "features on a checklist" vs. "coherent product design".
As it seems to be with so much Linux desktop software, it's as good as or better than the commercial equivalent on paper, until you actually try to use it.
Tbh I've used Libre before
And occasionally much better to use as well.
Kate is actually shockingly nice, for example.
Kleopatra is confusing with its icon being different on Windows and Linux...
sings I just wanna be hard-core
What if you just use google docs 
I do, actually, for some things.
Google Docs occupies that valley of "I can use this if I have to although I won't enjoy one second of it". Which was better than my Libre experience (again, several years ago) of "nope nope nope".
I use latex for formal things
Also I thought atra just latex everything
Google docs for quick things
GDocs is still the undisputed winner for anything collaborative - but actually collaborative, not "I write this and you mark it up with revisions and such" which GDocs sucks at.
Flux? No, just use latex. Even has similar letters!
For personal things I prefer markdown or latex
Unfortunately, to make money I must use word
I like using MS Word (and Excel, and so on) just fine, when they're available. I just don't like paying for them. And like Adobe, I will never, ever pay an annual fee for it, no matter how weak the alternatives are.
In that regard I agree completely with Khloe: the only actual "innovations" in MS Office since circa 2003 have been in their licensing model.
One could make a plausible case for marginal improvements up to 2013 or so, but afterward it's just naked gouging.
I've only used the browser version of ms word and it's frankly horrible
I'm sure the desktop version is better but the browser version does not give me confidence in it as a product enough for me to even want to try it
My only problem with libreoffice is that I don't know how to use it efficiently, but that seems like a me problem and not an app problem
I don't consider the browser versions even worthy of mention. When we talk about MS Word and other Office products we're generally talking about the desktop versions from around 2007-2013 era (or I guess as early as 2003 for some people).
2007 is peak graphics i think
uh, the last really good version of MS Word was 5.1a (for Macintosh) released in 1992.
im at the correct age for windows aero nostalgia
you're so real for that
i'm not one to install themes or whatnot to go back to aero, but i miss it heavily
It's interesting how little I remember aero
Then again, I fell in with a Linux crowd lol
I don't like modern word
I actually liked libreoffice and can work it fine
Excel I don't hate.
Even grudgingly appreciate some days
PowerPoint....I honestly would rather do latex
The browser versions can go die ofc
I'm still trying to find the setting in SharePoint that sets things to open in the app (and not in the browser) by default
Incidentally, since I'm no longer allowed to dye my hair fun colors, I got colorful extensions instead. Now watch me never get around to wearing them.
Why can't you dye your hair?
Now that I learned LaTeX, I'm also trying to do everythin with it, but I just had a report to do where the guidelines mentions "an editable text format (doc, docx or odt), avoid PDF", which is so weird to read... I wonder why it has this specification
Some people love track changes for suggesting edits
well, yeah, but that's a report I'm making about my life in Japan to get the last part of a scholarship, the only reason I can see for wanting something editable is to edit what I said before sharing it to other students planning their exchange, which would be scummy.
Also, I'm working in a google doc and I'm going crazy: when I select text and start to type to replace it, it places the cursor before the first letter, causing me to write things like "xchangee" or "ome ares" because the first letter ends up at the end. Is there any way to fix this?
(Work has appearance rules!)
beat them up



