#programming
1 messages ยท Page 53 of 1
Also "skill gaps" skill issue man u need effort what did u expect
And pretty sure no one wants videogames with ai music and live performances with some ai generating everything
What i think is these companies are trying to make people as useless and reliant on ai as possible to then sell them random shit cause they don't know better
I think you will like this song
https://www.youtube.com/watch?v=1400fzt0SHU
"OPENED UP PANDORA'S BOX, NOW BEHOLD ITS SHOCKING CONTENTS"
https://linktr.ee/keepthechangepls
Produced by Rav, mixed by Scuare.
Single cover art by Leslie (@lesliesuperr).
Lyric video by Deemust and Rav, with additional 3D modeling and animation by MITCH!
โข Kill Bill: The Rapper Linktree โฃ https://linktr.ee/iamkillbill
โข Rav Linktree ...
Doesn't look like much based on thumbnail, but the music video is a work of art and the song itself is good af and topical too
Those use cases are so stupid
Imagine if use cases were AI generated
They 100% are
There's no way they are not
The only thing they lack is the word "delve" somewhere in the text
You guys know the thing with AI and word delve?
Wonder if our kids will become as good at telling apart people and AI on the internet as we are now at noticing advertisements in media
Cause like 50 years ago people valued ads as a genuine deciding factor on purchasing something
And now we just dont give a crap
Openai said if they added watermarks to their outputs people would use it less and therefore they won't add a watermark ever
Humble watermark removing AI that can be easily integrated as a browser extention:
Ai is so dumb
I know people who can't write a letter anymore
And people in school who only survive cause of ai
I've heard people in US don't write in cursive which blows my mind
Like writing in printed letters font is 10 times slower
How can you keep up with a lector when taking notes
Also English cursive is so pretty and sexy looking, I sometimes just write random stuff in English on paper because it looks cool
Mine is only good when I write for the sake of writing. When I use it for practical reasons it's crap
Easy solution: I don't take notes
A lot of lectors here require you taking notes
Didn't write anything on "Mechanical principals" course, because I have a natural affinity towards that stuff, and just good at it. Had to write down 60 pages by hand in one night
Lector is a human version of d6. If you roll 6 you are good even if you don't show up for a year. Roll 1 and "Show me notes for every lecture"
I think he is a bit afraid of me ever since that happened
It was first year and he was teaching us general rules of bleuprint making and such. I was very bad at time managing and screwed up with his course completely. Had to do a semester worth of work in 5 days. Didnt lay down for 5 days, slept only when passing at the desk or in the bus. Go to exam room, model the part I was assigned with in cad-like software, hallucinations of spiders are crawling in my peripheral vision. Go to him, he starts asking questions. I look him in the eyes, because that's what my father told me to do to build trust with people. He is more and more timid at his questions, answer them, get an A. Go out of the building and look at myself through frontal camera of the phone for no reason. My eyes are red. Not a spec of white. Just iris and blood
Imagine his pov
Literally me on every exam
(Though, admittedly, it wasn't as bad, just 1-2 days of nonstop work usually)
60 pages of text by hand as notes, 12 assignments in software and a folder of blueprints made with pencil on paper (very simple entry beginner noob blueprints, but still)
Compulsory handwritten notes are the bane of human existence
He also cuts the corner of notebook with scissors when you submit them (to avoid you giving it to your friend and allowing them to resubmit your stuff as theirs)
Thank god for my all of my uni professors not giving a single fuck about what we do as long as we pass the exams after the freshman year
Aside from one demented old man
Most of lectors at my uni dont give a fuck too, but that one is a 75yo conservative man who's soul is still in soviet union
Funnily enough, the old man was literally a professor in the soviet union
If I remember correctly
soviet education moment
He wasn't the only one, but the others just weren't mentally ill
We have an even more decrepit man, who is 83, but he is so decrepit, that all his quirks are easily negated by an ability to easily gaslight him into thinking that he forgot to write down the score he gave you on the assignment that you definitely showed him
I wish we could do that to that one
Unfortunately he wasn't easily coerced
He was one of the reasons I didn't properly learn theory behind electronics
You gotta build trust. I have a weird talent of making friends with old people, so now I am like a walking Get out of the Jail Card for people that didn't do his assignments. They ask me to come with them to convince the old man, because he only trusts me and a couple of other guys unconditionally
I also get a take out order of my choice as payment
I call in dementia farming
That's a good one
I usually try to become cordial with professors, but with that one I just really didn't like him and couldn't bring myself to feign affection
A lot of my early childhood was spent with my grandma, maybe that's why I am so good at this
My feels really distant the last, I dunno, 10 years
Sometimes it seems like it didn't happen to me, and I just have somebody else's memories
Same. Feel like I am living my third life tbh with how different my environment and inner state of mind was through out chilhood, teenage years and now
I personally don't feel like I changed since I was, like, 16
But I also don't really have clear memories before high school, so it could be just an illusion
I was blessed with a very good memory, so I remember almost everything since I was 6 with distant echoes of memories before that
A friend of my dad would come as a guest from time to time and play chess with me, and every time he would come and wipe the floor with me on a chessboard he would be like: have you ever noticed how your brain does this thing when... Then he would teach me some sort of mental technique and it would be immediately integrated into my thinking
And after that my memory have improved and I almost never forget stuff
My friends sometimes tell me that I have a good memory, but that only started around the end of high school
But it does help, since you have to keep a lot of stuff in mind at my job sometimes
It would've been really nice if stuff was actually documented and I didn't have to hunt down info by asking a bunch of people every time
I probably should write it down, but it feels a huge bother
Ah yes, the laziness paradox. You know the path of least resistance, but taking this path is not aligned with the path of least resistance
lub coffee 
The conflict between long term laziness and short term laziness
This study explores the neural and behavioral consequences of LLM-assisted essay writing. Participants were divided into three groups: LLM, Search Engine, and Brain-only (no tools). Each completed three sessions under the same condition. In a fourth session, LLM users were reassigned to Brain-only group (LLM-to-Brain), and Brain-only users were ...
Oh, wise elder chayleaf, may I bother you with a question?
https://x.com/itsalexvacca/status/1935343874421178762
Or in a more memetic way for those of use whoc an't read papers
Ye i saw this paper 100000 times alr
๐ด chayleaf be like
"ChatGPT how would you take over the world"
"AAAA GUYS IT TOLD ME HOW ITS GOING TO TAKE OVER THE WORLD"
no. worship
Welp, you've heard the person then Mushroom
the the
I don't know what you're talking about 
sure
Gotcha, need to get a random value from a non-number Enum. Do I use strum dependency, do I make an enum into a list later in code or do I assign a value for each member of enum and then use rng on this secondary value and print the corresponding result?
i'd just do this way
use rand::seq::IteratorRandom;
let options = [Enum::A, Enum::B, Enum::C];
println!("{:?}", options.choose(&mut rand::rng()).unwrap());
It is a part of default rust library and doesn't use any extra dependencies? (apart from rng ofc)
its all part of the rand api
Aah... Thank you very much
im not a grandma im not even 25 
i have figured out private vs public class objects 
im guessing python has everything set as public which is bad for some reason?
in python typically "private" methods are prefixed with _ or __
ah
its a hint to the programmer "dont touch this its subject to change"
there is also protected and friend
ive heard of protected, but what is friend?
if you declare a class as your friend, it can access your private/protected fields
its useful when designing libraries
so you can forbid access to certain fields externally but still have access to them from within your library
Friend is another person that you interact with Sam. Jeez, all of this programmer


I doubt irl friends would let you touch their protected property tho
so that's regular friends? not even with privileges?
Wait, friend could access private? I need to re-read c++ man
as opposed to "friends with privileges"?
i dont think so
and yes, you most likely don't want to just declare everything as public. Especially when it can bypass internal logic
i did 
JS be like, everything is object lol
lowercase class name 
theres no fields in that class so it doesnt have to be a class
use global functions instead
wdym with fields?
if you want some kind of scoping you can use namespaces
Variable specific to that class
void
public
Is that a neuro arg reference 
And if instantiated, can have different value between each instance
the arg is C# so idk
Let's say a class looks like this
class Alpha {
int some_number;
};
i still need to add those.
the eventual goal is to have an input for the class to init a specific scene
you can just make it an input to the function
When you access some_number, it will be different between instance. An instance is basically this
auto instance_a = new Alpha();
auto instance_b = new Alpha();
ye thats how it worked in python too
Chay here trying so hard to make it not OOP
is oop that bad?
No, it has its uses. But also most people tend to overuse it
And I agree, if it can be made a functional style, I'd go with that
Its easier to reason when a function doesn't have internal state
Dangit my mind is all over the place
its not about it being bad or good, its about the fact theres literally no point in classes when your code isnt oop
fair
do you use inheritance, polymorphism, encapsulation, is every "object" in your code a separate self-contained heap-allocated entity? if no, thats not really oop
well, its not always heap-allocated, but the further away you go from my description the less oop it gets
i am planing to use inheritance, idk what polymorphism is, idk what thwe rest means erither
heap allocated would be the meshes i guess?
heap allocation isnt directly connected to oop, but objects being heap allocated means they are interchangeable as they're just a pointer
anyway, oop is code design focused on self-contained objects that have public interfaces that do stuff and that have a hidden underlying implementation. This means you can freely exchange implementations, but it also means each object has to be self-contained, which can in some cases limit what you can do with them.
so like this i guess?
this still isnt oop, this is just a wrapper around a gl texture
i mean, you could argue about it i guess, but imo it would be oop if you also had some other objects that could be used the exact same way image is used and would go to the same place but would be implemented in different ways
and if you dont have that, you dont even need a class
why wouldnt it need a class? it has to store the texture no?
so, first of all, its just a single field, you can just pass it around to function inputs. (void use(GLuint texture);)
second, this has bad typesafety, so you can wrap it in a container (this still isn't OOP, you can easily do it in C)
third, whether you do texture.use() or use(texture) is entirely preference and, again, is not related to whether it's OOP, also different languages may make the one or the other approaches more ergonomic
also you should learn about constructors
and destructors too
what is the bad typesafety about?
i thought i was declaring the types properly?
i'm not talking about your code
i'm saying that if the function use was not part of a class
it would have to take the GLuint somehow
and it's easy to make it just take it
but then you have bad type safety
since you can accidentally pass it some other uint
but if you wrap it in a new type (this concept is literally called "newtype"), this problem disappears

i get that the GLuint is just a unique number, but is it not preferable to not have to pass it around manually?
its better to use wrapper types to protect yourself from typos
the underlying in-memory representation will be the same
you will still be passing it around obviously, just not in the form of GLuint but something like TextureHandle or however you call it
so instead of attaching the texture object to the mesh i just attach the typedef Wrapper<GLuint> TextureUint; then
ok
wrong
fuck
then if you have two different wrappers around GLuint, they will be the same type
but the point is to make them have different types
anyway the idea is, at some point everything is just a bunch of bytes, but that doesnt mean all data can be treated the same way, some of it is integers, some of it is pointers, some of it is texture handles, and if you just deal with raw ints you will have the equivalent of python type safety but with all of C's potential of something going wrong
Chay, I think you are better off giving him an example
i cant find this newtype thing
using TextureHandle = GLuint;
oh does C++ allow creating new types like that?
Yes
ye
literally just struct TextureHandle { GLuint handle; };
wont it be an alias to GLuint?
Hmmm, Toast solution is better I think
oh. i was googling the word newtype and couldnt find anything
Here we go again, structural vs nominal
wait you're right


glGenTextures(1, &texture); does not like receivign a non GLuint
i guess ill need to cast it afterwards?
you can do &texture.handle
Is texture type TextureHandle?
that is the point ye
but also you dont really need two wrappers around a texture, sorry if i'm confusing you, image in your code was already a wrapper around GLuint
if you're feeling extra lazy you could also add a lil
operator GLuint() const { return handle; }
to the struct
(i think?)
wont help with pointers 
this works probably
don't use pointers then 
true!
What it means is to accomplish something like this
struct TextureHandle { GLuint value; };
void someFunct(TextureHandle data)
{
glGenTextures(1, data.value);
}
So whenever you use someFunc you will not confuse GLuint for other function that needs another GLuint but not for texture
thats honestly a skill issue
pointers are more bits than my gluint so they're actually more nutricious. im guessing tis just cuz konii is small she cant do 64bits


i cant believe it, after defeating speedlines i have to fight my own brethren (leaves)
life is cruel
green
like the pokemon game?
sure
Toast is also green
green
is that green?
its light green
telegram green
i wouldnt eat that
i am still red-green colourblind, but that is yellow
no sorry
"that" 
toast has been objectified
huh, toast is actually an object
i never connected the dots before

a.k.a, not your problem
i mean, if you're infra is down that is kinda still your problem
ah
how do you not notice that earlier 
it's not like that much dirt just appears out of nowhere
there's quite a few degrees between "temperature is a bit high" and "emergency shutdown"
i'd love to know the same
didnt pay the lawnmover guy
80 degree and the monitoring guy just said not great not terrible
i do wonder, do they mean dirt from inside or outside?
cuz ive been asuming its a big hvac unit on the side or something but thats probably not how that works
i'm not 100% sure i just know that most of the newer gpu nodes are watercooled

tbf they might not have noticed any issues before now because of lower outside air temperature
i don't like going there it's loud
even with liquid cooled nodes? 
that's only the newer cluster, the old one (that is about to be torn down) is purely air cooled afaik
that is about to be torn down
silence
i think the cpu nodes are also mostly air cooled? with some exceptions

i can't wait for the upcoming cluster to overheat on the regular 
too bad i probably won't be there to witness that
the only dc I was ever in is fully air cooled
can confirm that it's hard to have a conversation in there
๐ฃ
i was at yandex's presentation of their dc in finland (lol i doubt its still a thing) but never been in an actual dc
is nice but i can't imaging working as a technician in one, that sounds awful
i just like seeing and playing with cool new hardware 
they're currently in the process of ordering a ton of 5090s and some B200s for the new cluster 
(thank god it's largely funded by the state
)
You want to burn down the cluster with those 5090s?
yes 
Silly
the things we do for speeeeeeeeeeed 
-# bzzzzzzzzzzzZZZZZZZZZZZZZZZZZZZ ๐ฅ
is all caps constants still aplicable in c++?
yeah

constexpr is your best friend
that cant be changed by the program tho. so while useful i cant use it in this case
wdym
tbf the question was misleading, but im specifying the width and height
int WIDTH = 1920;
int HEIGHT = 1080;
these should be changable in the settings so im not makign them actual constants
it will probably be easier for you then, to use a struct and just have a global default that can get overriden
i dont see the easier part
aka:
const struct FramebufferSettings
{
size_t width = 640, height = 480;
} DEFAULT_FRAMEBUFFER_SETTINGS;
same way a static array is easier than manual variables
i feel like this just adds unnecesairy complexity
how are you changing the settings? is it a compile time thing?
rn im not actually changing the settings, but its meant to be in a menu ingame
once i make the gui
then it will be easier as it is less to pass to each function that uses the settings. especially if you add more settings in the future
instead of going: void do_something(int width, int height, int setting, int ...); you just do void do_something(FramebufferSettings settings = DEFAULT_FRAMEBUFFER_SETTINGS); and it will either use the default, or any value you've given it
wdym pass?
its a global
it's what?
its a global
i get that you shouldnt have too many globals, but it just makes sense to use it here
Ideally you should have 0 globals.
why?
they are a crutch that work now, but when you move on to bigger projects (or this one grows larger) you will be shooting yourself in the foot by having them
i dont see how ill be shooting myself with a widht and height variable
imo globals are fine for constants or overarching settings, but that's very situation dependant
for instance, if you split your code into multiple files, you now have to have a "globals.hpp" that just contains all the definitions, which means that they then have to be statically defined, and then you will struggle when different parts of the code need different values for those globals and you'll end up with WIDTH, WIDTH_FRAME, WIDTH_WINDOW etc
if anything, but constants into the main function, so that you at least know the path they take
im just passing it to the other file window = InitGLContext(WIDTH, HEIGHT, 1);
There are use cases for globals. I think config is one of them. You could abstract it to a singleton or something if you want, but a config being a global poses no issue
config.h 
fair
but i dontt hink i should use a header file for 2 variables
mayb once the code grows
Wait, it does pose a risk when reading on multi threaded applicatiion

this is a problem for future sam that uses a proper build system
reading is w/e as long as you don't update it
But runtime config can be changed. Unless the game doesn't let you change settings 
throw a lock at it 
can always just refactor when the time comes
Commit message: refactor. 100 files changed

But honestly, yeah. For game engine its okay to cobble up something that works first. Designing everything correctly from the ground up is hard
- screaming snake case constants and macros
- pascal case classes/structs
- camel case or snake case methods/fields (just pick one and stick with it)
kebab if you're doing HTML
this-is-like-a-skewered-word
oh
also for constants you should use
constexpr double PI = 3.141592653589793;
this ensures they are actually constant rather than static variables that get initialized but may potentially change as the program runs
as a bonus it's guaranteed (i think) to be evaluated at compile time
it is according to toast ye
but im planning to make the width and height changeable so it shouldnt be an actual constant
you should be computing pi at compile time, not hardcoding it /s
if you have more than one thread, and both write to the same global, the program may crash
if you only have a single thread, not using globals is still better for testability because now you can run multiple instances of the same program for testing purposes without worrying about globals clashing with each other
finally, global access is always "hidden", you dont know which code does or doesnt need certain globals, while passing these as parameters makes it clearer what each piece of code does
ah yes, to automaticall yaply the best settings we'll compute 100k didgits of pie at startup and see how long it takes
yaply
Singletons are just globals for people in denial

@patent walrus hello, that thing is happening again
Scammer/bot/hacked account spotted
its some type of bitcoin scam
its been the same one every time
Average idiot bait
i havent seen the last times so this is new to me
its not just bitcoin, its gambling bitcoin 
it's literally just casino
did you not remove it?
someone posted a 4-image gambling thing again, seems it's deleted now
why is it mister beast again, though
singletons are just globals, and that page is about why globals are bad and how to avoid them
synonym for giving away money
i know there is a meme about mr beast depositing people's houses to gamble them away, but it's a russia-only meme
so like, can i just keep the settings as globals or not?
im not using a class
if you dont change them in multiple threads, using globals is usually safe
its the same thing no matter whether or not you're using a class
just because it wont crash doesnt mean its good
basically, just read the page i sent 
It does 
there should only be a single function to change the window size so shouldn't be an issue i think?
if theres a concurrent read and write it still may crash
atomic width/height 
and by "may crash" i mean "it literally can do whatever the compiler makes it do because if you have a single instance of UB the compiler has the permission to run any code it wants"
oei
anyway i won't be explaining anything because that page is self-explanatory
actually you might want to read the GoF book
okay
whats its actual name again
eah
yeye
lots of text
doesnt mean that you actually have to use all those pattern. But at least gives a good overview over stuff out there
including singleton
Game Engine is complex sam
no it isnt
i would know
these c++ things are way more complex than the actual engine
It's exactly because you use higher level language that it hides the complexity 
But is python still has problems with global lock or whatever that is?
GIL?
gil just means everything is single threaded mhm
its because im getting told of from doing certain things becuase there exists a better ting thats also way harder
Yeah, fair. But also, later down the road when you're using global and your program crash, you may ended up the same road anyway. Just learning through different means
ye this book is really long. i learn better by doing practical stuff
I have a question that I'm not sure I can formulate properly. If I implement a function that gets user input and then sends it to other function that handles input by matching (Like a hub function essentially. "catch" => catch_function", "collection"=> collection_function) do I need to "clean" user input for the function that gets input? Like input.trim().to_lowercase() or something like that?
nobody learns well by not practicing what they learn, but reading is important to know what those who came before you learned through practice of a much larger scale than yours
depends on how you implement it i think??? do you want it to be case sensitive?
No
then ye make it lowercase ig
Like during the run of the program it will give you a window to input stuff into and as far as I understand the fact of pressing enter after typing the command makes computer see it like "catch/n" for example, and if I am matching for "catch" it won't work
So I must trim it
And preferably to_lowercase it
checks out ye
thats just what im thinking based of what you said, im no expert
Literally anyone with more then a week of coding experience is an expert for me rn
what if i'm a programmer-theoretist
You can make a theory
but thats just a theory
A CODING theory
thanks for nothing
thanks for nothing is crazy
Are there actually people who study coding but do not code?
constexpr may be evaluated, consteval constinit guarentees it
Depending on what you do with the input. In general always sanitize input from user
its still practice if you actually write programs and proof that they work without even using a computer, its arguably even harder
Or more broadly, sanitize input from anything outside of your program. Even from database
mhm mhm
i love c++ 
I like how there are conversations that I can vaguely understand here, like "don't trully understand the underlying issue, but atleast the subject is clear". And then two people would just come in to cast spells upon each other
Would you prefer we shitpost like the other day?
I don't prefer anything, I come here to scoop some wisdom from the wise people. It's just entertaining to witness totally legit convos where people actually exchange ideas and understand each other, but i can't understand a single word apart from "a" and "the"
Programming shitposts 
Good morning
it's 5pm
I'm tired
like fr?
the more i use it the weirder it gets
its barely more tolerable than python
should've wrote some OOP on c instead
I love python, kinda like c++, hate java script, and yeah...
Is 00.00 PM or AM?
chayleaf doesnt like when i use classes that could be functions
no.
hblang incoming
no konii, dont make main a void
uintptr_t main {
}
what in the fuck is that?

template <typename T>
class Base
{
public:
void say_hello()
{
std::cout << "Hello, " << T::name << "!\n" << std::flush;
}
}
class Derived : public Base<Derived>
{
public:
static std::string name = "World";
}
CTRP in action
why not a void*
i just ate an ice cube
i cant read this
He hasn't encountered templating yet
semantics, a void* can only "safely" be converted between the original type and a void* (no math allowed) whereas uintptr_t allows math to be "safely" done on it,
Templating is its own can of worms
i dont fancy worms
C++ Templates are turing complete
Yes, its better to stay out of it when possible
So is the mov instruction
Return of the mov turing-completeness lol
huh
Oh Sam do you have any idea of coding stuff I can do now that my school is done after Monday?
Idk I need ideas lol
the line that causes it btw
make hblang webgl compatible please

also was surprised to find out MOVfuscator
useless errors is not a problem if you dont write code with errors in the first place
true
ah yes

i would never
dont make mistakes, dont get leg breaks
there are quite a few iirc, like xchg and xor
Meanwhile rust errors (warnings in this case)
For those who don't know it: https://www.youtube.com/watch?v=R7EEoWg6Ekk
These are the videos from Derbycon 2015:
http://www.irongeek.com/i.php?page=videos/derbycon5/mainlist
is that a capital letter on your module name

Yes? Is that bad?
Ohhh someone gonna get crucified
pascal case (LooksLikeThis) is basically only used in struct/enum/trait names
Oh, I didnt read that
most stuff is written using snake_case
dw you'll run into the compiler throwing a type into a file cause it's too long soon enough 
it'll probably take like a year or two ngl
is that why there is a bin folder in your src 
In my humble opinion:
Types: PascalCase
Constants: SCREAMING_SNAKE_CASE
everything else: snake_case
i like camelcase on most things
Fellow chaos enjoyer
in my humble opinion:
everything snake case 
thats how rust does it (except traits, traits arent types, they are kinda like interfaces in other languages)
screaming snake case or bust
snake case means i have to find the squigly line each time tho
no thats the other line
idk anymore
my nvim config 
Look, if I know how stuff works I will also be able to make it look good if I want. So when I am learning how stuff works I don't care if it looks good. I think that learning style first is kinda putting the tank crew in front of the armor
lisp my beloved
close enough ๐
STRUCT := struct {
.A_FIELD: uint;
}
MAIN := fn(): void {}

cursed
is hblang functional?
no no no the most important thing about programming is aesthetic and vibes
hblang is broken
Vibe coding?
Higher order vibes
oh
And the thing is, I don't know if higher order vibes are satire or not
hblang is basically just zig with some opinionated changes
do you guys want to see the worst 200 lines of rust code to ever exist?
No
how did you get it from my pc
vibes of degree 5 or higher have no formula that calculates roots
well too bad
not hardcoding the token 
multiple imports in one line
its the crying operator
it's a way rust includes multiple things on one line
Looks good to me
Ahh yes, the dimension 5 where in the group theory there is no whatever symmetry that is needed for it to be a solution for polynomial equation of degree 5
instead of going the java route of every import being it's own line
its more readable tho
its also line usage smh
very readable
ah yes, 500 lines of includes 
weve gone over this, i dont mind line usage
Turbo Fish goes brrrr
org.com.its.also.super.annoying.to.read
fuck it, import *
import * as Utils from './utils'
good thing hblang doeant have anything that would make lsp devs angry 
C# uses globs by default
wait, thats illegal
import crate::prelude::* obviously
javascript, face your doom
No, I use TS lol. At least I get to keep my sanity a bit
modname.{item0, item1, item3: .{subitem0}} := @use("mod.hb")
nix has globs in this form:
let
x = { a = 5; b = 6; };
in
with x; a + b
(evaluates to 11 of course)
Think of someone you like
this is not preferred anymore, nowadays this would be preferred
let
inherit (x) a b;
in
a + b
import type * as types from './types'
``` (does that actually work?)
I don't know. But it should be I guess
you didnt
damn
konii dementia....
i guess it does the same thing as without the type keyword just makes them ghost values (i just made that term up idk what they're actually called)
Can confirm it works

The error is from unused import
you need to group your fingers into multiple groups of 10 fingers, each representing a single digit
You are importing just the type, not the "implementation". Example of type only "value" is interface
wromg answer. the correct answer is each of my fingers have 10 joints meaning i can represent any number up to 10^10 on my hands
would you consider this acceptable oop?
acquire
sure, this would be oop
acceptable oop is an oxymoron 
you're an oxymoron
interface doesn't exists in JS runtime, but it exists in TS type to make sure something is adhereing to the interface defined
10 jointed fingers? Have you considered playing piano?
no im just a regular moron 
whats a piano
i have no clue what an oxymoron is and im coding in c++ so im the actual moron
Italian pian
why?
@grok play moonlight sonata
ants
i dont like carbonation
How the game engine going?
enum Fishies
and i'm a moron sandwich 
im trying to make an fps counter but im not sure what im doing
mod fishies;
WTF IS UPPER CAMEL CASE?
this is talking about the enum
I guess just track the frametime and calculate it from the average of the last second of frametimes
pascal case
format on save is my true friend
but that's confusing af because "just types" refer to types, what i'm thinking of is if you have
// server.ts
export const server = new Server();
// index.ts
import { type server } from "./server";
server.start(); // err: server not defined
let s1: server; // err: server is not a type (!!!)
let s2: typeof server; // ok, no err
super confusing especially with classes, a class can be a type and a value but then it can just be a type if you import type it
I was almost crucified for following syntax smh
I've never heard it being referred as upper camel case
that is how that ussualy works yes, i just need to find a way to time this shit
i would need either a global or a class variable
and chayleaf hates when i use either
mod fishies; // the file would be named fishies.rs
// but
enum Fishies { }
// or
struct Fishies { }
// or
trait Fishies { }
// but
fn fishies() { }
// but
const FISHIES: i32 = 0;
Becase the variable named server have the types of instanceof Server (which is probably a Class)
fuck it, it shall be a class variable
class variables are fine though? idk wym
i might be misremembering, sometihn about my objects class
globals are bad, but if variables are scoped within a single object that you explicitly pass around theres 0 issues with that
reciprocal of harmonic mean of frametimes from the last N seconds
wut
Can someone translate what does that mean and what conclusion I had to draw from this๐ญ
How to capitalise stuff
add the
this except with an exponential moving average
(wtf is a harmonic mean)
what i'm saying is it's still a value to typescript when it's not actually a value, i called these "ghost values", is there actually a name for them?
its about where to use capital letters and where to use lowercase letters
the
I see, ok, thanks
n/sum(1/x), where n is the number of elements, and x is the set of elements
or something
i dunno
forgomt
forgor
it boils down to that types are PascalCase, everything else is snake_case but consts are SNAKE_CASE_BUT_UPPERCASE
i drank british dr pepper once
couldnt finish it
my blood pressure is rising 
Oh sorry, I am kinda overwhelmed by chat right now lol. I don't know what they're called either. Its an exported variable. And when you importing just the types from them, then I think its only logical that you are not importing the actual value because of JS/TS runtime differences can make it a different between bundle size of 500Kb and 1Mb
reasonable
i drank korean, czech, polish, american dr peppers and they were all fine
the british one was so bad for some reason
it would look less cursed if you had standard indentation
and i know a person from the uk who liked british dr pepper but said he couldnt drink czech dr pepper
uk is so cursed
im from ermplanet
๐ !!!
time zone 1
FPS. Reciprocal of (meaning 1 divided by something), mean of frametimes (meaning average of frame time)
ooeeoo
There is also this for typescript
https://github.com/sindresorhus/type-fest
So just fancy words for the inverse i guess
geometric mean
Also when dealing with JSON Schema, there is this
https://github.com/ThomasAribart/json-schema-to-ts#readme
Inverse is -1 * something usually
ehhh
I forgot what is the group operation called?
i generally think of inverse in terms of functions
as in mathematical group
Im just bad at translating, i do math in my native language
Like, the inverse of matrices A is -A
how about doing it this way?
void loop_webgl()
{
...
}
void loop_native()
{
...
}
inline void loop()
{
#ifdef TARGET_PLATFORM_WEB
loop_webgl();
#else
loop_native();
#endif
}
downside is that now both are included in the object files, but any competent linker should be able to deal with that
๐ "polymorphism"
inverse matrices are much more commonly stated as A*A^-1 = I
Yeah, that. The ^-1 is inverse operation
polymorphism would still let you call the invalid one
in hblang this would be very easy
Should've put a quote

I'm sorry alright, as I stated I'm overwhelmed by chat lol
bwabwabwa
$_loop := fn(): void {
$if @target("web") {
loop_webgl()
} else {
loop_native()
}
}
loop_webgl := fn(): void {}
loop_native := fn(): void {}
It just dawned on me that people were trying to crucify me because my file name started from capital letter and not enum and was snarky about it. I apologize and will accept my crucifixion whenever it is convenient for crucifiers
its okay it doesnt really matter that much while you're learning anyway 
Mushroom on the cross sounds good
๐
Mismatched types.
Expecting: String.
You have: String.
wtf
no this is not what it says
what is the line throwing the error?
oh, remove the semicolon on the last line
or add return at the start of it
The error messages tell you exactly what is wrong and how to fix it
implicitly returns
()as its body has no tail orreturnexpression
I broke git
For someone coming first time into programming, I don't think it explains that nicely
I might be dumb
But the error is indeed clear, just not how to resolve it
consider returning the local binding
input
What is local binding will be the first thing to ask for a first timer
I understood the error of my ways
As I said, the error is clear even for first timer, not so much on how that could be resolved
It would indeed be
would you want the lsp to check if the last expression returns the type the function is supposed to and to point to the semicolon
happens to be the correct type, but would be the wrong solution in this case 
rustc trying to be too helpful 
Weird, it's usually pretty good about detecting the extra semicolon
Ok, I really tried to be a big boy and understand everything by myself, but I fail miserably. Can you please say a semicolon in which line is extra? If the whole entirety of code is shit tell me "start anew"
You have some issues like inconsistent indent levels
And you should add empty lines between functions
the one after input.trim().to_lowercase() is the issue
but also input_hub is nested within input_processing, please use a formatter, it would make this issue much more visible 
He likes sausage
is input_hub defined within input_processing?
It shouldnt but Ive been informed that I accidentally defined it within
So I am fixing it
looks like you missed the } after trimming the input
MY THINGY IS WORKING!!!!!!!
does vscode have the equivelent of jetbrains ctrl+alt+enter?
to format the document

looks like it's ctrl+shift+i
I'm turning da weird safetensors file into da aurora format and it is actually working
oh yeah, input_hub doesn't have a closing brace 
I didn't even notice because somehow that wasn't one of the errors
I assume there is one on line 43 
So whats the exact diffrence? Just defining the loop outside of the #ifdef?
Wow crazy eep
Very silly
Bullseye! Exactly the issue. Thank you too!
10hr
So silly it crashed

yeah basically. It just makes the ifdef block smaller, which makes it easier to read and maintain

Guess it's time to figure out whatever error it gave, assuming it printed an error
(also don't do the no-ping replies with me pls, I'd like to know when someone messages me)
Nope the terminal crashed
The entire terminal instance?
Yep
Whuh
I'm amazing at python
(I will forget)
I think it died since I'm manually extracting tensors and la index from the file in pure python
But thats scary 
You're literaly a semicolon, what if you eat me?
I'm not going to eat you
-# yet
I'm gonna ping you for unrelated replies and you'll never know it
My bot pinged me 11100 times last night, I think 1 more will be fine
Oh, yeah I forgot about that lol
Hello Programming chat, I was wondering if anyone has any tips on an RVC voice sounding flat
Then I'll do no-ping reply just to annoy you
ctrl+shift+i just made a screenshot. Just wanted to inform you on this humorous happenstance
how? 
oh lmao, when I used windows I had all of those hotkeys disabled
alt + r was really annoying in DCS
Dang
I will figure it out, it was just very funny to me
Like you expect your compiler to do something and then
screenshot saved!
Turns out its being killed because it uses too much ram
Alternatively, just add this to your workspace setting
Apparently loading 7 billion tensors into ram is too much
Or maybe its the fact I'm doing it all in pure python
How much RAM do you have?
8gb
Loading that at FP16 requires 14GB, or 28GB at FP32
If each tensor took 1 byte, that's 7GB at minimum
You need to do a streaming approach
I'm not that smart
So, unless you do 4-bit per tensor, then it will require 3.5GB at minimum
To load it all onto memory at once. Streaming approach is processing the data in chunk somehow
I'm trying to do it at FP32 since that's what my code wants
So you can load the first 4MB, process it, do the next 4MB, etc.
You need to load a set of tensors, convert them to the new format, write them to the file you're creating, then unload them and repeat
That seems easy enough
I'll be back in maybe 43 hours
If both file formats are streamable it should be
This is the cursed part
If they aren't you're gonna need a custom disk cache
I'm gonna just add 8gb of fake ram before changing my code
You mean using swap? 
You're gonna need more like 32GB
7 billion parameters at FP32 will take up 28GB when fully loaded into memory
D E T A I L S
Details and I don't have enough time to change it
Silly OS doesn't let the thing use disk-based RAM
I think it just kills stuff once it uses a certain amount of ram
i may or may not be installing random exe's to get a music player in the taskbar
Rip
Don't let azaka see this
???? wym details
bf16 is good enough
in 99.9% of use cases
if model is not learning ur data or optimizer or learning rate or something else sucks
Maybe because your system doesn't have much RAM
Guys, me again. Need to borrow an outcome of input_processing into input_hub. Read borrowing syntax over and over and can't understand the issue. Every time I follow compiler's suggestion on fixing it just identifies it as another mistake. Tried to specify type and almost everything that was reasonable to try. How
call input_processing
let input = input_processing();
Don't you want to be able to get as much precision as you wanted? Imagine all the difference between 1 and 1.0000000 you could get! (/s If you still doesn't catch my drift)
Oh, I am an idiot and didnt need borrownig. Why did I even try borrowing
taskbar has a console option apparently. taking a screenshot of it made file explorer crash tho
"dump memory leaks" option is not what you want to see in an os program 
Windows?
yep
Wtf
classic windows
you don't need to in this case since String can already automatically turn into the necessary &str, if it was really anything else you would have to
That is not 3rd party apps? Where is that? I've never seen those menu before
right click taskbar and press properties
im pretty sure this isnt 3rd party?
i do have a decent amount of external programs tho
Huh, I think I never noticed there's a "properties" when right clicking the taskbar (my last windows version is 10)
Kinda expected considering this is from the company that put a memory leak in the news taskbar popup
Yep, there was at least once a memory leak in the news process that starts when you hover over the weather and news button on the task bar
the worst part is that its off by default
so it knows there are memory leaks but does nothing about it
I was just playing Terraria one day and then suddenly everything became slow, I go into task manager and see that the news process is using up 32GB + pagefile

Isn't that quite crazy?
not like it would help, it can't magically fix itself
dumping information about memory leaks would only make your system drive fill up 
truw
i changed "disable modern searchbar" to true and no my taskbar is gone
dont think it changed anything tho
welp i was looking through windows settings and accidentally clicked on the beta insider channel, guess i'm changing channels for a couple months or so 
yea, they have a couple different channels
That was so funny wtf. "Disable modern searchbar", and MS just say "Hocus, pocus, your taskbar is now no more!"
beta is the second most tested one
it came back but the search is the same, still has the shitty weblinks
idk if you're aware but you can turn off web search in the registry
misinformation, apparently these options are all added by ExplorerPatcher
Yeah, I mean that it was funny in the sense that, sure it disables the search, but also everything else attached to it. Its a wonderful thing that it didn't disable explorer exe somehow
ye but i cant be bothered to figure out what the actual fuck microsoft has done witht hat ungodly registry
interesting
Ahhh, now that makes more sense
i do have explorerpatch
what, you don't go hunting inside the registry
there's also group policies if you're not running the home edition
im running the pro version 
gpedit.msc should be available then
the what?
have fun
Happy hunting
there's a lot in there
I am forced to buy windows because OEM
oi
The French has arrived
hello 
that is piracy 
hey i did it legally, it was via school
Vanor here thinking every activation server is piracy
if buying isnt owning then piracy is never wrong
i actually didnt pirate it
Now this is incriminating
my bad then, but local server activation is sus
typically your school should be hosting their own activation server
it being local isn't normal
Guys I cannot express my joy due to joy value exceeding joy expression limit
It's still local no in the context of networking?
they dont have an actual server, they're poor
lol
???
Then...
something is not right
are you hacking your school servers?
no
how can a nonexistent server be a server
JOJO REF-
by making it local
chat icl i think bro's school participated in piracy
Alright sam, stop
bro i didnt know
ya no problem
the closest thing they have to a server is a ubiquity network switch
(real) activation servers have legit legal uses, so i did catch it slightly too early by assuming things lol
nah its fine
but that being said, your school putting an activation server on your pc is 
you know some schools uses backward technologies like buying cardboard computers
tbh the school doesn't know admin management
half the teachers use pc's with unactivated windows so ye...


i told you
my school used to have pcs with rtx 3070s๐
bro what?
we used to game on it
niuh
i mean from what i see your school really bad at using modern technology ir admin server management
on one hand the principal has a curved ultrawide and is decent with tech, on the other hand their networking is in a dire state
all the teachers pc's use liek a celeron n3020
that doesnt exist so it was probably a n3050
If they run Linux, honestly that's enough for office work
nope
full windows 11
and it lags during powerpoints
moral of the story i didn't do piracy, my school did 
facts
im probably changing to linux in a bit
maybe
ill keep the windows install as a dualboot just in case
lmao that's like the polar opposite of what my old work had.
They had I7 13700T's for the computers that do nothing but display the diary of who is still to come into the restaurants
It's pretty good once you get it set up, I just switched because of the Windows death incident
What?
the PC's that could really have been a raspberry pi, cost $1000 each
better yet, they used the kiosk mode of windows, so it was super locked down
although they made the major blunder of blocking command prompt, but not powershell, hence how I got it's specs
If you don't need any specific software in windows, then I think you'll be fine in linux
just don't use like arch or gentoo, stick with a stable beginner distro like ubuntu lts
Like, Adobe, or MCAD or any other proprietary program
go straight for Arch, use it for 3 months until it randomly breaks, then switch to NixOS
the only logical solution
I always wonder wtf did people do with their arch setup that it breaks
sudo pacman -Sy [package] will do it pretty quickly
yeah, having outdated packages is a common one
or sudo pacman -Syuw followed by sudo pacman -S [package]
I think running pacman -Sy is never recommended
updates aren't atomic and there's zero stability, so stuff breaks
Or was is -Su?
Because I always do pacman -Syu to update, and just pacman -S [package] to install
nah, I always use -Syu even when installing packages
Is it because I'm on a laptop? But my NUC and server doesn't experience instability too
PSA to arch users to run pacman -Qe every once in a while and remove the packages you no longer need
not reading the Arch Linux news is also a potential cause for failure, though actual breakage is rare
With the recent split of kwin into kwin-wayland and kwin-x11, users running the old X11 session needs to manually install plasma-x11-session, or they will not be able to login.
from yesterday
informant my beloved
redis being removed as well will cause some issues
RIght, X11. I don't use it so maybe that's why
My thought process is "if valve is using it, there will be more demand for it" lol
why did i name it like this
oh lmao
it clearly says 
Anyone here knows why Google Forms has a different entryID compared getting it from a JSON?
i love my search not being above the windows logo
Windows 11 icons with Windows 10 start menu looks so weird
Windows 11 really is just a downgrade
cargo fmt
i think i might just put it left or it breaks
i got used to it being centered too
when i press search it opens the win11 search 
this seems to be the closest im gonna get
the low bitrate music is reserved for my project showcases
i should add elevator music for the rest lmao
this is basicly windows 10.7 now
I love it when Sam is doing cursed shit
what is this red in apo?
Is that an audio curve?







