Some useful websites for programmers.
When learning CS, there are some useful sites you must know to get always informed in order to do your technologies even better and learn new things. Here is a non exhaustive list of some sites you should visit. This list will get updated as soon as I can get another link, but you can also contribute by adding those you know 😉
Note : Chinese Version
- When you get stuck
- News
- Magazines
- Coding practice for beginners
- Cryptocurrency
- For those who want to start a small project but can't find the ideas
- General Coding advice
- Coding Style
- General Tools
- Interview Preparation
- Documentaries
- MOOCs for learning something new
- Sites related to your preferred programming language (For me Java)
- Learn AI
- Seminar , research writing , talks etc
- Everything in one place
- YouTube Channels
- Good Articles
- Bash and Shell scripting
- Podcasts
- Building a Simple Compiler/Interpreter
- Watch others code
- Tutorials
- What should a programmer know
- Competitive programming
- Computer Books
- Video Tutorials
- Online Compiler and Sharing Code snippets
- Blogs of Developers
- For improving your English
- When you get bored from CS related stuff
- Open Source Websites
- Internships
- Jobs
- Codementor : A mentorship community to learn from fellow developers via live 1:1 help and more.
- devRant : Community where you can rant and release your stress
- Learn Anything : Community curated knowledge graph of best paths for learning anything
- Quora : A place to share knowledge and better understand the world
- Stack Overflow : subscribe to their weekly newsletter and any other topic which you find interesting
- ACM TechNews : TechNews
- Stratechery : Stratechery by Ben Thompson
- AlternativeTo : Crowdsourced software recommendations
- Ars Technica : posts unique quality articles
- Better Dev Links : Weekly links to help you become a better developer
- DevOpsLinks : An online community of thousands of developers and IT experts interested in DevOps
- GSMArena.com : news related to latest mobile phones and android.
- Hacker News Digest : curated automatically, delivered as frequently as you want
- 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 Noon : How hackers start their afternoons.
- High Scalability : Success stories of various companies on their apps, infra scaling.
- Lobsters : Lobsters is a technology-focused community centered around link aggregation and discussion.
- product hunt : Discover your next favorite thing
- Recode : Tech news that focuses on the business of Silicon Valley
- Reddit.com/r/programming : Subreddit with aggregated tech news and articles
- Slashdot : News, Social news (Originally "News for Nerds. Stuff that Matters")
- StackShare : See what tools are popular with developers and companies and read about their technology decisions
- TechCrunch : dedicated to obsessively profiling startups, reviewing new Internet products, and breaking tech news
- The DEV Community : Where programmers share ideas and help each other grow.
- The Verge : More product oriented tech news
- XDA : Android Developers News
- Hashnode : Hashnode is a friendly and inclusive community for software developers
- MIT Technology Review : MIT's tech review magazine.
- Nautilus : NewYorker for tech.
- LWN : Weekly news coverage of opensource technologies, programming, etc. ( Originally Linux Weekly News).
- freeCodeCamp : Learn to code and build projects for nonprofits. Build your full stack web development portfolio today
- Blackbird School : Learn to code online with our beginner-friendly platform.
- Glitch : Great place to play around with code in an easy-to-set-up environment.
- 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.
- InterviewBit | Coding Interview Questions : Gamifies the experience of practicing for your interview and includes lots of sample problems to solve.
- 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.
- Vim adventures : Learn VIM by playing
- Programming Tasks : large collection of small programs
- Pramp : It's your turn to be the interviewer. when done, click on the swap roles button on the left
- Paqmind : Guides and challenges to learn programming
- gitignore : A collection of useful .gitignore templates for your project. Select from 442 Operating System, IDE, and Programming Language
- Codeacademy : Learn to code interactively, for free.
- treehouse : The fast, easy, and affordable way to build your skills.
- GeeksforGeeks : Learn to code, Study for placement, Do competitive coding.
- Blockchain demo : A visual demo of Blockchain technology
- Coin demo : CryptoCurrency demo
- Lopp Bitcoin Resources : Some Bitcoin Resources
- Blockchain Basics : Great introduction to blockchain
- GitCoin : Gitcoin is the easiest way to monetize or incentivize work in Open Source Software.
- Lite Paper : Cryptocurrencies & Blockchain made effortless
- freeCodeCamp | React project ideas : 27 fun app ideas you can build while learning React.
- 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!
- reddit.com/r/AppIdeas : A place to discuss ideas for applications, for bored developers.
- reddit.com/r/SomebodyMakeThis : A home for ideas by people who lack time, money, or skills.
- 10-ways-to-be-a-better-developer : Ways to become a better dev!
- Code Review Best Practices : Kevin London's blog
- Design Patterns : Design Patterns explained in detail with examples.
- Develop for Performance : High-performance computing techniques for software architects and developers
- How to become a programmer, or the art of Googling well : How to become a programmer, or the art of Googling well
- How to escape tutorial purgatory as a new developer — or at any time in your career : How to escape tutorial purgatory
- JS Project Guidelines : A set of best practices for JavaScript projects.
- Learn to Code With Me : A comprehensive site resource by Laurence Bradford for developers who aims to build a career in the tech world
- Lessons From A Lifetime Of Being A Programmer : The Codist Header Lessons From A Lifetime Of Being A Programmer
- Programming Principles : Categorized overview of Programming Principles & Patterns
- Software design pattern : The entire collection of Design Patterns.
- Things I Wish Someone Had Told Me When I Was Learning How to Code — Free Code Camp : What I’ve learned from teaching others
- What every computer science major should know : The Principles of Good Programming
- Working as a Software Developer : Henrik Warne's blog
- The Open Web Application Security Project (OWASP) : OWASP is an open community dedicated to enabling organizations to conceive, develop, acquire, operate, and maintain applications that can be trusted.
- Airbnb JS Style Guide : A mostly reasonable approach to JavaScript
- Airbnb Ruby Style Guide : A ruby style guide by Airbnb
- Ruby coding style guide : A community-driven Ruby coding style guide
- Angular 1 Style Guide : Officially endorsed style guide by John Pappa
- CS 106B Coding Style Guide : must see for those who create spaghetti
- Debugging Faqs : Check out how to debug your program
- Directory of CS Courses (many with online lectures) : Another online CS courses
- Directory of Online CS Courses : Free online CS courses
- Good C programming habits. • /r/C_Programming : C programming habits to adopt
- Google C++ Style Guide
- How to Report Bugs Effectively : Want to report a bug but you don't how? Check out this post
- What are some bad coding habits you would recommend a beginner avoid getting into? : Bad habits to avoid when you get start
- PEP8 - Style Guide for Python Code : Style Guide for Python Code
- Standard JS Style Guide : JavaScript style guide, with linter & automatic code fixer
- Google Python Style Guide : Google Python Style Guide
- Aurelia Style Guide : An Aurelia style guide by Behzad Abbasi(Behzad888)
- CodePad : Quickly Conduct Coding Interviews and Phone Screen Interviews.
- CodePen : Front End Developer Playground & Code Editor in the Browser
- CodeSandbox : Online code editor with a focus on creating and sharing web application projects.
- Devicons : Cheatsheet for devs icons
- regex101 : Online regex tester and debugger: PHP, PCRE, Python, Golang and JavaScript
- regexr : Another online tool to learn, build & test Regular Expressions
- Wit AI : Natural Language for Developers
- Seymour : Live Programming for the Classroom
- Code share : Share code in real-time with other developers
- Solid Tools for Developers : Online debugging tools for developers and system administrators
- OS Query : Easily ask questions about your Linux, Windows, and macOS infrastructure
- LaunchPad : Appollo launchepad for testing GraphQl queries
- IDE Onlang : Write in one language and get the same result in other languages.
- PullRequest : Code review as a service from vetted, professional reviewers
- Extends Class : Online developer tools: REST and SOAP clients, SQLite browser, testers (Regex, XPath, JSONPath) and other tools (Encoders, Converters and formatters)
- Advanced Bash-Scripting Guide : An in-depth exploration of the art of shell scripting
- Bash Guide for Beginners : Bash Guide for Beginners Machtelt Garrels
- Bash Programming : by Mike G mikkey at dynamo.com.ar
- Bash Reference Manual : Bash Reference Manual
- BashGuide : BashGuide - Greg's Wiki
- Conquering the Command Line : Unix and Linux Commands for Developers
- Airbon OS : Private Google Docs Alternative
- /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!
- 10 Frequently asked SQL Query Interview Questions
- A Collection of Quant Riddles With Answers
- Algorithm design canvas)
- Aptitude Questions and Answers : Quant and aptitude preparation
- A site for technical interview questions, brain teasers, puzzles, quizzles : whatever the heck those are) and other things that make you think!
- BeehYve : Student crowdsourced resources for any topic
- Big collection of interview preparation links • /r/cscareerquestions
- Big-O Algorithm Complexity Cheat Sheet
- BIG O Misconceptions
- Bitwise tricks
- ChiperSoft/InterviewThis : questions to ask during on a interview to know more about the company.
- Code Project : For those who code!
- Core Java Interview questions - Interview question on each topic
- C PUZZLES, Some interesting C problems
- CS9: Problem-Solving for the CS Technical Interview
- Delightful Puzzles
- Determining the big-O runtimes of these different loops? : really good stackoverflow question that covers basics of calculating runtime complexity.
- five-essential-phone-screen-questions - steveyegge2
- Freshers Interviews
- Gainlo : Mock interview from professionals
- GeeksforGeeks | A computer science portal for geeks : also subscribe to their feeds to get links to their new articles.
- github.com/odino/interviews : list of important questions for interview
- Give your résumé a face lift
- Here's How to Prepare for Tech Interviews • /r/cscareerquestions
- How to Answer "Tell Me a Little About Yourself" | The Art of Manliness
- How to Answer the Toughest 40 Job Interview Questions | ICS Job Portal
- How to Break Into the Tech Industry - a Guide to Job Hunting and Tech Interviews
- How to interview
- How to prepare for an interview - 1
- IIT Delhi Placement Experience
- samwincott/Internship-Guide : An aggregrate of links related to internships.
- Interviewing At Jane Street : Interviewing At Jane Street
- Interview Archives - Java Honk
- Job Interview: How to Ace a Job Interview | The Art of Manliness
- Job interviews News, Videos, Reviews and Gossip - Lifehacker
- Job Interview Questions and Best Answers
- kimberli/interviews : study sheet for Interview
- LeetCode : A new way to learn.here you can prepare for your interview.
- Mission-peace/interview problems : A large collection of coding interview problems
- Pramp | A free on demand interview practice platform for Software Engineers : Practice coding interviews with real peers
- Problems | LeetCode OJ : Coding practice for interviews
- Programmer And Software Interview Questions Answers
- Reddit.com/user/ashish2199/m/puzzles : Logic Puzzles
- SQL interview questions : great SQL test
- SQL Joins explained using venn diagram
- svozniuk/java-interviews : Java interview questions
- The 25 most difficult HR questions
- Top 10 Algorithms for Coding Interview : Algorithms for Coding Interview
- Unix / Linux Cheat Sheet
- Unsolicited_advice_for_job_seekers_and_employers
- Visualising Data Structures and Algorithms through Animation
- We Help Coders Get Hired : website offering courses on system design, interview strategies, soft skills etc
- what_are_your_goto_questions_for_the_do_you_have?
- Why You Make Less Money • /r/cscareerquestions
- wu :: riddles(hard) : logic puzzles and riddles
- Ask Me Anything : Gayle Laakmann McDowell (author of Cracking the Coding Interview)
- Breaking the Code : Biography of Alan Turing
- Cracking The Code Interview : Cracking the Code Interview
- Cracking the Coding Interview : Cracking the Coding Interview, Fullstack Speaker Series
- Download: The True Story of the Internet : Play-list of discovery channel documentary on browser wars, dot com bubble and more.
- Harvard CS50 - Asymptotic Notation (video) : Asymptotic Notation explained by Harvard
- How does CPU execute program (video) : Take a look at how a CPU executes programs
- Machine Code Instructions (video) : Code instructions
- Machine that Changed the World - a very good documentary about history of computers
- Part 1 is unavailable for free streaming due to widespread copyright claims.
- Part 2: Inventing the Future
- Part 3: The Paperback Computer
- Part 4: The Thinking Machine
- Part 5: The World at Your Fingertips
- Mechanical Computer (All Parts) : a very good video from 1950s explaining how mechanical computers used to work without all the modern day electronics.
- Project Code Rush : The Beginnings of Netscape / Mozilla Documentary
- Revolution OS Linux Documentary : a film that traces the history of GNU, Linux, open source, and the free software movement.
- Teach Yourself Computer Science : Teach Yourself Computer Science
- The Code : Story of Linux documentary
- Triumph of the Nerds : Play-list
- Class Central : a directory of 100,000+ student reviews of thousands of MOOCs.
- Computer Science Resources : list of MOOCs for autodidacts
- Coursera.org : Take the world's best courses, online.
- CS50 : A set of goods tutorials from cs50
- edX : Free Online Courses, Advance Your Career, Improve Your Life.
- Kadenze | Creative Programming : Programming courses focused on art and creativity
- MIT OCW Electrical Engineering and Computer Science
- MOOC.fi : Free online courses from the University of Helsinki
- NPTEL : Free online courses by IIT with certificates
- prakhar1989/awesome-CS-courses : List containing large amount of CS courses
- Best books for learning java must read : Get basics of Java
- Bjarne Stroustrup's C++ Style and Technique FAQ : The C++ FAQ
- Bjarne Stroustrup's FAQ : The C++ FAQ
- C++11 - the new ISO C++ standard : The C++11 FAQ
- Compilers (video) : A set of videos on how the GC works
- Deep Dive Java : Garbage Collection is Good!
- Free Online Chapters of Inside the Java Virtual Machine by Bill Venners : Java Corner
- How Garbage Collection Works : Java memory management
- Implementation of Algorithms and Data Structures, Interview Questions and Answers
- IntelliJ Keyboard Shortcuts : Keyboard shortcuts to enhance your productivity when working in IntelliJ.
- Java Corner at Artima.com : Java Corner at Artima.com
- Java Lecture Notes : Java Student's Resource
- Java Off Heap : Java Off the Heap house
- Java Revisited : good for learning about Java Language and interview preparation.
- Java-source : Java source
- Java Visualizer : helps visualize references, values of variables, etc
- JournalDev - Java, Java EE, Android, Web Development Tutorials : Java, Java EE, Android, Web Development Tutorials
- Learning Java : a free online textbook for learning Java
- Netbeans Keyboard Shortcuts : Keyboard shortcuts to enhance your productivity when working in Netbeans.
- Search Open Source Java API : view source of java library and learn how things are implemented.
- The C++ Programming Language : The C++ Programming Language.
- The Java Memory Model: The Java Memory Model
- The Java™ Tutorials : The best tutorials for Java.
- Understanding JVM Internals : Understanding JVM Internals
- what-is-garbage-collection : Demystify the garbage collection
- JavaWorld : Welcome to Javaworld
- XyzWs Java FAQs : large collection of java interview questions
- JavatPoint : Best website to get a basic Java programming tutorial
- aima : The leading textbook in Artificial Intelligence (4th most cited publication of the century). Includes Github repositories and more AI resources!
- fast.ai : Free practical deep learning course for coders without grad-level maths!
- grakn.ai : The Database for AI
- Robots that learn : Robots that Learn
- Unsupervised Sentiment Neuron : Unsupervised Sentiment Neuron
- What's the difference between AI- DP and ML? : Difference artificial intelligence, machine-learning, deep-learning-ai
- TensorFlow : An open-source software library for Machine Intelligence
- Scikit-learn : A Python module for machine learning build on top of SciPy
- DeepLearning.ai : Deep Learning course by Andrew Ng, Founder of coursera
- Coding the History of Deep Learning : Coding the History of Deep Learning
- Serpent AI : Game Agent Framework. Helping you create AIs / Bots to play any game you own! BETA
- Blog Floydhub : Colorizing B&W Photos with Neural Networks
- Advice on Research and Writing : A collection of advice about how to do research and how to communicate effectively (primarily for computer scientists).
- PHD MS Articles : articles and views
- Seminar and reports : Everyone must read this tiny book before writing the seminar report
- Latex reference : Arbitrary reference
- Begin Latex in minutes : Brief Intro to LaTeX for beginners that helps you use LaTeX with ease
- Lshort : The Not So Short Introduction to LATEX2ε
- reddit.com/user/ashish2199/m/cs_student_subs : a multisubreddit of all subreddits of topics related to computer science and programming.
- Websites a programmer should visit : Response on Quora by ashish2199
- Moocha : Search online courses from edX, Coursera, Udacity, & more
- Rico's cheatsheets : A set of good cheatsheets
- API Documentation : A one-place well known API Documentation with searchable interface
- MDN : A place with all the documentation of the web standards
- C++Now (BoostCon) : C++Now (previously BoostCon) conference
- code::dive conference : code::dive conference organized by NOKIA Wrocław Technology Center
- Coding Blocks : Tutorials, how to's, tips and tricks
- Computerphile : Must watch for every CS student
- ComputerHistory : for those who like to know how we reached where we are.
- CppCon : C++ Conference
- Facebook Developers
- Google Developers
- GoogleTechTalks : videos on trending topics and cool stuff happening in the tech industry.
- Gynvael Coldwin : Awesome reverse engineering and hacking(CTF) videocasts. Every wednesday are new live streams.
- HowToBecomeTV : contains good interviews of developers and people related to tech industry.
- Java : talks related to java
- JavaOne : Java Conference
- javidx9 : Game and graphics tutorials
- Meeting C++ YT Kanalseite : Talks on C++
- Netflix UI Engineering : great videos to watch for web developers, mobile developers and those interested in some of Netflix's tech stack
- O'Reilly : interviews and talks of world's best technical writers.
- Placement Grid : Interview and campus placement experience
- Scott Meyers: Past Talks
- Siraj Raval : Artificial Intelligence and deep learning tutorials videos
- ThinMatrix : blogs and tutorials developer making a 3d game in Java using opengl
- thoughtbot : talks on various topics
- Traversy Media :Web development and programming
- yegor256
- GOTO Conference : tech talks from the GOTO Conference by Developers for Developers
- freeCodeCamp : freecodecamp youtube channel
- Bo Qian : Learn advanced c++
- Geeksforgeeks : geeksforgeeks youtube
- Hacker earth : Hacker earth youtube
- Hak5 : Put together by a band of IT ninjas, security professionals and hardcore gamers, Hak5 isn't your typical tech show. We take on hacking in the old-school sense.
- Khan Academy : Khan Academy youtube
- LearnCode.academy : 100% FREE Web Development tutorials, web site design tutorials and more. Including, but not limited to: HTML, CSS, JavaScript, CSS Layouts, Responsive Design, React.js, Node.js, Angular.js, Docker, Dev
- Rachit Jain : competetive programming
- sentdex : Python Programming tutorials, going further than just the basics. Learn about machine learning, finance, data analysis, robotics, web development, game development and more.
- The Coding Train : In this YouTube channel I publish "creative coding" video tutorials every week. Subjects covered range from the basics of programming languages like JavaScript (with p5.js) and Java (with Processing) to generative algorithms like physics simulation, computer vision, and data visualization.
- TheHappieCat : Videos on technology, storytelling, and being happie.
- Tutorials Point (India) Pvt. Ltd. : Tutorials Point originated from the idea that there exists a class of readers who respond better to online content and prefer to learn new skills at their own pace from the comforts of their drawing rooms. We bring simple to understand Text and Video tutorials at zero cost and cover many subjects including IT, Engineering, MBA, MCA, Management, Various Exams Preparation and Academic subjects. If you are really not extravagant and willing to save your money and time then we recommend you to try our tutorials.experience
- Udacity : Udacity, a pioneer in online education, is building "University by Silicon Valley", a new type of online university
- V. Anton Spraul : Videos for people who want to understand software better, including explanations of how software performs some of its most important jobs and tools programmers can use to to solve programming problems.
- xdadevelopers : You have found the world-famous XDA-Developers.com YouTube Channel, known as XDA TV. We cover Android and Windows Mobile from HTC, Samsung, Motorola, Sony, and more. Learn about rooting your Android, how to build applications, and more.
- 40 Keys Computer Science Concepts Explained In Layman’s Terms
- A Gentle Introduction To Graph Theory
- A programmer friendly language that compiles to Lua.
- A Software Developer’s Reading List : Some good books and links in there.
- Code a TCP/IP stack : Let's code a TCP/IP stack, 5: TCP Retransmission
- Codewords.recurse : The language of choice
- Data structure and Algorithms : List of some algorithms and datastructure with their solutions.
- Dive into the byte code
- Expectations of a Junior Developer
- Linux Inside
- List of algorithms
- Step by Step Guide to Database Normalization: A guide to database normalization.
- The Key To Accelerating Your Coding Skills
- Unicode
- We are reinventing the retail industry through innovative technology
- What every programmer absolutely, positively needs to know about encodings and character sets to work with text
- What every programmer should know about memory - PDF
- Why fast pages are important : Why App Speed Matters, Revenue
- qotoqot - improving-focus : How I got to 200 productive hours a month
- Pixel Beat - Unix : Parallel processing with unix tools
- Learning Vim : What I Wish I Knew
- Write a Kernel : Kernel 101 – Let’s write a Kernel
- Learning JavaScript Design Patterns : online version of the Learning JavaScript Design Patterns published by O'Reilly, released by the author Addy Osmani under CC BY-NC-ND 3.0
- Coding Blocks : A podcast covering topics such as best programming practices, design patterns, coding for performance, object oriented coding, database design and implementation, tips, tricks and a whole lot of other things.
- Developer On Fire : A podcast that shares the humanity of developers and tells stories of some of the amazing people in software, hosted by Dave Rael.
- Developer Tea : A podcast for developers designed to fit inside your tea break.
- 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.
- Full Stack Radio : Everything from product design and user experience to unit testing and system administration.
- Groovy Podcast : A podcast dedicated to the Groovy programming language and its ecosystem.
- IPhreaks : A weekly group discussion about iOS development and related technology by development veterans. We discuss Apple, tools, practices, and code.
- JavaScript Jabber : A weekly discussion about JavaScript, front-end development, community, careers, and frameworks.
- Learn To Code With Me Podcast : A Season by season of tech podcast episodes by Laurence Bradford with topics ranging from Career in Tech to lessons in doing tech business
- MS Dev Show : Jason Young and Carl Schweitzer talk about the latest in developer news covering topics such as the Azure cloud, Windows, Windows Phone, Visual Studio, and cross-platform development using the Microsoft platform.
- React Native Radio : A weekly discussion of the tools, techniques, and technologies used to build mobile applications with JavaScript and React.
- Software Engineering Daily : A daily technical interview about software topics.
- Software Engineering Radio : A podcast targeted at the professional software developer. The goal is to be a lasting educational resource, not a newscast.
- Syntax : A Tasty Treats Podcast for Web Developers by Wes Bos & Scott Tolinski.
- 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.
- The Cynical Developer : A podcast that aims to help you to improve your development knowledge and career, through explaining the latest and greatest in development technology and providing you with what you need to succeed as a developer. Covering Desktop, web and mobile development, mainly around the .Net Stack but often looking into other software and frameworks.
- Blockchain Insider by 11:FS : Podcast to learn about the Blockchain Technology
- Unchained Podcast to learn about the Blockchain Technology
- Talk python to me Podcast to learn about Python through interviews and discussions
- Python bytes Podcast to learn about the latest happenings and trends in Python
- ⛄ Possibly the smallest compiler ever : This is an ultra-simplified example of all the major pieces of a modern compiler written in easy to read JavaScript.
- Awesome Compilers : Curated list of awesome resources on Compilers, Interpreters and Runtimes.
- Growing a compiler : Learn how to grow a compiler
- Let’s Build A Simple Interpreter. Part 1. : Try to demystify compilers by building one
- Resources for Amateur Compiler Writers : Resources for Amateur Compiler Writers
- Structure and Interpretation of Computer Programs : Structure and Interpretation of Computer Programs
- Writing My First Compiler : Write out your first compiler
- An Intro to Compilers : How to Speak to Computers, Pre-Siri
- Write your own compiler : How to write your own compiler
- Crafting Interpreters A handbook for writing interpreters, first implementing a tree walking interpreter and later a bytecode virtual machine
- A Hacker's Guide to Git : for those wanting to learn git with a solid foundation
- Best Of - Gustavo Duarte : contains articles on various topics
- CMSI 281: Data Structures : light weight introduction to DS
- Collecting all the cheat sheets : cheat sheets for lots of programming languages
- C Programming
- Data Structures and Algorithms by John Morris : another good source with code and its analysis
- Programming Community Curated C++ Resources : resources recommended by developers
- Deep C : very good presentation on C language
- Design Patterns: Elements of Reusable Object-Oriented Software : aka the "Gang Of Four" book, or GOF
- Dynamic programming - PrismoSkills : very good resource if want to learn how to solve DP problems.
- Git from the inside out
- Head First Design Patterns
- How to Program in C++ : Good resource for revising C++ topics and STL
- http://www.mysqltutorial.org/
- indradhanush tutotials : Writing a Unix Shell
- Introduction to C Programming
- Learn UNIX in 10 minutes
- Learning the shell.
- Linux Journey : good site for learning linux
- Linux Tutorial : good resource for learning Linux
- More about Github-flavored markdown
- MySQL Essentials
- Open Data Structures : Excellent resource for learning about DS and algos, provides code in various languages C++, Java and pseudocode.
- OS Course Notes : Chapter wise course notes according to Galvin's book
- Programming, Web Development, and DevOps news, tutorials and tools for beginners to experts
- SQL (Structured Query Language) in one page : SQL.SU : a very good SQL cheat sheet
- 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
- TCP/IP Illustrated Series
- The Bash Guide : very good guide for learning the Bash Shell
- The Descent to C : for those moving to C from some higher programming language like java or python.
- The Linux Command Line: A Complete Introduction
- The Unix Programming Environment
- TopCoder Tutorials
- Tutorialspoint : Text and Video Tutorials for UPSC, IAS, PCS, Civil Services, Banking, Aptitude, Questions, Answers, Explanation, Interview, Entrance, Exams, Solutions
- UNIX and Linux System Administration Handbook, 4th Edition
- VimTutor+ : Learn VIM from the browser.
- W3Schools Online Web Tutorials
- Unix Shell : Unix shell scripting with ksh/bash
- Snap SVG : The JavaScript SVG library for the modern web
- vim.rtorr : Vim Cheat Sheet
- Open Vim : Interactive Vim tutorials
- Algorithm Using Dynamic Programming and A : Designing a Tree Diff Algorithm Using Dynamic Programming and A*
- Learn Python : Free Interactive Python Tutorial
- C++17 : A guide of C++17
- The Bash Academy : The Bash Academy is an initiative to promote the bash shell language and educate people on its use.
- Learn Shell Programming : This website is intended for everyone who wishes to learn programming with Unix/Linux shell interpreters.
- Java tutorial : A programming community & a great place to find the best online programming courses and tutorials.
- LiveEdu.tv : screencast of people building application, websites, games, etc.
- Twitch.tv : The programming community of twitch.
- 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
- Programmer Competency Matrix : article for knowing what our level as a programmer is.
- Topic Wise Problem For Competitive Programmer : Topic wise Practise Problem
- Archived Problems - Project Euler : Problems Archives
- Art of Problem Solving : Is math class too easy for you? You've come to the right place!
- CodeChef : The only programming contests Web 2.0 platform
- Codefights : Test your coding skills
- Codeforces : Programming Competition,Programming Contest,Online Computer Programming
- Codewars : Rank up by completing code kata
- Codility : Verify and improve coding skills
- Codingame : Learn coding through games and challenges!
- Facebook Hacker Cup : Facebook's Programming Contest, past problems solutions and FAQ
- Google Code Jam Practice and : past contest problems for practice
- HackerEarth - Programming challenges and Developer jobs
- HackerRank : Practice coding. Compete. Find jobs.
- PKU ACM ICPC Practice problems : Judge online for ACMACPC
- Sphere Online Judge (SPOJ) : Become a true programming master Learn how to code and build efficient algorithms
- Topcoder : Deliver Faster through Crowdsourcing
- URI Online Judge : Practice coding, Compete and be a better coder.
- UVa Online Judge : hundreds of problems supporting multiple languages.
- WakaTime : leaderboards of coding metrics collected via editor plugins
- Become a Programmer, Motherfucker (list of books) : Exhaustive list of books from Zed A. Shaw.
- Best books for GATE CSE
- cses.fi/book.html
- github.com/vhf/free-programming-books : More than 500 free ebooks on almost any language you can think of
- GitBook : GitBook helps your team write, collaborate and publish content online.
- Data Science course : Python Data Science Handbook
- Goal Kicker : Programming Notes for Professionals books
- The GraphQL Guide : The complete guide to GraphQL, the new REST ✨
- codedamn : front end web dev tutorials
- Code School : A PluralSight Company and an Interactive learning destination for aspiring and experienced Developers
- CodingMadeEasy : C++ tutorials
- CS1: Higher Computing - Richard Buckland UNSW : a very good introductory CS course
- Derek Banas : good quality tutorials
- Design and Analysis of Algorithms
- DevTips : web dev tutorials
- FreeCourses : Free courses about programming
- Kathryn Hodge : Has good videos for beginners
- mycodeschool : Data structures and algorithms tutorials
- Pluralsight : Learn Software Development, DevOps and Data Science through multiple short courses
- thenewboston : good but with too much talk as compared to actual content
- Tushar Roy : Algorithm and Data structure tutorial by an Indian Youtuber.
- Vim Tutorial Videos - Flarfnoogins : good video tutorial for learning vim
- XDA-University - Helping You Learn Android Development
- Khan Academy : learn about computer science for free
- Functional programming : John Carmack on Functional Programming (2013)
- Video about vims : A serie of tutorials about Vim
- CodePad : Code editor to try, test and run 25+ languages
- Codesandbox.io : CodeSandbox makes it easier to create, share and reuse React projects with others.
- Godbolt.org : Excellent tool for exploring the assembly output of different compilers with and without optimization.
- Ideone.com : online compiler and debugging tool for more than 60 programming languages
- JSFiddle : Test your JavaScript, CSS, HTML or CoffeeScript with online code editor
- Pastebin.com : Pastebin can store texts like code, notes, and snippets online for a set period of time which can be shared instantly.
- C9.io : Your development environment, in the cloud
- Github Gist : Instantly share code, notes, and snippets.
- Algo-Geeks : Programming Puzzles, Math Tricks, Algorithms etc
- Andy Heathershaw : Personal website and blog of software developer Andy Heathershaw
- Antonio081014's Algorithms Codes : The world is under the RULE.
- Archives — Ask a Manager : HR related stuff
- Armin Ronacher's Thoughts and Writings : blog on Python and open source
- blog.might.net : the blog of might dot net
- Brendon Gregg - Linux Kernel Dev : the blog of Brendon D. Gregg
- Clean Coder Blog : blog of author of book "Clean Code"
- CodeAhoy : Blog on software and human factors. 100% Tested on Humans.
- CoderGears Blog Insights from : the CoderGears Team
- Coding Geek - A blog about IT, programming and Java : A blog about IT, programming and Java
- Coding Horror : one the best coding blog
- CSE Blog : quant, math, computer science puzzles
- Daedtech.com : Stories about software
- Dan Dreams of Coding
- Daniel Lemire's Blog : Daniel Lemire's blog
- Eli Bendersky : everything from Python to LLVM
- Geek Land : My precious collectibles
- HackerEarth Blog : The hackerearth blog
- IT Enthusiast : IT Enthusiast
- Joel on Software : The blog of the CEO of StackOverflow
- Late Developer : Random thoughts of an old C++ guy
- 1ucasvb's laboriginal math and physics visualization : Lucas Vieira Barbosa's lab original math and physics visualization
- Math ∩ Programming : Math ∩ Programming
- My Tech Interviews : PREPARE FOR A TECHNICAL INTERVIEW
- Paul Graham Essays : Paul Grahan Essays
- Programming Blog : programming blog of Yegor Bugayenko
- Programming in the 21st Century : programming in the twenty-first century
- rudhakar Rayavaram : Sudhakar Rayavaram Blog's
- Runhe Tian Coding Practice : Technical interview questions from Apple, Google, Facebook, Amazon and Microsoft
- Small Programming Challenges and Puzzles : Project Nayuki
- stevehanov.ca : I know how to make and sell software online, and I can share my tips with you.
- Takipi Blog : mainly focuses on Java and JVM languages
- WildMl : A blog for machine learning.
- XDA - Android Developer Forum : Android Open Source Developers Forum
- Englishclub.com/learn-english
- Guide to Grammar and Writing : for those who want to improve their english language skills
- Punctuation and Capitalization Rules
- Purdue University Online Writing Lab (OWL)
- Quia - English
- Barcroft TV : Daily short documentaries about the incredible variety of people that make up the world
- Big Think : Expert driven, actionable, educational content, featuring experts ranging from Bill Clinton to Bill Nye
- ColdFusion : Past, present, and future of technology
- CrashCourse : small courses on various subjects
- Every Frame a Painting : High quality analysis of films and filmmaking
- National Geographic : High volume of high quality content from all over the world
- r/ProgrammerHumor : Subreddit dedicated to exactly what it sounds like
- Reddit the front page of the internet : Where free time goes to die
- Ridddle : A youtube channel about science, mainly, but not only, the universe and space.
- Regex Crossword : A simple crossword game where clues are regex that must be mached.
- SciShow : Answers to interesting questions that you've always wondered about
- SmarterEveryDay : Lots of amazing scientific information about the world around us, usually captured with a high-speed camera
- TED : Great talks about technology, entertainment, and design
- TestTube News : Interesting information about news from around the world
- How to live for long time ? : The secret of longevity
- Vsauce : The best youtube channel
- Ox A cuk : How to live a happy life
- lonelyspeck : Expose to the Right for Astrophotography in Light Pollution – Palos Verdes, Los Angeles, California
- Open Hatch : OpenHatch is a non-profit dedicated to matching prospective free software contributors with communities, tools, and education.
- Source Forge : SourceForge hosts nearly 280,000 projects (at last count). It serves more than 2 million downloads a day and includes apps and tools in a wide variety of categories.
- Google Code : Google offers free hosting for open source projects using the Subversion or Mercurial version control systems. It offers 2 GB of storage, integrated code review tools, a wiki, and an issue tracker. The Google Code site also provides links to Google's many publicly available APIs and other developer tools.
- Launch Pad : Maintained by Canonical, LaunchPad is particularly targeted at projects that run on Ubuntu. It provides hosting for more than 21,000 projects that use the Bazaar version control system.
- Google Open Source : Google Open Source
- Red Hat Developer : The world's leading provider of open source solutions
- Open Source : Open Source
- Google Summer of Code : Google Summer of Code is a global program focused on bringing more student developers into open source software development. Students work with an open source organization on a 3 month programming project during their break from school.
- Open Source Web Design : Open Source Web Design is a platform for sharing standards-compliant free web design templates. We give web publishers a voice through good design.
- Mozilla Winter of Security : The Winter of Security (MWOS) is a program organized by Mozilla's Security teams to involve students with Security projects. Students who have to perform a semester project as part of their university curriculum can apply to one of the MWOS project.
- Eclipse Lab : Eclipse Labs is a community of open source projects that build technology based on the Eclipse platform. It provides the infrastructure services typically required by open source projects, such as code repositories, bug tracking, project web sites/wiki. Eclipse Labs is hosted by Google Code Project Hosting, so it will be very familiar to developers already using Google Code Project Hosting.
- Bit Bucket : Like GitHub, BitBucket hosts both public and private projects. On this site, open source projects and private projects with fewer than five users are free. It hosts more than 48,000 repositories, many of which are searchable on the site.
- Media Wiki : MediaWiki is a free software open source wiki package written in PHP, originally for use on Wikipedia. It is now also used by several other projects of the non-profit Wikimedia Foundation and by many other wikis, including this website, the home of MediaWiki.
- Code Curiosity : CodeCuriosity is a platform that encourages contributions to open source. Everyone is rewarded for their efforts, no matter how big or small they are.
- Code Triage : Help out your favorite open source projects and become a better developer while doing it.
- Issue Hub : Contribute to Open Source. Search issue labels to find the right project for you
- Up for Grabs : This is a list of projects which have curated tasks specifically for new contributors. These are a great way to get started with a project, or to help share the load of working on open source projects.
- First Timers Only : Contributing to open source for the first time can be scary and a little overwhelming. Perhaps you’re a Code Newbie or maybe you’ve been coding for a while but haven’t found a project you felt comfortable contributing to.
- Your First PR : Your First PR helps you get started contributing to Open Source by showcasing great starter issues on GitHub and elsewhere.
- Chegg : It is an awesome resource for finding internships, scholarships, tutors, etc.
- Internshala : You can search internships here according to your skill sets for your interested location. It also helps you in getting a good PPO offer from the company.
- Letsintern : Get a smart and challenging internship for you from the LetsIntern.
- PerfectIntern: Get help finding a paid internship, resume prep, interview prep, and more!
- AngelList : AngelList is a website for startups, angel investors, and job-seekers looking to work at startups.
- CareerBuilder : CareerBuilder is one of the largest job boards, providing job listings, resume posting, and career advice and resources to job seekers.
- Dice : Dice is the leading site for tech job seekers. You can search by company, job title, keyword, employment type, and location.
- Glassdoor : Find the job that's right for you. Search all the open positions on the web. Get your own personalized salary estimate.
- IAESTE : Find more and amazing international internships and jobs.
- Indeed : Find international jobs on Indeed and get a market salary for your dedication and devotion.
- Instahyre : Your dream job is now here. Showcase yourself to a curated list of top companies. Complete privacy and no spam.
- Mentat : Get your dream job 10x faster. Never apply for a job ever again, talk directly to decision makers and hiring managers.
- The Muse : Find everything you need to succeed from dream jobs to career advice. You can do a lot here on The Muse like exploring companies, browsing jobs, career advice, discover careers, career coaching. Try it.
- Paysa : Paysa helps you in finding new and interesting jobs according to your wish.
- SimplyHired : Simply Hired is a free job search engine (and mobile app) that takes the hassle out of getting hired and provides you with all the information you need to make a sound career move.
- Undercover Recruiter : Become Recruiter, Candidate or Employer. You can get your job easily here.
- Who is Hiring : An awesome resource for searching, filtering and finding new and attractive jobs according to your needs and interests.
- ZipRecruiter : The Smartest Way to Get Hired.
- RemoteML : Remote Machine Learning jobs.
- Please consider a github star if you find this useful and/or consider making a contribution.
- A special thanks to Ashish Padalkar (@ashish2199) for contributing a great amount of data and structure to the initial repository Original Post.