Areas where golang can be used???

459 views
Skip to first unread message

Kolleru Gaurav

unread,
Mar 18, 2016, 8:34:37 AM3/18/16
to golang-nuts
I am new to the golang. Before starting work on golang I need to known at which areas golang is well suited. If any one known the projects where golang is being used please mention that too along with the role of golang in the project.

Thanks in Advance 

Roberto Zanotto

unread,
Mar 18, 2016, 9:19:14 AM3/18/16
to golang-nuts
It's great for writing web services, servers and such, but it's also a very good general purpose language.
Companies and projects that use Go:
https://github.com/golang/go/wiki/GoUsers
Among them, in random order: Google, Canonical, Dropbox, Docker, Kubernetes, CloudFlare.

An official, fully featured and stable GUI library is missing, so doing graphic programs is possible,
but may require a bit of extra effort.

John McKown

unread,
Mar 18, 2016, 9:48:00 AM3/18/16
to Roberto Zanotto, golang-nuts
On Fri, Mar 18, 2016 at 8:19 AM, Roberto Zanotto <roby...@gmail.com> wrote:
It's great for writing web services, servers and such, but it's also a very good general purpose language.
Companies and projects that use Go:
https://github.com/golang/go/wiki/GoUsers
Among them, in random order: Google, Canonical, Dropbox, Docker, Kubernetes, CloudFlare.

An official, fully featured and stable GUI library is missing, so doing graphic programs is possible,
but may require a bit of extra effort.

​I am a n00b, but I was just wonder if Go really needs a GUI. Why not just write your Go program to implement a "web server" and launch a brower with a URL pointing back to the the "web server" in your program and just use HTML. Let the user's native browser do the GUI rendering.​ For more fancy stuff, perhaps use the "ajax" interface? Or just use standard ReST.

--
A fail-safe circuit will destroy others. -- Klipstein

Maranatha! <><
John McKown

Manlio Perillo

unread,
Mar 18, 2016, 10:06:12 AM3/18/16
to golang-nuts
Il giorno venerdì 18 marzo 2016 14:19:14 UTC+1, Roberto Zanotto ha scritto:
It's great for writing web services, servers and such, but it's also a very good general purpose language.
Companies and projects that use Go:
https://github.com/golang/go/wiki/GoUsers
Among them, in random order: Google, Canonical, Dropbox, Docker, Kubernetes, CloudFlare.

An official, fully featured and stable GUI library is missing,

Implementing a fully feature GUI library is a *really* hard problem.

It does not have sense, IMHO, to have each programming language implementing its own GUI library, unless it is the language used for implementing the kernel and the OS.


Regards  Manlio

Roberto Zanotto

unread,
Mar 18, 2016, 10:23:15 AM3/18/16
to golang-nuts, roby...@gmail.com
That's what I meant with "a bit of extra effort". It's a good approach for many applications, but all that Go + websockets + browser + HTML + Javascript isn't always ideal. It's also interesting to note that Newsqueak (from which Go takes it's concurrency model) was designed as a language for writing GUIs, Go could be the first language to have a GUI library that really works well with concurrency

To expand a little bit on my first answer... in Go it's very easy to deal efficiently with networking and I/O in general. Dropbox rewrote its infrastructure services in Go, because python couldn't take it anymore in terms of performance.
Reply all
Reply to author
Forward
0 new messages