From: Richard Conroy Date: 2007-02-06T20:05:02+09:00 Subject: Re: Ruby Newbie Advice. On 2/6/07, Samantha wrote: > Hello all. > > Anyway, as I started to look at Python again, I happened to > discover Ruby. I spent about a month deciding on whether I wanted to > learn Ruby or Python, and as I looked at what was available, I felt > more at ease in Ruby. Python is a fine language, but it has language design choices that are a bit at odds with Ruby's choices. It seems to me that you will like one language or the other, but not both. Just conjecture on my part. I have found that from teaching my Dad & my Girlfriend programming, that Ruby seems to be a fine language for beginners. Which is nice, because it is increasingly a very commercial language, so if you get good with it you can make a career out of it. > > Okay, enough of THAT. I'm now at the point where I feel like I'm > reading the same thing over and over and over again. I'm not the most > patient person and I want to start coding something. I've already > made some small interactive 'kiddie' command line programs and the > such, but I'm getting bored. I just don't know where or what or HOW > to start. I am like you then. One big problem that I found with Ruby was the widespread lack of example code, I learn very effectively by example and by tweaking examples to fit my needs. Not enough example code exists for Ruby. Most of it is locked in books. If I was to recommend another book (I know your funds are tight) it would be the Ruby Cookbook. Its basically a highly comprehensive series of example solutions to example (but real world) problems. In addition to instructing you how to use them, it might also stimulate your ideas. There is another book, that is cheaper and may even be more appropriate: "Everyday Scripting with Ruby" which looks good, but I haven't received it yet. > So, I ask you, the gurus... Where do I start? This feels like a > writer's block and I'm sick of reading. I want to start *doing* But at the end of the day, learning to program involves programming. So basically pick a programming project. Anything. Pick something useful to you, or something that is familiar already from your own IT skills. examples: -extract author,album and track information (etc) from an MP3 file -then modify it to go through your music directories and build up a list -use the POP3 Ruby library to download your e-mail from your ISP -use one of the Ruby Web Automation tools (WATIR, Mechanize, Hpricot, RubySoupful, etc.) against some public web sites, for example try to monitor the bidding status on an ebay auction -make a simple text editor UI -make a program that monitors your bittorrent download directory (all legal of course) and e-mails you when one finishes If there's one thing I love about Ruby, is that it has made me ambitious about programming again. I no longer think about a problem "that sounds hard", "I am biting off more than I can chew here", "maybe I will try just one of the subtasks to see how far I can get". And apparently this experience scales down to beginners too. I get a sense of manic glee when I hear war stories about beginners delivering commercial quality projects with Rails. Its like they haven't learned that what they are doing is supposed to be hard, so they have no fear of it. Have fun learning, and welcome to the community. regards, Richard.