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