Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

added website, uri, for programming practice #160

Closed
wants to merge 1 commit into from
Closed
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
52 changes: 41 additions & 11 deletions README.md
@@ -1,70 +1,81 @@
> *[Join our community](https://metadevelopment.io/)* for professional Software Developers and get more control over your life and career!
> _[Join our community](https://metadevelopment.io/)_ for professional Software Developers and get more control over your life and career!

----
---

# Every Programmer Should Know :thinking:

A collection of (mostly) technical things every software developer should know.

:point_up: *These are resources I can recommend to every programmer regardless of their skill level or tech stack*
:point*up: \_These are resources I can recommend to every programmer regardless of their skill level or tech stack*

Highly opinionated :bomb:. Not backed by science.
Comes in no particular order :recycle:

U like it? :star: it and [share](https://twitter.com/mr_mig_by/status/900735231552098306) with a friendly developer!
U don't like it? [Watch the doggo](https://twitter.com/RespectfulMemes/status/900147758845308930) :dog:

*P.S. You [don't need to know](https://xkcd.com/1050/) all of that by heart to be a programmer.
But knowing the stuff will help you become better! :muscle:*
_P.S. You [don't need to know](https://xkcd.com/1050/) all of that by heart to be a programmer.
But knowing the stuff will help you become better! :muscle:_

*P.P.S. [Contributions](CONTRIBUTING.md) are welcome!*
_P.P.S. [Contributions](CONTRIBUTING.md) are welcome!_

----
---

### Introduction

- :movie_camera: [Map of Computer Science](https://www.youtube.com/watch?v=SzJ46YA_RaA)
- :movie_camera: [40 Key Computer Science Concepts Explained In Layman’s Terms](http://carlcheo.com/compsci)

### Falsehoods

- [Awesome Falsehoods](https://github.com/kdeldycke/awesome-falsehood)
💊 Curated list of falsehoods programmers believe in.
Check for things you do not know about Strings, Addresses, Names, Numbers, Emails, Timezones and Dates and more.

### Algorithms

- [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)
- [Algorithms Visualization](https://www.cs.usfca.edu/~galles/visualization/Algorithms.html)

### Data Structures

- :movie_camera: [UC Berkeley, Data Structures Course](https://sp19.datastructur.es/)
- [Foundations of Data Structures - EDX](https://www.edx.org/course/foundations-data-structures-iitbombayx-cs213-1x-0#!)
- [Data Structures - Coursera](https://www.coursera.org/learn/data-structures)
- [Mathematics for Computer Science - Eric Lehman](https://courses.csail.mit.edu/6.042/spring17/mcs.pdf)

### Numbers

- :book: [How to Count](https://www.goodreads.com/book/show/12093869-how-to-count)
- :page_facing_up: [Floating Point Guide](http://floating-point-gui.de/)
- :page_facing_up: [What Every Computer Scientist Should Know About Floating-Point Arithmetic](https://docs.oracle.com/cd/E19957-01/806-3568/ncg_goldberg.html#680)
- :page_facing_up: [Basic Number Theory Every Programmer Should Know...](https://www.codechef.com/wiki/tutorial-number-theory/)

### Strings

- :page_facing_up: [Unicode and Character Sets](https://www.joelonsoftware.com/articles/Unicode.html)
- [Homoglyphs](https://github.com/codebox/homoglyph/)
- [Unicode Common Locale Data Repository](http://cldr.unicode.org/)
- :movie_camera: [ASCII](https://www.youtube.com/watch?v=B1Sf1IhA0j4)
- :movie_camera: [UTF-8](https://www.youtube.com/watch?v=vLBtrd9Ar28)

### Latency

- [Interactive Latency Infographics](https://people.eecs.berkeley.edu/~rcs/research/interactive_latency.html)
- :page_facing_up: [Latency Numbers Every Programmer Should Know](https://gist.github.com/jboner/2841832)

### Time

- :page_facing_up: [Some notes about time](https://unix4lyfe.org/time/)
- :movie_camera: [The Problem with Timezones](https://www.youtube.com/watch?v=-5wpm-gesOY)

### Memory

- :page_facing_up: [What every Programmer should know about memory](https://lwn.net/Articles/250967/)

### Distributed Systems

- :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](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)
Expand All @@ -73,10 +84,12 @@ But knowing the stuff will help you become better! :muscle:*
- :scroll: [Fallacies of Distributed Computing Explained](https://www.rgoarchitects.com/Files/fallacies.pdf)

### RegExp

- [RegexHQ](https://github.com/regexhq)
- [Learn regex the easy way](https://github.com/ziishaned/learn-regex)

### Security

- :book: [Security Programming](https://www.dwheeler.com/secure-programs/)
- :page_facing_up: [Rolling Your Own Crypto](http://loup-vaillant.fr/articles/rolling-your-own-crypto)
- :page_facing_up: [Cryptographic Right Answers](https://gist.github.com/tqbf/be58d2d39690c3b366ad)
Expand All @@ -87,14 +100,16 @@ But knowing the stuff will help you become better! :muscle:*
- :page_facing_up: [Hashing, Encryption and Encoding](https://www.integralist.co.uk/posts/hashing-and-encryption/)

### UX/Usability

- :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)


### SEO

- :page_facing_up: [What Every Programmer Should Know About SEO](https://katemats.com/what-every-programmer-should-know-about-seo/)

### Architecture

- :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: [No Silver Bullet — Essence and Accidents of Software Engineering](https://faculty.salisbury.edu/~xswang/Research/Papers/SERelated/no-silver-bullet.pdf)
Expand All @@ -107,6 +122,7 @@ But knowing the stuff will help you become better! :muscle:*
- :movie_camera: [Entity-Component-System Architecture with Unity by example](https://www.youtube.com/watch?v=lNTaC-JWmdI&t=166s&list=PLZlJZzHmx31XvgT96DfbXQ4IMb1ryztbp&index=33)

### Engineering Philosophy

- :movie_camera: [Category Theory in Life](https://www.youtube.com/watch?v=ho7oagHeqNc)
- :movie_camera: [Simple Made Easy](https://www.infoq.com/presentations/Simple-Made-Easy)
- :page_facing_up: [Speed In Software Development](https://www.targetprocess.com/articles/speed-in-software-development/)
Expand All @@ -120,8 +136,8 @@ But knowing the stuff will help you become better! :muscle:*
- :page_facing_up: [The Good Software Development Manifesto](https://www.infoworld.com/article/3214481/application-development/the-good-software-development-manifesto.html)
- :movie_camera: [All the Little Things](https://www.youtube.com/watch?v=8bZh5LMaSmE)


### Practices

- :book: [Working Effectively with Legacy Code](https://www.goodreads.com/book/show/44919.Working_Effectively_with_Legacy_Code)
- :book: [Clean Code: A Handbook of Agile Software Craftsmanship](https://www.goodreads.com/book/show/3735293-clean-code)
- :book: [Test Driven Development: By Example](https://www.goodreads.com/book/show/387190.Test_Driven_Development)
Expand All @@ -139,8 +155,9 @@ But knowing the stuff will help you become better! :muscle:*
- :book: [Site Reliability Engineering](https://landing.google.com/sre/sre-book/toc/index.html)

### Career

- :moneybag: [Levels FYI](https://www.levels.fyi)
Salary stats for various tech companies. Better than Glassdoor.
Salary stats for various tech companies. Better than Glassdoor.
- :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: [How Much Do Software Engineers Really Make in Each City?](https://www.codementor.io/blog/best-cities-software-engineer-earnings-271vpf599k)
- :page_facing_up: [Software Engineers Tenure in San Francisco](https://hackerlife.co/blog/san-francisco-large-corporation-employee-tenure)
Expand All @@ -163,42 +180,51 @@ But knowing the stuff will help you become better! :muscle:*
- :page_facing_up: [What you should know as a founder of a software company](https://qotoqot.com/blog/founder-skills/)
- :movie_camera: [Code Interview Prep & Programming Questions | Pramp](https://www.pramp.com/)

### Fine-tune Your Resume
### Fine-tune Your Resume

- :hammer: [CV Compiler](https://cvcompiler.com/)

### Open Source

- :globe_with_meridians: [Learn how to use Git and GitHub](https://www.deployhq.com/git)

### Remote Work

- :globe_with_meridians: [Remotive.io: Startups hiring remotely](https://docs.google.com/spreadsheets/d/1TLJSlNxCbwRNxy14Toe1PYwbCTY7h0CNHeer9J0VRzE/htmlview?sle=true#gid=1279011369)
- :globe_with_meridians: [Remote Work List for Developers](https://github.com/georgemandis/remote-working-list)
- :zap: [NomadList](https://nomadlist.com/)
- :book: [The Ultimate Guide to Remote Work](https://zapier.com/learn/remote-work/)
- :house: [Awesome Remote Job](https://github.com/lukasz-madon/awesome-remote-job)

### Problem Solving

- :book: [The Art and Craft of Problem Solving](https://www.goodreads.com/book/show/593458.The_Art_and_Craft_of_Problem_Solving)
- :book: [How to Solve It: A New Aspect of Mathematical Method](https://www.goodreads.com/book/show/192221.How_to_Solve_It)

### Soft Skills

- :book: [Difficult Conversations](https://www.goodreads.com/book/show/774088.Difficult_Conversations)
- :book: [Crucial Conversations](https://www.goodreads.com/book/show/15014.Crucial_Conversations)
- :book: [How to Win Friends and Influence People](https://www.goodreads.com/book/show/4865.How_to_Win_Friends_and_Influence_People)

### Mental Health

- [Awesome Mental Health](https://github.com/dreamingechoes/awesome-mental-health)
A curated list of awesome articles, websites and resources about mental health in the software industry.

### Papers on Programming

- :heart: [Papers We Love](https://github.com/papers-we-love/papers-we-love)
- :newspaper: [The Morning Paper](https://blog.acolyer.org/)
- 📜 [What Every Programmer Should Know About Memory](http://futuretech.blinkenlights.nl/misc/cpumemory.pdf)
- 📜 [Go To Statement Considered Harmful](https://homepages.cwi.nl/~storm/teaching/reader/Dijkstra68.pdf)

### Free Books on Programming

- :books: [Free Programming Books](https://github.com/EbookFoundation/free-programming-books)

### Services :zap:

- [Free For Dev](https://github.com/ripienaar/free-for-dev/blob/master/README.md)
- [Public APIs](https://github.com/abhishekbanthia/Public-APIs)
- [The Noun Project](https://thenounproject.com/)
Expand All @@ -208,18 +234,21 @@ But knowing the stuff will help you become better! :muscle:*
- [repl.it](https://repl.it/)

### Licenses

- [Choose An Open Source License](https://choosealicense.com/)
- [Well-explained Software licenses in TLDR version](https://tldrlegal.com/)
- [How open source licenses work and how to add them to your projects](https://medium.freecodecamp.org/how-open-source-licenses-work-and-how-to-add-them-to-your-projects-34310c3cf94)

### Where To Look For Further Info

- [freeCodeCamp Guide](https://guide.freecodecamp.org/)
- [GeeksForGeeks](https://www.geeksforgeeks.org/)
- [Dev.To](https://dev.to/)
- [Stack Overflow](https://stackoverflow.com/)
- [Dzone](https://dzone.com/)

### Coding Practice Sites :zap:

- :link: [CodeForces](http://codeforces.com/)
- :link: [CodeChef](https://www.codechef.com)
- :link: [Coderbyte](https://coderbyte.com/)
Expand All @@ -242,3 +271,4 @@ But knowing the stuff will help you become better! :muscle:*
- :link: [InterviewCake](https://www.interviewcake.com/)
- :link: [At Coder](https://atcoder.jp/)
- :link: [Codility](https://www.codility.com/)
- :link: [Uri Oline Judge](https://www.urionlinejudge.com.br)