Merge pull request #265 from phondanai/th-translations
Add more Thai translations
This commit is contained in:
commit
a8e57ae751
@ -153,27 +153,26 @@
|
|||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
## Why use it?
|
## ทำไมต้องใช้?
|
||||||
|
|
||||||
When I started this project, I didn't know a stack from a heap, didn't know Big-O anything, anything about trees, or how to
|
ตอนเริ่มโครงการนี้, ผมไม่รู้จัก stack จาก heap เสียด้วยซ้ำ, หรือแม้กระทั้ง Big-O, โครงสร้างต้นไม้
|
||||||
traverse a graph. If I had to code a sorting algorithm, I can tell ya it wouldn't have been very good.
|
หรือวิธีการเข้าถึงข้อมูลในโครงสร้างกราฟ ถ้าผมต้องได้เขียนโค้ดสำหรับจัดเรียงข้อมูล ผมบอกได้เลยว่ามันต้องออกมาไม่ดีแน่ๆ
|
||||||
Every data structure I've ever used was built into the language, and I didn't know how they worked
|
ทุกๆ โครงสร้างข้อมูลที่เคยใช้ก็ใช้สิ่งที่มีมากับตัวภาษาโปรแกรมที่ใช้ และผมไม่รู้ด้วยซ้ำว่ามันทำงานยังไงในระดับลึกๆ
|
||||||
under the hood at all. I've never had to manage memory unless a process I was running would give an "out of
|
ผมไม่เคยจำเป็นต้องสนใจการเขียนเพื่อให้ใช้หน่วยความจำให้มีประสิทธิภาพ จนกระทั่งระบบเตือนมาโน่นแหละว่า "หน่วยความจำหมด"
|
||||||
memory" error, and then I'd have to find a workaround. I've used a few multidimensional arrays in my life and
|
จึงจะหาวิธีแก้ขัด ผมใช้โครงสร้างแถวลำดับ (Arrays) หลายมิติน้อยครั้งมากๆ เมื่อเทียบกับโครงสร้างแถวลำดับ (Arrays) แบบปกติ แต่ผมก็ไม่เคยสร้างโครงสร้างข้อมูลขึ้นมาใช้เองเลยสักครั้ง
|
||||||
thousands of associative arrays, but I've never created data structures from scratch.
|
|
||||||
|
|
||||||
It's a long plan. It may take you months. If you are familiar with a lot of this already it will take you a lot less time.
|
นี่คือแผนอันยาวไกล คุณอาจต้องใช้เวลาหลายเดือน ถ้าคุณมีความคุ้นเคยมาก่อนหน้านี้ ก็จะทำให้คุณใช้เวลาน้อยลง
|
||||||
|
|
||||||
## How to use it
|
## ใช้อย่างไร
|
||||||
|
|
||||||
Everything below is an outline, and you should tackle the items in order from top to bottom.
|
ทุกสิ่งที่อยู่ด้านล่างนี้เป็นเพียงเค้าโครงเท่านั้น และคุณต้องศึกษาสิ่งเหล่านี้จากบนลงล่างตามลำดับ
|
||||||
|
|
||||||
I'm using Github's special markdown flavor, including tasks lists to check progress.
|
ผมใช้ เครื่องมือของ Github markdown สำหรับทำ check list เพื่อไว้ดูความก้าวหน้าในแต่ละหัวข้อ
|
||||||
|
|
||||||
**Create a new branch so you can check items like this, just put an x in the brackets: [x]**
|
**สร้าง branch ใหม่ และคุณจะสามารถติ๊กแต่ละรายการโดยใช้วิธี, เพิ่มอักขระ x ข้างในวงเล็บก้ามปูแบบนี้: [x]**
|
||||||
|
|
||||||
|
|
||||||
Fork a branch and follow the commands below
|
Fork branch และใช้คำสั่งดังนี้
|
||||||
|
|
||||||
`git checkout -b progress`
|
`git checkout -b progress`
|
||||||
|
|
||||||
@ -181,7 +180,7 @@ I'm using Github's special markdown flavor, including tasks lists to check progr
|
|||||||
|
|
||||||
`git fetch --all`
|
`git fetch --all`
|
||||||
|
|
||||||
Mark all boxes with X after you completed your changes
|
เลือกทุกกล่องโดยใช้ X หลังจากที่คุณศึกษาเสร็จแล้ว
|
||||||
|
|
||||||
`git add . `
|
`git add . `
|
||||||
|
|
||||||
@ -191,23 +190,23 @@ I'm using Github's special markdown flavor, including tasks lists to check progr
|
|||||||
|
|
||||||
`git push --force `
|
`git push --force `
|
||||||
|
|
||||||
[More about Github-flavored markdown](https://guides.github.com/features/mastering-markdown/#GitHub-flavored-markdown)
|
[เพิ่มเติมเกี่ยวกับเครื่องมือ markdown ของ Github](https://guides.github.com/features/mastering-markdown/#GitHub-flavored-markdown)
|
||||||
|
|
||||||
## Don't feel you aren't smart enough
|
## ห้ามรู้สึกว่าคุณไม่ฉลาดพอ
|
||||||
- Successful software engineers are smart, but many have an insecurity that they aren't smart enough.
|
- วิศวกรซอฟต์แวร์ที่ประสบความสำเร็จนั้นเป็นบุคคลที่ฉลาด แต่หลายคนก็จิตตก คิดว่าตัวเองยังฉลาดไม่พอ
|
||||||
- [The myth of the Genius Programmer](https://www.youtube.com/watch?v=0SARbwvhupQ)
|
- [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)
|
- [It's Dangerous to Go Alone: Battling the Invisible Monsters in Tech](https://www.youtube.com/watch?v=1i8ylq4j_EY)
|
||||||
|
|
||||||
## About Video Resources
|
## เกี่ยวกับแหล่งที่มาของวีดีโอ
|
||||||
|
|
||||||
Some videos are available only by enrolling in a Coursera, EdX, or Lynda.com class. These are called MOOCs.
|
บางวิดีโอนั้น สามารถเข้าถึงได้เฉพาะการลงทะเบียนเรียนใน Coursera, EdX หรือ Lynda.com ซึ่งเรียกว่า MOOCs
|
||||||
Sometimes the classes are not in session so you have to wait a couple of months, so you have no access. Lynda.com courses are not free.
|
บางครั้งคอร์สที่คุณต้องการเข้าไปดูวิดีโอนั้นยังไม่เปิด คุณจำเป็นต้องรอประมาณสองสามเดือน ส่วน Lynda.com นั้นต้องเสียเงิน
|
||||||
|
|
||||||
I'd appreciate your help to add free and always-available public sources, such as YouTube videos to accompany the online course videos.
|
ผมยินดีหากคุณช่วยเพิ่มแหล่งความรู้ที่ฟรีและสามารถเข้าถึงได้แบบสาธารณะ เช่น วิดีโอใน YouTube ที่เป็นวิดีโอที่ใช้ในคอร์สเรียนนั้นๆ
|
||||||
I like using university lectures.
|
ซึ่งผมชอบใช้บทเรียนที่มาจากมหาวิทยาลัยต่างๆ
|
||||||
|
|
||||||
|
|
||||||
## Interview Process & General Interview Prep
|
## กระบวนการการสัมภาษณ์และการเตรียมตัว
|
||||||
|
|
||||||
- [ ] [ABC: Always Be Coding](https://medium.com/always-be-coding/abc-always-be-coding-d5f8051afce2#.4heg8zvm4)
|
- [ ] [ABC: Always Be Coding](https://medium.com/always-be-coding/abc-always-be-coding-d5f8051afce2#.4heg8zvm4)
|
||||||
- [ ] [Whiteboarding](https://medium.com/@dpup/whiteboarding-4df873dbba2e#.hf6jn45g1)
|
- [ ] [Whiteboarding](https://medium.com/@dpup/whiteboarding-4df873dbba2e#.hf6jn45g1)
|
||||||
@ -222,9 +221,9 @@ Sometimes the classes are not in session so you have to wait a couple of months,
|
|||||||
- [ ] [Software Engineer Interview Unleashed (paid course)](https://www.udemy.com/software-engineer-interview-unleashed):
|
- [ ] [Software Engineer Interview Unleashed (paid course)](https://www.udemy.com/software-engineer-interview-unleashed):
|
||||||
- Learn how to make yourself ready for software engineer interviews from a former Google interviewer.
|
- Learn how to make yourself ready for software engineer interviews from a former Google interviewer.
|
||||||
|
|
||||||
## Pick One Language for the Interview
|
## เลือกภาษาสำหรับการสัมภาษณ์
|
||||||
|
|
||||||
You can use a language you are comfortable in to do the coding part of the interview, but for large companies, these are solid choices:
|
คุณสามารถเลือกภาษาที่คุณถนัดในการสัมภาษณ์ในส่วนของการเขียนโปรแกรม แต่สำหรับบริษัทใหญ่ๆ ภาษาเหล่านี้คือตัวเลือกที่ควรใช้:
|
||||||
|
|
||||||
- C++
|
- C++
|
||||||
- Java
|
- Java
|
||||||
@ -237,7 +236,7 @@ You could also use these, but read around first. There may be caveats:
|
|||||||
|
|
||||||
You need to be very comfortable in the language and be knowledgeable.
|
You need to be very comfortable in the language and be knowledgeable.
|
||||||
|
|
||||||
Read more about choices:
|
อ่านเพิ่มเติม สำหรับภาษาที่ใช้เลือกสอบ:
|
||||||
- http://www.byte-by-byte.com/choose-the-right-language-for-your-coding-interview/
|
- http://www.byte-by-byte.com/choose-the-right-language-for-your-coding-interview/
|
||||||
- http://blog.codingforinterviews.com/best-programming-language-jobs/
|
- http://blog.codingforinterviews.com/best-programming-language-jobs/
|
||||||
|
|
||||||
@ -245,11 +244,11 @@ Read more about choices:
|
|||||||
|
|
||||||
You'll see some C, C++, and Python learning included below, because I'm learning. There are a few books involved, see the bottom.
|
You'll see some C, C++, and Python learning included below, because I'm learning. There are a few books involved, see the bottom.
|
||||||
|
|
||||||
## Book List
|
## รายชื่อหนังสือ
|
||||||
|
|
||||||
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: Secrets to Landing Your Next Job, 2nd Edition](http://www.wiley.com/WileyCDA/WileyTitle/productCd-047012167X.html)
|
||||||
- answers in C++ and Java
|
- answers in C++ and Java
|
||||||
@ -258,14 +257,14 @@ This is a shorter list than what I used. This is abbreviated to save you time.
|
|||||||
- [ ] [Cracking the Coding Interview, 6th Edition](http://www.amazon.com/Cracking-Coding-Interview-6th-Programming/dp/0984782850/)
|
- [ ] [Cracking the Coding Interview, 6th Edition](http://www.amazon.com/Cracking-Coding-Interview-6th-Programming/dp/0984782850/)
|
||||||
- answers in Java
|
- answers in Java
|
||||||
|
|
||||||
If you have tons of extra time:
|
หากคุณมีเวลาพอ:
|
||||||
|
|
||||||
- [ ] [Elements of Programming Interviews (C++ version)](https://www.amazon.com/Elements-Programming-Interviews-Insiders-Guide/dp/1479274836)
|
- [ ] [Elements of Programming Interviews (C++ version)](https://www.amazon.com/Elements-Programming-Interviews-Insiders-Guide/dp/1479274836)
|
||||||
- [ ] [Elements of Programming Interviews (Java version)](https://www.amazon.com/Elements-Programming-Interviews-Java-Insiders/dp/1517435803/)
|
- [ ] [Elements of Programming Interviews (Java version)](https://www.amazon.com/Elements-Programming-Interviews-Java-Insiders/dp/1517435803/)
|
||||||
|
|
||||||
### Computer Architecture
|
### สถาปัตยกรรม คอมพิวเตอร์
|
||||||
|
|
||||||
If short on time:
|
หากคุณมีเวลาน้อย:
|
||||||
|
|
||||||
- [ ] [Write Great Code: Volume 1: Understanding the Machine](https://www.amazon.com/Write-Great-Code-Understanding-Machine/dp/1593270038)
|
- [ ] [Write Great Code: Volume 1: Understanding the Machine](https://www.amazon.com/Write-Great-Code-Understanding-Machine/dp/1593270038)
|
||||||
- The book was published in 2004, and is somewhat outdated, but it's a terrific resource for understanding a computer in brief.
|
- The book was published in 2004, and is somewhat outdated, but it's a terrific resource for understanding a computer in brief.
|
||||||
@ -281,55 +280,55 @@ If short on time:
|
|||||||
- Chapter 10 - Instruction Set Architecture
|
- Chapter 10 - Instruction Set Architecture
|
||||||
- Chapter 11 - Memory Architecture and Organization
|
- Chapter 11 - Memory Architecture and Organization
|
||||||
|
|
||||||
If you have more time (I want this book):
|
หากคุณมีเวลาพอ (ผมอยากได้เล่มนี้):
|
||||||
|
|
||||||
- [ ] [Computer Architecture, Fifth Edition: A Quantitative Approach](https://www.amazon.com/dp/012383872X/)
|
- [ ] [Computer Architecture, Fifth Edition: A Quantitative Approach](https://www.amazon.com/dp/012383872X/)
|
||||||
- For a richer, more up-to-date (2011), but longer treatment
|
- For a richer, more up-to-date (2011), 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.
|
**คุณต้องเลือกภาษาที่จะใช้สัมภาษณ์ (ดูด้านบน).** นี่หนังสือที่ผมแนะนำแยกตามแต่ละภาษา ผมมีไม่ครบทุกภาษา และผมยินดีที่จะเพิ่มในภายหลัง
|
||||||
|
|
||||||
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.
|
**คุณไม่ต้องดูวิดีสอนใดๆ ในนี้ก็ได้**, นอกเสียจากคุณต้องการจะทบทวน
|
||||||
|
|
||||||
[Additional language-specific resources here.](programming-language-resources.md)
|
[แหล่งทรัพยกรอื่นๆ ที่เกี่ยวข้อง](programming-language-resources.md)
|
||||||
|
|
||||||
### C++
|
### C++
|
||||||
|
|
||||||
I haven't read these two, but they are highly rated and written by Sedgewick. He's awesome.
|
ผมยังไม่เคยอ่านสองเล่มนี้ แต่สองเล่มนี้แนะนำอย่างแรงและมีการรีวิวโดย Sedgewick พ่อหนุ่มคนนี้เค้าเจ๋งนะ
|
||||||
|
|
||||||
- [ ] [Algorithms in C++, Parts 1-4: Fundamentals, Data Structure, Sorting, Searching](https://www.amazon.com/Algorithms-Parts-1-4-Fundamentals-Structure/dp/0201350882/)
|
- [ ] [Algorithms in C++, Parts 1-4: Fundamentals, Data Structure, Sorting, Searching](https://www.amazon.com/Algorithms-Parts-1-4-Fundamentals-Structure/dp/0201350882/)
|
||||||
- [ ] [Algorithms in C++ Part 5: Graph Algorithms](https://www.amazon.com/Algorithms-Part-Graph-3rd-Pt-5/dp/0201361183/)
|
- [ ] [Algorithms in C++ Part 5: Graph Algorithms](https://www.amazon.com/Algorithms-Part-Graph-3rd-Pt-5/dp/0201361183/)
|
||||||
|
|
||||||
If you have a better recommendation for C++, please let me know. Looking for a comprehensive resource.
|
ถ้าคุณมีเล่มอื่นที่ดีกว่าอยากแนะนำสำหรับ C++ บอกให้ผมทราบได้เลย ตอนนี้กำลังหาแหล่งที่มีเนื้อหาครอบคลุมทุกด้านอยู่
|
||||||
|
|
||||||
### Java
|
### Java
|
||||||
|
|
||||||
- [ ] [Algorithms (Sedgewick and Wayne)](https://www.amazon.com/Algorithms-4th-Robert-Sedgewick/dp/032157351X/)
|
- [ ] [Algorithms (Sedgewick and Wayne)](https://www.amazon.com/Algorithms-4th-Robert-Sedgewick/dp/032157351X/)
|
||||||
- videos with book content (and Sedgewick!):
|
- วิดีโอสำหรับหนังสือเหล่านี้ (and Sedgewick!):
|
||||||
- [Algorithms I](https://www.youtube.com/user/algorithmscourses/playlists?view=50&sort=dd&shelf_id=2)
|
- [Algorithms I](https://www.youtube.com/user/algorithmscourses/playlists?view=50&sort=dd&shelf_id=2)
|
||||||
- [Algorithms II](https://www.youtube.com/user/algorithmscourses/playlists?shelf_id=3&view=50&sort=dd)
|
- [Algorithms II](https://www.youtube.com/user/algorithmscourses/playlists?shelf_id=3&view=50&sort=dd)
|
||||||
|
|
||||||
OR:
|
หรือ:
|
||||||
|
|
||||||
- [ ] [Data Structures and Algorithms in Java](https://www.amazon.com/Data-Structures-Algorithms-Michael-Goodrich/dp/1118771338/)
|
- [ ] [Data Structures and Algorithms in Java](https://www.amazon.com/Data-Structures-Algorithms-Michael-Goodrich/dp/1118771338/)
|
||||||
- by Goodrich, Tamassia, Goldwasser
|
- โดย Goodrich, Tamassia, Goldwasser
|
||||||
- used as optional text for CS intro course at UC Berkeley
|
- ใช้เป็นหนังสือเสริมในหลักสูตร CS intro ที่ UC Berkeley
|
||||||
- see my book report on the Python version below. This book covers the same topics.
|
- see my book report on the Python version below. This book covers the same topics.
|
||||||
|
|
||||||
### Python
|
### Python
|
||||||
|
|
||||||
- [ ] [Data Structures and Algorithms in Python](https://www.amazon.com/Structures-Algorithms-Python-Michael-Goodrich/dp/1118290275/)
|
- [ ] [Data Structures and Algorithms in Python](https://www.amazon.com/Structures-Algorithms-Python-Michael-Goodrich/dp/1118290275/)
|
||||||
- by Goodrich, Tamassia, Goldwasser
|
- โดย Goodrich, Tamassia, Goldwasser
|
||||||
- I loved this book. It covered everything and more.
|
- ผมรักเล่มนี้เลย เล่มนี้ครอบคลุมทุกสิ่งและอีกมากมาย
|
||||||
- Pythonic code
|
- Pythonic code
|
||||||
- my glowing book report: https://startupnextdoor.com/book-report-data-structures-and-algorithms-in-python/
|
- my glowing book report: https://startupnextdoor.com/book-report-data-structures-and-algorithms-in-python/
|
||||||
|
|
||||||
|
|
||||||
### 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:**
|
**หลายคนแนะนำหนังสือเหล่านี้ แต่ผมคิดว่ามันนอกเหนือขอบเขตไปหน่อย หรืออย่างน้อยคุณต้องมีประสบการณ์ในวิศวกรรมซอฟต์แวร์หลายปีและคาดหวังการสัมภาษณ์ที่ยากๆ:**
|
||||||
|
|
||||||
- [ ] [Algorithm Design Manual](http://www.amazon.com/Algorithm-Design-Manual-Steven-Skiena/dp/1849967202) (Skiena)
|
- [ ] [Algorithm Design Manual](http://www.amazon.com/Algorithm-Design-Manual-Steven-Skiena/dp/1849967202) (Skiena)
|
||||||
- As a review and problem recognition
|
- As a review and problem recognition
|
||||||
@ -368,35 +367,35 @@ OR:
|
|||||||
- Would rather spend time on coding problems from another book or online coding problems.
|
- Would rather spend time on coding problems from another book or online coding problems.
|
||||||
|
|
||||||
|
|
||||||
## Before you Get Started
|
## ก่อนที่จะเริ่มต้น
|
||||||
|
|
||||||
This list grew over many months, and yes, it kind of got out of hand.
|
This list grew over many months, and yes, it kind of got out of hand.
|
||||||
|
|
||||||
Here are some mistakes I made so you'll have a better experience.
|
Here are some mistakes I made so you'll have a better experience.
|
||||||
|
|
||||||
### 1. You Won't Remember it All
|
### 1. คุณไม่สามารถจำได้ทุกสิ่งอย่าง
|
||||||
|
|
||||||
I watched hours of videos and took copious notes, and months later there was much I didn't remember. I spent 3 days going
|
ผมดูวิดีโอหลายชั่วโมงและจดโน้ตไว้ หลายเดือนต่อมาพบว่า ผมจำสิ่งต่างๆ ได้น้อยมา ผมใช้เวลา 3 เดือน
|
||||||
through my notes and making flashcards so I could review.
|
อ่านโน๊ตและทำ flashcard ซึ่งนั่นทำให้ผมได้ทบทวนเนื้อหา
|
||||||
|
|
||||||
Read please so you won't make my mistakes:
|
โปรดอ่านตรงนี้ก่อนและคุณจะได้ไม่ต้องทำผิดแบบผม:
|
||||||
|
|
||||||
[Retaining Computer Science Knowledge](https://startupnextdoor.com/retaining-computer-science-knowledge/)
|
[Retaining Computer Science Knowledge](https://startupnextdoor.com/retaining-computer-science-knowledge/)
|
||||||
|
|
||||||
### 2. Use Flashcards
|
### 2. ใช้ Flashcards
|
||||||
|
|
||||||
To solve the problem, I made a little flashcards site where I could add flashcards of 2 types: general and code.
|
ในการแก้ปัญหานี้ ผมได้สร้างเว็บ flashcard เล็กๆ โดยมี 2 ชนิดคือ: ทั่วไป และ โค้ด
|
||||||
Each card has different formatting.
|
แต่ละการ์ดจะมีรูปแบบต่างกัน
|
||||||
|
|
||||||
I made a mobile-first website so I could review on my phone and tablet, wherever I am.
|
ผมทำเว็บที่รองรับอุกรณ์มือถือ ซึ่งผมจะได้สามารถทบทวนในโทรศัพท์หรือแทบเล็ต ที่ใดก็ได้
|
||||||
|
|
||||||
Make your own for free:
|
คุณสามารถทำได้แบบฟรีๆ:
|
||||||
|
|
||||||
- [Flashcards site repo](https://github.com/jwasham/computer-science-flash-cards)
|
- [Flashcards site repo](https://github.com/jwasham/computer-science-flash-cards)
|
||||||
- [My flash cards database (old - 1200 cards)](https://github.com/jwasham/computer-science-flash-cards/blob/master/cards-jwasham.db):
|
- [คลัง flash card ของผม (เก่า - 1200 cards)](https://github.com/jwasham/computer-science-flash-cards/blob/master/cards-jwasham.db):
|
||||||
- [My flash cards database (new - 1800 cards)](https://github.com/jwasham/computer-science-flash-cards/blob/master/cards-jwasham-extreme.db):
|
- [คลัง flash cards ของผม (ใหม่- 1800 cards)](https://github.com/jwasham/computer-science-flash-cards/blob/master/cards-jwasham-extreme.db):
|
||||||
|
|
||||||
Keep in mind I went overboard and have cards covering everything from assembly language and Python trivia to machine learning and statistics. It's way too much for what's required.
|
คลังการ์ดของผมนั้น เนื้อหาจะครอบคลุมเกินเนื้อหาหลัก ตั้งแต่ภาษา assembly และ Python จนไปถึง machine learning และ สถิติ ซึ่งมันก็เกินกว่าที่เราต้องการ
|
||||||
|
|
||||||
**Note on flashcards:** The first time you recognize you know the answer, don't mark it as known. You have to see the
|
**Note on flashcards:** The first time you recognize you know the answer, don't mark it as known. You have to see the
|
||||||
same card and answer it several times correctly before you really know it. Repetition will put that knowledge deeper in
|
same card and answer it several times correctly before you really know it. Repetition will put that knowledge deeper in
|
||||||
@ -407,68 +406,68 @@ It's user-friendly, available on all platforms and has a cloud sync system. It c
|
|||||||
|
|
||||||
My flashcard database in Anki format: https://ankiweb.net/shared/info/25173560 (thanks [@xiewenya](https://github.com/xiewenya))
|
My flashcard database in Anki format: https://ankiweb.net/shared/info/25173560 (thanks [@xiewenya](https://github.com/xiewenya))
|
||||||
|
|
||||||
### 3. Review, review, review
|
### 3. ทบทวน, ทบทวน, ทบทวน
|
||||||
|
|
||||||
I keep a set of cheat sheets on ASCII, OSI stack, Big-O notations, and more. I study them when I have some spare time.
|
I keep a set of cheat sheets on ASCII, OSI stack, Big-O notations, and more. I study them when I have some spare time.
|
||||||
|
|
||||||
Take a break from programming problems for a half hour and go through your flashcards.
|
Take a break from programming problems for a half hour and go through your flashcards.
|
||||||
|
|
||||||
### 4. Focus
|
### 4. เพ่งสมาธิ
|
||||||
|
|
||||||
There are a lot of distractions that can take up valuable time. Focus and concentration are hard.
|
There are a lot of distractions that can take up valuable time. Focus and concentration are hard.
|
||||||
|
|
||||||
## What you won't see covered
|
## อะไรที่ไม่ครอบคลุม
|
||||||
|
|
||||||
These are prevalent technologies but not part of this study plan:
|
เทคโนโลยีเหล่านี้ถูกใช้แพร่หลาย แต่จะไม่อยู่ในแผนการเรียนนี้ ได้แก่:
|
||||||
|
|
||||||
- SQL
|
- SQL
|
||||||
- Javascript
|
- Javascript
|
||||||
- HTML, CSS, and other front-end technologies
|
- HTML, CSS, และ เทคโนโลยี front-end อื่นๆ
|
||||||
|
|
||||||
## The Daily Plan
|
## แผนของแต่ละวัน
|
||||||
|
|
||||||
Some subjects take one day, and some will take multiple days. Some are just learning with nothing to implement.
|
บางหัวข้อใช้เวลาวันเดียว บ้างใช้หลายวัน และบางอันนั้นเป็นการเรียนแบบไม่ได้เขียนจริง
|
||||||
|
|
||||||
Each day I take one subject from the list below, watch videos about that subject, and write an implementation in:
|
แต่ละวัน ผมศึกษาหนึ่งหัวข้อจากรายการด้านล่าง ดูวิดีโอเกี่ยวกับห้อข้อนั้นๆ และเขียนโปรแกรมที่เกี่ยวข้องลงไป:
|
||||||
- C - using structs and functions that take a struct * and something else as args.
|
- C - using structs and functions that take a struct * and something else as args.
|
||||||
- C++ - without using built-in types
|
- C++ - without using built-in types
|
||||||
- C++ - using built-in types, like STL's std::list for a linked list
|
- C++ - using built-in types, like STL's std::list for a linked list
|
||||||
- Python - using built-in types (to keep practicing Python)
|
- Python - using built-in types (to keep practicing Python)
|
||||||
- and write tests to ensure I'm doing it right, sometimes just using simple assert() statements
|
- and write tests to ensure I'm doing it right, sometimes just using simple assert() statements
|
||||||
- You may do Java or something else, this is just my thing.
|
- คุณอาจใช้ Java หรือ ภาษาอื่นๆ ได้เช่นกัน ผมใช้เฉพาะข้างต้นนี้
|
||||||
|
|
||||||
You don't need all these. You need only [one language for the interview](#pick-one-language-for-the-interview).
|
คุณไม่จำเป็นต้องฝึกทั้งหมดนี้ คุณต้องการเฉพาะ [ภาษาเดียวที่จะใช้สอบสัมภาษณ์](#pick-one-language-for-the-interview).
|
||||||
|
|
||||||
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))
|
||||||
- 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)
|
- 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.
|
ผมอาจจะมีเวลาไม่พอที่จะทำทั้งหมดทุกหัวข้อ แต่ผมก็ลองทำ
|
||||||
|
|
||||||
You can see my code here:
|
คุณสามารถดูโค้ดของผมได้:
|
||||||
- [C] (https://github.com/jwasham/practice-c)
|
- [C] (https://github.com/jwasham/practice-c)
|
||||||
- [C++] (https://github.com/jwasham/practice-cpp)
|
- [C++] (https://github.com/jwasham/practice-cpp)
|
||||||
- [Python] (https://github.com/jwasham/practice-python)
|
- [Python] (https://github.com/jwasham/practice-python)
|
||||||
|
|
||||||
You don't need to memorize the guts of every algorithm.
|
You don't need to memorize the guts of every algorithm.
|
||||||
|
|
||||||
Write code on a whiteboard or paper, not a computer. Test with some sample inputs. Then test it out on a computer.
|
เขียนโค้ดลงกระดานหรือกระดาษ ไม่ใช่ในเครื่องคอมพิวเตอร์ ทดสอบโดยใช้ข้อมูลตัวอย่าง จากนั้นลองรันจริงๆ ในเครื่องคอมพิวเตอร์
|
||||||
|
|
||||||
## Prerequisite Knowledge
|
## ความรู้พื้นฐานที่จำเป็น
|
||||||
|
|
||||||
- [ ] **Learn C**
|
- [ ] **เรียนรู้ภาษา C**
|
||||||
- C is everywhere. You'll see examples in books, lectures, videos, *everywhere* while you're studying.
|
- ภาษา C มีอยู่ทุกหนแห่ง คุณจะเห็นตัวอย่างต่างๆ ในหนังสือ บทเรียน วิดีโอ *ทุกหนแห่ง* ในขณะที่คุณศึกษาอยู่
|
||||||
- [ ] [C Programming Language, Vol 2](https://www.amazon.com/Programming-Language-Brian-W-Kernighan/dp/0131103628)
|
- [ ] [C Programming Language, Vol 2](https://www.amazon.com/Programming-Language-Brian-W-Kernighan/dp/0131103628)
|
||||||
- This is a short book, but it will give you a great handle on the C language and if you practice it a little
|
- This is a short book, but it will give you a great handle on the C language and if you practice it a little
|
||||||
you'll quickly get proficient. Understanding C helps you understand how programs and memory work.
|
you'll quickly get proficient. Understanding C helps you understand how programs and memory work.
|
||||||
- [answers to questions](https://github.com/lekkas/c-algorithms)
|
- [answers to questions](https://github.com/lekkas/c-algorithms)
|
||||||
|
|
||||||
- [ ] **How computers process a program:**
|
- [ ] **คอมพิวเตอร์จัดการกับโปรแกรมอย่างไร:**
|
||||||
- [ ] [How does CPU execute program (video)](https://www.youtube.com/watch?v=42KTvGYQYnA)
|
- [ ] [How does CPU execute program (video)](https://www.youtube.com/watch?v=42KTvGYQYnA)
|
||||||
- [ ] [Machine Code Instructions (video)](https://www.youtube.com/watch?v=Mv2XQgpbTNE)
|
- [ ] [Machine Code Instructions (video)](https://www.youtube.com/watch?v=Mv2XQgpbTNE)
|
||||||
|
|
||||||
## Algorithmic complexity / Big-O / Asymptotic analysis
|
## ความซับซ้อนของขั้นตอนวิธี / Big-O / การวิเคราะห์ Asymptotic
|
||||||
- nothing to implement
|
- nothing to implement
|
||||||
- [ ] [Harvard CS50 - Asymptotic Notation (video)](https://www.youtube.com/watch?v=iOq5kSKqeR4)
|
- [ ] [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 Notations (general quick tutorial) (video)](https://www.youtube.com/watch?v=V6mKVRU1evU)
|
||||||
@ -492,9 +491,9 @@ Write code on a whiteboard or paper, not a computer. Test with some sample input
|
|||||||
If some of the lectures are too mathy, you can jump down to the bottom and
|
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.
|
watch the discrete mathematics videos to get the background knowledge.
|
||||||
|
|
||||||
## Data Structures
|
## โครงสร้างข้อมูล
|
||||||
|
|
||||||
- ### Arrays
|
- ### แถวลำดับ (Arrays)
|
||||||
- Implement an automatically resizing vector.
|
- Implement an automatically resizing vector.
|
||||||
- [ ] Description:
|
- [ ] Description:
|
||||||
- [Arrays (video)](https://www.coursera.org/learn/data-structures/lecture/OsBSF/arrays)
|
- [Arrays (video)](https://www.coursera.org/learn/data-structures/lecture/OsBSF/arrays)
|
||||||
@ -1770,7 +1769,7 @@ software engineer, and to be aware of certain technologies and algorithms, so yo
|
|||||||
- ### Discrete math
|
- ### Discrete math
|
||||||
- see videos below
|
- see videos below
|
||||||
|
|
||||||
- ### Machine Learning
|
- ### การเรียนรู้ของเครื่อง (Machine Learning)
|
||||||
- [ ] Why ML?
|
- [ ] Why ML?
|
||||||
- [ ] [How Google Is Remaking Itself As A Machine Learning First Company](https://backchannel.com/how-google-is-remaking-itself-as-a-machine-learning-first-company-ada63defcb70)
|
- [ ] [How Google Is Remaking Itself As A Machine Learning First Company](https://backchannel.com/how-google-is-remaking-itself-as-a-machine-learning-first-company-ada63defcb70)
|
||||||
- [ ] [Large-Scale Deep Learning for Intelligent Computer Systems (video)](https://www.youtube.com/watch?v=QSaZGT4-6EY)
|
- [ ] [Large-Scale Deep Learning for Intelligent Computer Systems (video)](https://www.youtube.com/watch?v=QSaZGT4-6EY)
|
||||||
@ -1933,7 +1932,7 @@ Sit back and enjoy. "Netflix and skill" :P
|
|||||||
|
|
||||||
- [ ] [Graph Theory by Sarada Herke (67 videos)](https://www.youtube.com/user/DrSaradaHerke/playlists?shelf_id=5&view=50&sort=dd)
|
- [ ] [Graph Theory by Sarada Herke (67 videos)](https://www.youtube.com/user/DrSaradaHerke/playlists?shelf_id=5&view=50&sort=dd)
|
||||||
|
|
||||||
## Computer Science Courses
|
## หลักสูตร วิทยาการคอมพิวเตอร์
|
||||||
|
|
||||||
- [Directory of Online CS Courses](https://github.com/open-source-society/computer-science)
|
- [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)
|
- [Directory of CS Courses (many with online lectures)](https://github.com/prakhar1989/awesome-courses)
|
||||||
|
Loading…
x
Reference in New Issue
Block a user