[Tutor] determining whether a set is a group

Deirdre Saoirse Moen deirdre@deirdre.net
Sat, 28 Apr 2001 23:10:28 -0700


--============_-1223597837==_ma============
Content-Type: text/plain; charset="us-ascii" ; format="flowed"

The hardest part about learning to program, and the reason why so 
many people give up on it is exactly what you said below: knowing 
where to start. That's why we're here. :)

And you're right -- a lot of people learn to program for the same 
reason you do: because they want to do something and they are lazy. 
In fact, I think there's a Linus Torvalds quote about why that makes 
him a good programmer.

The first thing to ask about any project is: "what do I know about 
it?" You'll realize that you know more than you think you do, you 
just may not have broken it down into the little baby steps computers 
want. Most programming isn't hard really, just time-consuming.

The next thing is to start with what you can program in the project. 
The overall problem may seem too huge, but right now, you probably 
can start with something. In other words, start somewhere. This is 
counter to advice you may get later on (on how to design) but you 
know enough to do *something* most likely (like ask the user how many 
elements are in the set).

Then, when you knock off all the things you know how to do, then 
there's a few things you don't know. As much as you can, break each 
one down into pieces and write what you can. Yell for help when you 
need it.

Most of the expertise gained in the first few years of programming 
for a living isn't anything you learn, you just learn how to go 
through this process more efficiently.

>Hello everyone!  I took a modern abstract algebra class this 
>semester and there is something that caught my attention, and which 
>I think would make a neat program.  I would like to have a program 
>in which given any set and the table accompaning the set, the 
>computer would display a message stating whether the set is a group 
>or not.  I guess I would have to get the computer to ask for the 
>amount of elements in the set, say 6, and then have the computer 
>generate a 6 by 6 matrix, in which the user would enter the 
>corresponding table, so the computer can figure out, after testing 
>for the required properties, whether the set is a group or not.  You 
>might think that I'm very lazy to want the computer to do this for 
>me, and I guess you are right, this is probably the reason why 
>computer programming is becoming more interesting by the minute. 
>You do the work only once and then the computer does it for you.  It 
>is beautiful!  I have so many little projects that could make my 
>life much much easier, that I don't know where to start.  My only 
>and biggest problem is that I'm a computer illiterate and have no 
>clue as to where to start, however, I'm willing to do what it takes 
>to learn.  I know that some help over the internet might not do 
>miracles for me, but I guess it would be a start.  I have the book 
>Teach Yourself Python in 24 Hours and I'm reading it, but I guess I 
>need more help.  Can you help me.

-- 
_Deirdre     Stash-o-Matic: http://weirdre.com      http://deirdre.net
"I love deadlines. I like the whooshing sound they make as they fly by."
                                                          - Douglas Adams
--============_-1223597837==_ma============
Content-Type: text/html; charset="us-ascii"

<!doctype html public "-//W3C//DTD W3 HTML//EN">
<html><head><style type="text/css"><!--
blockquote, dl, ul, ol, li { padding-top: 0 ; padding-bottom: 0 }
 --></style><title>Re: [Tutor] determining whether a set is a
group</title></head><body>
<div>The hardest part about learning to program, and the reason why so
many people give up on it is exactly what you said below: knowing
where to start. That's why we're here. :)</div>
<div><br></div>
<div>And you're right -- a lot of people learn to program for the same
reason you do: because they want to do something and they are lazy. In
fact, I think there's a Linus Torvalds quote about why that makes him
a good programmer.</div>
<div><br></div>
<div>The first thing to ask about any project is: &quot;what do I know
about it?&quot; You'll realize that you know more than you think you
do, you just may not have broken it down into the little baby steps
computers want. Most programming isn't hard really, just
time-consuming.</div>
<div><br></div>
<div>The next thing is to start with what you can program in the
project. The overall problem may seem too huge, but right now, you
probably can start with something. In other words, start somewhere.
This is counter to advice you may get later on (on how to design) but
you know enough to do *something* most likely (like ask the user how
many elements are in the set).</div>
<div><br></div>
<div>Then, when you knock off all the things you know how to do, then
there's a few things you don't know. As much as you can, break each
one down into pieces and write what you can. Yell for help when you
need it.</div>
<div><br></div>
<div>Most of the expertise gained in the first few years of
programming for a living isn't anything you learn, you just learn how
to go through this process more efficiently.</div>
<div><br></div>
<blockquote type="cite" cite><font face="Arial" size="-1">Hello
everyone!&nbsp; I took a modern abstract algebra class this semester
and there is something that caught my attention, and which I think
would make a neat program.&nbsp; I would like to have a program in
which given any set and the table accompaning the set, the computer
would display a message stating whether the set is a group or not.&nbsp;
I guess I would have to get the computer to ask for the amount of
elements in the set, say 6, and then have the computer generate a 6 by
6 matrix, in which the user would enter the corresponding table, so
the computer can figure out, after testing for the required
properties, whether the set is a group or not.&nbsp; You might think
that I'm very lazy to want the computer to do this for me, and I guess
you are right, this is probably the reason why computer programming is
becoming more interesting by the minute.&nbsp; You do the work only
once and then the computer does it for you.&nbsp; It is beautiful!&nbsp;
I have so many little projects that could make my life much much
easier, that I don't know where to start.&nbsp; My only and biggest
problem is that I'm a computer illiterate and have no clue as to where
to start, however, I'm willing to do what it takes to learn.&nbsp; I
know that some help over the internet might not do miracles for me,
but I guess it would be a start.&nbsp; I have the book<u> Teach
Yourself Python in 24 Hours</u> and I'm reading it, but I guess I need
more help.&nbsp; Can you help me.</font></blockquote>
</body>
</html>
--============_-1223597837==_ma============--