程序員應該訪問的最佳網站中文版原版
一些對程序員有用的網站
在學習CS的時候有一些你必須知道的有用的站點來獲取通知爲了你的技術儲備和學習新知識。這裏是一個你應該訪問的不是非常全面的一些站點的列表,這個列表會不斷更新,只要我能得到鏈接,你也可以通過添加你知道的來爲此做出貢獻
Index
索引
- 當你遇到問題時
- 新聞篇
- 針對新手的代碼訓練
- 針對那些想開始一個小的項目但是無從下手的人
- 通用編碼建議
- 編碼風格
- 通用工具
- 面試準備
- 紀錄片
- 學習新知識-mooc
- 與你首選的編程語言的站點(對我來說是java)
- AI學習
- 研討會、研究性寫作、會談等
- Reddit知識彙總
- Youtube頻道
- 好文章
- 播客
- 構建一個簡單的編譯器/解釋器
- 教程
- 欣賞他人的代碼
- 一個程序員應該知道的東西
- 編程比賽
- 計算機書籍
- 視頻指南
- 在線編譯和共享代碼片段
- 開發者博客
- 用來提高你的英語
- 當你厭倦了CS相關的東西
當你遇到問題時
- Stack Overflow: 訂閱他們的每週新聞和任何你感興趣的主題
- Quora: 一個共享知識和更好的理解世界的地方
- Learn Anything: 幫助你找到學習任何知識時的最佳路徑
新聞篇
- Hacker News: 針對程序員的新聞聚合,通過新聞稿獲取頭條新聞
- Hacker Newsletter : 手工編輯,週週更新
- Hacker News Digest : 根據你想要的頻率自動處理
- Ars Technica : 發表的獨特的精品文章
- ACM TechNews
- Lobsters : Lobsters是一個聚焦於技術的社區,主要是鏈接聚合和對話題進行討論
- TechCrunch : 一個科技新聞的站點
- GSMArena.com : 與最新的移動手機和andriod相關的新聞
- product hunt : 尋找你最喜歡的東西
- AlternativeTo : 軟件推薦
- Better Dev Links : 幫助你成爲更好的開發者
針對初學者的代碼練習
- freeCodeCamp : 學習編碼並且爲非營利性組織構建項目。打造你的全棧開發技能
- Reddit.com/r/dailyprogrammer : 有趣的編程挑戰,在這裏你能學習其他人的編碼,對於你解決不了的編碼你能看看其他人是怎麼解決的
- Programming by Doing : 編程進階站點
- CodeAbbey - 一個任何人都能精通編程的地方 : 從菜鳥到專家進階之地
- Exercism.io : 用超過30種不同的語言解決實踐問題,與其他人分享你的解決方案
- Programming Tasks : 小程序彙總
- karan/Projects-Solutions 用不同語言實現的項目
- Lod - Cloud : 開放數據雲圖
- Cave of programming : 學習編程,提升技巧
- Codeacademy : 交互式編碼學習,免費
針對那些想開始一個小的項目但是無從下手的人
- martyr2s-mega-project-ideas-list : 包含125個項目,從初級到中級
- karan/Projects : 針對新手的小項目的彙總
- Wrong “big projects” for beginners : 怎樣選擇,從哪裏開始
- vicky002/1000-Projects : 一個能夠用任何編程語言解決的巨型項目清單
通用編碼建議
- 我希望在我一開始學習編碼的時候就能得到的一些建議 — Free Code Camp
- 一個程序員一生應遵循的原則
- 良好的編程原則
- 在計算機科學專業應該知道什麼
- 如何成爲一個程序員或谷歌搜索的藝術
- 代碼審查最佳實踐
- Dieter Rams : 好的產品設計的10個原則
- 成爲一名優秀開發者的10種方法
- 軟件開發者的工作
- 軟件設計模式 : 設計模式的彙總
- 設計模式 : 用例子詳細說明設計模式
編碼風格
- CS 106B 編碼風格指南 : 代碼臃腫者必看
- google C++ 編碼風格
- Airbnb JS 風格指南 : 寫JavaScript最好的方式
- 建議初學者避免使用的壞的編碼習慣?
- 優秀的 C 編碼習慣 • /r/C_Programming
- 怎樣高效的報告Bug
- 調試問題
- 你需要更好的代碼!
- 在線CS課程目錄
- CS課程目錄(許多在線講座)
通用工具
面試準備
- GeeksforGeeks | 針對geek的計算機科學入門 : 訂閱他們獲取新文章
- 一個技術面試題,邏輯題等的站點 : 各種讓你思考的東西
- Problems | LeetCode OJ : 針對面試的編碼訓練
- 程序員和軟件面試問答
- Reddit.com/user/ashish2199/m/puzzles : Reddit邏輯題
- 邏輯題答案彙總
- 資質問題與答案 : Quant and aptitude preparation
- 面試架構 - Java Honk
- 面試10大算法
- 算法設計流程
- 算法複雜度筆記
- unix/Linux筆記
- 怎樣面試
- 怎樣進行算法面試
- 優秀的邏輯題
- 通過動畫可視化數據結構和算法
- 如何爲技術面試做準備• /r/cscareerquestions
- 技術面試指南
- 爲何你會賺錢少 • /r/cscareerquestions
- IIT Delhi實習經驗
- 你的問題是什麼?
- /r/cscareerquestions : 這是一個非常大的面試問題列表是我在爲4大面試時用到的,我認爲對大家也是有用的
- 華爾街面試
- 怎樣準備一個面試 - 1
- 夏季實習:最終篇
- 25個最難的HR問題
- 求職面試新聞、視頻、評論和八卦 - Lifehacker
- 如何回答最棘手的40個面試問題| ICS Job Portal
- 求職面試問題和最好的答案
- 怎樣進行自我介紹 | The Art of Manliness
- 工作面試:如何做好求職面試|展示個人魅力
- 讓你的簡歷改頭換面
- 大家的誤解
- 位操作技巧
- Java核心面試問題 - 每個主題的面試題
- Java面試問題與答案
- 面試準備時的鏈接的彙總 • /r/cscareerquestions
- 爲求職者和僱主提供的建議
- 5個基本的電話面試問題 - steveyegge2
- CS9: CS技術面試中的問題解決
- Mission-peace/interview problems : 一個大的編碼面試的問題的彙總
- 使用韋恩圖進行SQL連接
- 10個最頻繁的SQL查詢面試問題
- 準備學習SQL篇:用語言描述一下數據庫規範化 - Essential SQL
- 編程語言概念 課堂筆記 : 面向對象概念和編程語言概念
- We Help Coders Get Hired : 提供系統設計,面試策略,軟件技能等的web站點
- 系統設計面試
- 如何進入科技企業-求職和麪試指南
- 新人面試
- 一些有趣的C問題
- 一個站點提供技術面試題,邏輯題或者你想的其他內容
- wu :: riddles(hard) : 邏輯題
- https://github.com/odino/interviews : 面試重要問題列表
- svozniuk/java-interviews : Java面試題
- kimberli/interviews : 面試學習表格
- 確定不同循環的時間複雜度? :在stackoverflow上的一些好問題包括計算時間複雜度.
- ChiperSoft/InterviewThis : 在面試期間問到對公司的瞭解的問題
- SQL面試問題 : 好的SQL測試
紀錄片
- 機器改變世界 - 關於計算機歷史的紀錄片
- 書呆子的勝利 : Play-list
- Project Code Rush - netscape/mozilla起源的紀錄片
- Linux的故事
- Linux操作系統的故事
- Breaking the Code: Alan Turing傳
- 機械計算機(All Parts) : 20世紀50年代的一個視頻,說明了在沒有現代電子的情況下機械計算機是如何工作的
- Download: 互聯網的真實故事 : 發現頻道關於瀏覽器戰爭和互聯網泡沫的記錄
- 自學計算機科學
- cpu如何執行程序(視頻)
- 機器代碼指令(視頻)
- 哈佛大學 CS50 - 漸進學習 (視頻)
- 攻破代碼面試
- 攻破代碼面試-全棧開發演講者系列
- 什麼都能問 Gayle Laakmann McDowell (程序員面試寶典的作者)
學習新知識-mooc
- 課程中心 : 超過10萬名學生評價的目錄
- NPTEL Vidoes COMP_SCI_ENGG
- Coursera.org
- edX
- MOOC.fi : 赫爾辛基大學在線課程
- Udacity
- Kadenze | Creative Programming: 注重藝術和創造力的編程課
- UCBerkeley
- 麻省理工學院電氣工程和計算機科學
- CS50
- prakhar1989/awesome-CS-courses : CS課程大彙總
- 計算機科學資源 : 針對自學者的mooc列表
- https://github.com/prakhar1989/awesome-courses/blob/master/README.md : 網上CS課程的收集
與你偏愛的編程語言相關的網站(對我來說是Java)
- Java的過去 : 學好Java準備面試
- The Java™ Tutorials : 最好的Java手冊
- Java Corner at Artima.com
- Java Visualizer : 幫助將引用,值,變量可視化
- Java課程筆記
- Learning Java : 一個免費的在線學習Java語言的教材
- 免費在線的章節用來學習java虛擬機
- 理解JVM
- 垃圾蒐集如何工作
- Welcome to JavaWorld.com
- Java內存模型
- Netbeans的鍵盤快捷鍵 : 鍵盤快捷鍵能夠使你在工作時提高生產力
- XyzWs Java FAQs : Java面試題彙總
- 搜索開源的Java API : 瀏覽Java庫的源代碼,並且學習如何實現
- JournalDev - Java, Java EE, Android, Web Development Tutorials
- 算法、數據結構、面試問題和答案的實現
- 垃圾回收是什麼 : 動態垃圾蒐集
- 學習java的最好的書 : Java基礎
- 垃圾蒐集(Java); 擴展數據結構 (視頻)
- 編譯器(視頻)
- 深入Java:垃圾回收!
- C++編程語言 : C++編程語言
- Bjarne Stroustrup’s FAQ : The C++ FAQ
- Bjarne Stroustrup’s C++風格和技術問答 : C++問答
- C++11 -新的ISO C++ 標準 : C++11問答
AI學習
研討會、研究性寫作、會談等
Reddit知識彙總
- reddit.com/user/ashish2199/m/cs_student_subs : 在reddits中計算機科學和編程相關的主題
youtube頻道
- Computerphile : 每個CS學生都應該看
- ComputerHistory : 針對那些想知道如何達成目標的人
- GoogleTechTalks : 關於熱門話題的視頻和在技術界的一些趣事
- Placement Grid : 面試及校園實習經驗
- Google Developers
- Facebook Developers
- O’Reilly : 世界最佳技術作家訪談錄
- Java : 有關Java的會談
- JavaOne : Java會議
- CppCon : C++會議
- Meeting C++ YT Kanalseite : C++會議
- ThinMatrix : 開發者在java中使用OpenGL製作的一個3D遊戲的博客和指南
- yegor256
- Scott Meyers: Past Talks
- thoughtbot : 談論各種話題
- code::dive conference : 諾基亞技術中心組織的會議
- HowToBecomeTV : 與技術界相關的開發人員的好的面試
- ITCuties
- CodeBabes : 針對那些認爲CS缺乏魅力的人
- Coding Blocks : 指南,技巧
好文章
- 初級開發者的想法
- 提升編碼技巧的關鍵
- 一位軟件開發者的閱讀列表 : 這是一些好書和鏈接
- 如何破解科技求職和麪試
- 白話40個關鍵的計算機科學概念
- 每個程序員都應該瞭解的關於內存的內容
- 我們正在通過創新重塑零售業
- Unicode
- 每個程序員都需要知道的關於在文本中設置編碼和字符的內容
- 算法清單
- 深入字節碼
- 每種計算機科學專業應該知道什麼
- 自學計算機科學
- 數據機構圖
- 關於圖論的一個介紹
- Linux Inside
- 一個對程序員友好的語言
播客
- Coding Blocks - 學習go的概念模式以及最佳實踐
- 我的開發展示
- 孤獨的開發者
- Herding Code
- Code Newbie
- 軟件工程師的無線電頻道
- javascript論壇
- 開發者茶話會 : 爲開發者設計的播客
構建一個簡單的編譯器/解釋器
教程
- Tutorialspoint
- W3Schools在線Web教程
- Open Data Structures : 用來學習數據結構和算法的優秀的資源提供了C++ , Java等各種語言的僞代碼
- Data Structures and Algorithms by John Morris : 其他的優秀代碼和對它的分析
- CMSI 281: Data Structures : 針對數據結構的輕量級的說明
- How to Program in C++ : 怎樣學習C++編程,關於學習C++的好資源
- TopCoder Tutorials
- A Hacker’s Guide to Git : 爲那些想學習git的人打下堅實的基礎
- Git從入門到精通
- 10分鐘搞定UNIX
- The Bash Guide : 學習Bash Shell的優秀教程
- Linux Tutorial : 學習Linux的好資源
- UNIX Tutorial - Introduction
- 針對新手的Linux教程
- 學習Shell
- Dynamic programming - PrismoSkills : 學習如何解決動態規劃問題
- 深入學習C語言 : very good presentation on C language
- 語言中最頻繁遇到的問題
- OS Course Notes : Galvin’s書的章節筆記
- SQL (Structured Query Language) in one page : SQL.SU : 結構化查詢語言,一個非常好的SQL記錄表
- C編程說明
- MySQL Essentials
- http://www.mysqltutorial.org/
- Best Of - Gustavo Duarte : 包含各種主題的文章
- Collecting all the cheat sheets : 大量編程語言的接口表
- The Descent to C : 針對那些從高級編程語言像java或者python遷移到C的人
- VimTutor+ : 從瀏覽器上學習VIM
- HackerEarth Tutorials : 一些數據結構和算法教程的資源
- Linux Journey : 學習Linux的好的站點
- C Programming
- CS 2112/ENGRD 2112 Fall 2015 : 數據結構和算法筆記
- More about Github-flavored markdown
- Unix編程環境
- Linux命令行:一個完整的說明
- TCP/IP圖解
- 設計模式
- 設計模式:可重用面向對象的軟件的基礎 : aka the “Gang Of Four” book, or GOF
- UNIX和Linux系統管理員手冊 第四版
- 從新手到專家-編程、web開發、DevOps新聞,教程和工具
欣賞他人的代碼
- LiveEdu.tv : 構建應用,網站遊戲等人的視頻
一個程序員應該知道的東西
- Programmer Competency Matrix : 一篇用來了解我們作爲程序員的水平的文章
- GitHub.com Build software better, together : 向其他人展示你的項目和與人協作的地方(爲了更高效的使用它必須知道Git
- Gitlab用來提供免費且無限制的私有庫和不受限制的團隊協作.
編程比賽
- HackerRank
- Codeforces
- topcoder
- UVa Online Judge : 支持多種語言的數百個問題。
- HackerEarth - Programming challenges and Developer jobs
- CodeChef
- PKU ACM ICPC Practice problems
- Archived Problems - Project Euler
- Google Code Jam Practice and : 之前比賽的練習題
- Sphere Online Judge (SPOJ)
- Art of Problem Solving
- Riddles.io AI Games : 與機器人比賽並獲取積分
- Codingame : 通過遊戲和挑戰學習編程
- Codewars : 根據完成的代碼排名
計算機書籍
- IT eBooks - Free Download - Big Library : 無廣告且能立即下載的電子書下載網站
- github.com/vhf/free-programming-books : 超過500本免費電子書幾乎包括你能想到的所有語言
- Computer Science Books Online : 大約150本計算機方面的電子書
- Best books for GATE CSE
- https://cses.fi/book.html
- Library Genesis : 幾乎包含你能想到的任何電子書,包含大量的CS文檔和手冊
視頻指南
- Tushar Roy : 數據結構和算法教程
- Derek Banas : 高質量教程
- thenewboston : 與談話內容相比有更多幹貨
- mycodeschool : 數據結構和算法教程
- CodeGeek
- CodingMadeEasy : C++教程
- XDA-University - Helping You Learn Android Development
- DevTips : web開發教程
- codedamn : 前端web開發教程
- 算法設計和分析
- Vim Tutorial Videos - Flarfnoogins : 學習vim的優秀的視頻教程
- CS1: Higher Computing - Richard Buckland UNSW : 一個非常優秀的介紹CS的課程
- Kathryn Hodge : 針對初學者的好的視頻
在線編譯和共享代碼片段
- CodePad : 支持代碼編寫,測試和運行,支持超過25種語言
- JSFiddle : 在線測試你的javascript,CSS,HTML或者CoffeeScript
- Ideone.com
- Pastebin.com
- Godbolt.org : 一款非常優秀的工具用來探索在不同編譯器沒有優化時的輸出
開發者博客
- Coding Horror : 一個最好的編程博客
- WildMl : 一個機器學習的博客
- Joel on Software
- Stephen Haunts { Coding in the Trenches }
- 在21世界編程
- Clean Coder Blog : 《代碼整潔之道》一書作者的博客
- Programming Blog : Yegor Bugayenko的編程博客
- 10K-LOC
- http://stevehanov.ca/blog/
- 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
- blog.might.net
- 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
用來提高你的英語
當你厭倦了CS相關的東西
- r/ProgrammerHumor : reddit的子論壇致力於聽
- Guide to Grammar and Writing 針對那些想提高他們的英語技巧的人
- Vsauce : 最好的youtube頻道
- TED : 關於技術,娛樂和設計的偉大演講
- CrashCourse : 各種科目的小班課程
- National Geographic : 來自世界各地的高品質內容
- Barcroft TV : 構成世界的各種各樣的人的短小的紀錄片
- ColdFusion : 過去的當前的以及未來的技術
- SmarterEveryDay : 用高速相機捕獲的關於我們周圍世界的大量的驚人的科學信息
- SciShow : 你總是想知道的一些有趣問題的答案
- Big Think : 專家驅動,內容可選,專家從總統到演員
- Every Frame a Painting : 高質量的電影分析
- TestTube News : 來自全世界的有趣的新聞
Reddit the front page of the internet : 適合有大把空閒時間的人
Maintained with :heart: by sdmg15 & al