Learning a C based language, recommended starting points?

  • (2 Pages)
  • +
  • 1
  • 2

20 Replies - 4900 Views - Last Post: 28 December 2011 - 08:35 AM

#16 AlbuquerqueApache  Icon User is offline

  • D.I.C Addict

Reputation: 49
  • View blog
  • Posts: 523
  • Joined: 21-February 10

Re: Learning a C based language, recommended starting points?

Posted 27 December 2011 - 09:40 AM

View PostOler1s, on 25 December 2011 - 02:11 PM, said:

> Actually it's to learn a C based language

I find the term "C-based" to be curious. Either you want to learn C, or C++, or you don't want to learn either of those two languages. Any syntactical similarities to C are irrelevant.



Actually, i think this term is very good since many languages derive their syntax from C. Object Orientation, in my opinion, is what is irrevelent. Most languages should be OO anyway.

C based languages: C,C++, Java, C#, Objective C, etc. (I'm mostly included compiled and not scripting languages here, though many of them use C like syntax)

Non- C based languages (though they may be OO however but would not qualify as C based): Visual Basic , many types of BASIC (and many of these are procedural). There are probably others, but I think I made my point.
Was This Post Helpful? 0
  • +
  • -

#17 pryogene  Icon User is offline

  • The Leafiest of the Leif's
  • member icon

Reputation: 42
  • View blog
  • Posts: 676
  • Joined: 30-June 09

Re: Learning a C based language, recommended starting points?

Posted 27 December 2011 - 06:19 PM

Thanks for the constructive input.

I agree that in some respects starting with straight C would be a good move, but given my background (C#, Java, JS etc with 6 - almost 7 - years of experience) I'm more than capable of jumping the barrier. However, in jumping the barrier I accept that I have to start from scratch to learn C++. In summary my point is I can do it and skip out the arduous process I've gone through for 6 odd years, however I am where I started, and I get that.

It's not I don't want to learn C, it's I know and understand the principles that learning C would teach me, and so it's - in my current position - a wasted effort. However it's certainly something I may consider coming back to, though Python is next on my list.

I have gone with the C++ Primer by Lippman, so far it's a good read, and it's certainly taught me a little - the first few chapters are things I already know (the basics of 'most any language) but any amount of reinforcement is good reinforcement (plus there's a few terms in there that have helped in some debugging I indulged in this afternoon [C#], so bonus), however I am only nearing the end of Chapter 2 so.... Bottoms up!

Any further reading, obviously post C++ Primer, suggestions are awesome :D

@Oler1s: I did see that reading list actually, and you aren't the only one to have said C++ Primer is missing. Part of my decision to get it.

Thanks to everyone who gave a constructive input!
Was This Post Helpful? 0
  • +
  • -

#18 jon.kiparsky  Icon User is online

  • Pancakes!
  • member icon


Reputation: 7874
  • View blog
  • Posts: 13,355
  • Joined: 19-March 11

Re: Learning a C based language, recommended starting points?

Posted 27 December 2011 - 09:20 PM

I can almost guarantee you will not come back to straight C. You'll mean to, but you won't. Do it now, or write it off. How do I know this? It's not hard:
1. Everyone has a to-do list, and if something hits the top of that list, it's likely to get done. The top might be the top three or maybe five, but it's not more than that. I'm speaking here of serious undertakings, measured in months, not "do the dishes and balance the checkbook" obligations.
2. However, you're adding to that to-do list all the time, and it's not a queue, it's a priority queue. For any person worth bothering with, you're going to find more than one new points of curiosity in anything you explore, therefore your queue will increase faster than you reduce it, no matter how fast you attack it.
3. Furthermore, as time passes, you never have more time to spare. You always think, I'll do that when I get around to it, but every year of your life there will be more time sinks to deal with, not fewer. This means that anything that's not important enough to get around to today is not going to be important enough tomorrow or next year or ever.
4. The only way this changes is if you undergo some radical reorganization of your priorities. Don't count on this one, though, because what you're doing then is betting that at some point you're going to decide that you were wrong all along, or that at some point you will suddenly need the knowledge. In either case, it made more sense to do it back then than it does when the need suddenly arises.

So, make a decision. If you think straight C will matter to you, do it now. If you think it won't matter, let it go. Don't write yourself an IOU for it, though. It's very unlikely you will ever redeem it, and that will only happen if circumstances change in a way that you cannot predict today.
Was This Post Helpful? 1
  • +
  • -

#19 pryogene  Icon User is offline

  • The Leafiest of the Leif's
  • member icon

Reputation: 42
  • View blog
  • Posts: 676
  • Joined: 30-June 09

Re: Learning a C based language, recommended starting points?

Posted 28 December 2011 - 07:43 AM

View Postjon.kiparsky, on 27 December 2011 - 09:20 PM, said:

I can almost guarantee you will not come back to straight C. You'll mean to, but you won't. Do it now, or write it off. How do I know this? It's not hard:
1. Everyone has a to-do list, and if something hits the top of that list, it's likely to get done. The top might be the top three or maybe five, but it's not more than that. I'm speaking here of serious undertakings, measured in months, not "do the dishes and balance the checkbook" obligations.
2. However, you're adding to that to-do list all the time, and it's not a queue, it's a priority queue. For any person worth bothering with, you're going to find more than one new points of curiosity in anything you explore, therefore your queue will increase faster than you reduce it, no matter how fast you attack it.
3. Furthermore, as time passes, you never have more time to spare. You always think, I'll do that when I get around to it, but every year of your life there will be more time sinks to deal with, not fewer. This means that anything that's not important enough to get around to today is not going to be important enough tomorrow or next year or ever.
4. The only way this changes is if you undergo some radical reorganization of your priorities. Don't count on this one, though, because what you're doing then is betting that at some point you're going to decide that you were wrong all along, or that at some point you will suddenly need the knowledge. In either case, it made more sense to do it back then than it does when the need suddenly arises.

So, make a decision. If you think straight C will matter to you, do it now. If you think it won't matter, let it go. Don't write yourself an IOU for it, though. It's very unlikely you will ever redeem it, and that will only happen if circumstances change in a way that you cannot predict today.


In my area of work, and where I'll probably continue to work after uni, straight C is of no use to me, it's Cpp all the way. You gave me a lot to think about there though...
Was This Post Helpful? 1
  • +
  • -

#20 jon.kiparsky  Icon User is online

  • Pancakes!
  • member icon


Reputation: 7874
  • View blog
  • Posts: 13,355
  • Joined: 19-March 11

Re: Learning a C based language, recommended starting points?

Posted 28 December 2011 - 08:01 AM

Quote

You gave me a lot to think about there though...


That's the nicest thing you could ever say to a writer. Thanks.
Was This Post Helpful? 0
  • +
  • -

#21 pryogene  Icon User is offline

  • The Leafiest of the Leif's
  • member icon

Reputation: 42
  • View blog
  • Posts: 676
  • Joined: 30-June 09

Re: Learning a C based language, recommended starting points?

Posted 28 December 2011 - 08:35 AM

View Postjon.kiparsky, on 28 December 2011 - 08:01 AM, said:

Quote

You gave me a lot to think about there though...


That's the nicest thing you could ever say to a writer. Thanks.


Even nicer is that a few of those statements will travel through life with me. I've never really considered my life-to-do-list as anything more than a psychological list of stuff, but they way you put it has presented it to me as so much more. And the idea of some things being iou's is a rather clever way of phrasing it. So thank you also, a little life lesson me thinks.
Was This Post Helpful? 0
  • +
  • -

  • (2 Pages)
  • +
  • 1
  • 2