Live data from Hacker News

Ask HN: If I only learn one static typed language, which one should I learn?

news.ycombinator.com

11–20 of 67 posts

Re: Ask HN: If I only learn one static typed language, which one should I learn?

#11

I found Golang a pleasure to learn and use. Its minimalism allowed me to pick it up fairly quickly, and features like its baked in documentation allow you to build your libraries as a seeming extension of the language.

If I only learn one right now will I regret choosing Golang over Java?

Golang is focused on scaling/concurrency, is very compact and fairly quick to learn. You can compile a single binary and deploy it anywhere. You can build a web server in a few lines of code. It's really strong for processing tons of requests, web API's and backend code.

Java requires a whole app server which is more of a pain to setup. (generally speaking for web dev, think Tomcat, JBoss). It's way more verbose and you really need to rely on the power of an IDE to help code for you, importing class libraries, etc.

Spend a few hours with each, they're very different. Coming from Node/PHP you should be able to pickup Golang faster.

Re: Ask HN: If I only learn one static typed language, which one should I learn?

#12

Earlier quoted context omitted.

If I only learn one right now will I regret choosing Golang over Java?

Golang is focused on scaling/concurrency, is very compact and fairly quick to learn. You can compile a single binary and deploy it anywhere. You can build a web server in a few lines of code. It's really strong for processing tons of requests, web API's and backend code. Java requires a whole app server which is more of a pain to setup. (generally speaking for web dev, think Tomcat, JBoss). It's way more verbose and…

Agreed. If your speciality is in DevOps, it's probably going to be golang for you. We wrote a blog post about it here: https://blog.bluematador.com/posts/mini-guide-google-golang-...

Re: Ask HN: If I only learn one static typed language, which one should I learn?

#15

Earlier quoted context omitted.

If I only learn one right now will I regret choosing Golang over Java?

Golang is focused on scaling/concurrency, is very compact and fairly quick to learn. You can compile a single binary and deploy it anywhere. You can build a web server in a few lines of code. It's really strong for processing tons of requests, web API's and backend code. Java requires a whole app server which is more of a pain to setup. (generally speaking for web dev, think Tomcat, JBoss). It's way more verbose and…

In the JVM ecosystem you can use Jetty and have a simple embedded App Server. No need to install or configure Tomcat/JBoss, etc.

Spring Boot and Dropwizard makes this dead simple, a single .jar file with everything you need to run your app.

Re: Ask HN: If I only learn one static typed language, which one should I learn?

#17
post #5

What are you trying to achieve? Change the way you think about programming problems: Haskell Enterprise Development: Java. Maybe Scala? Apple Ecosystem: Swift (and actually, it seems like a kind-of pleasant language for general server-side use). Low-level: C++. Or maybe Rust (although not yet given that a serious whirl) Edit: oh, if you're broadly happy with JS, Typescript is worth a look and might (depending on your…

C# is definitely more prevalent than Scala in Enterprise environment. In my experience even between Java and C# it's close to a 55/45 split in Java's favor. Most of the OG Enterprise jobs that people think of like banking will be Java, most of the rest will be C#.

Re: Ask HN: If I only learn one static typed language, which one should I learn?

#19
c# is really slick. It really is java without the suck, and with dotnet core / roslyn / azure / asp.net, it's increasingly viable as a cross-platform and web language (with the caveat that the only decent native UI toolkit is windows only). AWS lambdas support C#, as does Unity for game development.

Re: Ask HN: If I only learn one static typed language, which one should I learn?

#20
post #13

If you want to really focus on the frontend, I suggest Typescript. If you want to focus on backend technologies, I suggest Java. If you have other goals, I think there are a lot of other great answers. :)

Typescript is not, strictly speaking, statically typed.
Post reply on HN