« first day (4938 days earlier)      last day (40 days later) » 

12:28 AM
@user Reminds me, I was just reminiscing about Canvas a couple days ago
 
5 hours later…
5:28 AM
@RydwolfPrograms Is it actually returning? πŸ₯Ί
In a few days, if all goes to plan :p
It'll probably mean I won't prep my workshops and presentations for the upcoming conference, but whatever, there are tanks to be shot at.
5
Let me know if you need any programming help :p
Is the backend still nodejs?
Nah, it'll be in Go this time
Ah, neat
5:32 AM
The stack's Ho/TypeScript
err...Go
Cool!
I assume you're adding stronger anticheat to the backend this time?
And I'm using Vite finally lol
Nice :p
@emanresuA probably, I'm still figuring out how the netcode will work
Cool! Full lockstep is probably the most reliable way to go, but also your frontend/backend are separate codebases and lockstep is hard
5:34 AM
There's going to be a lot more customization for the tanks this time around
They'll also move a lot faster
6:26 AM
Doing some weird pseudo-macro register machine stuff for my computability theory course and I'm having flashbacks to writing my tinylisp interpreter
6:41 AM
@DLosc This one sees more activity though. I could check that one out still.
@emanresuA Interesting.
What's that black line there?
0
A: Sandbox for Proposed Challenges

mattgFibonacci sequence without using numbers/digits in the code Your task is to print the Fibonacci sequence starting with "1 1" up to 832040, but without using any numbers or digits in your code. Each number needs to be calculated by the program, not read from a file, taken as input etc. The expecte...

6:55 AM
@The_AH Page break in the pdf
Couldn't you use just Python? Why specifically this pseudo-macro setup?
(for example, something like C is also fine.)
We're using a very specific register machine language, plus various macros we've defined using that language
Well does this language have an implementation or just a spec (or a spec at all)?
spec: you have as many numbered registers as you want, you can increment/decrement a register and loop while a register is zero/nonzero (also if statements)
Basically a slightly more powerful(/readable) version of minsky machines
And while statement.
Or is that a defined macro?
@emanresuA got it.
7:00 AM
Technically yes, there's a defined macro for while [condition] where condition is some function call
Alright.
That's a lot of customizability lol.
But cool to see.
 
1 hour later…
8:11 AM
Do a_0+a_1x+a_2x^2+...+a_kx^k+O(x^(k+1)) have a name? It has bad property(e.g. = isn't symmetrically, x=O(x) but O(x)=/=x) but it's useful
Hmmmm
Reminds me of a game I've played where there are Technological Upgrade and Research Device(s)
8:27 AM
0
A: Sandbox for Proposed Challenges

l4m2Lenguage with given factor Given length of a lenguage program and an integer k, output an equivalent lenguage program, whose length is a multiple of k. Here, bijective octal is used, with the following mapping: 1 + 2 - 3 > 4 < 5 . 6 , 7 [ 8 ] Test cases(bijective octal IO shown, you can ...

@emanresuA Gaming got me into programming.
And many others too.
It's a really good (and interesting) gateway.
Alright I ama try to solve a codegolf challenge.
Fun fact: Microsoft teams has a minecraft background feature
(for some reason my browser exited while I tried to post the previous message.)
Fun fact: my lecturer did not realise that it was a minecraft background
Lol.
You mean the background that displays in the loading screen, end poem, etc?
8:35 AM
I need to create SVG outlines for a bunch of PNGs. The raw output of the converters was way too complex, so I spend a long time trying to tweak the quality settings or figure out how to simplify the SVG in post. Turns out the most effective way is just to downscale the image before even starting the process
@The_AH see below
I see.
That's the image
I honestly wouldn't been surprised for the dirt ones.
But this one is obviously Minecraft.
 
5 hours later…
1:13 PM
@RydwolfPrograms rollback rollback rollback
the other group members in the uni group where the minecraft background was used got to experience the joys of comic mono today
"Is that comic sans?" one of them asked, presumably in horror
(because I screenshared code in vs code)
Wait what's returning?
 
2 hours later…
att
att
3:05 PM
@lyxal surely admiration
att
att
3:29 PM
@l4m2 a power series?
3:42 PM
@lyxal out of curiosity i decided to try out comic mono in intellij and im... liking it????
LYXAL WHAT HAVE YOU DONE
 
2 hours later…
5:40 PM
Well that was awkward
Just called the architecture firm that designed my high school to try to get the blueprints
The front desk lady asked for some information I don't have about the project number/project manager, put me on hold while she searched for information about it, then asked me for my company's contact info and I was like uh..."does a school email work?" and she put me on hold again and was like "here I'll give you one of our architect's phone numbers" lol
If the look you give something strange stuck to your shoe could be communicated purely verbally it's what I received over the phone when I said it was for a personal/school project πŸ’€
...Just did the new round of that challenge thing Dyalog runs and
I will say
I find the semantics of APL's scan a little surprising :P
what, that it's ltr but with a rtl reduction?
5:46 PM
yeah it's kinda weird
it makes sense for normal reduce to be rtl though because the evaluation of code is rtl
I'm used to scans being "reduce except saving intermediate results", but this is more like a "prefix-mapped reduce"
but then you introduce scan and it becomes confusing
@UnrelatedString yeah, in j you spell it "on prefixes reduce"
@RydwolfPrograms Usually you can get these from the building department very easily.
Sometimes you have to go in person if they haven't been digitized though.
6:02 PM
@RydwolfPrograms mfw
I don't understand why you subject yourself to Go :p
6:17 PM
@UnrelatedString you can see how much performance drops when the interpreter doesn't know that the function is associative and therefore doesn't optimize to ltr reductions (it becomes quadratic)
      cmpx '+\?1e4⍴10' '{⍺+⍡}\?1e4⍴10'
  +\?1e4⍴10     → 0.0E0  |        0%
* {⍺+⍡}\?1e4⍴10 → 1.1E1  | +1057200% βŽ•βŽ•βŽ•βŽ•βŽ•βŽ•βŽ•βŽ•βŽ•βŽ•βŽ•βŽ•βŽ•βŽ•βŽ•βŽ•βŽ•βŽ•βŽ•βŽ•βŽ•βŽ•βŽ•βŽ•βŽ•βŽ•βŽ•βŽ•βŽ•βŽ•βŽ•βŽ•βŽ•βŽ•βŽ•βŽ•βŽ•βŽ•βŽ•βŽ•
At least it knows how to optimize when it does know it's associative :P
Can a few people open up a browser console on example.com and run this?
var ws = new WebSocket("wss://rydwolf.xyz/rto/ws");
ws.onopen = () => console.log("open");
ws.onmessage = (event) => console.log(event.data, Date.now());
ws.onclose = () => console.log("close");
It should print 100 lines
Then tell me the last 3-4 digits of the first and last line's timestamp
(I'm trying to figure out how often I can get away with sending updates for Tanks 2.0)
Data from Australia/NZ, Europe, and Asia would be especially helpful
Okay even through a VPN US->Australia->US it's taking like 500ms max to send 100 packets
And that's TCP with WebSocket overhead
I should be good to do 20 updates a second
6:41 PM
3580 3685 from italy
ooh that's good throughput
oh cool first time i see who's typing working
The worst numbers I've seen from messing around with VPNs would still allow roughly 200 updates per second, so I think I'm overthinking things
Maybe the things I've read on how often you can send updates are outdated
 
2 hours later…
8:15 PM
@RydwolfPrograms 7636 7836
Seems to always be exactly a packet every 2ms
(from NZ btw)
@emanresuA hm, interesting
for me it usually comes in chunks
att
att
8:35 PM
9356 9446 from ch
all times within 10 of the endpoints
9:21 PM
@Ginger I will not accept this Go slander :p
It has its issues but Go really feels like the sort of language that would be very pleasant to use once you've got some experience with it
9:39 PM
Go is uh... at the very least not fun to golf in
ayy I got my student health insurance cards. For some reason CMU actually has great health insurance
I think technically the insurance is already active
I used to work in golang professionally. It's a mixed bag. It has a very strong design philosophy, but we had problems with structured data. Particularly there was no way to structurally verify DB queries at compile time, which is not ideal.
I like golang, but I don't think it was really the use for it.
And I'm not sure what the use for it even is.
It's great for little servers
Go's good at like, concurrency and channels and stuff, as well as stuff with side effects
When something's little it hardly matters what tools you use IMO.
Well, medium-size ig
9:44 PM
@RydwolfPrograms kotlin handles that very well too
For something truly little I'd probably use Node to minimize boilerplate
Yeah, I worked in Kotlin before golang, I had a nicer time even though the Kotlin project was several times larger. But really it was all about the DBs. I was working in user data so very DB heavy.
10:20 PM
@Seggan if it wasn't good I wouldn't still be using it since May
It's horrifying at first to think a joke canaactually be really good
But you get used to unironically loving it
10:36 PM
TIL that chat pins expire
Would be kinda weird if they didn't
I guess yeah, I just assumed people manually unpinned them after they were no longer useful
Since anything permanent-and-chat-relevant should be in the description, and anything that isn't both of those should be either a temporary pin or on meta
@emanresuA And imagine how weird it would be to be a mod having to decide when to manually unpin the Razetime thing
So uh... I repinned that after it got autounpinned the first time, and I assumed someone had made that decision
I was wondering why it was staying up for so long
Figured my perception of time was just far more off than it apparently was
10:55 PM
@emanresuA chat pins expiring is the reason rooms like chq have had to devise workarounds to keep important information pinned :p
11:09 PM
oh my god I'm going to defenestrate myself and/or the Go programming language
Just spent like an hour debugging something that turned out to be a time-dependent bug involving UTF-8 decoding
2 hours ago, by Rydwolf Programs
@Ginger I will not accept this Go slander :p
My websockets kept mysteriously closing and I could not figure out how. After some debug printing I figured out it was due to the websocket murdering itself and giving a 1006 ("closed abnormally"). I spent ages copy-and-pasting bits of the code to a new program to see at what point it would break, and eventually figured out it was the part of the code which adds a timestamp to the messages, which took like half an hour since why would it ever be that
Well, turns out I had it set to text mode, and the serialized date happened to contain a byte that was invalid UTF-8 at the particular time I started working on a wholly different feature
This is like, probably the second worst bug I've ever dealt with in terms of making you think you're insane (after the chrome dev tools bug)
I don't even know who to blame for this
I'mma say it's mostly on Firefox, actually. I would blame the WebSocket spec for making it so vague (1006 could mean a zillion things), but there's maybe security reasons to not send that in the error code. On the client side in the debugger, however, it should totally be explicit ("closed websocket with 1006 due to invalid UTF-8" or something)
(unless it's actually the websocket server library I'm using that's doing its own UTF-8 validation, in which case it should really give some sort of descriptive error)
see also:
wait hold up I think it does, the basic boilerplate code I'm working with just silently discards any errors from the writer...
I guess out of an assumption they'd always be a client side issue
So I think I can evenly distribute the blame among five parties
one might even say δΊ” parties

« first day (4938 days earlier)      last day (40 days later) »