Answer the question
In order to leave comments, you need to log in
What should a programmer read to improve the serious algorithmic base needed in the corporate sector?
Third year student. I normally program, I have already written a lot, but I want to gain some serious algorithmic base necessary in the corporate sector - because there is no certainty in the readiness to get a job.
Actually, I ask you to indicate what the best books you can advise on basic algorithms (including the Olympiad type), patterns, and everything else that can be useful when working as a serious programmer in a large company. Not only in programming languages, but also in databases, operating systems, networks. In general, a list of references that you consider mandatory reading.
Answer the question
In order to leave comments, you need to log in
Cormen. Algorithms. Construction and analysis
S. McConnell. Perfect code.
Bentley. Programming
gems Tanenbaum. Computer networks
I program normally
the best books you can recommend for basic algorithms
E. Gamma, R. Helm, R. Johnson, J. Vlissides
Object-Oriented Design Techniques. Design patterns
The famous "Refactoring" by Fowler - without comments and unnecessary recommendations. Bentley's Gem of Programming is an easy to read and not too bulky book about serious and interesting things.
Basic algorithms and concepts:
Aho, Hopcroft, Ullman. Algorithms and data structures.
Wirth. Algorithms + Data Structures =
Classic Database Programs:
Date. Introduction to database systems.
In my third year, I got a job as an intern in a rather big company. It was very helpful. On the go, he mastered new technologies and participated in real projects and also paid money. So, I advise you to look in this direction.
"Regular expressions", Jeffrey Friedl
Not that the most necessary of the books, but my knowledge of regular expressions, sorry for the pun, regularly simplifies my life, especially considering that at the institute they talked about this topic for about fifteen minutes.
A. Aho — Compilers, in conjunction with Mozgova M.V. — Algorithms, languages, automata, compilers.
T.Connolly, K.Begg — Databases. Design, implementation and support. Theory and practice.
A. Shen — PROGRAMMING theorems and problems.
Toby Segaran - Programming the collective mind, here recently wrote about it.
Try to work now. Freelance, write something for yourself. You can read a lot of books, but never learn anything.
When I worked for a year as a programmer from the second to the third year, and now, having worked for 2 months being in the fifth, I learned much more than during the entire time of the university.
If you are going to write mass software for users, I would add Alan Cooper to everything suggested above
· Mental hospital in the hands of patients
This book will help you look at your program from the side of the user, not the programmer. Thanks to this, it will be possible to initially correctly think over the architecture of the software so that it is convenient for customers and does not cause rejection.
Naturally, if you plan to write server software, etc., then there is not much sense from the book.
I'll add a couple more good books from myself:
The Art of C Programming. Fundamental Algorithms, Data Structures, and Sample Applications, Hasfield/Kirby.
Algorithmic tricks for programmers, Warren.
The Practice of Programming, Kernighan/Pike.
An Introduction to Automata Theory, Languages, and Computation, Hopcroft.
Algorithms: an introduction to design and analysis, Levitin.
Analysis of algorithms. Introductory Course, McConnell.
Fundamentals of programming, Nepeyvoda.
Programming gems, Bentley.
Software Development Best Practices, Spolsky.
And for relaxing reading:
Here I am compiling a wishlist for myself , based on recommendations, including those in this topic. (I have already read part of it, but I keep it for the collection).
there not only for the programmer but also on other topics.
take a look, maybe you will find something useful for yourself.
Didn't find what you were looking for?
Ask your questionAsk a Question
731 491 924 answers to any question