We knew this would happen.

Looks like Microsoft is finally ruining Minecraft again, except now for the Java Edition version!

What we thought was a safe haven where we’d have servers completely owned by individuals instead of Microsoft-supported and promoted companies has now turned into a pile of rubbish, as Microsoft is now implementing universal singleplayer, multiplayer, and Realms bans, including bans for other versions included in the launcher, with the 1.19.1 update.

What’s funny about this is that, with “allowed tools, plug-ins, and services” (as described in the Terms of Service of minecraft.net), the reporting process can be automated easier than in Bedrock, as Bedrock modification libraries are completely memory based compared to the Java modification libraries, allowing you to easily write code in Java and add the mod to your client. This means that in Java, you could simply get a list of the players on the server, and automatically report the players one-by-one.

This can also possibly mean this ACTUAL discontinuing (inferentially confirmed by the new “secure chat” feature in the 1.19.1 Minecraft News post) of the short-lived MojMaps, the official obfuscation mappings for Minecraft, to allow easier mod development, as people could soon abuse things like this. No public documentation for MojMaps has been posted since the 1.17 update, possibly due to planning for bans like this.

One announcement has confirmed the addition of a “Player Chat Reporting Tool”, describing that this, on even private servers that define their own rules about chat messages, will allow other players to ban “hate speech, bullying, harassment, sexual solicitation, or making true threats to others.” That’s bad for servers like 2b2t, who allow players to do or say whatever they want. The affecting of private servers is also confirmed in the update post.

While 2b2t has no plans of updating to 1.19.1, the ViaFabric mod allows people to connect to 1.12.2 servers FROM 1.19.1, allowing players to also mass-report players from those servers as well.

Overall, Microsoft’s takeover of Minecraft has ruined the game for everyone. Very expected for a company that charges $90 for a charger that melts in 4 months.

Does programming affect your grammar?

Short answer: who knows?

Long answer: I’ve started out programming with angry and tight grammar, but it seems to be getting calmer and flow-y I guess.

This may seem interesting, but maybe it’s since:

1: I’m taking rigorous ELA tests and quizzes and study daily.
2: I type emails a lot in really tight grammar to maintain readability and formality.

But there may be another thing introduced, programming.

I code a lot. Multiple projects a day. I give up on some, start others, give up on those eventually. Takes up LOTS of storage space and I need to clean often. But will adapting to short and concise syntax lead to grammar issues in the real world?

From what I see, it doesnt really. Just makes it slightly worse. 🙂

Thats it, bye.

How Kotlin Changed JVM-Based Languages.

This was originally going to be a guest post on Forbes, before I realized they weren’t accepting guest posts anymore. Oh well!

Kotlin is a cool programming language. While there are many disadvantages, such as having an elegant syntax yet having a huge learning curve), there are also many advantages. The surprisingly simple syntax is one thing, with fun instead of public static void, whatever in Java. But let me tell you about something pretty interesting.

Java has explicitly-typed object definitions. What I mean by that is:

  • void is mainly used as the return types for the main method in a program.
  • You can only make variables with a certain type (think int, boolean, etc.). But in Kotlin, things get very interesting. It’s actually almost like JavaScript:
  • "val" defines a certain value.
  • var defines a value that can be changed, like you can increment a var by using x += 1

See the difference? But, one thing is: Kotlin actually does have explicit typing, we just don’t need to use it (for only variable definitions). Look at this valid Kotlin code:

fun difference(a: Int, b: Int) : Int {
        return a + b;
}

Yeah, but if you want to use it in var definitions:

var a: Int = 0

This means you can validly use explicit typing if you want to.

Now how does this "change jvm-based programming languages?" Kotlin is mainstream in both Android and some Java development. Even Android is trying to phase out Java in their development. Kotlin has automatic type inference when compiled. Even though it causes slower compilation, Kotlin does automatically match up your variable with the type it’s supposed to be, as long as it doesn’t have explicit type definitions (which makes it faster). Everything is automatically casted to the required type. If you really need to do explicit casting, the as operator is there for you.

Kotlin is there for you, even though it’s pretty hard to learn. It has very concise syntax, but it has has slow type inference when you need to declare a variable. Explicit type definitions cause faster compilation time, as Kotlin doesn’t need to find the required type.

Alright, peace out.
- acaiberii