Learnit/All Software Engineering Content
Concurrent Programming Edit
Selected stuff (Books) Edit
There are too many platforms and languages with multithreading support. Let's first of all bring here the books which matter, rather than yet another boring platform-specific manual.
- "The Little Book of Semaphores", Allen B. Downey [get free] -- good for acquiring an intuition on solving of basic (and not so basic) synchronization problems using old good semaphores.
- "The Art of Multiprocessor Programming", Maurice Herlihy, Nir Shavit [amazon] -- this book is mostly dedicated to the lock-free synchronization and other advanced topics rather than basic synchronization methods.
- Any good book on condvars?
Frameworks? Edit
OpenMP, MPI, TBB, TPL, Cilk, Cilk plus, OpenCL, PPL, ParaSail, GCD, fork/join, AMP, CnC, PBB, ArBB, PPL
Platform and language specific stuff. Edit
Distributed Programming Edit
Video Courses Edit
Functional Programming Edit
- Inroduction to functional programming https://courses.edx.org/courses/course-v1:DelftX+FP101x+3T2015/info
- Category theory foundations https://www.youtube.com/watch?v=ZKmodCApZwk
Machine Learning and AI Edit
Under Construction. Please do not introduce your additions/changes until the initial construction phase is finished. |
Algorithms Edit
Under Construction. Please do not introduce your additions/changes until the initial construction phase is finished. |
Operational Systems Edit
Linux Edit
User Edit
- Linux Fundamentals, Prof. Dan Alberghetti [link]
Admin Edit
User Space API Edit
Kernel Edit
Drivers Edit
Networking Protocols Edit
Video Courses Edit
- Introduction to Computer Networking, Stanford [link]
- https://www.udacity.com/course/progress#!/c-ud436
- https://www.coursera.org/learn/computer-networking
Programming Languages Edit
This page is either for interesting languages or interesting resources. Please no yet another "learn smth in # days". Good introductory courses are still welcome. Preferably, no materials for beginners like "smth as your first language".
C# Edit
clojure Edit
F# Edit
erlang Edit
- https://www.youtube.com/watch?v=9uIhawQ1G0I
- http://www.infoq.com/presentations/joe-armstrong-erlang-qcon08
- http://www.cs.kent.ac.uk/ErlangMasterClasses/
- https://www.futurelearn.com/courses/concurrent-programming-erlang
go Edit
Haskell Edit
- https://compscicenter.ru/courses/func-prog/2015-spring/
- https://onlinecourses.nptel.ac.in/noc15_cs13/course
- Microsoft Channel 9
- Some singular presentations
- A taste of Haskell - Simon Peyton Jones
- Adventure with Types in Haskell - Simon Peyton Jones
- Parallel and concurrent programming in Haskell https://www.youtube.com/watch?v=lqG3mURwUxo
java Edit
- https://www.edx.org/course/introduction-programming-java-part-1-uc3mx-it-1-1x-0
- https://www.edx.org/course/introduction-java-programming-part-1-hkustx-comp102-1x
javascript Edit
lisp Edit
ocaml Edit
python Edit
ruby Edit
scala Edit
scheme Edit
- Video Lectures by Hal Abelson and Gerald Jay Sussman [link]
Swift Edit
- Building Better Apps with Value Types in Swift - Apple WWDC 2015 - https://www.youtube.com/watch?v=av4i3x-aZbM
- Protocol-oriented Programming in Swift - Apple WWDC 2015 https://www.youtube.com/watch?v=g2LwFZatfTI
- Understanding Swift Performance - Apple WWDC 2016 https://www.youtube.com/watch?v=9By9KLs51Dc