Topic: Ruby on Rails worthwhile to learn for complete newbie?

I know this question has been asked before, but it's always with the caveat -- "I come from a PHP, Java, C++, ASP etc"... background. I'm a total newb on the other hand. I have only HTML/CSS and some Javascript.

I'd like to add a server side language to my skillset, so I've been studying Ruby on Rails. It's been going ok, but I'm finding it hard to put the skills to use. In my area there are a lot of jobs for PHP/Drupal developers, but nothing for Ruby and Rails. I'm concerned I've gotten a little off track, and am learning an advanced language, when really I should be tackling something like PHP.

Since the market seems a bit the same for PHP and Ruby, did most of you learn PHP first, and then come to Ruby afterward to make your lives easier? Does anyone have advice, on if HTML/CSS/Javascript/PHP/RoR is a good path for advancement in web development?

Re: Ruby on Rails worthwhile to learn for complete newbie?

I learned PHP first, though I don't think there's any benefit to learning PHP just as a stepping stone for learning Ruby. Keep in mind that learning a framework is different than learning a language. Learning Rails and Ruby would be similar to learning PHP and a framework like CakePHP at the same time. I think the learning curves are similar if you take this into account.

Jobs vary a lot depending on where you're looking in Michigan. I haven't found many Rails opportunities in East Lansing, but I know of opportunities in Ann Arbor and on the west side of the state. There are Ruby meetup groups in Ann Arbor, Grand Rapids, and Farmington if you are interested in learning more at one of those. There are meetups next week in Ann Arbor and  Farmington; I'm not sure about Grand Rapids

I don't think learning Rails would be any harder than learning a PHP framework. Personally, I'd much rather use Rails; I'm sure you've read about productivity comparisons elsewhere.

Are you still a student at State?

Don't hesitate to shoot me an email if you have any more questions about learning Rails or opportunities in Michigan.

churchza at msu dot edu

Re: Ruby on Rails worthwhile to learn for complete newbie?

Hey thanks for the reply. It's nice to see someone else from the area! I actually just graduated in May, so I'm on the job hunt right now.

I guess my question is what would someone be looking for a Ruby on Rails developer to do?  They seem like advanced positions. If a local business wants a dynamic website usually they are just looking for some Javascript/Flah and a CMS to manage it. Is there something I could add in Ruby that Drupal or Wordpress wouldn't cover?

If I had to go freelance, and someone wanted a dynamic site I'm not really sure what I would say I could do for them, aside from maybe building a CMS. I just wondered if I would get more practice learning PHP first.

Anyway thanks for the heads up about the meetups. I may check one out.

Re: Ruby on Rails worthwhile to learn for complete newbie?

Do you think you could build a web application in PHP but not Ruby/Rails? What application do you think you could build in PHP?

Re: Ruby on Rails worthwhile to learn for complete newbie?

I don't think that PHP can build something that Ruby on Rails cannot, and I myself definitely cannot build anything in PHP.

I had a friend that could have recently tossed two jobs my way. One was building her a new site for her business. She wanted a CMS, and was thinking Wordpress or Drupal. She also has a client that wanted some work done on his site, but he uses Drupal as a CMS.

Both of those are PHP, so I was thinking well I don't know PHP, but I do know Ruby on Rails a little...how could I make this work? I've looked, but haven't found a fully developed CMS in Ruby on Rails yet so that meant I would have to make one myself which was kind of daunting.

Her client may have been open to a new CMS, but again I'd have to build it from scratch and migrate everything over. In his mind, why switch? So, I've seen many people on this forum who already know PHP. If they get a job that requires PHP...ok, no problem. It might not be your favorite language but it pays the bills.

On my end, I have no server side experience, so I wonder if I should maybe learn PHP first since it's more of a beginner language, and many sites already use it?

Re: Ruby on Rails worthwhile to learn for complete newbie?

Go with PHP if you think that it will be easier I guess. But if you have no experience or skills in either I don't see why it will be easy for you to get a job in either language. My suggestion would be have a look at PHP and whatever framework, and also have a look at Ruby, Peter Cooper's Beginning Ruby is an excellent book, also Agile Web Development with Rails is a great book for starting Rails, as well as the excellent http://guides.rubyonrails.org. If it seems that Ruby is too hard go with PHP I guess.

Re: Ruby on Rails worthwhile to learn for complete newbie?

Personally, I think you are looking at this the wrong way.

Putting together a website with Wordpress or Drupal or any other blog/cms software has nothing to do with knowing PHP or whatever language the app is written in. For most of these you will upload the files to the server, run an install script, and then change the design using the built in editor. Absolutely no PHP knowledge is necessary unless you are planning on modifying the way the app works which you most likely will not need to do. You are simply putting a few things together on an already established foundation.

The reason to learn PHP, Ruby/Rails, Python/Django would be so that you could create a custom app to be used on a website.

For instance, if you knew anyone of these languages, you could have told your friend that you would develop a custom solution for her business using [insert language/framework here]. Tne you could explani the benefits of using this custom app, so on and so forth.

You just need to decide if you want to put websites together or if you want to create custom applications for people.

Just my 1.5 cents. smile

Boo.

Re: Ruby on Rails worthwhile to learn for complete newbie?

Thanks for the replies. I guess that's what I'm trying to find out, whether to build websites or applications.

At my skill level, I seem to be getting interest from clients who want a website. They'd like a CMS, and maybe a blog and calendar of events, maybe an e-commerce site. I'd like to be able to add these dynamic elements as part of my toolkit.

Since the two big CMS right now are written in PHP, I'm just wondering if it makes sense to learn that language first, so I can implement a CMS and then add a few customized dynamic elements as the client sees fit.

I have no doubt that RoR is great at building complex web applications, but since I'm a newb I'm not getting requests for that stuff. So again I just wonder if it's best to learn something like PHP first so I can modify existing code, and then move to Rails once I want to build bigger applications.

Re: Ruby on Rails worthwhile to learn for complete newbie?

These big php blogs, CMS, whatever are really poorly designed, they are a huge mambo-jumbo bag of code, very hard to read. I would not recommend to learn php.

Re: Ruby on Rails worthwhile to learn for complete newbie?

If you have people who want you to put together websites then I would start there. Build up your client base and portfolio.

I honestly don't think you need to "learn" PHP in order to use Wordpress, Joomla, Drupal or whatever system you are looking at. You will most likely be able to find a plug-in that does exactly what you want. If you need to modify some code then you can use the documentation provided by the software which is most likely as far as you need to go.

Personally, I don't think it is a bad thing to have experience with multiple languages. My web programming started with Perl, shifted to PHP, and now my primary focus is Ruby/Rails...but it certainly hasn't hurt me.

My advice is this...learn the skills you need to be successful.

Boo.

Re: Ruby on Rails worthwhile to learn for complete newbie?

I think this is a problem with the Webprogramming in general. I come also from a PHP background and have already freelanced a little.
What i saw was most of the time small companies that wanted some business-website. And it has to be cheap. So when jo made them an offer they would of course choose the option with a prebuild CMS where i just have to write a template and install it on a server.

Its really rare that someone wants a special developed Website...

The fakt is most Companies don't care whether the code behind their websites is crappy or not, they don't care whether their webpages are static html files where a change in the design has to be made in 20+ files and not just a template.. cos they don't make the changes they will hire a student or something like that and let him do the stuff for almost no money.

It's at least my expirience and how i saw it here in germany.

Re: Ruby on Rails worthwhile to learn for complete newbie?

Sulo wrote:

I think this is a problem with the Webprogramming in general. I come also from a PHP background and have already freelanced a little.
What i saw was most of the time small companies that wanted some business-website. And it has to be cheap. So when jo made them an offer they would of course choose the option with a prebuild CMS where i just have to write a template and install it on a server.

Its really rare that someone wants a special developed Website...

The fakt is most Companies don't care whether the code behind their websites is crappy or not, they don't care whether their webpages are static html files where a change in the design has to be made in 20+ files and not just a template.. cos they don't make the changes they will hire a student or something like that and let him do the stuff for almost no money.

It's at least my expirience and how i saw it here in germany.

Yes, that's what I've been seeing here myself. I really don't want to be another developer putting crappy PHP code into the world, but I also have to get paid, and alot of times it comes down to price. The reason a small business would get a site developed by a "friend of a friend" instead of a mid-sized web company usually involves price. I'm at a disadvantage there if I'm hand-building RoR web apps, and the next guy is using some pre-built CMS like Wordpress and just designing a template.

I don't think it's until you get to the big leagues that you'll get clients who want specialized web applications built.

Anyway, I appreciate everyone's advice on this. For now, I have an app that I'm building for myself and my fiancee that will be done in RoR. For career potential though, I think I need to learn some PHP before I adopt RoR full time. It sucks since I'm not even good with this language yet, but in the end I have to pay the bills.

Re: Ruby on Rails worthwhile to learn for complete newbie?

As a developer with a background in both PHP and Ruby on Rails, I've had interesting experiences getting jobs with both.  There was the company that hired me as a PHP developer because I had experience in Rails (they had a home-grown framework written in PHP that really wanted to be Rails).  Then there was the position I have now that I got because of my Ruby on Rails background, and I find myself doing mostly PHP because Rails is not yet supported on the organization's central servers (NASA, don't ask...).

I did freelance web development while I was learning the software development trade.  I experienced the typical clients that you and others have experienced -- need a web site, don't care what powers it as long as it works and is cheap.  Honestly, from the client's point of view, there is nothing wrong with that.  Those clients can be a good source of ongoing revenue if you add value beyond what they can get with the bosses nephew or some random high school student.

Recently at work I've been adapting a set of HTML and CSS templates to Wordpress, and I must say I like what I see.  The current Wordpress administrative interface is absolutely excellent--far better than what I could deliver to client with PHP or Rails in any reasonable timeframe (read cheap client timeframe).  They provide plenty of hooks to extend and modify the function of the CMS with PHP.  You only need to start with the basics of PHP to get going developing templates, and there is excellent documentation on the Wordpress.org site.  Given your current mix of clients, some Rails experience, you would find picking up the PHP necessary to do that pretty easy, I think.

I certainly wouldn't want to discourage you from going deeper into Rails either.  Ruby is a wonderful language, and worth learning.  PHP is no Ruby, but it is not bad either.  Knowledge of both opens the door to understanding an array of languages.  OO PHP 5 is quite similar in form to Java.  Ruby's Smalltalk heritage is also found in Objective-C (iPhone apps are the rage these days), and there are many more languages that share one feature or another with either language.

Re: Ruby on Rails worthwhile to learn for complete newbie?

This was one of the most informative threads I've found on the subject of choosing a framework when starting out as a freelance web developer.

And it really comes down to what tool will get a given job done for the least cost to not only the customer, but to the developer in terms of time to learn the tool, etc.  I'm still very much at the left edge of the Ruby and Rails learning curve, but I chose it to concentrate on because of its ability to build basic CRUD applications quickly and cheaply.  But as several of you pointed out, sometimes it comes down to just giving a customer a finished product at a price the customer, and you, can afford.