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 eve 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 😉
- When you get stuck
- News
- Coding practice for beginners
- 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
- 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
- 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
- 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
- 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
- TechCrunch : dedicated to obsessively profiling startups, reviewing new Internet products, and breaking tech news
- The Verge : More product oriented tech news
- XDA : Android Developers News
- Cave of programming : Learn to program, Upgrade your skills.
- Codeacademy : Learn to code interactively, for free.
- 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.
- freeCodeCamp : Learn to code and build projects for nonprofits. Build your full stack web development portfolio today
- karan/Projects-Solutions : Solutions to most of the problems in the link above
- Lod - Cloud : The Linking Open Data cloud diagram
- Programming by Doing : very good site for those who want to start with absolute basics
- 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.
- People Can Program : The most user-friendly code learning application on the internet.
- Programming Tasks : large collection of small programs
- Vim adventures : Learn VIM by playing
- 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!
- 10-ways-to-be-a-better-developer : Ways to become a better dev!
- Code Review Best Practices : Kevin London's blog
- Dieter Rams : 10 Principles of Good Product Design : Stephen Haunts { Coding in the Trenches }
- Design Patterns : Design Patterns explained in detail with examples.
- How to become a programmer, or the art of Googling well : How to become a programmer, or the art of Googling well
- JS Project Guidelines : A set of best practices for JavaScript projects.
- 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
- Airbnb JS Style Guide : A mostly reasonable approach to JavaScript
- Airbnb Ruby Style Guide : A ruby style guide by Airbnb
- 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
- Stuff you need to Code Better! : Stuff that will help you
- What are some bad coding habits you would recommend a beginner avoid getting into? : Bad habits to avoid when you get start
- CodePad : Quickly Conduct Coding Interviews and Phone Screen Interviews.
- CodePen : Front End Developer Playground & Code Editor in the Browser
- Devicons : Cheatsheet for devs icons
- regex101 : Online regex tester and debugger: PHP, PCRE, Python, Golang and JavaScript
- /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!
- Big collection of interview preparation links • /r/cscareerquestions
- Big-O Algorithm Complexity Cheat Sheet
- BIG O Misconceptions
- Bitwise tricks
- checkcheckzz/system-design-interview
- 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
- GeeksforGeeks | A computer science portal for geeks : also subscribe to their feeds to get links to their new articles.
- Get Ready to Learn SQL: 8. Database Normalization Explained in Simple English - Essential SQL
- github.com/odino/interviews : list of important questions for interview
- Give your résumé a face lift
- Guide to Tech Interviews
- Here's How to Prepare for Tech Interviews • /r/cscareerquestions
- How to Ace an Algorithms Interview
- 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
- Interviewing At Jane Street
- Interview Archives - Java Honk
- Java Interview Questions and Answers
- 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
- 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
- Programming Language Concepts: Lecture Notes : OOPs concepts and programming language concepts.
- Reddit.com/user/ashish2199/m/puzzles : Logic Puzzles
- SQL interview questions : great SQL test
- SQL Joins explained using venn diagram
- Summer Internship: The Ultimate Guide
- svozniuk/java-interviews : Java interview questions
- The 25 most difficult HR questions
- Top 10 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 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)
- How does CPU execute program (video)
- Machine Code Instructions (video)
- 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
- 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
- CS50
- edX
- 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
- NPTEL Vidoes COMP_SCI_ENGG
- 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)
- Deep Dive Java: Garbage Collection is Good!
- Free Online Chapters of Inside the Java Virtual Machine by Bill Venners
- Garbage collection (Java); Augmenting data str (video)
- How Garbage Collection Works
- 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 Lecture Notes
- 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 ect
- JournalDev - 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™ Tutorials : The best tutorials for Java.
- Understanding JVM Internals
- what-is-garbage-collection : Demystify the garbage collection
- Welcome to JavaWorld.com
- XyzWs Java FAQs : large collection of java interview questions
- 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
- Advice on Research and Writing
- PHD MS Articles
- Practical Tips for Talking at Usergroups and Conferences and Giving presentation on software project to non-programmers
- Seminar and reports
- reddit.com/user/ashish2199/m/cs_student_subs : a multisubreddit of all subreddits of topics related to computer science and programming.
- 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
- Fun Fun Function : A weekly series from Mattias Petter Johansson on an assortment of programming topics, including some not directly related to coding.
- 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
- 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
- yegor256
- 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
- Data structure and Algoritms : List of some algoritms and datastructure with their solutions.
- Data Structure Map
- Dive into the byte code
- Expectations of a Junior Developer
- Linux Inside
- List of algorithms
- 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, Part 1
- Why fast pages are important : Why App Speed Matters, Revenue
- 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.
- 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.
- ⛄ Possibly the smallest compiler ever
- Awesome Compilers : Curated list of awesome resources on Compilers, Interpreters and Runtimes.
- Growing a compiler
- Let’s Build A Simple Interpreter. Part 1.
- Resources for Amateur Compiler Writers
- Structure and Interpretation of Computer Programs
- Writing My First Compiler
- 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
- C programming language Frequently Asked Questions
- CS 2112/ENGRD 2112 Fall 2015 : Good notes on data structures and algorithms.
- Data Structures and Algorithms by John Morris : another good source with code and its analysis
- 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
- Linux Tutorial for Beginners
- 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 , 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
- UNIX and Linux System Administration Handbook, 4th Edition
- UNIX Tutorial - Introduction
- VimTutor+ : learn VIM from browser itself
- W3Schools Online Web Tutorials
- LiveEdu.tv : screencast of people building application, websites, games, ect.
- 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.
- Archived Problems - Project Euler
- Art of Problem Solving
- CodeChef
- Codefights : Test your coding skills
- Codeforces
- Codewars : Rank up by completing code kata
- Codility : Verify and improve coding skills
- Codingame : Learn coding through games and challenges!
- Google Code Jam Practice and : past contest problems for practice
- HackerEarth - Programming challenges and Developer jobs
- HackerRank
- PKU ACM ICPC Practice problems
- Sphere Online Judge (SPOJ)
- Topcoder
- 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
- Computer Science Books Online : about 150 computer free ebooks
- cses.fi/book.html
- github.com/vhf/free-programming-books : More than 500 free ebooks on almost any language you can think of
- IT eBooks - Free Download - Big Library : website for downloading ebooks without any advertisement and instant downloads.
- 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
- 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
- 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
- Algo-Geeks
- Antirez - Redis Creator's blog
- Antonio081014's Algorithms Codes
- Archives — Ask a Manager : HR related stuff
- Armin Ronacher's Thoughts and Writings : blog on Python and open source
- blog.might.net
- 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
- Coding Horror : one the best coding blog
- CSE Blog - quant, math, computer science puzzles
- Daedtech.com : Stories about software
- Dan Dreams of Coding
- Eli Bendersky : everything from Python to LLVM
- Geek Land
- HackerEarth Blog
- IT Enthusiast
- Joel on Software
- Late Developer
- Math ∩ Programming
- My Tech Interviews
- Paul Graham Essays
- Programming Blog : programming blog of Yegor Bugayenko
- Programming in the 21st Century
- rudhakar Rayavaram : Sudhakar Rayavaram Blog's
- Runhe Tian Coding Practice
- Small Programming Challenges and Puzzles
- Stephen Haunts { Coding in the Trenches }
- stevehanov.ca
- 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
-
How to live for long time ? : The secret of longevity
-
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.
-
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
-
Vsauce : The best youtube channel
Maintained with ❤️ by sdmg15 & al