#programming
1 messages · Page 57 of 1
Also before we derail with Ptero talk, In this case you still have the option to encrypt your token and decrypt it on the fly, removing the ability to read by third party without running your bot
This is not possible with the builder application
atleast not what I've seen
the decryption key still ends up on their infra tho
so this doesn't matter
You can argue this doesn't matter, but you still have full control over how your token is handled and piped, while the service above is not
not necessarily, no
you can do fancy encryption shenanigans to make it basically impossible for the hosting provider to retrieve stuff like that
DX*
what i'm saying is this whole encryption thing is transparent to any legal document, you still give them the token
botghost? ux
Oh I thought you were talking about Discord Bot in general
I just brought up the encryption as an example for control, you are correct about them having the decryption keys, but technically any hosting has your whole data in their possession, if they wanted they can just dump everything
See, the thing with that ToS is its stupid
Sharing token with third-party is done everytime
Like for example, I know that my VPS hosting has a weekly full image backup. If they really wanted they can just boot up the whole image and crack open my bitwarden and have all my passwords
Okay, fair. But also, shouldn't the user be responsible for their own token anyway?
They should not be tbh and discord should create an authorization page for discord bots just like how applications request it
The ToS could be worded differently
The main concern is that users who do not posses the ability to create their own but are more likely to not have the knowledge how to handle a token safely
That is why it is in the TOS to discourage from sharing. Yes, it is their responsibility, but still
if you are asking for tokens in bad faith you absolutely should be breaching the tos
Should google IAM also have the same ToS then?
on a platform like discord at least
I guess it comes down to how much Discord trusts these random bot hosting services compared to, say, AWS
the random bot hosting service is obviously much more of a risk, and it seems Discords tolerance for that got a lot lower
(either that, or they just want an excuse to shut everyone else down and ship those features themselves instead)
Hmm, this is a fair argument
No idea what is that or how it works
When a site has "login with google" they need to get the secret/token from google
That is a Google issued identity token and shared between host and google, not provided by the user
That would be the correct way to authorize bot access in this case on Discord as well
the correct alternative to user provided bot token
Does the user even receive such token on the clientside for google login?
If a theoretical 3rd party site builder could support google IAM by providing your own token?
I do not think you are even allowed to do that
Like implementation wise
I'm 100% sure it has to go through google domain first to be a valid token
Why? The site is just asking for token. The application can then retrieve this token and be identified as your application
But even if you could, in theory provide the token, it would be a major problem
Google needs to issue an identity token to identify the user. For that it first needs to authenticate the user to google on the domain.
I do not think these tokens are long lived.
Ignoring these and having a lifelong token, you could in theory use it, but at this point it is just a convoltued example
I'm not talking about user token here
Application token, so your app can verify that a user has in fact logged in to google
Your application is just querying google "Hey, I have this request here, is this request authenticated?"
Alright then don't think of it as google IAM, but any google service
Since you seems to be confused about application token and user authentication token
I was confused why you brought this up, but now I understand what you meant
but I think that the two situations are not similar
Since you are implementing a Google Auth in an application either you wrote, or a plugin, lets say Wordpress site
In this case it seems like the same kind, but you still control the plugin which requires the Google Token
But wordpress.com host the plugins
That does not essentially matter, since you are running a generic wordpress site, they are not specialized to host a "Google Login Application"
Once again the "host a specific thing" vs "you can do this thing but host others" come up which is on the edge
This will be cursed, but you can create the same authentication service via wordpress
Yes you can, it is interesting that it was not done yet, but I suppose there are reasons, due to so many services available
Yes, and the point is google doesn't limit their token use to 3rd party. The token requester is responsible for their token. When breaking a ToS is identified to come from said token then that user is responsible because they let the token being misused by 3rd-party
in conclusion i don't think the set of employees @ bot compliance handling botghost's case fully understand the tos or the nature of the service they're dealing with; they see: a breach, tokens - we have to shut them down
If the 3rd party that use the token doesn't misuse and break ToS then nothing should matter where the token is located/coming from
what they do certainly isn't in bad faith and is fine by their own tos
Exactly. Even bad faith token request will have other consequence for the token requester
Another point why it is implemented like this, is that there are two options:
- self made software, which requires the token to be send in the background
- Complete software / plugin which just requires a parameter.
Both cases are good, and valid. This is an expected behaviour designed and planned by Google.
Discord did not plan for the second one, where you input the token into a box
Yes, this is my speculation as well. Why they don't like it is a mystery tho
I completly agree, their reasoning is full of misinterpretations and forcing them to use non existant alternative is ridculous
Also why the request is stupid, is that people might as well just download a discord bot from github, put the token there and their discord servers are nuked cause the bot was malicious
Didn't even need an external service
The only real alternative is to somehow let the user host their own BotGhost instance by one-click install and the script is transparent how that token is handled
So BotGhost can argue, they never store the token. User host it elsewhere
What I mean is, bot ghost could keep their editor proprietary
Their editor could export a JSON description of the bot
And the bot runner is hosted by the user
I think their model is partially that they run the bots as well, so no burden for the user at all
just build and run
I think what Discord is trying to prevent (assuming that security is actually the reason) is the existence of a huge collection of bot tokens that:
- can be leaked, for example through a breach
- can be centrally controlled with uncertainty in the leadership or the security of the application itself (see the Carl-bot situation)
And potentially less resource intensive, since you can just create shard instances inside a cluster of bots and handle each request and branch dynamically
I would assume the first one (unless goes to the dark web) are instantly disabled like how other tokens are
But those are good points if we want to assume discord is doing is in good faith
But then again, discord shouldn't get the flak theoretically even if a breach happens
it would still reflect badly on them
they shouldn't, but they would, and their platform would suffer as a result of many servers being compromised
Yes, and what I'm saying is they could integrate third party hosting service to make their service still looks seamless and require 2 account instead of one
1 for discord, and 1 for the hosting provider
Oh right, I don't think about the implication of the token leak
Yeah, that would reflect badly true
it would be a huge PR nightmare
Probably Sam since he is currently writing his own engine
I honestly just wanted to ask what are good engines to start with. I have no experience but I’ve heard GameMaker is good
https://develop.games/#nav-tools-engine
Engine choice is very dependent on what you want your game to be. So without context it's impossible to answer that question.
Thanks for the link, I think either GODOT or GameMaker is the way for me because I want to make a 2D legend of zelda type game
2D game is simple enough to do in GODOT while also teaches you a lot about the technical stuff. But if you want to focus on the art, then do GameMaker
Okay, GameMaker it is then. Thanks for helping 🙏
If it works for you, it doesn't matter the engine you use. No one is gonna judge if the product ends up "good enough". Even if the engine is laughed off all the time. So don't get discouraged to use whatever.
just made my next desktop background, I'm pretty happy with it 
Does Vedal not use version control? Like wtf
apparently not lmao
"this should be a lesson to never vibe code" was a wild statement too
I use it for everything. Like... Even offline and private projects
Remember, this is the guy who created an AI streamer that broke twitch's all-time subscription record
he said "10 minutes before the stream", so I guess he just didn't commit yet 
Vibecoding be like: bug

Arguably Annys fault tho 
even i use more version control apparnetly
Hype train record != concurrent subs record?
Or did I miss something big?
Oh right, hype train, not concurrent subs
I mean, it is guessing. Who knows, maybe he uses git. But not being able to revert a single change he did 10 min before stream is... yeah...
NeuroSynth probably has better version control than Vedal, and that's simply one model per dataset
(using no version control system, just files on a disk)
i think hes just going for bug fixing instead of reverting
Silly
Version control is ftp'ing to prod
i dont have that much because twitch keeps marking my browser as unverified at random
I'm at 43.1k :D
only 180k
I have 986804 I guess
Welp, time to warm up some food I guess

(I never figured out what to do with them)
bro is almost a channel point milionaire
If just I could get GPUs with that
im surprised this man seemingly vibecoded lmfao. I thought he did it himself
Ohhh, timed subtitles for Evil
Sounds pretty useless
So I'm rewriting like 70% of my code in 86 days
It isn't literally a 1 bit llm
I'll be impressed if there is a frontier model running on 1bit. Well, 1.56 bit if we go by that recent paper
Just look at bitnet v2
So I'm ripping off Microsoft in 86 days
the typing notification is too powerful
matrix has read indicators

on one of the discord servers i was in everyone was reacting to every single message with the same emote which kinda served as a read indicator
I hate this

Silly
i am above the need to finish my messages
sometimes i just decide im not interested in that thought any more
fair
My god the memory leak solution is legend
me when i finish typing a paragraph but decide to scrap it and not entertain that thought any longer
Have a memory leak? Install more RAM -Vedal987
i like dealing with memory leaks the erlang way
obliterate the process and go again
What kind of shit does he do to have memory issues
Unholy things I imagine
Right
allocate memory i gues
I've developed shit that lives off of 20MB ram and runs a full DPI and connection tracking. I'm scared of what he's doing
Or rather, what unity is doing haha
ive developed shit that have no memory leaks in ram, but have major memory leaks in vram
To be fair, programming in Game Engine is a whole other beast than CLI/headless software
Haha
I've used bevy before. Worked just fine and was very optimized. But I guess I have no experience with bigger engines
Bevy is technically not a game engine in the traditional sense I think
It is though? Just doesn't have an editor yet.
I haven't take a look at it again since a good few while now. So maybe its now feature complete as game engine
Different model cause different issue. This is more and more cursed lol
Dangit I got ads
You would think right
But if the parser somehow eff things up, it may be possible
Which is highly unlikely tbh
Does Unity support memory sanitizers?
cubism core is actually 0-alloc
whatever issue it is it's with the libraries built on top of it
I have no idea what that is
the part of live2d that doesnt have source code available, it deals with loading the model and updating its parameters depending on the inputs
Hearing vedal speak about his issue is very fun to speculate what sort of fucked up shit he is doing lol
I got it to do this, so I think it's ok-ish
I see. So basically the model controller that takes face input and transforms stuff?
Nice
mhm
their file format leaves a bunch of 0 bytes to put pointers in
Yeah I figured that doesn't really allocate anything. If it's truly model dependent then I'd be very concerned
Eeeeeh what
Maybe capnproto?
so you just give it a mutable borrow of the file's bytes and it doesn't have to allocate
Nice technique to put 0 byte reserved for ptr tho
Give me enough models and it's reversible. I hate closed specs 
i have a reverse engineered version of cubism core
but trust me you're NOT reversing it from looking at models alone
Haha
fixed 
im not really sure what it means but i replaced it with std::shared_ptr
I've reverse engineered network protocols before. Can't be that hard :P
small snippet
Did Vedal not do caching?

there are also different warping methods
basically, no, you have to properly reverse engineer it, not just look at the models
The formatting is making me uncomfy 
Also how'd you go about reversing it? Looking at the library/binary?
i have like 8-9 years of reverse engineering experience so yeah
Neat
I wanna see the rice
might try nix
Dew it
Yeah
I read some boring stuff. Took a bit more than 5 hours
I now respect my computer immensely, because it might be more complex than me
+2k lines of code in my dotfiles 
What is raid spoiling?
saying "raid incoming" in chat before it actually happens
Ahhh, thanks. I only use twitch to watch neuro lol
(same)
AstralSpiff is a good streamer too, I watch him and neuro
How's your programming web game going?
its going...
... going good or...
ahhh I see
Sam can I show my dad who does coding as his job the beautiful spinning turtle with Michael Jackson lol
sure lmao
Lolll
Time to show him peak coding
I need to make a new GitHub, it's been like 3 months and the support team hasn't responded on why I got suspended lol (I think it's from the middle finger detection code I wrote lol) 
rip
woudl they really suspend you for that?
Would be funny if you check in the training set consisting of 10 thousand middle finger images
It's the only thing I had in my repository besides my robotic arm code so idk
Heyyyy I didn't post that in it lol
They haven't directly said why they suspended me even though I appealed 3 months ago and did a follow up every month
i may have deleted my taskbar lmao
printscreen doesnt seem to be workign so idk
Here a fix is to delete system 32
(kidding)
good idea
Lolll
Did you also get the Windows "Absolute death" update that makes the whole OS unusable after it's been running for a while?
... That reminds me, my PC has been on for 40 days... One sec lemme shut it down
seems like explorer isnt running at all, which would explain the taskabr not existing
Use restart and not shut down, else your system won't be reset to a fresh state
No taskbar 
Meanwhile
Did you use personal email or education email?
I'm back
Personal
Oh yeah, thats weird
3 monitor setup damnnn
The optimal number
Any more and its just distracting
I only have 2
Why did commit 100 have to be a workaround hack 
Same
The billionth repo on github is about shit
it looks lik my windows background is also gone lmao
Thankfully I'm hosting on my local gitea so shit doesn't affect me
My lockscreen 
Since when does Suriel have a discord. I recognise that colour anywhere :P
This is the base windows taskbar i guess
The mods will get angry so uh.
Didn't ask for a link lol
Did you censor youtube music?
Silly
Meanwhile me:
- DELTARUNE OST
- https://www.youtube.com/watch?v=b1HNHqSdGW4
this has gotta be one of my fav covers i've ever done... and its even got special vocals! swarm is the most dedicated fanbase. ABSOLUTE CINEMA 💜
come chat w/ me on discord if u like! discord.gg/8ry5dn3UjA
NeuroSynth-BETA-3 developed by Superbox & Wispers
(actually amazing work btw)
Motifs:
Raise Up Your Bat (Toby Fox)
SUPER COOL ART BY O...
I hate how gitea only displays relative dates for commits like "3 weeks ago". Nice. So, what was the exact date?
Oh so you have this but complains about RTX vedal huh
id never complain lol
Is there no config for it?
those are 2 diffrent things, i prefer this over rtx vedal 100 times over
based my lockscreen is a w fr
There was a pull request for making it a setting which was closed https://github.com/go-gitea/gitea/pull/24342
At least I learned you can hover over the relative timestamp to display the actual date
seriously, why is this a thing
Open Source development in a nutshell lol
@olive sable

Haha
The perfect fit
Yoo, ||crank that turtle boy|| 

Do rigging next 
Awww, dangit. I wanna see Sam suffer with art
Woah, nice

At least KiCAD is usable tho
P H Y S I C S
its apparentlky pretty easy to do in blender, you just need to wait a long while for it to render
If you actually compute the cloth physics then yea it will take a good while to compute
iirc that one took like 10 hours even with a 3090, granted i could probably have made a bunch of optimizations if i bothered to do that
like fast gi aprox or caching some stuff in vram
Physics usually done in the CPU so that will always be a bottleneck
the cloth physics get done before the render on cpu side, didnt actually take that long, maybe 4 min.
i do have 16 cores so idk
Oh, I didn't know cloth physics is cheap
I'm used to an accurate sim rather than an artistic one I guess. And with huge ass machine
in the video each time it gets subdevided it took a lot longer
what i also found interesting is that the cloth felt less thick with each subdevision
im not too sure how acurate blender is, but you do define the mass and gravity and shit
Well yeah, sub-division basically add more point to compute. If 4×4 grid is subdivided it'll be 16×16
But technically it should give more accurate (true to life) result
Also depends on the physics engine / solver
Too small of a sub division may make the simulation numerically unstable/yeet off to fucking wherever (as freya holmer put it)

8×8 lol wtf was I thinking
Oh ye, 16 point in 4×4 grid turns into 64 point
I see xdx, I see a video from Sam. It's time to see what we roll in terms of audio
oh my god i got jebaited so hard it's a render

Welcome back to the real world
real neuro fumo
Been doing some red teaming for what I assume is an unreleased model
That's not at all horrifying
hehe lol
guys that was made in blender...
like a said before
anyways i have my last 2 exams in a few hours
goodnight

bro Im sending my dad this 

Blanket
lol
Fun though, its that hackaprompt red teaming competition that sponsored DougDoug a while back
@frail citrus watch this
hour 2 of trying to set up this pc, apperently for the entire time the gpu wasent even being detected
woo
Goodmorning 
alright i managed to make it connect to my laptop so i can use it without a monitor
gpu not being detected is probably because i dont have drivers so ill do that soon
no wifi card problem is """solved""" by connecting it using an ethernet cable to my laptop and then network bridging
which is so incredibly convoluted but its alright
I'm about to sleep lol
I have my last 2 exams so ye
Managed to configure screen sharing to work, but my left side monitor is vertical (transformation settings defined in the hyprland config file). I've tested on Vesktop and OBS studio - issue pe...
i cant use zoom screenshare until this is fixed
the fix is alr accepted but its not landed onto webrtc yet 
struggle 
i think ill just side install i3 tbh
That's somewhat funny.
surely i dont need that much effort to use a shared config between sway and i3
x11 didn't have this issue
why is this so sad
also it is bonkers to me that xdg-desktop-portal-wlr relies on xdg-desktop-portal-gtk for screenshots
in what dimension does that make sense

it does?

from dbus monitor the screenshot method is just no longer registered
i checked with portal-gtk installed and confirm that the provider is still from wlr
then i checked online and it turns out -wlr depends on -gtk specifically only for screenshots
this reminds me of a really small program that depends on gtk for file dialogs, forgot what it was though
tbh its weird that it relies on -gtk, the source code doesn't say anything
does -gtk pull something extra that -wlr relies on that isn't somehow automatically pulled when i installed the -wlr package
oh maybe i misunderstood, i might just be using -gtk cause im somehow missing grim
that sounds like a dep issue, where -gtk install/initializes the protocol for screenshot tbh
cause it is supposed to be using dbus no?
also lmao what an issue on hyprland
yeah it uses dbus
i also just checked, i do have grim
so tbh i have no damn clue
whatever, if gtk works then it works im not gonna think about it 
Wasn't hyprland gonna have a premium subscription or something?
what?
OH @safe path are you using XDG_CURRENT_DESKTOP=sway for flameshot?
what the fuck
Oh okay, this is just for premium support + dotnet files
not the whole hyprland
Im done with my exams 
I no use hyprland anyways
good work sam!!
Most of it went well
Im slightly worried about history and chem
Anyways i have vacation now 
I'm back. And I will make it everyone's problem
wtf did they send
some ad about boosting
that sounds stupid
not the perks part, the perks are good
just the yap about how it works like brother be more specific
nitro is really a waste of money
CONGRATS NOW FIND A SUMMER JOB😭
well i have to work for a new laptop cuz mine dying😭

allocate boost like skill points to levels xor perks
curious what was the hardest exam you had?
too me it was database exam and python
Im a python pro so eh
PostgreSQL made me goated in and passed good the exam
i am an idiot in python
I just had ram added to mine so I can run a local k8s node while compiling some backend monolith while watching neuro with a game tabbed out
PostgreSQL is goated backend trust if you wanted a good neuro back end
oracle: eats 16mb insert file in 5 minutes with minimum 4gb ram
pg: same file 20s 200mb
DO
why does that still seem slow... hmm
well its kinda old
that.. doesnt mean anything?
wonder how clickhouse would deal with that file :D
anyway, lunch 
pc is finally set up
got vdd so i dont need a fat monitor clogging up my desk and i can just parsec into it
uhhh what else
still need to set up some stuff, debloating windows
but it should be functional
well maybe cuz well modern servers and idk stuff changed such as new version of web hosting changed
idk i think PostgreSQL is great
idk if this made the news here, but apparently Discord just rolled out AV1 embed/upload support
Seems legit

sophiascript 
Does this make them the first country to appoint an AI to a government position?
Now we just gotta get Neuro in there when they aren’t looking.
Neuro's rights 
💀
Your honor, my client is illiterate, therefore he cannot read the law
i cant believe the person who was streaming a pc game on his jet dosent own a laptop!
Elon after posting something on Twitter via pigeon mail
you must understand, he was using his fridge
your honor, a fridge does not count as a computer
4 paragraphs in still nothing about how this is relevant to the court case
0/10 trash clickbait journalism
"hey openai u broke promise"
"ok but u really no use pc??"
pretty sure that he tweeted about his white house gaming PC a few months ago 
where's the source?
well some trees are dying in northeast china so American lawyers are trying to find out whether musk touches the shampoo bottle with left or right hand first
heart 
#politics 
Mb
nah im joking
jokes are the politics of the funny bone
my motivation to interview prep is gone
help
Just hash everything 
nah he left a month or so ago
something something friendship over
Whenever I lose motivation I play a fromsoft game for a few minutes and visualize the man I wanna become...


Nightreign's been my only source of cope this past week
i did not expect to find a "vedal femboy" gif but here we are
Surely accurate
also leetcode is more boring than I expected
(how do people exist without auto complete)
This is cursed af
I once interviewed a guy that took a paper and pen to program with a whole computer in front of him
I mean, it helps with doodling architecture diagram
doodling on pc is a bit hard
The question was a simple for loop
okay this is legit ai
or real
It's real 
fuck
i lost hope in vedal
Nah. It's actually vedal 
Veo 3 makes some videos look really legit though
We have no confirmation of this
Gaytracing you mean?
For even Filian could flip Vedal
no
But what if vedal uses 100% of his back?
The man is carrying the whole ai content creation on his back
Have you seen those videos with veo 3?
Most of them now look super realistic
we all know vedal is ripped af.
And then here on LATAM they make grandads jump and do backflips
The video hide most of the body features with a mantle and oversized cloth
Spent 3 hours reading what is cache. Still don't really understand what is cache
CPU cache?
I love computer science
Yeah, that's the issue. Like there is a part of CPU integrated memory thing that is cache, there is also like a micro cache thingy that stores the pointer, then there is a cache in the realm of coding that is specific for every app that has it
So it got me very confused
But now I know what is memory allocation and how it works (in very broad sense)
afaik cache on cpu is just the values currently needed and/or frequently needed
Well, the CPU has the cache and registers, the registers are the fastest locations on the CPU, the cache comes in multiple levels, with the lower levels being faster to access
The CPU's cache is a bunch of very fast memory on the CPU where recently fetched data is stored, which is designed so that reading the same data repeatedly will be faster since it'll already be in the cache
Well, it's just a store of recently accessed stuff
When a value is accessed from main memory, it gets copied to cache, if it gets read again it's read from the cache
The cache hits!
to summarize its just you accessing the cpu memory and going through the lower level control
That's not really an understandable summary of what I said
you just accessing the memory of the cpu taking the data
i know its stupid
I believe that if data is drawn from CPU memory and doesnt need to be searched for its called cache hit
its just accessing memory data
i mean i dont know your just accessing the cpu memory and seeing how fast it is?
ive always thought of cache layers like in irl, fastest is whats next to you on your desk, after that you have the stuff in the same room, then the stuff in the rest of your house.
ram is like getting is from a warehouse and ssd is gettign it imported from overseas.
idk but it makes sense to me
it's a basic hierarchy
the closer the faster
try accessing faster first before trying slower
The cache is pretty much invisible to the program using it unless it specifically checks the timing I believe
well the cpu is like the ship who ships and delivers the received data based on one singular instruction
yeah to be honest.....
.......
i sometimes forget what i am even talking about
most of the time i feel stupid
but idk why now ny brain is working
the only thing you really need to know is that ideally you want to reuse memory and do sequential accesses
rest is handled by the hardware for you

sth sth temporal and spatial locality if you want some words for it
idk what to now say

ideally you limit the amount of data you're passing around. either by reusing it if possible or by making it as small as possible form my experience
for example instancing instead of making 1000 times the same mesh
this gives me c++ vibes
Also I understood that stack has an order and is sequentially added to memory, while data from the heap is being tossed haphazardly in the memory space that was allocated and allowed by the OS, so if you will try to put the stack in this general area you might run into the issue, that this space is being "littered" by pieces of heap data, so you will have to allocate more, which is called external fragmentation, but why can't you allocate the heap in the stack-like way, just placing pieces of it tightly one after the other instead of "shotgunning" them into allocated region? Kinda a mystery to me rn
wdym?
so thats why c++ makes me wanna shot my foot
low level topic
it depends on the actual allocator, there are some that basically reserve a chunk on the heap and treat it like a stack (arena allocator my beloved)
there are many many different ways someone could be allocating memory so malloc is incredibly complex to deal with that
isn't that what you're supposed to do in c/c++
yeah
i should use a spas 40

I'll go watch some more memory related stuff, I really liked it. You have fun guys!
was it glsl at least
no
it was just very roundabout about it cuz it was part of a class that im using inside a diffrent class, and both of those are inhereting from a base class
this basicly
it's just a syntax error, not even memory management related
you're still using C++, so clearly not 
i woudl rather have 100 memory leaks than rust
why not both

c++ ALERT
we dont need an alert for this, weve been over this
bwaaaa
though Rust is also pretty good with preventing memory leaks, since it tries to keep as much things in stack as it can and only use the heap when it needs to. C++ on the other hands just throws random stuff into heap whenever it feels like it
you could micro-manage it im pretty sure
at the end of the day im compiling to wasm anyways so idk if it actually matters that much
Rust has borrowing an ownership which avoid the step with heaps and garbage collector, so if you are good enough you can make your code memory unleakable. I think
yeah, it's much less of an issue since you have to keep track of lifetimes anyway
there are still subtle causes of memory leaks though (Rc cycles for example)
Rc?
reference counted pointer
ye, runtime reference counting
if two of those somehow keep each other alive, then their reference counters will never be 0 and so they will never be dropped/freed
ah
i mostly have issues with my refernces not being kept alive
doing a cheeky std::shared_ptr since i have no real solution
Make every value global, easy 
never
that one can't happen in Rust
(but is also easily preventable in C++ through smart pointers like you said)
What did TI do to you? Forcing you to their godawful IDE?
or use that C++ CLR thing and have a garbage collector 
CLR?
Btw @wary rover , cache is just another storage. RAM is also a storage. Register is also a storage. The difference is how the CPU access those. Cache is usually close to the CPU so the signal has to travel shorter distance than the RAM
almost everything a pc does is just storage
What in the fuck is this...
A calculator that could connect to computer 
their calcualtor connector app has a built in ide for writing ti basic
C++/CLI
a version of C++ that runs on top of the .NET runtime
Sounds cursed ngl
their linker isn't doing linker things so i have two different symbol tables, one of which includes bad symbols that should be stripped off and cause tests to fail cause they're mapped to 0x00 for some reason
C++ except it works like C#
ah
Yeah, but now its C++
huh
C||++|| Language Runtime
basically thing that lets you use std functions
no, the other one
Common language runtime
ti basic...
its awfully slow, but it works i guess
that reminds me, some TI calculators (including that one I think) are overclockable, and it's actually somewhat useful 
makes graphing way faster
I fucking hope so with overclocking and all lol
I don't think it even changed any actual clock, just memory timings or something
mine isnt overclockable, but it is possible to lower the wait state
yeah, that
never bothered to actually do that tho
Now OpenAI will just promote you any product imaginable
I hope you have rerere turned on
it's a massive feature branch that needs rebasing every now and then :D
I do not, as it can actually backfire lol
I legit think you should use pijul if you're doing that many changes at once quite often
nah we rebase this branch maybe every two weeks, takes at most a day, but not because of conflicts but rather because of reference files that need updating and that takes a while
it's already rebased and the code is fine. the thing I'm doing right now is just updating reference files in commits that need it
That's good to hear at least
I even fully automated it :P
git rebase -i --exec "if git diff-tree --no-commit-id --name-only -r HEAD | grep -q 'tools/<diff tool>/ref'; then echo 'Running tests - reference files changed'; cd <project>; make <find diffs>; else echo 'Skipping - no reference changes'; fi" origin/master
Also, every two weeks count as often because it implies that it's a re-occurring thing. At least for me tho. If its just a one off thing then yeah, its not something often
Noice
we're changing quite a bit in that branch. we can't yet merge to master as the next release is still on there. once branched off into it's own release-v..., we'll finally merge :D
funnily enough, a second branch depends on that branch, and that one has equally as many commits
and another branch depends on that one. 
this mess should be over in two months or so
Really growing and nurturing that tree huh
it's quite wide at the moment :P
just checked, about 20 active branches
But with big enough project I think it is the best practice possible
oh yeah definitely. works well for us
Retired Microsoft operating systems engineer Davepl reveals some of his favorite C++ tips and tricks accumulated during nearly 40 years as a C/C++ programmer.
Dave was a developer for Windows Task Manager, ZIP Folders, Space Cadet Pinball, the Windows Shell, OLE/COM, MS-DOS, and much more.
Some Microsoft Campus photos are copyright and credit ...
"I’ve been coding in C and C++ for 40 years, now that im finally gettign good at it"

Oh it gets better Sam, don't worry 
that guy 
do you have something against him? 
stroustrup said he knows like 70% of c++ iirc
Hello, my friends! Let's hit 20K likes? Check out my website! https://enderman.ch
❗Dave took down this video with a fraudulent copyright strike in the morning of April 13th, 2025. The video was reinstated in the evening of April 14th, 2025.
https://x.com/endermanch/status/1911338535002550324
Today I am going to tell you a tale of SoftwareOnlin...
Also don't use new operator on latest C++ I think
hm? why?
Isn't object creation now handled with smart pointer?
bro has a whole google docy 💀
ye the evidence is pretty damning
but scamming people is the microsoft way so 
was scamming people before it became mainstream
even if you leave the company, the company never leaves you
Not if you don't use them 
im using them at least
Imagine if you could have their benefits without the runtime overhead, that'd be so nice 
Too bad we don't have the technology
toast about to invent the st monad
i currently dont have a diffrent way to deal with the memory life issues so idk
Arenas 
They let you group allocations into a single lifetime, you just free the entire arena at once
Memory management stuff
god that reminds me of a lifettime allocator I made in c++. It was an RAII class, and you would pass it to your vector or whatever, but the class would just ignore calls to free, and it free's all it's allocations when it is destroyed
yes that is an arena 
I love it when you're explaining the concept to someone and they argue against it but as you explain it more and more they slowly come up to the things that you're explaining in the first place
The backgrounds have been improved (My blender skills are getting better)
chatGptFor500dollars (from r/ProgrammerHumor)
i can do that
just a wrapper? xdx
set up and skin open webui, use others as backend, done
ain't doing all that for 500
managed to get hblang hello world down to 531 bytes
that's pretty small, but consider the following:
well, manually written binaries are going to be smaller 
the only way this can get smaller now is code optimisations, most of which are only possible if the _start is unified with the main
i could make the binary smaller myself by optimising the program of course
Or forego software and just make hardware 
_start:
sub rsp, 0x08
mov rax, 0x02
mov rcx, [rsp+0x08]
add rax, rcx
mov rdi, rsp
add rdi, 0x10
mov rsi, rax
sub rsi, 0x02
call :main
mov rsi, rax
mov rdi, 0xE7
mov rax, rdi
mov rdi, rsi
syscall
main:
push rbx
sub rsp, 0x08
mov rbx, 0x01
lea rdx, [0x0000000000000007]
mov rcx, 0x0C
mov rsi, rdx
mov rax, rbx
mov rdi, rbx
mov rdx, rcx
syscall
lea rdx, [rsp]
mov rax, 0x0A
mov [rsp], al
mov rsi, rdx
mov rax, rbx
mov rdi, rbx
mov rdx, rbx
syscall
mov rax, 0x00
add rsp, 0x08
pop rbx
ret
right now still pretty bad
lea rdx, [0x0000000000000007]

the two syscalls in main are because im separately writing hello world and \n lol
absolute offset to the "hello, world!" in the binary
i've fricked up this binary so hard that objdump is failing to produce a disassembly
its ok
remember when my brother bought a new laptop over a $60 part breaking?
well, my sister is going to be needing a new laptop for school and we're giving the broken one to her now 
no e-waste
lenovo 15itl05, only 8gb of ram but besides that its decent
also, aint no way they're making the usb-c output higher res than the fullsize hdmi port
Depending on the HDMI version and the USB, it's very possible
Install linux 
its my sisters laptop now, and its for school
so VERY BIG NO
im just waiting for the new part to arrive this friday
im having a heart attack, why is the binary a whole 22kb
cuz linux is unusable for most people
i wouldnt say that actually
its usable for most people if you use a beginner friendly distro
its when you have to do some "mid-skill" stuff that a layperson wouldnt be able to do anyway that windows becomes more convenient
fair, but still i need something that my sister can use without issue
i dont get paid for tech support
Depends on the school honestly. If they use mostly google docs/office 365 then your sister is good for linux
idk what they use tbh, but the old one has obs and pycharm preinstalled
for some reason
Both are available on linux so still safe
Yeah fair
my sister knows windows, the school teachers know windows. this will make it easier
and i also dont really feel like installing a new os on it
@sick owl new feature on AI studio
we might (?) have better resolution for images/video now
sure works better than last time I guess, wasnt able to correctly decipher this previously
real game begins when they add 'High'
Oh nice
It seems like the memory and intelligence upgrade is working good now
No more thesaurus rants 
But why...
Nor calling evil a lot lol
rewriting iterators to use new language features
before:
$for_each := fn(self: ^Self, $func: type): void {
loop {
x := self.next()
if x.finished break
_ = func(x.val)
}
}
```after:
```rust
$for_each := fn(self: ^Self, $func: type): void {
while x := self.next() _ = func(x)
}
Man, neuro pause when mentioning S.S. Duck-sama is something else lol
Wait, does discord supports hblang syntax? Surely no
no, just using rust syntax
discord doesnt even support zig syntax
lol
That would be wicked if they did 
Content-Security-Policy: default-src 'self'; script-src 'self' https://trusted.com; img-src 'self' https://images.com;
???
Where is that from?
explain why CSP syntax highlighting is needed??
discord uses highlight.js
look up the list
google "csp example"
why is that there
I know what a CSP is. I thought it was used somewhere in prod.
https://highlightjs.readthedocs.io/en/latest/supported-languages.html
dunno, it has a lot though
no i meant the source is from me googling "csp example"
xquery, vimscript, god damn "test anything protocol"
TAP?
not the font
noe
that wasn't a question, how do you think syntax highlighting for a font would work
Make them animated rainbow 
vimscript might be a bit older than zig 
unless...
jesus what is this
rust agrees which is good
Glyphs.app apparently (actual link, not accident)
actually goated branding tho, everyone seems to call it Glyphs.app because macos and it's the domain
A
chatgpt is down?
i need it to help me with pointers 
2FA now stands for two-faux authentication
welp, it sure is. 
guess ill go try gemeni
hi
pointers
i know pointers
i have 2 classes.
class Camera: public Object
{
public:
glm::vec3 forwards;
float zoom;
Camera(glm::vec3 center): Object()
{
forwards = glm::vec3(0,0,1);
zoom = 3.0f;
position = center;
}
~Camera()
{
}
};
class Player: public Object
{
public:
Camera cam;
Player(): Object(), cam(position)
{
position = glm::vec3(0,0,0);
eulers = glm::vec3(0,0,0);
glm::vec3 forwards = glm::vec3(0,0,1);
}
void update()
{
makeTransmat();
cam.makeTransmat();
}
~Player()
{
}
};
it would be pretty cool if the vec3 for center was a pointer instead of a copy
There's always gemini
i know
bwaa
oh god opengl I'm getting flashbacks
this
that
this code is not even a single opengl line
replace both glm::vec3 in Camera with glm::vec3*, replace cam(position) with cam(&position)
I mean you're literally using glm
yes
i was wondering if i missed something
did we
only problem here with using a ptr is that its nullable
ideally you would use a reference instead
kowalski analasys
Or smart ptr
hire me vedal
to use a ref instead of a ptr, use & instead of *, yeh
though
you cant change the reference value afterwards
so use ptr if you want to change it at any point
are you inferring the model on the original gameboy or what
So
Step 1: Buy a book
Step 2: Overfit the hell out of said book
Step 3: AI output can't be copyrighted
Step 4: ???
Step 5: Profit?
But you buy the book legally
And just then, training for AI is fair use
buying the book illegally 
Believe it or not, yes. There exists pirated book
buying
3b model running on cpu and ram while playing helldivers 2
Yes
its not fair use because the terms for ownership of a copy of the book and ownership of the words of the book are different
As in, it's not printed by a legal publisher
(dont get on the bad side of publishing agencies they will send you to a new realm)
read the article url slug at least
The Northern District of California has granted a summary judgment for Anthropic that the training use of the copyrighted books and the print-to-digital format change were both “fair use” (full order below box). However, the court also found that the pirated library copies that Anthropic collected could not be deemed as training copies, and therefore, the use of this material was not “fair”. The court also announced that it will have a trial on the pirated copies and any resulting damages, adding:
whether or not the law agrees with me is a different matter 
not with that attitude you cant 
i should make up my own laws and tell them to people so they commit crimes
Please don't make C++ even more cursed
c++ is as cursed as it ever was
and its beautiful
And you want it more cursed?
i think theres a level of cursed past which you want more rather than less
it's a lost cause at this point, cram everything in, it cannot be any more cursed that it is already
i swapped
@syscall(1, 1, any.ptr, any.len)
@syscall(1, 1, &'\n', 1)
``` for `@syscall(20, 1, .(any, "\n"), 1)`
and i gained 29 bytes 
You're on to something there
Okay fine, do it
any are you okay
that sounds like something one of my friends would say about her weight
also as a side note are you sure you want position to be a ptr
i think so?
100%. Its fun to see where it will go
is there a reason for it to not be?
i gained 29 bytes
you should do keeto
the existence of position will only be valid while the memory it points to is valid
huh
if the thing owning the value at position gets deconstructed or moved, position will go bye bye
i guess it works as long as player's position is valid
vec3 = 24 bytes
pointer = 8 bytes
please learn about cache locality and the cost of indirection
this is also true
and this is leaving aside the fact pointers are a massive pain to deal with because of lifetimes
you dont save any computational efficiency by using a pointer instead of a value
i thought it would be better cuz of using the same vector?
its better in terms of memory efficiency, but all you save is 3 bytes per camera
basically, instancing is not done via pointers
its done via better code structuring
since you are only going to have a few cameras in any one scene, it makes a lot more sense to just leave it as an owned value
the main focus is speed, not really memory usage
then using a pointer almost never faster
this has nothing to do with memory usage honestly
Then it makes even less sense to do it that way
i thought copying the array was slower
its not an array though?
mhm, 3 bytes is an inconsequential amount
im too used to python 
whenever you have a pointer, you must also think "when should i free it"
if you can't answer, chances are you should rethink your architecture
vec3 is 24 bytes so on 64 bit systems it takes 3 moves to copy it. vs 1 move for a pointer.
but this doesnt take into consideration the cost of accessing the value in the pointer.
and after you answer that, you can pick a smart pointer that does just that
when you want to access the value, you perform the 3 moves anyway
its pointless (pun intended)
naturally, keep in mind that double frees are illegal
it basically shouldn't be freed at all until the Scene class deconstructor gets called
explicity freed when the scene class deconstructor is called
yes
ok and how are you gonna avoid double frees if you share the pointer?
there is a valid answer btw
and shared ptr is the wrong answer
bool is_freed 
wdym share the pointer?
i thought only the camera class would have a pointer?
you said you wanted position as a pointer
there is no explicit ownership
huh
ok chay maybe you were right about rust being a better learning tool
just use an owned value 
tldr sam - just consider pointers the spawn of satan and dont use them unless you're very sure of it
its harder to make your program segfault that way
well yes, those 16 bytes dont matter
and the level of micro-opts to use pointers is genuinely inconsequential compared to the actual usage of the engine
you wont like seeing what ive already done with them then 
what
valid response
it needs to be done this way cuz of otherwise the object gets deleted
shared_ptr is a smart pointer 
its the same as a gc cell in python
why cant you retain a copy of it
cuz the copy doenst retain the opengl bindings for some reason

i shoudl look into why that is but the gltf loader code is not mine and im scared of it
you might want to use move constructors
thanks grok
construction sets (like lego) are called constructors in russian which is probably somewhat confusing to people new to programming

i used to have a building system named "construx" at my grandparents
was very poggers, but 3x my age so all the plastic started breaking 
i don't see how it can be confusing, you even have parallels to draw, like, aha this thing called constructor is just like a "class construction set" manual with steps how to build it. also pretty sure everyone can infer the meaning of the -construct- word root -- design engineer ("engineer-constructor" in russian, often just "constructor") is common sense no?
p
So, you are talking about the constructors and destructors? One for when object is created and second for when it is deleted?
i dont speak russian so im not gonna make any statements about it
thats constructors and deconstructors, now we're doing "move construcotrs" which move data i think
This ain't blackberry messenger
unc alert

oldge
I'm probably the same age as chay
well i have never used blackberry

imagen 4 available in ai studio at last..
my first phone had a 128x128px display and in 5th grade i bought myself an android phone
they stopped making phones in 2016, at which point i was 9. and they fell off way before that
omg the passport was the coolest thing ever
My first phone is a phone with Java-based OS, had a shitty display, and not qwerty keyboard
i doubt it was actually java based



AO?
am using sway



