Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 8 years ago.
Improve this question
I am starting a new web app project with the only real technology requirement being a host running Windows Server. I considered both ASP.NET MVC and Ruby On Rails. I would like to learn Ruby so I'm wondering of hosting it on a Windows platform is doable or if it will cause me more grief than it is worth. RailsInstaller made dev environment setup a snap, but I'm more worried about the production deployment.
The proposed setup is a Ruby on Rails application running on Windows Server 2003 (IIS) & driven by a SQL Server database. I know that will make many open source people cringe, but I am wondering how viable this is from a strictly practical standpoint. Or, if this is just a bad idea, what might be a better way to go? Also any other practical advice on technology choices for Ruby on Windows or deployment ideas would be helpful (best deployment package, should I be using JRuby, etc.).
Thanks!
Yes, it's viable. Check out some of these helpful resources and articles that offer a variety of ways to get started with Rails on Windows:
http://www.helicontech.com/zoo/
http://vagrantup.com/
http://www.engineyard.com/blog/2011/jruby-on-windows
http://www.engineyard.com/blog/2011/jruby-win32ole-and-vagrant-on-windows
http://railsinstaller.org/
http://chocolatey.org/packages?q=ruby
As discussed in the JRuby on Windows article linked above, it's important that Windows developers get involved, so don't give up! Give it a go and share your experiences via a blog, here on SoF or on GitHub. When Rails was first born, deployment was a bit of a nightmare on any platform, so much so that entire books were written about it. Given the state of play now, and the obstacles that have been overcome through the sheer tenacity and ingenuity of the community, there's no reason why Ruby and Rails can't live and thrive on Windows.
If you specifically want to seek out folks with lots of Ruby on Windows expertise, I'd highly recommend the RubyInstaller group. They're a really friendly, dedicated bunch.
You might also be in need of an editor for Windows. I personally use Sublime Text 2, but there are others that might take your fancy:
http://www.sublimetext.com/dev
http://www.sapphiresteel.com/Products/Ruby-In-Steel/Ruby-In-Steel-Developer-Overview
http://www.jetbrains.com/ruby/
If the marriage of Ruby/RoR and Windows is a must, I would recommend going with JRuby and an application server of preference (e.g. Tomcat). MRI based application on Windows might be a pain to maintain.
Related
Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 3 years ago.
Improve this question
I wanted to get a bit of advice from the StackOverflow community on best practices/guidelines when inheriting a Rails app from another developer.
I am currently in the process of assuming control of development at my place of work. I have decent experience in front-end, SQL/Mongo, and Node.js, and a good amount of knowledge of Ruby. However, I do not have very much experience with Rails, per se.
The previous developer is being fairly unhelpful in providing dependencies and software versions of the various packages in use by the app. However, I have been able to get the following information and I have installed these dependencies (although they may differ from the versions needed by the app):
Postgres
Heroku CLI
AWS CLI
Redis
Sidekiq
AngularJS
Would any of you guys be able to briefly delineate the next steps of getting a previously existing app running (or point me to another source)?
Any help you all can provide is much appreciated. Thank you!
Things you need to retain:
Access credentials to all production servers and used services (including domain name and backup servers if there are any). It is not obligatory to be you, but someone at the company should have them (there may be some security/privacy related issues).
Access to source code
A fresh production backup (if possible)
Most of versions can be inferred from production system once you have full access.
Some others (like sidekiq etc) are in Gemfile.lock and yarn.lock files.
Then try to bring the system up from the backup - if you succeed - you'll be sure that everything is ok
Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 8 years ago.
Improve this question
The reason why I want to switch to Ubuntu is that people said that GEMS works better on Linux than on Windows.
I don't want to get a MacBook Pro just for Rails development since I love Windows and I cannot stand the lack of apps for Mac. Moreover, people are saying that Ubuntu is "better" than Mac: http://www.reddit.com/r/Ubuntu/comments/1bgj1s/are_there_advantages_of_ubuntu_over_os_x_for/
Does Virtual Box work well enough that it doesn't have any lag at all? I am using i7-3517U CPU with 8GB memory. I need to program in an environment that is lag-free and not sluggish. Or are there any alternatives to recommend?
I am unsure about all the permission settings or any complicated stuffs regarding the terminal. But I'll be using the terminal to develop. I'm still quite new here for development in Linux. Please be kind to me >< Thanks.
#holyxiaoxin I am pretty sure you should be asking this on superuser instead.
Nevertheless, I would suggest you to install Ubuntu in a partition instead of running a Virtual Machine. Here's a guide https://help.ubuntu.com/community/WindowsDualBoot
Also, yes. Developing in a virtual machine could be very accurate, but at the end you could experiment weird behaviour when working with native libs mostly and you will be wondering if it is the VM or your setup.
Hope this help you get started. Also Ubuntu and Ruby on rails
P.S. I use OSX and it's the best you can get for RoR and development environments. Think about it as an investment to the future.
#holyxiaoxin hi. I have only ran rails on windows and Mac. Me personally I just got a MacBook pro. In my opinion Mac makes my life easier when it comes to rails development plus I am learning xcode and swift at the same time. I feel like you have to jump through hoops and ladders to fix certain errors and install gems on windows such as paperclip and even public activity. Yes it does help you with your skills in debugging but it slows down the learning process. Not only that but Mac is a faster development environment. I am not an expert but I just wanted to give you my personal experience if that is okay. I love windows as well and it makes me sad playing on my Mac while my windows is sitting over there but I still use my windows for things like packet tracer(which I haven't done in forever since discovering rails) Python, and writing essays and learning visual studios
Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
This question does not appear to be about a specific programming problem, a software algorithm, or software tools primarily used by programmers. If you believe the question would be on-topic on another Stack Exchange site, you can leave a comment to explain where the question may be able to be answered.
Closed 2 years ago.
Improve this question
What is the best linux distro for deploying ruby on rails web apps on a production server.
The web app will use advanced cache features, graph creations and lots of other cool features.
Please advise.
I like Ubuntu Server mostly cause it's well supported and readily available on almost all cloud services.
Fedora 14, No Doubt... Actually there's a tutorial on how to setup a Complete RoR Development Enviroment in the Blog where I write... The post is in Spanish but I believe you'll understand terminal commands quite good:
http://xenodesystems.blogspot.com/2011/01/instalar-ruby-on-rails-en-linux-con.html
Also there's a Gadget on the Blog to translate posts into different Languages...
Good Luck!
Taking account that Rails relies substantially in console commands, any Unix based distribution will be good. My advice: use whatever you feel comfortable with. If that's not the case and you want to learn a suitable distro for Rails, I would recommend Fedora as Jmlevick suggested.
For Rails,it usually offers latest Ruby version directly in the distribution. Also the whole Rails is packaged as RPMs, making it easier to instal. You just need to download the RPM version of the gem with pre-compiled extension and you're done.
If you want to see the docs about Ruby or Rails directly from Fedora check out the links.
Also to take into account, Fedora is a friendly user distro, easy to install and it has a huge community, so in case of a problem, just do some research. In case that you have Mac, that would be also fine.
Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 8 years ago.
Improve this question
Why would I choose Ruby on Rails instead of PHP or ASP.NET when starting a new middle-sized project that has no restrictions? (not limited by hardware/operating system/memory/etc)
It's not a "web programming language" (whatever that means); it's a web application framework written in Ruby (a programming language, though certainly not just for the web!).
I'd say the primary advantages of Ruby on Rails (RoR) are:
the productivity of the Ruby programming language in general
the "Convention over Configuration" paradigm that decreases how much the developer must write to see a webapp running in their browser
stronger adherence to "Don't Repeat Yourself" (DRY) principles than PHP or ASP.NET (though you can still repeat yourself all you like if you try hard enough !)
The primary advantages of Ruby on Rails are:
1: That it takes very little effort to get started in web application development.
2: There is a huge community built around it and loads of people who are happy to help you get going.
3: For many applications you don't even need to look at SQL (which doesn't mean that you shouldn't)
4: There are probably more tutorials for the different aspects of the Rails framework than there are for any web framework out there on the net.
Summary: It's a great way to start your web application career, hobbykick, or what have you.
Some things that Ruby on Rails could do better:
1: Documentation, the proliferation of resources on the framework means it can be very hard to find thorough, concise and up-to-date documentation for certain plugins or gems. One SO user described it as "documentation via blogging."
2: When you work with Rails in the beginning you really don't need to know much of anything about your database. However, sooner or later you'll want to get more sophisticated with some of the SQL behavior, tune things to increase performance and so on. This may be a personal preference, but it's much harder to know what needs tuning when you have never needed to look at the SQL before.
When studying, I generally learn simple things, then get more complicated and advanced as time goes on. With Ruby on Rails it can be very easy to omit learning the easy database stuff, then when it comes time to do advanced things, you have to go back and start from scratch.
Hope that helps.
Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 8 years ago.
Improve this question
I was wondering what are the strengths and weakness of using Ruby on Rails for Web Application development. I would like an insight from other developers as to why they have chosen to write in Ruby on Rails over other languages and technologies.
What does Ruby on Rails provide that has the edge over other web application technologies and languages?
Are there any unique capabilities that the language provides?
Thanks in advance, hopefully I will be able to make the choice as to use the language or not.
Ruby on Rails is a server side technology, it cannot be compared to Flash or Silverlight that are client side technologies, like apples and bananas.
EDIT (for the edited question)
Rails's main strength over other server side tech's is ease of use and development speed. This comes from 2 factors:
ruby is a expressive and easy language
rails provides a simple yet powerful API (call it "programmer interface") that lets you focus on "doing your stuff" rather than "how to do it"
You write less code and don't struggle with side problems.
I'd add a great mature community and plethora of plugins and ready-made code.
Ease of learning and speedy development are big pluses
It runs pretty slow though (compared to, say, ASP.net)
Faster development, slower runtime
I think, Ruby on Rails' strength is a community.
There are a lot of people to ask about framework.
Also there are many books, libs, plugins, etc.
No matter which technology or framework you will choose,
just do not limit yourself with it.
Disadvantage is that many of the folks building larger apps have continued to work with C#/Java/PHP; there's not a lot of huge apps running on Ruby.
From my understanding - it runs slightly slower than the big three up there - large apps are staying where they were.