From: Sy Date: 2005-04-14T02:51:25+09:00 Subject: Re: On motivating a Ruby nubie On 4/13/05, Ara.T.Howard@noaa.gov wrote: > another peice of advice : share your work. it's suprising how motivating it > is knowing others will/might be reading/using your code and it also encourages > you to abstract your problem into a more general solution which, 98% of the > time, leads to a more elegant solution as well. I'm thinking along the lines of keeping a learning journal / snippets database. -- On 4/13/05, James Edward Gray II wrote: > Yes, I read a lot of books and yes they really help. However, it's my > opinion that there is simply no substitute for quality time spent > talking to a compiler. For me, that's the key. Ok.. so a little bit of coding every day.. finding little snippets to learn and log.. keeping a bit of a database of my efforts so I don't have to revisit the wheel. Sounds good. > (When you get more experienced the rule changes to "Read code.", but > that's another topic...) That's still very necessary.. since people who are new and enthusiastic will commonly turn to code examples for sections to steal. Just take a look at everyone's experimentation with mod_rewrite.. I know the first thing I did was borrow someone's solution to jurryrig it to my own setup. It worked too.. but of course the real learning has to begin when I break my setup and the rewrite doesn't work. So in the short run, ruby code is excellent to learn stuff from.. and to borrow.. but as soon as my inventiveness kicks in and I shuffle a design around it'll break all my borrowed code.. forcing me to learn enough to rewrite those parts (and to learn proper coding practices, troubleshooting skills.. and all that good stuff). -- On 4/13/05, Rob . wrote: > I agree: write code > Contributing to or starting your own open source / free software > project makes things more exciting as there is the potential others > might start using your code. This can be a great motivational aid - > careful though, it can become addictive! Starting a project, especially an open project, is way away from my current inspiration. I think maybe little embarrasing personal projects which are coded in the open air would do pretty well. I still have a kind of learning weblog thingy in mind. -- On 4/13/05, Dave Burt wrote: > For books, I recommend Why's (Poignant) Guide to Ruby, which is a hilarious > romp through the Ruby language. I noted that. I read through some of it.. I understand some of it. While it certainly cheers me up and gives a good introduction and such.. It's not motivating in the least. It got very horrible very fast and I've no intention to finish it until I can make better use of the early chapters. What I think I'm going to do is step back and begin to write my own tiny tutorial as my learning tool. I'll grab some code snippets and make them do stuff.. and write notes to myself as to how things work and why. With this, I should be able to dump in various learning examples and such. It should work out ok. I figure I can get away with this functionality on my existing wiki. Maybe (one day) my "big project" should be a simple ruby weblog? It's a fairly straightforward concept.. but with lots of curious intricacies that could keep me very occupied. > Instead of games and other people's quiz suggestions, you could also rewrite > something you've already written (i.e. those batch files, or anything you've > done in C) or, perhaps even better, build something you need. If you can > identify a repetitive computer-based task you do a lot, if you can imagine > that some of the repetition could be relieved, figure out how. Ask this list > when you're stuck - we love to help with this kind of thing. I'm wondering if I can rewrite some of the crap I had tinkered with in ruby. There isn't much point.. many of those tools are too specific to DOS.. and I don't really use any of that anymore. Maybe the most productive thing to think is that I would like to see Ruby as my problem-solver for my not comprehending bash and most shell tools. Much of it would be reinventing the wheel. But in doing so I would be learning ruby, solving my problems and .. well doing things in ruby for others to maybe learn from too. Some simple ideas: * Search through directories, looking for file 'x' * search through files in directories, looking through their contents for 'x' * file split/merge * simple backup solution * disk / directory / file reporting -- which directories have the most files.. which take the most space.. etc. * Appointment book / calender * clock / scheduler