Показаны сообщения с ярлыком programming general. Показать все сообщения
Показаны сообщения с ярлыком programming general. Показать все сообщения

среда, 23 августа 2017 г.

понедельник, 20 июня 2016 г.

The Pragmatic Programmer: From Journeyman to Master.

Hello, my dear reader!

Today I'm going to provide some thoughts after reading the Pragmatic Programmer book.
Here are the thoughts that caught me:
  1. Tag a commit, to see how many number of files affected by the bug fix.
  2. Find the opportunity to refine the code.
  3. Flexible, adaptable design.
  4. Deployment: stand-alone, client-server, n-tier model just by changing a configuration file.
  5. Domain specific language.
  6. Know your shell & text editor.
  7. Fix the problem, not the Blame.
  8. Bertrand Meyer.
  9. Design by contract for java.
  10. Perl for text processing.
  11. Pluggable exception handlers.
  12. Resources: memory, transactions, threads, files, timers, sockets.
  13. Metaprogramming.
  14. Large-Scale C++ Software design.
  15. The project needs at least two "heads" -- one technical, the other administrative. The technical head sets the development philosophy & style, assigns responsibilities to teams, and arbitrates the inevitable "discussions" between people. The technical head also looks constantly at the big picture, trying to find any unnecessary commonality between teams that could reduce the orthogonality of the overall effort. The administrative head, or project manager, schedules the resources that the teams need, monitors and reports on progress, and helps decide priorities in terms of business needs. The administrative head might also act as the team's ambassador when communication with the outside world.
  16. Tool builders -> Automation of project activities.
  17. Give each member the ability to shine in his or her own way.
  18. Unit testing: resource exhaustion, errors, and recovery.
  19. Surviving Object-Oriented Projects: A Manager's Guide: Alister Cockburn.
  20. Eiffel.
  21. Michael Holt. Math puzzles & games.
 Nice book. Keep up!

среда, 13 мая 2015 г.

Teach Yourself Programming in Ten Years

Do you know how much it take to learn programming? I don't know. Practice a lot, learn a lot, solve problems a lot.

Read an article by Peter Norvig about teaching yourself programming. This article is under cut for a historical reference and convenience. All rights for it belongs to Peter Norvig.

суббота, 12 октября 2013 г.

Programming quotes

Minimizing complexity is a key to writing high-quality code.

If you treat modifications as opportunities to tighten up the original design of the program, the quality improves.

A long parameter list is a warning that the abstraction of the routine interface has not been well thought out.

Program changes are a fact of life both during initial development and after initial release.

Ideas to manage your manager:
Plant ideas for what  you want to do, and then wait for your manager to have a brainstorm (your idea) about doing what you want to do.

Educate your manager about the right way to do things. This is an ongoing job because managers are often promoted, transfered, or fired.

Focus on your manager's interests, doing what he or she really wants you to do, and don't distract you manager with unnecessary implementation details. (Think of it as "encapsulation" of your job.)

Refuse to do what your manager tells you, and insist on doing your job the right way.

Find another job.

Code as if whoever maintains your program is a violent psychopath who knows where you live. -- Anonymous.

One key to effective  programming is learning to make mistakes quickly, learning from them each time. Making a mistake is no sin. Failing to learn from a mistake is. 

Code complete.2e.