Book suggestions

Discussion in 'C Programming' started by Rob Kendrick, Oct 21, 2007.

  1. Rob Kendrick

    Rob Kendrick Guest

    Hi,

    I'm a C programmer of (I'd like to think) intermediate skill and
    experience, able to throw most things together quite happily in C. I'd
    like to get to the point of being able to legitimately use the word
    "expert" on my CV. Does the group have any suggestions for books
    targeted at the intermediate programmer, rather than beginning?

    I suppose what I'm after is a guide that helps me build on what I already
    know.

    I'm shamed to say I don't even own a copy of K&R - is this essential
    reading?

    B.
     
    Rob Kendrick, Oct 21, 2007
    #1
    1. Advertising

  2. Rob Kendrick

    osmium Guest

    "Rob Kendrick" wrote:

    > I'm a C programmer of (I'd like to think) intermediate skill and
    > experience, able to throw most things together quite happily in C. I'd
    > like to get to the point of being able to legitimately use the word
    > "expert" on my CV. Does the group have any suggestions for books
    > targeted at the intermediate programmer, rather than beginning?
    >
    > I suppose what I'm after is a guide that helps me build on what I already
    > know.
    >
    > I'm shamed to say I don't even own a copy of K&R - is this essential
    > reading?


    I don't know if it is essential reading at this point, but I would never
    dream of admitting to an interviewer that I didn't have my own copy, I might
    even suggest it was well worn - which, in fact it is, pages are coming out.

    For a more advanced book I would suggest _Expert C Programming_ by Peter Van
    der Linden, it is not only informative, it is interesting too.
     
    osmium, Oct 21, 2007
    #2
    1. Advertising

  3. Rob Kendrick

    Rob Kendrick Guest

    On Sun, 21 Oct 2007 09:22:58 -0700, osmium wrote:

    >> I'm shamed to say I don't even own a copy of K&R - is this essential
    >> reading?

    >
    > I don't know if it is essential reading at this point, but I would never
    > dream of admitting to an interviewer that I didn't have my own copy, I
    > might even suggest it was well worn - which, in fact it is, pages are
    > coming out.


    In the past, I've just referred to the spec, which is less than ideal.

    > For a more advanced book I would suggest _Expert C Programming_ by Peter
    > Van der Linden, it is not only informative, it is interesting too.


    Looks excellent. I'll add it to the list - thanks.

    B.
     
    Rob Kendrick, Oct 21, 2007
    #3
  4. Rob Kendrick

    Richard Guest

    "osmium" <> writes:

    > "Rob Kendrick" wrote:
    >
    >> I'm a C programmer of (I'd like to think) intermediate skill and
    >> experience, able to throw most things together quite happily in C. I'd
    >> like to get to the point of being able to legitimately use the word
    >> "expert" on my CV. Does the group have any suggestions for books
    >> targeted at the intermediate programmer, rather than beginning?
    >>
    >> I suppose what I'm after is a guide that helps me build on what I already
    >> know.
    >>
    >> I'm shamed to say I don't even own a copy of K&R - is this essential
    >> reading?

    >
    > I don't know if it is essential reading at this point, but I would never
    > dream of admitting to an interviewer that I didn't have my own copy, I might
    > even suggest it was well worn - which, in fact it is, pages are coming out.
    >
    > For a more advanced book I would suggest _Expert C Programming_ by Peter Van
    > der Linden, it is not only informative, it is interesting too.


    I second that. I good read.
     
    Richard, Oct 21, 2007
    #4
  5. Rob Kendrick

    santosh Guest

    Rob Kendrick wrote:

    > Hi,
    >
    > I'm a C programmer of (I'd like to think) intermediate skill and
    > experience, able to throw most things together quite happily in C.
    > I'd like to get to the point of being able to legitimately use the
    > word "expert" on my CV. Does the group have any suggestions for books
    > targeted at the intermediate programmer, rather than beginning?


    Well, one book that gets tossed around a lot is _C Unleashed_ by
    Heathfield, Kirby et al.

    Apparently it has been out of print for a few years but both new and
    used copies seem to be still available on sites like amazon.com

    See the thread titled "C Unleashed" started by Joe Wright.

    One another book is _Expert C Programming_ by Peter Van der Linden.

    You might also consider books on system programming and programming for
    specific systems like Unix, Windows etc. Also you might consider books
    like _UNIX Network Programming_ by Stevens. I know these are not about
    C per se, but they do use C as their language and illustrate fairly
    advanced programming tasks.

    > I'm shamed to say I don't even own a copy of K&R - is this essential
    > reading?


    IMO, yes.
     
    santosh, Oct 21, 2007
    #5
  6. On Oct 21, 12:16 pm, Rob Kendrick <> wrote:
    > Hi,
    >
    > I'm a C programmer of (I'd like to think) intermediate skill and
    > experience, able to throw most things together quite happily in C. I'd
    > like to get to the point of being able to legitimately use the word
    > "expert" on my CV. Does the group have any suggestions for books
    > targeted at the intermediate programmer, rather than beginning?
    >
    > I suppose what I'm after is a guide that helps me build on what I already
    > know.
    >
    > I'm shamed to say I don't even own a copy of K&R - is this essential
    > reading?


    I would definitely pick up a copy of K&R2, it will give you a good
    opportunity to gauge how much you really know about the language,
    learn a few new things, and make yourself more well-rounded. I would
    have a difficult time hiring someone who billed themself a C
    programmer who didn't own and had never read K&R.

    Below is a list of C books currently on my bookshelf that I would
    recommend as intermediate/advanced or reference:

    "Expert C Programming" by Peter van der Linden
    "Secure Coding in C and C++" by Robert C. Seacord
    "The Standard C Library" by P. J. Plauger
    "C: A Reference Manual (5th edition)" by Harbison & Steele

    I would also recommend reading the entire comp.lang.c FAQ (which
    appears to be down at the moment): http://www.c-faq.com.

    --
    Robert Gamble
     
    Robert Gamble, Oct 21, 2007
    #6
  7. Rob Kendrick

    Rob Kendrick Guest

    On Sun, 21 Oct 2007 23:24:26 +0530, santosh wrote:

    > Well, one book that gets tossed around a lot is _C Unleashed_ by
    > Heathfield, Kirby et al.


    I'll see if I can find a copy.

    > You might also consider books on system programming and programming for
    > specific systems like Unix, Windows etc. Also you might consider books
    > like _UNIX Network Programming_ by Stevens.


    I already own a copy of this from another project. It is indeed
    excellent.

    >> I'm shamed to say I don't even own a copy of K&R - is this essential
    >> reading?

    >
    > IMO, yes.


    I'll add it to the list, then.

    Thanks!

    B.
     
    Rob Kendrick, Oct 21, 2007
    #7
  8. Rob Kendrick

    Rob Kendrick Guest

    On Sun, 21 Oct 2007 18:26:28 +0000, Robert Gamble wrote:

    > I would definitely pick up a copy of K&R2, it will give you a good
    > opportunity to gauge how much you really know about the language, learn
    > a few new things, and make yourself more well-rounded. I would have a
    > difficult time hiring someone who billed themself a C programmer who
    > didn't own and had never read K&R.


    I didn't say I hadn't read it :) I borrowed it from my local library and
    read it many years ago, when I was first starting in C. I suppose I
    could do with a reread.

    > Below is a list of C books currently on my bookshelf that I would
    > recommend as intermediate/advanced or reference:
    >
    > "Expert C Programming" by Peter van der Linden "Secure Coding in C and
    > C++" by Robert C. Seacord "The Standard C Library" by P. J. Plauger "C:
    > A Reference Manual (5th edition)" by Harbison & Steele


    van der Linden's work seems to be widely recommended, so I've put that at
    the top of my shopping list, along with K&R.

    Thanks for your input.

    B.
     
    Rob Kendrick, Oct 21, 2007
    #8
  9. Rob Kendrick

    Richard Guest

    santosh <> writes:

    > Rob Kendrick wrote:
    >
    >> Hi,
    >>
    >> I'm a C programmer of (I'd like to think) intermediate skill and
    >> experience, able to throw most things together quite happily in C.
    >> I'd like to get to the point of being able to legitimately use the
    >> word "expert" on my CV. Does the group have any suggestions for books
    >> targeted at the intermediate programmer, rather than beginning?

    >
    > Well, one book that gets tossed around a lot is _C Unleashed_ by
    > Heathfield, Kirby et al.


    By far the two biggest recommendations are K&R2 and the Van der Linden
    book.

    > One another book is _Expert C Programming_ by Peter Van der Linden.
    >
    > You might also consider books on system programming and programming for
    > specific systems like Unix, Windows etc. Also you might consider books
    > like _UNIX Network Programming_ by Stevens. I know these are not about
    > C per se, but they do use C as their language and illustrate fairly
    > advanced programming tasks.


    In a terribly non CLC way. The Stevens book in particular uses a dialect
    of C which would see him laughed out of this NG.

    >
    >> I'm shamed to say I don't even own a copy of K&R - is this essential
    >> reading?

    >
    > IMO, yes.


    100% agreed.
     
    Richard, Oct 21, 2007
    #9
  10. Rob Kendrick

    Default User Guest

    santosh wrote:

    > Rob Kendrick wrote:
    >
    > > Does the group have any suggestions for
    > > books targeted at the intermediate programmer, rather than
    > > beginning?

    >
    > Well, one book that gets tossed around a lot is _C Unleashed_ by
    > Heathfield, Kirby et al.


    Ha. Maybe Hercules could toss that around. Mere mortals would require
    the assistance of two men and boy.




    Brian
     
    Default User, Oct 21, 2007
    #10
  11. Rob Kendrick

    Tyler Smith Guest

    On 2007-10-21, Robert Gamble <> wrote:
    >
    > Below is a list of C books currently on my bookshelf that I would
    > recommend as intermediate/advanced or reference:
    >
    > "Expert C Programming" by Peter van der Linden
    > "Secure Coding in C and C++" by Robert C. Seacord
    > "The Standard C Library" by P. J. Plauger
    > "C: A Reference Manual (5th edition)" by Harbison & Steele
    >


    Hi,

    From the sounds of it, I'm not as experienced as the original poster,
    but I'm very interested in C reference books. I've read K&R, and
    worked through most of the problems, and I am now contributing code to
    a text processing program (latex2rtf), so I can handle at least basic
    C.

    However, what I'd really like is something akin to some of the more
    popular Python or Perl books, which provide a broader survey of how
    you apply the language, rather than the language itself - network
    programming, cgi, database, gui. It seems that most recommendations
    for books to follow K&R deal with more esoteric corners of the
    language. I know I'd benefit from a deeper understanding of pointers,
    but at the moment I'd rather work on broadening my knowledge of
    applying C to specific application areas.

    For example, I want to build an sql database with a html interface.
    There are books explaining just this in Perl, Python, Ruby etc., but I
    haven't found a reference to guide me through doing this with C. Do
    people even do this stuff with C, and if so, what books do they learn
    from? Or would I be better using a Python book as an introduction to
    the problem, and then using C once I understand how it works?

    It's probably pretty clear at this point that I don't have a very
    strong background in computing in general. I check out all the
    recommendations I see around here, but stuff like Expert C Programming
    just doesn't seem to be aimed at people in my position. Any other
    suggestions for people like me, or should I stick to stand-alone
    command line stuff for my C programs and start learning a scripting
    language for other things?

    Thanks,

    Tyler
     
    Tyler Smith, Oct 21, 2007
    #11
  12. Rob Kendrick

    santosh Guest

    Tyler Smith wrote:

    > On 2007-10-21, Robert Gamble <> wrote:
    >>
    >> Below is a list of C books currently on my bookshelf that I would
    >> recommend as intermediate/advanced or reference:
    >>
    >> "Expert C Programming" by Peter van der Linden
    >> "Secure Coding in C and C++" by Robert C. Seacord
    >> "The Standard C Library" by P. J. Plauger
    >> "C: A Reference Manual (5th edition)" by Harbison & Steele
    >>

    >
    > Hi,
    >
    > From the sounds of it, I'm not as experienced as the original poster,
    > but I'm very interested in C reference books. I've read K&R, and
    > worked through most of the problems, and I am now contributing code to
    > a text processing program (latex2rtf), so I can handle at least basic
    > C.
    >
    > However, what I'd really like is something akin to some of the more
    > popular Python or Perl books, which provide a broader survey of how
    > you apply the language, rather than the language itself - network
    > programming, cgi, database, gui.


    There are books on how to do some of this, but they are usually in the
    form of separate books.

    BTW, you might find _C Unleashed_ useful.

    > It seems that most recommendations
    > for books to follow K&R deal with more esoteric corners of the
    > language. I know I'd benefit from a deeper understanding of pointers,
    > but at the moment I'd rather work on broadening my knowledge of
    > applying C to specific application areas.
    >
    > For example, I want to build an sql database with a html interface.
    > There are books explaining just this in Perl, Python, Ruby etc., but I
    > haven't found a reference to guide me through doing this with C. Do
    > people even do this stuff with C,


    Yes. The Berkeley DB is an example.

    > and if so, what books do they learn from?


    The specifications for SQL and HTML.

    > Or would I be better using a Python book as an introduction to
    > the problem, and then using C once I understand how it works?


    That would be okay. Do whatever suits you. No language is a silver
    bullet. They all have their areas of applicability. A scripting
    language with extensive libraries and documentation might be easier to
    learn than C.

    > It's probably pretty clear at this point that I don't have a very
    > strong background in computing in general. I check out all the
    > recommendations I see around here, but stuff like Expert C Programming
    > just doesn't seem to be aimed at people in my position. Any other
    > suggestions for people like me, or should I stick to stand-alone
    > command line stuff for my C programs and start learning a scripting
    > language for other things?


    Once you learn C then doing something useful with it requires you learn
    _other_ things, not related to C at all, like OS APIs, communication
    protocols, file formats and innumerable other things.

    These are not part of C and thus C books and Standard have nothing to
    say about them.

    Most of these APIs, libraries, protocols and standards have documents
    and RFCs explaining in detail how to us them. Indeed most of them are
    themselves implemented in C and expose a C API as a given thing.

    The problem of course, is finding the right information and going
    through the, often tedious, process of learning them.

    The difference with languages like Java, Perl, Python, Tcl etc., is that
    they come with a vast library of functions that already do many of
    these tasks. So a language guide can include and explain them. In the
    case of C you usually need to refer to external documentation to do
    this.
     
    santosh, Oct 21, 2007
    #12
  13. Rob Kendrick

    Richard Guest

    santosh <> writes:

    > Tyler Smith wrote:
    >
    >> On 2007-10-21, Robert Gamble <> wrote:
    >>>
    >>> Below is a list of C books currently on my bookshelf that I would
    >>> recommend as intermediate/advanced or reference:
    >>>
    >>> "Expert C Programming" by Peter van der Linden
    >>> "Secure Coding in C and C++" by Robert C. Seacord
    >>> "The Standard C Library" by P. J. Plauger
    >>> "C: A Reference Manual (5th edition)" by Harbison & Steele
    >>>

    >>
    >> Hi,
    >>
    >> From the sounds of it, I'm not as experienced as the original poster,
    >> but I'm very interested in C reference books. I've read K&R, and
    >> worked through most of the problems, and I am now contributing code to
    >> a text processing program (latex2rtf), so I can handle at least basic
    >> C.
    >>
    >> However, what I'd really like is something akin to some of the more
    >> popular Python or Perl books, which provide a broader survey of how
    >> you apply the language, rather than the language itself - network
    >> programming, cgi, database, gui.

    >
    > There are books on how to do some of this, but they are usually in the
    > form of separate books.
    >
    > BTW, you might find _C Unleashed_ useful.
    >


    Did you? For what he wants? He is talking about applying the language to
    real world problems. Your earlier suggestion about Advanced Programming
    In The Unix Environment is a much better tact. From what I gather C
    unleashed would not be too useful for that - you seem very eager to
    suggest it at every opportunity so I gather you must have garnered a lot
    from it in the same way I and others would recommend K&R2.


    >> It seems that most recommendations
    >> for books to follow K&R deal with more esoteric corners of the
    >> language. I know I'd benefit from a deeper understanding of pointers,
    >> but at the moment I'd rather work on broadening my knowledge of
    >> applying C to specific application areas.
    >>
    >> For example, I want to build an sql database with a html interface.
    >> There are books explaining just this in Perl, Python, Ruby etc., but I
    >> haven't found a reference to guide me through doing this with C. Do
    >> people even do this stuff with C,

    >
    > Yes. The Berkeley DB is an example.
    >
    >> and if so, what books do they learn from?

    >
    > The specifications for SQL and HTML.
    >
    >> Or would I be better using a Python book as an introduction to
    >> the problem, and then using C once I understand how it works?

    >
    > That would be okay. Do whatever suits you. No language is a silver
    > bullet. They all have their areas of applicability. A scripting
    > language with extensive libraries and documentation might be easier to
    > learn than C.


    Might? of course they are easier. Something like PHP couldn't be easier
    to access stuff like mySQL which in the LAMP environment is an easy to
    use, "for free" setup with hundreds of thousands of help resources
    available. Doing it in C for a nOOb would be plain dumb.

    >
    >> It's probably pretty clear at this point that I don't have a very
    >> strong background in computing in general. I check out all the
    >> recommendations I see around here, but stuff like Expert C Programming
    >> just doesn't seem to be aimed at people in my position. Any other
    >> suggestions for people like me, or should I stick to stand-alone
    >> command line stuff for my C programs and start learning a scripting
    >> language for other things?

    >
    > Once you learn C then doing something useful with it requires you learn
    > _other_ things, not related to C at all, like OS APIs, communication
    > protocols, file formats and innumerable other things.
    >
    > These are not part of C and thus C books and Standard have nothing to
    > say about them.
    >
    > Most of these APIs, libraries, protocols and standards have documents
    > and RFCs explaining in detail how to us them. Indeed most of them are
    > themselves implemented in C and expose a C API as a given thing.
    >
    > The problem of course, is finding the right information and going
    > through the, often tedious, process of learning them.


    Which is what his requirement was alluding to. I would strongly recommend
    against C at this stage from what I gather about his experience
    level. It would take too long to get anywhere in order to maintain his
    interest assuming he is new to programming.

    >
    > The difference with languages like Java, Perl, Python, Tcl etc., is that
    > they come with a vast library of functions that already do many of
    > these tasks. So a language guide can include and explain them. In the
    > case of C you usually need to refer to external documentation to do
    > this.
     
    Richard, Oct 21, 2007
    #13
  14. Rob Kendrick

    Tyler Smith Guest

    On 2007-10-21, Richard <> wrote:
    > santosh <> writes:
    >>
    >> The problem of course, is finding the right information and going
    >> through the, often tedious, process of learning them.

    >
    > Which is what his requirement was alluding to. I would strongly recommend
    > against C at this stage from what I gather about his experience
    > level. It would take too long to get anywhere in order to maintain his
    > interest assuming he is new to programming.
    >


    Thanks to you both. I started thinking this might be the case. I was
    leafing through a Python book in the library, and it was exactly what
    I was looking for, except it was in the 'wrong' language. And then I
    got thinking that maybe there was a reason there wasn't a similar book
    written for C.

    Cheers,

    Tyler
     
    Tyler Smith, Oct 22, 2007
    #14
  15. osmium wrote:
    >
    > "Rob Kendrick" wrote:

    [...]
    > > I'm shamed to say I don't even own a copy of K&R - is this essential
    > > reading?

    >
    > I don't know if it is essential reading at this point, but I would never
    > dream of admitting to an interviewer that I didn't have my own copy, I might
    > even suggest it was well worn - which, in fact it is, pages are coming out.

    [...]

    My wife's K&R2 is on a shelf about 15 feet from me. However, I am
    ashamed to admit, my own K&R (no "2") disappeared years ago.

    --
    +-------------------------+--------------------+-----------------------+
    | Kenneth J. Brody | www.hvcomputer.com | #include |
    | kenbrody/at\spamcop.net | www.fptech.com | <std_disclaimer.h> |
    +-------------------------+--------------------+-----------------------+
    Don't e-mail me at: <mailto:>
     
    Kenneth Brody, Oct 22, 2007
    #15
  16. "Tyler Smith" <> a écrit dans le message de news:
    twork...
    > On 2007-10-21, Richard <> wrote:
    >> santosh <> writes:
    >>>
    >>> The problem of course, is finding the right information and going
    >>> through the, often tedious, process of learning them.

    >>
    >> Which is what his requirement was alluding to. I would strongly recommend
    >> against C at this stage from what I gather about his experience
    >> level. It would take too long to get anywhere in order to maintain his
    >> interest assuming he is new to programming.
    >>

    >
    > Thanks to you both. I started thinking this might be the case. I was
    > leafing through a Python book in the library, and it was exactly what
    > I was looking for, except it was in the 'wrong' language. And then I
    > got thinking that maybe there was a reason there wasn't a similar book
    > written for C.


    Ruby is probably a better option than Python at this point. It is more
    C-ish too.
    Stay away from Perl.

    --
    Chqrlie.
     
    Charlie Gordon, Oct 22, 2007
    #16
    1. Advertising

Want to reply to this thread or ask your own question?

It takes just 2 minutes to sign up (and it's free!). Just click the sign up button to choose a username and then you can ask your own questions on the forum.
Similar Threads
  1. GriffithsJ

    Book suggestions

    GriffithsJ, Aug 15, 2003, in forum: ASP .Net
    Replies:
    1
    Views:
    891
    Wayne Wengert
    Aug 16, 2003
  2. Jeff Gaines

    Book Suggestions Please!

    Jeff Gaines, Sep 8, 2003, in forum: ASP .Net
    Replies:
    9
    Views:
    503
    William Ryan
    Sep 28, 2003
  3. David Thielen

    Any book suggestions?

    David Thielen, Aug 11, 2003, in forum: Java
    Replies:
    1
    Views:
    365
    Roedy Green
    Aug 11, 2003
  4. PC
    Replies:
    7
    Views:
    397
    Steve Pugh
    Nov 19, 2004
  5. Materialised

    Book Suggestions

    Materialised, Sep 15, 2004, in forum: C++
    Replies:
    14
    Views:
    667
    jeffc
    Sep 20, 2004
Loading...

Share This Page