Go is definitely faster. Ruby is getting better, but it has never been fast compared to other popular languages. Here's a breakdown that includes both Go and Ruby: http://benchmarksgame.alioth.debian.org
Answer from James Mason on Stack OverflowWhen comparing benchmarks, is Go or Ruby slower? - Stack Overflow
Performance-focused desktop-program: Ruby or Go? - Stack Overflow
Go or Ruby/Rails?
Anyone else coming from a Ruby (or another similar interpreted language) background and founding Go a refreshing experience?
Videos
Go is definitely faster. Ruby is getting better, but it has never been fast compared to other popular languages. Here's a breakdown that includes both Go and Ruby: http://benchmarksgame.alioth.debian.org
Go is usually much faster than Ruby:
http://blog.iron.io/2013/03/how-we-went-from-30-servers-to-2-go.html
https://plus.google.com/+MattAimonetti/posts/PeZk8FY3PWY
http://benchmarksgame.alioth.debian.org/u64q/benchmark.php?test=all&lang=go&lang2=yarv&data=u64q
Sadly, neither language is appropriate for a desktop image editing program.
You haven't told us which desktop you have in mind, I'll assume it's either Windows or Mac.
Ruby is not appropriate because it fails 2 of your requirements:
- it has a terrible startup time because at startup it has to initialize a rather complicated VM, which involves loading quite a big part of its standard library
- it's very slow (compared to C/Java/Go) doing the kind of computations that image processing entails
Go is statically linked and is compiled to machine code, so its startup time is excellent and the speed is close to C (i.e. it's the fastest language you can hope to choose after C/C++).
However, Go has no support whatsoever for writing Mac desktop apps (i.e. it has no bridge to Objective-C/Cocoa runtime) and the support for writing Windows desktop apps is extremely poor.
If you're doing Windows, the only language that gives you fast startup time is C/C++/Delphi. C# might have acceptable startup time and it's fast enough for the task (very popular paint.net is written in C# and you can find an old version of the code which is BSD-licensed and re-use a lot of its code).
For Mac, I would recommend Objective C - it's the native language of the platform, best documented and with the best, free dev tools (XCode). You can use https://github.com/philippec/Pixen as a starting point.
You really need to give us some idea as to what you consider to be good and bad performance because it's a very subjective subject.
For example, people are usually willing to trade a certain amount of technical or perceived speed for a system that easier to work with or develope. Plus it also matters what you are tying to do. Each language has it's own strengths and weaknesses. Ruby may be faster at some things than Go. Then again, if you really need speed, perhaps you should be looking at a language that is closer to the metal such as C.
Sometimes though, requests for speed from users are subjective too. I once had a system that the users thought was taking too long to do a specific task. There was no way technically to speed it up, so I animated the "Processing ..." window. Because the users could now see something "happening" on the screen, they thought it was going faster. On a stop watch, it actually took a couple of seconds longer.
I know I'm asking in the rails sub so I'll get some biased answers, but I'm really struggling to decide between dedicating more time to learning Rails, or properly learn Go.
I have a really solid foundation of Ruby, and have made a few small apps with Rails. My Go experience is very limited, like a month of learning maybe.
My concern with Rails is simply the job market for it where I live, but I do love the developer experience of Rails. Go has been good, and I like static typing, but I will say the learning curve has been pretty steep!
A con for Go would be the use cases for it. I'm not sure at this point in my career (2.5 yoe) I'd be expected to solve the type of problems Go is suited for. Also, I want to do more full stack instead of all backend, and Rails seems like a good choice for that move.
Any thoughts on the two would be greatly appreciated :)