这是一份对开发者有用的英文网站清单,涉及到从初学者到行业大牛成长的方方面面,还有很多事英语学习的网站,请相信我,这些肯定会对你有所帮助的。
问答社区
1. Stack Overflow : subscribe to their weekly newsletter and any other topic which you find interesting
2. Quora : A place to share knowledge and better understand the world
3. Learn Anything : Community curated knowledge graph of best paths for learning anything
4. devRant : Community where you can rant and release your stress
5. Codementor : A mentorship community to learn from fellow developers via live 1:1 help and more.
新闻
1. Hacker News : news aggregator for programmers where civility is king, try a newsletter to get top news to your inbox:
2. Hacker Newsletter : curated by hand, delivered weekly
3. Hacker News Digest : curated automatically, delivered as frequently as you want
4. Ars Technica : posts unique quality articles
5. ACM TechNews
6. Lobsters : Lobsters is a technology-focused community centered around link aggregation and discussion.
7. TechCrunch : another good website for tech news
8. GSMArena.com : news related to latest mobile phones and android.
9. product hunt : Discover your next favorite thing
10. AlternativeTo : Crowdsourced software recommendations
11. Better Dev Links : Weekly links to help you become a better developer
初学者的编程练习
1. freeCodeCamp : Learn to code and build projects for nonprofits. Build your full stack web development portfolio today
2. Reddit.com/r/dailyprogrammer : interesting programming challenges where you can learn from looking at other’s code , even if you are not able to solve code you can look at how others solved.
3. Programming by Doing : very good site for those who want to start with absolute basics
4. CodeAbbey – a place where everyone can master programming : Best place to begin with problems that start at the easiest and gradually increase difficulty with each problem.
5. Exercism.io : download and solve practice problems in over 30 different languages, and share your solution with others.
6. Programming Tasks : large collection of small programs
7. karan/Projects-Solutions Solutions to most of the problems in the link above
8. Lod – Cloud : The Linking Open Data cloud diagram
9. Cave of programming : Learn to program, Upgrade your skills.
10. Codeacademy : Learn to code interactively, for free.
找找项目灵感
1. martyr2s-mega-project-ideas-list : contains about 125 project ideas from beginner to intermediate level.
2. karan/Projects : a large collection of small projects for beginners with
3. Wrong “big projects” for beginners : How to choose where to start
4. vicky002/1000-Projects : Mega List of practical projects that one can solve in any programming language!
大牛的建议
1. Things I Wish Someone Had Told Me When I Was Learning How to Code — Free Code Camp : What I’ve learned from teaching others
2. Lessons From A Lifetime Of Being A Programmer : The Codist Header Lessons From A Lifetime Of Being A Programmer
3. Principles of Good Programming : The Principles of Good Programming
4. What every computer science major should know : The Principles of Good Programming
5. How to become a programmer, or the art of Googling well
6. Code Review Best Practices : Kevin London’s blog
7. Dieter Rams : 10 Principles of Good Product Design
8. 10-ways-to-be-a-better-developer
9. Working as a Software Developer
10. Software design pattern : The entire collection of Design Patterns.
11. Design Patterns : Design Patterns explained in detail with examples.
编码规范
1. CS 106B Coding Style Guide : must see for those who create spaghetti
2. Google C++ Style Guide
3. Airbnb JS Style Guide : A mostly reasonable approach to JavaScript
4. Airbnb Ruby Style Guide : A ruby style guide by Airbnb
5. What are some bad coding habits you would recommend a beginner avoid getting into?
6. Good C programming habits. • /r/C_Programming
7. How to Report Bugs Effectively
8. Debugging Faqs
9. Stuff you need to Code Better!
10. Directory of Online CS Courses
11. Directory of CS Courses (many with online lectures)
12. Angular 1 Style Guide : Officially endorsed style guide by John Pappa
通用工具
1. regex101 : Online regex tester and debugger: PHP, PCRE, Python, Golang and JavaScript
2. CodePen : Front End Developer Playground & Code Editor in the Browser
面试准备
1. Pramp | A free on demand interview practice platform for Software Engineers : Practice coding interviews with real peers
2. GeeksforGeeks | A computer science portal for geeks : also subscribe to their feeds to get links to their new articles.
3. A site for technical interview questions, brain teasers, puzzles, quizzles : whatever the heck those are) and other things that make you think!
4. Problems | LeetCode OJ : Coding practice for interviews
5. Programmer And Software Interview Questions Answers
6. Reddit.com/user/ashish2199/m/puzzles : Logic Puzzles
7. A Collection of Quant Riddles With Answers
8. Aptitude Questions and Answers : Quant and aptitude preparation
9. Interview Archives – Java Honk
10. Top 10 Algorithms for Coding Interview
11. Algorithm design canvas)
12. Big-O Algorithm Complexity Cheat Sheet
13. Unix / Linux Cheat Sheet
14. How to interview
15. How to Ace an Algorithms Interview
16. Delightful Puzzles
17. visualising data structures and algorithms through animation
18. Here’s How to Prepare for Tech Interviews • /r/cscareerquestions
19. Guide to Tech Interviews
20. Why You Make Less Money • /r/cscareerquestions
21. IIT Delhi Placement Experience
22. what_are_your_goto_questions_for_the_do_you_have?
23. /r/cscareerquestions : Here’s a pretty big list of programming interview questions I compiled while studying for big 4 interviews. I think you guys will find it useful! •
24. Interviewing At Jane Street
25. How to prepare for an interview – 1
26. Summer Internship: The Ultimate Guide
27. The 25 most difficult HR questions
28. Job interviews News, Videos, Reviews and Gossip – Lifehacker
29. How to Answer the Toughest 40 Job Interview Questions | ICS Job Portal
30. Job Interview Questions and Best Answers
31. How to Answer “Tell Me a Little About Yourself” | The Art of Manliness
32. Job Interview: How to Ace a Job Interview | The Art of Manliness
33. Give your résumé a face lift
34. BIG O Misconceptions
35. Bitwise tricks
36. Core Java Interview questions – Interview question on each topic
37. Java Interview Questions and Answers
38. Big collection of interview preparation links • /r/cscareerquestions
39. Unsolicited_advice_for_job_seekers_and_employers
40. five-essential-phone-screen-questions – steveyegge2
41. CS9: Problem-Solving for the CS Technical Interview
42. Mission-peace/interview problems : A large collection of coding interview problems
43. SQL Joins explained using venn diagram
44. 10 Frequently asked SQL Query Interview Questions
45. Get Ready to Learn SQL: 8. Database Normalization Explained in Simple English – Essential SQL
46. Programming Language Concepts: Lecture Notes : OOPs concepts and programming language concepts.
47. We Help Coders Get Hired : website offering courses on system design, interview strategies, soft skills etc
48. checkcheckzz/system-design-interview
49. How to Break Into the Tech Industry – a Guide to Job Hunting and Tech Interviews
50. Freshers Interviews
51. C PUZZLES, Some interesting C problems
52. wu :: riddles(hard) : logic puzzles and riddles
53. github.com/odino/interviews : list of important questions for interview
54. svozniuk/java-interviews : Java interview questions
55. kimberli/interviews : study sheet for Interview
56. Determining the big-O runtimes of these different loops? : really good stackoverflow question that covers basics of calculating runtime complexity.
57. ChiperSoft/InterviewThis : questions to ask during on a interview to know more about the company.
58. SQL interview questions : great SQL test
视频
1. Machine that Changed the World – a very good documentary about history of computers
o Part 1: Giant Brains
o Part 2: Inventing the Future
o Part 3: The Paperback Computer
o Part 4: The Thinking Machine
o Part 5: The World at Your Fingertips
2. Triumph of the Nerds : Play-list
3. Project Code Rush – The Beginnings of Netscape / Mozilla Documentary
4. The Code: Story of Linux documentary
5. Breaking the Code: Biography of Alan Turing
6. Mechanical Computer (All Parts) : a very good video from 1950s explaining how mechanical computers used to work without all the modern day electronics.
7. Download: The True Story of the Internet : Play-list of discovery channel documentary on browser wars , dot com bubble and more.
8. Teach Yourself Computer Science
9. How does CPU execute program (video)
10. Machine Code Instructions (video)
11. Harvard CS50 – Asymptotic Notation (video)
12. Cracking The Code Interview
13. Cracking the Coding Interview – Fullstack Speaker Series
14. Ask Me Anything: Gayle Laakmann McDowell (author of Cracking the Coding Interview)
MOOCs
1. Class Central : a directory of 100,000+ student reviews of thousands of MOOCs.
2. NPTEL Vidoes COMP_SCI_ENGG
3. Coursera.org
4. edX
5. MOOC.fi : Free online courses from the University of Helsinki
6. Udacity
7. Kadenze | Creative Programming: Programming courses focused on art and creativity
8. UCBerkeley
9. MIT OCW Electrical Engineering and Computer Science
10. CS50
11. prakhar1989/awesome-CS-courses : List containing large amount of CS courses
12. Computer Science Resources : list of MOOCs for autodidacts
Java
1. Java Revisited : good for learning about Java Language and interview preparation.
2. The Java™ Tutorials: The best tutorials for Java.
3. Java Corner at Artima.com
4. Java Visualizer : helps visualize references , values of variables ect
5. Java Lecture Notes
6. Learning Java : a free online textbook for learning Java
7. Free Online Chapters of Inside the Java Virtual Machine by Bill Venners
8. Understanding JVM Internals
9. How Garbage Collection Works
10. Welcome to JavaWorld.com
11. The Java Memory Model
12. Netbeans Keyboard Shortcuts : Keyboard shortcuts to enhance your productivity when working in Netbeans.
13. XyzWs Java FAQs : large collection of java interview questions
14. Search Open Source Java API : view source of java library and learn how things are implemented.
15. JournalDev – Java, Java EE, Android, Web Development Tutorials
16. Implementation of Algorithms and Data Structures, Interview Questions and Answers
17. what-is-garbage-collection : Demystify the garbage collection
18. Best books for learning java must read : Get basics of Java
19. Garbage collection (Java); Augmenting data str (video)
20. Compilers (video)
21. Deep Dive Java: Garbage Collection is Good!
22. The C++ Programming Language : The C++ Programming Language.
23. Bjarne Stroustrup’s FAQ : The C++ FAQ
24. Bjarne Stroustrup’s C++ Style and Technique FAQ : The C++ FAQ
25. C++11 – the new ISO C++ standard : The C++11 FAQ
AI
1. Unsupervised Sentiment Neuron : Unsupervised Sentiment Neuron
2. Robots that learn : Robots that Learn
3. grakn.ai : The Database for AI
学习写作
1. Advice on Research and Writing
2. Seminar and reports
3. PHD MS Articles
4. Practical Tips for Talking at Usergroups and Conferences and Giving presentation on software project to non-programmers
YouTube 频道
1. Computerphile : Must watch for every CS student
2. ComputerHistory : for those who like to know how we reached where we are.
3. GoogleTechTalks : videos on trending topics and cool stuff happening in the tech industry.
4. Placement Grid : Interview and campus placement experience
5. Google Developers
6. Facebook Developers
7. O’Reilly : interviews and talks of world’s best technical writers.
8. Java : talks related to java
9. JavaOne : Java Conference
10. CppCon : C++ Conference
11. C++Now (BoostCon) : C++Now (previously BoostCon) conference
12. Meeting C++ YT Kanalseite : Talks on C++
13. ThinMatrix : blogs and tutorials developer making a 3d game in Java using opengl
14. yegor256
15. Scott Meyers: Past Talks
16.thoughtbot : talks on various topics
17. code::dive conference : code::dive conference organized by NOKIA Wrocław Technology Center
18.HowToBecomeTV : contains good interviews of developers and people related to tech industry.
19. Siraj Raval : Artificial Intelligence and deep learning tutorials videos
20. Netflix UI Engineering : great videos to watch for web developers, mobile developers and those interested in some of Netflix’s tech stack
21.Coding Blocks : Tutorials, how to’s, tips and tricks
22. Fun Fun Function : A weekly series from Mattias Petter Johansson on an assortment of programming topics, including some not directly related to coding.
一些文章集合
1. Expectations of a Junior Developer
2. The Key To Accelerating Your Coding Skills
3. A Software Developer’s Reading List : Some good books and links in there.
4. 40 Keys Computer Science Concepts Explained In Layman’s Terms
5. What every programmer should know about memory, Part 1
6. We are reinventing the retail industry through innovative technology
7. Unicode
8. What every programmer absolutely, positively needs to know about encodings and character sets to work with text
9. List of algorithms
10. Dive into the byte code
11. Data Structure Map
12. A Gentle Introduction To Graph Theory
13. Linux Inside
14. A programmer friendly language that compiles to Lua.
播客
1. Coding Blocks – Learning principles, patterns and better practices on the go
2. MS Dev Show
3. The Cynical Developer
4. Herding Code
5. Code Newbie
6. Software Engineering Radio : A podcast targeted at the professional software developer. The goal is to be a lasting educational resource, not a newscast.
7. JavaScript Jabber : A weekly discussion about JavaScript, front-end development, community, careers, and frameworks.
8. Developer Tea : A podcast for developers designed to fit inside your tea break.
9. Full Stack Radio : Everything from product design and user experience to unit testing and system administration.
10. Software Engineering Daily : A daily technical interview about software topics
11. The Bike Shed : Guests discuss their development experience and challenges with Ruby, Rails, JavaScript, and others.
12. The Changelog : A weekly conversation that gets to the heart of open source technologies and the people who create them.
13. Front End Happy Hour : A podcast featuring a panel of Software Engineers from Netflix, Evernote, Atlassian & LinkedIn talking over drinks about all things Front End development.
构建一个简单的编译器/解释器
1. Awesome Compilers : Curated list of awesome resources on Compilers, Interpreters and Runtimes.
2. Resources for Amateur Compiler Writers
3. Possibly the smallest compiler ever
4. Writing My First Compiler
5. Structure and Interpretation of Computer Programs
6. Let’s Build A Simple Interpreter. Part 1.
7. Growing a compiler
教程
1. Subtle | Poor Man’s CI : Learn how continuous integration platforms work under the hood, by building one of your own on top of git with Node.js
2. Tutorialspoint
3. W3Schools Online Web Tutorials
4. Open Data Structures : Excellent resource for learning about DS and algos , provides code in various languages C++ , Java , pseudocode
5. Data Structures and Algorithms by John Morris : another good source with code and its analysis
6. CMSI 281: Data Structures : light weight introduction to DS
7. How to Program in C++ : Good resource for revising C++ topics and STL
8. TopCoder Tutorials
9. A Hacker’s Guide to Git : for those wanting to learn git with a solid foundation
10. Git from the inside out
11. Learn UNIX in 10 minutes
12. The Bash Guide : very good guide for learning the Bash Shell
13. Linux Tutorial : good resource for learning Linux
14. UNIX Tutorial – Introduction
15. Linux Tutorial for Beginners
16. Learning the shell.
17. Dynamic programming – PrismoSkills : very good resource if want to learn how to solve DP problems.
18. Deep C : very good presentation on C language
19. C programming language Frequently Asked Questions
20. OS Course Notes : Chapter wise course notes according to Galvin’s book
21. SQL (Structured Query Language) in one page : SQL.SU : a very good SQL cheat sheet
22. Introduction to C Programming
23. MySQL Essentials
24. http://www.mysqltutorial.org/
25. Best Of – Gustavo Duarte : contains articles on various topics
26. Collecting all the cheat sheets : cheat sheets for lots of programming languages
27. The Descent to C : for those moving to C from some higher programming language like java or python.
28. VimTutor+ : learn VIM from browser itself
29. Linux Journey : good site for learning linux
30. C Programming
31. CS 2112/ENGRD 2112 Fall 2015 : Good notes on data structures and algorithms.
32. More about Github-flavored markdown
33. The Unix Programming Environment
34. The Linux Command Line: A Complete Introduction
35. TCP/IP Illustrated Series
36. Head First Design Patterns
37. Design Patterns: Elements of Reusable Object-Oriented Software : aka the “Gang Of Four” book, or GOF
38. UNIX and Linux System Administration Handbook, 4th Edition
39. Programming, Web Development, and DevOps news, tutorials and tools for beginners to experts
阅读他人的代码
1. LiveEdu.tv : screencast of people building application, websites, games, ect.
程序员须知
1. Programmer Competency Matrix : article for knowing what our level as a programmer is.
2. GitHub.com Build software better, together : Place to showcase your project and collaborate with others. (Must know Git in order to use it effectively)
3. Gitlab offers free unlimited (private) repositories and unlimited collaborators.
编程比赛
1. WakaTime : leaderboards of coding metrics collected via editor plugins
2. HackerRank
3. Codeforces
4. topcoder
5. UVa Online Judge : hundreds of problems supporting multiple languages.
6. HackerEarth – Programming challenges and Developer jobs
7. CodeChef
8. PKU ACM ICPC Practice problems
9. Archived Problems – Project Euler
10. Google Code Jam Practice and : past contest problems for practice
11. Sphere Online Judge (SPOJ)
12. Art of Problem Solving
13. Riddles.io AI Games : Compete with your bot and dominate the leaderboards!
14. Codingame : Learn coding through games and challenges!
15. Codewars : Rank up by completing code kata
16. Codefights : Test your coding skills
计算机图书
1. IT eBooks – Free Download – Big Library : website for downloading ebooks without any advertisement and instant downloads.
2. github.com/vhf/free-programming-books : More than 500 free ebooks on almost any language you can think of
3. Computer Science Books Online : about 150 computer free ebooks
4. Best books for GATE CSE
5. cses.fi/book.html
6. Become a Programmer, Motherfucker (list of books) : Exhaustive list of books from Zed A. Shaw.
视频教程
1. Tushar Roy : Algorithm and Data structure tutorial by an Indian Youtuber.
2. Derek Banas : good quality tutorials
3. thenewboston : good but with too much talk as compared to actual content
4. mycodeschool : Data structures and algorithms tutorials
5. CodingMadeEasy : C++ tutorials
6. XDA-University – Helping You Learn Android Development
7. DevTips : web dev tutorials
8. codedamn : front end web dev tutorials
9. Design and Analysis of Algorithms
10. Vim Tutorial Videos – Flarfnoogins : good video tutorial for learning vim
11. CS1: Higher Computing – Richard Buckland UNSW : a very good introductory CS course
12. Kathryn Hodge : Has good videos for beginners
在线编译
1. CodePad : Code editor to try, test and run 25+ languages
2. JSFiddle : Test your JavaScript, CSS, HTML or CoffeeScript with online code editor
3. Ideone.com : online compiler and debugging tool for more than 60 programming languages
4. Pastebin.com
5. Godbolt.org: Excellent tool for exploring the assembly output of different compilers with and without optimization.
一些不错的博客
1. Coding Horror : one the best coding blog
2. WildMl : A blog for machine learning.
3. Armin Ronacher’s Thoughts and Writings : blog on Python and open source
4. Eli Bendersky : everything from Python to LLVM
5. Joel on Software
6. Stephen Haunts { Coding in the Trenches }
7. Programming in the 21st Century
8. Clean Coder Blog : blog of author of book “Clean Code”
9. Programming Blog : programming blog of Yegor Bugayenko
10. CodeAhoy : Blog on software and human factors. 100% Tested on Humans.
11. stevehanov.ca
12. Geek Land
13. Late Developer
14. IT Enthusiast
15. blog.might.net
16. CSE Blog – quant, math, computer science puzzles
17. Small Programming Challenges and Puzzles
18. My Tech Interviews
19. HackerEarth Blog
20. Algo-Geeks
21. CoderGears Blog Insights from : the CoderGears Team
22. Runhe Tian Coding Practice
23. Paul Graham Essays
24. Dan Dreams of Coding
25. Antonio081014’s Algorithms Codes
26. Math ∩ Programming
27. Takipi Blog : mainly focuses on Java and JVM languages
28. Coding Geek – A blog about IT, programming and Java
29. Daedtech.com : Stories about software
30. Archives — Ask a Manager : HR related stuff
英语学习
1.Quia – English
2.Punctuation and Capitalization Rules
3.Guide to Grammar and Writing : for those who want to improve their english language skills
4.Purdue University Online Writing Lab (OWL)
5.Englishclub.com/learn-english
无聊时可以看看这些
1.r/ProgrammerHumor : Subreddit dedicated to exactly what it sounds like
2.Vsauce : The best youtube channel
3.TED : Great talks about technology, entertainment, and design
4.CrashCourse : small courses on various subjects
5.National Geographic : High volume of high quality content from all over the world
6.Barcroft TV : Daily short documentaries about the incredible variety of people that make up the world
7.ColdFusion : Past, present, and future of technology
8.SmarterEveryDay : Lots of amazing scientific information about the world around us, usually captured with a high-speed camera
9.SciShow : Answers to interesting questions that you’ve always wondered about
10.Big Think : Expert driven, actionable, educational content, featuring experts ranging from Bill Clinton to Bill Nye
11.Every Frame a Painting : High quality analysis of films and filmmaking
12.TestTube News : Interesting information about news from around the world
13.Reddit the front page of the internet : Where free time goes to die