473,809 Members | 2,703 Online
Bytes | Software Development & Data Engineering Community
+ Post

Home Posts Topics Members FAQ

Finished a "teach yourself" book, what next?

Should I get some more general books, like "advanced self-teaching," or
can I start on specialized books like "Linux game programming?"

Any book recommendations ?
--

----- BEGIN GEEK CODE BLOCK -----
Version 3.1
GAT d? !s !a C++++ UL+ P L++ E- W+ N+ o-- K- w--
O- !M !V PS-- PE++ Y+ PGP- t++>++++* 5? !X-- R- tv b++ DI+ D++
G e !h !r !y
...... END GEEK CODE BLOCK ----
Nov 14 '05
33 2406
Chris Croughton wrote:
A numboer of them use a "game engine", which is an interpreter. Do a
Google search for "infocom" and "frotz", I know there is C source for
that (for Linux and DJGPP among others). But the code is not very
readable as I recall. Somewhere there is code for the original
"Colossal Cave" adventure as well...

If it's not readable then screw it. If there's one thing I intend to do
as a programmer it is to make my code readable and easy to upgrade.
(I note your email address, Infocom were the people who did Zork among
others.)

Believe it or not, I only ever got into the graphical Zork games. I
liked the text adventures when I was younger, but now that I've played
so many LucasArts adventure games, it's frustrating to play an adventure
where you can die or make irreparable mistakes.
If you want to do 3D (or even 2D) "real world" type programs then
calculus is rather useful. In fact if you're interested in any
mathematical modelling of "real world" stuff I'd advise it, if only so
you know what other people are talking about!

My problem with math is I tend to quickly forget it after learning. I
took two calculus classes and now I can't do a simple derivative by hand
(though I remember some of the rules for doing it in your head).
Writing a raytracer (or interactive games for that matter) is more about
knowing 'tricks' or shortcuts and algorithms than about raw mathematics,
bacause the 'obvious' (to a mathematician) route generally takes ages.
At the very least, you'll need to know about things like Fast Fourier
Transforms and other numerical methods, which aren't likely to be
covered in normal math classes (below degree course level, anyway).

As computers get faster though, real-time ray-tracing and radiosity
(instead of gimmicks to imitate them) will be standard.
Which is all off topic here, because it's about algorithms rather than
which language they are written in. Some newsgroups which may be more
helpful:

comp.games.deve lopment.program ming.{misc,algo rithms}
comp.sources.ga mes

Chris C


Hold on, I just finished learning the preprocessor macros! I still
don't know anything about writing "real" programs. Unfortunately my
library is pretty slim on what they offer for programmers, and most of
the books I've seen in stores or have at home are just "this function
does this, and that function does that," with few source examples.

--

----- BEGIN GEEK CODE BLOCK -----
Version 3.1
GAT d? !s !a C++++ UL+ P L++ E- W+ N+ o-- K- w--
O- !M !V PS-- PE++ Y+ PGP- t++>++++* 5? !X-- R- tv b++ DI+ D++
G e !h !r !y
...... END GEEK CODE BLOCK ----
Nov 14 '05 #21
Jonathan Burd wrote:
-----
1) Stay away from anything written by Herb Schildt.
There are innumerable errors in his books (even entire
chapters are wrong!). ("Teach Yourself..." Is that the
one written by the same clown?)


I have "Teach Yourself C in 24 Hours," by Tony Zhang. It was a basic
primer on the language, but not on actual software engineering,
organizing projects, style, etc.

--

----- BEGIN GEEK CODE BLOCK -----
Version 3.1
GAT d? !s !a C++++ UL+ P L++ E- W+ N+ o-- K- w--
O- !M !V PS-- PE++ Y+ PGP- t++>++++* 5? !X-- R- tv b++ DI+ D++
G e !h !r !y
...... END GEEK CODE BLOCK ----
Nov 14 '05 #22
Jacob Oost <zo**@columbus. rr.com> writes:
Richard Bos wrote:
A few C++ and Java classes, that's it. I'm on C now and I've
forgotten most of what I learned about C++ and Java anyway (except
that I hated Java).

Have you read "The C Programming Language", 2nd edition, by Brian
Kernighan and Dennis Ritchie? It's _the_ book on C.
Richard


I'd like to get it if I can find it for cheap.


There are many resources on the net for finding cheap books.
(I'm afraid comp.lang.c isn't one of them.)

--
Keith Thompson (The_Other_Keit h) ks***@mib.org <http://www.ghoti.net/~kst>
San Diego Supercomputer Center <*> <http://users.sdsc.edu/~kst>
We must do something. This is something. Therefore, we must do this.
Nov 14 '05 #23
Jacob Oost wrote:
Jason Wells wrote:
I'm a little worried that I might need to go take a calculus class when
I eventually get into 3D! I want to make my own raytracer.

Make that Linear Algebra(Which requires at least 1 calculus as a
prerequisite).


Actually I'm not in college or anything, I just have some books on
programming. I've learned algebra and calculus, but forgotten a lot of
it. I prefer to study at home rather than in a class room. I've
already learned more in a few weeks than I did in months of classes.


The algebra you have learned has very little to do with Linear
Algebra(Matrice s)... Maybe you could check out some of the math for
computer graphics books.
--
WWW: http://haywire.csuhayward.edu/~jwells2
spinmaster .______________ _______________ _______________ ___________.
@ |When you are right you cannot be too radical; |
gmail.com |when you are wrong, you cannot be too conservative. MLK|
Nov 14 '05 #24
Jacob Oost <zo**@columbus. rr.com> wrote:
Richard Bos wrote:
A few C++ and Java classes, that's it. I'm on C now and I've forgotten
most of what I learned about C++ and Java anyway (except that I hated Java).


Have you read "The C Programming Language", 2nd edition, by Brian
Kernighan and Dennis Ritchie? It's _the_ book on C.


I'd like to get it if I can find it for cheap.


Get this one even if you can find it for the normal price. It's well
worth it.

Richard
Nov 14 '05 #25

"Jacob Oost" <zo**@columbus. rr.com> wrote in message
news:KS******** *********@fe2.c olumbus.rr.com. ..
Mike Wahler wrote:
Seriously, I could beat somebody to death with this book. But I suppose
I'll give it a try. If I get bored after the first one hundred pages
I'll switch to something else.

No offense intended, but that attitude makes me
question whether you have sufficient motivation
to learn to become a good programmer. A mere
hundred pages of a single book about a single
topic is an extremely small fraction of what you'd
need study. Especially if one of your goals is
something as complex as 3D graphics.


I have the sufficient motivation


Motivation implies that you're willing to exert
the necessary effort.
to become a good programmer in software
that interests me, which is mainly graphics. While I do want to learn
more advanced C stuff, I'm not sure I want to go through an 800 page
book on general Linux programming at this moment. What's the harm in
putting it off, especially if it is just "an extremely small fraction"
of what I need to study?


I gave my best advice, based upon thirty-five years of
my experiences learning about programming.

Take it or leave it. :-)

-Mike
Nov 14 '05 #26
Jacob Oost <zo**@columbus. rr.com> wrote:
Should I get some more general books, like "advanced self-teaching," or
can I start on specialized books like "Linux game programming?"

Any book recommendations ?


I found _A_Book_on_C_ rather interesting, if a tad out of date
(last edition published in 1997, so no C99).

Others have recommened _C_Unleashed_, which is an excellent book
and I'm happy to own my copy.

OT: You want a good algorithm book.

PS: Try ebay and amazon.com for used books, the price is often
cheaper. K&R sells for $42.00 new (Amazon), but the lowest used
price is $24.95. Or try a public library system, if available in
your area. There are often services available at local libraries
to find and borrow books from remote libraries.

--
With sufficient thrust, pigs fly just fine. However, this is
not necessarily a good idea. It is hard to be sure where they
are going to land, and it could be dangerous sitting under them
as they fly overhead. -- RFC 1925
Nov 14 '05 #27
In article <95************ *****@fe2.colum bus.rr.com>, zo**@columbus.r r.com
says...
Jonathan Burd wrote:
-----
1) Stay away from anything written by Herb Schildt.
There are innumerable errors in his books (even entire
chapters are wrong!). ("Teach Yourself..." Is that the
one written by the same clown?)


I have "Teach Yourself C in 24 Hours," by Tony Zhang. It was a basic
primer on the language, but not on actual software engineering,
organizing projects, style, etc.


Perhaps you will be fortunate enough to forget most of that one soon.

--
Randy Howard (2reply remove FOOBAR)
Nov 14 '05 #28
Jacob Oost wrote:
Richard Bos wrote:
A few C++ and Java classes, that's it. I'm on C now and I've
forgotten most of what I learned about C++ and Java anyway (except
that I hated Java).


Have you read "The C Programming Language", 2nd edition, by Brian
Kernighan and Dennis Ritchie? It's _the_ book on C.

Richard

I'd like to get it if I can find it for cheap.

List price is cheap. It's about $40 anywhere you go.

--
Joe Wright mailto:jo****** **@comcast.net
"Everything should be made as simple as possible, but not simpler."
--- Albert Einstein ---
Nov 14 '05 #29
In article <41************ ***@news.indivi dual.net>,
Richard Bos <rl*@hoekstra-uitgeverij.nl> wrote:
Chris Croughton <ch***@keristor .net> wrote:
On Sun, 30 Jan 2005 22:45:26 GMT, Jacob Oost
<zo**@columbus. rr.com> wrote:
> Thanks for the suggestions. I was thinking of writing a program to
> decode the cryptoquip (by counting the occurences of numbers and
> comparing them to a table of the most commonly-used letters in English),
> and then a text adventure engine (I have never seen the source code for
> a text adventure yet, I'm curious how they do it, I imagine some kind of
> multi-branching linked list).
A numboer of them use a "game engine", which is an interpreter. Do a
Google search for "infocom" and "frotz", I know there is C source for
that (for Linux and DJGPP among others). But the code is not very
readable as I recall. Somewhere there is code for the original
"Colossal Cave" adventure as well...


But not, originally, in C. Advent was written in Fortran. The original
Infocom games were written in ZIL, which was a kind of MDL, which was a
Lisp-like language. I've no idea what their 'terps were written in.


The original code in MDL is, as far as I can tell, still a trade
secret, after more than 25 years.
I have the code for what I know as dungeons, aka Zork on my site.

http://home.hccnet.nl/a.w.m.van.der.horst/games.html

It is in fact a 1991 source intended for MSDOS, but after conversion
to Unix text files, it compiles perfectly on Linux, gcc.
It is a testament to the practical portability of C.
I didn't want to look into the source (I want to play it, and don't
want spoilers) but I didn't need to. So I don't know whether it is
a good idea to study it.

<SNIP>
Richard

--

Groetjes Albert
--
Albert van der Horst,Oranjestr 8,3511 RA UTRECHT,THE NETHERLANDS
One man-hour to invent,
One man-week to implement,
One lawyer-year to patent.
Nov 14 '05 #30

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

Similar topics

60
3987
by: K. G. Suarez | last post by:
Hello everyone. I am new to programming and my uncle gave me a copy of "C For Dummies 2nd Edition". I am up to chapter 9 right now. He probably saw me struggling with "The C Programming Language" by Ritchie and Kernigahn and felt bad. Does anyone have experience with this book? I feel that it is helping me along pretty well. But how much will this book teach me? What would be the next book to read?
35
5855
by: pandit | last post by:
is this book good for learning C ? i am a beginning programmer, Kernighan and Ritchie 2e is quite hard on me.
7
2029
by: duli | last post by:
Hi: I would like recommendations for books (in any language, not necessarily C++, C, python) which have walkthroughs for developing a big software project ? So starting from inception, problem definition, design, coding and final delivery on a single theme or application. Most of the code I have written and books that I have read deal with toy programs and I am looking for something a bit more comprehensive. For example, maybe a...
8
2711
by: ssecorp | last post by:
I first learned about OO from Java. I much prefer to program in Python though. However I am consufed about 2 things. 1. Why do I have to pass self into every method in a class? Since I am always doing why cant this be automated or abstracted away? Are the instances where I won't pass self? I imagine there is some tradeoff involved otherwise it would have been
0
9721
marktang
by: marktang | last post by:
ONU (Optical Network Unit) is one of the key components for providing high-speed Internet services. Its primary function is to act as an endpoint device located at the user's premises. However, people are often confused as to whether an ONU can Work As a Router. In this blog post, we’ll explore What is ONU, What Is Router, ONU & Router’s main usage, and What is the difference between ONU and Router. Let’s take a closer look ! Part I. Meaning of...
0
9601
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 effortlessly switch the default language on Windows 10 without reinstalling. I'll walk you through it. First, let's disable language synchronization. With a Microsoft account, language settings sync across devices. To prevent any complications,...
1
10379
by: Hystou | last post by:
Overview: Windows 11 and 10 have less user interface control over operating system update behaviour than previous versions of Windows. In Windows 11 and 10, there is no way to turn off the Windows Update option using the Control Panel or Settings app; it automatically checks for updates and installs any it finds, whether you like it or not. For most users, this new feature is actually very convenient. If you want to control the update process,...
1
7660
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 presenter, Adolph Dupré who will be discussing some powerful techniques for using class modules. He will explain when you may want to use classes instead of User Defined Types (UDT). For example, to manage the data in unbound forms. Adolph will...
0
6881
by: conductexam | last post by:
I have .net C# application in which I am extracting data from word file and save it in database particularly. To store word all data as it is I am converting the whole word file firstly in HTML and then checking html paragraph one by one. At the time of converting from word file to html my equations which are in the word document file was convert into image. Globals.ThisAddIn.Application.ActiveDocument.Select();...
0
5687
by: adsilva | last post by:
A Windows Forms form does not have the event Unload, like VB6. What one acts like?
1
4332
by: 6302768590 | last post by:
Hai team i want code for transfer the data from one system to another through IP address by using C# our system has to for every 5mins then we have to update the data what the data is updated we have to send another system
2
3861
muto222
by: muto222 | last post by:
How can i add a mobile payment intergratation into php mysql website.
3
3014
bsmnconsultancy
by: bsmnconsultancy | last post by:
In today's digital era, a well-designed website is crucial for businesses looking to succeed. Whether you're a small business owner or a large corporation in Toronto, having a strong online presence can significantly impact your brand's success. BSMN Consultancy, a leader in Website Development in Toronto offers valuable insights into creating effective websites that not only look great but also perform exceptionally well. In this comprehensive...

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.