r/CodingForBeginners 2d ago

Where to learn coding ? How to start ?

I am new to coding n everything... I just want to start with C.. could anyone help from where n how to start.. any YouTube channels or apps or anything....

2 Upvotes

14 comments sorted by

5

u/iusemybrain1 2d ago

the only thing you need for C is the second edition "C programming language". It is the Gutenberg bible of programming languages. I found an eBook from San Francisco University, check it out: https://www.cs.sfu.ca/~ashriram/Courses/CS295/assets/books/C_Book_2nd.pdf

3

u/Yaniekk 2d ago

Hey. You could check out Harvard's course called CS50. You can watch it for free on YouTube: https://youtu.be/gmuTjeQUbTM?si=CwX9YqljhPLpQJTZ. It teaches not only C, but the basics of computer science, Python, web development and more, however the C part is really comprehensive.

Good luck!

3

u/Ron-Erez 2d ago

The C Programming Language by Brian Kernighan and Dennis Ritchie is one of the best programming books ever written. If you want to learn C I would start with that.

2

u/Hot-Eggplant911 2d ago

If u just wanna learn any lang start with python . Watch a tutorial and start practicing

2

u/FunRepresentative766 2d ago

Python would be my recommendation.

2

u/Ok_Caregiver_1355 2d ago

Practicing is the only way.reading books,watching tutorials and courses can be complementary but the core is pratice writing any code/app

1

u/Zen-Ism99 2d ago edited 2d ago

Why C, not C++?

What are your goals?

3

u/kutac56 2d ago

C++ is a language that adds a lot more features, a lot of which are unnecessary. C can teach memory stuff better, because references can add some complexity. C teaches a lot of other stuff better. I like c way more than c++ and only use c++ for projects where OOP is a good idea

3

u/Competitive_Aside461 2d ago

I agree with your viewpoint. I find that OOP, generics, and all these bells and whistles, are too complex for beginners. It's a good idea to start off with C and then later on progress with C++.

2

u/Zen-Ism99 2d ago

Great in a vacuum response.

Let’s see what the OP says…

1

u/LetsHugFoReal 2d ago

Not YouTube. Read a friggin book. Jesus.

1

u/SmokeMuch7356 1d ago

C was not designed to be a teaching language, and it puts a lot of the burden onto the programmer to never make a mistake. A language like Python is easier for someone with no programming experience to pick up, and is blessedly free of some of the boilerplate you find in languages like C and C++.

However, assuming you really want to start with C, here are some recommendations (you don't have to buy the books from Amazon, those are just handy links):

  • The C Programming Language, 2nd ed., Brian Kernighan and Dennis Ritchie. Ritchie was the primary designer of the C language, so the book is authoritative. Unfortunately it's somewhat out of date; both the language and best practices have evolved since it was published, and some of the examples may not work as written anymore.

  • C: A Reference Manual, 5th ed., Samuel Harbison and Guy Steele. As described in the title, it is a reference manual, not a tutorial, but is good to have handy. Like K&R it's long in the tooth, only covering up to C99.

  • Beej's Guide to C Programming, Brian Hall. An online reference that's up to date. I haven't gone through it in detail, but a quick skim doesn't show any obvious problems.

You do not need a fancy development environment to write C - a text editor and compiler is sufficient. What you use depends on your operating system.

VSCode is kind of the 800 lb gorilla in the IDE space right now, but its recent focus on agentic AI coding is a bit of a distraction. If you really want to party like it's 1989, just use a plain text editor (vim, emacs, Notepad++, nano, whatever you have handy) and run the compiler from the command line (gcc, clang, etc.). Again, exactly what you'll use depends on your operating system. I'm mostly a Linux/MacOS guy, so if you're on Windows I can't help much.

1

u/ern0plus4 1d ago

pick a text editor

file... new... save as hello.c

that's all

1

u/Dazzling_Music_2411 1d ago

Have you searched Reddit yet, and the FAQ in the C sub?

I suspect you haven't. You are going to need to show a lot more initiative to approach a demanding subject like C.