Merge branch 'master' into master

This commit is contained in:
Alexey Migutsky 2018-04-10 14:20:16 +02:00 committed by GitHub
commit 6212f0db93
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 44 additions and 35 deletions

View File

@ -1,12 +1,12 @@
## The Goal ## The Goal
Our goal is not to have the biggest list of stuff. Our goal is not to have the biggest list of stuff.
Our goal is to have a **comprehensible** list of most valuable things any programmer should know about. Our goal is to have a **comprehensible** list of most valuable things any programmer should know about.
## Contributing ## Contributing
Your contributions to this repo are always welcome! Your contributions to this repo are always welcome!
Bear in mind, that this repo is *highly opinionated* and *curated*. Bear in mind, that this repo is *highly opinionated* and *curated*.
Your opinion on value of any resource may not match the opinion of curator. Your opinion on value of any resource may not match the opinion of curator.
**No PR will be discarded without explanations!** **No PR will be discarded without explanations!**
@ -18,7 +18,7 @@ Your opinion on value of any resource may not match the opinion of curator.
We :heart: simplicity.<br> We :heart: simplicity.<br>
We :heart: essential stuff.<br> We :heart: essential stuff.<br>
This is why we strive to having less, but most valuable resources in the list. We strive to have a smaller list of more valuable resources, quality over quantity.
</p></details> </p></details>
<details><summary>We :heart: widely applicable knowledge/skills. </summary><p> <details><summary>We :heart: widely applicable knowledge/skills. </summary><p>
@ -47,25 +47,25 @@ This is why resources on soft skills are an essential part of that list.
<details><summary>Do not add things you <b>have not evaluated</b> personally!</summary><p> <details><summary>Do not add things you <b>have not evaluated</b> personally!</summary><p>
Use your critical thinking to filter out non-essential stuff. Use your critical thinking to filter out non-essential stuff.
Give honest arguments for why the resource should be included. Give honest arguments for why the resource should be included.
Have you read this book? Have you read this book?
Can you give a short article? Can you give a short article?
</p></details> </p></details>
<details><summary>Use reasoning based on our values.</summary><p> <details><summary>Use reasoning based on our values.</summary><p>
Before adding any resource, answer this questions to yourself: Before adding any resource, answer this questions to yourself:
- Will it make every programmer a better human being? - Will it make every programmer a better human being?
- Will it change the quality of programmer's work? - Will it change the quality of programmer's work?
- Will it change the quality of programmer's life? - Will it change the quality of programmer's life?
- Would you personally recommend this resource to your friend, starting on software development career? - Would you personally recommend this resource to your friend, starting on software development career?
</p></details> </p></details>
<details><summary><b>One item</b> per Pull Request.</summary><p> <details><summary><b>One item</b> per Pull Request.</summary><p>
There may be a discussion related to an item you want to add. There may be a discussion related to an item you want to add.
Adding just a single item per pull request makes it much easier for everyone involved. Adding just a single item per pull request makes it much easier for everyone involved.
</p></details> </p></details>
@ -76,11 +76,11 @@ It is just easier to discuss and decide on a resource within a Pull Request.
<details><summary>Use consistent set of resource type emoji</summary><p> <details><summary>Use consistent set of resource type emoji</summary><p>
🎥 - Video/Talk 🎥 - Video/Talk
📖 - Book 📖 - Book
📄 - Online article 📄 - Online article
📜 - Paper/Document 📜 - Paper/Document
✅ - Checklist ✅ - Checklist
</p></details> </p></details>

View File

@ -28,7 +28,7 @@ But knowing the stuff will help you become better! :muscle:*
### Algorithms ### Algorithms
- [Big O Cheatsheet](http://bigocheatsheet.com/) - [Big O Cheatsheet](http://bigocheatsheet.com/)
- :book: [Grokking Algorithms](https://www.goodreads.com/book/show/22847284-grokking-algorithms-an-illustrated-guide-for-programmers-and-other-curio) - :book: [Grokking Algorithms](https://www.goodreads.com/book/show/22847284-grokking-algorithms-an-illustrated-guide-for-programmers-and-other-curio)
- [Algorithms Visualization](http://www.cs.usfca.edu/~galles/visualization/Algorithms.html) - [Algorithms Visualization](https://www.cs.usfca.edu/~galles/visualization/Algorithms.html)
### Data Structures ### Data Structures
- :movie_camera: [UC Berkeley, Data Structures Course](https://archive.org/details/ucberkeley-webcast-PL-XXv-cvA_iAlnI-BQr9hjqADPBtujFJd) - :movie_camera: [UC Berkeley, Data Structures Course](https://archive.org/details/ucberkeley-webcast-PL-XXv-cvA_iAlnI-BQr9hjqADPBtujFJd)
@ -43,7 +43,7 @@ But knowing the stuff will help you become better! :muscle:*
- :page_facing_up: [Basic Number Theory Every Programmer Should Know...](https://www.codechef.com/wiki/tutorial-number-theory/) - :page_facing_up: [Basic Number Theory Every Programmer Should Know...](https://www.codechef.com/wiki/tutorial-number-theory/)
### Strings ### Strings
- :page_facing_up: [Unicode and Character Sets](http://www.joelonsoftware.com/articles/Unicode.html) - :page_facing_up: [Unicode and Character Sets](https://www.joelonsoftware.com/articles/Unicode.html)
- [Homoglyphs](https://github.com/codebox/homoglyph/) - [Homoglyphs](https://github.com/codebox/homoglyph/)
- [Unicode Common Locale Data Repository](http://cldr.unicode.org/) - [Unicode Common Locale Data Repository](http://cldr.unicode.org/)
- :movie_camera: [ASCII](https://www.youtube.com/watch?v=B1Sf1IhA0j4) - :movie_camera: [ASCII](https://www.youtube.com/watch?v=B1Sf1IhA0j4)
@ -57,15 +57,15 @@ But knowing the stuff will help you become better! :muscle:*
- :page_facing_up: [Some notes about time](https://unix4lyfe.org/time/) - :page_facing_up: [Some notes about time](https://unix4lyfe.org/time/)
### Memory ### Memory
- :page_facing_up: [What every Programmer should know about memory](http://lwn.net/Articles/250967/) - :page_facing_up: [What every Programmer should know about memory](https://lwn.net/Articles/250967/)
### Distributed Systems ### Distributed Systems
- :book: [Designing Data-Intensive Applications](https://www.goodreads.com/book/show/23463279-designing-data-intensive-applications) - :book: [Designing Data-Intensive Applications](https://www.goodreads.com/book/show/23463279-designing-data-intensive-applications)
- :scroll: [Designs, Lessons and Advice from Building Large Distributed Systems](http://www.cs.cornell.edu/projects/ladis2009/talks/dean-keynote-ladis2009.pdf) - :scroll: [Designs, Lessons and Advice from Building Large Distributed Systems](https://www.cs.cornell.edu/projects/ladis2009/talks/dean-keynote-ladis2009.pdf)
- :scroll: [Time, Clocks and the Ordering of Events in a Distributed System](https://www.microsoft.com/en-us/research/publication/time-clocks-ordering-events-distributed-system/?from=http%3A%2F%2Fresearch.microsoft.com%2Fen-us%2Fum%2Fpeople%2Flamport%2Fpubs%2Ftime-clocks.pdf) - :scroll: [Time, Clocks and the Ordering of Events in a Distributed System](https://www.microsoft.com/en-us/research/publication/time-clocks-ordering-events-distributed-system/?from=http%3A%2F%2Fresearch.microsoft.com%2Fen-us%2Fum%2Fpeople%2Flamport%2Fpubs%2Ftime-clocks.pdf)
- :page_facing_up: [There is No Now](http://queue.acm.org/detail.cfm?id=2745385) - :page_facing_up: [There is No Now](https://queue.acm.org/detail.cfm?id=2745385)
- :page_facing_up: [Jepsen: how different databases behave under partition](https://aphyr.com/tags/jepsen) - :page_facing_up: [Jepsen: how different databases behave under partition](https://aphyr.com/tags/jepsen)
- :scroll: [Fallacies of Distributed Computing Explained](http://www.rgoarchitects.com/Files/fallacies.pdf) - :scroll: [Fallacies of Distributed Computing Explained](https://www.rgoarchitects.com/Files/fallacies.pdf)
### RegExp ### RegExp
- [RegexHQ](https://github.com/regexhq) - [RegexHQ](https://github.com/regexhq)
@ -81,17 +81,18 @@ But knowing the stuff will help you become better! :muscle:*
- [Web Application Exploits and Defenses](https://google-gruyere.appspot.com/part1) - [Web Application Exploits and Defenses](https://google-gruyere.appspot.com/part1)
### SEO ### SEO
- :page_facing_up: [What Every Programmer Should Know About SEO](http://katemats.com/what-every-programmer-should-know-about-seo/) - :page_facing_up: [What Every Programmer Should Know About SEO](https://katemats.com/what-every-programmer-should-know-about-seo/)
### Architecture ### Architecture
- :scroll: [A Field Guide to Boxology](http://web.cs.wpi.edu/~cs562/s98/pdf/Boxology.pdf) - :scroll: [A Field Guide to Boxology](https://web.cs.wpi.edu/~cs562/s98/pdf/Boxology.pdf)
- :scroll: [Out of the Tar Pit](https://github.com/papers-we-love/papers-we-love/blob/master/design/out-of-the-tar-pit.pdf?raw=true) - :scroll: [Out of the Tar Pit](https://github.com/papers-we-love/papers-we-love/blob/master/design/out-of-the-tar-pit.pdf?raw=true)
- :scroll: [No Silver Bullet — Essence and Accidents of Software Engineering](http://faculty.salisbury.edu/~xswang/Research/Papers/SERelated/no-silver-bullet.pdf) - :scroll: [No Silver Bullet — Essence and Accidents of Software Engineering](https://faculty.salisbury.edu/~xswang/Research/Papers/SERelated/no-silver-bullet.pdf)
- :movie_camera: [Growing a Language](https://www.youtube.com/watch?v=_ahvzDzKdB0) - :movie_camera: [Growing a Language](https://www.youtube.com/watch?v=_ahvzDzKdB0)
- :movie_camera: [CQRS and Event Sourcing](https://www.youtube.com/watch?v=JHGkaShoyNs) - :movie_camera: [CQRS and Event Sourcing](https://www.youtube.com/watch?v=JHGkaShoyNs)
- :book: [Practical Object Oriented Design in Ruby](http://www.poodr.com/) - :book: [Practical Object Oriented Design in Ruby](https://www.poodr.com/)
- :movie_camera: [Evolutionary Software Architectures](https://www.youtube.com/watch?v=CglSFhwbI3s) - :movie_camera: [Evolutionary Software Architectures](https://www.youtube.com/watch?v=CglSFhwbI3s)
- [System Design: A Primer](https://github.com/donnemartin/system-design-primer) - [System Design: A Primer](https://github.com/donnemartin/system-design-primer)
- :page_facing_up: [How JavaScript works: part-1](https://blog.sessionstack.com/how-does-javascript-actually-work-part-1-b0bacc073cf), [2](https://blog.sessionstack.com/how-javascript-works-inside-the-v8-engine-5-tips-on-how-to-write-optimized-code-ac089e62b12e), [3](https://blog.sessionstack.com/how-javascript-works-memory-management-how-to-handle-4-common-memory-leaks-3f28b94cfbec), [4](https://blog.sessionstack.com/how-javascript-works-event-loop-and-the-rise-of-async-programming-5-ways-to-better-coding-with-2f077c4438b5)
### Practices ### Practices
- :book: [Working Effectively with Legacy Code](https://www.goodreads.com/book/show/44919.Working_Effectively_with_Legacy_Code) - :book: [Working Effectively with Legacy Code](https://www.goodreads.com/book/show/44919.Working_Effectively_with_Legacy_Code)
@ -107,7 +108,7 @@ But knowing the stuff will help you become better! :muscle:*
Learn the basics of a language in a highly condensed way. Learn the basics of a language in a highly condensed way.
- [Hyperpolyglot](http://hyperpolyglot.org/) - [Hyperpolyglot](http://hyperpolyglot.org/)
Compare commonly used features of more or less similar languages side-by-side. Helps you to jump Python<->Ruby, Ocaml<->Haskell, etc. Compare commonly used features of more or less similar languages side-by-side. Helps you to jump Python<->Ruby, Ocaml<->Haskell, etc.
- :page_facing_up: [Pomodoro for Programmers](http://www.metadevelopment.io/pomodoro-for-programmers/) - :page_facing_up: [Pomodoro for Programmers](https://blog.metadevelopment.io/pomodoro-for-programmers/)
### Career ### Career
- :page_facing_up: [10 Things Every Programmer Should Know For Their First Job](http://www.applematters.com/article/10-things-every-programmer-should-know-for-their-first-job/) - :page_facing_up: [10 Things Every Programmer Should Know For Their First Job](http://www.applematters.com/article/10-things-every-programmer-should-know-for-their-first-job/)
@ -123,11 +124,11 @@ But knowing the stuff will help you become better! :muscle:*
- :page_facing_up: [How To Interview As a Developer Candidate](https://medium.freecodecamp.com/how-to-interview-as-a-developer-candidate-b666734f12dd) - :page_facing_up: [How To Interview As a Developer Candidate](https://medium.freecodecamp.com/how-to-interview-as-a-developer-candidate-b666734f12dd)
- :book: [How To Be A STAR Engineer](http://vlsicad.ucsd.edu/Research/Advice/star_engineer.pdf) - :book: [How To Be A STAR Engineer](http://vlsicad.ucsd.edu/Research/Advice/star_engineer.pdf)
- :page_facing_up: [TL;DR; Stock Options](https://tldroptions.io/) - :page_facing_up: [TL;DR; Stock Options](https://tldroptions.io/)
- :page_facing_up: [Equity 101 for Startup Employees](https://blog.esharesinc.com/equity-101-stock-option-basics/) - :page_facing_up: [Equity 101 for Startup Employees](https://blog.carta.com/equity-101-stock-option-basics/)
- :book: [Cracking the Coding Interview: 189 Programming Questions and Solutions](https://www.goodreads.com/book/show/25707092-cracking-the-coding-interview) - :book: [Cracking the Coding Interview: 189 Programming Questions and Solutions](https://www.goodreads.com/book/show/25707092-cracking-the-coding-interview)
- :fire: [Everything you need to know to get the job](https://github.com/kdn251/interviews) - :fire: [Everything you need to know to get the job](https://github.com/kdn251/interviews)
- :book: [Tech Interview Handbook](https://github.com/yangshun/tech-interview-handbook) - :book: [Tech Interview Handbook](https://github.com/yangshun/tech-interview-handbook)
- :page_facing_up: [Teach Yourself Programming in Ten Years](http://norvig.com/21-days.html) - :page_facing_up: [Teach Yourself Programming in Ten Years](https://norvig.com/21-days.html)
- :page_facing_up: [What you should know as a founder of a software company](https://qotoqot.com/blog/founder-skills/) - :page_facing_up: [What you should know as a founder of a software company](https://qotoqot.com/blog/founder-skills/)
@ -135,6 +136,9 @@ But knowing the stuff will help you become better! :muscle:*
- :book: [Don't Make Me Think: A Common Sense Approach to Web Usability](https://www.goodreads.com/book/show/18197267-don-t-make-me-think-revisited) - :book: [Don't Make Me Think: A Common Sense Approach to Web Usability](https://www.goodreads.com/book/show/18197267-don-t-make-me-think-revisited)
- :movie_camera: [Inventing on Principle](https://vimeo.com/36579366) - :movie_camera: [Inventing on Principle](https://vimeo.com/36579366)
### Open Source
- :globe_with_meridians: [An Intro to Git and GitHub for Beginners](https://product.hubspot.com/blog/git-and-github-tutorial-for-beginners)
### Remote Work ### Remote Work
- :globe_with_meridians: [Remote Work List for Developers](https://github.com/georgemandis/remote-working-list) - :globe_with_meridians: [Remote Work List for Developers](https://github.com/georgemandis/remote-working-list)
- :zap: [NomadList](https://nomadlist.com/) - :zap: [NomadList](https://nomadlist.com/)
@ -148,7 +152,7 @@ But knowing the stuff will help you become better! :muscle:*
- :movie_camera: [Making Badass Developers](https://www.youtube.com/watch?v=FKTxC9pl-WM&t=2s) - :movie_camera: [Making Badass Developers](https://www.youtube.com/watch?v=FKTxC9pl-WM&t=2s)
- :page_facing_up: [The Ten Rules of a Zen Programmer](https://www.zenprogrammer.org/en/10-rules-of-a-zen-programmer.html) - :page_facing_up: [The Ten Rules of a Zen Programmer](https://www.zenprogrammer.org/en/10-rules-of-a-zen-programmer.html)
- :page_facing_up: [The mythical 10x programmer](http://antirez.com/news/112) - :page_facing_up: [The mythical 10x programmer](http://antirez.com/news/112)
- :page_facing_up: [The Debugging Mindset](http://queue.acm.org/detail.cfm?id=3068754) - :page_facing_up: [The Debugging Mindset](https://queue.acm.org/detail.cfm?id=3068754)
- :movie_camera: [The Future of Programming](http://worrydream.com/dbx/) - :movie_camera: [The Future of Programming](http://worrydream.com/dbx/)
### Problem Solving ### Problem Solving
@ -176,6 +180,7 @@ But knowing the stuff will help you become better! :muscle:*
- [Without Coding](https://www.producthunt.com/@jurica87/collections/without-coding) - [Without Coding](https://www.producthunt.com/@jurica87/collections/without-coding)
- [Simpleicons](https://simpleicons.org/) - [Simpleicons](https://simpleicons.org/)
- [Learn Anything](https://learn-anything.xyz/) - [Learn Anything](https://learn-anything.xyz/)
- [repl.it](https://repl.it/)
### Licenses ### Licenses
- [Choose An Open Source License](https://choosealicense.com/) - [Choose An Open Source License](https://choosealicense.com/)
@ -183,24 +188,28 @@ But knowing the stuff will help you become better! :muscle:*
### Where To Look For Further Info ### Where To Look For Further Info
- [freeCodeCamp Guide](https://guide.freecodecamp.org/) - [freeCodeCamp Guide](https://guide.freecodecamp.org/)
- [GeeksForGeeks](http://www.geeksforgeeks.org/) - [GeeksForGeeks](https://www.geeksforgeeks.org/)
- [Dev.To](https://dev.to/) - [Dev.To](https://dev.to/)
- [Stack Overflow](https://stackoverflow.com/) - [Stack Overflow](https://stackoverflow.com/)
- [Dzone](https://dzone.com/)
### Coding Practice Sites :zap: ### Coding Practice Sites :zap:
- :link: [CodeForces](http://codeforces.com/) - :link: [CodeForces](http://codeforces.com/)
- :link: [CodeChef](https://www.codechef.com) - :link: [CodeChef](https://www.codechef.com)
- :link: [Coderbyte](https://coderbyte.com/)
- :link: [CodinGame](https://www.codingame.com/) - :link: [CodinGame](https://www.codingame.com/)
- :link: [Cs Academy](https://csacademy.com/) - :link: [Cs Academy](https://csacademy.com/)
- :link: [HackerRank](https://hackerrank.com/) - :link: [HackerRank](https://hackerrank.com/)
- :link: [Spoj](https://spoj.com/) - :link: [Spoj](https://spoj.com/)
- :link: [HackerEarth](https://hackerearth.com/) - :link: [HackerEarth](https://hackerearth.com/)
- :link: [TopCoder](https://www.topcoder.com/) - :link: [TopCoder](https://www.topcoder.com/)
- :link: [Codewars](http://codewars.com/) - :link: [Codewars](https://codewars.com/)
- :link: [Exercism](http://www.exercism.io/) - :link: [Exercism](http://www.exercism.io/)
- :link: [CodeFights](https://codefights.com/) - :link: [CodeFights](https://codefights.com/)
- :link: [Project Euler](https://projecteuler.net/) - :link: [Project Euler](https://projecteuler.net/)
- :link: [LeetCode](https://leetcode.com/) - :link: [LeetCode](https://leetcode.com/)
- :link: [InterviewBit](https://www.interviewbit.com/) - :link: [InterviewBit](https://www.interviewbit.com/)
- :link: [uCoder](ucoder.com.br) - :link: [uCoder](ucoder.com.br)
- :link: [LintCode](https://www.lintcode.com/)
- :link: [CodeCombat](https://codecombat.com/)