From: bbiker Date: 2007-02-06T14:15:08+09:00 Subject: Re: Ruby Newbie Advice. On Feb 5, 8:10 pm, "Samantha" wrote: > Hello all. > > I've decided after about a week or so of being on the list to come out > of hiding and ask a couple of questions. My email addy of > rubygeekgirl is not a reality, but more of an aspiration. :) > > Real quick background on my knowledge and skill level -- I played > around with BASIC on my Commodore VIC 20 at the age of 8 (which was 22 > years ago). A couple of years ago I started to try and learn Python. > Fast-forward to Fall of 2006, I decided to try and pick it up again. > In addition, I also decided to go back to college and my first class > this last semester was Programming Logic and Design. The course was > pretty much about logic (imagine that) and we covered loops and mostly > procedural programming, print charts, arrays, and that's pretty much > it. 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. I read a few tutorials, went out and bought the > PickAxe about four months ago, and did my best to get through it. I > think a lot of it is a bit over my head. I also looked at the Pine > online book and the Why's Poignant guide, in addition to the Little > Book of Ruby and a couple of other resources. > > 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'm starting to look at code snippets over at Ruby Forge... I also > just got laid off a few weeks ago, so money is tight, otherwise, I'd > go out and buy The Ruby Way, which I perused at Barnes and Noble last > week and fell in love with. > > 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* > > I have the IDEs installed, I have Ruby installed on my Gentoo Linux > box... > > I'm sick of writing things asking for the user's name and if they want > to try a chocolate chip cookie. :) > > Thanks so much in advance. I apologize for my verbosity. > > Samantha > > http://www.babygeek.org/ >From one newby to another. Well I do have an advantage in that I know C and Perl so I have had experience in programming. I have been using Ruby for about 6 months. I learn best by doing rather than reading. But obviously first you read and then you write code. And then read some more and write more code. It is best if you find something that you by hand that can be automated by a program. In other find some task that you are familiar and interested in writing a program that would do the task. The first non-trivial program that I wrote does bridge hands analysis. The general scenario goes something like this. 1. Interface with a 3rd party program that generates a specified number of hands need to learn how to interface with this progam need to learn how to import the hands 2. Call on another program to do what is known as "double dummy analysis" need to learn Win32API so I could communicate with the double dummy analysis program need to transform the bridge hands from one format to a format acceptable to the double dummy analysis program need to learn how to interact with double dummy analysis program need to save the results 3. Analyze the results to obtain additional facts from the raw data provided by the double analysis program. 4. Present the result in format that is easy and clear to read Actually I save the result in a csv file and use Word's mail merge to generate the output file and print the results ... 18 hands per page. Now it took about a month to do it. At each step of the way I had to go back an read how to accomplish what I wanted to do. First read, do some coding, test the code to verify that it did what you expected. If it didn't, then read some more to try to see where you failed and rewrite that code. Repeat until you succeed. Note that I made use of other program and/or libraries to actually do the bulk of the work. True, I had to learn how to communicate with these programs on a trial and error basis since the authors of these programs did not provide any hand holding...just the barely sufficient written information. If you want to really learn how to program you need to pick something of interest to you. Make a general plan on how the program should proceed. Then take the first step.