[techtalk] This talk of N-ary trees and other things...
David Merrill
david at lupercalia.net
Fri Mar 23 10:12:58 EST 2001
On Fri, Mar 23, 2001 at 08:32:08AM -0500, Michelle Murrain wrote:
> I have a question for the group.
>
> I imagine many of you are self taught, as I am. Although I've been
> programming on and off (on for about 8 years, then off for about 8, then on
> for the last 3), and have learned, in that time, BASIC, C, Pascal and Perl,
> plus SQL and HTML, and smatterings of Javascript and Java, I'm realizing that
> I have some rather large gaps in my computer science knowledge. I didn't
> study computer science in college, since where I went to college didn't have
> it - although I spent a lot of time in college programming.
>
> I have the added twist in that although I absolutely love coding, I don't
> think it's going to end up being how I spend most of my time - I'm lucky if I
> get to spend 1/3 of my time coding. I'd be ectstatic if I could spend 1/2-2/3
> but I don't think that's realistic.
>
> In any event, I'm looking to fill in some of those gaps - like algorithms. I
> have worked with them some in learning the languages I've learned. But I
> don't understand them in my bones the way I feel like perhaps I should, and I
> think that that means I'm not as good a coder as I could be. There are other
> things like that - theory behind operating systems, data structures, etc.
>
> The advantage is that I am exclusively at this time a web app programmer, so
> most of what I've written is short, and pretty specific. But I'd really like
> to take my web apps to another level (I'm working on building a large web app
> to allow mere mortals to easily develop complex web database applications
> entirely by using a web interface.)
>
> Do folks have suggestions on how to go about learning some of this stuff-
> I've thought about just getting a list of CS textbooks, and going through
> them myself, one by one (I'm a very good book learner). I don't have time to
> go back to school, either virtually or otherwise.
>
> If you are self taught, and have managed to learn some of that stuff, how did
> you do it?
Knuth is, of course, the canonical source for algorithms. If it's not
in Knuth, it's probably not worth knowing. :-)
If you're looking for a gentler introduction to algorithms than Knuth,
you might try getting a cookbook type book on algorithms in your
language of choice. It is much easier to learn algorithms with example
code in a language you already know than it is to learn the pure
theory.
Do try for a book in the lowest level language with which you are
familiar. Seeing some algorithms and data structures implemented in
BASIC will be less than helpful.
There is also a diminishing return as you go deeper into the theory.
20% of what you would study in an algorithms class will give you 80%
of the real world benefit. In most situations, anyway. Kernel hackers
would tell you otherwise!
hth,
--
Dr. David C. Merrill http://www.lupercalia.net
Linux Documentation Project david at lupercalia.net
Collection Editor & Coordinator http://www.linuxdoc.org
Finger me for my public key
You have mail.
More information about the Techtalk
mailing list