#đȘ -progaming
1 messages · Page 96 of 1
i don't use sb
get my tk easily on any of my alt or main
to connect easily
connect to what bruh
It's still stage 2 after 10 years
Gta 6 will be released before js pipeline operator
you quite literally have this
or well
at least linq lazy iterator adaptor stuff
like .Select .Filter .Aggregate have their js .map .filter .reduce equivalents
i specifically said LINQ queries cuz i want the language to have more useless keywords 
with select and where and everything
I think they were trying to make c# more approachable to non developers by copying sql syntax
proper in place threading â
more useless syntax sugar â
i don't really like it lol it belongs in functional languages
^^
rather than the way it structured
becauuse "um akshtually" everything in JS is an object without exception, but u can work it with it as a strictly functional lang
still, i fucking despise this sugar shit
the ?. operator was peak, evverything else is useless tbfd
maybe a := operator from GO would be good
What does it do
BUT I JUST WANT THREADING REEEEE
const error, res := await fetch(url)
if (error != null) return 'nope'
Well at least you can do Promise.try() now so u never have to use try/catch blocks again 
At the cost of worse performance and everything being async
i dont think js will ever be threaded
at that point i can just write my own ulitity function for it
bringing back my rust result/option port to ts
workers exist anyway
it is threaded
and its easy to introduce ur own threading impls
but its about inline threading
like what kotlin has
because as of now threading is piss, but you NEED a 2nd file to run the threaded code on, which sux
yes, and so will every other language, when u write a sync loop in the main thread
they are
because the BARE MINIMUM for js threading as of now is:
import { expose } from 'abslink'
export default expose({
add: (a: number, b: number) => a + b
})
and
import { wrap } from 'comlink'
import worker from './exposed.ts?worker'
const threaded = wrap(worker)
const res = await threaded.add(1, 3) // 4
thats currently the bare minimum boilerplate
but its stilll... a loooot
and requires 2 files
my dream is inlining this
i rly just want
const threaded = thread({
add: (a: number, b: number) => a + b
})
const res = await Promise.all([threaded.add(1, 3), threaded.add(1, 3)])
yeah, but go is black magic
and is pretty much alone in that category
well it really just does inline threading, like what i described
but it splits the code into threaded chunks automagically
javascript workers have entirely different contexts
it's a whole separate process
can't share objects
only specific array buffers
if you want to be pedantic though there's no real distinction between threads and processes besides namespacing at the kernel level
to create either you just fork vfork clone clone3
atp the threads could be in completely different computers đ
i actually support this
abslink lets you simply create async messages over abstract message channels
so you can exchange messages via http or ws
and implement IPC that way
its why i built that lib unironically!
its just flat out doable
liek the lib is alr there
xD
you just need SSE and fetch minimum
or preferably WS if u want less boilerplate
i know we have vercel nerds here so can one of you idiots explain to me what fluid compute is and what all these buzzwords in here are that are complained about https://vxtwitter.com/dioxuslabs/status/1937214107385757737
vercel's Fluid Compute makes me irrationally upset
push javascript to the backend, make it single threaded, and then make it single-process(!)
itâs serverless! no std::fs , no std::socket, no AOT compiled code
the ecosystem needs to add âserverless runtime supportâ đ„Ž
oh no, pages load slow, letâs stream snippets of
ugh
full tweet
How does that work
Idk anything about this but like how does it map object prototypes to the correct classes? How does it serialize internal properties?
functions can't be serialized by structuredClone so the answer is just no
unless you do your own thing
interesting
objects sir
Object
not class
errmmm classes are objects? đ€
ok true
JS is a single threaded language. It is only concurrent for stuff the runtime handles in the background generally IO related. Similar to python with the GIL
This will never happen because JS isnt a multi threaded language and never will be multi.
the only black magic that GO! does is green threads not hardware threads which languages like java and C# use.
GO! uses goroutines to its advantage for garbage collection but thats an entirely different matter
Its more than that as i said. It uses green threads instead of hardware threads.
languages like c++ and rust let you do the same thing as you describe and even have their own async packages
Python can be multithreaded and will be, there is accepted PEP to optionally kill gil
"GO!" 
i personally think we should push for multi-threaded js so i can run my vencord crypto miner more efficiently
Its beta and unstable as of rn. All of the packages are designed around the idea of python being single threadded and the runtime itself isnt thread safe because of it
Of course
Thats why i am saying optionally kill gil
youre trying to be right by a technicality
Yeah and
I personally think the average JS developers head would explode at the idea of a mutex
we will teach them
!!
"just wrap stuff in a mutex and then that mutex in an arc and your problems with go away !!!"
.....
i wonder if c++ has equivalents like that never really checked
i mean the fucking atomic pointers
hm
arc is just a std::shared_ptr in c++
ya std::atomicstd::shared_ptr>
no Mutex<T> tho
you have to just
std::lock_guard<std::mutex> lock(mtx);
at the begining of your function call or lock it manually
which all that does is abuse local lifetimes to call a deconstructor to automatically free the lock once the scope is left
đ
wouldnt it be cool to add the "hint links" thing from qutebrowser to the electron discord app jst saying btw-
be the change you want to see
i should learn how to use swift distributed actors
oh boi is that wrong, yeah it's single threaded but I/o stuff isn't multi threaded like you think, it's just bindings to native code which is multi threaded, because js has no threaded language functions
yeah not like go, but it could let users create in place threading like c++ or kotlin
I know.
yes, but as a developer you could really give less of a fuck tho, I just want multi core processing and it does that
so it really doesn't matter for the end developer
wtf do you mean. There is a massive difference
to a system dev, or a c dev maybe
not to a js dev
end goal: more cpu power
how they do it, doesnt matter
it gets done
Ex,
Green threads cannot have thread affinity. They can however have significantly lower ram usage
Green threads are limited by the runtimes context switching and in the case of golang is whenever the fuck it feels like. Hardware threads are treated fairly and evenly by the scheduler.
Maybe as a JS developer it does not matter because in the end JS is shit and youâre not gonna get good performance
that just means you cant write good js, cope
lol
Nah
I also agree that js/ts is bad language
I wish apps were actually native
Like were made w c++/rust/<insert any compiled language>
I dislike them incredibly. I think majority of websites could just be mark down + css
Same
The only time JS can compete with any compiled language, even GO! Is in massive for loops. Other than that the over head of JS itself massively slows own execution and garbage collection is a pain
In multiple larger âenergy efficiencyâ or runtime oriented benchmarks JS is consistently using 4-16 times a native c/c++ or âmuh rustâ
- shitty JS devs that are ever plenty
average c++ code
std::monotype<std::monovalue<std::chrono::clock<std::infinity>>>
Itâs not a bad language if you use it what it was meant to do
Especially now with how many features it does actually have, very viable to just use vanilla js for simple websites
But then framework devs come crashing through the wall with 900 deps for their blog
(Framework still good for complicated sites, like SPA, etc.)
oh yeah no, i agree, most websites dont need to be webapps, but they still do it, which is why i always make the clear distiction between websites and webapps, and the same applies to browsers, firefox is great for websites! aka what you call markdown + css, but the moment u try running webapps on it, its useless, chrome is the other way around
cool, thats an opinion for sure
What?
i love ts/js
Why are you acting like spider monkey is horrible?
actually, from experience, for loops is where native MASSIVELY outperforms js, almost always, and the most significant uplifts i always saw in JS, was from moving loops to native
its not
its utter fucking awful dogshit
mf Used compiler opts thank the lord
sm is so bad when it comes to any form of gc or large memory operations its fucking unfunny
sm's gc will freeze the main thread for multiple seconds at a time
its insanely bad
but yeah, this is by far the biggest problem in JS
the devs are fucking incompetent and cant write good code
i wrote MANY js based libs which easily outperformed native equivalents, because of how incompetent many devs are
honestly i don't think writing good code is possible in any language
and you can gain SO MUCH performance in JS by just swapping some libraries at compile time, to your own custom ones which dont do stupid shit
the best representation of what a program should do is english
vibe coding is the way forward 
i think the best example of this very thing is the process polyfill for web, which uses a SINGLE set timeout, because the author wants backwards compatibility back to edge 1, and some weird smart TVs which can only have 1 set timeout active at once????
legit just replacing that with queueMicrotask reduces the code for that module from 400LOC to 1LOC and increases perf x10000
AND PEOPLE USE THAT LIB EVERY DAY
its unfunny how utterly incompetent many JS devs are
waIt no i think it was x40000?
because IIRC set timeout minimum time is 4ms, and queuemicrotask can be as little as 1ÎŒs
1usd
there
dont say SIMD around me i get PTSD because of WASM
SIMD in wasm is so painful
i mean SIMD overall is painful
skill issue
well yeah, thats syntethic benchmarks, which rarely represent real-world applications tho, in JS 90% of the heavy lifting is done by native api's anyways, so many of those benchmarks just opt to re-write those APIs in JS, poorly at that, instead of using what the env provides, because they know the perf will be identical, because then the only thing else to benchmark is just sugar that developers write around said api's to pass the objects around to libraries etc, which has close to 0 difference, thats why JS is so good, because you still get native perf thanks to the standardised APIs written in native code, that you'll never need to give a single fuck about, they just work, while working with the flexibility of a GC'ed language
platform agnostic code is simply so much easier to work with
you're not wrong!
having to compile native code to wasm, for different types of SIMD, because different CPUs support different intstruction sets twists my insides so much
then before u can even init ur library u need to check what SIMD set the given cpu supports before u can load ur lbirary
why dont native devs that make these libraries just handle these cases for us
instead we need to build this shit 4 times
What? WASM offers a native âvectorized executionâ API
SSE3 has existed for 20 years you can stop checking
haha... you'd be surprised what kind of hardware users run....
llvm and gcc both output sse3 to do floating point đ
yes, and if your CPU doesnt support SIMD, the WASM instantiate will fail
you literally can stop checking
and i'm telling you, i have statistics for uses which cant run SIMD, and need to fall back to non-SIMD versions of my WASM builds
because people are running laptops and chromebooks with CPUs so old they dont have SIMD
MF got users on pentium with MMX
yes, thats what happens when you ship products people actually use
you get a big userbase which you need to support!
i know, this might be shocking to you
oh also IIRC smart tv's running androidTV often fail the SIMD eval too
but that shit is just e-waste so makes sense
horror
oh it gets so much worse
did you know that 99% of all androidTVs run in 32 bit?
yes they have 64 bit cpus, but they run in 32 bit!
Sorry the stuff I work on requires RX 6000 / cuda 11 compliant gpus :3
half of windows is still 32bit
did you know that some of the latest androidTV updates started deprecating 32 bit support, which 99% of all android tv's still use!
which means you can simply crash all active webview by just running
const subarray = new Uint8ClampedArray([255, 0, 255, 0, 255]).subarray(1, 5)
await createImageBitmap(new ImageData(subarray, 1))
often rebooting the TV if the OS UI uses webviews?
this hasnt been fixed for 2 years now!
nice, that'd cover about 20% of my userbase!
which is why i stick to JS
i write one codebase
and it works on every GPU, CPU, arch, device
> JS
> gpu
OKAY BUDDY
my single codebase runs on phones, tv, pcs, macs, linux, steamdecks, vr headsets, cars
yes sir, JS's canvases are GPU accelerated
Canvases LMAO
I thought you meant something real like compute
3d rendering is real compute sir
Indeed
and this "js based non real comptue" as you'd call it, easly outperforms other half-competent developers like VLC
:^)
VLC kinda ass ngl
yep, its also the most used video player in the world thats not windows media player, since that one comes built into the os
nope, only because it has a proper UI which just works, and is idiot friendly unlike mpv
#1 reason for people not using mpv is because they dont know how to install ui for it, and they dont know how to configure it
because real users are average 9-5 workers, which dont know how a computor works
MPV has a ui? Wdym
they install an app and they want it to work
by default it doesnt, thats exactly my point
mpv isnt targetted at normies, so normies aka most of the world, will never use it
becase.
they dont want to spend an additional 3 days fixing it to get it to work with their HDR display
It has one
no, thats an OSD which has 0 functionality compared to what VLC offers
which also barely works and flashes like fuck on an HDR display, since its just subtitles rendered on video without HDR metadata
which again, you need another config setting to fix, which isnt on by default for some god forsaken reason
which is why VLC is the biggest in the world, because as we both said, its codebase is dogshit, but its appealing to normies, which just want something thats user friendly
Thatâs a you problem unfortunately
Most people will never use a thrift besides the OSD
not like VLC has actual options either
and thats why its REALLY not difficult to outperform native with JS, because just as JS devs are incompetent, so are MANY native devs
What are you gonna do? Use a Deband filter from the 90s?
me and the 60 people who commented on the issue on github
đ
Hm, what about VLC having borderline unusable performance due to running out of date as shit libraryâs
brotha what the fuck are u saying
i'm not arguing VLC is good, we both said its dogshit
but its user friendly
my exact argument is that VLCs perf is dogshit
and my "non real 3d rendering" with js, can easily outperform it
ur just arguing for the sake of arguing
not because u have an opinion to voice lmao
Oh, try and make a JS video decoder :3
you dont need to
you just give the h264 frame to the browser and it decodes it for you
because as i said, the beauty of the JS is the wrappers for the native apis that are standardised
which people like you ignore for the sake of "huuur duuuur i write dogshit code just to proove js is worse, rather than creating the optimal solution"
and you likely mean rendering
anyways i wrote a pure js async iterator based decoder and encoder for mkv, which can easily handle speeds higher than my storage, so i guess it caps out at 8GB/s for me for data truput
and for the 2nd one, we compiled libav to WASM, and we transmux mkv into mp4 real-time to add mkv support to browsers like firefox and safari which dont support the format
The joke is I work on the stuff youâre importing from the runtime for your JS :3
good for you!
that doesnt invalidate how good js is
for all i care you could work on an ass scratcher, js is still good
LMAO
i love people that proove their experience and competence in a SINGLE sentence
imma frame this, at the end of this conversation, just to proove you dont have actual real-world experience
Youâre just fun to piss off
because if you actually ever used WASM you'd realise its main purpose is not performance, which it cant offer at all anyways
WASM can and is fast
Itâs not as fast as if the browser did have a native lib for it, but it is fast
again, isolated benchmarks, and not real-world use cases
hate to break it to you, WASM still runs wrapped in JS, and to access that data, you still need JS, so you'll never be much faster anyways
and the latency and sizes are simply not worth the 0.1% perf you'll save in actual use cases
WASM is only good for porting massive libraries you dont have the time to write correctly in JS
oh whats this? wasm still uses JS memorry? to read external data you still need to serialzie and deserialzie js objects?
"wasm is faster, we ran a 1M iteration for loop inside wasm which never exited it, its an order of magnitude faster than js!" sure buddy, now read that data back to js, and you're an order of magnitude slower than js because WASM doesnt support proper serialization
anyways, go back to ur gpu land, because you've never worked with competent web apps and you're just talking out of ur ass
framing this just for the sake of it
Cool
Wasm is faster at bulk computation, which is not a common need in websites
Yeah the problem is we canât just make the entire website WASM
The WASM to JS overhead can make it slower but WASM is usually between 1.5 -10x faster
To say it isnât faster is insane tho
yes, in real world use cases its not faster
because as you said, real world needs to read the data from WASM
which is where WASM fails
thats also COMPLETLY ignoring how long it takes to download the wasm and compile it
and the complexity it introduces at build time
Buses are faster than walking. Going to the bus stop, waiting for the bus, and then going from the bus stop is sometimes not faster than just walking a few hundred meters
^
because they either write dogshit JS code, or dont use web apis for it
I hate your blanket coverage of shit instead of actually explaining
Figma :)
erm what the figma
wasnt that a security thing more than performance thing?
Nobody's saying js or wasm is objectively better for everything
Both have their strengths, and for most websites, js suits them better
WASM is decent if you're running it on edge or a server
with shit like WASMer
but not in web
the only valid use cases for wasm on web i found so far is porting massive C/C++ libs to web in a single day instead of taking a month to re-write them, and some multi-threaded decompression algos which web doesnt support
that didnt do that well on js, because they used SIMD
what is this code style
dont remember what that was, it was some giga niche file compression shit
yeah, for IIFE, if you write a no semi style js, you need a ; at the start of the IIFE
but
that shit is questionable indeed
just don't write no semi style js it's confusing doing this
this isn't an iife though
it is, but isnt?
im giga fucking confused tbf
cuz its async wrapped iife
but then the semi for the iife is on the next line???
god that is fucking unreadable
nuke it pls


The unknown is making it sound like WASM is never faster when it is. âNever in real world useâ when entire web GUIs instead of native apps, emulator, web based WASM + WEBGPU projects all rely on it for acceptable performance
yeah see, this is backwards thinking
just use the DOM
you have a gpu accelerated rendering pipeline right there
and u fucking use wasm
WHY
aka .
Because the DOM canât do everything?
Implementing all the rendering and interaction from scratch will be hell for accessibility
that just means u cant do it
and the canvas wont even have it in the first place
thats the point
so what he's using WASM for isnt perf, but saving time by not having to implement the UI himself
and instead instantly porting some existign codebase for it
There are complex shader pipeline simply impossible for the DOM that still makes sense as a web app.
Especially with the advent of chrome books and browser only devices
i'm yet to find a single shader which cant run on web
especially if you use tools for porting shaders to opengl
and use webgl2 which can just flat out run any opengl shader out there
I know, because i ported ALL the mpv shaders to web this way
just to proove a point to a guy, who made a similar argument like you
xD
then i made a lib for it! https://github.com/ThaUnknown/video-deband/blob/main/src/shaders.js
this is just 1:1 the mpv deband shader ^^
i saw a ui app that was using wasm and a canvas and it was very laggy in chrome but fine in firefox
and running shaders on GPU will always be faster than a single threaded WASM CPU thread which is shared with the current JS instance, so idk waht you're tryign to say here
how much do you want to bet that the app had to fall back to some webgl implementation, which simply ran better because the webgpu version for chrome was just written like shit xD
I dont when I write too verbose documentation
im actually curious, link me
https://rttv.ca/main mine craft
panicked at C:\Users\RTTV\.rustup\toolchains\nightly-x86_64-pc-windows-msvc\lib/rustlib/src/rust\library/core/src/num/f32.rs:1402:9: min > max, or either was NaN. min = 1.0, max = 0.0 dang
I cant even run it on mobile
probs SIMD tbf
no cap
wasm is hell to work with in browser, because you need 3 build outputs
WASM2JS if WASM itself fails [GIGA SLOW], WASM, and SIMD wasm
Seems i can if i enable desktop mode
Ah it seems to rely on screen size lol
doesn't windows already use rust
they.... use webgl2 which they control inside the rust codebase
ok. whatever that means
they make wasm bindings for all the web api's of webgl2, and call them inside their rust library as if rust had it
i haven;'t done much webgl and i think since i tried it there's a new thing
which means each call to any of the webgl shit is calling between wasm and js
aka big boi overhead
ah chrome only thing
but idk why i'd be slow in chrome
fix
ah yea webgpu
i dont see any webgpu calls
Rotate screen and itll work
nop i was just looking up webgpu
i lied!
đ
there are webgpu calls
WHY'S THAT A THING đđđđ
webgpu shit!
panicked at C:\Users\RTTV\.rustup\toolchains\nightly-x86_64-pc-windows-msvc\lib/rustlib/src/rust\library/core/src/num/f32.rs:1402:9:
min > max, or either was NaN. min = 1.0, max = 0.0
Stack:
Error
at onPanic (https://rttv.ca/snippets/nbtworkbench-26507aaadea5d6ad/web/script.js:23:17)
at imports.wbg.__wbg_onPanic_a3859b9cd1fad37e (https://rttv.ca/nbtworkbench.js?version=2:1343:13)
at https://rttv.ca/nbtworkbench_bg.wasm:wasm-function[2200]:0x2a07e7
at https://rttv.ca/nbtworkbench_bg.wasm:wasm-function[2249]:0x2a5ddd
at https://rttv.ca/nbtworkbench_bg.wasm:wasm-function[3924]:0x30c0a2
at https://rttv.ca/nbtworkbench_bg.wasm:wasm-function[2843]:0x2d8e7b
at https://rttv.ca/nbtworkbench_bg.wasm:wasm-function[541]:0xcdbf9
at https://rttv.ca/nbtworkbench_bg.wasm:wasm-function[476]:0x4f76b
at https://rttv.ca/nbtworkbench_bg.wasm:wasm-function[1523]:0x25f645
at https://rttv.ca/nbtworkbench_bg.wasm:wasm-function[4217]:0x311983
its a normalized vulkan api
and its not chrome only
why is there like no info on this thing i cant find even just like an about me to link back to the creators
in practice
just not fully, only mostly
nightly only it seems
i mean yeah, you'd never run a web app on anything else than chrome
yeah
deno webgpu support is insane too, because u can write native apps or server apps which have normalized GPU access
its massive, and people sleep on it
discord feels laggier in chrome than firefox for me
incredible
panicked at C:\Users\RTTV\.cargo\registry\src\index.crates.io-1949cf8c6b5b557f\wgpu-23.0.1\src\backend\wgpu_core.rs:1790:18:
wgpu error: Validation Error
Caused by:
In a CommandEncoder
Command encoder is locked by a previously created render/compute pass. Before recording any new commands, the pass must be ended.
i'm ~40% sure its either scrolling
or animated images
* {
will-change: scroll-position;
}
.members_c8ffbb, /* members list */
.guilds_c48ade, /* server list */
.chatContent_f75fb0, /* main chat messages container */
/* .sidebarList_c48ade, channels sidebar with animated banner */
.layerContainer_da8173, /* app sibling container for overlay elements */
.app__160d8 { /* app container */
contain: strict !important;
}
.typingDots_b88801, .vc-typing-indicator-dots {
contain: paint !important;
}
.avatarDecoration_c19a55, .avatarDecoration__44b0c {
display: none !important;
}
i've never had any perf problems on discord in firefox which is pretty hefty, moreso on github đ
wondering how this even happened like how do you mess up calling CLAMP
i wrote that after spending like 3h looking at discord's draw calls
to make sure it doesnt lag to shit XD
i think github is the only site i've had serious problems on on firefox
They donât care, the point is be written in memory safe+++++ rust
this should crash ur firefox browser
xD
IKRRRR
as i said 90% of use cases for WASM are wrong
what you're doing is sane, because you're saving MONTHS of work not having to implement that shit yourself
but its by far not a fast solution
i think they were doing a reverse electron
instead of putting a website into a desktop app using a webview, they put a desktop app into a webpage using wasm


wasm rust bindgen is unironically insanely good
esp when compared to the attorcities emscripten commits against humanity
but what they did is NOT a good use of it XD
it's not doing anything in chromium either
hooow
FF supports that fine. Dunno why itâs a issue
wtf did ffmpeg change?
i muxxed this video
did some "light clipping"
so the metadata is a bit.. fucked
it worked a few years back, doesnt anymore
funny!!!!
Wdym light clipping
how do i say it
ebml is made to recover from data structure.... inaccuracies
same as html u can have fucked tags
and the browser will fix it for the most part
ebml is kinda the same
and uuuh yeah i did some fucky when i converted an mkv clip to mp4 and the data is SLIGHTLY malformed
https://thaunknown.github.io/jassub/jassub/burn-in/index.html this one will work, but its nowhere as heavy
ALSO ITS LOUD WATCH OUT
Ffmpeg can do that just fine. No meta data fuckery
What did you do?
clipped the video without any metadata
there's just "suddently" a video clip which skips a few minutes of contents thats nowhere to be found
the seekhead is non-existing for that clip XD
this one only peaks at like 500 bitmaps per frame, which is only like 1-2GB of data per second
the other one did 20
but it dead
what can i say, im a lazy mf
and just used minimal tools for it
i didnt want to re-encode it
so i just clipped the video segment and extracted it
XDDDD
I didnât know the ffmpeg CLI isnât a minimal tool
Fair
"choosen" đ
its webvulkan
why does vulkan seem to be the future
isn't ease of use more important than perf in many cases
isn't opengl good for that
vulkan is horror
because like 2 people on the entire planet interact with vulkan directly its almost always completely abstracted and most developers dont have to deal with it directly
2 people on the entire planet actually need that much perf 
like in a game engine if you see a checkbox that says "use vulkan" and clicking it instantly doubles your performance while you have to do no shit except have the poor engine developers deal with vulkan more of course you will press it
i get worse performance using vulkan so it must suck
upgrade yo damn gpu its already crying
definitely unrelated to the fact my gpu is 12 years old
called it
yea and those 2 actually work with vulkan while everyone else uses the tools those 2 provide and build their shit on it
so it all works out in the end
extensible, fast, free
its HELL to work with, because vulkan DOES NOT hold your hand
its the "raw dogging assembly" of gpu rendering
but its really good
when done right
i meant more in the sense it seems like it's replacing opengl which seems sad
there are opengl -> vulkan translation layers
and dx is decent, but ABSOLUTELY PROPRIETARY
yeah but thats only for compatibility
not performance and features
i think its funny that proton translates dx to vulkan and makes some games get a performance boost i think that should tell u enough how performant vulkan actually is
this guy dumbed down opengl vs vulkan quite well: https://youtu.be/7cta91Y53gs?t=151
To try everything Brilliant has to offerâfreeâfor a full 30 days, visit https://brilliant.org/FilmStop/ . Youâll also get 20% off an annual premium subscription.
Khronos main Vulkan site - https://www.vulkan.org/
Vulkan documentation - https://docs.vulkan.org/guide/latest/queues.html
Vulkanised 2025 (Jeroen Bakker) - https://www.youtub...
dude unironically
i'm so hyped for linux
its looking so and so much better thanks to proton
I would be never hyped for linux again since i broke my Fedora VM and no way to debug it or anything
i can help you break your windows system instead
oh im the master of that too
shit i nuked my ubuntu install so many times that i've got re-installing ubuntu down to a t
same for my windows install
man the amt of times i re-installed win7 and vista as a kid because i deleted or fucked with smth i shouldnt have
sheeesh
Im sorryh but I will have to kill you now.
goodbye
It does actually usually run better.
from what i've seen its hit/miss
sometimes it does, soemtimes it doesnt
also very gpu dependent
i saw intels arc gpus fucking love that shit
Because they donât have OpenGL drivers
They run under a shitty translation layer. ZINC is better at it
they do
they dont have old dx drivers
just a shitty translation layer
MESA wants to remove open gl drivers and only use translation layrws
I didnât know DX11 was old
ehhh
kinda
i mean i agree with u
lack of dx11 support is questionable
but then again, the perf it gives them by not having to support it is great
many games that have these dx11 issues u can just run in vulkan or use dxvk
and you'll regain that lost perf
like almost all unity games can just be launched with game.exe --vulkan
and x10 perf, 0 bugs XD
Idk why it didnât reply to this
It was funny when Intel said fuck it and used DXVK
It depends on the game
But yeah
Arc itself is mid
It was over hyped as shit by LTT for having a hardware av1 encoder
LE AV1 STREAMING NOW
so from owning 2 pcs, one running a b580 and one running a 2060
arc is fucking insane
fine is a hardcore undersell, especialy outside of the americas
Oh outside the US sure
ex: eastern europe, brazil
i think the only issue i had with arc....
was mihoyo games, that i need to launch via vulkan
and thats it... there's nothing else
like all games just ran no questions about it
no fuckery, no configs
and it runs damn fucking well
its nuts
those chromium artifacts were kidna annoying for the first half year, but nvidia suffered the same thing, so i think it was a chromium thing
idk about the a series, i got the b series on launch day
and it was fucking nuts
and boi have i tried to get this card to... not work
but it just fucking works
yeah a series was dog, but that's behind us now
oh i know
one thing i miss
Nvidium mod for minecraft, cant run that...
go figure right!?
thats the only thing i REALLY miss on my arc workstation
that shit was great, 500 chunk render distance, 100fps
Too bad Intel compute is⊠where AMD was a decade ago
I take that back they have good ai accelerator support
But anything for generic compute
Like amd HIP is meant to be nearly 1:1 with CUDA in some aspects so itâs easy to change the target with just some define statements if youâre lucky
Intel has no such thing afaik
yeah see, thats why its a consumer gaming card
not a workstation computing card
Any card is a compute card
why is it called poop https://github.com/andrewrk/poop
Acronym for "Performance Optimizer Observation Platform"
could have swapped the words 
no fun allowed
mmmmm, appl,e
btw anyone with a jellyfin setup which gpu do you use to accelerate transcoding
i hear the docs recommend Intel Arc but idk
suppose that's because of good av1 support?
NVIDIA 1650
what workloads does it handle well
Idk, never had issues
Thereâs always a bit of latency jumping around, but that is more likely hard drive rather than transcoding
o
integrated or something like a 1650 like sadan said
there is a 1% chance youâll ever need anything better than integrated gpu unless youâre planning on giving 20 people access to the serverâŠ.
and they will all be somehow using it at the same time
oh okay
intel is great for transcoding because if quicksync meanwhile amd is very lackluster for the most part but if youâre going amd i still donât think youâd need dedicated gpu
yeah I doubt more than two people will ever use it at once
ideally you donât want to transcode anyway but ykyk sometimes it needs to happen
but as long as you have an igpu you should be pretty well off
also i wouldnât recommend a cache nvme either but if you wanna buy it then it wonât really cause any harm.funds might be better spent upgrading something though
hm alright
i donât have personal experience with it but from all of my research, apparently it was one of those things that was a definite âyes itâs neededâ to now being âno itâs uselessâ but i donât have the specifics or anything on that
if you could instead spend that extra money on a better cpu youâd likely have a better time with that instead though
oh really why is that
it's just one of those things that is nice to have but not necessary. if you will be video editing from your nas or something then you should absolutely get it, but otherwise you won't necessarily need it and money would be much better spent elsewhere. but of course you may wanna do your own research and stuff to determine if you think you would need it or not
it wouldn't really help much with basic file serving or something like plex/jellyfin but would greatly help if you intended to do intensive work through your nas for whatever reason... if you could, you should most definitely get an ssd if you haven't already, for boot drive and for all apps/docker containers. another way you would see improvement is if you do not have much storage, which if you plan to have a lot then it would be even more useless
i am not an expert though i am speaking purely from what i found from my research into building a NAS when i wanted to sooo
@ornate quiver help me
oh okay thanks
makes sense
what i just said to you could be completely wrong in every single way possible actually @ornate quiver
yeah you love spreading misinformation
you might have a specific use case where it is neat to have but it is far from something you would have to have so you should just do a little research and determine if it's worth
but i would say put money into cpu upgrade instead and make sure that you have an SSD for boot drive + apps/containers
5s of research says that people recommend more ram over dedicated cache drives
so i guess yeah
yeahj im probably gonna go nvme for boot and containers
so blobcatcozy @ornate quiver
is zls (zig lsp) lowk useless or am i just used to how good rust-analyzer is
it can't even tell me i used wrong amount of arguments in a function call before i build it ffs
rust-analyzer does workspace diagnostics on startup, zls prob doesnt
copilot review useless there's no way my code is this good
at least it did spot one obvious mistake
yeah but like what does zls even do
like the only errors it showed were when i forgot to put a bracket or a semi-colon
you configured it wrong then
the syntax checker and (everything else) checkers are typically different parts of the same lsp
for example, in rust syntax errors happen as soon as you edit the text, but stuff like mismatched arity only appear when you save the file
on apparently you can make it have build-on-save errors
@woven mesa they want too much from me
what does the app look like rn
Apple so insane
antrag is cute
however right-swiping an app crashes 
skill issue
works on all my devices
wat even is this app
antrag isnt urls guh
howwww
dis the app
@solemn ravine @nimble bone @spark tiger
i thought apps can't know what you got installed or what
well i mean i heard that banking apps bypass it somehow with like private api or something
needs pariting file + local VPN
oh
The app acts like a desktop computer
pariting file
so it can do desktop stuff like list applications via a tcp request
no banking app can use this
oh that's very interesting
Because they would need to ask the user to pair to a computer
which is⊠why would they do that
sorry i meant that how banking apps can detect whether your phone is jailbroken or not. i think they do it by detecting something in apps or whatever
i mean obviously they use another method
that doesn't require any user interaction
Thereâs many ways to do it, ts is just another thing (but yes this app can detect ts) but regardless this requires full blown knowledge that youâre doing this sort of operation, it doesnât hide it
A similar app does the same thing as antrag but donât list more information
i see thank u
but review seems to be asking too much from me
star trek so good
since one of my other apps do link to the same resources as this one
They canât accept that
you cant upload apps with beta sdks
imagine me trying to upload the vencord extension and it ends up me chatting with the reviewers for a few days straight
oh my gosh this was the image they gave me đ
god forbid I link to the project repo and give links to guides
Im not sure if this is smart the the dumbest shit ive ever made
i always try to make readable code when i write anything
I also have a sane .clang_format
UseTab: Never đ
I programmed
scary
@woven mesa idk if our approach for monitoring the clipboard is still good
need to reboot my mac so I turn off launchpad
i think its better for backwards compat
tbh Iâm not sure if thereâs another way either
TO WHAT
#warning("implement screenshots decoding")
if ur talking about feather then most likely I was the one who touched it lol
altstore repos suck yk
I think all of them are optional
so it just accepts anything given to it
maybe the apps array should be required at least
?
the unit tests are broken
oh righ
to altsourcekit
aaah
accidentally
xcode keeps defaulting to her phone before mine
oh i read it as fedora for some reason so i was like how tf do u accidentally install an os đ
i gotta eep fr
Plugin âLicensePlistBuildToolâ from package âLicensePlistâ must be enabled before it can be used.
Enable it now?
Build plug-ins with malicious code can harm your Mac or compromise your privacy. Be sure you trust the source of build plug-ins before you enable them.
idk what that is
enable it
what it do
ooohh
automatically
so true
super useful
license_plist.yml: Lines 1-32
options:
licenseFileNames:
- LICENSE
packagePaths:
- Package.swift
prefix: thewonderofyou.Feather
xcworkspacePath: "*.xcworkspace"
addVersionNumbers: false
singlePage: false
sandboxMode: true
force: true
manual:
- source: https://github.com/jkcoxson/idevice
name: idevice
body: |-
MIT
- name: "Zsign"
file: "Zsign/LICENSE"
- name: "ElleKit"
file: "LICENSE_EllEKIT"
- name: "LiveContainer"
file: "Zsign/LICENSE_LC"
exclude:
- swift-html-entities
- LicensePlist
- XcodeEdit
- Yams
- /.*-kit/
tbh I didnt like yml at first
but when I was setting this up I got more fond of it
its honestly fine when its kept super simple, personally
yaml is so cool but messing up indents is awful
the new xcode is nice
but the moment you deal with anything that makes you add like 6 levels of indents is... 
lmao
i saw it 
its still going
samsung galaxy whar
ah yes, xcode and smasnug
yea
this app is a monster
if u got vscode with the extension itâs pretty hard to mess up
but if youâre editing with like nano then good luck
I had trauma with python when trying to edit it with cli
fr
not every day they have to build a Turkish supermarket app
explod
idgi
@woven mesa do not look at the warnings
@solemn ravine my eepiness has gotten to me also unit tests are broken and i need more time to fix
can i look at it in morning pls
đ„ș
that's okay â€ïž
gg
@woven mesa LOL the apple clipboardviewer is source available
oh hell yeah
god damnit their code so bad
true
when i saw switch statement i assumed it was js
That's the boldest assumption ive ever seen đ
How did you think C++ was JS
wdym c++ is very similar to js they both have classes
and they both have switch statements

and they both have insane ugly ways of declaring private methods and properties
would there be any way for me to add this box with options to ephemeral messages somehow ?
when hovering over ephemeral messages ?
not that exactly but a button that would interact with the ephemeral messages contents, like a copy content button for example
or integrate the translate button for normal messages into ephemeral ones
friends
đ§âđ€âđ§
just because you type 5 less letters?
but i still think
private function something() {}
is better than both
#something()
or
private:
T something() {}
read my follow up message, i think they kinda are all pretty inelegant but i cant deny that they work
c++ private: is fine but c++ friends feel like bloat
yep đ fucking put function something() for c++
just add a comment saying // don't use unless you know me
i dont think so its kinda very ugly, just doesnt really fit in with the other syntax..
đŹ
thats true but i think id have prefered a block instead of randomly switching over to python mode
you can always do public: int pubFunc() if it's a one off
Which is nasty
dont husk me you know what i mean đ
why so
You should group by semantics, not arbitrary language limitations
good practice to group together internals
put public stuff at the top so library consumer knows what to use
Good practice to put privates near where they're used
i mean in c++ you define headesr and source files separately
It's so dumb that you have to define private stuff in header in the first place
Glad I still kept myself safe from the mess that is headers
programming languages not having headers confuses me
i sometimes feel like i need to edit header after editing something in source file
I haven't even done much c/++ lately

c++ developers anonymous
It's just that headers aren't necessary, technology has evolved since the 70s
And how many compilers support them?
This broke me the first time I asked this question
I was like âc++ finally has print!!⊠ohâ
how many of you rust devs actually have a job
Idk but when I search for zig Jobs I get 100% less results than when I search for rust jobs
instead of using REAL languages which get you a job you use languages which pamper you with pleasant print functions
for your TOY projects
the one person i talked to who had a programming job mentioned using assembly
I had a web dev job for 3 years and now Iâm searching for another one so yeah
actually yeah the truth is all you need is javascript
No I need js to get money so I can fund projects in languages I actually like
what if you made a rust like language that compiled into js
What if you cargo build âtarget=wasm32-unknown-unknown
fn main(window: dom::Window) {
let Some(cool_elem) = window.document.get_element_by_id("coolElem") else {
panic!("cannot find #coolElem");
return;
};
cool_elem.add_event_listener("click", |e| e.prevent_default());
}
do i have news for you...
wait is this even syntactically valid
u don't need to return after panic
fixed
oh
i assumed that was wrong
i had just panic before idk i'm a bad rust dev
That's spelled .expect("cannot find #coolElem")
use web_sys::wasm_bindgen::prelude::*;
use web_sys::{HtmlButtonElement, window};
#[wasm_bindgen]
fn main() {
let document = window().unwrap().document().unwrap();
let element = document.get_element_by_id("coolElem").expect("Could not find element");
if let Some(button) = element.dyn_into::<HtmlButtonElement>() {
let on_click = Closure::wrap(Box::new(move |event: Event| {
event.prevent_default();
}));
button.set_onclick = on_click.as_ref().unchecked_ref();
}
}
welcome to rust, this is possible
actually you might not even need the wasm_bindgen
whoops
but naturally it has a lot of unwrapping and boxing and moving
what if you had a language with music as a first-class feature
you could just write c# to play the note c#
maybe a good name would be C#
đ
Lilypond
special kinds of loops for different scales would go hard
i think theres some library for that
that compiles to wasm
and its dogshit

actually this is just alternative syntax that can also be played as music
iirc there are a few languages specifically for writing music algorithms with loops and instruments and stuff like that
It's really cool when someone writes live code in it, the music changes in real time
Sam Aaron Live Coding with Sonic Pi
Take the Sonic Pi Tutorial: https://sonic-pi-studio.teachable.com/p/sonic-pi-introduction
Please consider supporting me on Patreon: http://patreon.com/samaaron
For more info about the software being used see http://sonic-pi.net
Join the Sonic Pi Community: https://in-thread.sonic-pi.net
c++ is scary https://madebyevan.com/obscure-cpp-features/
i did know the first 6
c++ feels weird to me
in normal use i feel like it's fine apart from template errors
but learning c++ is like learning a non programming language
it's constantly evolving with new words like rizz
it has many obscure words like gongoozler
i guess words like gongoozler and ken are like compiler specific extensions
(in case you were wondering gongoozler is "a person who enjoys watching activity on the canals of the United Kingdom" and ken I have heard people from scotland say to mean "know" and they are both regional)
ok better example is antidisestablishmentarianism
i find it funny that people seemed to become aware of this word from that steam bug because i knew it for years

honestly error handling is the best thing about go because it showed that the developers felt schadenfreude
yes
it is indeed possible
why are you asking this in the programing channel
Didn't know these
really
howw
noob
i knew all but third there
the second is one of the first six but i did know it
I have written one C++ project ever
I need to do another one soon
@winged mantle do I do ui with gtkmm or QT
How so?
The 4[ptr] one isn't in c++, that's c
if go has byte why doesn't it have word, dword and qword

ah it's architecture specific ig
except windows of course thought it was smart to use those terms in the registry
it does have all of these
uint16, uint32, uint64







