#152 in Business & money books
Use arrows to jump to the previous/next product

Reddit mentions of Coders at Work: Reflections on the Craft of Programming

Sentiment score: 9
Reddit mentions: 18

We found 18 Reddit mentions of Coders at Work: Reflections on the Craft of Programming. Here are the top ones.

Coders at Work: Reflections on the Craft of Programming
Buying options
View on Amazon.com
or
    Features:
  • Apress
Specs:
Height10 Inches
Length7.01 Inches
Number of items1
Release dateSeptember 2009
Weight2.43169874986 Pounds
Width1.43 Inches

idea-bulb Interested in what Redditors like? Check out our Shuffle feature

Shuffle: random products popular on Reddit

Found 18 comments on Coders at Work: Reflections on the Craft of Programming:

u/Milumet · 5 pointsr/learnprogramming

I love Coders at Work. Not at autobiography though, but a set of interviews. Very entertaining.

There is also an older book with interviews: Programmers at Work.

u/CSMastermind · 4 pointsr/learnprogramming

I've posted this before but I'll repost it here:

Now in terms of the question that you ask in the title - this is what I recommend:

Job Interview Prep


  1. Cracking the Coding Interview: 189 Programming Questions and Solutions
  2. Programming Interviews Exposed: Coding Your Way Through the Interview
  3. Introduction to Algorithms
  4. The Algorithm Design Manual
  5. Effective Java
  6. Concurrent Programming in Java™: Design Principles and Pattern
  7. Modern Operating Systems
  8. Programming Pearls
  9. Discrete Mathematics for Computer Scientists

    Junior Software Engineer Reading List


    Read This First


  10. Pragmatic Thinking and Learning: Refactor Your Wetware

    Fundementals


  11. Code Complete: A Practical Handbook of Software Construction
  12. Software Estimation: Demystifying the Black Art
  13. Software Engineering: A Practitioner's Approach
  14. Refactoring: Improving the Design of Existing Code
  15. Coder to Developer: Tools and Strategies for Delivering Your Software
  16. Perfect Software: And Other Illusions about Testing
  17. Getting Real: The Smarter, Faster, Easier Way to Build a Successful Web Application

    Understanding Professional Software Environments


  18. Agile Software Development: The Cooperative Game
  19. Software Project Survival Guide
  20. The Best Software Writing I: Selected and Introduced by Joel Spolsky
  21. Debugging the Development Process: Practical Strategies for Staying Focused, Hitting Ship Dates, and Building Solid Teams
  22. Rapid Development: Taming Wild Software Schedules
  23. Peopleware: Productive Projects and Teams

    Mentality


  24. Slack: Getting Past Burnout, Busywork, and the Myth of Total Efficiency
  25. Against Method
  26. The Passionate Programmer: Creating a Remarkable Career in Software Development

    History


  27. The Mythical Man-Month: Essays on Software Engineering
  28. Computing Calamities: Lessons Learned from Products, Projects, and Companies That Failed
  29. The Deadline: A Novel About Project Management

    Mid Level Software Engineer Reading List


    Read This First


  30. Personal Development for Smart People: The Conscious Pursuit of Personal Growth

    Fundementals


  31. The Clean Coder: A Code of Conduct for Professional Programmers
  32. Clean Code: A Handbook of Agile Software Craftsmanship
  33. Solid Code
  34. Code Craft: The Practice of Writing Excellent Code
  35. Software Craftsmanship: The New Imperative
  36. Writing Solid Code

    Software Design


  37. Head First Design Patterns: A Brain-Friendly Guide
  38. Design Patterns: Elements of Reusable Object-Oriented Software
  39. Domain-Driven Design: Tackling Complexity in the Heart of Software
  40. Domain-Driven Design Distilled
  41. Design Patterns Explained: A New Perspective on Object-Oriented Design
  42. Design Patterns in C# - Even though this is specific to C# the pattern can be used in any OO language.
  43. Refactoring to Patterns

    Software Engineering Skill Sets


  44. Building Microservices: Designing Fine-Grained Systems
  45. Software Factories: Assembling Applications with Patterns, Models, Frameworks, and Tools
  46. NoEstimates: How To Measure Project Progress Without Estimating
  47. Object-Oriented Software Construction
  48. The Art of Software Testing
  49. Release It!: Design and Deploy Production-Ready Software
  50. Working Effectively with Legacy Code
  51. Test Driven Development: By Example

    Databases


  52. Database System Concepts
  53. Database Management Systems
  54. Foundation for Object / Relational Databases: The Third Manifesto
  55. Refactoring Databases: Evolutionary Database Design
  56. Data Access Patterns: Database Interactions in Object-Oriented Applications

    User Experience


  57. Don't Make Me Think: A Common Sense Approach to Web Usability
  58. The Design of Everyday Things
  59. Programming Collective Intelligence: Building Smart Web 2.0 Applications
  60. User Interface Design for Programmers
  61. GUI Bloopers 2.0: Common User Interface Design Don'ts and Dos

    Mentality


  62. The Productive Programmer
  63. Extreme Programming Explained: Embrace Change
  64. Coders at Work: Reflections on the Craft of Programming
  65. Facts and Fallacies of Software Engineering

    History


  66. Dreaming in Code: Two Dozen Programmers, Three Years, 4,732 Bugs, and One Quest for Transcendent Software
  67. New Turning Omnibus: 66 Excursions in Computer Science
  68. Hacker's Delight
  69. The Alchemist
  70. Masterminds of Programming: Conversations with the Creators of Major Programming Languages
  71. The Information: A History, A Theory, A Flood

    Specialist Skills


    In spite of the fact that many of these won't apply to your specific job I still recommend reading them for the insight, they'll give you into programming language and technology design.

  72. Peter Norton's Assembly Language Book for the IBM PC
  73. Expert C Programming: Deep C Secrets
  74. Enough Rope to Shoot Yourself in the Foot: Rules for C and C++ Programming
  75. The C++ Programming Language
  76. Effective C++: 55 Specific Ways to Improve Your Programs and Designs
  77. More Effective C++: 35 New Ways to Improve Your Programs and Designs
  78. More Effective C#: 50 Specific Ways to Improve Your C#
  79. CLR via C#
  80. Mr. Bunny's Big Cup o' Java
  81. Thinking in Java
  82. JUnit in Action
  83. Functional Programming in Scala
  84. The Art of Prolog: Advanced Programming Techniques
  85. The Craft of Prolog
  86. Programming Perl: Unmatched Power for Text Processing and Scripting
  87. Dive into Python 3
  88. why's (poignant) guide to Ruby
u/gorillamania · 3 pointsr/hackersfounders
  • Founders at Work
  • Coders at Work
  • Lean Startup
  • The Seven Habits of Highly Effective People
  • The Four Steps to Epiphany
  • High Tech Startup
  • Getting things Done
u/UrbanPizzaWizard · 3 pointsr/AskComputerScience

I thought Coders at Work: Reflections on the Craft of Programming was a really enjoyable read.

It's just a collection of interviews. The book features some really interesting programmers such Ken Thompson, Joe Armstrong, Peter Norvig, and Donald Knuth. I had a great time reading their stories.

u/driusan · 3 pointsr/golang

It's something that becomes a fad every couple years for about a week, and then dies out again. I think I first heard about it in the interview with Brad in Coders at Work and I'd been meaning to try it.

To be honest, I'm not sure if I'd start any new project this way now that I've tried it, but I'd recommend anyone who considers themselves a programmer try to do something with it, for the same reason I'd recommend trying out any other programming paradigm that they're not familiar with..

u/hypo11 · 2 pointsr/promos

Really annoying - available for the Kindle for $9.99 but to simply buy the eBook in PDF is $20.99.

I'd like to read this on my nook. Do I really need to pay 2x the price as a Kindle user for that honor?

u/mononcqc · 2 pointsr/programming

Simon Peyton-Jones IS interviewed in the book. See the amazon page: "Simon Peyton Jones: Coinventor of Haskell and lead designer of Glasgow Haskell Compiler"

The 15 people interviewed are mentioned on that page.

u/GimmeSomeSugar · 2 pointsr/apple

Didn't he also attempt to shut down the Apple Macintosh project because he didn't really get it?
*Edit:
Wow. Thanks for the downvotes guys, talk about shitty reddiquette. I'm at home now, so I've got some time to dig out some citations.
The article from which I originally picked up that idea is this one, quoting Jef Raskin's interview in Peter Siebel's Coders at Work.
>What I proposed was a computer [the Macintosh] that would be easy to use, mix text and graphics, and sell for about $1,000. Steve Jobs said that it was a crazy idea, that it would never sell, and we didn’t want anything like it. He tried to shoot the project down.

When originally posted on Reddit, who should pop up in the comments but
Paul fucking Lutus! His summation was that yep, that's pretty much how it went down.
So, yea. If people who were actually there at the time (one of who is the guy that created the thing) are saying that technically Steve Jobs headed up that group, but only after trying to trash it because he couldn't get his head around it, I'm going to put some credence in those claims.
Stay classy /r/apple.

u/CrockenSpiel · 2 pointsr/programming

I loved your interview the most in this book. You seem to be an awesome guy.

u/gmarceau · 2 pointsr/compsci

Like you I work at a tech startup. When we were just starting, our business/strategy people asked the question you just asked. They opened a dialog with development team, and found good answers. I attribute our success in large part to that dialog being eager and open-minded, just as you are being right now. So, it's good tidings that you are asking.

For us, the answer came from conversation, but it also came from reading the following books together:

  • The Soul of a new Machine. Pulitzer Prize Winner, 1981. It will teach you the texture of our work and of our love for it, as well as good role models for how to interact with devs.

  • Coders at Work, reflection on the craft of programming Will give you perspective on the depth of our discipline, so you may know to respect our perspective when we tell you what the technology can or cannot do -- even when it is counter-intuitive, as ModernRonin described.

  • Lean Startup It will teach you the means to deal with the difficult task of providing hyper-detailed requirements when the nature of building new software is always that it's new and we don't really know yet what we're building.

  • Agile Samurai Will teach you agile, which ModernRonin also mentioned.

  • Watch this talk by one of the inventor/popularizer of agile, Ken Schwaber Pay particular attention to the issue of code quality over time. You will soon be surrounded by devs who will be responsible for making highly intricate judgement calls balancing the value of releasing a new feature a tad earlier, versus the potentially crippling long-term impact of bad code. Heed Ken Schwaber's warning: your role as a manager is to be an ally in protecting the long-term viability of the code's quality. If you fail -- usually by imposing arbitrary deadlines that can only be met by sacrificing quality -- your company will die.



u/Thimble · 1 pointr/programming

This is a thinly disguised ad for "Coders at work". Indeed, as I have added it to my wish list...

u/otavio021 · 1 pointr/brasil

Rotina? Que rotina? :D

Eu trabalho como Quality Engineer; fazendo um trabalho misto entre "Software Engineer in Test", desenvolvendo soluções pra testes de produtos, e CI Engineer, desenvolvendo em mantendo o ambiente de integração contínua do time.
O meu dia a dia depende do tipo de produto, da fase do projeto ou da tecnologia envolvida. Então, em as vezes estou fazendo design/arquitetura de sistemas, programando, pesquisando, testando, etc.

Meu emprego é fenomenal e eu trabalho com alguns dos melhores profissionais do mundo em suas áreas. Apesar da pressão, o ambiente é relaxado e divertido.

Não creio, porém, que meu dia a dia seja suficientemente interessante além do meu mundo. Então, OP, se você tiver paciência, tempo e quiser se aprofundar mais sobre o assunto antes de tomar a decisão, tem um livro que talvez seja interessante para você e possa te dar uma ideia sobre programação sob o ponto de vista de algumas lendas da área. Talvez esse livro te ajude a reconhecer em você o mesmo tipo de interesse que esses caras tiveram. O livro em questão se chama Coders At Work: Reflections on the Craft of Programming.

u/deong · 1 pointr/compsci

Aside from the other excellent choices people have recommended, here are a few I liked that I haven't seen in the thread yet.

  • The Art of the Metaobject Protocol

    This one sounds super-obscure. It's basically the design notes for the Common Lisp Object System, which isn't exactly a manual you need to read to get your work done. However, if you look at it less a book about how to use CLOS and more a book about how an object-oriented language can be built from scratch, it's really a fantastic little read.

  • Coders at Work

    It's what it says on the tin -- interviews with several programming icons. What makes this one better than the other half-dozen or so similar titles is how well the author runs those interviews.

  • Elements of Programming

    If I'm honest, I didn't find this one to be that engaging of a read, but it's worth the bit of effort to get through it just to absorb Stepanov's vision for how to express algorithms. He's got a newer book as well that I have high hopes for, but I haven't had a chance to read it yet.
u/Rob_Royce · 0 pointsr/cscareerquestions

Disclaimer: I'm still a student, so if you want to, go ahead and disregard my response. On the other hand, I have put in many hours contemplating this very question.

In "Coders at Work," Peter Seibel interviews the founder of JSON and JavaScript architect, Douglas Crockford.

Seibel poses the question
> Have you ever had problems ... (with) people who've been successful in one language (who) sometimes have a hard time giving up their old ways, even when working in a new language where they don't really make sense?

Crockford's response:
> I don't care. I just want to know that you know how to put an algorithm together, you understand data structures, and you know how to document it. (...) Generally, I prefer generalists. I want someone who's capable of learning any of those APIs but isn't necessarily skilled in any one.

In The Pragmatic Programmer, authors Andrew Hunt and David Thomas say
>The more different things you know, the more valuable you are. As a baseline, you need to know the ins and outs of the particular technology you are working with currently. But don't stop there. The face of computing changes rapidly -- hot technology today may well be close to useless (or at least not in demand) tomorrow. The more technologies you are comfortable with, the better you will be able to adjust to change.

The emphasis in comfortable is mine. It doesn't say the more technologies you master or are proficient at. Instead, being comfortable with many different areas, topics, technologies, languages, etc., will allow you to express your value to an employer in many different ways.

Now, specific to your current position. I have been with my current company for 9 years now. I started out as a cashier, moved into management after 9 months, and now I am a service technician working with all of the networking, computers, surveillance, construction, project management, etc. I am essentially a corporate representative with a LOT of autonomy, responsibility, and I wear a lot of hats. I am also the highest paid technician in the company for these very reasons. My job is perhaps one of the most stable in the company given the amount of general knowledge I have about the areas I work on actively.

Now, software might be different in that knowing a lot about everything is incredibly hard. However, picking a couple of specialized areas and being comfortable with many other areas is very likely to make you a valuable employee. It allows you to think up insightful solutions to multi-disciplinary problems. You can be the hero who comes up with novel solutions to larger problems, whereas people who specialize in C++, JavaScript, or Haskell might only know how to solve the same problems in their respective languages.

From what I can tell by reading the literature, those are the differences between people who specialize and people who generalize. I think you are experiencing what it's like to be good at generalizing. Incidentally, I would also equate CEO's, CTO's, COO's and other C-level people to generalists. They are capable of abstracting away the minutiae and details of their problems and delegate to others in order to get stuff done. They focus on big-picture stuff and let the specialists (accountants, technicians, programmers, drivers, etc) deal with the details.