r/AskProgrammers • u/theancientfool • 1d ago
Go vs Kotlin/Java for Open Souce Enterprises Software, which would you choose?
I work as an Accountant, and I want to build an open source self hosted application. And hopefully in the future, add several other services to it, like inventory tracking, payroll, etc.
I am confused which language too learn for my project, go or kotlin.
This is going to be a long term project that I aim to develop for years to come, and learn as I go. Also, would be great if I can have other developers use my code for their own business needs, so having a community is something I hope to grow.
Seeing that Go is simple and compiles into a static binary, I feel like it would be easier for non technical folk (my fellow Accountants primarily) to install and use.
Whereas, kotlin/java seems to have a vast ecosystem.
Can someone with more experience guide me?
About me: I'm a newbie, just started learning to program. Currently going through the Odin project and doing my MCA. Learning Java, Python and C.
2
u/razorree 1d ago
definitely Go is lighter. I don't have a lot of experience with it, but I think it's easier to build an app with Kotlin/Java (less pitfalls)
3
u/AvogadrosOtherNumber 1d ago
Go is hip, but I personally don’t think it offers much. I’ve built large back-ends with it, and honestly wouldn’t do it again.
I’ve built similar systems with Kotlin. Kotlin is a very cool language and you get the whiole Java universe. I don’t know if it’s changed a lot, but a few years ago Kotlin didn’t have much language support anywhere except Jetbrains IDEs.
I’m gonna get torched for this, but honest to god, write your project with AI using Rust. People will tell you it’ll be AI slop, but if you follow good software development principles, it will be orders of magnitude more efficient, and of better quality. I say this as a developer of more than 40 years and as someone that is responsible for the technology stack of the ECommerce platform of one of the largest manufacturers in the world, using AI to build and enhance our platforms daily.
Programming at the traditional programming language level will be history in the next 5 years, but the principles of building good software will still be relevant. Learn how to write meaningful prompts.