Your Web News in One Place

Help Webnuz

Referal links:

Sign up for GreenGeeks web hosting
April 10, 2023 05:00 pm GMT

Is There an Equivalent of Spring Boot for Kotlin?

If you look at my DEV profile, or meet me in person at a Meetup, I am sometimes the kind of guy that can't shut up about the fact that Rust-empowers-you-to-use-computer-memory-safely-but-with-zero-overhead. But in my case about how I enjoy Kotlin on anything that doesn't start with "And" and ends with "roid", and in particular on the backend side of things.

The darker side of the story

It's my time to be honest and reveal that there is a darker side to this story.

Actually I already wrote about this, because it's a reccuring irony of my life.
TK Kotlin is not Android

But I'm job hunting right now, and it is hitting me again. Just because there is Kotlin on my CV, the LinkedIn beast is assuming once again that I am an Android enthusiast and is eager to overwhelm me with all things Androids. And linking to my article above doesn't help. And putting "I am NOT an Android developer" as first line on my LinkedIn profile doesn't help.

And I take a deep breath and I get real high

And I scream at the top of my lungs

What's going on ?

What's going on?

The simplest explanation would be that there are lots of Android jobs but few backend jobs. But only the first half is true, it's not the whole story.

Is there an equivalent of Spring for Kotlin?

I was discussing in a Discord with a relatively senior backend developer. He asked me how I backend stuff, so I started not shutting up about how I use Kotlin. He was polite but also skeptical. Clearly not the first time he had heard about Kotlin, but it was not convinced. But still interested enough.

And then, he asked me this:

Is there an equivalent of Spring for Kotlin?

I was struck by the simplicity of that question.

So I took a deep breath, didn't get real high, and without screaming, I replied simply:

Absolutely: the equivalent of the Spring Boot for Kotlin is.... Spring Boot itself.

Now it was his turn to be struck by the simplicity of my answer. So I went on.

Spring with Kotlin works the same and like a charm. Sbastien Deleuze from the Spring team in particular did an epic amount of work to polish that experience.

At that point everything clicked for him, and he was in mode oh my god, didn't realize that, I'm going to try it, and then he messaged me a few days later to thank me that he did.

Kotlin biggest problem?

A second fun discussion with a simple question and answer happened recently on Slack.

This time it was with an IT professional trainer. He gives training on all sort of things, including Java and Kotlin. Obviously, I asked how that went but he replied.

  • Kotlin training is kind of boring to be honest. If the audience already know Java, it's mostly the same concepts under new clothes. Right, a few new concepts here and there, but you can cover that quickly and be done.
  • Well you are right, probably not great for a 2 days workshop. For us on the other hand it's a good thing that you can take an existing Spring/Java developer, take her real expertise (backend programming) and help her learn Kotlin quickly.
  • Fair enough. But now hear me on this: do you know what Kotlin biggest problem on the backend is?

I've had this discussion before, so I could easily imagine some bad and a few good answers to this question.

But I sure wasn't expecting this one:

Kotlin's biggest problem is its name.

Different Languages, the same Java Ecosystem

I wish

So Why Didn't JetBrains use a Name Closer to Java?

When I'm job hunting, I wish indeed that Kotlin was called something much closer to Java.

Which name? It couldn't be Java 2.0 because Java itself is improving (version 20 now) and that's a good thing that the whole ecosystem goes forward.

Maybe Java++? When TK called its language C++, he found probably the most effective way to both claim the legacy of C, the big master of the day, and that he wanted to offer something better.

Now the issue is that C++ is a strict superset of C, so everything that works in C needs to work in C++. That makes for a super smooth transition: there is this story that I choose to be true, that many of the early C++ developers were C developers who only wanted to use one-line comments. That also brings a long term huge technical debt, because everything bad that exists in C is still in C++ by definition.

Kotlin is not like that, it is more a refactoring of Java. JetBrains deliberately broke backward compatibility, they left out the parts of Java they found didn't work well in practice, like the billion dollar mistake or checked exceptions.

The names Java and Kotlin are in fact linked

Many people know the origin story of the name "Java", but it became such a huge success that I would guess that many many more don't know it. In fact, while researching for this article, I realized that Java's origin story is more complex and mysterious than I thought.

Here is my simplistic version:

Java engineers were struggling with the names they had like Oak or WebRunner so they went to brainstorm. They were drinking their favorite foreign coffee from the foreign island of Java, Indonesia.

Image description

Now Kotlin's origin story sounds familiar

Kotlin engineers were at JetBrains office in Saint Petersburg looking for a good name. They remembered the beautiful foreign island of Kotlin just outside.

Image description

So in case you missed it, there always was a clear link between Java and Kotlin.

If you knew it already, doesn't matter, LinkedIn will always assume that we are Android enthusiasts.

Thanks for reading

Please send the article to a friend that needs it.

Hi, Im Jean-Michel Fayard. On my website, you can ask me a question or see some cool programming memes.


Original Link: https://dev.to/jmfayard/is-there-an-equivalent-of-spring-boot-for-kotlin-hfg

Share this article:    Share on Facebook
View Full Article

Dev To

An online community for sharing and discovering great ideas, having debates, and making friends

More About this Source Visit Dev To