This is a wonderful idea. Every time I try to get someone started with Rails, I sent them to the Rails Guides and warn them that "getting Rails up and running in the hardest part." Being able to have someone jump straight into videos and interactive prompts from their browser is going to be so much better...
getting rails up and running was for me the big dealbreaker when i first looked at it 5+ years ago. this is an excellent idea by gregg and the gang at envylabs though
You had a good experience. Lots of people don't. Getting the environment set up took me hours, and I'm a programmer. First I installed Ruby with my distro's package manager. Then I followed the instructions in the book and installed gem from the RubyGems website. Uhoh, not supposed to do that anymore, Ruby comes with a different version of gem. The new Rails website tells me I need a different version of Ruby, the one my distro installed doesn't work with Rails 3. Remove Ruby, try to remove the rubygems-I-shouldn't-install-myself, start over. Install the latest Ruby, then rails from the gem. Try to install some gems I will need, they won't compile. Ruby was compiled without support for some library. Go find, compile and install that library, then recompile Ruby with that feature (after researching how to compile specific libraries into it), and retry installing the gem. OK, on to the next gem, which needs another missing library. How did Ruby even compile if all these necessary libraries weren't there? Continue like this for hours until I finally have Rails and the few gems I'll need working and can see the default page on a web server.
Simply following your two step instructions on any of my servers would not create a working RoR setup.
That's really a comment about your distro, not about Ruby or Rails. It /should/ be as simple as installing Ruby, then `gem install rails`. If it's not then something is broken with your distro's package.
Rails has been bundled with the developer tools for MacOSX since 10.5 - I admit that it was a bit annoying if you were compiling Ruby yourself in days prior.
Right - my issue was with the MySQL gem. The entire system is great because you can type
"gem install mysql" or whatever and it just works.
But the issue comes in when it doesn't work, which it didn't for me. It took hours of debugging. MAMP gets me up and running in < 5 minutes. A proper LAMP setup takes me < 10 minutes. I'm failing to see the advantage of Rails (at least from a setup standpoint) when it works perfectly most of the time, but fails so hard.
For years, this was the most common interchange in #rubyonrails:
- I can't get rubygems to work.
- You've used a Linux package manager to install Ruby haven't you? Don't, it's broken. Uninstall it and re-install from source.
Then follows a discussion about how the person with the problem doesn't want to do that, and the other people telling him fine, suit yourself.
The person with the problem continues to try to solve this problem some other way, but in the end either follows the previous recommendation, or stops messing with Ruby altogether.
Nowadays, Linux package managers offers the option of installing the "full" Ruby distribution, which is great, but I wonder why anyone would ever want to install the partial broken one. I don't even know if the "full" one works. :-/
I've had my problems with rails installations, but they were generally in trying to get specific rails code working- not getting a teaching instance up.
Ironically enough, I've never ever had any problems with setting up a rails stack in Debian. Not my cup of tea distro, but some people I work with swear by it. I guess it has to do with all the stuff I do and preset when creating an image to base servers of.
Nevertheless, I've found Ruby and Rails easy to install in any machine I've tried them in (A LOT), and I guess that for less Unix inclined users it might get a bit complicated along the way.
I've helped a number of people "get started with Rails" over the years, and I've had to help every single one of them get their environment set up properly.
I think there's tremendous value in this kind of site. If someone comes up to you and says "how can I get started with Rails?" now you can just point them to this site and tell them to get in touch when they've finished the tutorials. Then you can help them set up their environment properly ;)
Exactly what I was thinking. I'm barely starting with rails. On Mac all I did was:
gem install rails;
rails new hello_world;
rails s
Then I watched the damage on localhost:3000
Rails has been fantastic. I'm a designer — I don't really have a background in programming — but rails has been incredibly accessible. It makes a lot of sense to me.
I just installed RoR on a clean Ubuntu install and it wasn't easy at all.
First, I had to install rvm (Rails wouldn't install with Ubuntu's Ruby packages) which took some time to figure out. Then I tried installing Rails and got some problem related to sqlite3. I then figured out that I had to install the sqlite3-ruby gem. Of course it didn't work. I found out I had to install the libsqlite3-dev package.
It's probably a fluke on your setup. What package manager did you use that didn't work? Are you a Unix/Linux type of guy? Most people that aren't have hard time installing any *nix based development environment. I mean, you got an error telling you there was not sqlite3 and you tried the gem and no dice, it's pretty obvious what to do if you're familiar with any Linux. To be fair though, I believe there's no mention of you needing sqlite3 on the download instructions on the main download site, which ultimately leads to confusion.
I'm not trying to sound aggressive or anything, but I think that this type of issue is more related to to using some outdated or excessively complicated guides on the internet that always leave something out, in comparison being hard to get ror up and running.
I've been working with Linux for many years (Ubuntu is my main desktop right now). Ubuntu's gem package simply isn't compatible with the latest version of Rails which means you have to install rvm and figure out lots of stuff.
No for real, try to install SQLite/Spork/Autotest/Rspec. It isn't that easy when you are a noob who only want to start to learn how to dev.
Personnaly I was so sick and tired to get everyday a new problem when I wanted to install a gem that I setup a VM with Ubuntu and I launch it when I want to dev. Ubuntu is "user friendly"-ier than Windos for ONE thing setup a dev environment.
And as nobody dev on Rails under Windows it's very hard to find help or good tutorials when you encounter a bug :(
'Ubuntu is "user friendly"-ier than Windos for ONE thing setup a dev environment.'
Well, apt-get is pretty sweet in general.
More to the point, while Windows Ruby dev is certainly doable (and I did it for years with comparatively no more hassle than on Ubuntu), the advantage of developing on Ubuntu is that it is far more likely to match your server environment.
It sucks big time to be cruising along and then discover that some plug-in or tool that would solve a dozen problems for you requires a C compiler and a POSIX environment.
And it installed everything. That wasn't hard was it? Granted, I didn't test the gems.
The only problem is with spork: gem install spork gave me an error. I plugged it into Google which gave me the resolution: delete rake.gemspec and gem install rake (the one click ruby installer on windows seems to come with a bad rake), then gem install spork. All of this, including installing Ruby took like 5 minutes.
Wow. Just wow. This is incredibly well done. The videos (well, the ones I've been through so far) are informative and entertaining, and the site is well thought-out.
I think that if you can re-skin this and retool it for other themes/languages, you've got an excellent educational tool on your hands.
Love it, but I can't shake the feeling that the people who I want to show this to would not dig the zombies vibe. Maybe I just hang around too many people who do Real Serious Business (TM) programming. :)
Totally agree. Would love this minus the zombies. To me in cheapens what appears to be an incredibly rich learning environment. Not that I have anything against zombies, it just feels like it's trying really hard to appear fun/cool/hip, when it's already all those things just based on the core product.
Kinda makes you wonder why all your development can't be 100% web-based. No messy installs, version control built in (autosave like gmail?)...if your deployed app is web-based, why not your entire development environment?
Good idea to simplify things but just side-stepping around the issue and delaying the reality that it really isn't this easy. You're eventually going to have to get dirty if you really want to do anything -- configure ruby, install gems, learn git, deal with gem versions... ah, good times.
While I love the concept and polish on this and would love to be able to recommend something like this to friends, I'm sorry but I have no room in my heart for zombies.
This is pretty fantastic. I travel around to universities with the Yahoo! HackU program and have had a heck of a time teaching students ruby and the rails framework from scratch. This is going to make it SOO much easier. :D
As far as the labs thing goes, this feels like the future of interactive learning.
Isn't a huge part of learning a new language being able to install and configure it in the first place?
Also the went WAYYYYYYY overboard with the whole zombies thing. We get it, zombies are trendy these days, please just keep them away from anything learning based.