473,407 Members | 2,326 Online
Bytes | Software Development & Data Engineering Community
Post Job

Home Posts Topics Members FAQ

Join Bytes to post your question to a community of 473,407 software developers and data experts.

Best way to learn C for a Teenager

Ron
Greetings,

Any recommendations on a book or online tutorial that my 15 yr old son
can use to teach himself C? At 12 he downloaded a crude level editor
for Jedi Knight called JED and taught himself how to make levels.
Awesome ones I might add. So he is bright and a self learner. What
in your opinion would be the best way for him to go? He wants to
learn using his iMac. OS 9.2.2

Thank you.
Nov 14 '05 #1
4 4265

"Ron" <ro*@harvestrecords.com> wrote in message

Any recommendations on a book or online tutorial that my 15 yr
old son can use to teach himself C? He wants to
learn using his iMac. OS 9.2.2

If you can possibly afford it then buy a commercial C/C++ compiler for the
iMac, probably produced by Apple. It will come with a tutorial which should
be adequate.
You can probably get free C compilers for the iMac, but it really is a false
economy to use them, unless money is so tight that you don't have a choice.
The commercial version will provide high quality graphics libraries, which
is what motivates your average 15 year old.
Nov 14 '05 #2
Ron wrote:

Greetings,

Any recommendations on a book or online tutorial that my 15 yr old son
can use to teach himself C?


http://www.geocities.com/tom_torfs/c.html

--
pete
Nov 14 '05 #3
Ron wrote:

Greetings,

Any recommendations on a book or online tutorial that my 15 yr old son
can use to teach himself C? At 12 he downloaded a crude level editor
for Jedi Knight called JED and taught himself how to make levels.
Awesome ones I might add. So he is bright and a self learner. What
in your opinion would be the best way for him to go? He wants to
learn using his iMac. OS 9.2.2

If you want to get your son a *real* C compiler for his Mac,
check out Metroworks. They make a professional grade C compiler
for the Mac. They used to offer a "student" version that costs
around $100, but their regular price is between $300 and $400.
The student discounted version may still be available...
--
+----------------------------------------------------------------+
| Charles and Francis Richmond richmond at plano dot net |
+----------------------------------------------------------------+
Nov 14 '05 #4
Ron wrote:

Greetings,

Any recommendations on a book or online tutorial that my 15 yr old son
can use to teach himself C? At 12 he downloaded a crude level editor
for Jedi Knight called JED and taught himself how to make levels.
Awesome ones I might add. So he is bright and a self learner. What
in your opinion would be the best way for him to go? He wants to
learn using his iMac. OS 9.2.2

Thank you.


1st, you have to ask what your
objective is - are you thinking a career
for your son, or is this just a hobby
for him? There's (in my mind) a big
difference in how the matter is approached.
I'll provide my opinion on both paths...

The simpler path is the hobby path.
In this case you don't care but that he
gets enjoyment out of it. In this case
there's very little structure involved,
and the Macintosh is a fine platform
for these endeavors (this is not platform
bashing). However, in this case,
I think there's more C++ going on than
C (C++ uses many similar constructs
of C, but it _is_ a fundamentally
different language).

As far as the HOW for the above,
visit your local bookstore with him.
Amazingly, books I'd recommend:

"The C Programming Language" by Kernighan and Ritche
"The Practice of Programming" by Kernighan and Pike

Both of these books are well written
and direct and should be digestible
by your son over time.

After or along with these books,
you can focus more on his particular
platform objectives, i.e., does he want
to write a game? In which case there
are books available for the Mac using
the OS he's running that give good
insight into this subject. There are
also generic game design books, too.
Some desirable books may be out of
print, so EBAY might be a resource
in this area.

There is a real danger
here in that there many books which
are very advanced in their subject
treatment and could be discouraging.
Believe it or not, since he's a
beginner, a good book filter is YOU.
If you pick up the book and read
(parts of) it and get the 'jist'
of it, then he'll probably get it too.

At this point, some tools
will become obvious and should be
chosen at this time. Usually,
books are written with a particular
compiler and supporting tools in mind
(for a variety of sound reasons).

Also, following news groups
through Google (groups.goole.com) can
provide a strong knowledge base for him.
After a while, and following the "feel"
of a particular group, he can post
questions to the group.
15-20 years ago, you could
do software and have many personality
defects (usually considered a plus to
hiring managers). Now, I see the
profession responding more to the
cultural climate more than ever.
Now, software people are expected to
be well rounded and fit well into
the corporate environment. If there
are activities you could interest
your son in (clubs, user groups,
peers with computer interests as well),
this would really be a benefit.
I really believe I'm only
scratching the surface here, but
here are my career thoughts. Many
of the things outlined above can
apply to a career path as well.
The main difference I can see is
the importance of developing sound
habits. As a hobby, nobody _really_
cares how a solution is implemented,
but as a profession, methodology
is very important. I'm not talking
about someone's coding style, choice
of language to program in, or operating
system one uses.

But on a practical side, I'd
look at Unix in general, and Linux might
be a way to go. Mac offers OS/X, but I
think that's taking a big step backwards
in technology. I don't know if Linux
runs on the Mac.

Sadly, I can't say where the
software industry in the U.S.A. is headed,
though it seems mostly overseas with
little hope for change since politicians
don't yet understand the strategic
importance for preserving the industry
domestically. I'm not trying to push
a political agenda, but software jobs
that seem to have the best chance of
surviving over the next twenty years are
the ones which need clearance to perform.
Just food for thought...

Hope this helps!
Stephen
eM
Nov 14 '05 #5

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

55
by: Elijah | last post by:
I have read many of the topics on learning C++ or Java first. It seems like everyone says something different. I would like to know if I should learn C++ or Java. First a little about myself. I...
131
by: Peter Foti | last post by:
Simple question... which is better to use for defining font sizes and why? px and em seem to be the leading candidates. I know what the general answer is going to be, but I'm hoping to ultimately...
11
by: DrUg13 | last post by:
In java, this seems so easy. You need a new object Object test = new Object() gives me exactly what I want. could someone please help me understand the different ways to do the same thing in...
136
by: Matt Kruse | last post by:
http://www.JavascriptToolbox.com/bestpractices/ I started writing this up as a guide for some people who were looking for general tips on how to do things the 'right way' with Javascript. Their...
6
by: aron t | last post by:
Hi, I am good php programmer and want to learn asp.net. Can someone tell me what are the best and the worst features of ASP.NET? thanks
26
by: puzzlecracker | last post by:
It'd be interesting to compare the learning practices of c++ practitioners. I'll start with mine The C++ Programming Language C++ Primer Effective C++ More Effective C++ Effective STL The...
13
by: BK | last post by:
Our .Net team has just inherited a junior programmer that we need to get up to speed as quickly as possible. Unfortunately, his skill set is largely Access with some VB6 and ASP classic...
13
by: G | last post by:
Hello, Looking for opinions on a fairly simple task, new to ASP.net (C#) and want to make sure I do this as efficiently as possible. I have a web based form, and I need to run some SQL before...
19
by: dba_222 | last post by:
Dear Experts, I've worked with Oracle since 1995. I have gone very deep into many of the Oracle features, including sqlloader, and export/import. And I've done data modelling even longer. ...
0
BarryA
by: BarryA | last post by:
What are the essential steps and strategies outlined in the Data Structures and Algorithms (DSA) roadmap for aspiring data scientists? How can individuals effectively utilize this roadmap to progress...
1
by: nemocccc | last post by:
hello, everyone, I want to develop a software for my android phone for daily needs, any suggestions?
1
by: Sonnysonu | last post by:
This is the data of csv file 1 2 3 1 2 3 1 2 3 1 2 3 2 3 2 3 3 the lengths should be different i have to store the data by column-wise with in the specific length. suppose the i have to...
0
by: Hystou | last post by:
There are some requirements for setting up RAID: 1. The motherboard and BIOS support RAID configuration. 2. The motherboard has 2 or more available SATA protocol SSD/HDD slots (including MSATA, M.2...
0
by: Hystou | last post by:
Most computers default to English, but sometimes we require a different language, especially when relocating. Forgot to request a specific language before your computer shipped? No problem! You can...
0
Oralloy
by: Oralloy | last post by:
Hello folks, I am unable to find appropriate documentation on the type promotion of bit-fields when using the generalised comparison operator "<=>". The problem is that using the GNU compilers,...
0
tracyyun
by: tracyyun | last post by:
Dear forum friends, With the development of smart home technology, a variety of wireless communication protocols have appeared on the market, such as Zigbee, Z-Wave, Wi-Fi, Bluetooth, etc. Each...
0
agi2029
by: agi2029 | last post by:
Let's talk about the concept of autonomous AI software engineers and no-code agents. These AIs are designed to manage the entire lifecycle of a software development project—planning, coding, testing,...
0
isladogs
by: isladogs | last post by:
The next Access Europe User Group meeting will be on Wednesday 1 May 2024 starting at 18:00 UK time (6PM UTC+1) and finishing by 19:30 (7.30PM). In this session, we are pleased to welcome a new...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.