#programmers-off-topic

1 messages · Page 21 of 1

safe dragon
#

Gratz on your first spicy pillow

cinder karma
#

Longtable nicely provides \\* which nicely prevents page breaks after this row. It would work great if I didn't have \hline immediately afterwards (which includes a \\)

#

You're gonna find me wandering the streets screaming about why I have orphan headers

pliant snow
#

The only spicy pillow ive ever had was a PSP

crystal wren
#

I had my first one a few months ago I think. A Pixel 5!

#

Fortunately, it made swapping in a new battery super easy because the battery did the job of removing the glass back about... 75% of the way for me?

lethal walrus
#

that's very convenient

crystal wren
#

Also since when did GitHub have a Trello-like boards feature?

cinder karma
crystal wren
#

I've been contemplating just outright switching to GitLab honestly...

supple ether
crystal wren
#

It's just... there!

supple ether
#

oh, huh

#

I always saw that but never clicked "new project" since I didn't know what it did

crystal wren
#

It has a table and roadmap type view too.

supple ether
#

ooo

crystal wren
#

And they can become issues... yeah, I think I might start using this quite a bit.

lethal walrus
#

ooo

pliant snow
#

thats been there for quite a while now i think

rotund violet
#

I just learned this "spicy pillow" term - didn't even know that could happen, I've got devices going all the way back to the original Motorola Droid that still look OK.

supple ether
#

LOVE the colors on that

cinder karma
#

Thanks! I'm making a hat with it

modest steppe
#

gay hat gay hat gay ha-

fleet wren
modest steppe
#

that does make sense, i'd imagine teachers are gonna have to work extra hard now

fleet wren
#

Yeah they're not ignorant per se, it's just modern computing is far, far divorced from the usual stuff millenials grew up doing

supple ether
#

if I ever raise a child I am not giving them a smartphone until they're a teenager

modest steppe
#

how to teach people how to computer,,

safe dragon
#

givin my kid a Linux pc on the day they're born with root access

supple ether
#

root access huh

#

better have backup images

rain apex
#

My family always gives me a hard time when they see my computer screen, and it has like 50 thousand icons.”

#

Are you the family or the 50k icons person

modest steppe
#

i am both

#

i give myself a hard time seeing all my icons

rain apex
#

I die inside when I see ppl with 100+ browser tabs

safe dragon
#

My current desktop doesn't even support icons

fleet wren
#

I bricked my mom's PC when I was 12, and if I ever have a child I'll make sure they brick mine at least once as well

supple ether
#

I have a dumping folder called DESK specifically for putting random stuff in

#

desktop is only for things I am actively using

supple ether
#

also I have dock software for application shortcuts

cinder karma
#

You and Casey will get along

rain apex
modest steppe
#

my desktop is a mess tbh

safe dragon
#

I almost never have more than like 5 tabs open

cinder karma
supple ether
#

my sibling has like 10 windows of 40 tabs each

cinder karma
#

Otoh my real life desk looks like a bomb hit it

modest steppe
#

mind you i never use it

#

not once have i used my desktop to open anything

cinder karma
rain apex
#

Winrar detected

fleet wren
#

I have no desktop icons, but I also have an animated video as the background so not sure if that's better

safe dragon
#

imagine the day where everyone learns what 7zip is

modest steppe
#

listen i had that before windows added a feature to unzip/zip files

safe dragon
supple ether
#

this is my desktop (the dock auto-hides when I'm not hovering over it. the folders are subdocks for categories of programs)

cinder karma
#

Pretty!!!!!

supple ether
#

thank you!

cinder karma
#

Mine is either the Jan knitpicks calendar

#

Or the June one

modest steppe
#

why tf do i have cursed forge

#

on minecraft

safe dragon
#

I'm not home so can't show but it's just an empty thing with a wallpaper and a little waybar bar at the top

cinder karma
#

It's a joke that I will eventually update the calendar but you can see how my sanity is going by how much that calendar is out of date

cinder karma
#

Until my computer inevitably crashes

modest steppe
#

do u mean ur pc calender?

cinder karma
#

And I come to terms with the fact that I wasn't gonna ever read that paper anyways

modest steppe
#

genuinely can't figure that out

safe dragon
#

it takes like 10 seconds to fix

cinder karma
supple ether
cinder karma
modest steppe
#

desktops are hard

cinder karma
#

This is my usual desktop background

safe dragon
#

what's going on here

supple ether
cinder karma
#

But I'm bad at switching them out when the month starts

modest steppe
#

ghost

fleet wren
supple ether
cinder karma
modest steppe
supple ether
supple ether
modest steppe
#

going into no icons for now

fleet wren
modest steppe
#

except recyle bin i don't think that can leave

supple ether
#

I am deeply tempted by Hyprland but I would miss np++ and paint.net and wallpaper engine

safe dragon
#

I too am a hyprland user except with a copy pasted basic waybar and a random wallpaper I found on google images when I searched nord wallpaper

modest steppe
#

hyprland?

#

is that a linux thing

supple ether
#

I know hyprland can do video wallpapers but wallpaper engine supports a bunch of other stuff too, like websites and shader-driven effects

supple ether
supple ether
rain apex
#

I'm a boring KDE person who picked that bc my school machines all used it

safe dragon
#

KDE is my most used desktop environment

fleet wren
#

KDE is good for when you want stuff to just work(tm) and you don't want to make a deal with the devil (GNOME)

safe dragon
#

I'd rather be on windows than use a vanilla gnome environment

modest steppe
#

welp the pretty wallpaper chat has seized which means i no longer have any idea what's going here.
i wish everyone a good day

supple ether
#

I like my eyecandy too much. I have 3rd party mods for windows to add aero-style glass effects to a bunch of things, including discord, terminal, and file explorer

rain apex
safe dragon
#

KDE does does that in cycles

rain apex
#

One day they will fix the high dpi support, maybe

safe dragon
#

it will become stable again someday and then KDE 7 releases

fleet wren
#

well it is a lot better now at least. GNOME is, unfortunately, still one of the few DEs with proper Wayland support

safe dragon
#

it really isn't

#

the gnome team despises a lot of the Wayland protocols and intentionally refuses to implement them

#

they've been an immense pain

supple ether
#

cool

fleet wren
#

yeah by proper I mean "functioning". I am aware that what they're doing to the Wayland protocol is a crime

safe dragon
#

gnome is like "we wouldn't use this" and then prevent any progress on the protocol for 4 years straight

#

(I do not like gnome)

#

surprisingly my smoothest experiences with Wayland have all been one man hobby projects

#

somehow just some random guy writing a window manager in his spare time ends up with a more reliable product than entire teams with funding

fleet wren
#

yeah I've been daily driving Hyprland for the past couple years, and outside of a couple occasional bug (which are all because I use an NV*DIA GPU) it's been great. Better than my old WM (i3) even

safe dragon
#

I mean I suppose gnome works smoothly when you don't attempt to hack around with extensions but gnome has always been essentially unusable as a desktop without extensions for me

#

no taskbar, no application icons, not even a usable application switcher

#

I used to distro hop like every 2 months

#

I might try cosmic desktop when that releases its alpha later this month

#

it’s gonna suck cause it’s an alpha but I’m curious

fleet wren
#

ooh not heard of that yet. sounds very interesting

safe dragon
#

lore behind cosmic desktop is essentially that system 76 was tired of having to deal with gnome to such a degree that they decided to just build their whole own environment

#

a true “fine I’ll do it myself” mentality

rain apex
#

the open source project reproduction cycle

safe dragon
#

yes

#

before this they were essentially already maintaining their own separate branch of gnome for bugfixes

#

there was some drama once where system76 fixed a bug in gnome but then never reported it to the main gnome team so it remained unfixed there

#

who needs online twitter celebrity drama when there’s gnome and wayland drama

#

read up about heated arguments on whether individual application windows should be allowed to have their own separate icon

#

and with heated arguments I mean everyone agreed except one guy from the gnome team

#

which is wayland tradition

crystal wren
#

(Modern) Gnome works great if you just happen to love how it works by default.

#

That's... that's about it!

rotund violet
#

I can't remember the last time I saw my desktop.

#

Or actual text on a browser tab, for that matter.

crystal wren
#

I disable desktop icons wherever possible, yeah. For that exact reason.

pliant snow
#

for what reason

crystal wren
#

My desktop always has... things over it.

rotund violet
#

Interesting, I've never thought it was necessary to disable desktop icons to accommodate that, but I honestly have no idea what icons are there right now.

#

On one screen I have Visual Studio; on the other screen I have Chrome (yeah, yeah, "should be Firefox", don't care).

#

And underneath those windows there are more windows. I might have accidentally seen my desktop once when I hit Win-D instead of Ctrl-D by accident.

worn remnant
#

time was, it was acceptable to use, and i have fond memories of gtk2 and the Raleigh theme (do not correct these memories. let me have them, even if they are wrong)

crystal wren
#

I feel like modern GNOME wants to be a tiled WM without being a tiled WM with how it wants you to work with it.

safe dragon
#

many of its usability problems are problems that only exist because it's also floating

#

they really designed it as if it's a tiling window manager while actually having essentially zero support for tiling

#

they don't even support independent workspaces per monitor

#

neither does KDE but at least KDE isn't built in a way where I feel like it's necessary

crystal wren
#

KDE at least has activities, which move it... I guess a tiny bit closer in that respect?

safe dragon
#

gnome has activities I think though I can't say I ever figured out how they work

supple ether
#

mischevious giggling

#

(cross-platform mouse capture for console apps via control sequences)

lethal walrus
#

oo

pliant snow
lethal walrus
#

I really should use codeberg more

gaunt wadi
#

'GitLab is the most comprehensive AI-powered DevSecOps platform. ' 🤮

lethal walrus
#

for no reason at all, it has a cool ui ig

#

(the urls would be nice) (the ui is nice tho)

gaunt wadi
#

(actually do whatever you want, other platforms are good, my vom emoji is teasing)

#

SourceHut has the best ethical stance imo but its ui is very not good SDVpufferpensive

lethal walrus
#

ui isn't the best, have to agree

#

ooo there's a migrate option

#

:O it's per repo too

#

i like codeberg even more now despite having 0 repos on it

gaunt wadi
#

it is equivalent to github in my usage of it

#

the only thing I've noticed is pushing takes ~3 seconds but on Github it's instant

#

Which is not a problem, really

#

@lethal walrus you have been upgraded

lethal walrus
#

wow

#

i want to clarify my name is independent of PIL[low]

gaunt wadi
#

not a python image library 📝

lethal walrus
#

yes, I am a human

gaunt wadi
#

surprisingly, i am a python image library

pliant snow
#

I think i actually have a codeberg account for some reason

#

Hmmm maybe not actually

lethal walrus
#

i love when microsoft authenticator refuses to read my codeberg qr code

#

HOW DOES ROTATING MY PHONE 90 DEGREES WORK

rain apex
#

it was a secret gyroscope captcha trust

rotund violet
#

microsoft authenticator

lethal walrus
#

and also supports microsoft account 2fa with the microsoft stuff

fleet oriole
#

A question: I am trying to understand what is a property exactly. Like, is this a property? (from FarmerTeam)

    public readonly NetBool farmPerfect = new NetBool();
#

Are int and strings also properties? (I did google this, but consistently have failed to grasp what everyone is saying).

rain apex
#

this isnt a property in C# lingo because it doesnt have a getter and setter

#

instead it is just a class variable

fleet oriole
#

ohhhh, so if something wants to be a property, it has to have get set then?

rain apex
#

or maybe instance variable? unsure about how readonly works

worn remnant
#

a property is (more or less) a field coupled with a getter and/or setter (and the braces syntax)

rain apex
#

now the NetBool class has a lot of property like features i think think

#

so it is not a very general example

worn remnant
#

it lets you define the getter and setter with arbitrary complex logic, but then you use it just like a field and the getter and setter are called automatically by the compiler

rain apex
#

this page explains how to define the get/set

fleet oriole
#

so this then is a property (from Farmer.cs)

``    public bool catPerson => this.whichPetType == "Cat";``
rain apex
#

this page explains variables

worn remnant
#

this is a property (Value):

        private int _value;
        public int Value
        {
            get => _value;
            set {
                _value = Math.Max(Range[0], Math.Min(value, Range[1]));
            }
        }```
fleet oriole
#

So that is not a method then, even though it has the bracelets.

worn remnant
#

this is a simple example. when you set Value, the compiler calls the setter. this one clamps the value you gave to a min/max range

fleet oriole
#

I see!

rain apex
#

i think its best to think of property and variable like a square and rectangle thing

worn remnant
#

so to use this one, you would write <object>.Value = whatever;

rain apex
#

property are variables with extra bells n whistles

cinder karma
#

I think of it as properties are small functions around fields

fleet oriole
#

object here being our class?

cinder karma
#

Sometimes the field is implicit

rain apex
#

object is an instance of your class

fleet oriole
cinder karma
#

But the point of a property is to allow you to make changes to how the field is read/written to without breaking clients

rain apex
#

(atra is more correct on technical basis AnnelieStare)

cinder karma
#

(It's very different in smapi land)

#

Pathos and his fancy rewritters 😛

#

So don't take the game as a canonical example to how properties usually function haha

fleet oriole
#

The clients being things inside SMAPI, right?

#

Luckily, my only purpose and use of C# is Stardew modding!

cinder karma
#

Clients in this case are other people calling your code

rain apex
#

could technically be yourself too, if you got multiple class and one calls another

cinder karma
#

You are a client of smapi

fleet oriole
#

I see!!!!! Thanks!!!

cinder karma
#

Yes but when you're both the right hand and the left hand you can make sure your changes are harmonious

#

(Even more fun when you get into interpreted languages landl

rain apex
#

nou

cinder karma
#

When suddenly you don't have a point of properties anymore

#

(Er. Properties by default)

#

Because making the field-> property switch doesn't break clients

#

You see this especially in python

#

In c# if it is public I will wrap it in a property even if it is just the trivial implementation

#

In python i don't property unless I realize I fucked up

fleet oriole
#

So the clients do not break then with the changes?

cinder karma
#

Because python is interpreted!!

rain apex
#

hm in C# case the source code won't need change on field -> prop right

#

just need to be compile again

cinder karma
#

Yes but what if the client has ducked off to mars or something

#

And you can't get them to recompile

#

This is where smapi is special btw

primal shore
#

random.. but anyone a sims 4 modder? SC_Baghead

cinder karma
#

Smapi literally rewrites mods and can (mostly, please don't ref a field) rewrite the mod to refer to a property not a field

#

Oh that's another thing that is different

#

A field is more literally on the class. When I hold it I hold it

rain apex
#

smapi should rewrite my brain tbh

cinder karma
#

A property is like being a guest. I can ask for read and write access but I don't hold with my hands the actual memory address

#

So I can't do ref stuff with properties unless you give me a ref property

#

What sims

worn remnant
slender furnace
#

A bit computerscience just for the lulz.
The problem showed here is about the Cordic Algorithm and a small proof which shows that the Algorithm isnt complete.
You will see this in the following examples:
cosd(6*10^995)
Has infinite Polynomial time and your computer isnt able to return a value.
When you think this is just depended on how big a number is then is the question why this calculation has a regular Polynomial time but the number is bigger :
cosd(6*10^1026)
This also works in the opposite direction. The number in the next calculation is smaller as both before, but the polynomial time is higher as from 1026.
cosd(6*10^847)
So what happens in the algorithm that the polynomial times from some calculations are so different?
I dont trick you in my homework or something like, but I guess questions like this can be funny to discover and fits well in a off-topic programmer channel.

Have fun ✌️

safe dragon
#

wtf is a cosd

#

I'll leave this to the mathier people...

slender furnace
#

cosd = Cosine degree
yes, this is a question for techy mathematicians.

pliant snow
#

Ive also not heard of cosd, and i cant find any resource discussing it

#

Unless its just cosine with degree as input rather than radians

#

Thought it was going to be like cosh

cinder karma
#

CORDIC (coordinate rotation digital computer), Volder's algorithm, Digit-by-digit method, Circular CORDIC (Jack E. Volder), Linear CORDIC, Hyperbolic CORDIC (John Stephen Walther), and Generalized Hyperbolic CORDIC (GH CORDIC) (Yuanyong Luo et al.), is a simple and efficient algorithm to calculate trigonometric functions, hyperbolic functions, s...

slender furnace
runic plaza
#

how can I turn off the double slash warning in visual studio code?

safe dragon
#

what's the warning

#

what programming language

rotund violet
#

Hover over it and show us what the tooltip says.

pliant snow
#

I'm guessing it's C

vagrant basalt
#

The problem is that JSON doesn't like comments. Down the bottom right, you can click on "JSON" to select the language. Change it to JSON with Comments.

pliant snow
#

or json

rotund violet
#

Pff, JSON doesn't count as programming.

safe dragon
#

json indeed doesn't like comments

#

depends heavily on the deserializer whether it can deal with em

pliant snow
#

its why ive moved away from JSON tbh

safe dragon
#

back to XML

rotund violet
#

I saw TOML in one of the mods I'm using. I forget which one.

#

Though probably the standard is moving more toward YAML (or RON if you're doing Rust).

#

Considering how many modders have trouble managing their braces and indentation correctly, SDV/SMAPI would probably see a benefit from supporting it.

pliant snow
#

yeah ive been using yaml more

#

since the stock Python json parser doesnt support comments

rain apex
#

yaml pretty and multi line strings (!)

rotund violet
#

It can be a little inflexible if you're designing a whole engine around it, but for the kind of configuration that 99% of mods need to do, it'd be perfect.

runic plaza
pliant snow
#

passkeys seem to have really taken off

safe dragon
#

apparently yeah

#

even though I couldn't even get them to work

#

I don't really understand why

#

I feel like they're just an attempt to get people tied to a specific service cause it has their passkeys

#

what random website did I try it for again

#

seems like bitwarden mobile supports passkeys now unlike 3 months ago

#

huh

#

I used it for Nvidia to fuck around but they seem to have removed passkey support

crystal wren
#

If I CAN have a passkey on something, I'm doing it nowadays. And it's genuinely a lot of places already!

#

It's trickier on my phone with my Yubikey at least, because it's not USB C.

safe dragon
#

whats the reason for this

#

passkeys for me so far have just seemed half broken and less reliable

#

I can't seem to log into my Nvidia account I made using a passkey at all

rotund violet
#

Are you talking about physical NFC/touch keys or the "passkey" they use to label all biometrics these days?

safe dragon
#

maybe they deleted the account idk I get no response

#

neither

#

passkeys have nothing to do with biometrics

rain apex
#

Are passkeys like fancier version of those things banks used to give u

rotund violet
#

Maybe they didn't used to, but that's what Google, Microsoft and everyone else is calling them now. Fingerprint, face unlock, etc. are all "passkeys".

rain apex
#

Before they all slacc and went to sms 2fa

safe dragon
#

that sounds more like using biometrics as an authentication layer before it uses actual passkeys for the login process

#

unless you're uploading a copy of your fingerprint to an online service for login

#

which would be unusual

#

idk the details of how passkeys work it's something with public and private keys but that describes most encryption

rotund violet
#

Ok, so you're apparently just talking about the generic use of a public/private key pair for authentication?

safe dragon
#

that seems to be all they boil down to yeah

rotund violet
#

Yeah, I get it. I mean conceptually it's just the server having your public key, and you using your private key to authenticate.

safe dragon
#

protection against data breaches and phishing I suppose

#

if they actually seemed to work that'd be nice

rotund violet
#

But that's been around for a long time? I think what's actually made it popular is the ability to have your private key behind something simple to use like a fingerprint or security key.

safe dragon
#

I seem entirely unable to log into the Nvidia account I made with passkeys just to try them out

#

it's just gone

#

focus, have you not been bombarded with websites asking you to stop using a password and switch to passkeys these last few weeks

rotund violet
#

No, but I've been using biometric unlock for computers, phones, banking apps and so on for a couple of years now, which is essentially the same thing.

#

Well, doesn't sound the same as what you're describing with nVidia. In those other things I mentioned like banking, password is used to create the key and biometrics just unlock it.

lethal walrus
#

(I also haven't been told to stop using a password)

rotund violet
#

Or maybe biometrics are combined with the password to create a second key. Don't know that there's really a standard implementation.

safe dragon
#

for the Nvidia account there is no password it's not even a fallback. There's just a passkey in my bitwarden vault for that specific account

rotund violet
#

Yeah that sounds a bit unusual. But I guess they figure they'll have more uptake if they sell it as "no having to remember passwords anymore!" (as if we haven't been using password safes forever)

safe dragon
#

no biometrics unless I use biometrics to unlock my bitwarden vault I suppose

#

there's legitimate advantages to these since they're safe against data breaches but they're rather annoying in usage from my experience so far

#

have to log in on someone else's computer? Better go log into your bitwarden account on their pc so that you can do that

rotund violet
#

Well, properly protected passwords should be safe against those too, it's just companies keep cocking it up - and I'm sure they'll manage to cock up passkeys too.

safe dragon
#

for a passkey you can't just look up your password on your phone and then type it out

rotund violet
#

I suppose if you only get a public key in the first place, it's harder for stupid developers to screw up the implementation.

safe dragon
#

idk I'm staying away from passkeys till something forces me to use them

#

I mean in the context of website accounts

pliant snow
#

doesnt discord support them now

safe dragon
#

probably

pliant snow
#

I bring it up because I was changing my 2fa app, and I was surprised how many sites prompted me for a passkey

rotund violet
#

One of the known issues with the biometric unlock is that if the biometrics change - even something like adding a new fingerprint - it invalidates the entire key and you have to set it up again. That's why this tech is usually provided as an alternative authentication scheme, for convenience. Banks and brokerages do this, Aegis authenticator does it, Apple does it on their Macbooks, and so on.

So if companies like Nvidia are choosing to do away with the password and having the only means of identifying you be a potentially volatile key, I could see why they might simply... lose an entire account.

regal ingot
rotund violet
#

Yeah, typically it's the same sort of thing that already exists with password safes - your account is created with a constant key, and your password/passkey/biometric/etc. is an additional key used to unlock the real key.

#

If someone screwed that up and tried to use the protection key as the primary key, then... well, then they screwed it up.

safe dragon
#

idk why you keep talking about biometrics. Nvidia's login system has literally nothing to do with biometrics

rotund violet
#

I don't use Bitwarden or even know what it is. Biometrics are the #1 use of passkeys everywhere.

safe dragon
#

you could use a yubikey for it for all it cares

#

bitwarden is a password manager

rotund violet
#

As MIB said, it really just sounds like you're talking about a shitty implementation and not a fundamental problem with asymmetric encryption being used to authenticate.

pliant snow
#

dont most password managers support them tho

#

biometrics really only work on a phone, yet they're supported in like a browser plugin?

safe dragon
safe dragon
rotund violet
#

Yes! Even KeePassXC has biometric unlock - which is, again, the exact same thing as a passkey, it's just your fingerprint [private key] protecting the same [public] key that your master password matches.

(It's not just phones, most newer laptops have fingerprint scanners. But sure, if no biometrics, then use a security key like yubikey.)

safe dragon
#

most is a bit bold of a claim

rotund violet
#

It's not just an authentication layer, there has to be an internal encrypted key that's decryptable by both your password and your security key/biometric/etc.

#

What is Nvidia even using for a passkey if it's not either biometrics or security key?

pliant snow
#

its using, you know, a thingy

rotund violet
#

lol... I thought passkeys had to be derived from a physical thing.

regal ingot
#

nope

pliant snow
#

I thought they were just an obfuscation over a password honestly

#

let the password manager handle the key rather than the user

safe dragon
#

it's just a public private key pair much like encrypted anything these days. Your password manager or yubikey or phone or whatever stores a private key, the authentication server has your public key and then with those login can be completed

rotund violet
#

Yes, but where is the private key if not on a physical device? Even Google's passkey uses your phone.

safe dragon
#

I mean any data needs a physical device to be on unless you discovered some metaphysical storage method

#

so idk what you're asking

rotund violet
#

What you're calling passkey isn't some "protocol" like OAuth as far as I know, so I'm not understanding how you set it up on Nvidia without some sort of biometric or security key.

safe dragon
#

anything that is technically capable of storing a private key in something has enough to use passkeys

rotund violet
#

It's a generic term for public-key authentication and for that you need secure storage of the private key.

regal ingot
#

I'm looking to try to figure out if the website identity is verified as part of the challenge itself or if that's assumed to be handled by the entire thing running over TLS of some sort and the user device only being willing to sign the challenge with the key pair that corresponds to the remote identity verified by the TLS handshake.

safe dragon
#

passkeys as we're talking about here is their implementation in the WebAuthn standard

pliant snow
safe dragon
#

even if it was… clouds are physical things

#

but yeah in theory passkeys could work with fuckin pen and paper if you gave someone a ridiculous amount of time to decode it all

#

what’s a website with an actual proper complete passkey implementation

#

I’ll try it out with bitwarden again

pliant snow
#

btw authy had a big security breach

safe dragon
#

I saw I gotta do something about that

rotund violet
pliant snow
#

i dont think they got any codes, but they did get phone numbers

#

i switched to bitwarden's authenticator today

#

why authy even needed my phone number i'll never know

safe dragon
#

I think for authy that’s only if you used their cloud backup thing

pliant snow
#

if everyones implementation is broken, it doesnt seem like a terribly robust system

safe dragon
#

so that you can recover your 2fa codes if your device gets bricked or something

rotund violet
#

Apple's doesn't seem to be broken. But then I only really use it for Apple itself.

safe dragon
#

I do have an apple account but I’m not comfortable using it for a real account I use yet

#

I’ll just make another dummy google account

pliant snow
#

protonpass supports them too apparently, they kept nagging me

#

but i havent tried it out

regal ingot
crystal wren
#

I just wish Bitwarden's UI was... nicer to use? I'm just on KeepassXC for now.

safe dragon
#

I’ll try that

rotund violet
#

Same, KeepassXC sucks in so many ways but everything else is worse.

#

Anyway, guess I just haven't seen this big push for passkeys, maybe they don't target people who already use 2FA with their marketing.

pliant snow
#

I didnt dislike bitwarden's UI, but I've noticed protonpass's browser extension is more streamlined

#

i think password managers might be more agressive with them in the future

rotund violet
#

The cloud password managers have always looked like an impending catastrophe to me - to my knowledge, the basic offline password-safe tech invented like two decades ago in KeePass et al has still never been breached.

regal ingot
pliant snow
rotund violet
#

Put it on Dropbox or Google Drive.

#

I just sync with my phone which accompanies me pretty much everywhere.

safe dragon
crystal wren
#

Syncthing!

safe dragon
#

I use a private VPN protected instance of vaultwarden personally

#

works well

#

other than this passkeys thing

rotund violet
#

Syncthing is probably more secure, yeah.

safe dragon
#

tbh the popup tells me to use a phone with iOS 16 or later and this is an android phone

#

idk what if I flip it around and try to log in on my phone with my tablet maybe that works

rotund violet
#

I'm not too worried since the password database is just a strongly-encrypted file; the whole idea is that it shouldn't matter if someone else gets it since they don't have the master password. Otherwise the password safe is no better than a .txt file.

#

I looked at Bitwarden's website and they proudly proclaim to be endorsed by CNet, Wired and the New York Times; that tells me all I need to know to stay the hell away.

safe dragon
#

hmm so it does work the other way around. When I try to log in using my phone as the “external device” I can’t log in. But when I use my ipad as the external device I can log in

#

despite being attached to the exact same bitwarden account

#

the website telling me I need a phone with iOS 16 or later tells me it’s just poorly implemented on android rn?

#

hell on firefox on android is just does not work

#

I had to switch to chrome

#

on firefox(android) if I press the “sign in with passkeys” button it just shows a loading bar and then gives up

#

I don’t even get far enough to select “log in with another device”

#

this needs more time in the oven before I can reasonably use it

#

bitwarden seems to support it but android and especially firefox on android seem to have poor support

#

my phone supposedly supports it but I get told there’s no matching passkey anyway

crystal wren
pliant snow
#

coward

#

its my turn to be DecidedlyHuman

safe dragon
#

give me your yubikey

#

currently I have two options for passkeys

  1. don’t use them for now
  2. buy an iphone
pliant snow
#

ive gone all out on syncthing

#

shits syncing every which way

safe dragon
#

I haven’t tried syncthing yet but I’ve been meaning to

pliant snow
#

its pretty slick

#

I use it to sync my personal files between desktop and laptop, and also arch linux packages so I dont have to redownload them everytime I want to update a machine

safe dragon
#

but unfortunately if I do decide to use syncthing, my option 2 of buying an iphone goes out the window cause syncthing doesn’t support ios

#

unfortunate

pliant snow
#

i have an iphone and I cant think of anything I'd actually want to sync

safe dragon
#

photos

#

I have automatic syncing set up rn for my phone photos to my home server

#

I use PhotoSync for that rn though. It automatically starts uploading new photos to my server when I connect to my home wifi network

#

I might consider keepassxc + syncthing instead of vaultwarden

#

vaultwarden has been giving me problems

#

sometimes it just stops working and I have to ssh into my server to restart the docker container

#

and I’m pretty sure it has a memory leak even if it’s incredibly slow

#

it just starts using ever so slightly more memory over the days and weeks

#

huh

#

keepassxc doesn’t have mobile apps?

lethal walrus
#

there's definitely some app to open its files on mobile though

safe dragon
#

ah it’s just not official

#

might be worthwhile to switch

#

but first I gotta switch away from authy

#

which I’ve been dreading

pliant snow
#

i did it today, it only took like 30 minutes to just redo all the services

safe dragon
#

what are you using now

pliant snow
#

bitwarden's, they have a separate authenticator app now

safe dragon
#

that would be counterproductive to me trying to switch away from my vaultwarden instance…

#

do it again a week later for keepass…

pliant snow
#

sort of. I've moved to protonpass, but im happy not having all my eggs in one basket

safe dragon
#

I make sure to put all my eggs in one basket and put the basket on a table in public lit with a giant neon arrow pointing to it

#

that way I can’t lose it

rotund violet
#

I might consider keepassxc + syncthing instead of vaultwarden

I've literally been doing this for over 10 years - not with syncthing, with various cloud syncs over time but same idea - and have almost never run into an issue that took more than 10 seconds to solve.

Sometimes low-tech is better. You just don't need a lot of infrastructure to store a few hundred passwords. The worst thing that happens is maybe I have to manually copy-paste something if the browser support doesn't work, like on Safari. I see literally no value proposition in cloud password (or passkey) managers - they're doing the same thing that I can do easily and freely/cheaply, but with greater risks of security breaches, data breaches, downtime and who knows what else.

safe dragon
#

fighting for my life with syncthing rn

#

just trying to sync a folder with nothing in it except a test.txt

#

syncthing cli is incredibly confusing

#

I can’t for the life of me connect to the web gui on my home server through tailscale

#

oh

#

I was copying over the wrong device-id the entire time

#

I was trying to sync a folder with itself

supple ether
#

I can't tell if I did something wrong or if stty cbreak just doesn't fucking work on the wsl terminal

#

My suspicion is that it does work but I can't tell because it's piped through windows terminal, which is doing its own cooking

#

Maybe I can just install a separate terminal for wsl that doesn't run through windows cli

pliant snow
#

Then you can connect to its web server

safe dragon
#

o

#

I’ll do that someday

#

syncthing seems to be working well

#

unfortunately neither keepassxc nor syncthing have ios versions

#

ios truly is the underdog

#

the more I get into funky nerdy tools the more annoyed I get by my iPad

pliant snow
#

yeah, I've had to rely on SMB for the ipad

rotund violet
safe dragon
#

yeah keepassium seemed to work at least

rotund violet
#

I've never been too fussy; XC isn't supported on Android either, I think I'm using KeePassDroid. Mobile in general is different.

safe dragon
#

keepassium wants a subscription even just to use autofill though so I will not be using that

#

it's almost 1 am so I will continue my experimentation tomorrow

#

in general I've noticed iOS apps are more prone to pay walls

#

I'm fine with single purchases though

#

I use a paid file explorer on iOS cause the default files app cannot deal with smb shares without throwing exceptions if you as much as look at it wrong

#

which isn't ideal when you edit photos on an iPad and need to upload them to your network drive

#

paid one has never had a single issue with anything and works wonderfully. Almost makes me forget the atrocious file system iPadOS has

pliant snow
#

proton drive will back up photos from iOS to their drive automatically, but I think the app has to be open

#

I should look into syncthing for this, but I doubt it'll have an option

safe dragon
#

on android their photo sync seems to work basically just as smoothly as Google photos

#

though I stopped using it after I got backups to my home server working

pliant snow
#

how dare

safe dragon
#

I mean my photos do still ultimately end up on protondrive cause I use it as my failsafe backup

#

my syncing system grows evermore complex

#

though I think I can just phase out PhotoSync it serves no purpose when I already have syncthing

pliant snow
#

theres a photosync on ios, idk if its the same tho

#

my syncthings are a web lol

safe dragon
#

seems to be

#

I sure as hell am not going to take photos with my iPad though

#

I suppose I could theoretically attempt to use it to sync my camera's photos but I would prefer to do that manually cause I gotta edit and filter through em anyway

#

I have now phased out photosync

#

very nice

pliant snow
safe dragon
#

wow

lethal walrus
#

I've had the obsidian projects plugin installed for a week or two at this point, and I only just figured out how you make one

#

oo it's very fancy

#

oh I have to make the folder to manage manually

#

oh i got it

candid pilot
#

does python just not use $PATH

#

i had to set $PYTHONPATH to get this module to be importable

#

then whats the deal with all the other pip packages

#

idk

thin estuary
#

i take back what i said about Vortex breaking the Cobalt Core mods. it turned out to be mods loading files recursively, not expecting the __folder_managed_by_vortex files...

cinder karma
#

Current project literally uses a local setup.py to get around it

pliant snow
#

It's got the dumbest name ever but its kinda neat

lethal walrus
#

it's a cool website

worn remnant
#

"X, The Everything App" only the world's largest baby could come up with that

supple mountain
#

how convenient that the person who came up with that is, in fact, the world's largest baby (derogatory)

#

the world's largest baby (complimentary) is, of course, my cat

#

floorp is fun to say

safe dragon
#

imagine telling someone you use the Floorp browser on your Pop!_OS pc

#

they're gonna think you're fucking with them

#

damn you can tile two browser tabs next to each other

pliant snow
#

they added a button to reopen closed tabs, and its just a simple thing idk why firefox doesnt have it

#

i know theres a keyboard shortcut but still

supple ether
#

It's not like, the best browser, but one I found recently that I kind of like using for specific things is Min

#

I would never use it as a daily driver for a bunch of reasons but it's actually really nice when I need just one or two web pages open and don't want my whole ass browser sitting open

fleet wren
pliant snow
#

oh would you look at that

#

for some reason the keyboard shortcut for that just stopped working one day on my machine (probably some over-eager plugin), so that'll be nice to have back

supple ether
#

There's also ctrl + shift + t which is what I usually use

pliant snow
#

That's what stopped working. No idea why

supple ether
#

Oh weird. That's unfortunate

#

Do you use the search shortcuts thing? It's legit one of my favorite Firefox features

pliant snow
#

Yeah, I have a few set up, and then I'll use duckduckgo bangs for the rarer ones

fleet wren
#

got @sdv for the wiki, among others

pliant snow
#

What do i have, let see

supple ether
#

I have several set up. Mycroft Project is great for sites that don't have their own

pliant snow
#

wow i didnt even know i had some of these lol

#

google, wikipedia, ddg, ddg images, wolfram alpha, youtube, arch linux wiki, AUR, ffxiv wiki

#

i apparently have github search too, cant say ive ever used it

supple ether
#

I have google, stardew wiki, tumblr, terraria wiki, wikipedia, youtube, minecraft wiki, mdn, caniuse, fimfiction, mal, and some others

pliant snow
#

I don't use their built-in ones for bookmarks, history, whatever tho

#

they're there, but i just don't remember what they are

supple ether
#

I routinely forget those exist

#

They're special symbols is the thing

supple mountain
#

the worst is switching between programs with different keyboard shortcuts and immediately wreaking havoc bc muscle memory

safe dragon
#

what is it with ios apps and subscription services

#

looked at 4 keepass clients for ios. Two of them lock basic features behind a monthly subscription, one isn’t updated anymore and the other one seems to be the only one with just a one time fee

#

unfortunately the one with the one time fee also seems to be like… the least liked one

#

unbiased review I’m sure

fleet wren
#

Strongbox (which is what I use) is one time purchase

safe dragon
#

oh it does have a one time purchase option on the website

#

but it’s a hefty fuckin 85 euros

fleet wren
#

Yeaaaahh
But I'm lucky I have money to spare, and it's well worth it in my opinion

safe dragon
#

I can afford it but it’s a bit much to drop rn before I know if I even like it

#

strongbox is the one I installed anyway cause keepassium gives off bad vibes

#

mainly because of the above screenshot

fleet wren
#

I think it has a 3 month trial

safe dragon
#

it does

#

I’ll give it a shot

#

it seems to be the one that’s got the best vibes to it at least

fleet wren
#

It is very good, so you at least have my word for it
I hook it up with a Keepass DB I sync between my phone and PC

safe dragon
#

mine should be synced with my home server and phone

#

I mean it seems to work

#

I don’t have syncthing for my ipad but it seems to work fine working straight from the smb server version

rotund violet
#

I don't think the subscription fixation is an iOS thing specifically, every single MBA has a raging boner for subscription revenue and we have far too many MBAs making decisions at tech companies. Maybe it's a little more common in the iOS/Mac ecosystem because those users tend to have more disposable income and thus tolerate it better.

#

I do miss the days of being able to just pay for a product. But to be fair, manufacturers don't have to do maintenance on physical goods they sell. Not usually, anyway. So I'm OK with subscriptions if there's strong evidence of active maintenance. If they just want free money then nope.

cinder karma
#

Guys, I tried to use the align environment in a table

#

Please

#

Latex tables

#

My sanity

safe dragon
#

you use latex a lot damn

#

any yeah subscriptions/"recurring revenue" has been gaining a lot of popularity in recent years. Offering a service instead of a product

#

but with iOS vs android I just notice a lot that android tends to have well established free apps with every feature available while an iOS equivalent tends to have some kind of "pro" version

#

there's even interesting cases like Anki where Android only has a well established unofficial free app while iOS only has a paid official app

pliant snow
#

I feel like that used to be the case up until a few years ago on iOS, now yeah everything seems to be a subscription. The top paid apps on iOS are a bunch of stuff no one has heard of, instead its all free apps with paid plans

safe dragon
#

having death with publishing to the app store I do understand wanting to be paid for it

#

it's a fucking nightmare

#

I worked on an app that showed a pollution map of your area and apple denied it several times claiming an unnecessary request for GPS permissions

#

it's a map...

#

publishing to app to the app store ended up taking like 5 months

rain apex
#

Maybe cus android let u side load stuff

#

So it's more appealing to the foss ppl

safe dragon
#

definitely helps... I mean technically apple now does too in my region but they made sure to make it extremely unattractive and essentially worthless to do

rain apex
#

How does it work?

safe dragon
#

basically third party app stores are allowed but to function they're required to still follow most of the app store rules and require monetary payment per download by the app store developer

#

all of their rules together make it worse than just dealing with the app store for anyone other than gigantic corporations

rain apex
#

That's not quite "just take this apk" side load huh

safe dragon
#

nope

#

I'm pretty sure there's another lawsuit going on rn about apple's malicious compliance with the ruling...

#

just like the US ruling where they forced Apple to allow alternative payment methods in app other than Apple's own payment system where they then implemented that but still require you to pay like 20% to Apple even when using a third party payment system + having restrictions on how easy it is to find or use

#

Apple is a pro at malicious compliance

#

they'd rather make people miserable than lose out on a few dollars

#

very tiring

#

it's a shame they make genuinely good products

#

lets them get away with it

rain apex
#

Let's stage a heist and steal the m2 chip designs

safe dragon
#

I think they're already at M4 now

pliant snow
#

excellent, they wont even miss them

safe dragon
#

patiently waiting for the day they give up on iPadOS and just release some touch screen optimized version of MacOS or something

#

an OS that actually let's you do things

#

rant over

#

ranting wasn't even my intention

pliant snow
#

people have been saying they'll merge iOS and MacOS for years, but I doubt it'll happen, especially now that they've been giving more attention to the Macs again

safe dragon
#

it's really not even what I want or need tbh. I just want them to stop locking down their iPads. Or at least the fuckin iPad pros

#

the balls to market it as a device for professionals

cinder karma
#

Would you enjoy a windows tablet ducks

safe dragon
#

honestly it'd probably be a better experience for me personally

rain apex
#

Have u considered funny chinese tablets that are banned from google play

safe dragon
#

I'll take jank over just being told I am not allowed to do something for arbitrary apple reasons

cinder karma
#

What about tiny sock wool and tiny sock needles

safe dragon
cinder karma
#

Tbh I've owned tablets in thr past

#

For some reason though

#

Possibly because my eyes are good and I don't game

#

I almost always just use my phone

safe dragon
#

my mom's got a Samsung tablet. It's quite good

cinder karma
#

What would I use a tablet for

#

That isn't better served with either

#

My phone. My spiral

#

Or my actual laptop

safe dragon
#

what's a spiral

cinder karma
safe dragon
#

oh

#

how simple

cinder karma
#

I'm a luddite

safe dragon
#

ultimately all I really need is some lightweight device I can easy bring with me that allows me to process and edit my photos

#

I'll probably just get a lightweight laptop after this iPad dies

#

unfortunately the iPad is 6 years old and has shown no signs of dying

#

so no excuse yet

#

damn you apple for making devices that actually keep working unlike my android phones that seemingly just get worse with every major version release

#

I may dislike my iPad but I dislike spending money when I don't need to even more

cinder karma
#

Haha meanwhile I use physical spirals for things too

safe dragon
#

can it edit my photos...

cinder karma
#

No

safe dragon
modest steppe
#

notebook can do many things

#

but not that

pliant snow
rain apex
#

sounds like you just need a portable film printer

safe dragon
#

I’m sure they’re more convenient to carry around than a laptop

fleet wren
#

wild, insubstantiated, and likely completely wrong opinion: if the Steam Deck gets an actually usable touch screen it'd kill every other tablet on the market

cinder karma
#

Meh

safe dragon
#

I have a steam deck sitting right next to me rn

cinder karma
#

I do basic image editing on my phone tbh

safe dragon
#

I don’t see myself editing photo on a screen that tiny

cinder karma
#

Big phone. Samsung

#

As I said I have good eyes

#

For detail work I would go to my laptop and the excessive screen real estate anyways

safe dragon
#

when I say editing photos I mean taking raws from an sd card, processing the raws and then editing before uploading em to my network drive

#

laptop someday

#

when this ipad dies

cinder karma
#

Oh I basically don't take photos

#

Of anything

safe dragon
#

photography is one of my hobbies so I do in fact take photos. Rarely of people but they do be photos

modest steppe
#

i only take photos of my dog

#

because he is a silly boy

safe dragon
#

I take many photos of cats though those are usually with my phone not my camera

#

those I do not edit

#

cats are already perfect

#

no editing required

modest steppe
#

same with dogs...

safe dragon
#

I did recently realize while sorting through all my files that I don’t have even a single photo of a dog

#

my bias is apparent

modest steppe
safe dragon
#

I have more pictures of indian runner ducks than dogs

#

and I’m in western europe

#

I do actually like dogs idk why this happened

modest steppe
#

perhaps there are no dogs near u

#

very sad

safe dragon
#

my dad has 2 cats, my sister has a cat, my mom has 2 cats

modest steppe
#

not enough doggos

safe dragon
#

my grandparents both had a dog

#

but that was before I had anything to take photos with

#

wait

#

no I found a dog

#

I have dog

modest steppe
#

DOG!!!

safe dragon
#

behold. dog.

#

5 year old picture

#

but it is a dog

cinder karma
#

Dog!!!

rotund violet
#

I use Adguard to block them all on Android, of course, but the principle is valid.

safe dragon
#

none of the apps I use on android have ads, what are you using?

#

not counting youtube and twitch I suppose

#

paying for an adfree version is common practice on android too

rotund violet
#

Any social media app; any video/audio streaming app; even basic stuff like weather or news (back when I read news).

#

Obviously something like a banking app won't serve ads, but that kind of app wouldn't have a subscription model either.

#

I don't remember precisely which apps have the most obnoxious ads anymore because they're all blocked.

safe dragon
#

I've never noticed any difference at all between those categories on android vs iOS. They always have ads

#

hell most social media platforms are ad agencies

#

unless you mean apps like vlc and mpv but they don't have ads on Android

#

I am a big supporter though of having a free ad supported version and then a single time payment for an ad free version

#

subscriptions can be okay too depending on what kind of service it is that it gives

cinder karma
#

SOURCE_COMPLETE = Waits for the Source COMPLETE event

#

Thanks, docs

#

(No, there are not docs on what the Source Complete event means)

safe dragon
#

my favorite kinds of docs

#

had to figure out something for a card reader at work at one point had came across like ESC_1 or something and the only docs were “sends ESC signal connector 1” or something

#

no fruther information of what that means

cinder karma
#

There is another section

#

Where the datatype is listed as "bool"

safe dragon
#

I think it ended up being a signal to open the cash drawer of the cash register

cinder karma
#

So I set it as True

#

But that is a TypeError

safe dragon
#

how about 1

cinder karma
#

....sorry, ni, am I just wrong at what a bool js?

safe dragon
#

javascript has no idea what a type is it can’t tell you

cinder karma
#

Ah

#

The only value I can set it to is 0

safe dragon
#

just 0

cinder karma
#

Not a supported property

safe dragon
#

the source will never be completed

#

whatever that may mean

cinder karma
#

I fucking hate NI

#

Hey crumble do me a favor

#

Google "how do I do generics in python"

#

My god i thought I didn't understand covariance before

#

What do you mean bool?

safe dragon
#

python has generics?

#

wouldnt generics require like, a type system

#

oh the type hints

cinder karma
#

Anyways

#

After ten minutes of research I have written

#

T = TypeVar("T", bound=Hashable)

safe dragon
#

gratz

candid pilot
cinder karma
#

A lot

#

Ahhh

#

No null collapse operatirrrrr

safe dragon
#

um smh it’s called the null coalescing operator

candid pilot
#

found a um infix hack thing for python

#
# definition of an Infix operator class
# this recipe also works in jython
# calling sequence for the infix is either:
#  x |op| y
# or:
# x <<op>> y

class Infix:
    def __init__(self, function):
        self.function = function
    def __ror__(self, other):
        return Infix(lambda x, self=self, other=other: self.function(other, x))
    def __or__(self, other):
        return self.function(other)
    def __rlshift__(self, other):
        return Infix(lambda x, self=self, other=other: self.function(other, x))
    def __rshift__(self, other):
        return self.function(other)
    def __call__(self, value1, value2):
        return self.function(value1, value2)

# Examples

# simple multiplication
x=Infix(lambda x,y: x*y)
print 2 |x| 4
# => 8

# class checking
isa=Infix(lambda x,y: x.__class__==y.__class__)
print [1,2,3] |isa| []
print [1,2,3] <<isa>> []
# => True

# inclusion checking
is_in=Infix(lambda x,y: y.has_key(x))
print 1 |is_in| {1:'one'}
print 1 <<is_in>> {1:'one'}
# => True

# an infix div operator
import operator
div=Infix(operator.div)
print 10 |div| (4 |div| 2)
# => 5

# functional programming (not working in jython, use the "curry" recipe! )
def curry(f,x):
    def curried_function(*args, **kw):
        return f(*((x,)+args),**kw)
    return curried_function
curry=Infix(curry)

add5= operator.add |curry| 5
print add5(6)
# => 11

(https://code.activestate.com/recipes/384122-infix-operators/)

so you can probably define a null coalesce operator but it's like super hacky 😭

safe dragon
#

a lil

cinder karma
#

Just a little

safe dragon
#

hmm

cinder karma
#

There is pymaybe

safe dragon
#

who needs null coalescing

cinder karma
#

Okay but what if x=0

#

Or x=[]

safe dragon
#

shame

#

only a minor issue

pliant snow
#

what would you want it to do

safe dragon
#

exactly what it’s doing but in this case we’re trying to get null coalescing

#

in javascript or C# that’s denoted with ??

#

where the first value is used unless it is null, then it takes the value after

candid pilot
#

you could do like:

NullC = Infix(lambda x,y : x if x else y)

given_title = "yay!"

title = given_title |NullC| "My Title"
print(title) # "yay!"

expected_class = None

my_class = expected_class |NullC| int
print(my_class) # <class 'int'>

??

safe dragon
#

very handy for dealing with the the evil thing that is null

cinder karma
#

Will I be murdered for introducing pymaybe into this codebase

#

We don't all know haskell

safe dragon
#

not by me

cinder karma
#

(I know I know)

candid pilot
#

they're going to execute you sorry

safe dragon
#

I just don’t like the name maybe

#

I prefer the name option

candid pilot
#

new bool for when you're unsure

pliant snow
safe dragon
#

yes

candid pilot
#

theres no Null in py

pliant snow
#

oh whoops, None

cinder karma
safe dragon
#

None, null, nil… all evil

pliant snow
#

I'm gonna be honest, I like that a lot better than many other options. It's clear and consise

safe dragon
#

the null coalescing operator is clear and concise too once you know what it does

#

which you will learn very quickly if you ever work with a modern C# codebase

candid pilot
#

python should let you define operators

#

not sure if i truly believe this but it could be fun

cinder karma
#

Oh god no

safe dragon
#

if haskell allows it then it’s gotta be a good idea

cinder karma
#

They should just implement the same operators every one has

#

Anyways

#

I like pymaybe

safe dragon
#

be like haskell and have so many operators it requires a full month course to understand just the popular ones

candid pilot
#

i need to learn haskell or some other functional language

safe dragon
#

haskell is… an experience

fleet wren
#

learn rust instead, it's easier

candid pilot
#

bc how i think when programming is already in like a functional sense sorta.

#

objects are not really intuitive to me

rain apex
#

have u considered perl

safe dragon
#

no

cinder karma
#

I mean I need to brush up on my Haskell

fleet wren
safe dragon
#

I’ve seen mousey write enough perl to know I have no interest in getting into that one

cinder karma
#

As one of the few people in the world with a good reason to use Haskell in production

safe dragon
#

a rare breed

cinder karma
#

(Hint: fpga code)

#

Don't get me wrong I like Rust too

candid pilot
#

is rust good with functional stuff

cinder karma
#

And not for the functional-ness

#

More for the compiler telling me off

candid pilot
#

i know like nothing abt rust sorry

safe dragon
#

I do think it’s valuable to give pure functional a proper try at least once in your programming journey. Most functional programming languages aren’t nearly as complicated or mathematician oriented as haskell is but it’s kinda a grandfather of the paradigm at this point

cinder karma
safe dragon
#

rust took a lot of stuff from functional programming yes to the point that haskell programmers are often willing to use it

#

but

#

it’s also not really a language that in any way forces you to write in a functional programming style

#

I’m here rn building my file server backend in rust

fleet wren
#

Yeah, it's mainly imperative but with very decent functional syntax
(And just enough OO to sate the C++ converters, but nothing more)

cinder karma
#

Anyways

#

Pymaybe feels good to me

pliant snow
#

Anyways

candid pilot
# cinder karma

i love how the difficulty just goes to infinity for a second

cinder karma
#

But like

pliant snow
#

our lord and savior Nim has user defined operators

#

what else could you want

cinder karma
#

It provably would be a Problem

safe dragon
#

should I use Nim for the next AoC aquo

pliant snow
#

thats the spirit

#

idk what I'm gonna use

candid pilot
#

also i love how async/await starts the spiral

safe dragon
#

async/await in rust is one of the pain points…

candid pilot
#

in what language is it not

safe dragon
#

it’s getting better… slowly

#

C# async await might be a lot more complicated and annoying than it looks at first glance but at least it’s easy to use

#

rust’s async… is not

candid pilot
#

got it

fleet wren
#

Rust's async/await is, for better or for worse, a feature borne out of response to real world considerations and demand. It does make Rust more attractive to real world adoption

safe dragon
#

honestly once you just slap on an async runtime like tokio it’s fine till you want to use async and traits together

#

it’s at least now technically possible without async_trait but the docs I think still state to avoid using it in anything but private use

#

🙏

cinder karma
#

It could be worse you could be in labview

safe dragon
#

honestly you seem to work with a lot of things I don’t want to deal with…

#

to be fair I work with VB.NET sometimes which most people also don’t want to deal with

#

but it’s not horrible

#

the syntax is just very painful

cinder karma
#

I'm not a programmer lol

fleet wren
#

Guess I'm lucky I get to work with a tech stack that doesn't make me want to shoot myself
(The downside is that said stack is so insular no one else outside the company uses it, so I'm boned if I leave)

safe dragon
#

I find it hard to even say what I do cause I work on a large variety of applications sometimes within the same day

#

it’s mostly web related but not always

cinder karma
#

I've gotta get my Clash skills up

safe dragon
#

clash of clans

cinder karma
#

Haskell Clash

candid pilot
cinder karma
safe dragon
#

I’m simultaneously in the looping thing at the end of that graph and at “wtf is a Cow<>”

cinder karma
#

Copy on write

safe dragon
#

yes

#

well

#

no

#

clone on write

cinder karma
#

Probably one of the most straightforward concepts on that graph

#

Shockah loves it, and by that I mean Shockah loves swift

rotund violet
#

Visual Studio's code suggestions are normally very good, but this one amused me.

candid pilot
#

lmao

safe dragon
#

that’s very new

candid pilot
#

i got free copilot like months ago and well it sucks

cinder karma
safe dragon
#

I’ve had very good experiences with copilot, the autocomplete that is. I don’t use the chat shit at all

cinder karma
#

It once asked me if I wanted infinite IntPointers

#

Also did infinite lambda once

candid pilot
#

yeah the autocomplete

#

it sucked for me

cinder karma
#

My favorite was when it completed #if DEBUG

#

To #if DEBUG.log

rotund violet
#

I'm not sure if this stuff is LLM - maybe it is, although I started getting these suggestions a few years ago before Copilot and such were really a thing. It's mostly really great at automating the annoying boilerplate like repeating the same logic 4 times in a row for left/right/top/bottom, but yeah, sometimes the suggestions are hilarious.

#

I have been decidedly more unhappy on the JetBrains side.

safe dragon
#

this is my favorite suggestion copilot has ever given me

cinder karma
#

Still the best one I got was being able to write struct Result< and the ai did 80% of the rest

fleet wren
#

The Java school of naming

rotund violet
#

Haha... I think Microsoft's system might be an expert system, or some hybrid AI/ES.

pliant snow
#

my favorite copilot suggestion was someone elses name at the top of the file

safe dragon
#

git blame

cinder karma
#

My favorite I saw on Twitter was it adding "this is a bit hackish" in the auto-generated comment

candid pilot
#

omg

#

my favorite was when it wanted to write a comment that said like "not the best way to do this, but"

supple mountain
#

"not the best way to do this, but" THEN WHAT IS, AI????

#

the ai is just giving itself a little cheeky comment, as a treat

candid pilot
#

ai can't think for itself it doesn't know

safe dragon
#

honestly though 99% of the time copilot saves me quite a bit of typing.
Though today I was writing some unit tests rounding error correction stuff for invoices/bookkeeping and every time copilot would suggest a unit test it would just be fundamentally incorrect

#

I was actually incredibly surprised when it at one point gave me a value that was actually correct

#

I triple checked it cause I didn’t see that coming

cinder karma
#

Yeah I still have to check it's work

#

But still saves typing

#

For chatgpt I get the best results asking it to do simple latex tasks

#

It introduced me to the needspace lib today

safe dragon
#

copilot is great for learning a new library tbh as long as it’s big enough to be in the training set enough

cinder karma
#

For me it is more useful in latex land just telling me what exists

#

There are sooooo many libs

safe dragon
#

it will fuck up a lot but it will tell you about functions you didn’t even know existed

#

though for some languages like javascript it just hallucinates functions that actually don’t exist

#

I’ve found copilot does a lot better on strongly typed languages

#

and for elixir it’s honestly just harmful

#

it does not work

fleet wren
#

Javascript is the wild wild west, maybe it does exist but in some bumfuck library named after a coffee type

cinder karma
#

See crumble

#

You laugh at my tech stack

safe dragon
#

knowing javascript it definitely does exist somewhere

cinder karma
#

But for a hardware dev my tech stack is among the more sane

#

And I don't touch Javascript ever

#

Look, older hardware engineers use perl and tsh

safe dragon
#

I mostly don’t touch javascript… I write it maybe once a twice a month…

#

tsh just sounds like disapproval

rotund violet
#

Pretty much, it automates some of the typing for me, not the thinking. Which is nice, since typing is the tedious part.

safe dragon
#

I mostly just find the tech you work with fascinating cause I have never heard of any of it

rotund violet
#

That was like... 20 seconds late. But you get the idea of what I was replying to.

safe dragon
#

yes

#

fpga programming or really anything related to the entire field of hardware and embedded programming is unknown to me

rotund violet
#

You should see the ultra-narrow tools for the $10 MCUs, at least FPGAs are sort of general.

safe dragon
#

a 10 dollar marvel cinematic universe

rotund violet
#

If you want to play around with, I don't know, a SAM D10 or something, it's all vendor-specific tooling and languages.

safe dragon
#

honestly it’s incredible that despite javascript offering basically nothing to allow your code to be self documenting, most libraries are also not documented outside of that either

#

you just have some black box you import and then have no idea what to do with

#

cause dotting into it does nothing

candid pilot
#

horrid language

rotund violet
#

Most of the industry has moved to TypeScript by now. Or if not most, then a very large part.

safe dragon
#

I'm sure it is but the only thing I write Javascript for is still using jquery 1

rotund violet
#

Sad.

safe dragon
#

I'll be diving into typescript world soon for hobby stuff

candid pilot
#

is there a decent way to sort of curry class objects in python <- insane

rain apex
#

is partial insufficient

candid pilot
#

well it can't possibly be a true curry i think without the class being set up in a specific way? i did something like this as a proof of concept i guess

#

wait im sending that as a file

#

idk

#

some of the code is ugly please forgive me

rain apex
#

constructors in python are just functions so i guess it depends on whether you care about the result being a real subclass

#
>>> class Foobar:
...     def __init__(self, x, y):
...         self.x = x
...         self.y = y
... 
>>> from functools import partial
>>> partial(Foobar, 1)(2)
<__main__.Foobar object at 0x7d8f1c13a600>
>>> inst = partial(Foobar, 1)(2)
>>> inst.x
1
>>> inst.y
2
candid pilot
#

does it work with non positional args

rain apex
#

like kwargs?

#

yea it should

candid pilot
#

ooh

#

omg thats so much simpler than what i've been doing. i didn't see functools.partial when i was looking things up but maybe i just looked up the wrong things

rain apex
#
>>> class Foobar:
...     def __init__(self, arg1, arg2=None, **kwargs):
...         self.arg1 = arg1
...         self.arg2 = arg2
...         self.kwargs = kwargs
>>> inst1 = partial(Foobar, 1, arg2=2, any=20)(test="weeee")
>>> inst1
<__main__.Foobar object at 0x74d4599970b0>
>>> inst1.arg1
1
>>> inst1.arg2
2
>>> inst1.kwargs
{'any': 20, 'test': 'weeee'}
candid pilot
#

thank you

rain apex
#

honk language tbh

cinder karma
#

functools is the best

#

also take a look at dataclasses

rain apex
#

i did try *args actually but it'll get confused

#

so just stick to kwargs

candid pilot
#

yeah i've seen a lot of great things from functools. never this though

#

tysm

cinder karma
#

I also use itertools and collections quite a bit

rain apex
#

defaultdict my beloved

cinder karma
#

yesssss

#

namedtuple is pretty good too

#

and oocccassionally I want a deque

candid pilot
#

oh partial is so convenient i'll be using this all the time omg

safe dragon
#

I’m getting phantom touch screen inputs

thin estuary
#

Is your iPad plugged in?

#

I’ve seen that sometimes happen with some cables on an iPhone

#

Also sometimes just restarting the iPhone fixed that

safe dragon
#

it is plugged in yeah

#

idk they’ve stopped for now

#

one look at laptop prices is enough to motivate me to keep using this thing till it’s essentially unusable anyway

cinder karma
#

Do you guys not get the chance to buy gently pre-used laptops off work?

safe dragon
#

no

#

I'd need to become friends with the IT department for that

cinder karma
#

Worth it

safe dragon
#

they're not the most sociable folks I'll be honest

cinder karma
#

You run linux so that is a common interest

safe dragon
#

I don't think they run linux

#

even our servers are windows servers

pliant snow
#

thats why theyre not socialable right there

#

intereting list

pliant snow
#

Are the only real options for cross-platform GUI still just GTK or Qt

#

Maybe wxwidgets...

#

I want to use qt, but i really don't like their editor

ivory shadow
#

There's Avalonia if you liked WPF.

#

(and are also using .net)

pliant snow
#

Nah, it's a C++ project

ivory shadow
#

Probably just the ones you named then

fleet wren
#

Though personally I'll stick it out with Qt

rain apex
#

You don't have to use qt editor if u don't wanna

#

Can write qml or just call the widgets in code

fleet wren
#

Though writing widgets purely in code is a bit of a pain
QML is awesome, but you're sacrificing native looks in return (then again, GUI programs stopped caring about native widgets like half a decade ago)

rain apex
#

I find setting up the signals/slots more intuitive in code

pliant snow
#

It's annoying to compile, but yeah I think I can use just their UI editor, then edit code elsewhere, once the compiler is set up

crystal wren
pliant snow
#

hmmm. I'm looking for something more native window-esque

crystal wren
#

wxWidgets is still a thing!

pliant snow
#

Yeah, it's between Qt and wxWidgets. I think I'm going to stick with Qt for now unless it drives me nuts. I'm not doing anything too complex

cinder karma
#

Pythooooonnnnnnn whyyyyyy

rain apex
cinder karma
#

I just spent fifteen minutes trying to figure out WHY my changes aren't taking effect

#

That ONE file wasn't updating because whyyyyy

safe dragon
#

gui frameworks continue to be few and far between as far as actually good ones go

rotund violet
#

It's just so much easier to do with web frameworks (using Tauri/Electron/etc. as necessary).

crystal wren
#

<insert dramatic hiss here>