An education consultancy focused on researching, designing, building, and testing cutting-edge curriculum, running bold experiments to innovate learning.
But the problem with this stuff is - it always depends on where you are at.
A lot of people swear by "The Pragmatic Programmer" and "The Mythical Man-month" - and we think those are great. They're actually right here - within reach!
But those are NOT the right books to read for someone who is just starting out. Those are like - fun thought-provoking essays and stuff for career programmers who are already advanced and experienced. (please argue this point if you feel differently)
Those are definitely "classic" reads. But - we're curious about what could become a 'classic' foundation for more than code.
"Clean Code" and "Code Complete" are also classic reads - but could devastate the reader if picked up at the wrong time in their learning path.
We think that these should be mandatory reading:
"Design for the Real World", "Ruined by Design" (both for understanding your impact and responsibility as a creator) and "Exercises for Programmers" as a practical (language agnostic) guide to learning programming.
Also required: "The Elements of User Experience."
"The Design of Everyday Things" is another one. (make sure you get the latest edition)
UX: "Don't Make Me Think", "The Inmates Are Running the Asylum"
If you could just give someone only one book to help them learn to be a confident and responsible programmer, what would it be?
We would probably choose "The Elements of User Experience" - have the student practice things for a while - and then introduce "Design for the Real World" - or maybe we'll need to write a little collection from all of those books as an entry point.
But those are NOT the right books to read for someone who is just starting out. Those are like - fun thought-provoking essays and stuff for career programmers who are already advanced and experienced. (please argue this point if you feel differently)
They are indeed not entry level books.
The Mythical Man-month is for when you get to a position where you get/share responsibility for a team. This book is a foundation of a lot of (attempted) changes in the way we organize to develop software. You must understand the past in order to improve the future.
However, The Pragmatic Programmer is something you should start to read after a year (or two) in software development. Same with Clean Code and Clean Coder. These books are not complex and do provide critical insights.
Code Complete I would hold of on for 5 years. Simply because that book is massive, in size and density.
An education consultancy focused on researching, designing, building, and testing cutting-edge curriculum, running bold experiments to innovate learning.
We haven't read all of Clean Code yet: but they are sitting over there on the shelf... just staring at us. "Web Dev" and "Software Engineering" and all of the "names" of the "things" - are certainly connected - but also have different primary concerns. Small design shops, marketing agencies, and even complex web applications just don't seem that complex! OOP often plays no real role. Hook up a few APIs + write some markup + test with users + iterate. Are "Web documents" really "software?" In many cases - we'd rather hire a developer that can think through UX and has empathy for the user - over someone who has read those books. BUT we'll have to see what happens after we finish reading Clean Code - and Code Complete. ; ) If memory serves - there were a lot of C type language examples that didn't land with us at the time.
For further actions, you may consider blocking this person and/or reporting abuse
We're a place where coders share, stay up-to-date and grow their careers.
Shoot. We've been trying to put together a list!
But the problem with this stuff is - it always depends on where you are at.
A lot of people swear by "The Pragmatic Programmer" and "The Mythical Man-month" - and we think those are great. They're actually right here - within reach!
But those are NOT the right books to read for someone who is just starting out. Those are like - fun thought-provoking essays and stuff for career programmers who are already advanced and experienced. (please argue this point if you feel differently)
Those are definitely "classic" reads. But - we're curious about what could become a 'classic' foundation for more than code.
"Clean Code" and "Code Complete" are also classic reads - but could devastate the reader if picked up at the wrong time in their learning path.
We think that these should be mandatory reading:
"Design for the Real World", "Ruined by Design" (both for understanding your impact and responsibility as a creator) and "Exercises for Programmers" as a practical (language agnostic) guide to learning programming.
Also required: "The Elements of User Experience."
"The Design of Everyday Things" is another one. (make sure you get the latest edition)
UX: "Don't Make Me Think", "The Inmates Are Running the Asylum"
BLOGS: "Coding Horror" "Joel on Software"
ESSAYS: "I, Pencil"
We would probably choose "The Elements of User Experience" - have the student practice things for a while - and then introduce "Design for the Real World" - or maybe we'll need to write a little collection from all of those books as an entry point.
They are indeed not entry level books.
The Mythical Man-month is for when you get to a position where you get/share responsibility for a team. This book is a foundation of a lot of (attempted) changes in the way we organize to develop software. You must understand the past in order to improve the future.
However, The Pragmatic Programmer is something you should start to read after a year (or two) in software development. Same with Clean Code and Clean Coder. These books are not complex and do provide critical insights.
Code Complete I would hold of on for 5 years. Simply because that book is massive, in size and density.
We haven't read all of Clean Code yet: but they are sitting over there on the shelf... just staring at us. "Web Dev" and "Software Engineering" and all of the "names" of the "things" - are certainly connected - but also have different primary concerns. Small design shops, marketing agencies, and even complex web applications just don't seem that complex! OOP often plays no real role. Hook up a few APIs + write some markup + test with users + iterate. Are "Web documents" really "software?" In many cases - we'd rather hire a developer that can think through UX and has empathy for the user - over someone who has read those books. BUT we'll have to see what happens after we finish reading Clean Code - and Code Complete. ; ) If memory serves - there were a lot of C type language examples that didn't land with us at the time.