I want to learn to program. I've read the wiki and I'm fairly confident that I want to learn to code in C; however, none of the books are presented as "start from square 0" books.
What is a good start-from-scratch book for programming?
Pic semi related. I heard its a meme. Is that true?
That book is literally the "start from square zero" book. In fact most programming books are like that.
Have you even tried opening one?
Aaron Long
SICP. Better to start with a functional language like lisp rather than C for learning fundamentals.
Joseph Cox
Fuck that. Do Python instead.
Use CodeCademy for lessons and Code Wars for practice assignments. Then come up with projects for yourself.
Then do C or others once you actually know what you even want to do.
Jack Morales
Thread replies Are why I'm hesitant to just drive into k&r. And yes I have opened a textbook before, however I intend on owning this programming book, so I'm cautious before rushing out and getting one.
Logan Mitchell
Nigga have you ever read K&R? It's not beginner friendly at all. It assumes you know the basics of programming and teaches you how C works.
Hunter Bailey
My point exactly. If you go on the wiki the "goat" books, which are what it recommends newbies read (as they probably should), aren't necessarily the *first* books newbies should read. So what is a *first ever* book for programming?
C preferably, but I'll take the advice of any competent programmer if they think i should do otherwise.
Python is basically a training wheels language, But really C is not hard to learn once you commit to it, It's actually harder to learn C coming from python because of the simplicity of python, It's almost like trying to learn how to fly a plane by sailing a ship.
Levi Bailey
If you happen to speak German, i can recommend java-hamster-modell.de/band1.html it's about java, but nothing in the first book is specific to java, as it teaches general programming techniques. Sadly i couldn't find an english translation
Caleb Hill
It's not, it hardly contains any explanation for anything that's happening, especially things that demand further explanation like bitwise operators which literally aren't explained at all. I think Ritchie himself didn't know what the fuck was going on there. K&R is like a quick summary of C's basic functions, not a tutorial on how to program, and it'll definitely be harder to grasp stuff like pointers for someone with no prior knowledge.
Worst meme I ever fell for
Gavin Lee
What's the point in learning C? You're never going to use it to build stuff. How can you struggle through C when languages like Python and Java exist?
Do you use a screwdriver instead of a power tool? Do you manually fap when you could buy a jelly ass?
I just don't get it. Maybe so you can feel superior to idiots on the internet who don't know C.
Why C?
Nathan Long
You want C Programming: A Modern Approach for the actual square 1
Ryan Baker
C is fun to write as a hobby or if you end up doing embedded stuff or write device drivers.
But if all you want is a job then I'd say C is mostly useless. It's not a bad base though since knowing how stuff works at a lower level can help you figure out problems at a higher level
Daniel Butler
>I heard its a meme. Is that true? please kill youself
Gavin Cruz
>I'd say C is mostly useless bullshit. thats how i got my job, and i'm not doing any "embedded stuff or write device drivers"
Jordan Reed
Tbqh user, only use the book to guide you into what to learn next. Use Google to teach you the basics and examples.
If you don't know the basics, like initializing variables, if statements, and creating functions, then just Google that. Most books skip that for the sake of using more pages for more complex topics, like garbage collecting and multithreading.
Stack Overflow is your friend.
Christian Russell
Please tell us more about your job and how knowing c was/is advantageous.
Brody Young
>I intend to buy a hard copy of a famous book I've never read because of memes.
Gabriel Barnes
If you don't know C, you can't write bindings to use C libraries.
Jaxon Lewis
This. You'll learn better from using different sources.
Connor Williams
Beginning Programming with C for dummies. srsly.
Brayden Sanders
K&r is a meme book in this age. Go with C programming : a modern approach
Eli Brown
Go with C? Shit man, that's one hell of a mix.
Jackson Roberts
Heh I ment use the book C programming : a modern approach
Julian Hernandez
Don't go straight into C, there's no need in this day and age, C is great, but you should start with python.
if you want to read a book, read the book, "Think Python" - this is aimed at beginners and will make you quite competent at python - well that's if you practice enough, then work on some projects, then you should be all set for learning anything else in the programming world.
It's best to develop the logic and feel of writing code. With C, to be good, you have to understand a lot more. Even though C is a high level language, it's really in between in away.. with python and other higher level languages you really don't need to know much of what's going on, so your whole focus is understanding programming fundamentals which is ideal for a complete beginner. But remember, work on projects afterwards, this is when you'll truly learn.
David Anderson
>Beginning Programming with C for dummies. srsly. agree with this, dont listen to the people trolling you with advanced C books, this is the one to start with if you know nothing about C
Noah Phillips
>Think Python Can confirm. A pretty good book, though I wasn't exactly a beginner when I've read it.
Leo Walker
Does anyone know of a Python book for non-beginners?
I've been programming for over a decade and somehow have never gotten around to picking up Python. All the resources out there seem to be aimed at people who just learned what a mouse and keyboard are. I'm just looking for a quick book that gives an overview of the syntax and libraries and shit.
Jackson James
Read the docs then.
Jaxon Stewart
"The Quick Python Book"
Gabriel Harris
C Programming: A Modern Approach is what I've been using.
There's a lot of detail there and plenty of simple to difficult exercises at the end of each chapter. I initially tried K&R but struggled with some of the problems and disliked how quick the pacing was.
Levi Davis
Big reason why you should learn C first is because you will learn other languages faster after that. Going from Python to C is quite different and probably gonna take you longer to grasp the language then directly learning it.
Ayden Lee
Hey OP, pic related is a perfect start.
Once you have the C basics, work yourself through SICP and some python book and you know a big deal about programming.
You're not ready yet, novice.
Charles Young
It's a very good book. It doesn't start from zero though: the preface it tells you it expects you to understand basic programming concepts. But despite that, it is a very good book and as long as you know how to use Google, you should do fine.
Jaxson Clark
does it teach you about how it all works from the compiler's perspective?
I want to know what invoking a function means, i.e, how it affects the system. I want to know multi-dimensional arrays exactly work, i.e, why isn't *(a+1) == *(a[0] + 1) for any arrays that have more than two elements
Parker Williams
Not really. One of the appendices somewhat describes the language more formally. It's really about the language, it rarely mentions the compiler.
Levi Fisher
...
Caleb Johnson
does it at least teach you about bit-fiddling and how types are represented in memory im a noob at fiddling
Ian Martin
It doesn't. Those are implementation-dependent.
Easton Bell
>does it teach you about how it all works from the compiler's perspective?
there are plenty of jobs for C, and you can always learn C++ if you can't find any
Justin Martin
Programming from the ground up is a great "start from ground 0" book. Just make sure you read attentively and understand every single line of it, in the first few chapters everything's important.
if you really want an intro into C start with arduino. There are a million videos on how to setup the IDE and the arduino. The language is mostly C with a lot of function thrown in to help. Perfect for a beginner.
Jonathan Price
It's a meme as in knowing it won't get you a job, C gives a solid foundation in programming, but writing some complex software in it is a chore, which is why no job lists it as required, same with C++.
John Green
I'd recommend either C Programming A modern Approach 2nd edition, or C primer Plus 6th edition, the second one is a bit bulky, but I find that if I have an issue understanding anything from the first book, the second one has things laid out a bit more plainly.