#programming

1 messages · Page 56 of 1

olive sable
#

aight time to make an os, step 1 is webgl compatebility, step 2 make everything run in browser

rigid snow
#

no absolutely not

fast pagoda
#

that would be called stack overflow tier help at the worst

#

not vibe coding

rigid snow
#

vibe coding is when you don’t look at the code at all

sour harness
#

Vibe coding in its original definition is asking the AI to do things and then not even looking at the code

opaque wharf
#

No, as in, the length that you need to do to get something functional is considerably higher for browser. You can make your own OS that drops you to a console more easily than you what you need to do to make a browser perform HTTP request, preferably TLS, receive HTML, parse, and display it

rigid snow
fast pagoda
#

i have tried to use like

#

jules

#

the google agent thing

#

for a bugfix

#

and it is terrifying

#

not even being able to see what's happening, it just shits out a PR

wary rover
fast pagoda
#

it's nice to have the help in your back pocket if something is making you slam your head against a wall

#

if only just to have another opinion without having to bother someone irl

olive sable
#

omg i hate how c++ does this.
i cant amke a copy cuz the data in vram is linked to the original, and i cant make a pointer cuz the object gets deleted at the end of the function so the pointer wouldnt point to anything.
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA

fast pagoda
rigid snow
wary rover
fast pagoda
opaque wharf
olive sable
#

but like, how do i handle it????
its fucked

opaque wharf
#

Dont create the object inside the function

#

So the object won't get out of scope and destroyed

rigid snow
olive sable
opaque wharf
#

Or DO create the object inside the function, but transfer it to some other other which the lifetime is outside of the function

fast pagoda
opaque wharf
fast pagoda
#

biggest embed NA

rigid snow
#

smh should’ve just gone with rust

olive sable
#
class Scene
{
    public:
        Scene(int sceneNr)
        {
            if (sceneNr == 0)
            {
                int shaderProgram = makeShader("shaders/shader3D.vs", "shaders/shader3D.fs");
                glUseProgram(shaderProgram);
                setUniformBuffer(shaderProgram);

                tinygltf::Model model1;
                tinygltf::Model model2;

                Object obj1;
                Object obj2;

                std::pair<GLuint, std::map<int, GLuint>> mesh1 = makeMesh(model1, shaderProgram, "models/vedal987/vedal987.gltf");
                std::pair<GLuint, std::map<int, GLuint>> mesh2 = makeMesh(model2, shaderProgram, "models/vedal987/vedal987.gltf");

                objectlist =
                {
                    {obj1, &model1, mesh1},
                    {obj2, &model2, mesh2}
                };
            }
        }

code go brrr

sour harness
opaque wharf
#

This is where the real fun begins with c++ memory management problem neurOMEGALUL

olive sable
#

the problem is that &model1

#

and 2 too i guess

fast pagoda
#

vedal987.gltf
vedal987 good luck, turtle fk

olive sable
#

tutel is my test object

rigid snow
#

goated format btw

opaque wharf
#

Also, I'm on mobile so I can't really write an example now

olive sable
#

o7

opaque wharf
#

Pray that a higher being descends here to help

rigid snow
sour harness
#

You are already in a class. Just move the models to a class field

olive sable
#

the problem is that when i get a if (sceneNr == 1) or if (sceneNr == 2) then ill have a diffrent amount of objects

gritty dust
#

@olive sable any more amazing videos with S tier audio

olive sable
#

not yet

tender river
sour harness
#

So have a vector of objects instead

tender river
#

i'd definitely replace std::pair<GLuint, std::map<int, GLuint>> with auto

olive sable
#

i actually put that in a struct but forgot about it lol

tender river
#

theres also fun stuff like

auto function() -> int {
    return 5;
}
opaque wharf
tender river
#

moving the return type to the right

#

dont ask me how this works

fast pagoda
#

automagically

rigid snow
#

automatically inferred from explicit declaration

opaque wharf
sour harness
#

"Fuck, turns out people like the return type after the function better. How can we shoehorn that into the standard?"

olive sable
#

no....

tender river
# olive sable no....

also you should know about this

std::vector<int> x { 5, 6, 7 };
for (auto &n : x) {
    n += 5;
}
fast pagoda
opaque wharf
# olive sable no....

Anyhow yeah, make a container placed outside of the function. Create the object inside the function and pass it to the container. Do all of that while maintaining memory safety if possible

olive sable
tender river
fast pagoda
warped narwhal
opaque wharf
rigid snow
#

if i ever write a type system im doing Whatever

fast pagoda
#

based

#

type idk

opaque wharf
#

WeBall

rigid snow
amber fractal
opaque wharf
fast pagoda
opaque wharf
#

Repository pattern?

fast pagoda
#

a generic type, but only one and we'll tell ya later

rigid snow
#

type generics mhm

opaque wharf
warped narwhal
tender river
#

theres a type @Any() but its only a thing at compile time

fast pagoda
#

i like to cast type yolo and then sudo anything with the word danger in its description and then wonder why my distro exploded

tender river
opaque wharf
fast pagoda
#

alright i finally will see the light surely it's nowhere to go but up

tender river
#

i honestly dont see a reason to use nixos on wsl but then again i dont see a reason to use wsl in general over linux

rigid snow
#

so you have microsoft copilot neuroPogHD

fast pagoda
#

it's simple mathematics
lazy and want to be able to use windows environment easily since that's what i've always been used to
but also want to be able to use linux for dev stuff

rigid snow
#

and edge !!!

tender river
#

this reminds me how github emailed me "you are now eligible for github copilot" and then sent me to this page

opaque wharf
rigid snow
#

i mean they rejected the application because *a wall of requirements i didn’t fulfill*

#

also they now require billing info for copilot xd i wonder why

rigid snow
fast pagoda
#

i mean it's either

  1. linux only
  2. dual boot
  3. windows w/ wsl
  4. only windows

1 = oof if you are used to windows env and not everything you have used forever is on linux and you dont really feel like totally upending the paradigm of how you interact with your pc at baseline (not a bad thing on its own but convenience wise not great)
2 = extra annoying these days with uefi and secureboot working together to fuck linux bootloading as hard as possible because "fuk u" - microsoft
3 = slightly less linux compat due to the fact that it's inherently running within windows which leads to fuckery at times wrt network interfaces and such BUT you get both environments
4 = cringe because you can only use windows

sour harness
#

you can also run Windows in a VM on linux

opaque wharf
fast pagoda
#

yeah but it's just worse than wsl is the other way around

rigid snow
#

i absolutely will not thanks for the suggestion

#

good luck playing any game with AC

tender river
#

i have a windows vm but i only use it like once or twice a year

opaque wharf
fast pagoda
#

if linux had some sort of wsl equivalent tier of interop it'd be a different story

tender river
#

and you dont have to play every game you know you can just not play them right

sour harness
#

Eh, if it doesn't run under Proton just find another game to play

tender river
#

theres a billion games in the world you dont have to play aaa slop

opaque wharf
#

We cooking mintcandy now, LFG

rigid snow
tender river
#

yeah thats fair

#

anyway, dual booting should work for that

rigid snow
#

i do

opaque wharf
fast pagoda
#

i mean regardless of the game or anything you want to use that strictly works better on win, i'd say there's probably a significantly larger proportion of the ecosystem that doesn't work well at all when trying to run it in a windows vm

as compared to running linux pkgs in wsl which generally have no issues

tender river
#

windows vms work just fine

opaque wharf
fast pagoda
#

just fine =/= nearly seamlessly

tender river
#

wine doesnt, but windows vms just have 0 issues besides possible bad configuration

fast pagoda
tender river
#

vms are a pain to configure though, dual booting is easier

manic birch
#

Yes.

rigid snow
opaque wharf
# fast pagoda yes

So I can plug my USB device, and WSL could read it? Arbitrary USB device mind you

fast pagoda
#

and dual booting i'd argue as easy as it is, is still infinitely more annoying than using wsl is

tender river
opaque wharf
#

I see, WSL has come a long way then since last time I used it

fast pagoda
#

wsl2 is a whole different beast than wsl1, it's much less of a vm frankenstine thing

tender river
#

i liked wsl1 for how integrated it was but it was probably a maintenance hell

rigid snow
#

you don’t know what a frankenstein is unless you’ve seen docker on macos

fast pagoda
#

docker on macos
docker is a frankenstine on its own

fast pagoda
#

if anything it's a plus that linux can't use it

manic birch
#

I manage enterprise docker stuff..and having multi users can get painful..

fast pagoda
#

you couldn't pay me to put that shit on my computer

olive sable
#

i have done the thing neuroHypers

rigid snow
fast pagoda
#

beautiful

#

enterprise standard btw

rigid snow
#

i’ve had this happen btw

fast pagoda
#

damn

rigid snow
wary rover
#

I forgot that Apple makes computers too

fast pagoda
manic birch
# opaque wharf ...what?

Most of the time it's fine but docker loves to be run as root so when you get into accessing things such has gpus.. it gets messy. Lots of groups.

opaque wharf
olive sable
#

yes

fast pagoda
#

containerd is a daemon

opaque wharf
manic birch
#

The damon itself yes, and you can setup group permissions.. but there are some things that it wants you to be root for device access

fast pagoda
#

that's why podman is better for non-root access cases

manic birch
#

yup. but when you live in a world where you have to setup what others want. heh

rigid snow
# rigid snow

btw apple apparently introduced some sort of open source oci runner

opaque wharf
rigid snow
#

i'm not familiar might look into it

#

i mean oci IS a pre-existing standard

fast pagoda
manic birch
#

Apple loves to make their own standards. Makes sense.. or something..

rigid snow
#

yep

#

this

opaque sigil
#

that's mac only no?

rigid snow
#

probably?

fast pagoda
#

i would imagine it's to address the fact that docker sucks on osx

rigid snow
#

You need an Apple silicon Mac to run container.

fast pagoda
rigid snow
#

i imagine this one is the backend

fast pagoda
#

you would think that

opaque sigil
fast pagoda
#

but it doesnt describe it that way

crude carbon
#

I wonder if im the only programmer that builds their app to be multi threaded before ive even got half the main features implemented

fast pagoda
#

i'm the opposite

#

i'd prefer less than 1 thread

#

i semi thread my application

#

.25 threads only

crude carbon
#

lol

opaque sigil
fast pagoda
#

oh yeah you right, i was reading it the wrong way around

#

getting confused why containerization didnt mention container in its repo

rigid snow
fast pagoda
#

it's because container is citing containerization in its repo

#

not the other way around

opaque sigil
#

yeah cause containerization doesn't need container neuroPogHD

fast pagoda
#

computer

rigid snow
#

very apple naming very not confusing thanks

#

ContainerKit

fast pagoda
#

yeah if it were me i think i'd have containerization built off container but w/e

#

seems more like container would be the base unit

opaque sigil
#

don't forget the thing that actually powers it, Virtualization

fast pagoda
#

tim apple strikes again with his genius

rigid snow
fast pagoda
#

at least they went ahead and reinvented gguf but shittier for ML

#

thank god for mlx

opaque wharf
fast pagoda
#

mlx

#

basically their version of .gguf but it only supports 4 bit and 8 bit quants

#

and it only runs on apple

#

hardware

#

very integrated with metal

#

so it's just a worse gguf if you want your model to run slower

#

but god dammit you have apple sillycon

opaque wharf
#

I swear some programmers need creativity with naming. Vulkan, Molten, Metal, Virtualization, Container, Containerization.

fast pagoda
#

i preferred mantle over them all

opaque wharf
#

Also that

fast pagoda
#

at least mantle kinda makes sense as a name

#

it's like the mantle layer ya know

#

lower level closer to the silicon

#

makes sense

opaque wharf
#

Yeah, because the other has established the geologic(?) term

fast pagoda
#

silicon is a rock

#

close enough for me

opaque wharf
#

Hmmm, fair enough I guess

rigid snow
fast pagoda
#

MoneyIncineratorKit

rigid snow
#

you're like: aha, this one helps me integrate <Thing>

opaque wharf
fast pagoda
#

well, it's apple so they probably consider themselves the inventor of whatever thing it is anyways

rigid snow
#

eh not really, almost none of it is cross-platform

fast pagoda
#

apple just invented containerization guys

opaque wharf
#

Also, WebAPI

fast pagoda
#

what a novel concept

rigid snow
#

can they uninvent it please so docker never happens

fast pagoda
#

nope that's locked in

#

as a small bonus/treat you can have kubernetes still

rigid snow
#

docker outweighs any positives gained

fast pagoda
#

you were not kidding

olive sable
#

i decided to add the text in obs jsut in case

fast pagoda
#

i despite docker but don't dislike kubernetes somehow

#

does that make me mentally ill

gritty dust
#

Fire

#

bro

wary rover
#

He didnt lie about headphones warning

hoary lion
#

new

olive sable
gritty dust
#

Lol

#

its peak tho haha

wary rover
#

Ran into this issue while uploading a video to youtube

#

On youtube it's so much quieter

hoary lion
#

what is #programming working on this beautiful sunday afternoon

olive sable
fast pagoda
#

complaining about docker and apple existing

#

and sam is working on the cure for hearing

rigid snow
hoary lion
#

no dont cuss my lil docker

opaque wharf
wary rover
rigid snow
#

lufs is perceived loudness at one volume it's not db

olive sable
#

i just lowered my audio from 24 to 8 while listenign to it so evilShrug

rigid snow
#

but probably

#

in this particular case

wary rover
#

Humor might not be my strong suit

fast pagoda
wary rover
#

Nothing is my strong suit to be fair

olive sable
#

the audio fuckery is done in obs so i only have to check if it recorded well.

fast pagoda
#

plus not having to fk around with the individual container but the cluster mainly

#

kubert manages to not explode far more readily than docker

rigid snow
amber fractal
opaque wharf
opaque sigil
#

good time to have a limiter on every input

olive sable
rigid snow
rigid snow
opaque sigil
#

nah it does

olive sable
rigid snow
#

assuming it's set at 0db

#

of course

#

which it isn't

fast pagoda
#

k8s networking is actually stable because it has to be because the pod itself needs it to be
they also can self recover much better if something does break, same reasoning?
i fucking hate docker-compose or ever going near one

opaque wharf
#

While on the topic, dB units are wack

olive sable
#

these are my settings, just a +50dB

fast pagoda
#

oh just a casual +50db

olive sable
opaque sigil
#

exponential

rigid snow
#

db units absolutely do make sense

opaque wharf
fast pagoda
#

decibels are log

#

not exponential

opaque wharf
amber fractal
fast pagoda
rigid snow
olive sable
#

each +10db is 2x as loud iirc

amber fractal
rigid snow
olive sable
#

so +50db is x2x2x2x2x2
so x32

#

a casual 32 times louder

fast pagoda
#

no, each 10 db is 10x more soud intensity

olive sable
#

idk

fast pagoda
#

10 db is 10x 0db
20 db is 100x 0db
30 db is 1000x 0db

#

add a 0 each 10

#

you PERCEIVE it as about 2x as loud

wary rover
#

Have you ever heard of primeagen on youtube? Youtube now recommends me coding stuff, watched one of his shorts where he is very passionate about something and all the comments are calling him an idiot lmao

fast pagoda
#

there's a difference between sound intensity vs perceived loudness

opaque wharf
fast pagoda
#

he's a streamer

#

with good experience to back him up tho

#

just opinionated as we all are

olive sable
wary rover
#

Coding people are very harsh it seems like

fast pagoda
#

very opinionated

opaque wharf
fast pagoda
#

there's a reason you see various tools that enforce their creator's idea of how something should be described as "opinionated" up front

wary rover
#

I no longer like the sausage

olive sable
opaque wharf
#

At least sam bracket is still something within expectation, but yours were just so out of left field that I didn't anticipate in my lifetime lol

fast pagoda
#

hey we have our things

#

me? i cast everything to Any and hope for the best

olive sable
#

oh with sausage you mean you're unreadable code?

rigid snow
#

it was amusing and not horrible to read except for the two statements one line thing

wary rover
#

I felt like compacting the code and arranging it by keywords was very smart and neat

olive sable
#

very demure

fast pagoda
#

without being pissed

amber fractal
olive sable
#

wait

#

what

fast pagoda
#

we have to go deeper

rigid snow
#

to be clear this isn't what was happening there

opaque wharf
olive sable
#

i know

#

but its stupid

rigid snow
fast pagoda
#

your question: 'why?'
the answer: 'hhehhehee'

opaque wharf
rigid snow
wary rover
#

I was very proud of it at the time

amber fractal
# rigid snow

This works better in python and I don't know how to feel about that

minor crag
#

OK

#

The script works

#

But It takes maybe 30 seconds to convert 1 tensor

fast pagoda
#

main() right into {println! is epic

opaque wharf
minor crag
#

And I think I implemented stuff wrong so I might only be getting 16bit acruacy

fast pagoda
#

aint got TIME nor SPACE for a newline

fast pagoda
olive sable
#

@rigid snow muhahahaahah. you're behind

wary rover
opaque wharf
fast pagoda
opaque wharf
fast pagoda
#

it works though

#

i mean the syntax is fine

#

if ugly

#

"ugly"

wary rover
#

I do it like this now

minor crag
opaque sigil
#

you're writing rust you lost the pretty syntax card either way neuroPogHD

olive sable
rigid snow
wary rover
#

I have discovered the dark magic of cargo mft

amber fractal
olive sable
fast pagoda
# rigid snow

my favourite touch here has to be the "Congratualtions" after that code sausage extrusion gets done @wary rover

opaque wharf
fast pagoda
#

really gives that Big Rigs Over the Road Racing You're Winner ! energy

olive sable
minor crag
#

Does "Tensor type F16" mean they are 16 bit tensors?

wary rover
#

I don't know why, but "sausage extrusion" got me dying

fast pagoda
#

also the significant amount of .unwrap() i've never quite seen before

wary rover
#

It's such a funny word combination

opaque wharf
fast pagoda
#

user types ten or 18 etc, that boi is crashing immediately

minor crag
#

Turns out I've implemented IEEE 754 (I think that's what it is) and am currently turning 16 bit tensors into 32 bit tensors

fast pagoda
#

mfw accidentally implement an international standard

opaque wharf
#

Why....

fast pagoda
#

from the 80s

wary rover
opaque wharf
olive sable
#

classic

olive sable
minor crag
#

Also I couldn't get the safetensors library to work so its manually reading the file

wary rover
#

Wait, does 10 actually crash? I wanna check

rigid snow
#

i'm not into ml very much, is there actually a reason you need f32 tensors? surely f16 has enough precision for anything?

fast pagoda
#

no but the string "ten" should

#

i assume 10 would be fine

minor crag
#

All in pure python :3

olive sable
#

i read that as python 3 lmao

fast pagoda
#

but with all that unwrap going on it would explode if fed a str

minor crag
#

Well anyways its converted 28 of the 291 tensors (that's just for the encoder)

opaque wharf
fast pagoda
#

try ten

olive sable
#

that is ten

opaque wharf
#

Because the magnitude is often more important than the actual specific value

fast pagoda
#

i mean the string

#

'ten'

rigid snow
#

it's gonna panic obviously

#

why

fast pagoda
#

oh that's all

#

i was just saying it has no handling of anything other than exactly what it wants and nothign else

rigid snow
#

.unwrap() on parse value

#

=panic

fast pagoda
#

yeah it would explode that was what i was saying but he was trying 10 because interpreted that ten as equal to 10

wary rover
#

Why the fuck would I try "ten"? Did I tell the user to write down a word that represents a number? No. If it's crashing its their fault and they need to reevaluate their life choices that lead them to typing "ten" when guessing the number

amber fractal
#

Well frick, I'm doing more cursed code. Help me

fast pagoda
#

hey just consider me pylance over here just giving u a friendly linter warning

#

but your mindset has upper management written all over it

wary rover
#

I'm playing into a bit

#

I do understand that a code I wrote for practice of new stuff I learned is not ultra mega stable

fast pagoda
#

i prefer the snausage approach

#

it's fresh

wary rover
#

I just wanted to make a simple guessing game, not the most secure guessing game in the world

rigid snow
#

snausage

#

unwrapping everywhere is based

fast pagoda
rigid snow
#

is that dog food vedalCry

fast pagoda
#

it's a brand of dog treat lol

#

childhood golden retriever loved her some snausages

#

probably made of grade Z sausage

#

and asbestos

wary rover
# rigid snow unwrapping everywhere is based

I don't remember why I used so many and to be completely honest every time I read what unwrap does I immediately forget, but it decreases chances of error message by around 20%, so I slap it once in a while for good measure

rigid snow
wary rover
#

It's description makes it sound very scary, like "if it doesn't like something it will EXPLODE and KILL everything". You use it and it's just chilling there, helping you in some mysterious way

fast pagoda
fast pagoda
#

you're basically saying LEMME SEE THE CONTENTS OF THIS RIGHT NOW!!!! but if the contents are unexpectedly None or something

#

it WILL explode

rigid snow
#

None or Err

fast pagoda
#

it's either the thing you expect or it's a fat stinky L

#

no in between

wary rover
#

Uuuh, Ive never made something where a value in a container can appear and disappear. I kinda coded around that

amber fractal
#

I'm dealing with more syntax errors than should be possible.

wary rover
fast pagoda
amber fractal
rigid snow
amber fractal
#

there is no saving this

fast pagoda
#

man's got one(1) line of code that somehow has 3000 syntax errors

wary rover
rigid snow
#

what's the return value of one(1)

opaque wharf
fast pagoda
#

until you unwrap it, it could be an error, it could be a value, it could be santa claus

#

but unwrap you're collapsing the wave function and observing the value

rigid snow
#

except it's absolutely deterministic

fast pagoda
#

but yeah it's not like unrelated to the prior code or anything

#

so it's gonna make sense what's in there

#

it just might not be what you expect from the code as written

rigid snow
#

this is a very overloaded discussion on a very simple concept

wary rover
minor crag
#

51 tensors done!!! (The encoder has 291 and the decoder has a few thousand)

opaque wharf
#

If the type matches the declared type, great, proceed as usual. But if not?

wary rover
#

Also, unrelated question: why the fuck are nested functions not called when their mother-function is called? Like why do you think I nested these functions? To look pretty?

fast pagoda
#

it would have the effect of reducing surprise errors just unwrapping everywhere because by the time the thing reliably finishes executing you'll know damn well what type is coming from each thing you're unwrapping

#

but it also means instead of gracefully handling it somewhere you intend to you're just ripping the bandaid off wherever and it might not be a good spot to handle it

opaque sigil
fast pagoda
#

i would assume the nested function would be called if the mother function passed something to them that would call them no

opaque sigil
#

actually even then

#

.expect exists

fast pagoda
wary rover
fast pagoda
opaque wharf
fast pagoda
#

of course you need to call them to get them to run

desert wave
#

"If you don't call those they just chill there" this applies to all code ever

fast pagoda
#

otherwise it's just a defined function

#

i don't import a module and expect the code in there to just run

opaque sigil
#

i do (python moment)

opaque wharf
#

I have a better question to ask than that actually...

wary rover
#

But... But they are inside the call function. They are its organs. Imagine calling your friend without calling their heart too and your friend drops dead

opaque wharf
#

Why did you nest them?

fast pagoda
#

and then being surprised she died

wary rover
#

I am just saying that its counterintuitive

fast pagoda
minor crag
#

66!!!!

fast pagoda
#

intuition is subjective so i suppose it could be

fast pagoda
# minor crag 66!!!!

didnt you say it would all be for naught if it's actually running fp16 and that's what it's doing?? why u no kill it

minor crag
#

I'm losing accuracy but eh

fast pagoda
#

ohh yeah nvm you did say that

minor crag
#

This was hard enough to get working

fast pagoda
#

my b

minor crag
#

Its ok

opaque sigil
#

huh why would turning fp16 into fp32 lose accuracy

fast pagoda
#

well hopefully it still works when it finishes due to being automagically 32 bits

wary rover
# opaque wharf Why did you nest them?

It was my twisted representation of collective advise of this chat. I was like: maybe I should make random fishie generator a separate function and then to_string the output or smt like that. And then people told me something that I didnt understand shit about, but was to embarassed to ask for details of what seemed to be the most dumbed down explanation imaginable aaaand this

opaque sigil
#

it's just a matter of adding a couple 0s

fast pagoda
#

still 16bit accuracy but represented as 32 for the lulz

opaque wharf
tender river
wary rover
#

I know jackshit about programming terminology :D

minor crag
tender river
#

oh i see what you mean, "defining" points at the entire function rather than some particular expression in it

minor crag
#

So its lower accuracy than what I originally wanted

opaque wharf
#

Oh chay you wouldn't belive the cursed shit that has happened the moment you were gone lol

minor crag
#

But uses the same space

opaque wharf
#

I like it when shit is cursed like this tho

opaque sigil
#

ah

fast pagoda
#

if you have a true nested function i dont think it can even see variables from the mother function

opaque sigil
#

makes sense

fast pagoda
#

it'll just cause a compiler error

minor crag
opaque wharf
#

Need to read back on the rust book tho

opaque sigil
minor crag
opaque sigil
#

uhh that doesn't sound right

opaque wharf
opaque sigil
#

unless your cpu is very very slow and/or the tensors are gigantic

fast pagoda
#

like if you did

fn outer() {
    let var = 10;
    fn inner(var: i32) {
        println!("var is uhhhh: {}", var);
    }
    inner(var);
}

fn main() {
    outer();
}
#

it would just explode

wary rover
#

Can't wait to do hashmap and serde tomorrow. I'm gonna suffer so much :D

minor crag
rigid snow
# wary rover Uuuh... Kill the value by starting a new scope so it is static in each chosen sc...

there are two enums built into rust, Option<T> and Result<T, E> - T is the type you expect to get, and E is the type that the error will be. assume we have:

/// Some function that returns an optional 32-bit integer.
fn opt() -> Option<i32> {
  Some(42)
  // None // or this
}

/// Some function that returns a 32-bit integer, but can error.
fn res() -> Result<i32, bool> { // for simplicity sake, let's say the error will be a boolean
  Ok(42)
  // Err(true) // or this
}

then, usually working with these types looks like this

fn process_opt() -> Option<()> { // empty result but still Option!
  opt()?; // the ? will get the Option value if it's Some, and INSTANTLY make the whole function return None if it's None.
  // or, even:
  if let Some(n) = opt() {
    // this basically unwrapped 42 into n regardless of what the process_opt function returns - ignores when it's None !
    println!("{}", n); // or something
  }
}

fn process_res() -> Result<(), bool> { // empty result but still Result, and *the error type must match*!
  res()?; // the ? will get the Result value if it's Ok, and INSTANTLY make the whole function return the same error if it's Err.
  // same thing with the if statement works but it's gonna be `if Ok(n) = res() {`...
}

unwrapping is for when you don't care about the cases when the value is None or Err; basically "f it, i don't want to handle that and rather crash the program". so in your case you've decided "i don't expect the user to ever enter something that cannot be parsed into an int - i don't want to handle that case, i'd rather crash it"

#

you can skip reading the second block if you don't want to

wary rover
#

I think

#

-# I hope

rigid snow
#

nothing is perfect and errors will be a thing that happen, maybe not in your code but in someone elses (a library, an api you're calling, etc.) so you can't avoid this

wary rover
#

Like my "game" right now is basically a menu. In the menu you can either click at the box od some sort, or miss it with a cursor. You can't click in a way that makes the code explode

opaque wharf
#

I love that internet historian can refer to a time in #programming by during sausage era

fast pagoda
#

if the world worked like that it'd be a boring and safe place

fast pagoda
#

nature can ALWAYS build a better idiot

wary rover
#

I mean what can you POSSIBLY do to explode this

fast pagoda
#

well you could input "Catch"

opaque wharf
#

A cosmic ray hitting on the cpu register during the evaluation

wary rover
#

Ha!

opaque wharf
#

Intermittent power failure

rigid snow
wary rover
opaque wharf
#

Another process using HUGE amount of RAM and trashing the sytem

amber fractal
#

The more I do this, the more I require professional help

opaque sigil
rigid snow
opaque wharf
#

Indirect attack vector is the hard one to catch lol

wary rover
#

God I HOPE AND PRAY nobody will allow me to come close to the rocket

rigid snow
minor crag
#

107!!!!!!!

opaque wharf
wary rover
#

If I coded rocket controls it would drill to the core of the earth at launch, then explode, then explode again

rigid snow
fast pagoda
#

input İnfo where the İ doesn't have a lower case

opaque wharf
opaque wharf
#

It's always a heuristic and someone will always be mad

rigid snow
fast pagoda
#

like if you're sanitizing it but it can't be sanitized because there's nothing to change it to it might cause issues, it's hard to tell what you could do without seeing what else is being fed into that thing or how it's being trimmed/sanitized so i was just spitballing

opaque sigil
#

rust just ignores chars that can't be lower/upper-cased neuroPogHD

fast pagoda
#

interesting

#

they have thought of everything at rust hq

wary rover
fast pagoda
#

it's impenetrable 😔

rigid snow
fast pagoda
#

yeah they are the guys who took in all those rust out toyota frames too

amber fractal
wary rover
#

That's a fine sausage right here

amber fractal
#

Just one line

#

so not really?

rigid snow
#

like a meat string then?

fast pagoda
#

error on line 1

#

it's all line 1

wary rover
#

I also love ])))] in the middle of it. Gives this sausage mildly spicy flavor profile

amber fractal
#

the fun part is that it is an object, so debugging is actually possible

#

importing random is a lot harder than it looks

rigid snow
#

if only you just used a language where you can just remove all whitespace and newlines

amber fractal
#

If only, but it is funny to do it in python

wary rover
#

Is "cannot be used in a comprehension iterable expression" compiler's way to say "The fuck?"

amber fractal
#

It is actually useless to assign a value in a loop, so it is valid normally

#

This is not normal

#

Now just a keyerror time

wary rover
#

Check him PC. It is not regular

amber fractal
#

I'll post working code once it works

wary rover
#

Is there an inbuilt way to make a loooong screenshot of your code in VScode? Or must you install loooong screenshot taker for this?

amber fractal
#

Neither neuroTroll

dire turret
#

chuck norris found page 404

wary rover
#

chuck norris came to IRS to collect their taxes

unkempt citrus
#

Why would you screenshot your code instead of copy pasting it

rigid snow
# wary rover Check him PC. It is not regular

Iggly skilled programmer but that is not normally, This very very insane....They need to check him pc and ide.....Maybe he not vibecoding but maybe he using the ide deficit ...and this cant seem on ide screen..He needs to check-up....There Cursor Vibecoder with Streaming.....I think he still vibecoding...Iggly using ide deficit on Python scene ,ON BIG Tasks.Maybe everyone dont knows him trick.He incredible....I want to ask his where is the comming of your skill's ?

amber fractal
#

This counts as a debugging screenshot rather than actual code sending

unkempt citrus
#

Unless you draw big red angry arrows, I think code chunk still better

fast pagoda
#

there has to be one of the many 'codesnap' extensions in vsc that would take a screenshot of the entire file if you want

wary rover
#

What if I want to make a very big screenshot and send it to groupchat to let all my friends know that I am a very skilled and cool hackerman now and I type a lot of lines and they look very complex and there are a lot of colors in there, different colors mean different code things in coding, wouldn't expect you non-coders to understand, so I am explaining that to you non-coders

fast pagoda
#

idk because imagine taking a screenshot of something you can copy paste

fast pagoda
#

hmm tempting once again

#

the colourful icon is enticing

amber fractal
#
type("bwaaject",(object,),{"__init__":lambda self:(None,self.init())[0],"init":lambda self:[func(*args) for func,args in zip((print, self.init_random, self.randint),(("bwaa",),(),()))], "init_random":lambda self:exec("import random",globals(),self.imports), "randint":lambda self:print(self.imports["random"].randint(1,10)),"imports":{}})()
#

output is bwaa\n*1-10*

opaque wharf
#

What does type() do in python?

amber fractal
#

two things

opaque sigil
opaque wharf
#

Making object of specified type?

fast pagoda
#

what toast posted

opaque wharf
rigid snow
opaque sigil
#

is especially nice for mobile neuroPogHD

amber fractal
#

we love diffrent code paths depending on amount of args

wary rover
# fast pagoda actually this is legitimate and real

Suffering? Insanity? Pfft, this is just an every day reality for me and other coders. You will never understand the world in which I live. Every day is a fierce battle of man VS machine, a grueling and unending sequence of tasks that require all your brain power and then require some more. Be more humble when you speak to a CODER like me, kiddo

opaque wharf
rigid snow
amber fractal
rigid snow
#

it’s grim out there

opaque wharf
amber fractal
opaque sigil
#

bun my beloved Gladge

amber fractal
#

accepting ideas (this will not end badly surely)

unkempt citrus
wary rover
#

Do all super skilled and smart programmers have a folder with links to cool websites or what? Chay also sent a couple of those

fast pagoda
#

239 downloads

opaque wharf
#

Probably from the dev

#

...right?

fast pagoda
#

he was desperately trying to figure out how to rename his addon

#

239 times

wary rover
#

Looks like something I'd need, but I'd rather smash my head against the table for 20 minutes until I figure out how to do that myself

unkempt citrus
frozen igloo
#

“Current”

wary rover
#

I will also be a cool programmer with good memory and google one day neuroHypers

fast pagoda
# amber fractal ```py type("bwaaject",(object,),{"__init__":lambda self:(None,self.init())[0],"i...
type("bwaaject",(object,),{"__init__":lambda self:(None,self.init())[0],"init":lambda self:[func(*args) for func,args in zip((print, self.init_random, self.randint, self.profound_analysis),(("bwaa",),(),(),()))], "init_random":lambda self:exec("import random",globals(),self.imports), "randint":lambda self:print(self.imports["random"].randint(1,10)), "profound_analysis":lambda self: (exec("".join(map(chr,[102,114,111,109,32,102,117,110,99,116,111,111,108,115,32,105,109,112,111,114,116,32,114,101,100,117,99,101])),self.imports),print("bwaawagga = " + str(self.imports["reduce"](lambda x,y:x+y, [ord(c)&1 for c in "".join(map(chr,[98,119,97,97]))]))))[-1], "imports":{}})()
#

random math

#

this outputs

bwaa
5
bwaawagga = 3
wary rover
# frozen igloo “Current”

Isn't potential difference in the net of neurons not strictly binary? So the current can only occur between two neurons of potentially 10 or more that can potentially generate it?

fast pagoda
#

action potentials are all or nothing

#

as far as activation goes but no the potential isn't a binary switch

#

well the output is on a binary switch it wont fire until it hits a certain threshold

amber fractal
fast pagoda
wary rover
frozen igloo
#

Wouldn’t a large portion of those potentials also cancel eachother out or be in parallel?

minor crag
#

It is 3:43 am and I'm at tensor 215 of the encoder

fast pagoda
wary rover
#

"Every time you think you understand how electromagnetism works - you, in fact, don't" - my physics teacher in highschool

fast pagoda
#

fucking magnets

#

how do they work

fast pagoda
wary rover
#

Magic. That's why they are called MAGnets

fast pagoda
#

oh shit u right

minor crag
#

I'm gonna end it, change to a bigger drive, cry, and leave it going until tomorrow evening

fast pagoda
#

crazy thing about neurons is that it's kinda assumed at this point with dendrites actually doing logic on the "wire" and not just being a static conductor, a single neuron being basically a 2 layer artificial nn on its own

wary rover
#

All this time I wanted to ask what on gods green earth Cathy is making and what kind of code monster grows on her PC, but I feel like I am not authorized to inquire. Like a D class trying to ask what a member of O5 is up to in SCP universe

fast pagoda
#

which means for example a single neuron can do XOR

#

which you cannot do on a single layer NN

wary rover
#

I might need to look into advanced logic since I made a serious decision to seriously learn coding

fast pagoda
#

i recommend watching some videos on simple-ish computers

wary rover
#

I remember that I found a book on mathematical logic on the attic when I was 8, flipped through it and declared that its stupid and logic is when I use common sense. Never opened it ever since

fast pagoda
wary rover
#

Will check it out after I pass out and wake up at 4pm

unkempt citrus
wary rover
#

I recall there was a cool video by codebullet called "making a calculator out of marbles"

#

That one would be informative too I recon

opaque wharf
wary rover
#

ALL at once is not even seizure anymore. It demands its own name. Like superseizure or smt like that

opaque wharf
wary rover
#

The Renaissance

#

I don't know how to write this word actually

#

My code be like

fast pagoda
#

oh im sorry sir biome

wary rover
#

🚙 FOCUS

fast pagoda
#

leaked Pog

spark vortex
#

whats the context here lol

olive sable
#

goodmorning

#

it is monday

rough bloom
#

it sure is neuroBwaa

fast pagoda
# spark vortex wait what is this

intellisense/autocomplete got a bit ahead of itself because i had been editing a list of options in a drop down and put like 3 gemini 2.5 models in before that line

#

so it was like

#

idk gemini 3.5 seems right

#

and offered that as a possible completion

fast pagoda
#

just yolo merged so many fucking files on two branches that conflicted from diverging liek 2 weeks somehow

#

of a project

#

im sure that'll not be a huge pain in the ass shortly

tight tinsel
#

had to walk the massive probably 2-3kg pc like 2 kilometers

#

can barely write with my hands now

scarlet arch
#

my merge request with the 256 arm match is finally on its way being merged. luckily a lot of cases can be merged. :P fingers crossed the fuzzer doesn't hit the supposed unreachable cases :)

#

you guys doing anything fun? :D

dry charm
#

Slowly writing AC for a game SMILE

dry charm
#

AntiCheat

scarlet arch
#

ah :D

#

neat nyaSparkles

stray dragon
dry charm
#

well, it has been used for a long time 😄

spring nest
#

im so bored

wary rover
#

I had to unplug an ethernet cable going from the router into PC for a while and while it was laying on the floor under the table I scooted across the room on my gaming chair and turned the cable into roadkill

#

So now I must choose either Wi-Fi or internet connection on my PC

opaque wharf
spring nest
opaque wharf
opaque wharf
wary rover
#

Speed was abysmal and Helldivers 2 said "your internet connection is ass"

#

And google tab loads for like 7 seconds

#

So I'll go grab another one from the store today

spring nest
#

cat

tight tinsel
#

i forgot to grab the power cord for the pc from my friend

#

i just have a brick on my floor now

opaque wharf
#

A higher effort shitpost for once

opaque wharf
amber fractal
spring nest
sage crag
#

down to 1096 bytes for hello world

opaque wharf
sage crag
opaque wharf
#

The string itself takes up 10% of the space lol

sage crag
#

not my problem it cant

sage crag
opaque wharf
#

Wait not that can't be right

sage crag
opaque wharf
#

Yeah I missed that somehow lol

sage crag
#

if "hello, world" is 1096 bytes, this is probably not 500 bytes neurojuice

opaque wharf
#

Am tired man, just got home and chilling here

#

But my guesstimate is less than 10Kbyte

sage crag
opaque wharf
#

Noice

sage crag
#

its actually smaller than C hello world enub

#

with glibc**

#

i should add that so musl fans dont crucify me

opaque wharf
#

Even with -Os?

sage crag
#

yeh

opaque wharf
#

Dang

uneven pulsar
#

today is alan bdayneuroHypers

#

today for his tribute i made a random fact generator bot 🔥

sage crag
uneven pulsar
opaque wharf
sage crag
#
lily.{target, config} := @use("../lib.hb")

@export("_start", fn(): never {
    main := fn(args: []^u8): uint @import("main")
    args: ^^u8 = @bit_cast(@frame_pointer())
    target.exit_group(main(args[2..2 + @bit_cast((args + 1).*)]))
})
@export("memcpy", target.memcopy)

the runtime is written in hblang, we do not link to libc at all

#

demonstration

opaque wharf
#

I'm curious what is the origin of hblang and how did you come to find it? I only ever heard that language here

sage crag
#

i came across it when it was very new when i joined ableos

opaque wharf
#

That just leads to more question about AbleOS lol

#

Is it a hobby os or a research project or something else?

#

Because I once tried to check the repo and find info but only find bits and pieces here and there

#

And even then, some of the site is down (I think the able corp one?)

sage crag
sage crag
sage crag
#

its a bit broken at the moment since no one has been maintaining it for a few months enub

#

we have all been busy with other things

opaque wharf
#

I can't imagine creating a whole new ecosystem as a hobby despair

sage crag
#

yeah enub

opaque wharf
#

But then again, it's because my hobby mainly consist of hardware or higher level stuff lol

sage crag
#

i should really update the working features section huh

opaque wharf
#

Yeah, its always the docs that is a chore

sour harness
#

Thank you Cursor + Gemini 2.5 pro

#

I've found that when working with Cursor you should remove technical and documentation debt immediately. It immensely improves the output you get later.

opaque wharf
#

Well, yeah. It's language model. The more context matches what it describe the better the result theoretically will be

#

But also, if the training data is garbage then so is the output

fast pagoda
#

it will alter its behavior from the bad context as much as the good yeah

#

they also are just strraight up way worse at subsequent inquiries

#

so it's best to restart new chat for everything

#

if you intend on multiple questions or something

sour harness
#

yeah, never reuse chats for unrelated queries

fast pagoda
#

you know what i found is that jules is suuuper good at making like code maps and detailed docs, it just spends a ton of time on it where other llms tend to be relatively "lazy" in that they keep it shallow unless really prodded

#

i guess cuz as an "agent" thing it's being compelled to complete the task

#

o3 diagram

#

jules doing the same diagram

#

same instructions

#

that thing goes pretty deep into everything

opaque wharf
fast pagoda
#

pacman: i cannot continue 😔

opaque wharf
#

Intel and nVidia vendor size is 100MB wtf

#

So the original linux-firmware package that is big is not even for the hardware that I use

tight tinsel
#

its alright ill pick one up from my friend tomorrow

opaque wharf
rough bloom
uneven pulsar
#

tbh using json to store data i waaaaaaay better way to manipulate python data

rare bridge
#

this coach next stop display is running lubuntu

#

no clue what the l stands for

uneven pulsar
trim valve
#

I went past a train yesterday that had its ip address and mac address on the side displays

unkempt citrus
safe path
#

no the L in lubuntu stands for LXQt

#

like how kubuntu is KDE

opaque wharf
uneven pulsar
rigid snow
#

eh more like ubuntu flavor

uneven pulsar
rigid snow
#

it's desktop ubuntu but with lxqt instead of gnome

rigid snow
#

not an extension it doesn't extend anything

uneven pulsar
#

an extension?

uneven pulsar
rigid snow
#

it replaces the default DE

unkempt citrus
noble zodiac
#

no matter what letter you put in front of ubuntu its still shit

opaque wharf
#

God damnit, my wifi card is intel so I need the chungus intel firmware vendor

opaque wharf
#

Laptop

uneven pulsar
#

i am gonna buy a asus g14

opaque wharf
#

No, my current one is still working. I'm just annoyed that the path of least resistance is having other intel firmware that I don't really need

#

Also Intel wireless card is better than other at the market IIRC

rough bloom
#

they are, yeah
Intel networking hardware in general is good

#

(mostly because their competition, Realtek, is garbage)

opaque wharf
noble zodiac
#

our 40g network cards are intel as well

#

very reliable

wary rover
#

Random question: so, I heard that using a lot of dependencies in your program is bad, cause compiling and stuff and you don't use full extent of functionality that every crate adds, yada-yada. Not as if it is an issue for me now, but like general coding habit of doing so is bad. So, what number of dependencies in use is considered bad? Is there such a number? If it is reached how can I negate/avoid this in the far future when it will be an issue?

noble zodiac
#

you cant define it as a number. Its a case by case thing

opaque wharf
#

A simple program usually require less dependency than more complicated program. Ideally, you don't even need a dependency, but even in C you'll probably rely on C Standard Library

wary rover
#

Like as far as I understand I need to implement a hashmap for storage of data from the previous runs of my program. My first config so to say. So, just for that, once again, as far as I understand, I need:
use std::fs::File;
use std::io::{Read, Write};
use serde::{Serialize, Deserialize};
use std::collections::HashMap;
use config::{Config, File};

#

It's looks bloated even for me

noble zodiac
#

std is the stdlib and not a dependecy. At least not in this context

uneven pulsar
#

prostgese SQL is awesome

#

I Love IT

rough bloom
noble zodiac
#

especially when you are new you should at least try to implement things with the means given by the stdlib. Within reason

opaque wharf
#

Copy-pasting how some library do things is also an option without explicitly/directly pulling the whole package

rough bloom
#

oh yeah, also as chayleaf said last time this came up, you should be much more careful with this if you're building a library rather than an application

wary rover
#

I'm like 7 light years away from building a library lmao. I am preparing for creation of one JSON and one hashmap like it's a bossfight

rough bloom
#

for an application it only affects you and other maintainers (the ones compiling and packaging the application), but for libraries it affects every project that depends on your library in some way, often indirectly

rough bloom
noble zodiac
#

and then you end up with half a dozen different serde versions being compiled

wary rover
#

my pc randomly turned off. this is not very good

#

I think it's a sign

scarlet arch
#

I'm upmerging and it's already taking 7 minutes... Aware

rough bloom
#

neuroWaveA Byter neurosHugA

scarlet arch
#

Hello :D

#

oh no, conflicts nyaTired

rough bloom
uneven pulsar
#

my school teaching me PosrgreSQL was A W

wary rover
#

Encountered terms "heap" and "stack" in one of the articles I am reading and decided to look it up. Now I feel like I won't exit this rabbit hole until tomorrows morning

opaque sigil
#

important to note that the only thing that differentiates them is the way memory is reserved

opaque wharf
#

How do I explain it

opaque sigil
#

and i guess the arbitrary line that says where one starts and the other ends

opaque wharf
#

A stack can only be used with a fixed-sized unit

wary rover
#

I am reading a document the size of holy bible now about this. Feel like I need to dumb it down and watch a couple of videos on yourube on this or something

opaque sigil
opaque wharf
wary rover
#

Want to be clear, I don't demand explanations from anyone, its my job to learn things I wanna learn, just wanted to share what I am up to with you guys. For no reasonneuroHypers

opaque sigil
#

think of it as a stack of books, you can throw differently sized books on there but you always have to remove all books above to remove a specific book

as opposed to having a table where you lay out the books, you can just pick and choose specific empty spots to put/remove books from neuroPogHD

opaque wharf
#

Yeah that's a much better explanation

wary rover
opaque sigil
#

the reason people say the heap is "slower" is because you (generally) don't get to choose where exactly your data lives, a separate allocator is responsible for finding empty spots
whereas on the stack is just decrementing a number to allocate space

wary rover
#

This is very close to the realm that I want to eventually learn, which is assembly. So I should probably double the diligence with which I am reading all of this

opaque wharf
#

Why do you want assembly? despair

wary rover
#

Because I love difficult stuff!

opaque wharf
#

Nice

opaque sigil
#

learning a bit of assembly never hurts neuroPogHD

wary rover
#

It just cool as a concept

opaque sigil
#

(it hurts my sanity)

wary rover
#

Like you basically learn the language of a computer

#

You understand computer

#

Isn't it cool?

opaque sigil
#

well sort of

opaque wharf
#

Not quite

opaque sigil
#

but i guess it's about as low as you'll get for programming

opaque wharf
#

If you want to learn assembly, I think you can start from Z80 since it has a simple ISA

wary rover
#

My best friend is receiving an education in micro-electronics? Micro-engineering? The processor making people craft. So together we can get even lower theoreticallySMILE

wary rover
opaque wharf
#

Silicone design has its own field, true. And I think when talking about CPU design and actual silicone design it is still separated

sage crag
#

ee oo ee oo

uneven pulsar
#

PostgreSQL is the best in my opinion

opaque sigil
#

debatable

opaque wharf
#

I can't embed postgresql to my MCU

sage crag
#

eeee

wary rover
#

I know that he had a practice last year in the facility that is closely adjacent to photolithography

opaque wharf
#

Dang, I wish we had that kind of facility in my country

uneven pulsar
wary rover
#

this facility also makes solar panels for satellites

opaque wharf
uneven pulsar
opaque wharf
wary rover
#

Why are you pulling their leg

uneven pulsar
sage crag
#

rrrrr

wary rover
#

The engine is warming up

opaque wharf
wary rover
#

@Grokk is that true?

#

Who tf says chaff?

maiden geyser
wary rover
#

Im gonna google "bonk british"

opaque wharf
wary rover
#

I regret my decision immensely

opaque wharf
#

Pro tips when learning any language, learn the swear and slang first so someone can't pull your leg

#

SAM MA BOI IS TYPING

olive sable
#

Good afternoon neuroWaveA
Last afternoon of school, tomorrow is only the morning HyperHype

wary rover
#

What if I dig it when someone is pulling my leg? What if it's my cup of tea?

pastel nymph
#
    public static CurrencyAmount operator *(decimal op2, CurrencyAmount op1) =>
    new(op1.amount * op2, op1.currency);
    public static CurrencyAmount operator *(CurrencyAmount op1, decimal op2) =>
    new(op1.amount * op2, op1.currency);

Is there a better way to do this without basically copying?

opaque wharf
#

Is that C++? Templating is de way

pastel nymph
#

C#

opaque wharf
#

Then I don't know

lapis wraith
#

c# can also support templates

opaque wharf
#

Oh yes they do

wary rover
#

K guys, I'll go read boring stuff see you in 5 hoursneuroCURSED

opaque wharf
scarlet arch
lapis wraith
#

AINTNOWAY it's asuming because you have "nothing to do" it's a mistake?

opaque wharf
rough bloom
#

you can't commit TODOs? neurOMEGALUL

opaque wharf
scarlet arch
#

I clicked "review" cause I was curious...

lapis wraith
#

TODO: I completed all tasks 5Head

opaque wharf
#

See, it says contains problem: 0 TODO

scarlet arch
#

thank you RustRover. Very cool

lament igloo
lapis wraith
dry charm
#

I very sort of understand why?

opaque wharf
#

Authentication or Authorization?

dry charm
#

Sharing token is unsafe and it frowned upon I completly agree with that, but the lack of alternative is even more concerning

dry charm
#

so not the discord user token which allows management of the user account

#

but bot accounts tokens just weirdly worded

opaque wharf
#

See, the thing is, Authentication alone doesn't imply you have any right to do anything unless the system is designed without proper ACL

dry charm
#

The problem in this case, is that Discord issuing this, cause they require users to create a Bot token for their new bot and share that with them (essentially 3rd party). And that is against TOS of running bots

#

The token is only used for runtime authentication, the ACL is set in the Bot dashboard (bot owner) and the respective guilds

uneven pulsar
lament igloo
#

everyone should code their own bot after this trohley

but fr tho, discord shutting them down after 7 years is crazy

opaque wharf
#

This is quite a convoluted argument but what's the difference between hosting your bot on say, cloudflare and storing your token there vs botghost

dry charm
#

In this case you are filling in a form online, handing over your token to a third party

#

in cloudflare you still control the value

#

here it is put into a black box

dry charm
opaque wharf
#

You don't put auth token in an .env, you put it using their web interface. Ideally using secret (the process still treats it as ENV VAR)

#

It could be automated too

#

So any 3rd party could make some bot installer ala botghost

rough bloom
dry charm
rough bloom
rigid snow
dry charm
rigid snow
#

you still hand it off to a third-party

rough bloom
rigid snow
#

killing the ux and the point of the product

dry charm
#

Like

#

T6oL2RN37EjLxZmCaEL8VeKqgkc88t7p

dry charm
#

good like telling what this is

#

but If I were to do this:
Password: bGyc8cdrFWm8Kk3a3y79

#

Then you are quite ahead

lament igloo
dry charm
#

Pterodactyl is in your hands yes

#

(Pterodacytl panel my beloved)

#

obviously it is a very thin line between self controlled and hand off style. I think Pterodactyl panel is still withing expected self controlled region, but it is on the very edge due to being specialized to Discord bots in this case

#

Are the eggs pre determined or do you still upload your own?

lament igloo
dry charm
lament igloo
dry charm
#

You can define your own, or you can just select them?

rigid snow
#

aren't eggs managed by an admin

dry charm
#

They are, but if they are hosting a panel for each user, then they can just do eggs

#

but I highly doubt they allow that

uneven pulsar
#

i am having server env issuesneuroAware

dry charm
#

so most probably you arel imited to something like this