4 ms·
What does "modern" mean in this context?
by kgeist 2y ago
What does "modern" mean in this context?
- alex_medvedev 2y agoIts written from the ground up and has a clean foundation (which is not the case in vanilla minecraft server code). We also want to use cool modern features like multi-threading or the rust language which is a modern language designed to fix mistakes from older languages
- philipwhiuk 2y ago> cool modern features like multi-threading Java 6 had multi-threading
- Imustaskforhelp 2y agoI read this in the most satirical way possible like as if a godly narrator said it calmly. It was really funny. It felt like a Satire LMAO
- nijave 2y agoThe limitation isn't the Java version, it's the way the MC code was architected. Iirc part of original Minecraft's performance limitations were high object create/destroy rate leading to lots of garbage collection. With that in mind, picking a non-GCd language isn't completely crazy.
- kgeist 2y agoIt was the other way around: say, the original code as written by Notch had functions like setPosition(x,y,z) and it was okay. When Jeb got in charge, he said "it's not object-oriented enough" and rewrote everything to setPosition(position). And boom, 1GB/sec allocations...
- intelVISA 2y agoHow horrifying!
- philipwhiuk 2y agoI'm just saying, there's nothing "modern" about multi-threading.
- giancarlostoro 2y agoWhile Java does, the Minecraft server architecture does not.
- plandis 2y agoI think they are being sarcastic because the vanilla Minecraft server is heavily single threaded.
- xxs 2y agojava 1.0 (even 0.9) did have. The 1st language with a memory model was java 5 (1.5), which was back ported to 1.4.2. 1.4(.2) already had non-blocking I/O as well. Why pick 6, though?
- philipwhiuk 2y agoI just picked an old enough version that I knew had it and the original Minecraft could have chosen to use. (I've never written pre Java 6 code)
- deleted 2y ago[deleted]
- slgeorge 2y ago"Modern" seems to be used a loose adjective these days for "I rewrote $thing [in Rust]". Minecraft was created in 2011, and is Wikipedia says the last version of the 'classic' edition was released in 2017. So anything after 2017 is now defunct. I don't mind people rewriting things in <insert-name-of-tech-I-like> but "modern" as a value seems pretty loose, and it's often at least arguable whether it's objectively better!
- codetrotter 2y ago“Modern” more usually means some new JavaScript thing. In JS land, they consider anything that hasn’t had a commit on main branch in over 3 days to be a dead old project in need of being replaced with something new and “modern” that is up to date with the latest trends and breaking changes from the previous 24 hours of their world. Usually the hyperbolic superlative for Rust projects is “blazing fast”. Of course, any kind of benchmarks or comparisons with other implementations are completely optional. It is simply enough to “cargo init” and start hammering out code. You don’t even need to consider the characteristics of the algorithms you choose to use! If it’s Rust, it’s “blazing fast”.
- c-hendricks 2y agoWhere's that meme of the guy painting demons then laying down on the floor in fear when you need it.
- renewiltord 2y agoYour most starred repo is inferior to a shell one-liner lol. Talk about pot calling the kettle black. Just use the system dict, shuf, grep, and head. It’s bad form to badmouth someone’s earnest work for sure. I wouldn’t do it normally since I think it’s nice that you actually did something. But if you’re going to sit in a glass house and throw stones you should expect some back. Fortunately, my house is an underground burrow so I can throw stones with impunity. As ugly as it is to do.
- codetrotter 2y ago
- jspaetzel 2y agoModern in software terms almost always just means recently written. Last couple years. It's a pretty useless adjective to describe software. E.g. sqlite probably wouldn't be called modern, but everyone loves it so who cares.