查看原文
其他

学习 CS 时必须知道的一些有用的网站

2017-07-17 OSC-协作翻译 开源中国

长按上图识别二维码报名济南源创会


在学习计算机科学(CS)时,必须知道一些有用的网站,以便随时掌握信息,了解技术前沿和学习新技术。下面是你应该访问的一些网站的不详尽的列表,一旦我得到了另一个链接,这个列表就会被更新,但是你也可以添加你知道的网站来做贡献。


当你遇到困境时


  • Stack Overflow (https://stackoverflow.com/): 订阅他们的每周时事通讯和其他你感兴趣的话题

  • Quora (https://www.quora.com/): 分享知识、更好地了解世界的地方

  • Learn Anything (https://learn-anything.xyz/): 策划知识图的社区,在那里可以找到学习任何东西的最佳路径

  • devRant(https://www.devrant.io/) : 社区,在那里你可以咆哮和宣泄你的压力

  • Codementor (https://www.codementor.io/): 导师式社区,可以通过1对1的帮助等在同行开发人员的指导下学习


新闻


  • Hacker News(https://news.ycombinator.com/) : 程序员的新闻聚合,在那里礼貌为王,尝试以一篇时事通讯在你的收件箱里获取头条新闻

  • Hacker Newsletter(http://www.hackernewsletter.com/) : 手动策划,每周发布

  • Hacker News Digest (https://hndigest.com/): 自动策划,按你所希望的频率发布

  • Ars Technica (https://arstechnica.com/): 发布独家的高质量文章

  • ACM TechNews (http://technews.acm.org/): 科技类新闻

  • Lobsters (https://lobste.rs/): 大龙虾社区是围绕链接聚合和讨论的关注技术的社区

  • TechCrunch(https://techcrunch.com/) : 致力于深度剖析初创公司、评论互联网新产品,以及曝光科技新闻

  • The Verge(https://www.theverge.com/) : 更加面向产品的科技新闻

  • Recode (https://www.recode.net/): 聚焦于硅谷商业的科技信息

  • GSMArena.com(http://www.gsmarena.com/) : 最新移动电话和安卓相关的新闻

  • product hunt (https://www.producthunt.com/): 发现你的下一个最爱之物

  • AlternativeTo(https://alternativeto.net/) : 众包软件推荐

  • Better Dev Links (https://betterdev.link/): 助力你成为更佳开发人员的每周链接

  • DevOpsLinks(http://devopslinks.com/) : 对 DevOps 感兴趣的数以千计的开发人员和 IT 专家的网络社区


初学者的编码实践


  • freeCodeCamp(https://www.freecodecamp.org/) : 学习为非盈利组织编写和构建项目。今天就构建你的全栈网页开发组合

  • Reddit.com/r/dailyprogrammer (https://www.reddit.com/r/dailyprogrammer/): 有趣的编程挑战,在那里你可以观摩和学习他人的代码,即使你不能以代码解决问题,你也可以看看别人如何解决。

  • Programming by Doing (http://programmingbydoing.com/): 对于那些想从绝对基础开始的人来说非常好的网站

  • CodeAbbey - a place where everyone can master programming(http://www.codeabbey.com/) : 从问题开始的最佳之地,从最简单的问题开始,每个问题逐步增加难度。

  • Exercism.io (http://exercism.io/): 下载并解决超过30种不同语言的练习问题,并与其他人分享你的解决方案。

  • Programming Tasks(http://rosettacode.org/wiki/Category:Programming_Tasks) : 大量收集小应用程序

  • karan/Projects-Solutions (https://github.com/karan/Projects-Solutions): 解决以上链接中的大部分问题的方法

  • Lod - Cloud(http://lod-cloud.net/) : 链接开放数据云图

  • Cave of programming(https://caveofprogramming.com/) : 学习编程,升级技能。

  • People Can Program (https://www.peoplecanprogram.com/): 网络上最对用户友好的学习编码的应用

  • Codeacademy (https://www.codecademy.com/): 交互式学习编码,免费。

  • Vim adventures(https://vim-adventures.com/) : 通过玩来学习 VIM 


想开始一个小项目却找不到点子?


  • martyr2s-mega-project-ideas-listhttp://www.dreamincode.net/forums/topic/78802-martyr2s-mega-project-ideas-list/) : 包含从初学者到中级水平的大约 125 个项目点子

  • karan/Projects(https://github.com/karan/Projects) : 大量的小项目,供初学者选用

  • Wrong "big projects" for beginners(http://rodiongork.tumblr.com/post/108155476418/wrong-big-projects-for-beginners) : 如何选择从哪里开始

  • vicky002/1000-Projects(https://github.com/vicky002/1000_Projects) : 可以凭任意编程语言实现的实际项目的巨长清单


一般编码建议


  • Things I Wish Someone Had Told Me When I Was Learning How to Code — Free Code Camp (https://medium.freecodecamp.com/things-i-wish-someone-had-told-me-when-i-was-learning-how-to-code-565fc9dcb329?gi=fc6d0a309be): 我从教别人中学到了什么

  • Lessons From A Lifetime Of Being A Programmer (http://thecodist.com/article/lessons_from_a_lifetime_of_being_a_programmer): 来自终身程序员的编程者头条教训

  • Programming Principles(https://webpro.github.io/programming-principles/) : 程序设计原理与模式分类综述

  • What every computer science major should know (http://matt.might.net/articles/what-cs-majors-should-know/): 良好编程的原则

  • How to become a programmer, or the art of Googling well(https://okepi.wordpress.com/2014/08/21/how-to-become-a-programmer-or-the-art-of-googling-well/) : 如何成为一名程序员,或搜索的艺术

  • Code Review Best Practices (https://www.kevinlondon.com/2015/05/05/code-review-best-practices.html): Kevin London 的博客

  • Dieter Rams : 10 Principles of Good Product Design (https://stephenhaunts.com/2013/12/11/dieter-rams-10-principles-of-good-product-design/): Stephen Haunts { 战壕中的编码 }

  • 10-ways-to-be-a-better-developer (https://stephenhaunts.files.wordpress.com/2014/04/10-ways-to-be-a-better-developer.png): 开发人员的进阶之路!

  • Working as a Software Developer(https://henrikwarne.com/2012/12/12/working-as-a-software-developer/) : Henrik Warne 的博客

  • Software design pattern (https://en.wikipedia.org/wiki/Software_design_pattern): 设计模式的全集

  • Design Patterns(https://sourcemaking.com/design_patterns) : 以示例详细解释设计模式

  • JS Project Guidelines(https://github.com/wearehive/project-guidelines) : 一组 JavaScript 项目的最佳实践


编程风格


  • CS 106B Coding Style Guide (http://stanford.edu/class/archive/cs/cs106b/cs106b.1158/styleguide.shtml): 制作意大利面条(spaghetti)的人必看

  • Google C++ Style Guide(https://google.github.io/styleguide/cppguide.html)

  • Airbnb JS Style Guide (https://github.com/airbnb/javascript): 对 JavaScript 的一种最合理的方法

  • Airbnb Ruby Style Guide (https://github.com/airbnb/ruby): Airbnb 的 Ruby 风格指南

  • What are some bad coding habits you would recommend a beginner avoid getting into? (https://www.reddit.com/r/learnprogramming/comments/1i4ds4/what_are_some_bad_coding_habits_you_would/): 开始时要避免的坏习惯

  • Good C programming habits. • /r/C_Programming (https://www.reddit.com/r/C_Programming/comments/1vuubw/good_c_programming_habits/): 值得采用的 C 编程习惯

  • How to Report Bugs Effectively (https://www.chiark.greenend.org.uk/~sgtatham/bugs.html): 想报告 bug 但你不知道怎么做?看看这个帖子

  • Debugging Faqs (http://www.umich.edu/~eecs381/generalFAQ/Debugging.html): 检查如何调试程序

  • Stuff you need to Code Better! (http://codebetter.com/): 能帮到你的材料

  • 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): 计算机科学的另一套线上课程

  • Angular 1 Style Guide (https://github.com/johnpapa/angular-styleguide/tree/master/a1): 官方认可的风格指南,作者 John Papp


一般工具


  • regex101(https://regex101.com/) : 线上正则表达式测试器和调试器: PHP、 PCRE、 Python、 Golang 和 JavaScript

  • CodePen (https://codepen.io/): 前端开发人员的游乐场兼浏览器版代码编辑器

  • Devicons (http://vorillaz.github.io/devicons/#/main): 给开发人员的图标的备忘单


面试的准备


  • Pramp | 软件工程师自由点播的面试实践平台(https://www.pramp.com/ref/gt1) :与真正的同行练习程序员的面试。

  • GeeksforGeeks | 给极客的计算机科学门户网站(http://www.geeksforgeeks.org/) : 同时订阅他们的提要以获得新文章的链接。

  • 一个网战,关注术面试问题、脑筋急转弯、难题、怪题(https://www.techinterview.org/) : 那是些什么见鬼的东西,还有其他让你思考的东西!

  • 问题集 | LeetCode OJ(https://leetcode.com/problemset/algorithms/) : 针对面试的编码实践

  • 程序员和软件面试问答(http://www.programmerinterview.com/)

  • Reddit.com/user/ashish2199/m/puzzles(https://www.reddit.com/user/ashish2199/m/puzzles/) : 逻辑难题

  • 量化分析的难题以及解答的汇集(http://puzzles.nigelcoldwell.co.uk/)

  • 能力倾向的问题和答案(http://www.indiabix.com/) : 量化分析和能力倾向的准备

  • 面试档案- Java Honk(http://javahonk.com/category/interview/)

  • 编程面试的10大算法(http://www.programcreek.com/2012/11/top-10-algorithms-for-coding-interview/)

  • 算法设计canvas(https://www.hiredintech.com/algorithm-design)

  • 大O算法复杂度的小抄(http://bigocheatsheet.com/#)

  • Unix / Linux 小抄(http://cheatsheetworld.com/programming/unix-linux-cheat-sheet)

  • 怎样去面试(http://kelukelu.me/interview/index.html)

  • 怎样从算法面试中胜出(http://www.palantir.com/2011/09/how-to-rock-an-algorithms-interview)

  • 开心难题(http://gurmeet.net/puzzles/)

  • 通过动画可视化数据结构和算法(https://visualgo.net/en)

  • 这里是怎样准备技术面试• /r/cscareerquestions(https://www.reddit.com/r/cscareerquestions/comments/1jov24/heres_how_to_prepare_for_tech_interviews/)

  • 技术面试指南(https://www.kchodorow.com/blog/2013/02/28/guide-to-tech-interviews/)

  • 为什么你赚得少 • /r/cscareerquestions(https://www.reddit.com/r/cscareerquestions/comments/1b8wa3/why_you_make_less_money/)

  • IIT Delhi Placement Experience(http://placement-iit2013.blogspot.in/)

  • what_are_your_goto_questions_for_the_do_you_have?(https://www.reddit.com/r/cscareerquestions/comments/209rkq/what_are_your_goto_questions_for_the_do_you_have/)

  • /r/cscareerquestions(https://www.reddit.com/r/cscareerquestions/comments/20ahfq/heres_a_pretty_big_list_of_programming_interview/) : 这里有关于编程面试问题的超长列表,我在为4大面试而学习时汇编的。我想你们会发现它很有用的!

  • Interviewing At Jane Street(https://blogs.janestreet.com/interviewing-at-jane-street/)

  • How to prepare for an interview - 1(http://se7so.blogspot.in/2014/01/how-to-prepare-for-interview-1.html):如何准备面试

  • Summer Internship: The Ultimate Guide(http://eulercoder.me/blog/career/Summer-Internship-the-ultimate-guide)

  • The 25 most difficult HR questions(http://www.datsi.fi.upm.es/~frosal/docs/25mdq.html):25 个最难的 HR 问题

  • Job interviews News, Videos, Reviews and Gossip - Lifehacker(http://lifehacker.com/tag/job-interviews):面试新闻、视频、评论和八卦

  • How to Answer the Toughest 40 Job Interview Questions | ICS Job Portal(http://www.icsjobportal.com/blog/job-interview-questions):如何回答最难的 40 个面试问题

  • Job Interview Questions and Best Answers(https://www.thebalance.com/job-interview-questions-and-answers-2061204):面试问题和最佳答案

  • How to Answer "Tell Me a Little About Yourself" | The Art of Manliness(http://www.artofmanliness.com/2016/01/05/tell-me-a-little-about-yourself/)

  • Job Interview: How to Ace a Job Interview | The Art of Manliness(http://www.artofmanliness.com/2012/08/06/how-to-ace-a-job-interview/)

  • Give your résumé a face lift(http://www.lifeclever.com/give-your-resume-a-face-lift/)

  • BIG O Misconceptions(http://ssp.impulsetrain.com/big-o.html)

  • Bitwise tricks(https://gist.github.com/dideler/2365607)

  • Core Java Interview questions - Interview question on each topic(http://javahonk.com/core-java-interview-questions/)

  • Java Interview Questions and Answers(https://adnjavainterview.blogspot.in/):Java 面试问题和答案

  • Big collection of interview preparation links • /r/cscareerquestions(https://www.reddit.com/r/cscareerquestions/comments/2lzc4h/big_collection_of_interview_preparation_links/)

  • Unsolicited_advice_for_job_seekers_and_employers(https://www.reddit.com/r/india/comments/1clgdj/unsolicited_advice_for_job_seekers_and_employers/)

  • five-essential-phone-screen-questions - steveyegge2(https://sites.google.com/site/steveyegge2/five-essential-phone-screen-questions)

  • CS9: Problem-Solving for the CS Technical Interview(http://web.stanford.edu/class/cs9/):CS 技术面试问题解答

  • Mission-peace/interview problems(https://github.com/mission-peace/interview/wiki) : 编程面试问题的大汇集

  • SQL Joins explained using venn diagram(http://stevestedman.com/wp-content/uploads/VennDiagram1.pdf)

  • 10 Frequently asked SQL Query Interview Questions(http://www.java67.com/2013/04/10-frequently-asked-sql-query-interview-questions-answers-database.html)

  • Get Ready to Learn SQL: 8. Database Normalization Explained in Simple English - Essential SQL(https://www.essentialsql.com/get-ready-to-learn-sql-database-normalization-explained-in-simple-english/)

  • Programming Language Concepts: Lecture Notes (http://www.cmi.ac.in/~madhavan/courses/pl2006/lecturenotes/lecture-notes/lecture-notes.html): 面向对象编程的概念和编程语言的概念

  • We Help Coders Get Hired (https://www.hiredintech.com/app): 这个网站提供关于系统设计、面试策略、软技能等方面的课程

  • checkcheckzz/system-design-interview(https://github.com/checkcheckzz/system-design-interview)

  • How to Break Into the Tech Industry - a Guide to Job Hunting and Tech Interviews(http://haseebq.com/how-to-break-into-tech-job-hunting-and-interviews)

  • Freshers Interviews(http://placementsindia.blogspot.in/)

  • C PUZZLES, Some interesting C problems(http://www.gowrikumar.com/c/index.php)

  • wu :: riddles(hard) (https://www.ocf.berkeley.edu/~wwu/riddles/hard.shtml): 逻辑难题和谜题

  • github.com/odino/interviews(https://github.com/odino/interviews) : 面试的重要问题清单

  • svozniuk/java-interviews (https://github.com/svozniuk/java-interviews): Java 面试问题

  • kimberli/interviews(https://github.com/kimberli/interviews) : 针对面试的学习表

  • Determining the big-O runtimes of these different loops? (https://stackoverflow.com/questions/11094330/determining-the-big-o-runtimes-of-these-different-loops): 真地很好的 stackoverflow 问题,囊括了计算运行时复杂度的基础。

  • ChiperSoft/InterviewThis (https://github.com/ChiperSoft/InterviewThis): 面试时要问的问题以更多地了解公司

  • SQL 面试问题 (https://www.jitbit.com/news/181-jitbits-sql-interview-questions/): 很棒的 SQL 测试


学习新知识的慕课网


  • Class Central (https://www.class-central.com/): 数以千计的慕课课程的10万多的学生评论目录

  • NPTEL Vidoes COMP_SCI_ENGG(https://onlinecourses.nptel.ac.in/explorer/search?category=COMP_SCI_ENGG)

  • Coursera.org(https://www.coursera.org/)

  • edX(https://www.edx.org/)

  • MOOC.fi (http://mooc.fi/english.html): 来自赫尔辛基大学的免费线上课程

  • Udacity(https://www.udacity.com/)

  • Kadenze | Creative Programming (https://www.kadenze.com/courses?subjects%5B%5D=7): 聚焦于艺术与创造力的编程课程

  • UCBerkeley(https://www.youtube.com/user/UCBerkeley/videos)

  • 麻省理工学院电气工程与计算机科学系的网络开放课程(https://ocw.mit.edu/courses/electrical-engineering-and-computer-science/)

  • CS50(https://www.youtube.com/user/cs50tv/videos)

  • prakhar1989/awesome-CS-courses (https://github.com/prakhar1989/awesome-courses/blob/master/README.md): 囊括了大量计算机科学课程的列表

  • Computer Science Resources(https://docs.google.com/spreadsheets/d/1BD8BJJUNaX63m2QmySWMGDp71nx4W4MyyiIBlfMoN3Q/htmlview?sle=true#) : 给自学者的慕课课程列表


完整内容请点击“阅读原文”或保持关注本公众号后续内容查看。



推荐阅读

2017 开发者生态报告:Java 最火,Go 最有前途

Java 已死?听听这些重量级大咖是怎么说的

给 Web 开发人员推荐的开源图形库 —— 动画

如何理解并正确使用 MySql 索引

点击“阅读原文”查看更多精彩内容

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存