#programming
1 messages · Page 188 of 1
How long do you think I’d have to code for a 24/7 monitoring system with like 350 inputs and outputs for a website?
uhhh
dataprocessing is kinda python's bread and butter
its easier inpython
So python for data processing and C++ for functions and operations?
generally for ease of implementation reasons yeah
i wouldnt say its better tho
all the libraries are written in c
enjoy my 2022 writing 
no meaningful performance effect for website made by random person
average of 0.3 visitor a day

true
you say that like it's old 2022 was like la- oh

children
a day, so 3 per 10 days
they only count as 1/3rd of a person if theyre only 1/3rd the height
Me when
#programming message you did say rust > C as first lang, and C is objectively good as a first lang, which makes rust good as a first lang
i pulled up the logs

r ecieipts
So then…What is Tutel?
height isnt a good scale, you're better of with volume
1/90th?
Based

he exists outside the spectrum of things that can be defined
the british catching strays again
what did they do to deserve this?
there's thousands of years of reasons that one could cite so pick anything from any history book
worst of all they indirectly caused my existence by founding burgerland
Exhibit A: Stolen Egyptian artifacts still on display in museums
ok but so does every other country
yes
which is why it's ok to randomly make fun of any country for a laugh as long as you're not constantly shitting on them
pick
want to scream at compiler -> rust
want to scream at yourself -> python
want to scream at program -> c++

well thats the problem tho, people are
define people and cite sources indicating it's an outsized phenomenon compared to any other country of similar status
i mean, i dont see anyone hating on belgium
Nice one
i dont hink we're that far behind the uk
he's right tho

Brussels may as well be its own country
that can be said about lots of places

i agree, but that doesnt mean it is its own country
i have nothing against belgium but from a worldwide influence & general mindshare perspective i apologize but it's not even a contest
this is true too
i mean, if belgium kicked the bucket they'd jsut move everything to france or germany, but for now it is decently important
again i'm more speaking towards influence outside of europe && cultural export
We don't do nuance here
in general i'd even say belgium's perception is overall more positive
similar but doesnt have the world reach
id argue it does

how many countries have german colonial history
compared to the hate the french get germany should also get a lot of hate, but it doesn't
see
in terms of colonies nobody beats uk and france

tv colonies 
so the amount of hate is proportional to the amount of colonies then?
guys? 
significant effect on overall cultural consciousness
this is programming related surely
rule 3 not real
we are a very civilized bunch here at #programming and no rule 3 violations have or will occur 
this seems like its one tangent away from me wiping the last 30 minutes
im trying to make an ai vtuber the queen of england
say something useful about chess bots so shiro cant remove it

anyways all i was saying was popular country = popular to joke about
idk how that became a debatable thing
neuro is already the AI vtuber queen of england since vedal is the king
well, she will be when he croaks and she ascends to the throne
vedal is king charly?
yes
i like king charly
shiro ban everyone ye 
ban me 
ive been yelling it from the rooftops for like 6 months, vedal is definitely king charles himself
that's why neuro gives his address as buckingham palace 

i feel like i just wasted another 2 hours by arguing on discord over stupid things i dont actually have strong opinions about
"you know this would be a good fake persona to put on online"
i am a lipreader i saw him say it
you can see him saying it in this image
motion not required
lipreading a static image
how does this affect the arg's legacy
study sama is charles' daughter i guess
"so yeah im gonna basically turn this into a drawn character and that'll be my online persona"
there's a reason the duchess' name is camilla and vedal is friends with camilla
coincidence?
i think not
she's dead
was charles' daughter

that woman is queenpb 
trust me
nah this is the moment he asked queenpb to make him a tutel mmodel
im not sure
me continuing a stupid meme i randomly decided to declare as real at the start of this year
i guess this counts as "pretend vedal is the king roleplay"?
is that in the bingo or something??
why is it in quotes
if it's not, it should be

idk
i just formatted it like that
sue me
phrrr phrr
filing a case rn 
court room stream 3
that does not help
good use of ai compute 
i have doomed the human race with my wasteful usage of resources wrt ai
ok but i still don tknow what it means
it just gave me options
did your colour change mlntcandy?
it is a noise definitely. cat or horse
i removed osu role
damn
ye sure, but how am i supposed to interperet it?
you're not
what
it's probably nonsense
you're not supposed to interpret it
ok but is it good nonesense? bad nonesense?
ive seen people say "phrr" to say "for real" before

i dont understand humans man
we are all nonsense on this blessed day
i am ALL nonsense on this blessed day :)
phrrr 
if you weren't referencing this then incredibly you accidentally did

i odnt remember charles being this young
oh its from 2013
that's because you were like 2
lol
6 old enough to follow world politics 
i wasnt btw
i spiritualy channel amanda
proof that humans are no more than stochastic parrots
@ neurobot is this true?
running that would cost a decent amount of money, so we need neurocord Basic, costing $3/month, Premium at $8/month, and Premium+ at $40/month

that way we also get a gold checkmark tag on our discord profiles

just think of phrrr as 
shiro said
is positive
shiro has never lied in his life
i may have guessed a few times tho
plausible and deniable
how could you?
do you have no shame?
i trusted you
shiro's shame is accepting the role of moderator here
it's just a little baby it doesnt know

smart ass baby in college n shit
why thank you
lol
i debated on saying somethingbut i decided not to
maybe the "college" is actually daycare
dont want shiro to ban me
shiro is stewie griffin
today's fun story
keycloak takes their perfectly good method of boot time exporting entire realms with credentials and all (because using their web ui always filters out credentials)
Packages: 2163 (pacman)[stable] total packages so like 10% of my system needs an update lol
and breaks it, so you can't do it in a running pod anymore, because that is very helpful for everyone
so i decide to run it locally in docker
at first i just quickly add it to my magical docker-compose of local development for ease and comfy, and it works
then i realize i'll need to bake an image from the container and run it again with a different entrypoint to be able to do the boot time export thingy, so i use this site to turn docker compose into just regular docker run (lots of env vars, who has time to type all that)
doesn't work. maybe the site converts wrong? use https://www.composerize.com/ to see if it converts back
it does, it's not that
docker
found your issue
imagine having employment
so why does it work in docker compose but not in regular docker
spend about 2 hours scouring the stars for an answer
i approve this message
once again it was my arch nemesis, MSYS_NO_PATHCONV=0
now for you to find out what
means

git bash 
how are we supposed to know what the codes you make up mean
for me
not for you
i'll come up with some nonsense too
jk i can't

usually for anything involving docker first thought would be because docker was designed to be as obtuse and annoying as possible while abstracting away your ability to tell wtf is breaking and why and oh it's because this requires a very delicate balance of specific dependencies that are no longer current but docker makes it easy to distribute things with broken garbage inside of them behind a nice incomprehensible screen
evil 
now uhhhhh figure out what
means
if i had a time machine with one use i'd use it to go back in time and make whoever created docker in the first place touch grass before they ruined everything

lmao
overleaf added some LLM spellcheck garbage
and it cant decide on "nonempty" vs "non-empty"
honestly it's faster than VMs and i like that i cna just click the red button and make the oopsie go away 
neither can i tbf
every time i write more, it highlights all past instances and insists i switch to the other
lmfao

ignore that specific pair of words
change it to non-emptious
poppin
docker just makes it easier for people to hide their broken garbage in a box that kinda works
99% of the things distributed as a docker container shouldn't be but are because it's slightly easier than juggling and providing correct dependencies the traditional way
but ya know gotta pull in 52 packages to run that calculator app
aaaaapiiiimaaaaageeeeee
honestly i think the main selling point is that you can run several of a thing without the app getting a mental breakdown
instead they offload the mental breakdown to the user

there are definitely real use cases for it
but like i dont need to run a single application that will never be run concurrently and doesnt need sandboxing
from a container
and yet "ohohoh we provide our package in a container"
bruh
me running 3 oracle and 2 postgres servers on my windows laptop be like 
click green button watch all of them burn to ashes and then pure nonexistence and get replaced by new ones while i fetch coffee
goodbye ozone layer you should have been this automated too
that's also not good, applications shouldn't expect and rely on the ability to just explode and restart to fix it
but they do because docker lets them
i'm not an application
we are all applied goofiness
also
oh thank god
imagine running your product in a docker container
idk i cant really see a reason for docker to exist because all of the use cases besides just having an isolated development environment on locally can just be kubectl
so when it gets deployed to a customer
i hit my token quota limit with this ai spellcheck garbage and it turned off
who still uses idk RHEL 6
you don't have to rewrite all your python scripts in python 2
so it works for them too

the way that should work is that they go ahead and stop using out of support system software
but no they can use it with the bandaid that is docker
then the powers that be that decided RHEL 6 is still fine because "all our stuff still works!! {life support by docker allowing it to still function for purpose, barely}" are like how could this have happened
when they get pwned and all customer data released and have to pay out for 6 months of ID protection
like all in all i'm much more glad dealing with magical blue boxes than trying to scream at sales and business people that no i'm not gonna do what it takes for our product to run on the customer's machine
docker is probably somehow indirectly responsible for my SSN being out on the internet 
who is, of course, always right
yeah well you shouldn't have used the grid 
i shouldn't have checks notes had dental insurance
just be a wild undocumented cyberpunk duck!
my other favorite thing is <Product Onwer> who can be scared into submission by "security alerts"
so i'm trying to iron things out for my beloved little team before i leave company, teach them the high magics they neglected in their years,now that they will have to maintain themselves
showing all the fucky wucky nightmare ropes of helm templating and the azure wizardry we sit upon
but some bureaucrat guy at IT finds some post on his favorite CVE site and tells everyone in the company that idk if some wizard does the right 59 step ritual to http they can make it crash out so every http server ever has to be upgraded to at least these versions from tomorrow ago:
so instead of teaching team how to be able to operate later on when i'm gone, i'm bumping up version 16.0.358 to 16.0.389 in no more than 72 hours, so when we eventually release in late october, and clients install the new version in 2027, they'll be safe from a thing that will never fucking happen anyway, because if someone even reaches the product they're already inside and can just blow the place up
it's called being agile 
lmfao
there might be a very prepared hackerman continuously monitoring your application for the precise moment they swap to that compromised version to strike
CVE sites do like to present these things in a way that to someone who may or may not know what they're talking about is going to see it and think the world will literally explode tomorrow if the thing isn't patched NOW
especially when they have to then report to someone who DEFINITELY doesnt know what the hell they're looking at
especially since CVE ratings are skewed high
7.5/10, seems dangerous!!!!!!!!!!!!!! FIX NOW!!
recently there was one about some
freeware windows ftp server
for versions released between like
2008 and 2014
and my PO is like "hey can you check if this software vulnerability affects our product"
how do you even put a freeware ftp server thingy in a java product running on red hat, oracle, and the blood of ancient vampires
with the initial commit being in 2018
like i was moderately offended just for being asked that
hey it's hard to realize that running on red hat, oracle, and the blood of ancient vampires isn't typical if that's what you do all the time, easy mistake to make
a lot of silly requests start out in a place of knowing you'll have to report it to the powers that be anyways so might as well rip the bandaid off and have an answer prepared for "WELL DID WE MAKE SURE IT WONT AFFECT US?!! DO IT NOW!!"
me raging at my docker setup earlier
it's just funny cause
ok another story
man i'm full of these lately
so there is a project that no team accepted but was already promised by some higher up buffoon to some client
there are two teams that have the domain smarts to make it: my team, other team
other team has the architect grand expert who came up with the idea
they asked both teams how long it would take to make
their estimate: 3 people, 3 months
our estimate: 3-4 people, 9 months
maximum that the client is willing to pay for: 3 people, 3 months
well then, our team is not doing it have fun
<it gets promised at this point>
other team goes "yeah we don't really have the capacity to do it rn"
so management comes to my team
"hey so remember that thing you didn't want and said would take 9 months? now you have 3 months to do it, it's your #1 priority over literally anything else you guys are doing"
PO does emergency meeting on reprioritizing things
priority #1:
security alerts being handled
like -that- will be something hard to explain to management
hey not only did we not finish the thing that was #1 priority and is gambling a customer, we barely even started because the reduced size team was busy checking all the security alerts about idk freezilla knockoffs from 2008
i'm so glad i'm leaving 
shiro is cordinator of events
he decided to make a chessbot tournament cuz he hates himself
poor shiro
jsut check the conditions and move the bits 

isnt casteling a move to jsut a single other position? if you have a bitboard for the king jsut change it out
i could but it would be slower

but this is almost certainly not gonna work 
maybe you have a point
jsut set a bool to true at the start of the game, and if either the king or rook move set it to false
thats not the problem
im just trying to microoptimize
you're right tho i should just do this the braindead way
no
NO
i remember why im doing it this way
its because moving the rook is hard
and that is?
you cant slide the bitboard for the rook because it has the other rook on it
so you need to xor it with a mask to flip the relevant rook's old position off and its new position on
still, why is it difficult to do it binary wise?
because i have to figure out what these masks are supposed to be
and im confusing myself over and over trying to go from board squares to numeric constants
bitshift the king 2 to the right
for the rooks do xnor with the eight space and then or with the 6th space
but whats the number for that

notice also that the mask depends on which color is castling
That sounds correct
idk
oh well
this doesnt really need to be quick
how many times does castling happen in a game

the other rook is the 57th position, so 1 with 56 zeros
so 72057594037927936 in decimal i think
this would be a lot easier if you'd use the 1st and 64th position yo uknow
on avarage even less than once cuz i dont think castleing is done too common
around 90% of games at the grandmaster level
hmm
ok the grandmasters like their castles
ye but they move horizontally, my goal has always been to get to the other side
i got this too 
depends if the other player wants their opponents king buried in the corner
idk
i think its actually 5,764,607,523,034,234,880
why?
I don't have a c linter atm to test if this stupid idea works. Is this even valid somewhere? I just thought about it as Shiro was struggling to function with hex
0b\
11111111\
11111111\
00000000\
00000000\
00000000\
00000000\
11111111\
11111111
that would definitely be easier to write 
5764607523034234880
would be 63 digits, with 1010000000000000000
now en passant 
the one move where the piece taken is not on the tile moved to
requiring a whole separate piece of code
what are u actually making
a chess bot api
the board is stored as a series of bitfields, with each bit in the field corresponding to a square on the board, and each bitfield being associated with a particular piece and colour
@real sierra
you can just write int value = 0b11110001001000000; 
thats probably a better way
this code is performing castling, so it needs to clear the bits from where the king and rook were and set the bits at where they are now
so im doing that with an xor
i am not typing out a 64-bit string in binary
copy paste
so its a bunch of hardcoded values?
it would be less time consuming than your magic number lol
you're always castling to and from fixed positions
so i know what bits need to be flipped
not now that it's done

Your telling me your vm doesn't have a clipboard itself
discord isnt in the vm
separate clipboards
why a VM
api has to be as fast as possible so people dont blame me for their slow bots 
Well just type it out once and keep it copied 
the end goal is that people will write bots and give them to me to run
im not running random internet user code on my actual pc
yeah i get that with some systems in game dev
it we will stream it in vc right?
depends how many submissions there are
the whole reason i memorized float16 conversion was an optimization method i used for minecraft
at the very least i can surely stream the finales
what is shiro trying to do?
chess battle (not) advanced
its most likely gonna be about 8 i think
you could probably make a tool to just generate the values for you
the time searching for or making such a tool would take longer
or jsut type the values directl in int value = 0b11110001001000000;
i love making tools for specific use cases!!!
no need for conversion
i bet a gpu would love this
bruhhh
@olive sable can you split these over newlines or is it a syntax error?
i have no clue, lemme test
@real sierra u should write it in ASM
for 100% optimization
with how much bit management you're doing you might as well
i know a bit of ASM but im planning on picking up more
mostly because i was building my own language
doesnt seem to work no
also i just found a bug in this, im glad i posted it

you can use ' as a seperator, but still needs to be on the same line
any SIMD?
One board instance so probably not
ahh
had to build a bunch of API services recently for Hanakyos mc server
so i know the pain
no simd planned
ive gotten them wired up with docker today though
gonna be raw cpu time to finish this tournament
projects like these are a good way to pick up micro optimizations
This idea is combining ASM and SIMD
do && and || work as i'd expect in C?
they should, and or?
as in like
can you can write ASM in some C setups
AND(A,B) = A ? B : 0
&& is logical and, & is bitwise and
OR(A,B) = !A ? B : 1
i know that
well then why ask?
Yeah, that definitely exists
e
Hmmm
?
trying to write A ? B : 0 branchlessly
can do this as A * B
but if C implements its && in a particular way, then A && B would work too
and be faster
int mask = -!!A;
int result = mask & B;
?
(!!A) * B
A is already either 1 or 0
thats fine no?
(A != 0) * B could also work
Hmmm ure logic is more focused of white
So u should try B algo
branchless programming is always fun
though sometimes the compiler will be a dickhead
so make sure to check ur shit
multiplication is a lot cleaner yes
Using AVX512, you have 8 64bit masks that you can do operations on. You have 6 pieces, so I guess one can be empty and the other can be opp pieces. Meaning you'd be masking the opps side on attack.
2 AVX-512 registers total for board state storage.
Just the first thing that came in mind.
bit hacks my beloathed
This would actually work for en passant due to empties and deleted squares being separated in this case
Maybe I've been working on my NN for too long, but that is where my first instinct was
bitwise would be better than multiplication due to platform inconsistency
also slightly faster if you can do it
but uh
not bother
simple best
i know
but idk if && works the way i want it to
most intelligent implementations return the second arg if the first is false
just test it
dont use && when you are doing bitwise ops btw
im not
&& is short circuiting
im using & for bitwise and
yeye
which mean branch on each bitwise op 
i know im an idiot but i do kind of know what im doing sometimes
Surely there is a variable where you can match for the piece that was deleted last 
the elegant solution is to store the move sequence and reverse them, and then store lost data such as captured pieces and castling rights in a stack
the way im doing it is storing a stack containing all past boards 
i have aquired crackers 
is the elegance in the room with us?
what
banned
make my own chess tournament 
me when i make my bot move left and right and left and right to fill the heap and crash the program
96 bytes
12*8 + 16*8 + 5/8 + 2*4 + 12 + ? bytes
surely I guessed it
(the ? is because they store pointers to the previous board as explained, not sure if that counts)
300 bytes roughly with the ?
256 bytes might be mnore fair tbh
shiro is going in the programming war crimes compilation
I've been made aware there's war crimes happening here
Ignore that I'm German. Totally unrelated
Shiro is warcrimes
The average chess game is approximately 30 to 40 moves long
so 40 x 256bytes is 10KB
i still dont like it tho
which frees the memory as you pop boards off the history
there are 4.8*10^44 possible legal chess positions
if this was true you would be a millionaire
are you sure about that

if you remove the "legal" from that you might be right
unsure
might have to remove "possible" too
AI Overview
There is no single answer to "how many legal chess moves" exist, as it varies significantly depending on the stage of the game. From the starting position, White has 20 possible first moves. During the middlegame, the number of available legal moves usually ranges from 30 to 40, while in the endgame, this number typically declines as pieces are exchanged
thanks google
I haven't read back all of this, but I remember seeing a video where a dude stored the whole chess board as bitflags in a u64. Like per character. Does that make things smaller?
The Shannon number, named after the American mathematician Claude Shannon, is a conservative lower bound of the game-tree complexity of chess of 10120, based on an average of about 103 possibilities for a pair of moves consisting of a move for White followed by a move for Black, and a typical game lasting about 40 such pairs of moves.
the answwer is 40 i guess

if chess is analyzed for the number of "sensible" games that can be played (not counting ridiculous or obvious game-losing moves [...] )
me picking all the losing moves on ur API
"here is how many moves are in chess (i didnt count most of them)"
when my bot makes a -75 trillion IQ move but the enemy llm wasnt trained to handle it and crashes

neuro
Why that face
these are 64 bit ints
but you cant use a 0 or 1 to show the position of 13 diffrent kinds of pieces, so you have to use multiple
Chess openings have been analyzed for centuries and yet even today it is still not easy to identify the best and worst first moves. According to Fischer, 1.e4 is "best by test." From the other side, when the famous theoretician GM Ernst Gruenfeld was asked why he always started the game with his queen...
time to study this for shiro's API
go for it
Shiro is only using bit masks
finding the worst move is equally as difficult as finding the best move
shiro is dressing for halloween with all these masks
you have to check just as many boards, and verify the same conditions
if you make the worst chess bot ever, i'll be impressed as heck
Though this also exists @scarlet arch
is this a challenge
yes or no
(yes)
ill make the worst possible chess bot
the worst chess move physically possible is almost definetly what i do. researchers shoudl see me play
this weekend ill probably start on it
ill wait till the api is done
i want it to be so bad that a brain dead person could battle it and win
Time to beat worstfish 
Oh neat
welp time to plan an algorithm to see how to lose in the fewest moves
i move my rook from A8 to A9 
I have no clue what this means. It's 03:37
Reminds me of that poker bot story where it just always goes all in and the other bots fold
6
6
1
1163912230585237655
enub
a big thing ill need to focus on is avoiding stalemates where possible
the smolest file size would probably be 208 bits
i should call it the SlopEngine
wait lemme check if im doing my math correctly
for a single space there are 13 possebilites, so if we use 4 bits to represent that we're only using 13/4 = 3.25 bits per space. so 3.25 * 64 = 208 bits total
the poblem is that requires a lot of decoding and encoding so not really good for speed
i think i should start experimenting first with an inverted minimax
nah my math is still worng
log2(13^64) = 64 * log2(13) = 64 * 3.70044 = 236.83 bits
so 237 bits
Yeah, bit mask for each piece type makes more sense. but that is 832 bits
This follows 8x8 and 13 types
/8 time
104 bytes
Dude this isnt a story
Its a bot
The Poker Night bots
its so funny
playing against them
Surely he is talking about a video he watched on it
Idk where I've seen it. Was some sort of Reddit post
Oh my bad
imagine wasting a whole 0.00001% of your storage space
those 100 bytes
Idk its probably the case for a lot of poker game bots
i have no clue what i did wrong but sure
I'd still be doing 128 bytes per board state as described in the funni ASM SIMD idea. So not exactly the most space efficient but it is worth it for easy impl.
space efficient doesnt matter when you can have pure speed
The only reason the SIMD method is fast at all is because you can cast a 64bit register to a SIMD one like numpy does.
Otherwise you'd be iterating over all of the opps pieces to remove them on taking
I mean having all of the board on 2 AVX-512 registers is also a benefit I guess.
move undo is complete i think
now i need to finish the UCI handler
how much of this spec do i really need
surely just implementing like 10% is sufficient
i actually think maybe i can get away with this little of UCI
i was joking before but
mutex 
shimo
hiii
whaaaaat
i look forward to using it
i thought my concern for thread safety was quite a green flag
i fixed what i thought the issue was, but its still not fixed so the broken code was responsible for a bug i wasnt even aware of i guess 
its not

the bot runs on a single thread but the UCI spec says it must always be listening to the server
so the UCI listener runs in a separate thread

shiro not using async
pthread
not portable to msvc
i didnt know async worked diffrently in C vs C++ but i guess thats where those plusses came form
its ok they will just have to use windows gnu target
surely if you build on non-posix system it just makes an alias 
right mhm
surely
it will probably work on windows gnu target
almost certainly wont on windows msvc target but who cares about that garbage
OM i was interpreting vec3's as vec2' and vec2's as vec3's cuz i switched the numbers by mistake

its still broken
bwaa

i have this rn
so indexbuffer and vertexbuffer work. the uv buffer doesnt tho
and normalbuffer i cant tell with the textures like this

when the bot indicates it has submitted its final move
i would like that submit method to block that thread until the UCI listener hears that its time for the next move
idk a good way of doing that tho 
i guess another mutex 
i have no clue
surely this wont make a race condition 
(i already know what the race condition is and am pretending it doesnt exist)
semaphore
explain
no
semaphores are for between gpu and cpu no?
or does it have a diffrent meaning when not vulkan?
i think it probably functions on the same principle as a synchronization primitive
but here it's working between threads instead of between cpu and gpu

om
not only did i switch vec2 and vec3 in 1 part of the code
i did it again in the shaders themsleves
maybe it used to be the opposite way and i accidentaly changed everything when restructuring the code?
wow
i think its done
v1 of the api
how do i test this
how do-
how do i build a c program again
fixed
the pictures will get more interesting once the individual objects code gets finished 

it builds
now i guess i have to do something scary and actually try to start the api...
moment of truth
well thats a bad sign
oh i didnt recompile
thats why

the warnings gcc just spit out exceed my terminal history
need to pipe into less
none of these errors make any sense 
what conflicting types
huh
gcc smoking something
but recursive functions work fine
yep
idk why
i guess cuz the function knows it is the function?
imo the compiler should just see what stuff exists in the file beforehand but i guess we're not doing that for some reason
after working on my PC when using it my ears began to hurt. I do hear some high pitched noises, but nothing too unusual from normal PC sounds, however, my ears hurt after longer term exposure
I began tests to attempt to determine the source of the inaudible painful sound
after yesterdays PC noise tests here's what i know:
- the noise began after i worked on my pc -
I swapped both case fans and my CPU fan,
I attempted to unscrew my motherboard from my case multiple times before realizing it is stuck due to a broken screw,
I attempted to remove the screw by force with no success
I didn't in anyway interact with the PSU, SSD, RAM - I noticed that my GPU's right fan would make an almost engine rev up noise when increasing or decreasing in speeds
- after realizing the high pitched noise (not the rev up) here's what I attempted:
- I disabled both case fans. noise seemingly persisted, but i felt that it got slightly better
- I disabled CPU fan (re-enabled case fans), I enabled power saving in windows settings. noise seemed to get notably better, but still persisted.
- I swapped GPU, both case and CPU fans were enabled. noise seemingly persisted
conclusions:
- As I did not interact with my PSU my assumption is that in my messing with the motherboard something got slightly damaged causing the noise
- Alternatively my exposure to this noise made me more sensitive to the natural noises of my computer making all tests inconclusive
also based C enjoyer
why thank you
my second favourite language after Rust
if C had the ability to overload operators like C++ and some syntax improvements it would be the best language imo
sadly no one has made C, but with minimal improvements™
typedef
psh
Fucking Function Pointers: Examples for declaring function pointers in C

endless warnings
i made the mistake of assuming & took precedence over >
the compiler has warned me such but the fixing is annoying as hell
ok
all the warnings i care about are fixed
lets run it 
wtf
it hasnt crashed
its also not behaving as i expected
if the semaphore has a value of 0
then sem_wait should make it hold until a sem_post right
Turns out, using Python on web is a horrible idea
Who could have ever expected this
Yeah unfortunately you didn't tell the person that wanted to make a Neuro attorney visual novel thingy that
Well it's not native WebGL, it's using a library so there's like 2 extra layers
https://discord.com/channels/574720535888396288/1338282572689440860
You can read up here, in the conversation between them and Xoda
Who knows, maybe you could help them translate the whole thing to something more performant
\n format string maybe
but
i thought input was consumed
by scanf
it shouldnt be there to be read a second time


write small test 
i am running my small test
thats why i dont understnad
oh
OHHH
i get it
char line[1024];
while (running) {
scanf("%[^\r\n]", line);
// ...
}
this seemed pretty foolproof to read in lines
but it doesnt ever read the newline chars so it doesnt clear them from the buffer
then it just infinitely reads 0 characters over and over
which leaves line unchanged
i dont know how i feel that it doesnt read the null terminator but
whatever
Sending you inputs from yes bwaa
well it was a good start
don't like how the board looks? just segfault 
segfault fixed
the UCI interface seems to work on a very basic level
lets see if it knows enough words to talk to arena

do all writes happen from the main thread
arena starts the bot, asks if its there, and for some reason the bot doesnt reply for like 30 seconds
so arena is like "a new game is starting, ready?"
and it still doesnt reply
so arena gives up and just sends it the board info and says "ok you can start thinking"
and only then do the replies for all the commands before get sent, all at once
and i think its no coincidence that this is where the semaphore is released
shiro c
literally the only thing it could be doing during this segfault
is running that function


dont use vtables
already am
convenient because i can refuse to give the user my API until it's ready to be used

no calling my functions until i say so
__attribute__((constructor))
python lookin line
bad languages 
they'll have to wrap the python bindings

want to update
nuance
into the discord in the same way










)
coding in a vm

just about bricked it




