On 04/20/2018 03:32 AM, Andy Jones wrote:
What do you advice for a Unix/Windows administrator who wish to create
awesome web applications using Rails framework ?
What skills do we need in Ruby language to be able to survive in Rails ?
Do we need to master Git ?
Which database to choose ? PostgreySQL, MySQL or Sqlite? MongoDB ?
FWIW, the opinion of someone who does web development in Ruby, but mostly not in Rails:
You will absolutely, definitely need to use some sort of version control system: the benefits are so big that not doing so is rather like shooting yourself in the foot before you get started. Git is the most popular. I use Mercurial. It doesn't matter which, just use one.
Since Rails is written in Ruby, you will need at least a basic understanding of it. I'm of the opinion that the more Ruby you know the better -- I would say that, though? But you can get by with a basic understanding, at least to start with. You will have to learn Rails separately from learning Ruby, anyway.
WRT databases, I don't think anyone would recommend Sqlite for an application database. Any of the other three are a perfectly good choice. I would personally recommend PostgreSQL, but that's just me.
Missing from your list: a testing framework. I would recommend RSpec. It's well-integrated with Rails and friendly to the newcomer. (But Minitest is excellent, too.)
Good luck! Learning all this in one gulp is a bit like juggling bulldozers, but we all have to do it...
I'm pretty much in line with Andy. Well, I use SQLite a bit here and
there. And there. Over there, too....
My real question would be "Why Rails"? Building websites and using
Rails are two different things. Rails is the most known Ruby based Web
framework, but not the only one. I would look at Hanami or Roda first
unless you really want to learn rails.
For database I'd say start with SQLite first, just to learn the
interconnection. Then you can spend time finding the right database
for your application. Use the Sequel gem to connect to your database
and transition will be much easier.
I'm working through "Effective Testing with RSpec3" and it uses a
Sinatra (Another web framework) and Sequel. I've actually learned a
bit about them just from learning more RSpec!
Moving data between browser and server is one thing. Making it look
pretty (HTML, CSS) is another. Since you have a long list of things to
learn, I'd start with this:
1. Git. Write some shell code and start using your github repository.
Should take you less than a day to figure out the basics.
2. Ruby. Have you done this?
3. RSPec (Though minitest is good, too).
4. Roda. Play with it. Enjoy it.
5. Sequel and SQLite. Just to figure out the connections. SQLite has
very low requirements to set up.
That will take you a while to put together. It will put you on th
eroad to mastery, but it is a long road. Enjoy it, don't try to sprint