1
0
mirror of https://github.com/namibia/free-programming-books.git synced 2024-12-26 16:37:33 +00:00
programming-books/free-courses-en.md
Gary Sieling f46a9885bf Update free-courses-en.md (#2269)
* Update free-courses-en.md

I built this search engine for my own research into software architecture, but I suspect it might be helpful to others.

* Update free-courses-en.md

* Update free-courses-en.md
2017-03-11 15:04:40 +01:00

313 lines
14 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

### Index
* [Algorithms & Data Structures](#algorithms--data-structures)
* [Android](#android)
* [AngularJS](#angularjs)
* [Assembly](#assembly)
* [Bash](#bash)
* [C](#c)
* [C#](#c-sharp)
* [C++](#c-1)
* [Clojure](#clojure)
* [Compilers](#compilers)
* [CUDA](#cuda)
* [Data Science](#datascience)
* [Databases](#databases)
* [Deep Learning](#deep-learning)
* [Git](#git)
* [Go](#go)
* [Haskell](#haskell)
* [HTML / CSS](#html--css)
* [iOS](#ios)
* [Java](#java)
* [JS](#js)
* [Lua](#lua)
* [Machine Learning](#machine-learning)
* [Matlab](#matlab)
* [Misc](#misc)
* [OCaml](#ocaml)
* [Oracle PL/SQL](#oracle-plsql)
* [Python](#python)
* [R](#r)
* [RethinkDB](#rethinkdb)
* [Ruby](#ruby)
* [Sails.js](#sailsjs)
* [Scala](#scala)
* [Software Engineering](#software-engineering)
* [Swift](#swift)
* [SystemVerilog](#systemverilog)
* [Theory](#theory)
* [Web Development](#web-development)
### Algorithms & Data Structures
* [Berkeley University CS 61B: Data Structures](http://datastructur.es/sp16/)
* [Stanford University Algorithms: Design and Analysis, Part 1](http://online.stanford.edu/course/algorithms-design-and-analysis-part-1)
* [Stanford University Algorithms:Algorithms: Design and Analysis, Part 2](http://online.stanford.edu/course/algorithms-design-and-analysis-part-2)
### Assembly
* [Introduction To Reverse Engineering Software](http://opensecuritytraining.info/IntroductionToReverseEngineering.html)
* [Introductory Intel x86: Architecture, Assembly, Applications, & Alliteration](http://opensecuritytraining.info/IntroX86.html)
### Android
* [Creative, Serious and Playful Science of Android Apps](https://www.coursera.org/course/androidapps101/)
* [Material design](https://material.io/guidelines/)
* [Programming Cloud Services for Android Handheld Systems](https://www.coursera.org/course/mobilecloudprogram)
* [Programming Mobile Applications for Android Handheld Systems pt. 1](https://www.coursera.org/course/android)
* [Programming Mobile Applications for Android Handheld Systems pt. 2](https://www.coursera.org/course/androidpart2)
* [Programming Mobile Services for Android Handheld Systems: Communication](https://www.coursera.org/course/posacommunication)
* [Programming Mobile Services for Android Handheld Systems: Concurrency](https://www.coursera.org/course/posaconcurrency)
* [Udacity Android Course Catalog](https://www.udacity.com/courses#!/android#!/android)
### AngularJS
* [CodeCademy Angular](https://www.codecademy.com/learn/learn-angularjs)
* [Shaping up with Angular.js](https://www.codeschool.com/courses/shaping-up-with-angular-js)
### Bash
* [Bash tutorial](http://gdrcorelec.ups-tlse.fr/files/bash.pdf) (PDF)
### C
* [Introduction to Computer Science](https://www.edx.org/course/introduction-computer-science-harvardx-cs50x#.VNsjDvmUcmQ)
### C Sharp
* [Beginning Game Programming with C#](https://www.coursera.org/course/gameprogramming)
### C++
* [Google's C++ Course](https://developers.google.com/edu/c++/)
* [Introduction to C++](http://ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-096-introduction-to-c-january-iap-2011/) (MIT's opencourseware)
* [LearnCpp.com C++ Tutorial](http://www.learncpp.com)
### Clojure
* [Functional Programming with Clojure](http://mooc.fi/courses/2014/clojure/index.html)
### Compilers
* [Stanford's Compilers](https://lagunita.stanford.edu/courses/Engineering/Compilers/Fall2014/about)
### Cuda
* [Intro to Parallel Programming Using CUDA to Harness the Power of GPUs](https://www.udacity.com/course/intro-to-parallel-programming--cs344)
### Data Science
* [Introduction to Python for Data Science](https://www.edx.org/course/introduction-python-data-science-microsoft-dat208x-3)
### Databases
* [Database Systems](http://ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-830-database-systems-fall-2010/) (MIT's opencourseware)
* [Introduction to Databases](https://lagunita.stanford.edu/courses/Engineering/db/2014_1/about) (Stanford University)
### Deep Learning
* [Convolutional Neural Networks for Visual Recognition](http://cs231n.github.io)
* [Deep Learning for Natural Language Processing](http://cs224d.stanford.edu)
* [Self-Paced Courses for Deep Learning ](https://developer.nvidia.com/deep-learning-courses)
* [Unsupervised Feature Learning and Deep Learning](http://deeplearning.stanford.edu/tutorial)
* [What is Deep Learning](https://www.udacity.com/course/deep-learning--ud730)
### Git
* [Git and Gitlab Live Workshop](https://courses.platzi.com/courses/git-gitlab/)
* [How to Use Git and GitHub](https://www.udacity.com/course/how-to-use-git-and-github--ud775) (Udacity)
### Go
* [Go Tutorial](http://www.tutorialspoint.com/go/index.htm)
### Haskell
* [C9 : Functional Programming Fundamentals](http://channel9.msdn.com/Series/C9-Lectures-Erik-Meijer-Functional-Programming-Fundamentals) - Erik Meijer
* [CIS 194: Introduction to Haskell](http://www.seas.upenn.edu/~cis194/) - Brent Yorgey
* [CS240h: Functional Systems in Haskell](http://www.scs.stanford.edu/11au-cs240h/notes/) - Bryan O'Sullivan
* [edX: Introduction to Functional Programming](https://www.edx.org/course/introduction-functional-programming-delftx-fp101x-0) - Erik Meijer
* [RWTH Aachen University: Functional Programming](https://videoag.fsmpi.rwth-aachen.de/?course=12ss-funkprog) - Jürgen Giesl
### HTML / CSS
* [Build a Personal Website with Dash](https://dash.generalassemb.ly)
* [Build a responsive website with Webflow](https://www.bloc.io/tutorials/webflow-tutorial-design-responsive-sites-with-webflow)
* [Build a SaaS landing page using Skeleton](https://www.bloc.io/tutorials/jottly-a-beginner-s-guide-to-html-css-skeleton-and-animate-css)
* [Build Dynamic Websites](http://cs75.tv/2010/fall/)
* [Code a personal splash page in 1 hour: A Hands-on Intro to HTML & CSS](http://www.thefirehoseproject.com/lessons/splash-page)
* [Learn HTML5 Programming From Scratch](https://www.udemy.com/learn-html5-programming-from-scratch/)
### iOS
* [AppCoda Complete iOS Tutorial](http://www.appcoda.com/ios-programming-course/)
* [Developing iOS 7 Apps for iPhone and iPad](https://itunes.apple.com/us/course/developing-ios-7-apps-for/id733644550)
### Java
* [Central Connecticut State University, Introduction to CS Using Java](http://chortle.ccsu.edu/CS151/cs151java.html)
* [Introduction to Java](http://ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-092-introduction-to-programming-in-java-january-iap-2010/)
* [Java for Complete Beginners](http://courses.caveofprogramming.com/courses/java-for-complete-beginners)
* [Princeton Algorithms, Part 1](https://www.coursera.org/course/algs4partI)
* [Princeton Algorithms, Part 2](https://www.coursera.org/course/algs4partII)
* [Problem Solving With Java](https://www.udacity.com/course/intro-to-java-programming--cs046)
### JS
* [Egghead.io](https://egghead.io)
* [learn:query](https://learnquery.infinum.co)
### Lua
* [Lua Interactive Crash Course](http://luatut.com/crash_course.html)
* [Lua Tutorial](http://www.tutorialspoint.com/lua/)
### Machine Learning
* [Stanford University Machine Learning](https://www.coursera.org/learn/machine-learning)
### MATLAB
* [MIT 18.S997 Introduction to MATLAB Programming](http://ocw.mit.edu/courses/mathematics/18-s997-introduction-to-matlab-programming-fall-2011/)
### Misc
* [Advanced Data Structures](http://ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-851-advanced-data-structures-spring-2012/)
* [Algorithm Design and Implementation](https://www.youtube.com/playlist?list=PL6EF0274BD849A7D5)
* [Berkeley's CS 61B: Data Structures](https://www.youtube.com/playlist?list=PL-XXv-cvA_iDXrTvCvDgIkeCWeSIDr4Yh)
* [Berkeley's CS 70: Discrete Mathematics and Probability Theory](https://www.youtube.com/course?list=EC1A2EBAC4283FE3EA)
* [Berkeley's CS 162: Operating Systems and Systems Programming](https://www.youtube.com/view_play_list?p=-XXv-cvA_iCrnl0625nXp4GimjT-cv_1)
* [Berkeley's CS 164: Programming Languages and Compilers](https://www.youtube.com/playlist?list=PL3A16CFC42CA6EF4F&feature=plcp)
* [Berkeley's CS 169: Software Engineering](https://www.youtube.com/view_play_list?p=-XXv-cvA_iAS_kCeleydK6mDc0kCbdhU)
* [Berkeley's CS 194: What is an Operating System?](https://www.youtube.com/view_play_list?p=-XXv-cvA_iB_5Q8G8kW5idSwNmXypmQE)
* [Berkeley's Math 10B: Methods of Mathematics: Calculus, Statistics, and Combinatorics](https://www.youtube.com/view_play_list?p=-XXv-cvA_iCZ8sTG0pDuBubsDfOFoY2X)
* [Bits: The Computer Science of Digital Information](http://www.extension.harvard.edu/open-learning-initiative/bits)
* [Computer Graphics](http://nptel.ac.in/courses/106106090/)
* [FindLectures.com](https://www.findlectures.com/?class1=Technology) - Index of conference talks by language / topic
* [LouvainX Paradigms of Computer Programming Abstraction and Concurrency](https://www.edx.org/course/paradigms-computer-programming-louvainx-louv1-2x-1#!)
* [LouvainX Paradigms of Computer Programming Fundamentals ](https://www.edx.org/course/paradigms-computer-programming-louvainx-louv1-1x-1)
* [MIT Numerical Methods (2014)](http://www.iitg.ernet.in/kartha/CE601-14/CourseSchedule.htm)
* [MIT's Artificial Intelligence](http://ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-034-artificial-intelligence-fall-2010/)
* [MIT's Computer Language Engineering](http://ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-035-computer-language-engineering-sma-5502-fall-2005/lecture-notes/)
* [MIT's Introduction to Algorithms](http://ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-006-introduction-to-algorithms-fall-2011/)
* [MIT's Mathematics for Computer Science](http://ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-042j-mathematics-for-computer-science-fall-2010/video-lectures/)
* [Principles of Reactive Programming](https://www.coursera.org/course/reactive)
* [Stanford Cryptography I](https://www.coursera.org/course/crypto)
* [Stanford Cryptography II](https://www.coursera.org/course/crypto2)
* [Stanford SEE 229 - Machine Learning](https://see.stanford.edu/Course/CS229)
### OCaml
* [Cornell's Data Structures and Functional Programming](http://www.cs.cornell.edu/courses/cs3110/2015fa/)
* [Introduction to Functional Programming in OCaml](https://www.fun-mooc.fr/courses/parisdiderot/56002S02/session02/about)
### Oracle PL/SQL
* [Steven Feuerstein's PL/SQL Obsession - Videos and Presentations](http://www.toadworld.com/platforms/oracle/w/wiki/8243.plsql-obsession)
### Python
* [An Introduction to Interactive Programming in Python (Part 1)](https://www.coursera.org/learn/interactive-python-1) (Coursera)
* [An Introduction to Interactive Programming in Python (Part 2)](https://www.coursera.org/learn/interactive-python-2) (Coursera)
* [Berkeley's Structure and Interpretation of Computer Programs](http://cs61a.org)
* [Codesdope](https://www.codesdope.com/python-introduction)
* [Google's Python Course](https://developers.google.com/edu/python/)
* [Introduction to Computer Science and Programming](http://ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-00sc-introduction-to-computer-science-and-programming-spring-2011/) (MIT's opencourseware)
* [Learn Python](https://pythonspot.com)
* [Learn Python - Free Interactive Python Tutorial](http://www.learnpython.org)
* [Learn to program in Python](https://www.codecademy.com/learn/python)
* [Learn to Program: The Fundamentals](https://www.coursera.org/learn/learn-to-program) (Coursera)
* [Learn to Program Using Python](https://www.edx.org/course/learn-program-using-python-utarlingtonx-cse1309x) (edX)
* [Microsoft Virtual Academy](https://mva.microsoft.com/en-US/training-courses/introduction-to-programming-with-python-8360)
* [Programming for Everybody](https://www.coursera.org/learn/python)
* [Programming Foundations with Python](https://www.udacity.com/course/programming-foundations-with-python--ud036) (Udacity)
* [Python Course](http://www.python-course.eu)
### R
* [R Programming](https://www.coursera.org/course/rprog)
### RethinkDB
* [RethinkDB: Distributed Databases](https://courses.platzi.com/courses/rethinkdb-databases/)
### Ruby
* [RubyMonk - Interactive Ruby tutorials](https://rubymonk.com)
### Sails.Js
* [Develop web apps in Node.js and Sails.js](https://courses.platzi.com/courses/develop-apps-sails-js/)
### Scala
* [Functional Programming Principles in Scala](https://www.coursera.org/course/progfun)
* [Principles of Reactive Programming](https://www.coursera.org/course/reactive)
### Software Engineering
* [Advanced Software Construction in Java](https://www.edx.org/course/advanced-software-construction-java-mitx-6-005-2x#!)
* [Agile Development Using Ruby on Rails - Advanced](https://www.edx.org/course/agile-development-using-ruby-rails-uc-berkeleyx-cs169-2x#!)
* [Agile Development Using Ruby on Rails - Basics](https://www.edx.org/course/agile-development-using-ruby-rails-uc-berkeleyx-cs169-1x#!)
* [Software Construction in Java](https://www.edx.org/course/software-construction-java-mitx-6-005-1x)
### Swift
* [Swiftris - Build an iOS Tetris app from scratch](https://www.bloc.io/swiftris-build-your-first-ios-game-with-swift)
### SystemVerilog
* [SystemVerilog - Learn basics of SystemVerilog for Hardware Verification](https://verificationexcellence.teachable.com/p/learn-systemverilog)
* [SystemVerilog based UVM Methodology - Learn to build UVM based Testbenches in SystemVerilog](https://verificationexcellence.teachable.com/p/learn-ovm-uvm)
### Theory
* [Automata Theory](https://lagunita.stanford.edu/courses/course-v1:ComputerScience+Automata+Fall2016/about)
* [Udacity: Intro to Theoretical Computer Science](https://www.udacity.com/course/intro-to-theoretical-computer-science--cs313)
### Web Development
* [Discover Flask - Full Stack Web Development with Flask](https://github.com/realpython/discover-flask)
* [Flask(A Python Microframework) Tutorial](http://blog.miguelgrinberg.com/post/the-flask-mega-tutorial-part-i-hello-world)
* [The Odin Project - Learn Web Development for Free](http://www.theodinproject.com)
* [Udacity Web Development Course Catalog](https://www.udacity.com/courses#!/web-development#!/web-development)