Skip to content
View noydb's full-sized avatar

Block or report noydb

Block user

Prevent this user from interacting with your repositories and sending you notifications. Learn more about blocking users.

You must be logged in to block users.

Maximum 250 characters. Please don't include any personal information such as legal names or email addresses. Markdown supported. This note will be visible to only you.
Report abuse

Contact GitHub support about this user’s behavior. Learn more about reporting abuse.

Report abuse
noydb/README.md
  1. STAGNATION IS THE MIGHTIEST FOE
  2. DO IT YOURSELF; WRITE CODE FROM SCRATCH WHERE POSSIBLE
  3. THE MOST CRITICAL TOOL IS A MIND WELL EDUCATED IN DESIGN PRINCIPLES
  4. THE ABILITY TO DISCOVER IS CARDINAL
  5. ALWAYS BE THE WORST GUY IN EVERY BAND THAT YOU’RE IN
  6. AVOID TEMPORARY FIXES BECOMING PERMANENT
  7. OPTIMIZATION WITHOUT FIRST MEASURING IS ALMOST ALWAYS PREMATURE
  8. WHAT IS RIGHT IS NOT ALWAYS POPULAR AND WHAT IS POPULAR IS NOT ALWAYS RIGHT
  9. CONSISTENCY IS A REFUGE FOR THE PEOPLE WHO MUST READ MY CODE LATER ON
  10. LEAVE THE CAMP SITE BETTER THAN YOU FOUND IT
  11. LIMIT USE & CUSTOMIZATION OF THIRD-PARTY TOOLS/FRAMEWORKS/LIBRARIES (TO AVOID SUPPORT AND SECURITY ISSUES).

SOFTWARE DESIGN PRINCIPLES

  1. Encapsulation
  2. Separation of Concerns
  3. Single Responsibility
  4. Modularity. High Cohesion. Low Coupling
  5. Interface Segregation
  6. Name as short as possible but as long as necessary
  7. YAGNI/KISS/Gall's Law
  8. The more tests resemble the way the software is used, the more confidence they can provide
  9. Waterbed Theory
  10. Principle of Least Astonishment
  11. DOCUMENTATION DOCUMENTATION DOCUMENTATION

SECURITY

  1. Principle of Least Privilege
  2. Secure Defaults
  3. Defense in Depth
  4. Fail-Secure
  5. Input Validation

UI/UX DESIGN PRINCIPLES

  1. Empathy Mapping (think, feel, see, hear, say, and do)
  2. Walk A Mile
  3. Minimalism; any visible element must have a purpose
  4. Clear, Informative Communication
  5. Visual Hierarchy
  6. Accessibility
  7. Emotion
  8. Flexibility (Customisability) & Efficiency (Shortcuts)
  9. Quick & Inexpensive Prototyping For Testing
  10. Constant User Testing & feedback

“I'm not a great programmer; I'm just a good programmer with great habits.”

Popular repositories Loading

  1. noydb noydb Public

    1