6 ms·
This isn't directed at this particular post, but more to HN in general. Why do I now constantly see "Tool XYZ (written in Go)" as though this is a hugely import
by Velox 11y ago
This isn't directed at this particular post, but more to HN in general. Why do I now constantly see "Tool XYZ (written in Go)" as though this is a hugely important aspect? I've never seen a "Tool ABC (written in Java)", so what's so great about Go? I know the features of the language help ensure "safe" development, but if someone was releasing software, I'd expect it to be relatively safe no matter what the language. So why is a tool being written in Go so important?
- platz 11y agoI agree, but maybe to shine light on what infrastructure and constraints will be required to support the tool in question?
- proksoup 11y agoAtom written in JavaScript makes atom more desirable to me as a JavaScript developer. As a JavaScript developer I can get my head around Go programs. Java hurts my brain, I'm not sure why. I like using programs I can get my head around.
- kbaker 11y agoAgreed in general... But, if you DO direct it to this particular post, you can see it is basically shelling out to get its parameters, or looking at /proc/, which you could just as easily do with bash + ssh. So the only benefit to using go for this is... the runtime overhead of the go libraries? I think this project was maybe just posted way too early, it doesn't even provide 'top' - there is no breakdown of CPU by PID which is why top has its name... all the files are committed yesterday...
- dkulchenko 11y agoTo me, "written in Go" is essentially shorthand for zero-dep, statically linked, single binary deployment. This is a pretty big selling point for command-line utilities like rtop, as opposed to utilities written in Java/Python/Ruby/Node/etc. which require their respective runtime to be installed.
- ecnahc515 11y agoYep. It immediately tells me that I probably will have zero issues deploying it, compared to many of the python/ruby/node etc apps these days.
- krat0sprakhar 11y agoThis. Knowing that a command line / server side tool is written in Go conveys that it's very easy to install and dependency free.
- pfraze 11y agoYou're probably getting downvoted for saying "This."
- krat0sprakhar 11y agoAh okay! Will refrain from doing that next time :) Thanks!
- deleted 11y ago[deleted]
- pjmlp 11y ago> as opposed to utilities written in Java/Python/Ruby/Node/etc. which require their respective runtime to be installed. In Java's case only by those that don't know what the Java eco-system offers. There are plenty of commercial JVMs that offer AOT compilation, including static linking. Plus as of Java 8, there is even a packager as part of the reference JDK.
- wtetzner 11y agoThere's also RoboVM for compiling to native binaries.
- axaxs 11y agoI'm curious to know more about these. Are any free? Are any open source? These aren't rhetorical questions, there's a ton of Java stuff I'd want to test it with. I tried robovm, it actually worked nicely but apparently only does 32 bit. Also, the simple reference HelloWorld was nearly 10MB, the build process took 20 seconds, and running it took 15x longer than a comparable one in Go. I don't mean to knock it, what it does is amazing, but it's not a viable replacement for simple static command line tools.
- notduncansmith 11y agoI don't think it's about Go itself (as if that makes the software better), but moreso that if you're a Go* developer, you may find the source of such a tool interesting - while Go seems particularly well-suited to writing system utils, perhaps there are parts of the codebase that seem like they may be difficult to implement in the language. Additionally, if the source is in a language one is familiar with, one may find that codebase leading to a deeper understanding of the tool itself. * Go here being a proxy for any language. The same goes for Rust, Haskell, Javascript, etc - this trend certainly isn't unique to Go.
- deleted 11y ago[deleted]
- skybrian 11y agoIn the early days of Java, people did say "written in Java" and pure Java libraries were a thing since they're easier to ship as part of a Java app than wrappers of native libraries. Java has never been very good for command-line tools, though, due to startup time.
- sysk 11y agoSome variant of this comment is also constantly being made in "X written in Y" threads and it's getting a bit annoying. (https://news.ycombinator.com/item?id=8907143 https://news.ycombinator.com/item?id=8907143, https://news.ycombinator.com/item?id=8751303 https://news.ycombinator.com/item?id=8751303, https://news.ycombinator.com/item?id=6160293 https://news.ycombinator.com/item?id=6160293, https://news.ycombinator.com/item?id=5436736 https://news.ycombinator.com/item?id=5436736, https://news.ycombinator.com/item?id=9061312 https://news.ycombinator.com/item?id=9061312, https://news.ycombinator.com/item?id=8163537 https://news.ycombinator.com/item?id=8163537, etc.)
- Dewie3 11y ago> I know the features of the language help ensure "safe" development, Safe development? What does that mean?
- dang 11y agoI think it's just that the audience is full of programmers who are always curious about how stuff is implemented. Pretty sure there have been plenty of posts saying "written in Java", though of course fashionable languages get more of this.
- iand 11y agoIn the early days of Java, there were tons of articles titled XXX written in Java. Just go look at some early Slashdot or JavaWorld.