5 ms·
So, you do a crappy, unfair summarization of an article that, admittedly, isn't a great "intro to Rails," and this somehow gets to the front page of Hacker News
by jeremymcanally 15y ago
So, you do a crappy, unfair summarization of an article that, admittedly, isn't a great "intro to Rails," and this somehow gets to the front page of Hacker News?
To get Rails running on a Mac, you simply have to install XCode, run "sudo gem install rails && rails new blog." The included system Ruby will work OK for Rails dev (it's what I use 99% of the time just for convenience). If installing XCode and editing things freaks you out, then you may not be cut out for the level of coding required to actually use Rails. Things like Try Ruby, Shoes, Scratch, etc. exist for a reason; trying to shoehorn people into Rails too early is a Bad Thing™.
If you don't have a Mac, you can get running on Windows using RailsInstaller. If you're on Linux, I think it's fair to assume you know enough to install Ruby and friends with your package manager.
TL;DR: It's not crazy to get started with Rails; it's probably far less painless than most frameworks these days. And pointing to a fairly poorly written, overly verbose getting started guide and saying "ZOMG STARTING WITH RAILS IS KARAZEEEE!" is just stupid.
- smacktoward 15y agoTo get Rails running on a Mac, you simply have to install XCode Why? Seriously, even in Java you can get to "Hello World" with just a text editor. You don't need to download Eclipse first. If installing XCode and editing things freaks you out, then you may not be cut out for the level of coding required to actually use Rails I love the idea that someone who prefers emacs or vim over an IDE like XCode is insufficiently l33t for the awesomeness that is Rails.
- jcromartie 15y agoYou don't need Xcode to develop with Rails on a Mac. You just need to install Xcode to get GCC and various other tools that the Rails install process requires.
- jshen 15y agoYou have to install java first before you can create hello world in your text editor. That's the same as installing xcode. The point is to get a compiler, either the java compiler or the c compiler.
- smacktoward 15y agoBzzt wrong. Installing Java is the same as installing Ruby. The JDK doesn't include an IDE. And why do I need a C compiler to work in Ruby, anyway? I assume it's to compile your own version of Ruby. (Which is another way the Java comparison doesn't work -- you need the Java tools to compile your own code, not to compile Java.) But why on earth would a newbie want/need to do that?
- stevelosh 15y agoAnd why do I need a C compiler to work in Ruby, anyway? I'm not a Ruby programmer, but I'm betting it's the same reason as in Python: to be able to use libraries that have pieces written in C for speed.
- smacktoward 15y agoYou're probably right. But at least in the Pythonverse that's something you don't run into right off the bat. The first step to getting started with, say, Django isn't "get a C compiler."
- deleted 15y ago[deleted]
- jshen 15y agonor is that the first step for rails. But for anything non trivial app you will likely need a C compiler in the end. I'm guessing this is the same for python.
- smacktoward 15y agoIt's fairly uncommon in Python, at least in my limited experience. Libraries commonly advertise themselves as "Pure Python" to make it clear that they don't require compiling things in C. If your project gets up to very large scale things are probably different, but there's no need to deal with that in a "Hello World"-type tutorial.
- jcromartie 15y agoI'm not trying to pick on the original tutorial. There's a deeper problem here. Yes, you can `sudo gem install rails && rails new blog`. But that's not going to get you a suitable environment for any standard Rails project today. Especially not if it involves other people. Installing things from gists using cURL, RVM, 1.9 (Lion still comes with 1.8), juggling gem updates, bundler, cloning git repos (submodules for plugins, etc.), etc., are all totally par for the course.
- jshen 15y agoAnd they should be par for the course. rvm: managing ruby versions. This is a big win, and you offer no better way to do this. bundler: managing dependencies. This is a big win, and you offer no better way to do this.
- jcromartie 15y agoUnfortunately, I can't offer a better way to do it for Ruby. However, I fully intend to illustrate a better way to manage this sort of thing in other languages; specifically Clojure.
- jshen 15y agoI've done a large project in clojure. It isn't any different with the exception that leiningen is also used to manage the version of clojure used for a project.
- bradleyland 15y agoSo we end up with.... what? Another tool? I'm not saying the Ruby ecosystem is perfect, but a lot of the problems are engrained in Ruby culture. Losing the problems will likely mean losing some of benefits of that culture along the way.