SitePoint Sponsor

User Tag List

Results 1 to 13 of 13
  1. #1
    SitePoint Member
    Join Date
    Dec 2007
    Posts
    17
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    ROR learner on point of giving up

    Hi all

    Following Lentz tutorial. Up to around p160. Near point of giving up after the mend-boggling boring-ness of having to read about unit testing and so on. I feel like I've gone through a lot but hardly anything has REALLY been understand. I get the general idea so far and am beginning to see some of the shortcuts to working that ROR offers but right now I'm ready to revert back to brushing up my dusty PHP.

    It just seems like i have SO much to learn...

    any words of encouragement? Or should I just dump it and go back to php.

  2. #2
    SitePoint Addict jpease's Avatar
    Join Date
    Jul 2002
    Location
    In the network.
    Posts
    217
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    If you find reading books about programming "boring" and don't like having "SO much to learn" than maybe you should consider something other than programming entirely.

    Being a programmer involves constantly learning new things that many others would consider "boring".

    If you want to program, than stick with it. By learning the coding ideas behind Rails, you will also become a better PHP programmer.

    If you think Unit Testing is boring, you probably haven't yet enjoyed the excitement of maintaining production code or debugging new releases.
    Then perhaps it will seem less boring.

  3. #3
    SitePoint Member
    Join Date
    Dec 2007
    Posts
    17
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    ooh. that was harsh!

  4. #4
    SitePoint Addict jpease's Avatar
    Join Date
    Jul 2002
    Location
    In the network.
    Posts
    217
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Quote Originally Posted by mr_goosey View Post
    ooh. that was harsh!
    Sorry. Not trying to be harsh. Just realistic.

    I'd suggest not giving up. But your post kind of suggests that you are looking for something easy, and programming isn't necessarily easy regardless of language.

    My guess is the reason PHP seems like an easier option to go back to is because you have used PHP for very basic programming. Rails provides a solution to a more complex problem than you perhaps are used to working with. So it's not necessarily the language that is more complicated, just that you are learning how to work with a more complex scenario.

    It's kind of like saying "I've been trying to learn Algebra and it is boring and hard. Should I go back to simple addition?*" Addition is easier than Algebra, but sometimes you need to solve more complex problems than addition will allow.

    Have you tried any PHP frameworks, like CodeIgniter or Zend? If not, I doubt you will find those significantly easier than Rails.

    *I'm not comparing PHP to simple addition. I'm comparing problems of differing complexity.

  5. #5
    SitePoint Member
    Join Date
    Dec 2007
    Posts
    17
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Yeah sorry I was just moaning because I'm finding myself getting bogged down learning. Struggling with some stuff. More than willing to put in the work.

    I used php to design a content management system, relational DBs etc a few years ago. Rails just seems, well, harder! Maybe it's just the learning curve.

    Thanks for the replies anyway!

  6. #6
    SitePoint Addict jpease's Avatar
    Join Date
    Jul 2002
    Location
    In the network.
    Posts
    217
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Hmm. Well maybe it's the book. I've never bothered with the SitePoint book. So I can't comment on it.

    My first introduction to Rails was with the "Agile Web Development" book, which is more or less the "official" book. That book seemed fairly straight forward to me.

    If you are struggling with certain things, post questions about those things.

    When you programmed this CMS in PHP, did you use Object Oriented programming? If you are not used to the concepts of OO programming, the move from PHP to Ruby requires some adjusting to how you think about problems.

    Also - it would probably be a good idea to get the Ruby PickAxe book too (if you don't have it already). Trying to learn a framework written in a language that you are not familiar with just adds to the complexity. To really understand Rails, it helps to have a working grasp of Ruby.

  7. #7
    l 0 l silver trophybronze trophy lo0ol's Avatar
    Join Date
    Aug 2002
    Location
    Palo Alto
    Posts
    5,329
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)
    Here's my two bits.

    If you're having issues grasping unit testing, don't worry about it. Rails is interesting in that it stresses a lot of best practices - testing, version control, deployment control, database versioning, and so on - which are all really great topics to learn and grow with. But it can be hellish to try to learn all at once. I don't see any problem with going for the basics right now- learn the basics of Ruby and Rails, and then learn a topic like database migrations. Use that to a point you feel comfortable with and then expand from there.

    There's also a matter of being "ready" to learn things. For example, if you force yourself to learn testing for the sake of learning testing, you'll very likely be wasting your time. I know if I forced myself to pick up testing about a year ago it would be a complete waste. But after I had learned more of the basics behind both Ruby and Rails, I understood why testing was so stressed in the Rails community, and why writing tests for my code was so absolutely helpful. The same goes for Rails migrations, REST, heck, even MVC itself at one point. You pick up different aspects of development at different times depending on your own progress through it.

    In a more general regard, though, yes, Rails can be a bit daunting at first, mostly because you're not learning a framework, you're learning a framework AND a new language. And then there's all those fringe aspects that I touched upon earlier, too. There's a lot to learn. Personally, the more I learn about Ruby and Rails, the more I want to learn more about it- it's very worth the trouble, in my book. The initial hump can be troublesome though.

    As Justin touched upon, perhaps you might want to give a few PHP frameworks a shot too. But again, as a framework they'll likely be stressing a lot of the same points that Rails does (and a lot of the newer frameworks model themselves off of Rails itself, too). Now's not really the time to go crazy on the Ruby vs. PHP vs. Java vs. VB vs. Basic vs. Whatever tangent, but I think what drives a lot of Rails developers is Ruby itself, so if you have questions about sticking with it, start there. Do you like working with Ruby as a language, or do you like PHP (or Java or whatever) better? It's much harder to learn a framework like Rails or CakePHP or Django if you really just don't like the underlying language of Ruby or PHP or Python.

    If you do want to stick with it some more, you'll find plenty of support on these forums and blogs and the Ruby and Rails community in general- we're just a quick post away.

  8. #8
    SitePoint Member
    Join Date
    Jan 2008
    Location
    Sebastopol, Calif. USA
    Posts
    5
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    Don't give up!

    If you want to build sophisticated web sites, I hope you stick with it. If you're only building fairly simple sites, Rails may well be overkill.

    Rails can be challenging to learn. There are so many aspects to it, and it seems like there's so much you need to get your head around before it makes sense. But once you get there, you have a very powerful tool at your disposal.

    If you're struggling with any of the core concepts, allow me to recommend my podcast, www.LearningRails.com. It doesn't teach you how to code, but it helps lay a more solid conceptual foundation that will make learning the coding easier.

    Don't worry about testing until you are comfortable with the basics. You can just ignore it and it won't get in your way. I also suggest ignoring everything about Ajax and RJS at first; you can layer that on later. And don't worry about all the various kinds of model associations and validations and so forth; just learn how one of them works, and you can learn the others when you need them.

    You might try some of the short screencasts at www.RailsCasts.com.

    If you don't know any Ruby programming, I'd start with a book like Beginning Ruby and get comfortable with the language before you try to go to far with Rails. In particular, you need to be comfortable with how classes and objects work, and you also need to understand a bit about blocks -- one of Ruby's most unusual features, which isn't hard once you understand it, but quite alien if you're coming from most other languages.

    Finally, if you can afford it, consider taking a seminar. There's nothing like watching and working with people who really know their stuff to get over the hurdles. I took both the introductory and the advanced studio from the www.PragmaticStudio.com folks, and although they were expensive I found them invaluable. They do assume a computer science background, though.

    If you happen to be near San Francisco, I'm co-teaching an introductory seminar that provides a gentle introduction for web designers and developers, which you can find at www.RailsQuickStart.com.
    Michael Slater
    www.BuildingWebApps.com
    Resources for Ruby on Rails Developers

  9. #9
    SitePoint Member
    Join Date
    Dec 2007
    Posts
    17
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    When you programmed this CMS in PHP, did you use Object Oriented programming? If you are not used to the concepts of OO programming, the move from PHP to Ruby requires some adjusting to how you think about problems.
    No, I didn't! It was a rather ad-hoc, cobbled together, sloppy thing! It worked very well, but I do suppose it would have been better to follow some design principles (the likes of which ROR advocates).

    allow me to recommend my podcast, www.LearningRails.com
    Looks perfect, to clear up some issues in my head! I've subscribed

    having issues grasping unit testing, don't worry about it. Rails is interesting in that it stresses a lot of best practices - testing, version control, deployment control, database versioning, and so on - which are all really great topics to learn and grow with. But it can be hellish to try to learn all at once.
    That's just it, there's so much. It's like in my head I'm trying to translate what I'd do in php to how it'd work in ROR. Things as simple as setting up admin panels and so on.

    Anyhows, thankyou all so much for the encouragement and advice, it has made a difference! I'm now 200 odd pages through, after a few all nighter sessions I think I'm finally beginning to grasp some of the concepts involved.

    I also have a friend who writes the ROR back end for a massive UK electronics online store who (hopefully) will be willing to sit down with me for an afternoon sometime soon and help out with some of my probs!

    MRG

  10. #10
    SitePoint Member
    Join Date
    Dec 2007
    Posts
    8
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Don't give up man, I too am struggling through rails. But I'm learning

  11. #11
    SitePoint Member
    Join Date
    Dec 2007
    Posts
    17
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    I have resolved not to, it's a rocky ride though! I'll spend 6 hours failing to solve the simplest of problems, then 3 very productive hours where everything clicks! Oh well, such is life!

  12. #12
    SitePoint Member
    Join Date
    Jan 2007
    Location
    Canada
    Posts
    2
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Reading your opening post truly reminds me of how I felt towards Rails at the beginning... I mean I was very confused and considered going back to PHP for development many times. But I kept hearing praises about the framework and liked Ruby as a programming language so decided to stick with it. It's been 6 months now and I don't regret a single frustrating moment I've had figuring out ROR. Thing is, it just has this VERY steep learning curve which can get discouraging but once you get past that, it's like everything comes together at the same time and you quickly get addicted to the stuff...

    Trust me, just keep bashing at it and you will see the light.
    Once you do there is no turning back.

    Nick

  13. #13
    SitePoint Enthusiast ValPaliy's Avatar
    Join Date
    Sep 2005
    Location
    Nikolaev, Mykolayivs'Ka Oblast', Ukraine, Ukraine
    Posts
    27
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Quote Originally Posted by jpease View Post
    Sorry. Not trying to be harsh. Just realistic.
    I'd suggest not giving up. But your post kind of suggests that you are looking for something easy, and programming isn't necessarily easy regardless of language.
    differing complexity.
    I think what was meant is that (no offense, the author is cool and the book is nice) the book is written in such a way, that you want to stop reading it at some point. The thing is - you need to try to code as you read - experience is king, and you gain experience not only by reading, but also trying. And thinking. No book can teach you how to program, for it's also a process of thinking.
    Any opinion stated here is MHO. | http://design.paliy.net.ua/


Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •