Good bootstrap application to learn C for what C is intended for?

Discussion in 'C Programming' started by Tinxx, Jun 5, 2013.

  1. Tinxx

    Tinxx Guest

    Hello,

    I want to get myself a bit into C. I already worked from "C how to program"by Deitel. Now I'm looking for some good "bootstrap application" or sparetime project to work on to improve skills. Some kind of little "research vehicle". What I found were good books about image processing in C or socket programming or driver programming. For the book about driver programming youalready need to understand C quite well. My question is what kind of application is typically written in C from the given list above (or maybe aditional ones not on my list ...) so that you learn to use the language for whatit was designed. Don't really know ...

    Thank you, Tinxx
     
    Tinxx, Jun 5, 2013
    #1
    1. Advertising

  2. Tinxx

    Öö Tiib Guest

    On Wednesday, 5 June 2013 14:22:52 UTC+3, Tinxx wrote:
    > I want to get myself a bit into C. I already worked from "C how to
    > program" by Deitel. Now I'm looking for some good "bootstrap
    > application" or sparetime project to work on to improve skills. Some
    > kind of little "research vehicle". What I found were good books about
    > image processing in C or socket programming or driver programming. For
    > the book about driver programming you already need to understand C
    > quite well. My question is what kind of application is typically
    > written in C from the given list above (or maybe aditional ones not
    > on my list ...) so that you learn to use the language for what it
    > was designed. Don't really know ...


    Likely it depends on your age and other interests. Sockets and drivers
    might be good for writing software that interfaces with other household
    devices. It can be very exiting. Avoid interfacing with household devices
    of your neighbors without consulting them first, that is illegal. Digital
    image processing can be also quite interesting.

    Typically people learn to program when they are young and so they usually
    among first things write some simple computer game to amuse their friends
    as first thing. Also it is possible to write programs that interfere or
    modify some existing game. Avoid interfering and modifying on-line
    games (or their servers), that is illegal.
     
    Öö Tiib, Jun 5, 2013
    #2
    1. Advertising

  3. Re: Good bootstrap application to learn C for what C is intendedfor?

    On Wed, 05 Jun 2013 04:22:52 -0700, Tinxx wrote:

    > Hello,
    >
    > I want to get myself a bit into C. I already worked from "C how to
    > program" by Deitel. Now I'm looking for some good "bootstrap
    > application" or sparetime project to work on to improve skills. Some
    > kind of little "research vehicle". What I found were good books about
    > image processing in C or socket programming or driver programming. For
    > the book about driver programming you already need to understand C quite
    > well. My question is what kind of application is typically written in C
    > from the given list above (or maybe aditional ones not on my list ...)
    > so that you learn to use the language for what it was designed. Don't
    > really know ...
    >
    > Thank you, Tinxx


    C was designed for systems programming, which basically means that you
    can use it for anything and everything (although, there are other
    languages that nowadays are a better fit in some areas).

    As programming, regardless of the language, can become tedious at times,
    the best advise for a spare-time project is to look for things that
    interest you.
    In my experience, that is a hard requirement if you want to see the
    project to a successful end. Without the interest factor, after a while
    you /will/ find better things to do with your spare time.

    Bart v Ingen Schenau
     
    Bart van Ingen Schenau, Jun 5, 2013
    #3
  4. Tinxx

    James Kuyper Guest

    Re: Good bootstrap application to learn C for what C is intendedfor?

    On 06/05/2013 07:22 AM, Tinxx wrote:
    > Hello,
    >
    > I want to get myself a bit into C. I already worked from "C how to
    > program" by Deitel. Now I'm looking for some good "bootstrap
    > application" or sparetime project to work on to improve skills. Some


    I think you mean "starter" rather than "bootstrap". The term uses
    something that's literally impossible to do (lifting oneself up by one's
    own bootstraps) as a metaphor to describe situations where getting
    started requires very careful planning: early steps need to install
    functionality required for later steps - do the steps in the wrong order
    and everything fails. Learning C isn't as tricky as bootstrapping - you
    can fail and start over, benefiting from what you learned from the failure.

    > kind of little "research vehicle". What I found were good books about
    > image processing in C or socket programming or driver programming.
    > For the book about driver programming you already need to understand
    > C quite well. My question is what kind of application is typically
    > written in C from the given list above (or maybe aditional ones not
    > on my list ...) so that you learn to use the language for what it was
    > designed. Don't really know ...


    C is a general-purpose language, though a very low-level one, so there's
    no well-defined typical C application. When C was first being developed,
    the two main things it was used for were implementing the C compiler,
    and also Unix, the OS where the C compiler was running (that's true
    bootstrapping). It's still often used to implement higher-level
    languages, and for systems programming, so if forced to identify
    "typical" C applications, I'd identify those.

    However, I personally have almost never used C for either of those
    purposes; I've used it almost exclusively for scientific data
    processing, and I know other people who have written financial software
    in it. You'll get better guidance for your choice of starter application
    by looking at your own interests, rather than at "typical" C programs.
     
    James Kuyper, Jun 5, 2013
    #4
  5. Tinxx

    osmium Guest

    Tinxx wrote:

    > I want to get myself a bit into C. I already worked from "C how to
    > program" by Deitel. Now I'm looking for some good "bootstrap
    > application" or sparetime project to work on to improve skills. Some
    > kind of little "research vehicle". What I found were good books about
    > image processing in C or socket programming or driver programming.
    > For the book about driver programming you already need to understand
    > C quite well. My question is what kind of application is typically
    > written in C from the given list above (or maybe aditional ones not
    > on my list ...) so that you learn to use the language for what it was
    > designed. Don't really know ...


    The link is to a half a bazillion problems that could be solved in C.

    http://www.spoj.com/problems/classical/sort=0,start=950
     
    osmium, Jun 5, 2013
    #5
  6. Tinxx

    Rosario1903 Guest

    On Wed, 5 Jun 2013 10:02:55 -0500, "osmium" wrote:

    >Tinxx wrote:
    >
    >> I want to get myself a bit into C. I already worked from "C how to
    >> program" by Deitel. Now I'm looking for some good "bootstrap
    >> application" or sparetime project to work on to improve skills. Some
    >> kind of little "research vehicle". What I found were good books about
    >> image processing in C or socket programming or driver programming.
    >> For the book about driver programming you already need to understand
    >> C quite well. My question is what kind of application is typically
    >> written in C from the given list above (or maybe aditional ones not
    >> on my list ...) so that you learn to use the language for what it was
    >> designed. Don't really know ...

    >
    >The link is to a half a bazillion problems that could be solved in C.
    >
    >http://www.spoj.com/problems/classical/sort=0,start=950
    >


    from "http://www.spoj.com/problems/CPU/"

    4004. Exploding CPU
    Problem code: CPU

    "It has, however, one considerable problem. The scientists at the
    testing lab has just found out that the PFACT instruction for some
    special input values freaks out and makes the entire processor
    explode. Even though this could be an amusing effect, it is not the
    way it was intended to work. The skilled mathematicians have, by trial
    and error, found that the explosive numbers all share the same
    interesting number theoretic properties, which might be of help when
    troubleshooting. An explosive number is a number x = p0p1p2 . . . pn "

    :)
     
    Rosario1903, Jun 5, 2013
    #6
  7. Tinxx

    Jorgen Grahn Guest

    On Wed, 2013-06-05, Bart van Ingen Schenau wrote:
    ....
    > As programming, regardless of the language, can become tedious at times,
    > the best advise for a spare-time project is to look for things that
    > interest you.
    > In my experience, that is a hard requirement if you want to see the
    > project to a successful end. Without the interest factor, after a while
    > you /will/ find better things to do with your spare time.


    Yes. And safest is to pick something which is useful before it's 100%
    complete. (Writing unit tests helps somewhat -- they aren't useful in
    that sense, but at least you get to see your code running.)

    /Jorgen

    --
    // Jorgen Grahn <grahn@ Oo o. . .
    \X/ snipabacken.se> O o .
     
    Jorgen Grahn, Jun 5, 2013
    #7
  8. Tinxx

    Ian Collins Guest

    Re: Good bootstrap application to learn C for what C is intendedfor?

    Jorgen Grahn wrote:
    > On Wed, 2013-06-05, Bart van Ingen Schenau wrote:
    > ....
    >> As programming, regardless of the language, can become tedious at times,
    >> the best advise for a spare-time project is to look for things that
    >> interest you.
    >> In my experience, that is a hard requirement if you want to see the
    >> project to a successful end. Without the interest factor, after a while
    >> you /will/ find better things to do with your spare time.

    >
    > Yes. And safest is to pick something which is useful before it's 100%
    > complete. (Writing unit tests helps somewhat -- they aren't useful in
    > that sense, but at least you get to see your code running.)


    One way unit tests can help in maintaining interest is they allow the
    programmer to experiment (or try a new language) in non-production code.

    --
    Ian Collins
     
    Ian Collins, Jun 6, 2013
    #8
  9. Tinxx

    Tinxx Guest


    >As programming, regardless of the language, can become tedious at times,
    >the best advise for a spare-time project is to look for things that
    >interest you.


    Yeah, I think there is some truth to this. Think I found something that will be fun and also serves well to develop skills: Calling Lua from C and vice versa. I really like Lua, so that should be fun :). Then doing some network programming using zeromq would be cool.

    hanks for any answers.
    Cheers, TInxx
     
    Tinxx, Jun 6, 2013
    #9
  10. Tinxx

    Jorgen Grahn Guest

    On Thu, 2013-06-06, Tinxx wrote:
    >
    >>As programming, regardless of the language, can become tedious at times,
    >>the best advise for a spare-time project is to look for things that
    >>interest you.


    > Yeah, I think there is some truth to this. Think I found something
    > that will be fun and also serves well to develop skills: Calling Lua
    > from C and vice versa. I really like Lua, so that should be fun :).


    That /is/ a good idea (the general one: learning C by using it for
    extensions to your favorite scripting language). We should remember
    to suggest that the next time someone asks.

    /Jorgen

    --
    // Jorgen Grahn <grahn@ Oo o. . .
    \X/ snipabacken.se> O o .
     
    Jorgen Grahn, Jun 6, 2013
    #10
  11. Tinxx

    Seebs Guest

    On 2013-06-06, Jorgen Grahn <> wrote:
    > That /is/ a good idea (the general one: learning C by using it for
    > extensions to your favorite scripting language). We should remember
    > to suggest that the next time someone asks.


    It is. And I quite like Lua, too. :)

    -s
    --
    Copyright 2013, all wrongs reversed. Peter Seebach /
    http://www.seebs.net/log/ <-- lawsuits, religion, and funny pictures
    Autism Speaks does not speak for me. http://autisticadvocacy.org/
    I am not speaking for my employer, although they do rent some of my opinions.
     
    Seebs, Jun 7, 2013
    #11
  12. Tinxx

    Ivan Shmakov Guest

    [OT] Lua

    >>>>> Seebs <> writes:
    >>>>> On 2013-06-06, Jorgen Grahn <> wrote:


    [Cross-posting to news:alt.comp.lang.lua, just to make keeping
    the track of it easier.]

    >> That /is/ a good idea (the general one: learning C by using it for
    >> extensions to your favorite scripting language). We should remember
    >> to suggest that the next time someone asks.


    > It is. And I quite like Lua, too. :)


    I wonder, what's so good in Lua specifically?

    Indeed, it seems to be one of the first "embeddable" languages
    to appear, but now that a number of them (including a variety of
    Lisp derivatives, Python, and of course Tcl) has reached the
    "mature" state, I don't quite understand, -- why Lua?

    And personally, I tend to like Tcl for the purpose, mainly for
    its well-designed FFI, its support for Unicode, and that it
    looks like a mature language for years now.

    (... But more than that, I like to embed C into HLL software,
    such as that written in Perl, -- and not the other way around.)

    PS. I hadn't yet the chance to say I'm glad to see you're back to
    Usenet. So I do it now.

    --
    FSF associate member #7257
     
    Ivan Shmakov, Jun 8, 2013
    #12
  13. Tinxx

    Tinxx Guest

    Re: [OT] Lua

    >That /is/ a good idea (the general one: learning C by using it for
    >extensions to your favorite scripting language). We should remember
    >to suggest that the next time someone asks.


    I will. Yeah, I was also happy when I got that idea :).

    >I wonder, what's so good in Lua specifically?


    Well, different people will each answer this question in their own way. Thereason I like Lua is that it is to some extend some meta-programming language. For instance, Lua is not object-oriented. But the table construct it is built on is that general that you can implement inheritance and message sends in Lua. I like languages that are simple and powerful ;-).

    -- Tinxx
     
    Tinxx, Jun 9, 2013
    #13
  14. Tinxx

    BartC Guest

    Re: [OT] Lua

    "David Brown" <> wrote in message
    news:...
    > On 08/06/13 19:31, Ivan Shmakov wrote:


    >> "mature" state, I don't quite understand, -- why Lua?


    > Lua is much smaller than Python (in terms of the language, the libraries
    > and the implementation). If you need a powerful and flexible language
    > with all the bells, whistles and libraries you could imagine, go for
    > Python. But if you need something small, fast (for an interpreted
    > language)


    Using LUAJIT, some Lua benchmarks ran faster than their C counterparts!

    --
    Bartc
     
    BartC, Jun 10, 2013
    #14
    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. Guest
    Replies:
    0
    Views:
    494
    Guest
    Jul 20, 2006
  2. Markus
    Replies:
    3
    Views:
    339
    Georg Brandl
    Jul 25, 2006
  3. Andrew Walrond
    Replies:
    1
    Views:
    134
    Dennis Oelkers
    Feb 1, 2004
  4. Luis Lavena
    Replies:
    19
    Views:
    341
    Luis Lavena
    Jan 8, 2008
  5. Graham Wood
    Replies:
    2
    Views:
    124
    Graham Wood
    Jun 26, 2004
Loading...

Share This Page