Why not create a Ruby on Rails distribution that works well on Windows?

Asked

Viewed 398 times

0

Okay, to put it bluntly, how to have a Ruby On Rails development environment that works well in Windows OS? I already tried to install the newest version Rails 5 by the prompt, but whenever I create an application gives error, also I tried Railsinstaller and it didn’t work, I tried to configure Sqlite but also didn’t work, I followed tutorial and everything. If there is no such thing as a Ror distribution for Windows that is up-to-date, fast, and works as well as on the Mac or Linux distributions, why is the community that is already very involved and experienced with the framework not creating one that is really?

  • 1

    What version are you trying to create with? Using Windows 10 I managed to create an application with the rails 4 with the ruby 2.1. The most current version of ruby who made my rails fail, when I tried to create an application with ruby 2.3 was giving problems in the gems. See if the combination: rails 4 + ruby 2.1 (ou 2.0) serves you well.

  • 1

    You also have the option to use the new feature bash on ubuntu of Windows: https://gorails.com/setup/windows/10

  • I’m using Windows 7. Thanks @Gabrielkatakura for your help, I’ll try to do what you said, although I don’t think it solves the real problem posed by the question. Because I want Rails to work as well on Windows as on Mac and Linux distributions. New versions without compatibility and not to mention that super slow Rails on Windows.

  • @Gabrielkatakura Unfortunately what you said did not solve, and now neither the application wants to create.

  • 2

    Honestly, I don’t know how to solve the case with Windows 7, as I had said, mine worked with Windows 10

2 answers

3


Briefly, referring to the question described in the title

Why not create a Ruby on Rails distribution that works well on Windows?

It is mistaken to say this, because Ror works very well in Windows environment. What affects the operation are the third-party dependencies that the app uses. Usually Gems and plugins poorly written or without proper support.

You can’t mix things up. The Ror framework is one thing and the Ror project with specific Gems is another. Also important not to confuse the language itself, Ruby is independent of Ror, Ror is a framework written in Ruby. Comparatively, it is the difference between PHP and Zendframework, Laravel, Cakephp. PHP is a language and the others cited are frameworks.

The problem you have may be due to Gems that do not provide proper support for your environment (Windows). It is not clear on which Gem or plugin is having difficulty so there is no way to get a clear answer on how to solve. As a result, what you have is trying to compile these dependencies with various hacks, due to lack of support, and this results in a malfunction of your app, usually runs much slower than on other platforms. From what I understand, that’s what you did. But you can’t blame Ruby and not even Ror.

Basically, your options are:

  1. Switch to Linux environment only because of a Gem or a plugin.. rsrs

  2. Find an alternative dependency (Gem, plugin) that provides proper and guaranteed support.

  3. You even write your own Gem/plugin.

Giving continuity to this passage:

If there is no such thing as a Ror distribution for Windows that is updated, fast and works as well as on the Mac or Linux distributions, why the community that is already enough involved and experienced with the framework, do not create one that really be it?

This part of the answer was a little extended and can be removed if someone interprets it as out of scope, but I decided to publish anyway. However, as you are asking this in the question, I revolving to make clear what happens.
I stress that it is personal opinion of someone who works with various environments. I work with linux, windows, mac. With several languages as well, including Ruby, and my main one is PHP. Read below:

I do not claim to make him give up the Ror, but rather raise awareness about reality. Be aware of the difference.

I understand the frustration because I have been dealing with Ror since 2011 and it has always been a way to build projects with Gems and plugins that do not provide adequate support for Windows and in many cases do not provide any support. It is common to see Gems abandoned more than 6 years ago. In 2011 I started a project where a Gem was abandoned 4 years ago and is still abandoned today. But the project depends on this and uses until today. rsrs. That is, 9 years depending on something abandoned. In this specific project the client did not want linux at all. To make it work, I had to force the parallel use of Cygwin. In other situations I had to use virtualbox or Vmware. Simply awful.

Ror or ruby itself has nothing against Windows and provides good support, but unfortunately those who adhere to Ruby are usually "windows haters" (in a pejorative sense, because I think people like this are childish and unprofessional). Often purposely ignore Windows support.

Ruby and the Ror framework are collaborative development. What happens in the ruby world is, ruby is made up of a community that turns a blind eye to Windows for sheer "tantrum" and thereby loses a lot by ignoring a globally dominant operating system. So you have a smaller community and consequently fewer people willing to collaborate and share experiences and also not willing to start in this environment because even those who venture to start are faced with these problems considered crude.

By comparison, PHP has grown to be flexible for "any" environment (most popular environments). PHP has provided server support since Windows 98 PWS. At that time, those who used Windows and wanted to enter the world of web development used what they had most accessible, and it was ASP under PWS (in the case of Windows98). PHP realized that to engage programmers it had to provide support for this environment and did so. In a short time PHP that was quite amateur and naive, created in the "bottom of a backyard" by an amateur programmer who had no idea of the phenomenon he was creating, managed to unlock a tool built by largest corporation in the world.

Something that also increased the acceptance of PHP by Windows users is that even under Linux environment it was much more complicated to install and configure. Actually it was a nightmare. But under Windows environment just play a few dlls here and there and everything was ready!
And don’t think that it was PHP that provided these dlls and binaries for Windows. Everything has always been provided by volunteers and is so to this day with some exceptions.
Those who are older know how it was necessary to compile php-Gd and other essential Ibraries. In Windows, it was enough to uncomment a line and it was ready. No firula, no mimimi. So the excited progamator was already going straight to the point that was programming, either for fun or for work. As it was all easy, soon the guy fell in love and invested time in language.

Another point that made ASP lose space for PHP is not providing compatibility for Linux environment. On the one hand, we have ordinary users who use Windows mostly and on the other hand web servers (hosting providers) that offer Linux for the most part. It was obvious that it should provide support for these two environments. Microsoft bet on forcing the use of Windows servers but it was a "wrong" bet because not everyone was able to afford more expensive hosting to cover the licenses of Windows servers. In addition there was a Marketplace around the ASP because many features considered basic as "file upload", it was necessary to buy a component separately. And they had no idea that the PHP competitor would go so far. In the end, with all these combinations PHP has grown and practically "dominates" this area, regardless of whether there are better tools. What matters is the support and strength of the community. After all, what’s the point of creating something you claim to be better at if you can’t even engage anyone to use it? How can it be better if it doesn’t even provide the basic support and warranty?

The interesting thing about this is that Microsoft understood the importance of PHP and started providing official support. https://php.iis.net/ and https://www.microsoft.com/web/platform/phponwindows.aspx

Usually when you look for Ruby communities, if you’re a Windows user, you get stoned. The first piece of advice is the dumbest of all. " Change the system, use Ubuntu, use Redhat, use Suse, bla bla bla" They start to fight each other. They just don’t want to solve issues involving Windows environment. It’s ridiculous. They think doing this will destroy Microsoft. They focus more on indoctrinating you to use the mac or linux than on the focus of the problem with the language itself, Ruby.
The subject has no idea why the user is on Windows. I for example use CAD software. (Solidworks, Autocad, etc). Then it would force me to buy another PC with linux or use the mac (I hate mac but I use to develop for iOS). It is unviable. Have a second linux PC just to run an app on Ror because of a Gem. If other languages like Phyton and php make everything cute, why can’t Ror better provide something so basic?
If your have a company with 100 employees all under Windows, then what a great idea huh! Let’s throw away all these Pcs and buy 100 Macs. Or force everyone to adapt to any of these hundreds of Linux distributions. After all, the company’s money grows on trees. rsrsr

The consequence of all this generates a domino effect. There are many companies that rely on systems written under the Ror and when they need a professional to continue (the original programmer left the company), they face a huge difficulty in finding a professional because they are few compared to other tools. Consequently, the cost is also higher, because the value is according to the supply and demand.
A system that was created with a tool that sold itself claiming to be better than competitors but ultimately becomes more expensive and laborious to provide the same result as competitors. From a "business" point of view this is illogical. It is not advantageous when you have a debt or a lower profit.

What is lacking in Ruby or Ror is that Velopers and fans themselves have a more mature mindset. Stop this childishness that only harms themselves.
I believe that if it wasn’t composed of communities of haters(1), Ror would have debunked PHP long ago as it is an excellent and very productive tool.



(1) Of course it is a generalization, because there are always exceptions. There are good professionals in the world Ror who think contrary to most who are in this environment.

  • Thank you @Danielomine, you really understood what you were asking and gave the best answer. The community loses a lot with these attitudes and I have asked this question distrustful of it. You have given quite a response. For, really of what use to create something that many claim if the best is not able to engage the vast majority who use Windows, for a nonsense. Regarding the beginning of your answer I did not say that Ruby and Ror themselves are bad, I believe in the power of these technologies and I got engaged to learn Ruby and fell in love, but when I got to Rails I was very frustrated.

  • I also know that I will have to deal with several OS as a developer and you have already given good examples of why. But as a beginner and I believe that most of us will also be using Windows, as they will also not be able to own a Mac or want to use Linux to just learn a technology. I don’t want to go around developing projects, just learn Ror in the OS to which I am currently using. Thanks and thanks again.

2

Hello, good if we were to expose all the problems of creating something that runs well on all platforms we would write a beautiful article, instead we will focus on solutions.

A great difficulty in using Windows to develop are the compiled libraries, you can use jruby that has greater resilience in Windows environments.

But if you really want to have zero difficulty and continue on Windows you can use the cloud9 which is a complete environment of cloud development. inserir a descrição da imagem aqui

Or even if you want something local and have a little work, even then do not quit Windows can use Vagrant. This one is a great tutorial for anyone who wants to set up their development environment.

Good luck.

Browser other questions tagged

You are not signed in. Login or sign up in order to post.