I'm totally new to programming and I have a couple of questions I'd
like to ask: Do you believe a beginning programmer can use Delphi as a starting point, and
do you know of a good book or books to go with it?
Like you, I started from ground-zero: no formal degree in computer science. I was a
biology major in college! But when I decided to start programming, I went about educating
myself on the basic tenets of programming itself, in addition to learning a language. So
when I encounter people who wish to follow this path, I do my best to steer them in the
right direction.
Beginners can certainly use Delphi as a starting point, and the nice thing about it is
that it has enough contained within itself to provide you with the capability to perform
incredibly complex feats of programming as you become more adept. As far as books are
concerned, there are a ton of them out there. Personally, I like The Delphi 2
Programming Explorer by Jeff Duntemann, et al, which I reviewed here. The book will
take you step-by-step through the language so you can get familiar with programming
concepts as well as good, solid programming techniques.
And do you believe self-teaching can work in the field of programming?
I find myself speaking on this question quite often. Yes, I believe self-teaching can
work in the field of programming because I did just that. However, it will require an
almost obsessive desire to gather information and educate yourself. Your best bet to
accelerate this process is to take a couple of beginning programming courses at a local
community college.
What will this afford you? For starters, a course will teach you about basic Structured
Programming; that is, the organization of code and functions within the code to make it
intelligible; not only to you, but to others as well. You'll learn about standard
notational practices that are accepted throughout the industry, which means that anyone
can read your code. I'm not saying you become really anal-retentive about putting
everything in your code in exactly the right place in the editor; rather, knowing and
practicing structured programming provides you with a base to communicate your concepts to
other programmers. Besides, having well-organized code will aid in code maintenance down
the road. There are a lot of folks out there - even several well-known "experts"
- who don't know a thing about structured programming (or if they do, they fail to
practice it). Thus, their code is typically rife with inefficiency and is also incredibly
difficult to read.
In addition to course, the Web is full of useful reference sites (like mine <G>)
that can aid you in learning how to program.
Are there any other tips you can give that will facilitate my learning?
Mind you, this is totally from personal experience, but here goes:
- I've found that the best way to learn a language is to learn it by building a project.
The most basic project is the "Hello, World" type of project where you make a
program display the Hello World message in response to some interaction. But
that's just practice. What I like to do is solve some business problem, like creating some
database application to store names and addresses. While certainly much more complex than
a simple messaging application, I think I learn a lot better by building the pieces of a
full-blown application because I learn not only how to code, but how to make the disparate
modules interact with each other.
- Read, read, read. When I'm learning a new language, I search the Web, and I spend a lot
of time reading books and reference manuals.
- Work your problems and make sure you ask a lot of questions. A lot of people are
intimidated by the so-called gurus that lurk the industry. But remember, they started out
as beginning programmers as well.
Oh well, that's all I can think of right now. Maybe I'll add more later.
|