diff --git a/README.md b/README.md
index 39bdc67..412a85a 100644
--- a/README.md
+++ b/README.md
@@ -5,6 +5,8 @@
> as a Software Development Engineer at Amazon](https://startupnextdoor.com/ive-been-acquired-by-amazon/?src=ciu)!
> You probably won't have to study as much as I did. Anyway, everything you need is here.
>
+> I studied about 8-12 hours a day, for several months. This is my story: [Why I studied full-time for 8 months for a Google interview](https://medium.freecodecamp.org/why-i-studied-full-time-for-8-months-for-a-google-interview-cc662ce9bb13)
+>
> The items listed here will prepare you well for an interview at just about any software company,
> including the giants: Amazon, Facebook, Google or Microsoft.
>
@@ -47,7 +49,7 @@
This is my multi-month study plan for going from web developer (self-taught, no CS degree) to software engineer for a large company.
-
+
This is meant for **new software engineers** or those switching from
software/web development to software engineering (where computer science knowledge is required). If you have
@@ -111,10 +113,8 @@ If you want to be a reliability engineer or operations engineer, study more from
- [NP, NP-Complete and Approximation Algorithms](#np-np-complete-and-approximation-algorithms)
- [Caches](#caches)
- [Processes and Threads](#processes-and-threads)
- - [Papers](#papers)
- [Testing](#testing)
- [Scheduling](#scheduling)
- - [Implement system routines](#implement-system-routines)
- [String searching & manipulations](#string-searching--manipulations)
- [Tries](#tries)
- [Floating Point Numbers](#floating-point-numbers)
@@ -178,6 +178,7 @@ If you want to be a reliability engineer or operations engineer, study more from
- [Additional Detail on Some Subjects](#additional-detail-on-some-subjects)
- [Video Series](#video-series)
- [Computer Science Courses](#computer-science-courses)
+- [Papers](#papers)
@@ -233,6 +234,7 @@ I'm using Github's special markdown flavor, including tasks lists to check progr
- [The myth of the Genius Programmer](https://www.youtube.com/watch?v=0SARbwvhupQ)
- [It's Dangerous to Go Alone: Battling the Invisible Monsters in Tech](https://www.youtube.com/watch?v=1i8ylq4j_EY)
- [Believe you can change](http://www.aaronsw.com/weblog/dweck)
+- [Think you're not smart enough to work at Google? Well, think again](https://www.youtube.com/watch?v=uPOJ1PR50ag)
## About Video Resources
@@ -263,6 +265,10 @@ Sometimes the classes are not in session so you have to wait a couple of months,
- Learn how to make yourself ready for software engineer interviews from a former Google interviewer.
- [ ] [Python for Data Structures, Algorithms, and Interviews! (paid course)](https://www.udemy.com/python-for-data-structures-algorithms-and-interviews/):
- A Python centric interview prep course which covers data structures, algorithms, mock interviews and much more.
+ - [ ] [Intro to Data Structures and Algorithms using Python! (Udacity free course)](https://www.udacity.com/course/data-structures-and-algorithms-in-python--ud513):
+ - A free Python centric data structures and algorithms course.
+ - [ ] [Data Structures and Algorithms Nanodegree! (Udacity paid Nanodegree)](https://www.udacity.com/course/data-structures-and-algorithms-nanodegree--nd256):
+ - Get hands-on practice with over 100 data structures and algorithm exercises and guidance from a dedicated mentor to help prepare you for interviews and on-the-job scenarios.
@@ -295,7 +301,7 @@ This is a shorter list than what I used. This is abbreviated to save you time.
### Interview Prep
-- [ ] [Programming Interviews Exposed: Secrets to Landing Your Next Job, 2nd Edition](http://www.wiley.com/WileyCDA/WileyTitle/productCd-047012167X.html)
+- [ ] [Programming Interviews Exposed: Coding Your Way Through the Interview, 4nd Edition](https://www.amazon.com/Programming-Interviews-Exposed-Through-Interview/dp/111941847X/)
- answers in C++ and Java
- this is a good warm-up for Cracking the Coding Interview
- not too difficult, most problems may be easier than what you'll see in an interview (from what I've read)
@@ -305,6 +311,8 @@ This is a shorter list than what I used. This is abbreviated to save you time.
If you have tons of extra time:
+Choose one:
+
- [ ] [Elements of Programming Interviews (C++ version)](https://www.amazon.com/Elements-Programming-Interviews-Insiders-Guide/dp/1479274836)
- [ ] Elements of Programming Interviews (Java version)
- [book](https://www.amazon.com/Elements-Programming-Interviews-Java-Insiders/dp/1517435803/)
@@ -333,17 +341,12 @@ This is a shorter list than what I used. This is abbreviated to save you time.
-
-If you have more time (I want this book):
-
-- [ ] [Computer Architecture, Sixth Edition: A Quantitative Approach](https://www.amazon.com/dp/0128119055)
- - For a richer, more up-to-date (2017), but longer treatment
-
-
### Language Specific
-**You need to choose a language for the interview (see above).** Here are my recommendations by language. I don't have resources for all languages. I welcome additions.
+**You need to choose a language for the interview (see above).**
+
+Here are my recommendations by language. I don't have resources for all languages. I welcome additions.
If you read though one of these, you should have all the data structures and algorithms knowledge you'll need to start doing coding problems.
**You can skip all the video lectures in this project**, unless you'd like a review.
@@ -396,48 +399,6 @@ OR:
-### Optional Books
-
-**Some people recommend these, but I think it's going overboard, unless you have many years of software engineering experience and expect a much harder interview:**
-
-
-Optional Books
-
-- [ ] [Algorithm Design Manual](http://www.amazon.com/Algorithm-Design-Manual-Steven-Skiena/dp/1849967202) (Skiena)
- - As a review and problem recognition
- - The algorithm catalog portion is well beyond the scope of difficulty you'll get in an interview.
- - This book has 2 parts:
- - class textbook on data structures and algorithms
- - pros:
- - is a good review as any algorithms textbook would be
- - nice stories from his experiences solving problems in industry and academia
- - code examples in C
- - cons:
- - can be as dense or impenetrable as CLRS, and in some cases, CLRS may be a better alternative for some subjects
- - chapters 7, 8, 9 can be painful to try to follow, as some items are not explained well or require more brain than I have
- - don't get me wrong: I like Skiena, his teaching style, and mannerisms, but I may not be Stony Brook material.
- - algorithm catalog:
- - this is the real reason you buy this book.
- - about to get to this part. Will update here once I've made my way through it.
- - Can rent it on kindle
- - Answers:
- - [Solutions](http://www.algorithm.cs.sunysb.edu/algowiki/index.php/The_Algorithms_Design_Manual_(Second_Edition))
- - [Solutions](http://blog.panictank.net/category/algorithmndesignmanualsolutions/page/2/)
- - [Errata](http://www3.cs.stonybrook.edu/~skiena/algorist/book/errata)
-
-- [ ] [Introduction to Algorithms](https://www.amazon.com/Introduction-Algorithms-3rd-MIT-Press/dp/0262033844)
- - **Important:** Reading this book will only have limited value. This book is a great review of algorithms and data structures, but won't teach you how to write good code. You have to be able to code a decent solution efficiently.
- - aka CLR, sometimes CLRS, because Stein was late to the game
-
-- [ ] [Programming Pearls](http://www.amazon.com/Programming-Pearls-2nd-Jon-Bentley/dp/0201657880)
- - The first couple of chapters present clever solutions to programming problems (some very old using data tape) but
- that is just an intro. This a guidebook on program design and architecture, much like Code Complete, but much shorter.
-
-- ~~"Algorithms and Programming: Problems and Solutions" by Shen~~
- - A fine book, but after working through problems on several pages I got frustrated with the Pascal, do while loops, 1-indexed arrays, and unclear post-condition satisfaction results.
- - Would rather spend time on coding problems from another book or online coding problems.
-
-
## Before you Get Started
@@ -512,7 +473,7 @@ You don't need all these. You need only [one language for the interview](#pick-o
Why code in all of these?
- Practice, practice, practice, until I'm sick of it, and can do it with no problem (some have many edge cases and bookkeeping details to remember)
-- Work within the raw constraints (allocating/freeing memory without help of garbage collection (except Python))
+- Work within the raw constraints (allocating/freeing memory without help of garbage collection (except Python or Java))
- Make use of built-in types so I have experience using the built-in tools for real-world use (not going to write my own linked list implementation in production)
I may not have time to do all of these for every subject, but I'll try.
@@ -539,7 +500,7 @@ Write code on a whiteboard or paper, not a computer. Test with some sample input
- [answers to questions](https://github.com/lekkas/c-algorithms)
- [ ] **How computers process a program:**
- - [ ] [How CPU executes a program](https://www.youtube.com/watch?v=XM4lGflQFvA)
+ - [ ] [How CPU executes a program (video)](https://www.youtube.com/watch?v=XM4lGflQFvA)
- [ ] [How computers calculate - ALU (video)](https://youtu.be/1I5ZMmrOfnA)
- [ ] [Registers and RAM (video)](https://youtu.be/fpnE6UAfbtU)
- [ ] [The Central Processing Unit (CPU) (video)](https://youtu.be/FZGugFqdr60)
@@ -552,7 +513,9 @@ Write code on a whiteboard or paper, not a computer. Test with some sample input
Algorithmic complexity / Big-O / Asymptotic analysis
-- nothing to implement
+- Nothing to implement
+- There are a lot of videos here. Just watch enough until you understand it. You can always come back and review.
+- If some of the lectures are too mathy, you can jump down to the bottom and watch the discrete mathematics videos to get the background knowledge.
- [ ] [Harvard CS50 - Asymptotic Notation (video)](https://www.youtube.com/watch?v=iOq5kSKqeR4)
- [ ] [Big O Notations (general quick tutorial) (video)](https://www.youtube.com/watch?v=V6mKVRU1evU)
- [ ] [Big O Notation (and Omega and Theta) - best mathematical explanation (video)](https://www.youtube.com/watch?v=ei-A_wy5Yxw&index=2&list=PL1BaGV1cIH4UhkL8a9bJGG356covJ76qN)
@@ -560,21 +523,18 @@ Write code on a whiteboard or paper, not a computer. Test with some sample input
- [video](https://www.youtube.com/watch?v=gSyDMtdPNpU&index=2&list=PLOtl7M3yp-DV69F32zdK7YJcNXpTunF2b)
- [slides](http://www3.cs.stonybrook.edu/~algorith/video-lectures/2007/lecture2.pdf)
- [ ] [A Gentle Introduction to Algorithm Complexity Analysis](http://discrete.gr/complexity/)
-- [ ] [Orders of Growth (video)](https://class.coursera.org/algorithmicthink1-004/lecture/59)
-- [ ] [Asymptotics (video)](https://class.coursera.org/algorithmicthink1-004/lecture/61)
+- [ ] [Orders of Growth (video)](https://www.coursera.org/lecture/algorithmic-thinking-1/orders-of-growth-6PKkX)
+- [ ] [Asymptotics (video)](https://www.coursera.org/lecture/algorithmic-thinking-1/asymptotics-bXAtM)
- [ ] [UC Berkeley Big O (video)](https://archive.org/details/ucberkeley_webcast_VIS4YDpuP98)
- [ ] [UC Berkeley Big Omega (video)](https://archive.org/details/ucberkeley_webcast_ca3e7UVmeUc)
- [ ] [Amortized Analysis (video)](https://www.youtube.com/watch?v=B3SpQZaAZP4&index=10&list=PL1BaGV1cIH4UhkL8a9bJGG356covJ76qN)
-- [ ] [Illustrating "Big O" (video)](https://class.coursera.org/algorithmicthink1-004/lecture/63)
+- [ ] [Illustrating "Big O" (video)](https://www.coursera.org/lecture/algorithmic-thinking-1/illustrating-big-o-YVqzv)
- [ ] TopCoder (includes recurrence relations and master theorem):
- [Computational Complexity: Section 1](https://www.topcoder.com/community/competitive-programming/tutorials/computational-complexity-section-1/)
- [Computational Complexity: Section 2](https://www.topcoder.com/community/competitive-programming/tutorials/computational-complexity-section-2/)
- [ ] [Cheat sheet](http://bigocheatsheet.com/)
- If some of the lectures are too mathy, you can jump down to the bottom and
- watch the discrete mathematics videos to get the background knowledge.
-
## Data Structures
@@ -762,7 +722,7 @@ Write code on a whiteboard or paper, not a computer. Test with some sample input
- basic tree construction
- traversal
- manipulation algorithms
- - [ ] [BFS(breadth-first search) and DFS(depth-first search)](https://www.youtube.com/watch?v=uWL6FJhq5fM)
+ - [ ] [BFS(breadth-first search) and DFS(depth-first search) (video)](https://www.youtube.com/watch?v=uWL6FJhq5fM)
- BFS notes:
- level order (BFS, using queue)
- time complexity: O(n)
@@ -933,11 +893,11 @@ Graphs can be used to represent many problems in computer science, so this secti
- Familiarize yourself with each representation and its pros & cons
- BFS and DFS - know their computational complexity, their tradeoffs, and how to implement them in real code
- When asked a question, look for a graph-based solution first, then move on if none.
-
+
- [ ] MIT(videos):
- [ ] [Breadth-First Search](https://www.youtube.com/watch?v=s-CYnVz-uh4&list=PLUl4u3cNGP61Oq3tWYp6V_F-5jb5L2iHb&index=13)
- - [ ] [Depth-First Search]((https://www.youtube.com/watch?v=AfSk24UTFS8&list=PLUl4u3cNGP61Oq3tWYp6V_F-5jb5L2iHb&index=14)
-
+ - [ ] [Depth-First Search](https://www.youtube.com/watch?v=AfSk24UTFS8&list=PLUl4u3cNGP61Oq3tWYp6V_F-5jb5L2iHb&index=14)
+
- [ ] Skiena Lectures - great intro:
- [ ] [CSE373 2012 - Lecture 11 - Graph Data Structures (video)](https://www.youtube.com/watch?v=OiXxhDrFruw&list=PLOtl7M3yp-DV69F32zdK7YJcNXpTunF2b&index=11)
- [ ] [CSE373 2012 - Lecture 12 - Breadth-First Search (video)](https://www.youtube.com/watch?v=g5vF8jscteo&list=PLOtl7M3yp-DV69F32zdK7YJcNXpTunF2b&index=12)
@@ -980,8 +940,6 @@ Graphs can be used to represent many problems in computer science, so this secti
- [ ] list strongly connected components
- [ ] check for bipartite graph
-You'll get more graph practice in Skiena's book (see Books section below) and the interview books
-
## Even More Knowledge
@@ -1001,6 +959,7 @@ You'll get more graph practice in Skiena's book (see Books section below) and th
- [ ] [Tail Recursion (video)](https://www.youtube.com/watch?v=L1jjXGfxozc)
- ### Dynamic Programming
+ - You probably won't see any dynamic programming problems in your interview, but it's worth being able to recognize a problem as being a candidate for dynamic programming.
- This subject can be pretty difficult, as each DP soluble problem must be defined as a recursion relation, and coming up with it can be tricky.
- I suggest looking at many examples of DP problems until you have a solid understanding of the pattern involved.
- [ ] Videos:
@@ -1029,7 +988,7 @@ You'll get more graph practice in Skiena's book (see Books section below) and th
- [ ] [Optional: UML 2.0 Series (video)](https://www.youtube.com/watch?v=OkC7HKtiZC0&list=PLGLfVvz_LVvQ5G-LdJ8RLqe-ndo7QITYc)
- [ ] Object-Oriented Software Engineering: Software Dev Using UML and Java (21 videos):
- Can skip this if you have a great grasp of OO and OO design practices.
- - [OOSE: Software Dev Using UML and Java](https://www.youtube.com/playlist?list=PLJ9pm_Rc9HesnkwKlal_buSIHA-jTZMpO)
+ - [OOSE: Software Dev Using UML and Java (video)](https://www.youtube.com/playlist?list=PLJ9pm_Rc9HesnkwKlal_buSIHA-jTZMpO)
- [ ] SOLID OOP Principles:
- [ ] [Bob Martin SOLID Principles of Object Oriented and Agile Design (video)](https://www.youtube.com/watch?v=TMuno5RZNeE)
- [ ] [SOLID Principles (video)](https://www.youtube.com/playlist?list=PL4CE9F710017EA77A)
@@ -1153,38 +1112,6 @@ You'll get more graph practice in Skiena's book (see Books section below) and th
- [ ] [Keynote David Beazley - Topics of Interest (Python Asyncio)](https://www.youtube.com/watch?v=ZzfHjytDceU)
- [ ] [Mutex in Python](https://www.youtube.com/watch?v=0zaPs8OtyKY)
-- ### Papers
- - Reading all from end to end with full comprehension will likely take more time than you have. I recommend being selective on papers and their sections.
- - [Love classic papers?](https://www.cs.cmu.edu/~crary/819-f09/)
- - [ ] [1978: Communicating Sequential Processes](http://spinroot.com/courses/summer/Papers/hoare_1978.pdf)
- - [implemented in Go](https://godoc.org/github.com/thomas11/csp)
- - [ ] [2003: The Google File System](http://static.googleusercontent.com/media/research.google.com/en//archive/gfs-sosp2003.pdf)
- - replaced by Colossus in 2012
- - [ ] [2004: MapReduce: Simplified Data Processing on Large Clusters]( http://static.googleusercontent.com/media/research.google.com/en//archive/mapreduce-osdi04.pdf)
- - mostly replaced by Cloud Dataflow?
- - [ ] [2006: Bigtable: A Distributed Storage System for Structured Data](https://static.googleusercontent.com/media/research.google.com/en//archive/bigtable-osdi06.pdf)
- - [An Inside Look at Google BigQuery](https://cloud.google.com/files/BigQueryTechnicalWP.pdf)
- - [ ] [2006: The Chubby Lock Service for Loosely-Coupled Distributed Systems](https://research.google.com/archive/chubby-osdi06.pdf)
- - [ ] [2007: Dynamo: Amazon’s Highly Available Key-value Store](http://s3.amazonaws.com/AllThingsDistributed/sosp/amazon-dynamo-sosp2007.pdf)
- - The Dynamo paper kicked off the NoSQL revolution
- - [ ] [2007: What Every Programmer Should Know About Memory (very long, and the author encourages skipping of some sections)](https://www.akkadia.org/drepper/cpumemory.pdf)
- - [ ] [2010: Dapper, a Large-Scale Distributed Systems Tracing Infrastructure](https://research.google.com/pubs/archive/36356.pdf)
- - [ ] [2010: Dremel: Interactive Analysis of Web-Scale Datasets](https://static.googleusercontent.com/media/research.google.com/en//pubs/archive/36632.pdf)
- - [ ] [2012: Google's Colossus](https://www.wired.com/2012/07/google-colossus/)
- - paper not available
- - [ ] 2012: AddressSanitizer: A Fast Address Sanity Checker:
- - [paper](http://static.googleusercontent.com/media/research.google.com/en//pubs/archive/37752.pdf)
- - [video](https://www.usenix.org/conference/atc12/technical-sessions/presentation/serebryany)
- - [ ] 2013: Spanner: Google’s Globally-Distributed Database:
- - [paper](http://static.googleusercontent.com/media/research.google.com/en//archive/spanner-osdi2012.pdf)
- - [video](https://www.usenix.org/node/170855)
- - [ ] [2014: Machine Learning: The High-Interest Credit Card of Technical Debt](http://static.googleusercontent.com/media/research.google.com/en//pubs/archive/43146.pdf)
- - [ ] [2015: Continuous Pipelines at Google](http://static.googleusercontent.com/media/research.google.com/en//pubs/archive/43790.pdf)
- - [ ] [2015: High-Availability at Massive Scale: Building Google’s Data Infrastructure for Ads](https://static.googleusercontent.com/media/research.google.com/en//pubs/archive/44686.pdf)
- - [ ] [2015: TensorFlow: Large-Scale Machine Learning on Heterogeneous Distributed Systems](http://download.tensorflow.org/paper/whitepaper2015.pdf )
- - [ ] [2015: How Developers Search for Code: A Case Study](http://static.googleusercontent.com/media/research.google.com/en//pubs/archive/43835.pdf)
- - [ ] [2016: Borg, Omega, and Kubernetes](http://static.googleusercontent.com/media/research.google.com/en//pubs/archive/44843.pdf)
-
- ### Testing
- To cover:
- how unit testing works
@@ -1208,10 +1135,6 @@ You'll get more graph practice in Skiena's book (see Books section below) and th
- in an OS, how it works
- can be gleaned from Operating System videos
-- ### Implement system routines
- - understand what lies beneath the programming APIs you use
- - can you implement them?
-
- ### String searching & manipulations
- [ ] [Sedgewick - Suffix Arrays (video)](https://www.coursera.org/learn/algorithms-part2/lecture/TH18W/suffix-arrays)
- [ ] [Sedgewick - Substring Search (videos)](https://www.coursera.org/learn/algorithms-part2/home/week/4)
@@ -1240,7 +1163,7 @@ You'll get more graph practice in Skiena's book (see Books section below) and th
- [ ] [The Trie: A Neglected Data Structure](https://www.toptal.com/java/the-trie-a-neglected-data-structure)
- [ ] [TopCoder - Using Tries](https://www.topcoder.com/community/competitive-programming/tutorials/using-tries/)
- [ ] [Stanford Lecture (real world use case) (video)](https://www.youtube.com/watch?v=TJ8SkcUSdbU)
- - [ ] [MIT, Advanced Data Structures, Strings (can get pretty obscure about halfway through)](https://www.youtube.com/watch?v=NinWEPPrkDQ&index=16&list=PLUl4u3cNGP61hsJNdULdudlRL493b-XZf)
+ - [ ] [MIT, Advanced Data Structures, Strings (can get pretty obscure about halfway through) (video)](https://www.youtube.com/watch?v=NinWEPPrkDQ&index=16&list=PLUl4u3cNGP61hsJNdULdudlRL493b-XZf)
- ### Floating Point Numbers
- [ ] simple 8-bit: [Representation of Floating Point Numbers - 1 (video - there is an error in calculations - see video description)](https://www.youtube.com/watch?v=ji3SfClm8TU)
@@ -1251,7 +1174,7 @@ You'll get more graph practice in Skiena's book (see Books section below) and th
- [ ] [What Every Programmer Absolutely, Positively Needs To Know About Encodings And Character Sets To Work With Text](http://kunststube.net/encoding/)
- ### Endianness
- - [ ] [Big And Little Endian](https://www.cs.umd.edu/class/sum2003/cmsc311/Notes/Data/endian.html)
+ - [ ] [Big And Little Endian](https://web.archive.org/web/20180107141940/http://www.cs.umd.edu:80/class/sum2003/cmsc311/Notes/Data/endian.html)
- [ ] [Big Endian Vs Little Endian (video)](https://www.youtube.com/watch?v=JrNF0KRAlyo)
- [ ] [Big And Little Endian Inside/Out (video)](https://www.youtube.com/watch?v=oBSuXP-1Tc0)
- Very technical talk for kernel devs. Don't worry if most is over your head.
@@ -1261,15 +1184,15 @@ You'll get more graph practice in Skiena's book (see Books section below) and th
- **if you have networking experience or want to be a reliability engineer or operations engineer, expect questions**
- otherwise, this is just good to know
- [ ] [Khan Academy](https://www.khanacademy.org/computing/computer-science/internet-intro)
- - [ ] [UDP and TCP: Comparison of Transport Protocols](https://www.youtube.com/watch?v=Vdc8TCESIg8)
- - [ ] [TCP/IP and the OSI Model Explained!](https://www.youtube.com/watch?v=e5DEVa9eSN0)
- - [ ] [Packet Transmission across the Internet. Networking & TCP/IP tutorial.](https://www.youtube.com/watch?v=nomyRJehhnM)
- - [ ] [HTTP](https://www.youtube.com/watch?v=WGJrLqtX7As)
- - [ ] [SSL and HTTPS](https://www.youtube.com/watch?v=S2iBR2ZlZf0)
- - [ ] [SSL/TLS](https://www.youtube.com/watch?v=Rp3iZUvXWlM)
- - [ ] [HTTP 2.0](https://www.youtube.com/watch?v=E9FxNzv1Tr8)
- - [ ] [Video Series (21 videos)](https://www.youtube.com/playlist?list=PLEbnTDJUr_IegfoqO4iPnPYQui46QqT0j)
- - [ ] [Subnetting Demystified - Part 5 CIDR Notation](https://www.youtube.com/watch?v=t5xYI0jzOf4)
+ - [ ] [UDP and TCP: Comparison of Transport Protocols (video)](https://www.youtube.com/watch?v=Vdc8TCESIg8)
+ - [ ] [TCP/IP and the OSI Model Explained! (video)](https://www.youtube.com/watch?v=e5DEVa9eSN0)
+ - [ ] [Packet Transmission across the Internet. Networking & TCP/IP tutorial. (video)](https://www.youtube.com/watch?v=nomyRJehhnM)
+ - [ ] [HTTP (video)](https://www.youtube.com/watch?v=WGJrLqtX7As)
+ - [ ] [SSL and HTTPS (video)](https://www.youtube.com/watch?v=S2iBR2ZlZf0)
+ - [ ] [SSL/TLS (video)](https://www.youtube.com/watch?v=Rp3iZUvXWlM)
+ - [ ] [HTTP 2.0 (video)](https://www.youtube.com/watch?v=E9FxNzv1Tr8)
+ - [ ] [Video Series (21 videos) (video)](https://www.youtube.com/playlist?list=PLEbnTDJUr_IegfoqO4iPnPYQui46QqT0j)
+ - [ ] [Subnetting Demystified - Part 5 CIDR Notation (video)](https://www.youtube.com/watch?v=t5xYI0jzOf4)
- [ ] Sockets:
- [ ] [Java - Sockets - Introduction (video)](https://www.youtube.com/watch?v=6G_W54zuadg&t=6s)
- [ ] [Socket Programming (video)](https://www.youtube.com/watch?v=G75vN2mnJeQ)
@@ -1281,7 +1204,8 @@ You'll get more graph practice in Skiena's book (see Books section below) and th
System Design, Scalability, Data Handling
-- **You can expect system design questions if you have 4+ years of experience.**
+**You can expect system design questions if you have 4+ years of experience.**
+
- Scalability and System Design are very large topics with many topics and resources, since
there is a lot to consider when designing a software/hardware system that can scale.
Expect to spend quite a bit of time on this.
@@ -1310,13 +1234,15 @@ You'll get more graph practice in Skiena's book (see Books section below) and th
- [ ] [How long does it take to make a context switch?](http://blog.tsunanet.net/2010/11/how-long-does-it-take-to-make-context.html)
- [ ] [Transactions Across Datacenters (video)](https://www.youtube.com/watch?v=srOgpXECblk)
- [ ] [A plain English introduction to CAP Theorem](http://ksat.me/a-plain-english-introduction-to-cap-theorem/)
-- [ ] Paxos Consensus algorithm:
- - [short video](https://www.youtube.com/watch?v=s8JqcZtvnsM)
- - [extended video with use case and multi-paxos](https://www.youtube.com/watch?v=JEpsBg0AO6o)
- - [paper](http://research.microsoft.com/en-us/um/people/lamport/pubs/paxos-simple.pdf)
+- [ ] Consensus Algorithms:
+ - [ ] Paxos - [Paxos Agreement - Computerphile (video)](https://www.youtube.com/watch?v=s8JqcZtvnsM)
+ - [ ] Raft - [An Introduction to the Raft Distributed Consensus Algorithm (video)](https://www.youtube.com/watch?v=P9Ydif5_qvE)
+ - [ ] [Easy-to-read paper](https://raft.github.io/)
+ - [ ] [Infographic](http://thesecretlivesofdata.com/raft/)
- [ ] [Consistent Hashing](http://www.tom-e-white.com/2007/11/consistent-hashing.html)
- [ ] [NoSQL Patterns](http://horicky.blogspot.com/2009/11/nosql-patterns.html)
- [ ] Scalability:
+ - You don't need all of these. Just pick a few that interest you.
- [ ] [Great overview (video)](https://www.youtube.com/watch?v=-W9F__D3oY4)
- [ ] Short series:
- [Clones](http://www.lecloud.net/post/7295452622/scalability-for-dummies-part-1-clones)
@@ -1333,7 +1259,6 @@ You'll get more graph practice in Skiena's book (see Books section below) and th
- [ ] [How Google Does Planet-Scale Engineering for Planet-Scale Infra (video)](https://www.youtube.com/watch?v=H4vMcD7zKM0)
- [ ] [The Importance of Algorithms](https://www.topcoder.com/community/competitive-programming/tutorials/the-importance-of-algorithms/)
- [ ] [Sharding](http://highscalability.com/blog/2009/8/6/an-unorthodox-approach-to-database-design-the-coming-of-the.html)
- - [ ] [Scale at Facebook (2009)](https://www.infoq.com/presentations/Scale-at-Facebook)
- [ ] [Scale at Facebook (2012), "Building for a Billion Users" (video)](https://www.youtube.com/watch?v=oodS71YtkGU)
- [ ] [Engineering for the Long Game - Astrid Atkinson Keynote(video)](https://www.youtube.com/watch?v=p0jGmgIrf_M&list=PLRXxvay_m8gqVlExPC5DG3TGWJTaBgqSA&index=4)
- [ ] [7 Years Of YouTube Scalability Lessons In 30 Minutes](http://highscalability.com/blog/2012/3/26/7-years-of-youtube-scalability-lessons-in-30-minutes.html)
@@ -1347,7 +1272,6 @@ You'll get more graph practice in Skiena's book (see Books section below) and th
- [ ] [When Should Approximate Query Processing Be Used?](http://highscalability.com/blog/2016/2/25/when-should-approximate-query-processing-be-used.html)
- [ ] [Google's Transition From Single Datacenter, To Failover, To A Native Multihomed Architecture]( http://highscalability.com/blog/2016/2/23/googles-transition-from-single-datacenter-to-failover-to-a-n.html)
- [ ] [Spanner](http://highscalability.com/blog/2012/9/24/google-spanners-most-surprising-revelation-nosql-is-out-and.html)
- - [ ] [Egnyte Architecture: Lessons Learned In Building And Scaling A Multi Petabyte Distributed System](http://highscalability.com/blog/2016/2/15/egnyte-architecture-lessons-learned-in-building-and-scaling.html)
- [ ] [Machine Learning Driven Programming: A New Programming For A New World](http://highscalability.com/blog/2016/7/6/machine-learning-driven-programming-a-new-programming-for-a.html)
- [ ] [The Image Optimization Technology That Serves Millions Of Requests Per Day](http://highscalability.com/blog/2016/6/15/the-image-optimization-technology-that-serves-millions-of-re.html)
- [ ] [A Patreon Architecture Short](http://highscalability.com/blog/2016/2/1/a-patreon-architecture-short.html)
@@ -1356,7 +1280,6 @@ You'll get more graph practice in Skiena's book (see Books section below) and th
- [ ] [Live Video Streaming At Facebook Scale](http://highscalability.com/blog/2016/1/13/live-video-streaming-at-facebook-scale.html)
- [ ] [A Beginner's Guide To Scaling To 11 Million+ Users On Amazon's AWS](http://highscalability.com/blog/2016/1/11/a-beginners-guide-to-scaling-to-11-million-users-on-amazons.html)
- [ ] [How Does The Use Of Docker Effect Latency?](http://highscalability.com/blog/2015/12/16/how-does-the-use-of-docker-effect-latency.html)
- - [ ] [Does AMP Counter An Existential Threat To Google?](http://highscalability.com/blog/2015/12/14/does-amp-counter-an-existential-threat-to-google.html)
- [ ] [A 360 Degree View Of The Entire Netflix Stack](http://highscalability.com/blog/2015/11/9/a-360-degree-view-of-the-entire-netflix-stack.html)
- [ ] [Latency Is Everywhere And It Costs You Sales - How To Crush It](http://highscalability.com/latency-everywhere-and-it-costs-you-sales-how-crush-it)
- [ ] [Serverless (very long, just need the gist)](http://martinfowler.com/articles/serverless.html)
@@ -1454,7 +1377,7 @@ No whiteboard at home? That makes sense. I'm a weirdo and have a big whiteboard.
large drawing pad from an art store. You can sit on the couch and practice. This is my "sofa whiteboard".
I added the pen in the photo for scale. If you use a pen, you'll wish you could erase. Gets messy quick.
-
+
Supplemental:
@@ -1583,17 +1506,51 @@ You're never really done.
Additional Books
-- [ ] [The Unix Programming Environment](https://www.amazon.com/dp/013937681X)
+- [The Unix Programming Environment](https://www.amazon.com/dp/013937681X)
- an oldie but a goodie
-- [ ] [The Linux Command Line: A Complete Introduction](https://www.amazon.com/dp/1593273894/)
+- [The Linux Command Line: A Complete Introduction](https://www.amazon.com/dp/1593273894/)
- a modern option
-- [ ] [TCP/IP Illustrated Series](https://en.wikipedia.org/wiki/TCP/IP_Illustrated)
-- [ ] [Head First Design Patterns](https://www.amazon.com/gp/product/0596007124/)
+- [TCP/IP Illustrated Series](https://en.wikipedia.org/wiki/TCP/IP_Illustrated)
+- [Head First Design Patterns](https://www.amazon.com/gp/product/0596007124/)
- a gentle introduction to design patterns
-- [ ] [Design Patterns: Elements of Reusable Object-Oriented Software](https://www.amazon.com/Design-Patterns-Elements-Reusable-Object-Oriented/dp/0201633612)
+- [Design Patterns: Elements of Reusable Object-Oriented Software](https://www.amazon.com/Design-Patterns-Elements-Reusable-Object-Oriented/dp/0201633612)
- aka the "Gang Of Four" book, or GOF
- the canonical design patterns book
-- [ ] [UNIX and Linux System Administration Handbook, 5th Edition](https://www.amazon.com/UNIX-Linux-System-Administration-Handbook/dp/0134277554/)
+- [UNIX and Linux System Administration Handbook, 5th Edition](https://www.amazon.com/UNIX-Linux-System-Administration-Handbook/dp/0134277554/)
+- [Algorithm Design Manual](http://www.amazon.com/Algorithm-Design-Manual-Steven-Skiena/dp/1849967202) (Skiena)
+ - As a review and problem recognition
+ - The algorithm catalog portion is well beyond the scope of difficulty you'll get in an interview.
+ - This book has 2 parts:
+ - class textbook on data structures and algorithms
+ - pros:
+ - is a good review as any algorithms textbook would be
+ - nice stories from his experiences solving problems in industry and academia
+ - code examples in C
+ - cons:
+ - can be as dense or impenetrable as CLRS, and in some cases, CLRS may be a better alternative for some subjects
+ - chapters 7, 8, 9 can be painful to try to follow, as some items are not explained well or require more brain than I have
+ - don't get me wrong: I like Skiena, his teaching style, and mannerisms, but I may not be Stony Brook material.
+ - algorithm catalog:
+ - this is the real reason you buy this book.
+ - about to get to this part. Will update here once I've made my way through it.
+ - Can rent it on kindle
+ - Answers:
+ - [Solutions](http://www.algorithm.cs.sunysb.edu/algowiki/index.php/The_Algorithms_Design_Manual_(Second_Edition))
+ - [Solutions](http://blog.panictank.net/category/algorithmndesignmanualsolutions/page/2/)
+ - [Errata](http://www3.cs.stonybrook.edu/~skiena/algorist/book/errata)
+
+- [Introduction to Algorithms](https://www.amazon.com/Introduction-Algorithms-3rd-MIT-Press/dp/0262033844)
+ - **Important:** Reading this book will only have limited value. This book is a great review of algorithms and data structures, but won't teach you how to write good code. You have to be able to code a decent solution efficiently.
+ - aka CLR, sometimes CLRS, because Stein was late to the game
+
+- [Computer Architecture, Sixth Edition: A Quantitative Approach](https://www.amazon.com/dp/0128119055)
+ - For a richer, more up-to-date (2017), but longer treatment
+
+- [Programming Pearls](http://www.amazon.com/Programming-Pearls-2nd-Jon-Bentley/dp/0201657880)
+ - The first couple of chapters present clever solutions to programming problems (some very old using data tape) but
+ that is just an intro. This a guidebook on program design and architecture, much like Code Complete, but much shorter.
+
+
@@ -1702,7 +1659,6 @@ software engineer, and to be aware of certain technologies and algorithms, so yo
- [ ] [Side-Channel Attacks](https://www.youtube.com/watch?v=PuVMkSEcPiI&index=15&list=PLUl4u3cNGP62K2DjQLRxDNRi0z2IRWnNh)
- ### Garbage collection
- - [ ] [Compilers (video)](https://www.youtube.com/playlist?list=PLO9y7hOkmmSGTy5z6HZ-W4k2y8WXF7Bff)
- [ ] [GC in Python (video)](https://www.youtube.com/watch?v=iHVs_HkjdmI)
- [ ] [Deep Dive Java: Garbage Collection is Good!](https://www.infoq.com/presentations/garbage-collection-benefits)
- [ ] [Deep Dive Python: Garbage Collection in CPython (video)](https://www.youtube.com/watch?v=P-8Z0-MhdQs&list=PLdzf4Clw0VbOEWOS_sLhT_9zaiQDrS5AR&index=3)
@@ -1747,8 +1703,8 @@ software engineer, and to be aware of certain technologies and algorithms, so yo
- ### Bloom Filter
- Given a Bloom filter with m bits and k hashing functions, both insertion and membership testing are O(k)
- - [Bloom Filters](https://www.youtube.com/watch?v=-SuTGoFYjZs)
- - [Bloom Filters | Mining of Massive Datasets | Stanford University](https://www.youtube.com/watch?v=qBTdukbzc78)
+ - [Bloom Filters (video)](https://www.youtube.com/watch?v=-SuTGoFYjZs)
+ - [Bloom Filters | Mining of Massive Datasets | Stanford University (video)](https://www.youtube.com/watch?v=qBTdukbzc78)
- [Tutorial](http://billmill.org/bloomfilter-tutorial/)
- [How To Write A Bloom Filter App](http://blog.michaelschmatz.com/2016/04/11/how-to-write-a-bloom-filter-cpp/)
@@ -2079,12 +2035,44 @@ Sit back and enjoy. "Netflix and skill" :P
## Computer Science Courses
-
-Computer Science Courses
-
- [Directory of Online CS Courses](https://github.com/open-source-society/computer-science)
- [Directory of CS Courses (many with online lectures)](https://github.com/prakhar1989/awesome-courses)
+## Papers
+
+
+Papers
+
+- [Love classic papers?](https://www.cs.cmu.edu/~crary/819-f09/)
+- [ ] [1978: Communicating Sequential Processes](http://spinroot.com/courses/summer/Papers/hoare_1978.pdf)
+ - [implemented in Go](https://godoc.org/github.com/thomas11/csp)
+- [ ] [2003: The Google File System](http://static.googleusercontent.com/media/research.google.com/en//archive/gfs-sosp2003.pdf)
+ - replaced by Colossus in 2012
+- [ ] [2004: MapReduce: Simplified Data Processing on Large Clusters]( http://static.googleusercontent.com/media/research.google.com/en//archive/mapreduce-osdi04.pdf)
+ - mostly replaced by Cloud Dataflow?
+- [ ] [2006: Bigtable: A Distributed Storage System for Structured Data](https://static.googleusercontent.com/media/research.google.com/en//archive/bigtable-osdi06.pdf)
+ - [An Inside Look at Google BigQuery](https://cloud.google.com/files/BigQueryTechnicalWP.pdf)
+- [ ] [2006: The Chubby Lock Service for Loosely-Coupled Distributed Systems](https://research.google.com/archive/chubby-osdi06.pdf)
+- [ ] [2007: Dynamo: Amazon’s Highly Available Key-value Store](http://s3.amazonaws.com/AllThingsDistributed/sosp/amazon-dynamo-sosp2007.pdf)
+ - The Dynamo paper kicked off the NoSQL revolution
+- [ ] [2007: What Every Programmer Should Know About Memory (very long, and the author encourages skipping of some sections)](https://www.akkadia.org/drepper/cpumemory.pdf)
+- [ ] [2010: Dapper, a Large-Scale Distributed Systems Tracing Infrastructure](https://research.google.com/pubs/archive/36356.pdf)
+- [ ] [2010: Dremel: Interactive Analysis of Web-Scale Datasets](https://static.googleusercontent.com/media/research.google.com/en//pubs/archive/36632.pdf)
+- [ ] [2012: Google's Colossus](https://www.wired.com/2012/07/google-colossus/)
+ - paper not available
+- [ ] 2012: AddressSanitizer: A Fast Address Sanity Checker:
+ - [paper](http://static.googleusercontent.com/media/research.google.com/en//pubs/archive/37752.pdf)
+ - [video](https://www.usenix.org/conference/atc12/technical-sessions/presentation/serebryany)
+- [ ] 2013: Spanner: Google’s Globally-Distributed Database:
+ - [paper](http://static.googleusercontent.com/media/research.google.com/en//archive/spanner-osdi2012.pdf)
+ - [video](https://www.usenix.org/node/170855)
+- [ ] [2014: Machine Learning: The High-Interest Credit Card of Technical Debt](http://static.googleusercontent.com/media/research.google.com/en//pubs/archive/43146.pdf)
+- [ ] [2015: Continuous Pipelines at Google](http://static.googleusercontent.com/media/research.google.com/en//pubs/archive/43790.pdf)
+- [ ] [2015: High-Availability at Massive Scale: Building Google’s Data Infrastructure for Ads](https://static.googleusercontent.com/media/research.google.com/en//pubs/archive/44686.pdf)
+- [ ] [2015: TensorFlow: Large-Scale Machine Learning on Heterogeneous Distributed Systems](http://download.tensorflow.org/paper/whitepaper2015.pdf )
+- [ ] [2015: How Developers Search for Code: A Case Study](http://static.googleusercontent.com/media/research.google.com/en//pubs/archive/43835.pdf)
+- [ ] [2016: Borg, Omega, and Kubernetes](http://static.googleusercontent.com/media/research.google.com/en//pubs/archive/44843.pdf)
+
## LICENSE
diff --git a/programming-language-resources.md b/programming-language-resources.md
index 5d092e5..2ee8e58 100644
--- a/programming-language-resources.md
+++ b/programming-language-resources.md
@@ -1,7 +1,7 @@
## Programming Language Resources
- C
- - [ANSI C Cheat Sheet](https://github.com/jwasham/google-interview-university/blob/master/extras/cheat%20sheets/C%20Reference%20Card%20(ANSI)%202.2.pdf)
+ - [ANSI C Cheat Sheet](https://github.com/jwasham/coding-interview-university/blob/master/extras/cheat%20sheets/C%20Reference%20Card%20(ANSI)%202.2.pdf)
- K&R C book (ANSI C)
- [Make, Clang (video)](https://www.youtube.com/watch?v=U3zCxnj2w8M)
- GDB:
@@ -11,8 +11,8 @@
- [Let us C](https://books.google.co.in/books/about/Let_Us_C.html?id=7HrjAAAACAAJ)
- C++
- - [C++ Cheat Sheet](https://github.com/jwasham/google-interview-university/blob/master/extras/cheat%20sheets/Cpp_reference.pdf)
- - [STL Cheat Sheet](https://github.com/jwasham/google-interview-university/blob/master/extras/cheat%20sheets/STL%20Quick%20Reference%201.29.pdf)
+ - [C++ Cheat Sheet](https://github.com/jwasham/coding-interview-university/blob/master/extras/cheat%20sheets/Cpp_reference.pdf)
+ - [STL Cheat Sheet](https://github.com/jwasham/coding-interview-university/blob/master/extras/cheat%20sheets/STL%20Quick%20Reference%201.29.pdf)
- basics
- pointers
- functions
@@ -32,10 +32,9 @@
- [Let us C++](https://books.google.co.in/books/about/Let_Us_C++.html?id=6HrjAAAACAAJ)
- Python
- - [Python Cheat Sheet](https://github.com/jwasham/google-interview-university/blob/master/extras/cheat%20sheets/python-cheat-sheet-v1.pdf)
+ - [Python Cheat Sheet](https://github.com/jwasham/coding-interview-university/blob/master/extras/cheat%20sheets/python-cheat-sheet-v1.pdf)
- [Python in One Video](https://www.youtube.com/watch?v=N4mEzFDjqtA)
- [Series on 3.4 (video)](https://www.youtube.com/playlist?list=PL6gx4Cwl9DGAcbMi1sH6oAMk4JHw91mC_)
- - [Zero to Hero (video)](https://www.youtube.com/watch?v=TV9tSHFAFjg)
- [Statistics for Hackers (video)](https://www.youtube.com/watch?v=Iq9DzN6mvYA)
- [Faster Python (video)](https://www.youtube.com/watch?v=JDSGVvMwNM8)
- [CPython Walk (video)](https://www.youtube.com/watch?v=LhadeL7_EIU&list=PLzV58Zm8FuBL6OAv1Yu6AwXZrnsFbbR0S&index=6)
diff --git a/translations/README-ar.md b/translations/README-ar.md
index 37dd36b..357b36e 100644
--- a/translations/README-ar.md
+++ b/translations/README-ar.md
@@ -3,19 +3,19 @@
الترجمه:
- [中文版本](translations/README-cn.md)
- الترجمات تحت الاعداد:
- - [Español](https://github.com/jwasham/google-interview-university/issues/80)
- - [हिन्दी](https://github.com/jwasham/google-interview-university/issues/81)
- - [עברית](https://github.com/jwasham/google-interview-university/issues/82)
- - [Bahasa Indonesia](https://github.com/jwasham/google-interview-university/issues/101)
- - [Arabic](https://github.com/jwasham/google-interview-university/issues/98)
- - [Vietnamese](https://github.com/jwasham/google-interview-university/issues/92)
- - [Turkish](https://github.com/jwasham/google-interview-university/issues/90)
- - [French](https://github.com/jwasham/google-interview-university/issues/89)
- - [Russian](https://github.com/jwasham/google-interview-university/issues/87)
- - [Ukrainian](https://github.com/jwasham/google-interview-university/issues/106)
- - [Brazilian Portuguese](https://github.com/jwasham/google-interview-university/issues/113)
- - [Korean](https://github.com/jwasham/google-interview-university/issues/118)
- - [Polish](https://github.com/jwasham/google-interview-university/issues/122)
+ - [Español](https://github.com/jwasham/coding-interview-university/issues/80)
+ - [हिन्दी](https://github.com/jwasham/coding-interview-university/issues/81)
+ - [עברית](https://github.com/jwasham/coding-interview-university/issues/82)
+ - [Bahasa Indonesia](https://github.com/jwasham/coding-interview-university/issues/101)
+ - [Arabic](https://github.com/jwasham/coding-interview-university/issues/98)
+ - [Vietnamese](https://github.com/jwasham/coding-interview-university/issues/92)
+ - [Turkish](https://github.com/jwasham/coding-interview-university/issues/90)
+ - [French](https://github.com/jwasham/coding-interview-university/issues/89)
+ - [Russian](https://github.com/jwasham/coding-interview-university/issues/87)
+ - [Ukrainian](https://github.com/jwasham/coding-interview-university/issues/106)
+ - [Brazilian Portuguese](https://github.com/jwasham/coding-interview-university/issues/113)
+ - [Korean](https://github.com/jwasham/coding-interview-university/issues/118)
+ - [Polish](https://github.com/jwasham/coding-interview-university/issues/122)
## ماهذا؟
هي خطة من عدة أشهر من مطور تطبيقات ويب (قائمة على التعليم الذاتي، ومبدون درجة علمية في علوم الحاسب) لمنصب مهندس برمجيات بجوجل
@@ -179,7 +179,7 @@
`git checkout -b progress`
-`git remote add jwasham https://github.com/jwasham/google-interview-university`
+`git remote add jwasham https://github.com/jwasham/coding-interview-university`
`git fetch --all`
@@ -197,9 +197,9 @@
## الدخول في مزاج جوجلي
-Print out a "[future Googler](https://github.com/jwasham/google-interview-university/blob/master/extras/future-googler.pdf)" sign (or two) and keep your eyes on the prize.
+Print out a "[future Googler](https://github.com/jwasham/coding-interview-university/blob/master/extras/future-googler.pdf)" sign (or two) and keep your eyes on the prize.
-[](https://github.com/jwasham/google-interview-university/blob/master/extras/future-googler.pdf)
+[](https://github.com/jwasham/coding-interview-university/blob/master/extras/future-googler.pdf)
## هل حصلت على الوظيفة بجوجل؟
@@ -224,7 +224,7 @@ I'm on the journey, too. Follow along:
- لينكدإن: [johnawasham](https://www.linkedin.com/in/johnawasham)
-
+
## هل تشعر أنك لست بالذكاء الكافي
- مهندسوا جوجل أذكياء، وربما لديهم عدم الأمان لأنهم ليسوا بالذكاء الكافي، حتى وهي في جوجل
@@ -717,7 +717,7 @@ Write code on a whiteboard or paper, not a computer. Test with some sample input
- binary search using recursion
- ### Bitwise operations
- - [ ] [Bits cheat sheet](https://github.com/jwasham/google-interview-university/blob/master/extras/cheat%20sheets/bits-cheat-cheet.pdf) - you should know many of the powers of 2 from (2^1 to 2^16 and 2^32)
+ - [ ] [Bits cheat sheet](https://github.com/jwasham/coding-interview-university/blob/master/extras/cheat%20sheets/bits-cheat-cheet.pdf) - you should know many of the powers of 2 from (2^1 to 2^16 and 2^32)
- [ ] Get a really good understanding of manipulating bits with: &, |, ^, ~, >>, <<
- [ ] [words](https://en.wikipedia.org/wiki/Word_(computer_architecture))
- [ ] Good intro:
@@ -1292,7 +1292,7 @@ You'll get more graph practice in Skiena's book (see Books section below) and th
- For even more, see "Mining Massive Datasets" video series in the Video Series section.
- [ ] Practicing the system design process: Here are some ideas to try working through on paper, each with some documentation on how it was handled in the real world:
- review: [System Design from HiredInTech](http://www.hiredintech.com/system-design/)
- - [cheat sheet](https://github.com/jwasham/google-interview-university/blob/master/extras/cheat%20sheets/system-design.pdf)
+ - [cheat sheet](https://github.com/jwasham/coding-interview-university/blob/master/extras/cheat%20sheets/system-design.pdf)
- flow:
1. Understand the problem and scope:
- define the use cases, with interviewer's help
diff --git a/translations/README-cn.md b/translations/README-cn.md
index 73521ab..257824c 100644
--- a/translations/README-cn.md
+++ b/translations/README-cn.md
@@ -1,6 +1,6 @@
-# [译] Google Interview University 一套完整的学习手册帮助自己准备 Google 的面试
+# [译] Coding Interview University 一套完整的学习手册帮助自己准备 Google 的面试
-> * 原文地址:[Google Interview University](https://github.com/jwasham/google-interview-university)
+> * 原文地址:[Coding Interview University](https://github.com/jwasham/coding-interview-university)
* 原文作者:[John Washam](https://github.com/jwasham)
* 译文出自:[掘金翻译计划](https://github.com/xitu/gold-miner)
* 译者:[aleen42](https://github.com/aleen42),[Newton](https://github.com/Newt0n),[bobmayuze](https://github.com/bobmayuze),[Jaeger](https://github.com/laobie),[sqrthree](https://github.com/sqrthree)
@@ -133,9 +133,9 @@
## 拥有一名 Googler 的心态
-把一个(或两个)印有“[future Googler](https://github.com/jwasham/google-interview-university/blob/master/extras/future-googler.pdf)”的图案打印出来,并用你誓要成功的眼神盯着它。
+把一个(或两个)印有“[future Googler](https://github.com/jwasham/coding-interview-university/blob/master/extras/future-googler.pdf)”的图案打印出来,并用你誓要成功的眼神盯着它。
-[](https://github.com/jwasham/google-interview-university/blob/master/extras/future-googler.pdf)
+[](https://github.com/jwasham/coding-interview-university/blob/master/extras/future-googler.pdf)
## 我得到了工作吗?
@@ -156,7 +156,7 @@
- Google+: [+Googleyasheck](https://plus.google.com/+Googleyasheck)
- LinkedIn: [johnawasham](https://www.linkedin.com/in/johnawasham)
-
+
## 不要妄自菲薄
@@ -480,7 +480,7 @@
- 迭代式二分查找
- ### 按位运算(Bitwise operations)
- - [ ] [Bits 速查表](https://github.com/jwasham/google-interview-university/blob/master/extras/cheat%20sheets/bits-cheat-cheet.pdf)
+ - [ ] [Bits 速查表](https://github.com/jwasham/coding-interview-university/blob/master/extras/cheat%20sheets/bits-cheat-cheet.pdf)
- 你需要知道大量2的幂数值(从2^1 到 2^16 及 2^32)
- [ ] 好好理解位操作符的含义:&、|、^、~、>>、<<
- [ ] [字码(words)](https://en.wikipedia.org/wiki/Word_(computer_architecture))
@@ -1021,7 +1021,7 @@
- 更多内容可以查看视频部分的『大规模数据挖掘』视频系列。
- [ ] 系统设计问题练习:下面有一些指导原则,每一个都有相关文档以及在现实中该如何处理。
- 复习: [HiredInTech 的系统设计](http://www.hiredintech.com/system-design/)
- - [cheat sheet](https://github.com/jwasham/google-interview-university/blob/master/extras/cheat%20sheets/system-design.pdf)
+ - [cheat sheet](https://github.com/jwasham/coding-interview-university/blob/master/extras/cheat%20sheets/system-design.pdf)
- 流程:
1. 理解问题和范围:
- 在面试官的帮助下定义用例
diff --git a/translations/README-fr.md b/translations/README-fr.md
index 219cefa..f21e43b 100644
--- a/translations/README-fr.md
+++ b/translations/README-fr.md
@@ -1,9 +1,9 @@
-# Google Interview University
+# Coding Interview University
Translations:
- [中文版本](README-cn.md)
-- [Español (in progress)](README-es.md) [Issue #80](https://github.com/jwasham/google-interview-university/issues/80)
-- मानक हिन्दी (in progress) [Issue #81](https://github.com/jwasham/google-interview-university/issues/81)
+- [Español (in progress)](README-es.md) [Issue #80](https://github.com/jwasham/coding-interview-university/issues/80)
+- मानक हिन्दी (in progress) [Issue #81](https://github.com/jwasham/coding-interview-university/issues/81)
## C'est quoi?
@@ -178,7 +178,7 @@ I'm using Github's special markdown flavor, including tasks lists to check progr
`git checkout -b progress`
-`git remote add jwasham https://github.com/jwasham/google-interview-university`
+`git remote add jwasham https://github.com/jwasham/coding-interview-university`
`git fetch --all`
@@ -196,9 +196,9 @@ I'm using Github's special markdown flavor, including tasks lists to check progr
## Get in a Googley Mood
-Print out a "[future Googler](https://github.com/jwasham/google-interview-university/blob/master/extras/future-googler.pdf)" sign (or two) and keep your eyes on the prize.
+Print out a "[future Googler](https://github.com/jwasham/coding-interview-university/blob/master/extras/future-googler.pdf)" sign (or two) and keep your eyes on the prize.
-[](https://github.com/jwasham/google-interview-university/blob/master/extras/future-googler.pdf)
+[](https://github.com/jwasham/coding-interview-university/blob/master/extras/future-googler.pdf)
## Did I Get the Job?
@@ -218,7 +218,7 @@ I'm on the journey, too. Follow along:
- Google+: [+Googleyasheck](https://plus.google.com/+Googleyasheck)
- LinkedIn: [johnawasham](https://www.linkedin.com/in/johnawasham)
-
+
## Don't feel you aren't smart enough
- Google engineers are smart, but many have an insecurity that they aren't smart enough, even though they work at Google.
@@ -703,7 +703,7 @@ Write code on a whiteboard or paper, not a computer. Test with some sample input
- binary search using recursion
- ### Bitwise operations
- - [ ] [Bits cheat sheet](https://github.com/jwasham/google-interview-university/blob/master/extras/cheat%20sheets/bits-cheat-cheet.pdf) - you should know many of the powers of 2 from (2^1 to 2^16 and 2^32)
+ - [ ] [Bits cheat sheet](https://github.com/jwasham/coding-interview-university/blob/master/extras/cheat%20sheets/bits-cheat-cheet.pdf) - you should know many of the powers of 2 from (2^1 to 2^16 and 2^32)
- [ ] Get a really good understanding of manipulating bits with: &, |, ^, ~, >>, <<
- [ ] [words](https://en.wikipedia.org/wiki/Word_(computer_architecture))
- [ ] Good intro:
@@ -1248,7 +1248,7 @@ You'll get more graph practice in Skiena's book (see Books section below) and th
- For even more, see "Mining Massive Datasets" video series in the Video Series section.
- [ ] Practicing the system design process: Here are some ideas to try working through on paper, each with some documentation on how it was handled in the real world:
- review: [System Design from HiredInTech](http://www.hiredintech.com/system-design/)
- - [cheat sheet](https://github.com/jwasham/google-interview-university/blob/master/extras/cheat%20sheets/system-design.pdf)
+ - [cheat sheet](https://github.com/jwasham/coding-interview-university/blob/master/extras/cheat%20sheets/system-design.pdf)
- flow:
1. Understand the problem and scope:
- define the use cases, with interviewer's help
diff --git a/translations/README-he.md b/translations/README-he.md
index d4192f5..067b904 100644
--- a/translations/README-he.md
+++ b/translations/README-he.md
@@ -172,7 +172,7 @@ I'm using Github's special markdown flavor, including tasks lists to check progr
`git checkout -b progress`
-`git remote add jwasham https://github.com/jwasham/google-interview-university`
+`git remote add jwasham https://github.com/jwasham/coding-interview-university`
`git fetch --all`
@@ -190,9 +190,9 @@ I'm using Github's special markdown flavor, including tasks lists to check progr
## Get in a Googley Mood
-Print out a "[future Googler](https://github.com/jwasham/google-interview-university/blob/master/extras/future-googler.pdf)" sign (or two) and keep your eyes on the prize.
+Print out a "[future Googler](https://github.com/jwasham/coding-interview-university/blob/master/extras/future-googler.pdf)" sign (or two) and keep your eyes on the prize.
-[](https://github.com/jwasham/google-interview-university/blob/master/extras/future-googler.pdf)
+[](https://github.com/jwasham/coding-interview-university/blob/master/extras/future-googler.pdf)
## האם קיבלתי את העבודה?
@@ -212,7 +212,7 @@ Print out a "[future Googler](https://github.com/jwasham/google-interview-univer
- גוגל+: [+Googleyasheck](https://plus.google.com/+Googleyasheck)
- לינקדאין: [johnawasham](https://www.linkedin.com/in/johnawasham)
-
+
## אל תרדגישו שאתם לא חכמים מספיק
- Google engineers are smart, but many have an insecurity that they aren't smart enough, even though they work at Google.
@@ -697,7 +697,7 @@ Write code on a whiteboard or paper, not a computer. Test with some sample input
- binary search using recursion
- ### Bitwise operations
- - [ ] [Bits cheat sheet](https://github.com/jwasham/google-interview-university/blob/master/extras/cheat%20sheets/bits-cheat-cheet.pdf) - you should know many of the powers of 2 from (2^1 to 2^16 and 2^32)
+ - [ ] [Bits cheat sheet](https://github.com/jwasham/coding-interview-university/blob/master/extras/cheat%20sheets/bits-cheat-cheet.pdf) - you should know many of the powers of 2 from (2^1 to 2^16 and 2^32)
- [ ] Get a really good understanding of manipulating bits with: &, |, ^, ~, >>, <<
- [ ] [words](https://en.wikipedia.org/wiki/Word_(computer_architecture))
- [ ] Good intro:
@@ -1242,7 +1242,7 @@ You'll get more graph practice in Skiena's book (see Books section below) and th
- For even more, see "Mining Massive Datasets" video series in the Video Series section.
- [ ] Practicing the system design process: Here are some ideas to try working through on paper, each with some documentation on how it was handled in the real world:
- review: [System Design from HiredInTech](http://www.hiredintech.com/system-design/)
- - [cheat sheet](https://github.com/jwasham/google-interview-university/blob/master/extras/cheat%20sheets/system-design.pdf)
+ - [cheat sheet](https://github.com/jwasham/coding-interview-university/blob/master/extras/cheat%20sheets/system-design.pdf)
- flow:
1. Understand the problem and scope:
- define the use cases, with interviewer's help
diff --git a/translations/README-hi.md b/translations/README-hi.md
index 33ae4c9..8e27ef1 100644
--- a/translations/README-hi.md
+++ b/translations/README-hi.md
@@ -549,7 +549,7 @@ memory" का एरर न दे, और तब मुजे कोई वै
- binary search using recursion
- ### Bitwise operations
- - [ ] [Bits cheat sheet](https://github.com/jwasham/google-interview-university/blob/master/extras/cheat%20sheets/bits-cheat-cheet.pdf) - you should know many of the powers of 2 from (2^1 to 2^16 and 2^32)
+ - [ ] [Bits cheat sheet](https://github.com/jwasham/coding-interview-university/blob/master/extras/cheat%20sheets/bits-cheat-cheet.pdf) - you should know many of the powers of 2 from (2^1 to 2^16 and 2^32)
- [ ] Get a really good understanding of manipulating bits with: &, |, ^, ~, >>, <<
- [ ] [words](https://en.wikipedia.org/wiki/Word_(computer_architecture))
- [ ] Good intro:
@@ -1123,7 +1123,7 @@ You'll get more graph practice in Skiena's book (see Books section below) and th
- For even more, see "Mining Massive Datasets" video series in the Video Series section.
- [ ] Practicing the system design process: Here are some ideas to try working through on paper, each with some documentation on how it was handled in the real world:
- review: [System Design from HiredInTech](http://www.hiredintech.com/system-design/)
- - [cheat sheet](https://github.com/jwasham/google-interview-university/blob/master/extras/cheat%20sheets/system-design.pdf)
+ - [cheat sheet](https://github.com/jwasham/coding-interview-university/blob/master/extras/cheat%20sheets/system-design.pdf)
- flow:
1. Understand the problem and scope:
- define the use cases, with interviewer's help
diff --git a/translations/README-id.md b/translations/README-id.md
index c1e4f51..e4e2b24 100644
--- a/translations/README-id.md
+++ b/translations/README-id.md
@@ -1,4 +1,4 @@
-# Google Interview University
+# Coding Interview University
Version original: [Bahasa Inggris](README.md)
@@ -165,7 +165,7 @@ Saya menggunakan markdown spesial dari Github, termasuk daftar tugas untuk menge
`git checkout -b progress`
-`git remote add jwasham https://github.com/jwasham/google-interview-university`
+`git remote add jwasham https://github.com/jwasham/coding-interview-university`
`git fetch --all`
@@ -183,9 +183,9 @@ Saya menggunakan markdown spesial dari Github, termasuk daftar tugas untuk menge
## Masuk ke Mode Googley
-Print satu atau beberapa foto dari "[future Googler](https://github.com/jwasham/google-interview-university/blob/master/extras/future-googler.pdf)" (untuk ditempel tentunya) sebagai reminder anda apa hasil usaha yang anda akan dapatkan.
+Print satu atau beberapa foto dari "[future Googler](https://github.com/jwasham/coding-interview-university/blob/master/extras/future-googler.pdf)" (untuk ditempel tentunya) sebagai reminder anda apa hasil usaha yang anda akan dapatkan.
-[](https://github.com/jwasham/google-interview-university/blob/master/extras/future-googler.pdf)
+[](https://github.com/jwasham/coding-interview-university/blob/master/extras/future-googler.pdf)
## Jangan merasa anda kurang pintar
- Para engineers/programmer di google adalah orang-orang pintar, tapi banyak dari mereka berpikir bahwa mereka tidak cukup pintar, walaupun mereka bekerja di Google.
@@ -669,7 +669,7 @@ Menulis kode pada papan tulis atau kertas, bukan komputer. Uji dengan beberapa s
- binary search using recursion
- ### Bitwise operations
- - [ ] [Bits cheat sheet](https://github.com/jwasham/google-interview-university/blob/master/extras/cheat%20sheets/bits-cheat-cheet.pdf) - you should know many of the powers of 2 from (2^1 to 2^16 and 2^32)
+ - [ ] [Bits cheat sheet](https://github.com/jwasham/coding-interview-university/blob/master/extras/cheat%20sheets/bits-cheat-cheet.pdf) - you should know many of the powers of 2 from (2^1 to 2^16 and 2^32)
- [ ] Get a really good understanding of manipulating bits with: &, |, ^, ~, >>, <<
- [ ] [words](https://en.wikipedia.org/wiki/Word_(computer_architecture))
- [ ] Good intro:
@@ -1219,7 +1219,7 @@ You'll get more graph practice in Skiena's book (see Books section below) and th
- For even more, see "Mining Massive Datasets" video series in the Video Series section.
- [ ] Practicing the system design process: Here are some ideas to try working through on paper, each with some documentation on how it was handled in the real world:
- review: [System Design from HiredInTech](http://www.hiredintech.com/system-design/)
- - [cheat sheet](https://github.com/jwasham/google-interview-university/blob/master/extras/cheat%20sheets/system-design.pdf)
+ - [cheat sheet](https://github.com/jwasham/coding-interview-university/blob/master/extras/cheat%20sheets/system-design.pdf)
- flow:
1. Understand the problem and scope:
- define the use cases, with interviewer's help
diff --git a/translations/README-ko.md b/translations/README-ko.md
index db74a9b..bc8447d 100644
--- a/translations/README-ko.md
+++ b/translations/README-ko.md
@@ -18,7 +18,6 @@
- [브라질 포르투갈어](translations/README-ptbr.md)
- [스페인어](translations/README-es.md)
- [중국어](translations/README-cn.md)
-
@@ -41,7 +40,6 @@
- [한국어](https://github.com/jwasham/coding-interview-university/issues/118)
- [히브리어](https://github.com/jwasham/coding-interview-university/issues/82)
- [힌디어](https://github.com/jwasham/coding-interview-university/issues/81)
-
## 코딩 인터뷰 대학이란?
diff --git a/translations/README-pl.md b/translations/README-pl.md
index d65d90c..604b620 100644
--- a/translations/README-pl.md
+++ b/translations/README-pl.md
@@ -1,6 +1,6 @@
-# Google Interview University - Uniwersytet przygotowujący do rozmowy kwalifikacyjnej w Google
+# Coding Interview University - Uniwersytet przygotowujący do rozmowy kwalifikacyjnej w Google
-Oryginał (angielski): https://github.com/jwasham/google-interview-university
+Oryginał (angielski): https://github.com/jwasham/coding-interview-university
>**Pierwotnie, to była mała lista rzeczy do nauki, ale urosła ona do dużych rozmiarów, jak to można dzisiaj zobaczyć.
Praca w Google była główną motywacją, stąd nazwa. [Nie dostałem się do Google'a](https://googleyasheck.com/i-didnt-get-hired-heres-why/),
@@ -12,19 +12,19 @@ wliczając w to gigantów: Amazon, Microsoft, Google i Facebook.**
Tłumaczenia:
- [中文版本](translations/README-cn.md)
- Niekompletne tłumaczenia:
- - [Español](https://github.com/jwasham/google-interview-university/issues/80)
- - [हिन्दी](https://github.com/jwasham/google-interview-university/issues/81)
- - [עברית](https://github.com/jwasham/google-interview-university/issues/82)
- - [Bahasa Indonesia](https://github.com/jwasham/google-interview-university/issues/101)
- - [Arabic](https://github.com/jwasham/google-interview-university/issues/98)
- - [Vietnamese](https://github.com/jwasham/google-interview-university/issues/92)
- - [Turkish](https://github.com/jwasham/google-interview-university/issues/90)
- - [French](https://github.com/jwasham/google-interview-university/issues/89)
- - [Russian](https://github.com/jwasham/google-interview-university/issues/87)
- - [Ukrainian](https://github.com/jwasham/google-interview-university/issues/106)
- - [Brazilian Portuguese](https://github.com/jwasham/google-interview-university/issues/113)
- - [Korean](https://github.com/jwasham/google-interview-university/issues/118)
- - [Polish](https://github.com/jwasham/google-interview-university/issues/122)
+ - [Español](https://github.com/jwasham/coding-interview-university/issues/80)
+ - [हिन्दी](https://github.com/jwasham/coding-interview-university/issues/81)
+ - [עברית](https://github.com/jwasham/coding-interview-university/issues/82)
+ - [Bahasa Indonesia](https://github.com/jwasham/coding-interview-university/issues/101)
+ - [Arabic](https://github.com/jwasham/coding-interview-university/issues/98)
+ - [Vietnamese](https://github.com/jwasham/coding-interview-university/issues/92)
+ - [Turkish](https://github.com/jwasham/coding-interview-university/issues/90)
+ - [French](https://github.com/jwasham/coding-interview-university/issues/89)
+ - [Russian](https://github.com/jwasham/coding-interview-university/issues/87)
+ - [Ukrainian](https://github.com/jwasham/coding-interview-university/issues/106)
+ - [Brazilian Portuguese](https://github.com/jwasham/coding-interview-university/issues/113)
+ - [Korean](https://github.com/jwasham/coding-interview-university/issues/118)
+ - [Polish](https://github.com/jwasham/coding-interview-university/issues/122)
## Co to jest?
Jest to mój wielomiesięczny program nauczania mający na celu awans z poziomu web developera (samouka, bez studiów informatycznych)
@@ -192,7 +192,7 @@ Używam specjalniej, GitHubowej odmiany markdowna.
`git checkout -b progress`
-`git remote add jwasham https://github.com/jwasham/google-interview-university`
+`git remote add jwasham https://github.com/jwasham/coding-interview-university`
`git fetch --all`
@@ -655,7 +655,7 @@ Write code on a whiteboard or paper, not a computer. Test with some sample input
- binary search using recursion
- ### Bitwise operations
- - [ ] [Bits cheat sheet](https://github.com/jwasham/google-interview-university/blob/master/extras/cheat%20sheets/bits-cheat-cheet.pdf) - you should know many of the powers of 2 from (2^1 to 2^16 and 2^32)
+ - [ ] [Bits cheat sheet](https://github.com/jwasham/coding-interview-university/blob/master/extras/cheat%20sheets/bits-cheat-cheet.pdf) - you should know many of the powers of 2 from (2^1 to 2^16 and 2^32)
- [ ] Get a really good understanding of manipulating bits with: &, |, ^, ~, >>, <<
- [ ] [words](https://en.wikipedia.org/wiki/Word_(computer_architecture))
- [ ] Good intro:
@@ -1233,7 +1233,7 @@ You'll get more graph practice in Skiena's book (see Books section below) and th
- For even more, see "Mining Massive Datasets" video series in the Video Series section.
- [ ] Practicing the system design process: Here are some ideas to try working through on paper, each with some documentation on how it was handled in the real world:
- review: [System Design from HiredInTech](http://www.hiredintech.com/system-design/)
- - [cheat sheet](https://github.com/jwasham/google-interview-university/blob/master/extras/cheat%20sheets/system-design.pdf)
+ - [cheat sheet](https://github.com/jwasham/coding-interview-university/blob/master/extras/cheat%20sheets/system-design.pdf)
- flow:
1. Understand the problem and scope:
- define the use cases, with interviewer's help
diff --git a/translations/README-ptbr.md b/translations/README-ptbr.md
index c69a7b5..03c11d3 100644
--- a/translations/README-ptbr.md
+++ b/translations/README-ptbr.md
@@ -14,7 +14,7 @@
- [Acompanhe o progresso da tradução aqui!](https://github.com/jwasham/coding-interview-university/pull/115)
-**Tradutores**: [Marlon Aviz](https://github.com/avizmarlon) ([Contribuições](https://github.com/avizmarlon/google-interview-university/commits/ptbr-translation/translations/README-ptbr.md?author=avizmarlon)), [marceloogeda](https://github.com/marceloogeda) ([Contribuições](https://github.com/avizmarlon/google-interview-university/commits/ptbr-translation/translations/README-ptbr.md?author=marceloogeda)), [laris151](https://github.com/laris151) ([Contribuições](https://github.com/avizmarlon/google-interview-university/commits/ptbr-translation/translations/README-ptbr.md?author=laris151))
+**Tradutores**: [Marlon Aviz](https://github.com/avizmarlon) ([Contribuições](https://github.com/avizmarlon/coding-interview-university/commits/ptbr-translation/translations/README-ptbr.md?author=avizmarlon)), [marceloogeda](https://github.com/marceloogeda) ([Contribuições](https://github.com/avizmarlon/coding-interview-university/commits/ptbr-translation/translations/README-ptbr.md?author=marceloogeda)), [laris151](https://github.com/laris151) ([Contribuições](https://github.com/avizmarlon/coding-interview-university/commits/ptbr-translation/translations/README-ptbr.md?author=laris151))
Traduções:
- [中文版本](translations/README-cn.md)
@@ -650,7 +650,7 @@ Escreva código em um quadro branco ou papel, não em um computador. Teste com u
- busca binária usando recursividade
- ### Lógica binária
- - [ ] [Bits cheat sheet](https://github.com/jwasham/google-interview-university/blob/master/extras/cheat%20sheets/bits-cheat-cheet.pdf) (Folha de consultas sobre Bits) - você deve conhecer várias das potências de 2 de (2^1 até 2^16 e 2^32)
+ - [ ] [Bits cheat sheet](https://github.com/jwasham/coding-interview-university/blob/master/extras/cheat%20sheets/bits-cheat-cheet.pdf) (Folha de consultas sobre Bits) - você deve conhecer várias das potências de 2 de (2^1 até 2^16 e 2^32)
- [ ] Consiga um bom entendimento sobre manipulação de bits com: &, |, ^, ~, >>, <<
- [ ] [words](https://en.wikipedia.org/wiki/Word_(computer_architecture)) (palavras)
- [ ] Boa introdução:
diff --git a/translations/README-uk.md b/translations/README-uk.md
index 9f65299..97e58a9 100644
--- a/translations/README-uk.md
+++ b/translations/README-uk.md
@@ -1,4 +1,4 @@
-# Google Interview University
+# Coding Interview University
Original: [англійською](README.md)
@@ -171,7 +171,7 @@ Original: [англійською](README.md)
`git checkout -b progress`
-`git remote add jwasham https://github.com/jwasham/google-interview-university`
+`git remote add jwasham https://github.com/jwasham/coding-interview-university`
`git fetch --all`
diff --git a/translations/README-vi.md b/translations/README-vi.md
index cc4ed15..9cc1d04 100644
--- a/translations/README-vi.md
+++ b/translations/README-vi.md
@@ -197,7 +197,7 @@ Ok, bây giờ bạn có thể bắt đầu:
- Fork repo này.
- Clone bản fork của bạn về máy tính cá nhân.
```
- git clone https://github.com//google-interview-university
+ git clone https://github.com//coding-interview-university
```
- Chạy các dòng lệnh sau
- Tạo một branch mới để đánh dấu tiến độ của bạn: