#programming
1 messages · Page 32 of 1
brother what are these examples?
it's called comedy i use it when i teach my beloved defensive driving course, comedy driving
tldr: put anything you don't want to run when the file is imported under the if __name__ == "__main__"
Only the best xdx
aka like debug stuff etc
i kinda dont care cuz its not meant to be imported
that's fine, just a lil fun fact
don't worry this current thing isn't even about your game engine anymore
it's just general Python shenanigans 
we just be yapping about python's goofy structure traditions
could be useful if you ever feel the desire to turn your game engine into a "proper" python library
this conversation has felt like being shoved in a pit by your brothers, like that one bible story

you know what that means? if you package your python app into a zip and prefix the zip with a python shebang IT BECOMES A FUCKING SELF-CONTAINED EXECUTABLE (still requires you have python tho)
listen we all have too much python floating around our noggins which makes one a lil crazy

how do you prefix a zip 
The sun has rise, it is time for me to sleep folks. Goodbye
wait so what were we talking about?
src folder?
yes i believe that's how this all got started lol
classic
iggly just was expressing that he would love for your main to be in a src folder
and then that happened
Programmer sleep schedule moment
cant i just shove the entire project into a src and be done with it?
literally insert the shebang bytes before the zip bytes
oh
diabolical
I'm personally fine with this
your entire project is the main.py file though 
somehow i knew it but was hoping for a different answer
that was how i did it back in the day
shebangs are pretty cool
but it'll make the repo look so bad on GitHub and fuck up the directory structure 
it really works just fine unntil you decide it's time to put it in pypy!!!~1
nah i have the models, gfx, sfx folders and and precomputeGLTF.py too

I was just referring to the source code parts though (the parts that are meant to go into src/)
Someone is doing a build command in the "source directory" hence why i suggested it
also once you get in the habit of running a lot of tests and stuff having the "expected" structure prevents you from having 12 hour "WHY WONT THE TESTSS PASSSSSS" sessions like i did many of
if i do this i would like it to be like that for the entire history, howe can i do that?
uh oh
just don't 
it's not worth it at this point lol
I'm on just don't
next project
Git history modifications are rare and are practically never supposed to happen
if possible just move everything in a new commit
the large file thing was an exception because it's impossible to remove otherwise
dont have that issue lol.
me just deleting .git and being like oh well
start a new one
freesh repo yall
Me also deleting .git in the early days of using it
works for local projects, not so much for ones already shared with the world
that is very true
you know this very well if i recall 
I've done this before with public projects, @fast pagoda can attest to this
nah its fine, im just not feeling well today. ill put it in a src folder
initial commit
+184,972 lines
actual mood
✅
i laughed irl at that
so like these ones into a src folder?
:yep:
p much yeah
why the models and other assets 
they aren't source code
updating .gitignore as well (very fun)
and then in hogwarts after the owls you're allowed to put them in src/gameengine/main.py
well dont put a hyphen i actually hate that
brother i dont care. im not changing all the code to go up one place in the file treee and then back down another path
i know this was discussed but i just was like wtf is this 
we are all forged in the fire that is restructuring an entire project
yeah file explorer has git integration now
and rising up like a phoenix from the ashes 6 days later
it does?
well sort of

that is from onedrive btw
you need a dev drive or onedrive for it
yeah i know that's why it caused me despair
idk if there's other ways to get it
I just remembered, I don't think you can easily move the assets even if you wanted to
have fun running your project from src/ now 
would need to adjust paths in main.py to include the new directory to fix it
you'd just need to use explicit imports
i think?
absolute i guess
nope not doing that, src is the new root for running the project. i dont give a fuck
asset paths in main.py are relative to the current directory, which should be the top dir
when i had a project that went through a move like that
i had the world's most scuffed run.py in the root dir that basically blasted the src/project dir into the system path to run the project

yeah i was gaming
could've just not moved the assets and the structure would've been perfect 
now it's even more fucked up than before
It's an open project 
what do yall want from me 
i dont even know why im doing this in the first place
sys.path.append(str(Path(__file__).parents[1]))
my favourite python snippet
will make PR
yup the whole point of having a src directory is to only have code in it
im sad
you are literally fine lol if anything i think it's just brought up a long time of built up import/file structure agony
for some of us
Yep, I am personally fine with everything you said
I just wanted to commit my env in a fashion that actually works (for those dying due to python packaging)
ill be back in 20

im looking through some of my git trees to find this cursed system path runner
and boy am i usually just cooking

I must go eep
gn chat 
Reasonable crashout
Gn

batch prompt got fked up
looked at the log for it
gpt4.1 nano sitting there rating 'nan' a 1/5 over and over
bro wtf was i on structuring echo's llm client when i started
i made my bot talk with my testing bot
https://youtu.be/Me_ORZVm7w4?si=v-_QG5rbzK-Qmo5O reads exactly like this calebcity video
If video game NPC's did a mission without anyone giving them a human response
Music
8.16.18 - Oddwin

it devolves into sloppa so fast 
├── .gitignore
├── DEV
│ ├── update-release.py
│ ├── update_file_version.py
│ └── README.md
├── RELEASE
│ ├── README.md
│ ├── VERSION
│ ├── requirements.txt
│ ├── run.py
│ └── run_gui.py
├── src
│ ├── __init__.py
│ ├── channel_config.py
│ ├── discord_bot.py
│ ├── gui.py
│ ├── llm_client.py
│ ├── main.py
│ └── utils.py
├── VERSION
├── pytest.ini
├── requirements.txt
├── run.py
├── run_gui.py
├── run_tests.py
├── sarcasticlaude.png
├── src # duplicate directory as shown
│ ├── __init__.py
│ ├── channel_config.py
│ ├── discord_bot.py
│ ├── gui.py
│ ├── llm_client.py
│ ├── main.py
│ └── utils.py
├── tests
├── update-release.py
└── update_file_version.py
behold, the most production ready directory tree
everyone knows you need 30 copies of everything
idk why i had 2 src
or eve how
makes evil and neuro look even more impressive
maaaan every time i get done tuning echo and i think he's doing great
i watch neuro and i'm like
how
although i am a complete amateur at the same time 
im practically helpless without AI when it comes to programming
some folks deliberately force themselves to take like weeks off at a time from the vibe
it's really easy to let techjesus take the wheel if you get lazy so i dont think that's a bad approach
thing with me is that i picked programming up around the same time AI was really picking up
so its like a really bad habit that i formed really early
that is rough
i do wonder what kids today will see programming as
it's only gonna get less and less needed to have the human in the loop
ive been farting around asking jules to do low impact like bugfixing and tests stuff while i'm at work etc (https://jules.google.com/task) and it works damn well in an "uh oh" kinda way sometimes
i really wanna properly learn to do it without AI
you can learn from AI as well if you treat it like the extremely good tutor it can be
rather than just leaning on it for the answer
yeah true
usually when i go to it though i just want the code for the new command im making and i want it now

you should look into some of the more game-ified sort of code tutor ai projects ive seen pop up
should probably start by just not using it whenever i wanna make a new thing for my bot
cuz thats what i really enjoy coding
yeah try to figure it out first at least
then if totally stuck
"halp" but not that much
"give me a hint" lmao
i bet that would actually work
probably
it is hard to not consult the oracle when they're right there
they're also not the oracle as much as they seem to be
true
they will recommend some bonkers stupid stuff if you dont know what you're looking at
im so happy i dodged the AI shit with art
go use some weird, obscure language and the AI won't be able to do all the work for you even if you wanted
i got into that right before AI art started being any good at it
real actually
time to learn hblang 
i mean if you're doing python or react chatgpt will do that in its sleep
yeah my bots are 100% python 
python is kinda the move for AI stuff tho
especially as a beginner
ai helping/ultra vibe coding or not
you can do like julia
but i mean
no
i am alive
ggplot > matplotlib tho

welcome back
go apparently isn't half bad for it but it's still in the "yo this is for running on a cluster dawg" in my head
which makes sense given the entire purpose of golang but still
oh god just the thought of all the matrices that need to be gc'd
python we dont do dat here baybeee
yeah cause you're not running any actual python code 
are you talking about me?
python for gradio and file operations and then a whole bunch of not python to run the models
no, talking about using go for ML stuff
probably
but i don't think there are that many matrices involved right
at least big ones
i think most of them are class variables now
but it didnt used to be like that
numba doesnt work in browser
oh was that the result of that conversation, i couldnt remember
that does make sense tho
always with the dang browser env
lemme double check tho
i would think the main suffering point using not-python for ML would be training
if its in here its available in web https://github.com/pygame-web/archives/tree/main/repo/pkg/
because that's when you're gonna be needing to do your phat gcs
no numba 
you CAN write cuda kernals in numba and use that to run your model
so that's one way to be a gigachad if using py anyways
not useful in your case sam i just was mentioning it
i love js
also i know dlx is supposed to mean like "DownLoad eXecute" but dlx is my least favourite command
it does NOT roll off the tongue
oh this is eslint 9 still sucking
mfw it's configured to import its own self-professed deprecated libs and doesnt launch in a fresh copy because of it
nice
cpython is the regular interpreter for python
so vanilla python that's what you're using
cython on the other hand is actually a different language
it's like a hybrid of c/c++ with python syntax
so you get the big chillin vibe of writing python without the shit performance
eslint 9 was so bad i ended up switching to biome for everything
i was like surely it's been a year
was installing deps for this thing i started today and it was complaining that 8.x is deprecated
and i was likle
ok fine
ill try it
nope
9 is basically a complete rewrite from what i remember
with new config requirements
cba
cython targets cpython as its actual host - it runs in the cpython host and uses its C calls
it's just if you REALLY want to optimize something and skip the whole layer of abstraction you can use cython and basically just get C/C++ speed-ish
while still using your python syntax and env w/e
cython is weird
yeah they changed basically everything
it would yes
ahhh
maybe
so it will?
it CAN
not guaranteed
i personally wouldn't expect it to work solely due to the fact that i couldn't get pypy to work
but hey
worth a try
you basically compile some of the python ahead of time when writing it (via pyx cythonize) so instead of trying to do like numba where it's JIT
it's just already compiled
but i guess since cython targets cpython
how do i even use it? the tutorial i found imports it but cant i just use it in cmd?
it is a separate thing
but you can use it in cli yes
once you have it configured
uhhhh you also kinda inject it into your package build toolchain as well
which you dont use
so that might be a pain
but i THINK for just like a one off you can just do it manually ahead of time
you can compile it during execution too apparently huh
seems like less of a pain than i thought
that's what i get for never looking into it beyond "wait so u have to compile it first nah bro it's python i can't be doing all that" meanwhile out here having ci build run on commits anyways which could easily do it apparently
you can compile it in a jupyter book lmao
good morning programmming
hi 
i think pygbag compiles to cython anyways for running in the web???
average eslint 9 experience @opaque sigil

hmmmmm
biome migrate eslint --write
biome migrate prettier --write
yeah

idk how to check this, i cant read how their repo works.
it does have some filenames that would sugest this.
so
biome doesn't properly support vue rip
from what i'm reading
it's normally just cpython -> wasm
even when packaged by pygbag ahead of time, that just gets put in a package with a little c pymain that handles the "compile" step but thats still cpython
tfrom waht i'm seeing
i dont see how you couldnt just go ahead and do some cython in there for stuff ytou want to optimize for speed before it ever hits pygbag though
this is cPython not cYthon
i missed it at first too
you had me questioning my entire life till the 3rd try of reading it
why did they make it like this?
python
it does support cython via a wheel tho
i mean really a lot of it is probably trying to keep it pythonic in form for people
but then allowing it to be adjusted to your desired neurotic neuron level if you so desire
so yeah it looks like you can basically take a function that you think benefits from teh speed up of being cython precompile
and then you can compile that into wasm
and then you can stuff that in your project
wouldnt all of them benefit?
and pygbag will just take it
not necessarily no, people overestimate how much slower python is (or isn't) for anything that isn't very heavy on compute
most of the time in execution is probably not really waiting for the python itself after it's been turned into C by CPython at runtime
well, not really C, it turns it into bytecode
sorry for just lying randomly there for a second
but yeah i mean CPython itself isn't THAT BAD at its job, it's certainly better than it used to be
from the devs disocord about cython in web faster

it's one of those things where it's up to you as the 1337 hax0r to be like "my extremely huge programming gigabrain has determined that if i take THIS MODULE HERE and transpile that shit to c then to wasm and then include it, it'll be faster than not doing that"
why is chatgpt not the first result when searching chatgpt?
i dont carte about the openai website
it's the 2nd one
and the answer is because i am always actually trying to find platform.openai.com when i search it and ive just done it so many times that it caused the entire engine to do this
i dont think ive ever noticved that websites had indented other links
Couldn't find something to roast marshmallows with so my dad had this large bamboo pole for plants lol, I have a plan
is that an RTX 5090
yeah so see charles cheese here just compiled that stick to cython before using it
RTX 5090 with included 12V HP live footage
Sam what are you programming rn?
Ahh is it going well?
idk
we almost drove him insane earlier
i had a moment
schizoing about directory structure that just didnt matter at all for what he's doing rn
something about importing for no reason
Lol
just dont import it
Massive brain
This reminded me of Michael Reeves lol
The cable of house burning
im gonna treat myself to a proper breakfast fo my birthday
Happy birthday man
cant be eating whatever slop I normally eat
kek looking at this pygbag repo is something
happy birthday
but birthdays are when you can eat unlimited slop
happy bday though
any mods? 
where's shiro when you need a catgirl
nuh uh I think we're clear
code green, get this man a birthday hat
i need them for the hat
mods, surgically attach a birthday hat to his skull
They're probably in general
(not) me rn
its a birthday cake emoji, not hat. im getting dementio
i put on my robe and wizard hat
Mamma mia
Get this person a birthday
shadow wizard programming gang
Ping a mod
we love causing bugs
without eslint rn i cant even see what nightmares lie ahead
if you dont mind
aint neur way
almost pinged temmie
It's bwaaperson's birthday

got close to the actual emoji
i only know vanor so its scary to ping the other ones
vanor was one of us a long long time ago
then they took him 
He was whhaaa
Crazy he went to the dark side
im still here 

AHHH
i have temmie on my next of kin
because he talked to me about sonic once
CODE RED
scatter
while you're here vanor, its bread's birfday
Lol

role to arrive soon ™️
Yes ma'am
thanks vanor
do you still have no contorl over borthdays because of shiro
yippie
Yo Sam can I help with the game engine next week
ourple
you can if you want to
i have exams next week tho so wont be working on it myself
Yay
thanks vanor heart
this saterday is a cheat day, ill be studying tomorrow
what is this vile stain
unexpected any, expected nothing 😔
and then i always get blasted for it
i want to so bad tho
idk why
i got into this thing where im like
i MUST CAST A TYPE NO MATTER WHAT!!!!!!!!!!!
so if i dont really know i just put it to any
and then im like why
2 seconds later
at least do the as unknown as type 
at work I have it set that you can compile stuff with any in dev, but you can't commit it, has to be a defined type (or explicitly disable the rule with a note saying why)
"that right there looks like some C alright, send it"
yep
i need to stop so bad because im ALWAYS pissed at myself for it within what feels like seconds
because i cant ever remember what it type it actually is
so then i end up with like one side set to a phat json and the other one set to something else
and then it's REALLY mad
part of it is that i have some intellicode thing somewhere in this editor that will just be like "yo u could cast this to any buddy r u really gonna not do that" and so i am just staring at it like ....... i shouldn't
and then i get crunk and do it anyways
it's kinda extra stupid with this literally being typescript
that's kinda like
the point

peek has the type very obviously, so does just hovering over the data variable
im good at this
now anyways
# cython: boundscheck=False, wraparound=False
import numpy as np
cimport numpy as np
from libc.math cimport sin, cos, sqrt
def normalize(np.ndarray[np.float32_t, ndim=2] vec):
cdef int i, j
cdef int n = vec.shape[0]
cdef int d = vec.shape[1]
cdef np.ndarray[np.float32_t, ndim=2] out = np.empty_like(vec)
cdef float norm
for i in range(n):
norm = 0
for j in range(d):
norm += vec[i, j] * vec[i, j]
norm = sqrt(norm)
for j in range(d):
out[i, j] = vec[i, j] / norm if norm != 0 else 0
return out
def create_from_eulers(np.ndarray[np.float32_t, ndim=1] eulers):
cdef float sP = sin(eulers[1])
cdef float cP = cos(eulers[1])
cdef float sR = sin(eulers[0])
cdef float cR = cos(eulers[0])
cdef float sY = sin(eulers[2])
cdef float cY = cos(eulers[2])
cdef np.ndarray[np.float32_t, ndim=2] mat = np.empty((3, 3), dtype=np.float32)
mat[0, :] = [cY * cP, -cY * sP * cR + sY * sR, cY * sP * sR + sY * cR]
mat[1, :] = [sP, cP * cR, -cP * sR]
mat[2, :] = [-sY * cP, sY * sP * cR + cY * sR, -sY * sP * sR + cY * cR]
return mat
looks C enough
that there is some honest to goodness cython, it says so at the top
i think it's competition ready
how better is it than just regular numpy?
idk
well depending on the circumstances, numba (which is JIT compiled numpy) is pretty significantly faster
IN SOME CASES
and cython should be faster still
numba is limited in that it has to be numpy arrays
that you are working on
if it's not a numpy array numba does nothing
it is definitely case-to-case though
apparently if you combine it
cython -> numpy
that's when you're cooking with gas
chatgpt ded o7
1250x faster than <?>
imagine you're at work
and you are like in some customer service position
Python is slow mhm
and you just forget how to use your hands
and can't type
so the person has to leave the chatroom
python do be goin slow
why use python for anything when hblang is so cool 
Mabe
normal python is even slower than hbvm somehow
pypy is nice though
that's why i only use FORTRAN 66
fortran 
the reason that builder. ai scam company used 700 foreign engineers instead of having an actual AI coding assistant
they were faster than python
because of you i have to deal with moving from row major matrices to column major
at least it's yelling at you the whole time
so it's clear it's hostile
right from the jump
I sleep until SIMD instructions
python doesn't have it either but that's what I'd want to switch to
i know
✅
i made it
that is going to make it both easier and harder for me to naigate XD

also the textures are kinda hard coded
hardcoded as in the paths are written inside the code itself
yep
i know i can change the code ofc
only 19 more anys to go
just to confirm because my typescript is much less certain than python and it actually matters more in the literal type script
i would use never if the variable or w/e should "never" happen, it should be unreachable or if it's returning something, something has gone horribly wrong
and then unknown is just like if it's coming from outside the file or something but we do in fact want to make sure it's an appropriate type before actually executing on it, so unknown makes that check extra strict
which this one is actually a case of unknown but i put the screenshot with never so that's nice
oh there's an ESTreeNode type nice that is huge you learn new things every day
never is weird
ya that's why im a bit liek hmmm
idk if there's any legit usecase for it other than conditional types
as far as i understand it's like only something that should not have a type assigned at all
well it shouldnt even be there
the conditional should not result int hat
you'd use it for functions that don't return ig
like it's throwing an error and giving nothing back at all
Mhm

any but with a check later instead of a "yolo"
yup
why anys???
called out 
also you know there's an option for disallowing any right
yeah this eslint had it already cuz it sure let me know
no i meant in the tsconfig
well at least use type InputTypes
if you know the range of types it can be
or something
yep, cython does be faster
noImplicitAny alongside strict should do the trick
i'll be honest I like implicit anys for some reason
I just try to avoid explicit anys
yeah most of them are ones where they could be several so i just slapped a yung any in there
if you feel like suffering here's the tsconfig i use for pretty much everything 
{
"compilerOptions": {
"module": "ESNext",
"lib": ["ESNext"],
"target": "ESNext",
"moduleDetection": "force",
"strict": true,
"esModuleInterop": true,
"moduleResolution": "Bundler",
"allowImportingTsExtensions": true,
"noEmit": true,
"noImplicitThis": true,
"noImplicitAny": true,
"strictNullChecks": true,
"noFallthroughCasesInSwitch": true,
"noImplicitOverride": true,
"useUnknownInCatchVariables": true,
"noPropertyAccessFromIndexSignature": true,
"skipLibCheck": true,
"alwaysStrict": true,
"verbatimModuleSyntax": true,
"incremental": true,
"noUncheckedIndexedAccess": true,
"types": ["bun-types"]
},
"include": ["**/*.ts"],
"exclude": ["node_modules", "dist"]
}
extends: "toast/tsconfigs/base"
i was thinking about that but i'm lazy
this level of rigour you only learn by never professionally programming and just being a super epic guy that writes dumb stuff for his own entertainment and learns when stuff breaks horribly
i could make rayintersectaabb in cython now 
the type safety language is not the greatest choice to go type unsafe turns out
at some point the game engine is just going to be 99% "python" 
tbf type safety in ts is an illusion anyway
that's what happens when someone remembered performance is a thing while already writing a python project
it becomes just C with a funny wrapper
im gonna pretend it's paramount
just these parts
it really should only benefit for very small parts anyways
should've just done pure js for maximum jank 
mann i have never written a vscode extension before and that's what this is
i got yeeted into this
by myself
unfortunately 😔
what extension
the only times i've dealt with vscode extensions was some driveby PRs for adding support for variable expansion in settings
it's some garbage but it's meant to be the be-all-end-all of codemap//graph//visualizer things
i dont really know where im going with it to be entirely honest i just got really pissed at several of the ones on the store being horribly broken or just dogwater
aaaaaaany day now 
no support for u
(i ended up just bundling it myself and installing it that way)
is the code online
nah i never post anything online unless i am actually proud of it because i can't handle criticism
also do you bundle your code or do you just use tsc and leave it at that
handleCriticism handler gone missing?
im open to suggestions due to how not-typescript-certified i am but i hadnt really crossed the bridge on that part yet
started this today and i figured there must be some specific way to package a vscode ext
they have a cli
yeah i do know about the code install or w/e
npx @vscode/vsce package
well your extension probably won't work on other computers then
unless you're using something like esbuild
is it time to shill bun
fugg i have always used pnpm for node pkgs because i cant use the default that's cringe
right now in my package.json i have the scripts like this
"scripts": {
"vscode:prepublish": "npm run compile",
"compile": "tsc -p ./",
"watch": "tsc -watch -p ./",
"pretest": "npm run compile && npm run lint",
"lint": "eslint src",
"test": "node ./out/test/runTest.js",
"package": "vsce package"
},
ye some dont benefit from cython. the 2nd one gets worse performance there
it says vsce right there clearly that means itll just work (why would the compiler need to know where the packages are they're all in node_modules still amiright fellas)
i think it SHOULD work fine if it's a .vsix already tho so it should only affect someone who went to clone the whole repo instead of just installing that
as long as you put the entrypoint in the package.json i think vsce should do the bundling on its own
np itself does have its own optimized stuff
i thiiink
"main": "./out/extension.js", is my main entry in the package.json
because you use pnpm, you're not actually bundling the packages when you include node_modules, you're just including symlinks to them, which won't exist on other computers
tsc doesn't do anything to fix that I'm pretty sure
right but to my knowledge if it's a .vsix it won't matter cuz they dont ever see the packages anyways, theyre bundled if needed
and then i think npm itself CAN install a pnpm package
it just complains
pretty sure not
Hey programmers
npm doesn't install anything when you load the extension in
you have to fnangle it a bit: https://medium.com/%40fengyu214/vsce-support-16014c35bc3c
yeah but you still have to bundle it using something (presumably) other than tsc
You are currently editing actions.py in visual studio code
???
so i need to do some adjustments in my package it looks like, i was following a different random blog
Am I right
yesn't
or i could just use npm which i definitely have
Oh
yeah I'm switching to esbuild for the web version of neuropilot because you need to bundle everything into one file for web extensions
so would recommend
used to use webpack but it's old so 🤷♂️
as long as esbuild is better than its sibling eslint 9 which has already made me very upset today
i actually dunno if theyre even related in any way other than the name
I wouldn't use npm anyways if you're bundling still (which is like, slightly faster because vsc only has to read 1 file instead of like 20)
they aren't I'm pretty sure (the es- comes from ecmascript)
i gotta go fast
well shit
esbuild is actually good at its job unlike eslint
that's the kind of thing i'm happy to be wrong about assuming then lol
it is faster and it does take up less storage but because of how it stores packages in node_modules they won't exist when you load your extension on another machine
unless you bundle
using smth like esbuild
Toast
eslint is good at its job (once you set it up), but its job is a very annoying one
i will say i got eslint 9 working actually and it's been fine since
sup, that's me
i was mega mad at it because they changed like
everything
and then they misconfigured their own linter
it was crashing ootb
neurotic neuron escapes #neurotic-neurons, freezes at name
i'm ngl that's a genuine skill issue if your program is crashing on a fresh install
not on you ofc
I meant the devs
Nuh uh I’m a gymbwaa
I just looked at your .github.io repo
why is there so much html
Because
this one should be epic
Trust me don’t click the Minecraft quick link
why conda affecting my C libs ARRRRGH
ohh this one is the one where i had a bunch of interface exports and i put at least one any in EVERY ONE because i was like well there might be weird types here :)
so they all end in this crisp <string, any>;
probs cause conda ships entire environments including native libraries
lmfao

:essaying:
now i need to use system libs and pacman is jank af when installing python libs
I'm surprised it fits
is it a code assistant like, extension
i am taking a break from my other foray into js/typescript/everyone's favourite react which is meant to be a kinda janky ass code canvas with like 4-5 agents at once so this interests me
the canvas im planning on using is monaco for that
wait did I reply when I wasn't supposed to
no
oh
you were supposed to destroy the type errors, not join them

linting errors in your linter config makes a lot of sense
im sure it's from me frantically changing every option trying to get the linter to not crash on launch
Just in general anyone worked with next js. Just wondering if anyone worked on improving build/dev times for it
funnily enough all my friends have said giving neuro the ability to do this is a bad idea especially giving direct terminal access but idk more power to the neuro twins ig
i wonder if vaduhl has ever experimented with it
i think he's mentioned he gave her the power to turn off his PC at least once and she did like immediately or something
pip install malware
im a certified expert i am 15% of the way through a wildly scoped for my experience with it project with a react frontend
vedal recently asked for someone to make a vsc extension that gives neuro access to vsc like copilot so I wonder if he's found it yet
Same 
she has to be at LEAST competent if not impreessive with tool use given how well she does it all the time
so it should be interesting
My project takes 5 minutes to build
jaysus
Not even the tests
what plugins are you using
what are you building it with
or like external modules
@olive sable you developed the game engine on windows right?
yes
I tried testing a feelings matrix on a primal instinct and emotion module based of biological function
After being given the stumli input of being placed in an unfamiliar place it initially showed fear yet immediately switched to rage, should I be worried lol
Docker so slow cuz of that but I'm like caching the node modules Already
bill gats told me that windows is the best dev platform because you have wondows and also wsl
worst of all worlds
disgust
Wsl crashes 
a while ago he also did something similar on stream but apparently that was like not much or smth idk I need to watch the clip again
how did you get wsl to crash
There is a known issue in windows (10) I think where wsl crashes u have to restart pc
lol oof
And yea cuz of docker desktop
using a fresh install?
oh
also does anyone know how best to communicate between a vsc extension on the UI side and one on the workspace side
It's pretty helpful tho but if you don't scan the images you use then yes it can be dangerous
they also are the same extension because microsoft won't let you install 2 separate versions, one for local machine and one for server-side
i actually hate this about wsl vscode
not just wsl
same goes for ssh and containers
and tunnels too
yeah that's true
i just generally dont use them much
but yeah wsl local vscode is literally just a tunnel
well I am trying to figure it out right now for sandboxing reasons
there's a few ways and they all kinda suk
but i think you can basically just declare the other side as a dependency
from each end
I knew they would suck just because of the fact we can't specify different extension versions
for different sides
which would then mean splitting into 2 different extensions
so
yeah that element of it makes it even more horrible lol
also pretty sure it would try to install both of them on the same environment but I haven't tested that
also this isn't really possible because we also have to make it compatible with vscode.dev
why? because we can and therefore we should
oh nvm im reading teh wsl bridge thing and it actually just tunnels it
for you
if you export any method through like activate() it will be rpc proxied to the ui
oh so it'll run through the UI and then when it gets received it just relays to the workspace side?
you would have to account for the path weirdness between them if you ever try to pass like a link to a file
well here's the problem
yeah you put like"extensionKind": ["workspace"]
and "extensionKind": ["ui"]
it's just in the manifest
we're trying to process actions internally
or whatever
basically the problem with ui-side extension is that say if neuro wants to run pip install malware it gets ran on the main machine not the remote
Actually that might be solved if we can somehow switch back to using VSC-provided shells instead of user-specified shells
this page goes into a lot of that
so ye most of these are good, ill be doing this in cython now 

Waiting for increased fps 
needs 3000 fps
meanwhile me banging my head because conda is being a stupid piece and refusing to let me use my system C libs
i think ima fork the codebase and make it more linux friendly XD
so there's like the vscode.env.openExternal api if you need to pass like a llink of any kind then you can vscode.window.registerUriHandler to have it able to register a callback for a specific thing you anticipate needing to send back and forth like oauth
and then there's a message passing api too
why do they have to make it so complicated
i dunno they have like 30 options and they all look like some form of a pain in the ass and very specifically targeted
collision only drops 300 fps now instead of the 1500 i had before
thats the only part where im cpu bound
ive never been very happy with conda, fat or mini
gotta refactor the filestructure now cuz i have a bunch of new C files
i think the "official" answer to that is turbo(pack/repo)
god fucking damnit
hope you're not using any electron apparently
nope, only using Node APIs or VSCode APIs (in addition to modules)
though because of web version we're trying to limit node API usage as much as possible
thiiis is kinda why i decided to just try and slap monaco into some "bespoke" frankenframework of my own dastardly design
instead of messing with a whole extension
and having to live in that box
doesnt work for what you're making though obviously
Yeah

this is the most pain js/ts experience I have ever had
at least it looks pretty while ruining your life
but ig pain makes you come out stronger?
a wise pair of cyborgs named thomas bangalter and guy manuel de homem christo once said something like that
I think I asked ChatGPT for a solution once and it said you can just register internal commands and call them which would execute on the remote machine
guys, main.py needs to be in root folder for web to work
i tried putting it in a src folder, does not work
what
oh
I see
it's likely because your entire setup has been built around it being there this whole time
unless that's just some issue with the pygbag or something
i did mention that usually the pain with python directory layouts is just some gremlin in a basement declared that their very specific idea of the layout is the only real one
ol gerry gymbag seems to have ideas
89: missing requirement(s)```
symlink it 
symwhat?
symlink - basically an alias but for a file location - you can have a file stored in one location but also have a link to it in another that kinda just looks like the file is at that other location to whatever is accessing it
so you could be in a terminal in ur project root and do mklink main.py src\main.py
and i would expect it to fool it
mklink is not recognized as a ....
powershell me brotha
it is powershell
it should wrk
yet it doesnt
oh mklink is actually the cmd syntax lol
boilerplate example
New-Item -ItemType SymbolicLink `
-Path "projectdir\main.py" `
-Target "projectdir\src\main.py"
how about i just dont put it in src
hey it's your project that's always been an option
but then you're letting terry "stinky gymbag" vedalson, the dev behind pygbag, tell you what to do
do you want that
i really dont care tbh
terry wins again, it's over fellas and fellettes
the only reason i was even trying to make it work was cuz iggly asked if i could
(seriously though i just figured that might be hard since i further figured you'd already moved it all)
so wanted to see if there was a workaround ya kno
honestly at this point it sounds like specifically for pygbag-land you were 100% already using the right folder structure
which is funny in a cosmic sort of way
i'm so glad the uutils coreutils work so i don't have to put up with this powershell insanity 
i have a sort of grandpa's fondness for powershell
swing and a miss on the way they structured the syntax at the end of the day though
someone really decided
hey let's just use .NET in a cli
everyone loves .NET

i do really like powershell for more complex things
i use it a lot for file ops and such
having to parse text for info is insane in 2025
i'm just glad i can hop between wsl and native windows and use the same commands for the most part now 
have a lot of random .ps1s all over the place for tiny QoL operation things
honestly yeah it's really nice
UNTIL it suddenly is not working in a very obfuscated and irritating sort of way
couple weeks ago i had some MCP servers i was running through node on wsl but able to use just fine in the host windows
they just stopped work
randomly
and i never got them to start working again somehow
iirc they removed some networking settings a while back
had to nuke that WSL and install a fresh one lUL
well a lot changed from WSL1 to WSL2
for sure but idk what else since
all i know is if you're having issues with wsl
if ur running docker's evil code
it's probably docker's fault
okay just checked, they removed bridged networking in march which should've ended up in the stable release in late april
i'm pretty sure you'd have to explicitly choose that over the default NAT networking though
i like using mirrored cause i'm lazy and would like things to just work
tbf the latest stable release has been kinda fucky for me too, it refuses to boot half the time
so i just went back
win11?
oh
strange
the nice thing about it for me is that it has that virtualized free ez fix for stuff
delete and remake
lol
so i never have problems with a wsl install for more than like 2 seconds before im like
it's impossible i give up
and just replace it with a new one
can someone compile this on linux?
i need a .so file, not pyd
linux returns a .so file, windows gives a .pyd for some reason
vedal would be proud of my latency
with this script i guess. python src/setup.py build_ext --inplace
prease hold
edit the file location to be correct tho
did it end up saying anything useful
setup a venv in my windows download dir
forgor args 1 sec

where the hell did it export to lol
copying build/lib.linux-x86_64-cpython-313/mathutils.cpython-313-x86_64-linux-gnu.so -> it just said that and ended
idk
lemme look now that i've saved the day once again

oh and that was cp313 so if you need another python version i can always just make uv use a different version and recomp
I hope you can do the same here because I'm losing my sanity by a shit ton
it definitely cooked something at least it's a lot of yapp
and a further message not specifically about wsl but applies to just remotes in general
these are md format so if u hate the formatting it's actually quite nice if you slap it in vsc
which im sure you know
but

gn sam
what if you don't export an api
because we don't and use stuff internally
and also how do you consume your own apis in this case
there is an API (or there should be) but you are saying you have made the design choice not to utilize it correct
according to what i can find just sending a workspace command should get routed ```typescript
// UI-side component
vscode.commands.registerCommand('myext.uiCommand', async (data) => {
// Execute command on workspace side
const result = await vscode.commands.executeCommand('myext.workspaceCommand', data);
return processResult(result);
});
// Workspace-side component
vscode.commands.registerCommand('myext.workspaceCommand', async (data) => {
// Process data with full workspace access
const files = await vscode.workspace.findFiles('**/*.ts');
return analyzeFiles(files, data);
});
but i do not know the extent to which your use case would need more capacity than like a command being executed
i am seeing some stuff about literally basically turning it into a language server type implementation
which came from copilot i guess
whoa
that is fking weird
bro
think Ill just do that then
I just need to figure out whether or not we can just parse stuff out then or do we just give the actionData packet verbatim
though maybe I should focus on one thing at a time
so for now back to docs I go
gemini's table of horrors
i did have gemini create a wonderful web page just for you
because it's funny

I'll probably just focus on writing docs and finishing web version first
the giant dissertation that's based off
saving those rn
lol
i like to consult the slop council when i can't find a good answer for something
so they just firehose you with infinite slop until a nugget catches your eye
i cannot possibly believe
that ME
I
have a type error
classic
Most common error ngl I get a billion of those
Morn
good morning shadow
HAPPY BIRTHDAY

we got birthday person in #programming !!!
Shiro
yeah it was just topical because i was out here assigning any to a shitload of stuff
in typescript

Gotcha
tmrw task list:
- understand conformer -> implement in jax
- understand RVQ -> implement in jax
Still?
ye
find a new hobby pls 😭 let that half the size of encoder gemma go
or at least increase the params
during speculative decoding it predicts 1/3rd of all predicted tokens correctly for gemma 27b
it's literally
free performance





