base on 立党零基础转码笔记 # 立党零基础转码笔记 Github Page只读版:[https://lidangzzz.github.io/How-to-run/](https://lidangzzz.github.io/How-to-run/) ## 第一章 零基础转码篇 1. 你的第一门编程语言,Python。Coursera上的Python for Everbody (UMich):[https://www.coursera.org/learn/python?specialization=python](https://www.coursera.org/learn/python?specialization=python) 2. 你的第二门也是最重要的Computer Science课程,数据结构和算法 (UCSD):[https://www.coursera.org/specializations/data-structures-algorithms?=#courses](https://www.coursera.org/specializations/data-structures-algorithms?=#courses) 3. 前端入门(Reactjs): 1. Meta的Coursera零基础前端转码课:[https://www.coursera.org/professional-certificates/meta-front-end-developer](https://www.coursera.org/professional-certificates/meta-front-end-developer) 2. 如果只看文字版,推荐W3CSchool教程: 1. HTML:[https://www.w3schools.com/html/default.asp](https://www.w3schools.com/html/default.asp) 2. CSS:[https://www.w3schools.com/css/default.asp](https://www.w3schools.com/css/default.asp) 3. JavaScript:[https://www.w3schools.com/js/default.asp](https://www.w3schools.com/js/default.asp) 3. 其他参考文档: 1. Reactjs官方文档:[https://reactjs.org/tutorial/tutorial.html](https://reactjs.org/tutorial/tutorial.html) 2. MDN文档(权威JavaScript、CSS、HTML文档):[https://developer.mozilla.org/en-US/](https://developer.mozilla.org/en-US/) 3. TypeScript文档:[https://www.typescriptlang.org/docs/](https://www.typescriptlang.org/docs/) 4. 互动的codeing bootcamp:[https://www.freecodecamp.org/learn/front-end-development-libraries/#bootstrap](https://www.freecodecamp.org/learn/front-end-development-libraries/#bootstrap) 4. 后端入门: 1. 后端语言(个人强烈且只推荐Java)Java(Duke):[https://www.coursera.org/specializations/object-oriented-programming](https://www.coursera.org/specializations/object-oriented-programming) 2. 后端框架(推荐Springboot)Springboot:[https://www.youtube.com/watch?v=9SGDpanrc8U](https://www.youtube.com/watch?v=9SGDpanrc8U) 3. 数据库(推荐PostgreSQL,同时可以学MongoDB、Redis、MySQL等)SQL与PostgreSQL:[https://www.coursera.org/specializations/postgresql-for-everybody?#courses](https://www.coursera.org/specializations/postgresql-for-everybody?#courses) 4. Amazon Web Service:[https://www.youtube.com/watch?v=3hLmDS179YE](https://www.youtube.com/watch?v=3hLmDS179YE) 5. 课程以外重要的基本技能: 1. 正确使用Git:[https://docs.github.com/en/get-started/using-git/about-git](https://docs.github.com/en/get-started/using-git/about-git) 2. IDE与编辑器: 1. Visual Studio Code入门教程:[https://code.visualstudio.com/docs/introvideos/basics](https://code.visualstudio.com/docs/introvideos/basics) 2. Jetbrains全家桶使用指南(IDEA、PyCharm、WebStorm等):[https://www.jetbrains.com/help/](https://www.jetbrains.com/help/) 3. Visual Studio入门教程:[https://visualstudio.microsoft.com/vs/getting-started/](https://visualstudio.microsoft.com/vs/getting-started/) 3. Markdown文档基本语法:[https://docs.github.com/en/get-started/writing-on-github/getting-started-with-writing-and-formatting-on-github/basic-writing-and-formatting-syntax](https://docs.github.com/en/get-started/writing-on-github/getting-started-with-writing-and-formatting-on-github/basic-writing-and-formatting-syntax) 4. Linux command line tools手册:[https://www.freecodecamp.org/news/the-linux-commands-handbook/](https://www.freecodecamp.org/news/the-linux-commands-handbook/) 6. 面试: 1. 初级版 Cracking the Coding Interview,北美码农面试经典入门圣经: 1. 纸质版(请尽量购买正版):[https://www.amazon.com/Cracking-Coding-Interview-Programming-Questions/dp/0984782850](https://www.amazon.com/Cracking-Coding-Interview-Programming-Questions/dp/0984782850) 2. 电子版(请勿用于商用并遵守版权法律):[https://github.com/Avinash987/Coding/blob/master/Cracking-the-Coding-Interview-6th-Edition-189-Programming-Questions-and-Solutions.pdf](https://github.com/Avinash987/Coding/blob/master/Cracking-the-Coding-Interview-6th-Edition-189-Programming-Questions-and-Solutions.pdf) 2. Leetcode,所有古今中外大小厂的算法题都在这里,至少30道,上不封顶:[https://leetcode.com/explore/](https://leetcode.com/explore/) 7. 以下是完整的Computer Science基础课,时间充裕的前提下,建议完整学一遍: 1. UC Berkeley CS 61A. The Structure and Interpretation of Computer Programs:[https://www.youtube.com/channel/UCuteugW6eO65Awk83I6ehoA/playlists](https://www.youtube.com/channel/UCuteugW6eO65Awk83I6ehoA/playlists) 2. UC Berkeley CS61B. Data Structures:[https://www.youtube.com/watch?v=h59h5DoNhL4&list=PLgNUCz66KaWRSVzIeT_qB2yBgHocLmRWI](https://www.youtube.com/watch?v=h59h5DoNhL4&list=PLgNUCz66KaWRSVzIeT_qB2yBgHocLmRWI) 8. Machine Learning, Deep Learning, Data Science(感兴趣可以学习,但不建议作为零基础转码方向): 1. Machine Learning by Andrew Ng: [https://www.coursera.org/specializations/machine-learning-introduction](https://www.coursera.org/specializations/machine-learning-introduction) 2. Deep Learning by Andrew Ng: [https://www.coursera.org/specializations/deep-learning#courses](https://www.coursera.org/specializations/deep-learning#courses) 3. IBM Data Science: [https://www.coursera.org/professional-certificates/ibm-data-science#courses](https://www.coursera.org/professional-certificates/ibm-data-science#courses) 9. 美国最便宜的正规名校Online CS Master项目 GeorgiaTech/UIUC/UT-Austin Online CS Master: 1. 优势:顶级名校、正规Master学位、全美最便宜 $9000; 2. 缺点:远程、没有CPT/OPT(无法工作实习),适合已经有绿卡、可L1 transfer或者在国内转码刷学历; 3. Georgia Tech Online CS Master 项目官网 [https://omscs.gatech.edu/](https://omscs.gatech.edu/) 4. UIUC Online CS Master 项目官网 [https://cs.illinois.edu/academics/graduate/professional-mcs/online-master-computer-science](https://cs.illinois.edu/academics/graduate/professional-mcs/online-master-computer-science) 5. UT-Austin Online CS Master 项目官网 [https://www.cs.utexas.edu/graduate-program/masters-program/msonline](https://www.cs.utexas.edu/graduate-program/masters-program/msonline) 10. 不计成本地肉身到硅谷转码 NEU CS Align Master in Computer Science: 1. 优势:顶级名校、正规Master、自带co-op实习,肉身在硅谷到处开车面试,门槛低,不需要Computer Science本科学位,转码国际学生刷题找工氛围浓厚; 2. 缺点:贵(学费预算 $70000) 3. 地址:[https://www.khoury.northeastern.edu/programs/align-masters-of-science-in-computer-science/](https://www.khoury.northeastern.edu/programs/align-masters-of-science-in-computer-science/) 11. 讨论与求助: 1. Telegram(讨论):[https://t.me/lidang](https://t.me/lidang) 2. Discord(求助、答疑、资源共享等):[https://discord.com/invite/kCdnP3w49E](https://discord.com/invite/kCdnP3w49E) 3. 立党Twitter: [https://twitter.com/lidangzzz](https://twitter.com/lidangzzz) --- ## 第二章 你的资质适合转码吗?请完成如下测试 学完Python和数据结构后,请尝试独立完成以下Leetcode题目: 1. No.1 Two Sum [https://leetcode.com/problems/two-sum/](https://leetcode.com/problems/two-sum/) 2. No.9 Palindrome Number [https://leetcode.com/problems/palindrome-number/](https://leetcode.com/problems/palindrome-number/) 3. No.21 Merge Two Sorted Lists [https://leetcode.com/problems/merge-two-sorted-lists/](https://leetcode.com/problems/merge-two-sorted-lists/) 4. No.26 Remove Duplicates from Sorted Array [https://leetcode.com/problems/remove-duplicates-from-sorted-array/](https://leetcode.com/problems/remove-duplicates-from-sorted-array/) 5. No.89 Gray Code [https://leetcode.com/problems/gray-code/](https://leetcode.com/problems/gray-code/) 6. No.94 Binary Tree Inorder Traversal [https://leetcode.com/problems/binary-tree-inorder-traversal/](https://leetcode.com/problems/binary-tree-inorder-traversal/) 7. No.226 Invert Binary Search Tree [https://leetcode.com/problems/invert-binary-tree/](https://leetcode.com/problems/invert-binary-tree/) 8. No.231 Power of Two [https://leetcode.com/problems/power-of-two/](https://leetcode.com/problems/power-of-two/) 9. No.257 Binary Tree Paths [https://leetcode.com/problems/binary-tree-paths/](https://leetcode.com/problems/binary-tree-paths/) 10. No.264 Ugly Number II [https://leetcode.com/problems/ugly-number-ii/](https://leetcode.com/problems/ugly-number-ii/) 11. No.334 Reverse String [https://leetcode.com/problems/reverse-string/](https://leetcode.com/problems/reverse-string/) 如果以上11道题目可以做对,或者看答案后可以正确理解,关掉答案后能够正确回答———恭喜你,你具备转码的潜质和资质,可以正式认真考虑从零基础转码了(着手申请硕士项目、开始系统从零自学Computer Science的所有基础课程)! ", Assign "at most 3 tags" to the expected json: {"id":"8742","tags":[]} "only from the tags list I provide: [{"id":77,"name":"3d"},{"id":89,"name":"agent"},{"id":17,"name":"ai"},{"id":54,"name":"algorithm"},{"id":24,"name":"api"},{"id":44,"name":"authentication"},{"id":3,"name":"aws"},{"id":27,"name":"backend"},{"id":60,"name":"benchmark"},{"id":72,"name":"best-practices"},{"id":39,"name":"bitcoin"},{"id":37,"name":"blockchain"},{"id":1,"name":"blog"},{"id":45,"name":"bundler"},{"id":58,"name":"cache"},{"id":21,"name":"chat"},{"id":49,"name":"cicd"},{"id":4,"name":"cli"},{"id":64,"name":"cloud-native"},{"id":48,"name":"cms"},{"id":61,"name":"compiler"},{"id":68,"name":"containerization"},{"id":92,"name":"crm"},{"id":34,"name":"data"},{"id":47,"name":"database"},{"id":8,"name":"declarative-gui "},{"id":9,"name":"deploy-tool"},{"id":53,"name":"desktop-app"},{"id":6,"name":"dev-exp-lib"},{"id":59,"name":"dev-tool"},{"id":13,"name":"ecommerce"},{"id":26,"name":"editor"},{"id":66,"name":"emulator"},{"id":62,"name":"filesystem"},{"id":80,"name":"finance"},{"id":15,"name":"firmware"},{"id":73,"name":"for-fun"},{"id":2,"name":"framework"},{"id":11,"name":"frontend"},{"id":22,"name":"game"},{"id":81,"name":"game-engine "},{"id":23,"name":"graphql"},{"id":84,"name":"gui"},{"id":91,"name":"http"},{"id":5,"name":"http-client"},{"id":51,"name":"iac"},{"id":30,"name":"ide"},{"id":78,"name":"iot"},{"id":40,"name":"json"},{"id":83,"name":"julian"},{"id":38,"name":"k8s"},{"id":31,"name":"language"},{"id":10,"name":"learning-resource"},{"id":33,"name":"lib"},{"id":41,"name":"linter"},{"id":28,"name":"lms"},{"id":16,"name":"logging"},{"id":76,"name":"low-code"},{"id":90,"name":"message-queue"},{"id":42,"name":"mobile-app"},{"id":18,"name":"monitoring"},{"id":36,"name":"networking"},{"id":7,"name":"node-version"},{"id":55,"name":"nosql"},{"id":57,"name":"observability"},{"id":46,"name":"orm"},{"id":52,"name":"os"},{"id":14,"name":"parser"},{"id":74,"name":"react"},{"id":82,"name":"real-time"},{"id":56,"name":"robot"},{"id":65,"name":"runtime"},{"id":32,"name":"sdk"},{"id":71,"name":"search"},{"id":63,"name":"secrets"},{"id":25,"name":"security"},{"id":85,"name":"server"},{"id":86,"name":"serverless"},{"id":70,"name":"storage"},{"id":75,"name":"system-design"},{"id":79,"name":"terminal"},{"id":29,"name":"testing"},{"id":12,"name":"ui"},{"id":50,"name":"ux"},{"id":88,"name":"video"},{"id":20,"name":"web-app"},{"id":35,"name":"web-server"},{"id":43,"name":"webassembly"},{"id":69,"name":"workflow"},{"id":87,"name":"yaml"}]" returns me the "expected json"