Y
Y
yourweb2013-11-28 23:42:03
Books
yourweb, 2013-11-28 23:42:03

What books to read and study to become a real programmer, not a coder?

Hello!
I read a similar question, many advise just writing something for yourself to make it interesting. I did just that, but it turns out that with this approach you can only become a coder, and with the prefix - "cattle".
I am interested in exactly how to become a programmer (developer), i.e. what skills you need to have to truly create quality applications (read light, easy to use and with the ability to quickly improve if necessary), and how to design them from end to end.
Interested in a purely academic approach, abstracted from any PL.
Thank you all in advance!

Answer the question

In order to leave comments, you need to log in

16 answer(s)
J
JSinga, 2013-11-29
@JSinga

the main problem is that you, most likely, did not code much, but are already looking for books that will make your code "father-like".
You don't get distracted by that.
How many ratings did you get in TopCoder, CodeForce?
How many projects have you contributed to on GitHub?
Why do you think you've coded enough?
Do you want to read books and dream that the code will become smart by itself?
http://write-fucking-code.rf/

V
veitmen, 2013-11-29
@veitmen

Good afternoon.
Unfortunately there is no "silver" book. There is no clear path.
Be sure to read the article, from the habr, which you threw off. And let it all go through you. The advice is good, but you must understand that all people are unique and the path of becoming is different for everyone. It also depends on who you want to be. For example, I, as a person developing Enterprise applications, do not like "olympiads" very much. But that's me, other people have their own opinion.
There are many ways to become a good programmer. Read the chapter on programmer personality in Perfect Code by McConnell. Compare yourself to the description. Very interesting. :)
Bydlokoder - ceases to be a bydlokoder, only when he begins to understand every line of code, knows what is hidden behind every call of any function. After that, a person begins to understand what is good and what is bad. This is just an experience. Over time, you will begin to distinguish good code from bad. You will just know that if you write like this, it will be "bobo" later. :) Of course you can and should read books. If you want to write beautiful code, then read McConnell's Perfect Code and Fowler's Refactoring. This is enough to understand what code is good and what is bad. But it won't help until you see it for yourself. :) To design systems, you also need to read books, but first of all look at solutions. Understand why they did it this way and not otherwise. Why is it so in this application, but not in another? How is it better? When exactly is it better? etc. e. Learn and understand. Try to use these solutions in your applications.
Style tips do what you like right. Because it is by doing what you like that you will look for ways to improve it.
Look for more experienced comrades. This is the most important thing. It is very difficult without mentors. BUT choose wisely, otherwise you will be an academic "bydlokoder". :)
Find a job.
Don't bother. If you like programming, then just read and write code. You will become a good progger anyway. Do not be afraid of criticism, especially from the most evil and merciless critics. Any suggestions for improvement are welcome. But never take a word for it. :) Double-check everything. There are "bydlokoders" and they want to drag everyone to their side, so as not to stand out. :) :)

J
justaguest, 2013-11-29
@justaguest

It's strange why no one mentioned the art of programming by D. Knuth.

A
Alexander Kamolov, 2013-11-28
@dintsec

http://habrahabr.ru/post/202988/

@
@betasked, 2013-11-29
_

Code, code and code!!!
And periodically compare your code with the guru. Analyze. Rewrite the code again. Analyze again. Look for answers to specific questions in books.

M
Mr Jenkins, 2013-11-30
@qassarb

Guys, I just want to share my story.
I realized 4 years ago that I want to become a developer.
And for a little over 3 years I could not choose a language.
Then he took up PHP, threw it away, didn’t like something, just tried to get into what C, C ++, and derivatives, scripting are. And this year I settled on Java. I found it!!!!!!: )
In all cases, I read the literature, but then I realized the more you know the basics, the better your code will be. When you know how the algorithms of the same, say, compiler are arranged, it is easier to understand the architecture and analyze state transitions.
If anyone is interested in Java, I highly recommend www.intuit.ru/studies/courses/16/16/info
Vyazovik. Although the course is old, some things are outdated, but already during the course you begin to understand. Patience!
BR

Z
zloyusr, 2013-11-29
@zloyusr

In pursuit of the books in my essay, you can also see here: http://habrahabr.ru/post/135897/

A
anathem, 2013-11-29
@anathem

And in my opinion, the answerers missed one thing. By hacking Knuth, getting the practice of "coding, coding, coding" you can become a cool coder. But you need to not just code, but you need to solve problems - therefore, in addition to literature on programming, read business literature, something on sociology, all sorts of GTD, psychology, study finance, law, etc., etc.

E
evnuh, 2013-11-29
@evnuh

Obviously, as always - to gain experience from the elders. There is no way to do it live - you're on github. Pick something open, dig in and help fix a couple of bugs.

K
Kane, 2013-11-29
@Kane

http://www.wikihow.com/Become-a-Programmer

S
Shurik, 2013-11-29
@aioon

The path of the programmer

A
afiskon, 2013-11-30
@afiskon

Not that I'm the type of programming guru, but you can see what books I read that might help.

R
RokkerRuslan, 2014-02-23
@RokkerRuslan

I've already advised SICP to everyone who didn't hit :).
The book is in the public domain.
There is a very good translation into Russian from Georgy Bronnikov

S
Shurik, 2013-11-29
@aioon

it’s still worth digging here shelfari let’s say that our Martin Fowler read there )))

D
Dmitry, 2013-12-05
@EvilsInterrupt

In my opinion, there is nothing special to read! The programmer is characterized not by the knowledge of a large number of technologies and languages, but by the ability to understand and solve in a reasonable time. Very often, business sets new tasks and at scrum meetings there are discussions on how to solve the next task and who better to entrust. So, as a rule, someone copes faster, and someone slower. The thing is that the one who copes faster often knows no more than the second, he just has a kind of universal approach to solving problems. My advice to you: develop this most universal approach. Learn the Most Important Skill of a Programmer to "Problem Solve". Different people approach it differently! On the pages of one of the classic books "The Art of Unix Programming" Rob Pike said about his colleague Kernighan " Being a good programmer, I was surprised to find that I learned a lot from him! Very often, where it seemed that he could not do without a debugger, he managed to find out the cause of the error without debugging. "This is one of the examples of how a programmer should be, and there are a lot of these examples!

M
Mintormo, 2014-02-18
@Mintormo

Can anyone explain how a programmer differs from a "coder" and why there are complexes?

Didn't find what you were looking for?

Ask your question

Ask a Question

731 491 924 answers to any question