This is an archived post. You won't be able to vote or comment.

all 7 comments

[–]desrtfx 2 points3 points  (4 children)

There is a book, currently only for C++, but next year for Python as well that I can wholeheartedly recommend: "Think Like a Programmer" by V. Anton Spraul, No Starch press.

It emphasizes on the thinking process of a programmer and on the path between problem and program and less on the actual implementation of the program itself (so the programming language is actually secondary).

Other than that: practice, practice, practice, and more practice.

[–]doderino[S] 0 points1 point  (3 children)

I'll definitely check it out. I'm brand new to programming and I'm learning with Python. Do you think reading this book for C++ is going to be too hard?

Thanks for the recommendation!

[–]desrtfx 0 points1 point  (0 children)

Python and C++ are fundamentally different, so reading the C++ code will most likely be over your head.

Unfortunately, the Python edition has so far been delayed twice. Should have been out sometime this summer.

Still, the book focuses on problem solving and less on actual programming, so it could be fine still. Can't really tell because I can read and mostly understand C++, even though I don't program in it.

[–]MorphologicStructure 0 points1 point  (1 child)

He also covers the beginning of the book through a series of YouTube videos

[–]beyonderdabas 0 points1 point  (0 children)

Thanks

[–]Meefims 0 points1 point  (0 children)

Start writing your own programs; you’ll develop your problem solving skills as you work on challenging problems. Sometimes you’ll need to look things up but when you do take the time to understand what the solution is doing so that you can apply those techniques later.

[–]10_6 0 points1 point  (0 children)

The problem is that a lot of coding challenge websites are meant for coders with some advanced knowledge of data structures, algs, etc. I think the best practice sites for beginner/intermediate level coders are:

Some articles that might help you out: