As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 12 years ago.
This is an honest question and I am not trolling.
As a newbie to rails I've been search for good rails resources. But I've been noticing many sites that apparently were once popular now being completely abandoned. Some examples:
http://www.softiesonrails.com/ - last updated Feb 2010
http://www.therailsway.com/ - last updated Aug 2009
http://nubyonrails.com/ - last updated Aug 2009
http://www.railsenvy.com/ - nothing there now
http://edgerails.info/ - last updated Feb 2010
Am I just coincidentally going to all the wrong websites/blogs (even though they're the top hits on google) or is the rails community slowly dying off? If I just happen to be going to the wrong sites can someone please point me to some currently updated sites?
Ruby on Rails was a Hype. That means a lot of people jumped on the bandwagon because that is what they do: jumping on bandwagons (for a living).
After that hype, many communities popped up, in various languages that mimic Rails. Or try to. Or just took the good ideas and applied them to their community. Now you have gazillion halfbaked PHP-frameworks, and a few actually good ones. You have Django (python), Zend, Symfony (PHP) and even in Ruby, some alternative frameworks.
That has spread the attention. There used to be only One Good Framework (sic.) now there are many.
That said, Rails 3 has just been released. Rails 3 is cutting-edge again. It has all the ingredients for noSQL (the one-but-latest Hype) HTML5 (the latest Hype) and many javascript-frameworks and interactions (the next-to-be Hype).
That said, Rails is not just Hypes. It is actually a fantastic framework. With a still very active community around it. Just look at github, and visit the trending repo's there once in a while and you will see a Great Rails Thing there every week.
If you want to keep up to date, I would advice:
http://www.rubyinside.com a blog all about Ruby.
http://5by5.tv/rubyshow a podcast with (most of) all the news in Rails and Ruby land.
I wouldn't say "dying," but it's defintely lost much of its momentum:
Google Trends on "ruby on rails":
.
For Comparison: Symfony, ASP.NET MVC, Django, CakePHP and Grails
Here are the reasons I believe caused this decline:
Overhype: The framework was very much hyped. Any kind of hype eventually fades. RoR is not a be-all and end-all web development solution; nothing is (yet).
Competition: There are now many quality frameworks for other, more popular languages. Some of them even were modeled after RoR (CakePHP, Grails, Django, etc).
Trends Comparison http://oi55.tinypic.com/k3pzy0.jpg
Ruby: Ruby is a very interesting language, but it has its idiosyncrasies. You can't program in RoR if you can't do Ruby, and proportionally few people know ruby compared to other languages.
NO! It's healthy and alive!
http://rubyflow.com - aggregated blog content
http://planetrubyonrails.com - similar
And there are many others...
In addition to the other answers, google is showing you sites with a lot of historically good content, but not necessary the most current.
For example, the Rails Envy guys have split into two good podcasts now: ruby5 at envylabs and the ruby show at envy labs (you'll have to google them, SO won't let me post the links.
The best rails guide resource is now the excellent
http://guides.rubyonrails.org/
Read rubyflow and ruby inside for a week or two, and you'll soon come across all the best ruby and rails blogs.
Related
As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 10 years ago.
I like to experiment with different languages to keep my interest alive when working on small side projects away from my day job.
I'm finding it increasingly difficult to steer away from Django and Ruby on Rails because of a couple of features they come packed with (or that are mostly default and easily integrated): authentication and automatic admin interface. Django comes with both, with Rails you just have to add ActiveAdmin as a gem and you're ready to go.
When I try to experiment with different frameworks and languages (Noir for Clojure, Express for Node), most of the times I find interesting languages I'd love to work with but whose "web framework" idea is just some convenience method for routing and parsing URLs and requests, leaving you alone with all the common and annoying parts of web development, like form validation, user authentication and profiling, having a working admin interface and so on, all things that Django and RoR provide to you for free.
What other languages and frameworks have such commodities? I'm aware of some PHP frameworks like Symfony, but I really have used PHP for too long in pas years and I'm pretty fed of it. Thanks.
Stick with RoR in my opinion. It's still a young yet powerful framework. It's well maintained and quickly plugged whenever a security risk becomes known.
It doesn't really matter what kind of MVC framework you use since it all comes down to the programmer. Ruby on Rails cuts out the painful part of programming (IMO) and allows you to do the enjoyable parts. Requiring knowledge of SQL is very minimal within Rails unless you're doing complicated scoping.
If I kept searching around for different languages to explore after I found one that suited all of my needs and then some, I would never get anything done. Moving from PHP/CakePHP to Rails is definitely an upgrade in my opinion, but at this point, you're better off committing to one language (Python/Django or Ruby/Rails).
I would stick with Django. Having worked in everything from classic ASP, ASP.NET, ASP.NET MVC, Java, PHP and Rails, I can state, unequivocally that Django is hands-down the easiest to work with, most profitable framework I've ever used.
Rails does have some pretty controllers, but it pales in comparison when you get down to functionality. Sure, Rails has lots of plugins, but Django has nearly everything you need under one roof. Django-admin alone is a friggin' gold mine. I work full-time as a Technical Architect, but also own my own business. Switching from Rails to Django in 2008 was the single best thing I ever did for my business.
If you want something flexible, modular, easy-to-extend and incredibly well documented - Django is your ticket. You also see far, far fewer of these lovely posts with Django.
As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 10 years ago.
I have started coding during my free time for over a year now. I had a social community idea which will be location based which basically deals with locations and nearby trending places.
I did some 10 minute video about scaffolding and have been totally smitten by Ruby on Rails. I really want to go ahead and make it on RoR.
However I don't know how to work with databases dealing with locations. I have done some research and looks like Mongo.DB is the one which is the most popular considering what 4square did. But I was wondering can we work with Active Record ? I saw a gem called geocoder , will it help me with the problem I am trying to tackle ?
Again , I have only coded in C++ , and haven't exactly worked with databases .
Which gems and tools should I be using for it ? Ruby and Mongo.db or Ruby on Rails simple using gems like geocoder ?
I felt encouraged seeing a website called www.foodspotting.com , it shows they have coded in ruby on rails ! Can someone give some good combination so that I can start thinking in the right direction ?
ruby on rails with mongo?
ruby with sinatra ?
although I am trying to stick to the RoR genre , as I have subscribed to the Michael Hartl tutorials .
I'd suggest using PostgreSQL with PostGIS. You'll need the activerecord-postgis-adapter gem to make that work with ActiveRecord.
However, a word of warning, dealing with spatial data isn't easy, and if this is your first Ruby on Rails application and your first database-backed application I would say that you're biting off a fair bit more than you can be expected to chew. Start small, start easy, work your way up.
First try to make some small applications in ruby on rails using database like MongoDB. I suggested this because you are going to use location based application implementation.
A very nice tutorial step by step that will let you go for it is -
http://www.mongodb.org/display/DOCS/Rails+3+-+Getting+Started
Regarding Geocoder - It provides object geocoding (by street or IP address), reverse geocoding (coordinates to street address), distance queries for ActiveRecord and Mongoid, result caching, and more. Designed for Rails but works with Sinatra and other Rack frameworks too.
You will find the documentation of geocoder to let you start over here -
http://rubydoc.info/gems/geocoder/1.1.5/frames
It is not a matter of choosing between MongoDB and PostgreSQL or between RoR and Sinatra.
What you really need is a RoR plugin/engine/module/whatever that can help you with map viewing, navigation, locating and geocoding. The geocoder gem is a component of this software stack.
The geocoding/mapping/navigation toolset you will choose will impose you the DB (most likely PostgreSQL with GIS extensions, that is: PostGIS) and many others implementation details.
A very well-known and largely appreciated mapping/navigation software stack is the one developed and used by OpenStreetMap (http://wiki.openstreetmap.org/wiki/Main_Page) that (you are a lucky guy...) is even based on RoR.
Have a look at their solutions and have a talk with the developers on their forum/mailing-list. I'm sure you will find what you need.
As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 11 years ago.
Hi I am from PHP background and in am not really very familiar with these command line process and idea about operation of Rails applications. I want to get fine idea about what is this Activerecord, REST and other important task such as Rake is, more precisely what is this 'task' in Rails anyway. I have been seeing these online screen casts about Rails and I get the idea how to make it work but don't quite know how does that really work, they just extend the class activerecord and use it to their app by making custom class but what is this activerecord, I am really very confused and I am having hard time getting rails inside my brain but I really really want to learn it. Is there any suitable resource to idea idea from basic. Please help.
1) Get the "Agile Web Development with Ruby on Rails" book. Also consider getting several of the O'Reilly Rails book. Also the pragmatic programmer books on Ruby/Rails are great.
2) Join a user group if there is one in your area.
3) Base your education on your background. If you don't know OO(Object Oriented) programming, focus on ruby, if you do (java/c) background focus on the db. If you have both, focus on the view. PHP developers may find http://pragprog.com/book/ndphpr/rails-for-php-developers useful,l though it is from 2008 (Rails 2) and currently out of print so you'll need to search.
4) Make 3 or 4 applications to learn from.
5) Know that a lot of the errors you'll see are very cryptic for newbies. Don't Panic!
6) Screencasts are good, as you have found. Peepcode's (paid, e.g. $8-12 but worth it).
Ruby on Rails Tutorial: Learn Rails by Example by Michael Hartl is a good free online resource to help you get into Rails development.
Here's a few segments from the texts i've been learning from.
I am new to not only Rails, but OOP as well.
http://www.sitepoint.com/learn-ruby-on-rails-9/
http://api.rubyonrails.org/classes/ActiveRecord/Base.html
I also have "Agile Web Development with Rails" as another person mentioned. It's golden, as is anything else in "The Pragmatic Programers" series, i've found.
Rails is a framework. Ruby is the language.
It sounds as if you need to start learning the ruby language. If you stay at the Rails level you will always get that feeling of "not quite knowing how things really work". A bit like trying to learn Drupal or Wordpress without knowing enough PHP first.
I recommend the rubykoans for learning ruby:
http://rubykoans.com/
Start here:
http://railsforzombies.org/
A very nice series of screencasts on the very basics of Rails development. Comes with a great exercise platform that allows you to start practicing in your browser, without necessity of command line tools.
After you get a grasp you may check out this book.
It covers a wide variety of topics, is very accessible, and even tries to solve any potential problems you may run onto.
It's probably not a good idea to start by extending a core class :)
As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 11 years ago.
Background
I've written several production apps using Rails 2. I've gotten comfortable with it. I kind of have my Rails 2 routine down.
However, now I face a dilemma.
I have two new apps to write immediately.
Rails 3 has been out for a while now, and I wonder if it's time to get a book, invest some weekends and evenings, and start coding these and any further apps using Rails 3.
The things I write are usually stuff like "take our equipment inventory that's in MS Access and make a Web app of it," or "write an app that lets the secretaries post PDFs to our website and attach notations to them." (Those are made-up examples to give you an idea -- not the actual apps I'm working on or have ever worked on.)
Side note
On a personal level, I do understand the value of learning for its own sake and I am genuinely curious and interested in learning Rails 3. But I also have to respect time and energy limitations. I'm curious and interested in a lot of things. So I have to choose carefully.
Main question
What features / capabilities / improvements does Rails 3 have that might make the investment of time and risk worthwhile?
Or to put it another way, if I invest a week or two on Rails 3 tutorials, will it pay off in huge times savings later because Rails 3 development is way more efficient?
Other question
Is there a major downside to just sticking with Rails 2 for another few years or another four or five apps? Some looming danger I should be aware of?
Here is my take on it:
New plugins and gems will be developed for Rails 3.x, not Rails 2. And what speeds ups development most, are solutions supplied and maintained by a community.
Bundler. Although it can be used with 2.x, I admit.
Engines! It's not well docummented at the moment, and maybe a bit buggy, but I feel it will be an enabler for nice things.
Finally, and most important - you'll wake up one day, as a master in Rails 2.x, when a situation will require from you being a moderate Rails 3x framework user. That's inevitable imho.
And a transition to Rails 3 will not be as near as painfull where we had only beta / release candidates. So I encourage you to go for Rails 3.
There's a list of the most major changes at the Rails weblog, and others in the official Rails documentation. A lot of the changes involve cleaner syntax (some of the bigger ones being unobtrusive javascript and new routes syntax) and simpler ways to do common things (ActionMailer, chainable AREL).
As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 10 years ago.
I'm a Ruby on Rails newbie. I'm learning Rails in my spare time (my day job is C++ developer) and I like it. I would like to be paid to do Rails development full-time instead of C++.
How can I find a job in Rails when most job offering requires 2-5 years of Rails experience? What is the most effective strategy to get some credibility as a Rails Developer?
Thanks in advance for your answers.
I can't tell you how to get hired. I can give you the story of how I got hired, though. It may be helpful. Rather than putting the summary at the bottom, it's quite the long post:
Have a pet project
Learn all the time
TATFT: Test all the fucking time
Attend the local user groups
Share all the cool shiny things you come across
Contribute back to open source
Be active, helpful and constantly visible in the community
I got started with Ruby on Rails in September of 2006. My first project was not a blogging system like was cool at the time, but a forum system. I remember one of my first questions in the #rubyonrails channel was asking why I was getting an undefined method find on Thread, not knowing Thread was already a class.
In June 2007, I was hired at my first Rails job. I didn't know much then, perhaps a smidgeon more now. So as you can see, the process wasn't instant. Very few processes are.
What happened during this interval though was (aside from PHP contracting, being a checkout bitch and studying) that I continued asking questions in the #rubyonrails channel and refining the forum system until I got something I was happy with. In April 2007 the first official user group meeting of my home town begun and I attended that, mentioned I was doing PHP work whilst toying around with Ruby and was offered three business cards on the spot. I basically did cards.rand and picked a job that landed me an 8-month contract which I enjoyed.
I learned a huge amount during this job, as you should with any job. I applied what I learned to my forums, refining it using the techniques I was learning on the job. I've been refining it further and further since then and in its current incarnation it's probably my Open Source Magnum Opus.
After I left that job I was quickly picked up at another company where, again, I learned new things and applied what I had learned to my open source work. One of the greatest things to learn was automated testing. If you're not writing tests, you're at a huge disadvantage to those who are. I know of many prospective employers who are looking for people who can write good tests for their code.
Now that Github's about, I have a nice central location to share all my work where prospective employers can look. The only feature I crave from Github would be a list of all the projects I've ever contributed to, since this is what lures most employers. So far the "Big Three" in my mind would be: RSpec (better Hash diffing + other changes), Cucumber (That list of failing scenarios when Things Go Wrong(tm)) and Rails (documentation such as the Querying Guide and the in-progress Initialization Guide as well as bug fixes).
It also doesn't hurt to keep a blog of the technical (and not so technical) things you come across. If you provide useful information, you'll get noticed for that too. I got noticed enough that I was recruited to write a book.
I also attended the second Railscamp event in November 2007 where I met one of my future bosses and made a lot of "connections" with people in the Ruby community. I then went on to run a Railscamp in Adelaide (#4), and assisted with the ones following that in varying degrees.
I'm also very active in the community, helping out on of course here and the IRC channels on Freenode. Helping out is definitely one of the ways I've learned how to be a better Rails coder. You can witness other people making mistakes and suggest fixes, and also watch other people suggest fixes that you may not have thought of.
Currently, I'm teaching people Ruby on Rails and when there's nobody to teach I do development work. That's my day job. The night job is writing the book. I would advise you to only have one job, because over-work can lead to burn outs. That's what weekends are for, or so I'm told.
The best thing that you can do is have a live web application that is being used and is providing a useful service. Bring your laptop with the source code along on interviews and walk through it, demonstrating your mastery of and passion for the technology.
Contribute to open-source Ruby-on-Rails projects. You'll find lots of them on Github.