DEV Community

Discussion on: Why should I not choose Ruby on Rails ?

Collapse
 
bgadrian profile image
Adrian B.G.

Quick answer, because Go is better.

It is just me or all your needs are met by Go? You do not need a framework, making backends is very easy.
Server intro example

It's low level so your future hardware control should be easy to add.
Scalability is one of the key factors of Go
Testing - it has builtin unit testing and benchmarks tools
Large amount of data & performance - see 1M requests per minute with 2 servers
Reusability - the languages enforces the usage of small packages.
Continuous integration - yes. It's light, you do not need a container, you will have only 1 binary file
templating - it has a builtin simple template system

You will learn it fast.

Collapse
 
martyonthefly profile image
Sylvain Marty

Hi Adrian,

Thanks for the sources, they are very helpful.

I am currently interested by Golang and the performance that it provides. To be honest, I love how so easily the language deals with stuff like routine, code coverage, cross-platform development, etc.

Nevertheless, I am a little worried about two things that slows me a lot to choose this language : dependency management and the project's files structure. I know that dep is in the good way but I am used to Maven and its stability, so
it frightened me a little. About the files structure, I don't want to mess with packages arborescence and I didn't find a good example of file structure on the web yet. :/

Thanks for your reply !

Collapse
 
bgadrian profile image
Adrian B.G.

Hi, the official dependency management is almost launched, see here.

The structure I find to be a plus, packages == your business logic == your structure. In Php/Ruby etc you have to obey a Frameworks structure, not your business one, which I think is a big flaw.
repo/user/project/
repo/user/library1/
repo/user/entities/entity1

Collapse
 
martyonthefly profile image
Sylvain Marty

In addition about the lack of dependency management, I would say that it frightened me because Go provide a large ecosystem that contains certainly all my needs (OAuth2 provider, GraphQL implementation, etc.). So, if my system have to be based on other's work, I really want to have a good and stable dependency management. :)