A collection of (mostly) technical things every software developer should know.
โ๏ธThese are resources I can recommend to every programmer regardless of their skill level or tech stack
Highly opinionated๐ฃ. Not backed by science.
Comes in no particular orderโป๏ธ
U like it?โญ๏ธit andsharewith a friendly developer! U donโt like it?Watch the doggo๐ถ
P.S. Youdonโt need to knowall of that by heart to be a programmer.
But knowing the stuff will help you become better!๐ช
Algorithms
Numbers
- ๐Floating Point Guide
- ๐Basic Number Theory Every Programmer Should Knowโฆ
- ๐Falsehoods Programmers Believe About Phone Numbers
Strings
- Big List of Naughty Strings
- ๐Unicode and Character Sets
- Homoglyphs
- Unicode Common Locale Data Repository
- Falsehoods Programmers Believe About Names
Latency
Time
- ๐Falsehoods programmers believe about time
- ๐More falsehoods programmers believe about time; โwisdom of the crowdโ edition
- ๐Some notes about time
- ๐Falsehoods programmers believe about time and time zones
Memory
Distributed Systems
- ๐Designing Data-Intensive Applications
- ๐Designs, Lessons and Advice from Building Large Distributed Systems
- ๐Time, Clocks and the Ordering of Events in a Distributed System
- ๐There is No Now
- ๐Jepsen: how different databases behave under partition
- ๐Fallacies of Distributed Computing Explained
RegExp
Security
- ๐Rolling Your Own Crypto
- ๐Foundations of Security: What Every Programmer Needs to Know
- OWASP Top 10
SEO
Architecture
- ๐A Field Guide to Boxology
- ๐Out of the Tar Pit
- ๐No Silver Bullet โ Essence and Accidents of Software Engineering
- ๐ฅGrowing a Language
- ๐ฅCQRS and Event Sourcing
- ๐Practical Object Oriented Design in Ruby
- ๐ฅEvolutionary Software Architectures
Practices
- ๐Working Effectively with Legacy Code
- ๐Test Driven Development: By Example
- โ Going To Production Checklist
- ๐Release It!
- ๐Professor Frisbyโs Mostly Adequate Guide to Functional Programming
- ๐SICP: Structure and Interpretation of Computer Programs
Career
- ๐10 Things Every Programmer Should Know For Their First Job
- ๐How Much Do Software Engineers Really Make in Each City?
- ๐Software Engineers Tenure in San Francisco
- Software Engineering 101
- ๐The Passionate Programmer
- ๐Soft Skills: The software developerโs life manual
- ๐Programming Beyond Practices: Be More Than Just a Code Monkey
- A list of European Investors
- ๐Ten Rules for Negotiating a Job Offer
- ๐How To Interview As a Developer Candidate
- ๐How To Be A STAR Engineer
- ๐TL;DR; Stock Options
- ๐Equity 101 for Startup Employees
- ๐Cracking the Coding Interview: 150 Programming Questions and Solutions
- ๐ฅEverything you need to know to get the job
Engineering Philosophy
- ๐ฅSimple Made Easy
- ๐Speed In Software Development
- ๐ฅThe Myth of the Genius Programmer
- ๐ฅMaking Badass Developers
- ๐The Ten Rules of a Zen Programmer
Papers on Programming
- โค๏ธPapers We Love
- ๐ฐThe Morning Paper
Free Books on Programming
Servicesโก๏ธ
Source: https://github.com/mr-mig/every-programmer-should-know