Hacker News new | past | comments | ask | show | jobs | submit login

also, "written in go" fatigue. Can't wait for this trend to die.



Here the author. If you dislike Go then that makes two of us :)

But more seriously, I wrote a bit about the why in https://github.com/rach/pome#why-building-pome

To keep with the simplicity that I was aiming, I wanted a binary. I considered Rust, Haskell or Go (Swift was not opensource yet at the time) but went with Go because the libs that I will need (cron like scheduler, embedding assets, etc).

I had never written something in Go before but if I've known go then maybe I would have pick an other language as I started this project with a learning motivation.


> went with Go because the libs that I will need (cron like scheduler, embedding assets, etc).

Haskell has a cron like scheduler. What do you mean by embedding assets?


I suppose he's referring to embedding files (usually web resources such as js, css files) into the source code, using a tool such as go-bindata [1]. The assets are then accessed as variables.

[1] https://github.com/jteeuwen/go-bindata


Haskell has a library for this called "embed-file".


Haskell does but I'm comfortable in Go and easier to get people to contribute


From a deployment standpoint, having a tool written in Go is a win for me since it is much simpler to get running than something in python or ruby which almost certainly has a larger dependency tree.


> From a deployment standpoint, having a tool written in Go is a win for me.

Deploying Go apps is not always easy from my experience(cross compiling for Android ARM). You need to cross compile Go source code for the target platform and it's not as simple as you hear from Go's tutorials on the internet. Most of them only demonstrate how to cross compile a small simple Hello World application. For actual app, you have dependencies from third parties and it's not always easy to cross compile with those deps especially when they rely on low level APIs(cgo).


Except the Go deployment story is nothing new and is available to any programming language with AOT compilation to native code that has ever existed.


For Java/C#/Ruby/Python/Perl/Javascript etc which constitute huge amount of business related apps development it is new and convenient deployment strategy .


Scripting languages don't have AOT compilers to native code.

Java and C# do have AOT compilers to native code, capable of producing static executables, you just need to buy them.


C# will have free native compilation soon.[1]

[1] http://www.hanselman.com/blog/ExploringTheNewNETDotnetComman...


I know about that, but as of today you can only get it for free with Mono or Windows Store with VS 2015.


As of the (now quite old) 4.2 release of gcj, static linkking is quite simple (as opposed to before, when it seems like it was possible but somehow frustrating).


I no longer consider gcj since it is dead since 2009, as the majority if the guys left to work on OpenJDK.

It hasn't yet been removed from GCC due to the set of unit tests it provides.


Yeah, we get it, HN doesn't like Go.


No, HN doesn't like Go advocates presenting features common to all compiled languages as if it was something discovered by the Go team.


Do you hate "written in Go" specifically? 'cause if you search for "written in" you'll find plenty of Rust, JavaScript, Python, and insert-language-here articles.




Consider applying for YC's Spring batch! Applications are open till Feb 11.

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: