Why I want to learn Ruby is a pretty complecated topic. There are
subtleties of philosophy which I appreciate more than the other
things I've read through. The atmosphere of programming is something
I could readily cite.
Learning to program is a matter of finding myself increasingly
frustrated at using the solutions made by others. There are things
I'd like learn to do myself.. of note, I want to make a life manager
-- a to do list, with requirements and such which also acts like a
mind mapper, a wiki, etc.
···
On 4/13/05, Joe Van Dyk <joevandyk@gmail.com> wrote:
Why do you want to learn Ruby? Why do you want to learn to program?
--
On 4/13/05, James Toomey <jamesvtoomey@yahoo.com> wrote:
In my experience, the motivation comes from choosing something that you
really think would be neat and want to accomplish, not just a pretend
goal.
An excellent point, and I agree. The problem is when my ideas are a
LOT bigger than I could possibly begin working on. Right now, my
problem is with taking a huge and motivating idea and breaking it
into sensible chunks.. so I can work on small things which pay off now
while working towards something larger. I am having a hard time
envisioning the process. I keep stumbling over ideas which are too
intimidating to my skills or ideas not motivating for me to learn for
or from.
Therefore, I've found that you should do one of two things:
1) Create something that's very personal and enjoyable;
2) Create something that helps you do a needed task.
This seems to be the general concensus. I suppose what I need to define is:
Which of my problems,
* is small enough for me to understand a solution for
* is personal to me enough that I desire a personal solution
which has,
* other peoples' solutions for which I can model my own solution after
I'm not sure this thinking is complete..
I don't think I need to bother to think in terms of if I can learn
something valuable from a project like this.. it appears that
learning is a byproduct of the effort and shouldn't be directly
focused on. Heck, I should probably just have fun with the senseless
butchering of code and produce something useful as a byproduct.
It's those dead-end
points where you really learn, because that's when you web-search, and
ask questions, and web-search some more, and drop by Barnes & Noble to
browse the books, and stay late into the night taking "just one more
crack at it," and eventually you get it right, it feels great, and
you've learned a lot.
Strangely.. I've done this. I remember playing around with a mud
client which used a restricted tcl scripting command set. That was
fun, but I ran into many barriers for various reasons.
The other neat thing about designing a website is the minimal cost. You
can find a webhost who is Ruby-enabled and it probably wouldn't cost
more than $10-$20 a month, plus $10 for a domain name, and that's it!
Free. Without a doubt, I'd host it all myself. That's another
learning experience I'm beginning to appreciate. Yes, I'm looking at
web-enabled applications too.. I used to think that maybe that was a
big step for me, and yet I'm inspired by seeing things like Rails.
---
On 4/13/05, Chris Pine <glyconis@gmail.com> wrote:
Well, I did create a tutorial especially for nubies...
You're already high on my reading list. =)
the code samples are run every time you request the webpage
I *LOVED* this idea. That's just the kind of functionality I'd love
to see in a ruby wiki.
I think that, for me, it's a matter of taking any
tedious aspect in my life, and trying to see how programming could
help do that for me.
A few people have mentioned this. I can certainly see how this is a
good motivator. I myself slaved for far too many hours on a 4dos
script which learned the type of an archive and simply extracted it.
Yes, with thousands of archives and back in the day when there were
various kinds.. I wanted a tool which would do this simple task for
me.
Of course, the problem was that it got WAY out of hand.. and i started
meddling with other archiving software and integrating new
functionality. It was very neat.. but I passed the stage of solving
my immediate problem.
I think this is sortof how I learn though.. I go off onto random
tangents. The most valuable thing I've done so far is to try to be
as organized as possible so that when I go off on a tangent all of
that effort is saved.. so that I can always refer back to it later if
I wanted. Then I could just be a hummingbird trying stuff out.. and
every so often I'd take another pass at some old but still
interesting thing I worked on a while back.
- writing a music-organizing program so I can say things like "Play me
some upbeat jazz and lounge, but only stuff I haven't listened to
recently, but after two hours or so, tone it down to some mellow,
instrumental lounge... with a sprinkling of Stereolab"
This one's on my list of stuff to do as well. A proper database
relating all kinds of music based on mood, theme, preference etc..
then it could be smart and play music which sounds good to my present
mood, but it could shift the music mood slowly to something else.. so
I could wind myself down very easily using music. =)
Your time saving vs fun arguments are good. A lot of people speak on
the same issues.