Any details on the game you’ve been working on? I’ve been really enjoying Ebitengine and Golang for game dev so would love to read about what you’ve been up to!
I've been playing with multiplayer games that run over SSH; right now I'm trying to push the framerate on the games as high as I can, which is what got me thinking about my networking stack.
I mostly use go these days for the backend for my multiplayer games, and in this case there's also some good tooling for terminal rendering and SSH stuff in go, so it's a nice choice.
(my games are often pretty weird, I understand that "high framerate multiplayer game over SSH" is a not a uhhh good idea, that's the point!)
Two things that can have a big impact on SSH throughput are cipher choice and the hardcoded receive buffer size. These are described in the fork https://github.com/rapier1/hpn-ssh
Maybe that will be useful for thinking about workarounds or maybe you can just use hpn-ssh.
This is fantastic! Definitely the ethos of "HackerNews". What programming language did you end up choosing to implement this? I'm eagerly awaiting part 2.
It's possible they weren't aware of it and were answering honestly. Systems can grow incredibly complex. These dependencies and contracts became not-so-well-defined after long periods of time.
It was half a year after the launch of Google docs, pretty sure many had similar views at the time. Feels like the browser side peaked at the time and we are still about there, at least among the stuff I use there isn't anything more complicated than google docs still today 15 years later.
I wouldn't say it's foresight, more like recognizing a trend.
By 2006 I worked as an intern in a company that made rich web based apps, basically a competitor to Google Spreadsheets if you will. There were numerous startups doing similar stuff. It was basically a mainstream thing.
At the time I remember a bunch of people mocking up desktop environments inside a browser -- not necessarily useful but it was one of the fun things to do with the capabilities of the browser. AJAX was the cool tech that everybody wanted to use.
I don't think anyone at the time could have foreseen that Javascript would become the sophisticated mess with new frameworks displacing the existing ones every other year, but browser-side programming displacing traditional UI toolkits was well on the way by then.
2006 was the hey day of flash games, so the moving to browser part was already pretty clear, but that it would be web based APIs less so. canvas was still new/didn't work very well back then iirc.
Neat! I was curious why types came after the variable name for structs, but for functions they came before the variable name. Are you in the middle of transitioning from one to the other right now?
e.g.
struct MyStruct {
x int
}
struct MyStruct2 {
y string
}
func Int add(Int x, Int y) {
return x + y
}
Definitely. In a _separate_ article, the scientist kills a “puppy-sized” Goliath birdeater spider. In this article, the scientist returns home with bot fly larvae in his arm.