6

Is it appropriate in terms of time, to learn c as your first language?
I mean, some of my classmates prefer to use python or java as their first language.
Help please, I need help

Comments
  • 1
    I don't know c but many languages are based on c so it could be a nice start.
    Wait for more opinions though
  • 0
    Personally it’d be good to start with C/C++. You’ll work with hardware and memory management and get your basics really clear.
  • 0
    I guess it all depends on what you want to do. By C, do you mean C++? C is not a thing, unless you need very specific task. Eg: GPU programming, like CUDA
  • 0
    Yes. IMHO, C is definitely the best language to start with. It's high-level enough even for beginners to understand, yet low-level enough to let you do anything you want - as well as giving you a solid understanding of the fundaments, such as data types, pointers, memory allocation... Higher level languages, like the ones you mentioned, and frameworks hide away waht really happens under a thick layer of dynamic typing, garbage collection and other magic. Great for productivity, but useless if you really want to learn how the computer actually deals with your instructions.
  • 1
    If you want to be a good programmer, c will give you an incredible headstart.
  • 0
    When I first started college we were taught the basics of coding using c++, highly recommend it.
  • 0
    @IllSlapU En. C definitely has lower demand in job market, and most of job positions do use C all have very specific area, which is out of reach for beginners
  • 2
    Time-wise? No. Try something more high-level if you want to learn something fast. Like Python, BASH, PHP,...

    Quality-wise - absolutely and non-negotiably YES. If you want to understand what and why you are doing when writing an app, if you want to be able to switch between programming languages easily, thinking in C will definitely help you. However it takes considerable amount of time to learn it.

    P.S. If you choose the C path, once you feel quite comfy using it, go for C++. cpp has a number of enhancements comparing to C that hide the actual actions being done underneath, hence the suggestion to learn C first. However C++ will teach you all you will ever need to know about objects.
  • 0
    @netikras And from C++ you can fast move upwards to C# with Lambda expressions and other heart-warming dev goodies.
Add Comment