Andrew Hunt,David Thomas

The Pragmatic Programmer: From Journeyman to Master

Notify me when the book’s added
To read this book, upload an EPUB or FB2 file to Bookmate. How do I upload a book?
  • Andrey Mcarrowhas quoted3 years ago
    There are no easy answers. There is no such thing as a best solution, be it a tool, a language, or an operating system. There can only be systems that are more appropriate in a particular set of circumstances.
  • Andyhas quoted4 years ago
    "Kaizen" is a Japanese term that captures the concept of continuously making many small improvements.
  • Jonibek Nematovhas quoted5 years ago
    Broken Window Theory
  • Samir Kerimovhas quoted5 years ago
    Rubber Ducking

    A very simple but particularly useful technique for finding the cause of a problem is simply to explain it to someone else. The other person should look over your shoulder at the screen, and nod his or her head constantly (like a rubber duck bobbing up and down in a bathtub). They do not need to say a word; the simple act of explaining, step by step, what the code is supposed to do often causes the problem to leap off the screen and announce itself.[7]
  • Samir Kerimovhas quoted5 years ago
    If your first reaction on witnessing a bug or seeing a bug report is "that's impossible," you are plainly wrong. Don't waste a single neuron on the train of thought that begins "but that can't happen" because quite clearly it can, and has.
  • Samir Kerimovhas quoted5 years ago
    If you haven't spent much time exploring the capabilities of the command shell on the systems you use, this might appear daunting. However, invest some energy in becoming familiar with your shell and things will soon start falling into place. Play around with your command shell, and you'll be surprised at how much more productive it makes you.
  • Samir Kerimovhas quoted5 years ago
    Pragmatic Programmers don't just cut code, or develop object models, or write documentation, or automate the build process—we do all of these things.
  • Samir Kerimovhas quoted5 years ago
    For programmers raised on GUI interfaces and integrated development environments (IDEs), this might seem an extreme position. After all, can't you do everything equally well by pointing and clicking?

    The simple answer is "no." GUI interfaces are wonderful, and they can be faster and more convenient for some simple operations. Moving files, reading MIME-encoded e-mail, and typing letters are all things that you might want to do in a graphical environment. But if you do all your work using GUIs, you are missing out on the full capabilities of your environment. You won't be able to automate common tasks, or use the full power of the tools available to you. And you won't be able to combine your tools to create customized macro tools.
  • Samir Kerimovhas quoted5 years ago
    EVERY PIECE OF KNOWLEDGE MUST HAVE A SINGLE, UNAMBIGUOUS, AUTHORITATIVE REPRESENTATION WITHIN A SYSTEM.
  • Samir Kerimovhas quoted5 years ago
    Most people assume that maintenance begins when an application is released, that maintenance means fixing bugs and enhancing features. We think these people are wrong. Programmers are constantly in maintenance mode. Our understanding changes day by day. New requirements arrive as we're designing or coding. Perhaps the environment changes. Whatever the reason, maintenance is not a discrete activity, but a routine part of the entire development process.
fb2epub
Drag & drop your files (not more than 5 at once)