1300 lines
560 KiB
Plaintext
1300 lines
560 KiB
Plaintext
[38;5;12m [39m[38;2;255;187;0m[1m[4mAwesome CS Courses [0m[38;5;14m[1m[4m![0m[38;2;255;187;0m[1m[4mAwesome[0m[38;5;14m[1m[4m (https://cdn.rawgit.com/sindresorhus/awesome/d7305f38d29fed78fa85652e3a63e154dd8e8829/media/badge.svg)[0m[38;2;255;187;0m[1m[4m (https://github.com/sindresorhus/awesome)[0m
|
||
|
||
|
||
[38;5;12mIntroduction[39m
|
||
[38;5;238m――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――[39m
|
||
|
||
[38;5;12mThere[39m[38;5;12m [39m[38;5;12mare[39m[38;5;12m [39m[38;5;12ma[39m[38;5;12m [39m[38;5;12mlot[39m[38;5;12m [39m[38;5;12mof[39m[38;5;12m [39m[38;5;12m[9mhidden[0m[38;5;12m [39m[38;5;12mtreasures[39m[38;5;12m [39m[38;5;12mlying[39m[38;5;12m [39m[38;5;12mwithin[39m[38;5;12m [39m[38;5;12muniversity[39m[38;5;12m [39m[38;5;12mpages[39m[38;5;12m [39m[38;5;12mscattered[39m[38;5;12m [39m[38;5;12macross[39m[38;5;12m [39m[38;5;12mthe[39m[38;5;12m [39m[38;5;12minternet.[39m[38;5;12m [39m[38;5;12mThis[39m[38;5;12m [39m[38;5;12mlist[39m[38;5;12m [39m[38;5;12mis[39m[38;5;12m [39m[38;5;12man[39m[38;5;12m [39m[38;5;12mattempt[39m[38;5;12m [39m[38;5;12mto[39m[38;5;12m [39m[38;5;12mbring[39m[38;5;12m [39m[38;5;12mto[39m[38;5;12m [39m[38;5;12mlight[39m[38;5;12m [39m[38;5;12mthose[39m[38;5;12m [39m[38;5;12mawesome[39m[38;5;12m [39m[38;5;12mCS[39m[38;5;12m [39m[38;5;12mcourses[39m[38;5;12m [39m[38;5;12mwhich[39m[38;5;12m [39m[38;5;12mmake[39m[38;5;12m [39m[38;5;12mtheir[39m[38;5;12m [39m[38;5;12mhigh-quality[39m[38;5;12m [39m[38;5;12mmaterials,[39m[38;5;12m [39m[38;5;12mi.e.[39m[38;5;12m [39m[38;5;12massignments,[39m[38;5;12m [39m[38;5;12mlectures,[39m[38;5;12m [39m
|
||
[38;5;12mnotes,[39m[38;5;12m [39m[38;5;12mreadings[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12mexaminations,[39m[38;5;12m [39m[38;5;12mavailable[39m[38;5;12m [39m[38;5;12monline[39m[38;5;12m [39m[38;5;12mfor[39m[38;5;12m [39m[38;5;12mfree.[39m
|
||
|
||
[38;5;12mTable of Contents[39m
|
||
[38;5;238m――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――[39m
|
||
|
||
[38;5;12m- [39m[38;5;14m[1mAlgorithms[0m[38;5;12m (#algorithms)[39m
|
||
[38;5;12m- [39m[38;5;14m[1mArtificial Intelligence[0m[38;5;12m (#artificial-intelligence)[39m
|
||
[38;5;12m- [39m[38;5;14m[1mComputer Graphics[0m[38;5;12m (#computer-graphics)[39m
|
||
[38;5;12m- [39m[38;5;14m[1mCS Theory[0m[38;5;12m (#cs-theory)[39m
|
||
[38;5;12m- [39m[38;5;14m[1mIntroduction to CS[0m[38;5;12m (#introduction-to-cs)[39m
|
||
[38;5;12m- [39m[38;5;14m[1mMachine Learning[0m[38;5;12m (#machine-learning)[39m
|
||
[38;5;12m- [39m[38;5;14m[1mMisc[0m[38;5;12m (#misc)[39m
|
||
[38;5;12m- [39m[38;5;14m[1mProgramming Languages / Compilers[0m[38;5;12m (#programming-languages--compilers)[39m
|
||
[38;5;12m- [39m[38;5;14m[1mSecurity[0m[38;5;12m (#security)[39m
|
||
[38;5;12m- [39m[38;5;14m[1mSystems[0m[38;5;12m (#systems)[39m
|
||
[38;5;12m- [39m[38;5;14m[1mStatistics / Regression[0m[38;5;12m (#statistics)[39m
|
||
|
||
[38;2;255;187;0m[4mLegend[0m
|
||
|
||
[38;5;12m- - Lecture Videos[39m
|
||
[38;5;12m- - Lecture Notes[39m
|
||
[38;5;12m- - Assignments / Labs[39m
|
||
[38;5;12m- - Readings[39m
|
||
|
||
|
||
[38;5;12mCourses[39m
|
||
[38;5;238m――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――[39m
|
||
|
||
[38;2;255;187;0m[4mSystems[0m
|
||
|
||
[38;5;12m- [39m[38;5;14m[1mCS 61C[0m[38;5;12m (http://www-inst.eecs.berkeley.edu/~cs61c/sp15/) [39m[38;5;14m[1mGreat Ideas in Computer Architecture (Machine Structures)[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mUC Berkeley[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- The subjects covered in this course include: C and assembly language programming, translation of high-level programs into machine language, computer organization, caches, performance measurement, parallelism, CPU design, warehouse-sca[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249mle computing, and related topics.[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Lecture Videos** (https://archive.org/details/ucberkeley-webcast-PL-XXv-cvA_iCl2-D-FS5mk0jFF6cYSJs_?sort=titleSorter)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Lecture Notes** (http://www-inst.eecs.berkeley.edu/~cs61c/sp15/#Calendar)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Resources** (http://www-inst.eecs.berkeley.edu/~cs61c/sp15/#Resources)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Old Exams** (https://hkn.eecs.berkeley.edu/exams/course/CS/61C)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1mCS 107[0m[38;5;12m (https://courseware.stanford.edu/pg/courses/lectures/371747) [39m[38;5;14m[1mComputer Organization & Systems[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mStanford University[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- CS107 is the third course in Stanford's introductory programming sequence. The course will work from the C programming language down to the microprocessor to de-mystify the machine. With a complete understanding of how computer system[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249ms execute programs and manipulate data, you will become a more effective programmer, especially in dealing with issues of debugging, performance, portability, and robustness.[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Lecture Videos** (https://www.youtube.com/playlist?list=PL08D9FA018A965057&spfreload=10)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Assignments** (http://web.stanford.edu/class/cs107/assignments.html)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1mCS 140[0m[38;5;12m (http://web.stanford.edu/~ouster/cgi-bin/cs140-spring14/lectures.php) [39m[38;5;14m[1mOperating Systems[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mStanford University[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- This class introduces the basic facilities provided in modern operating systems. The course divides into three major sections. The first part of the course discusses concurrency. The second part of the course addresses the problem of [49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249mmemory management. The third major part of the course concerns file systems.[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Lecture Notes** (http://web.stanford.edu/~ouster/cgi-bin/cs140-spring14/lectures.php)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Assignments** (http://web.stanford.edu/~ouster/cgi-bin/cs140-spring14/projects.php)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1m6.004[0m[38;5;12m (https://6004.mit.edu/) [39m[38;5;14m[1mComputation Structures[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mMIT[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- Introduces architecture of digital systems, emphasizing structural principles common to a wide range of technologies. Multilevel implementation strategies; definition of new primitives (e.g., gates, instructions, procedures, processes[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m) and their mechanization using lower-level elements. Analysis of potential concurrency; precedence constraints and performance measures; pipelined and multidimensional systems. Instruction set design issues; architectural support for c[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249montemporary software structures. 4 Engineering Design Points. 6.004 offers an introduction to the engineering of digital systems. Starting with MOS transistors, the course develops of series of building blocks logic gates, combinational[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m and sequential circuits, finite-state machines, computers and finally complete systems. Both hardware and software mechanisms are explored through a series of design examples.[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Youtube Playlist** (https://www.youtube.com/watch?v=9DWlqtsNGV0&index=1&list=PLmP5iIyVnKPQ-cO_EENdUgEdlRf0u5LYa)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Lecture Notes** (http://computationstructures.org/notes/tradeoffs/notes.html)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Labs-Assignments** (http://computationstructures.org/exercises/cmos/lab.html)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1mCS 162[0m[38;5;12m (http://cs162.eecs.berkeley.edu/) [39m[38;5;14m[1mOperating Systems and Systems Programming[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mUC Berkeley[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- The purpose of this course is to teach the design of operating systems and operating systems concepts that appear in other advanced systems. Topics we will cover include concepts of operating systems, systems programming, networked an[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249md distributed systems, and storage systems, including multiple-program systems (processes, interprocess communication, and synchronization), memory allocation (segmentation, paging), resource allocation and scheduling, file systems, bas[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249mic networking (sockets, layering, APIs, reliability), transactions, security, and privacy.[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m - Operating Systems course by the Chair of EECS, UC Berkeley **David Culler** (http://www.cs.berkeley.edu/~culler/)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m - **Lecture Videos** (https://archive.org/details/ucberkeley-webcast-PL-XXv-cvA_iBDyz-ba4yDskqMDY6A1w_c) Spring 2015 lectures[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m - **Lecture Notes** (https://inst.eecs.berkeley.edu/~cs162/sp15/) Spring 2015 lectures[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1mCS 168[0m[38;5;12m (https://inst.eecs.berkeley.edu/~cs168/fa14/) [39m[38;5;14m[1mIntroduction to the Internet: Architecture and Protocols[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mUC Berkeley[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- This course is an introduction to the Internet architecture. We will focus on the concepts and fundamental design principles that have contributed to the Internet's scalability and robustness and survey the various protocols and algor[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249mithms used within this architecture. Topics include layering, addressing, intradomain routing, interdomain routing, reliable delivery, congestion control, and the core protocols (e.g., TCP, UDP, IP, DNS, and HTTP) and network technologi[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249mes (e.g., Ethernet, wireless).[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Lecture Notes & Assignments** (https://inst.eecs.berkeley.edu/~cs168/fa14/class.html)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Discussion Notes** (https://inst.eecs.berkeley.edu/~cs168/fa14/)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1mCS 179[0m[38;5;12m (http://courses.cms.caltech.edu/cs179/) [39m[38;5;14m[1mGPU Programming[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mCaltech[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- This course will cover programming techniques for the GPU. The course will introduce NVIDIA's parallel computing language, CUDA. Beyond covering the CUDA programming model and syntax, the course will also discuss GPU architecture, hig[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249mh performance computing on GPUs, parallel algorithms, CUDA libraries, and applications of GPU computing. [49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Assignments** (http://courses.cms.caltech.edu/cs179/)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Lecture Notes** (http://courses.cms.caltech.edu/cs179/)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1mCS 186[0m[38;5;12m (https://sites.google.com/site/cs186spring2015/) [39m[38;5;14m[1mIntroduction to Database Systems[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mUC Berkeley[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- In the project assignments in CS186, you will write a basic database management system called SimpleDB. For this project, you will focus on implementing the core modules required to access stored data on disk; in future projects, you [49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249mwill add support for various query processing operators, as well as transactions, locking, and concurrent queries.[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Lecture Videos** (https://archive.org/details/ucberkeley-webcast-PL-XXv-cvA_iBVK2QzAV-R7NMA1ZkaiR2y)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Lecture Notes** (https://sites.google.com/site/cs186fall2013/section-notes)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Projects** (https://sites.google.com/site/cs186fall2013/homeworks)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1mCS 241[0m[38;5;12m (https://courses.engr.illinois.edu/cs241/sp2016/index.html) [39m[38;5;14m[1mSystems Programming (Spring 2016)[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mUniv of Illinois, Urbana-Champaign[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- System programming refers to writing code that tasks advantage of operating system support for programmers. This course is designed to introduce you to system programming. By the end of this course, you should be proficient at writing[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m programs that take full advantage of operating system support. To be concrete, we need to fix an operating system and we need to choose a programming language for writing programs. We chose the C language running on a Linux/UNIX operat[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249ming system (which implements the POSIX standard interface between the programmer and the OS).[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Assignments** (https://courses.engr.illinois.edu/cs241/sp2016/mps.html)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Labs** (https://courses.engr.illinois.edu/cs241/sp2016/labs.html)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Github Page** (http://angrave.github.io/sys/#)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Crowd Sourced Book** (https://github.com/angrave/SystemProgramming/wiki)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1mCS 425[0m[38;5;12m (https://courses.engr.illinois.edu/cs425/fa2016/index.html) [39m[38;5;14m[1mDistributed Systems[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mUniv of Illinois, Urbana-Champaign[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- Brilliant set of lectures and reading material covering fundamental concepts in distributed systems such as Vector clocks, Consensus and Paxos. This is the 2016 version by Prof Indranil Gupta.[49m[39m
|
||
[48;5;235m[38;5;249m- **Lectures** (https://courses.engr.illinois.edu/cs425/fa2016/lectures.html)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Assignments** (https://courses.engr.illinois.edu/cs425/fa2016/assignments.html)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1mCS 452[0m[38;5;12m (http://www.cgl.uwaterloo.ca/~wmcowan/teaching/cs452/s12/) [39m[38;5;14m[1mReal-Time Programming[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mUniversity of Waterloo[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- Write a real-time OS microkernel in C, and application code to operate a model train set in response to real-time sensor information. The communication with the train set runs at 2400 baud so it takes about 61 milliseconds to ask all [49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249mof the sensors for data about the train's possible location. This makes it particularly challenging because a train can move about 3 centimeters in that time. One of the most challenging and time-consuming courses at the University of [49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249mWaterloo.[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Assignments** (http://www.cgl.uwaterloo.ca/~wmcowan/teaching/cs452/s12/assignments/index.html)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Lecture notes** (http://www.cgl.uwaterloo.ca/~wmcowan/teaching/cs452/s12/notes/index.html)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1mCS 2043[0m[38;5;12m (http://www.cs.cornell.edu/courses/CS2043/2014sp/) [39m[38;5;14m[1mUnix Tools & Scripting[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mCornell University[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- UNIX-like systems are increasingly being used on personal computers, mobile phones, web servers, and many other systems. They represent a wonderful family of programming environments useful both to computer scientists and to people in[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m many other fields, such as computational biology and computational linguistics, in which data is naturally represented by strings. This course provides an intensive training to develop skills in Unix command line tools and scripting th[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249mat enable the accomplishment and automation of large and challenging computing tasks. The syllabus takes students from shell basics and piping, to regular-expression processing tools, to shell scripting and Python.[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Syllabus** (http://www.cs.cornell.edu/courses/CS2043/2014sp/)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Lectures** (http://www.cs.cornell.edu/courses/CS2043/2014sp/)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Assignments** (http://www.cs.cornell.edu/courses/CS2043/2014sp/)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1mCS 3410[0m[38;5;12m (http://www.cs.cornell.edu/courses/cs3410/2016fa/) [39m[38;5;14m[1mComputer System Organization and Programming[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mCornell University[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- CS3410 provides an introduction to computer organization, systems programming and the hardware/software interface. Topics include instruction sets, computer arithmetic, datapath design, data formats, addressing modes, memory hierarchi[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249mes including caches and virtual memory, I/O devices, bus-based I/O systems, and multicore architectures. Students learn assembly language programming and design a pipelined RISC processor.[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Lectures** (http://www.cs.cornell.edu/courses/CS3410/2014sp/schedule.html)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Assignments** (http://www.cs.cornell.edu/courses/CS3410/2014sp/schedule.html)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1mCS 4410[0m[38;5;12m (http://www.cs.cornell.edu/courses/CS4410/2014fa/) [39m[38;5;14m[1mOperating Systems[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mCornell University[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- CS 4410 covers systems programming and introductory operating system design and implementation. We will cover the basics of operating systems, namely structure, concurrency, scheduling, synchronization, memory management, filesystems,[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m security and networking. The course is open to any undergraduate who has mastered the material in CS3410/ECE3140.[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Syllabus** (http://www.cs.cornell.edu/courses/CS4410/2014fa/slides/01-intro.pptx)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Lectures** (http://www.cs.cornell.edu/courses/CS4410/2014fa/lectures.php)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1mCS 4414[0m[38;5;12m (http://rust-class.org/index.html) [39m[38;5;14m[1mOperating Systems[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mUniversity of Virginia[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- A course (that) covers topics including: Analysis process communication and synchronization; resource management; virtual memory management algorithms; file systems; and networking and distributed systems. The primary goal of this cou[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249mrse is to improve your ability to build scalable, robust and secure computing systems. It focuses on doing that by understanding what underlies the core abstractions of modern computer systems.[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Syllabus** (http://rust-class.org/pages/syllabus.html)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Lectures** (http://rust-class.org/pages/classes.html)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1mCS 5412[0m[38;5;12m (http://www.cs.cornell.edu/Courses/CS5412/2014sp/) [39m[38;5;14m[1mCloud Computing[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mCornell University[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- Taught by one of the stalwarts of this field, Prof Ken Birman, this course has a fantastic set of slides that one can go through. The Prof's **book** (http://www.amazon.com/Guide-Reliable-Distributed-Systems-High-Assurance/dp/14471241[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m54) is also a gem and recommended as a must read in Google's tutorial on **Distributed System Design** (http://www.hpcs.cs.tsukuba.ac.jp/~tatebe/lecture/h23/dsys/dsd-tutorial.html)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Slides** (http://www.cs.cornell.edu/Courses/CS5412/2014sp/Syllabus.htm)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m-[39m[38;5;12m [39m[38;5;14m[1mCSCE[0m[38;5;14m[1m [0m[38;5;14m[1m3613[0m[38;5;12m [39m[38;5;12m(http://comp.uark.edu/~wingning/csce3613/csce3613.html)[39m[38;5;12m [39m[38;5;14m[1mOperating[0m[38;5;14m[1m [0m[38;5;14m[1mSystems[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mUniversity[0m[48;2;30;30;40m[38;5;13m[3m [0m[48;2;30;30;40m[38;5;13m[3mof[0m[48;2;30;30;40m[38;5;13m[3m [0m[48;2;30;30;40m[38;5;13m[3mArkansas[0m[48;2;30;30;40m[38;5;13m[3m [0m[48;2;30;30;40m[38;5;13m[3m(Fayetteville)[0m[38;5;12m [39m[38;5;12m-[39m[38;5;12m [39m[38;5;12mAn[39m[38;5;12m [39m[38;5;12mintroduction[39m[38;5;12m [39m[38;5;12mto[39m[38;5;12m [39m[38;5;12moperating[39m[38;5;12m [39m[38;5;12msystems[39m[38;5;12m [39m[38;5;12mincluding[39m[38;5;12m [39m[38;5;12mtopics[39m[38;5;12m [39m[38;5;12min[39m[38;5;12m [39m[38;5;12msystem[39m[38;5;12m [39m[38;5;12mstructures,[39m[38;5;12m [39m[38;5;12mprocess[39m[38;5;12m [39m[38;5;12mmanagement,[39m[38;5;12m [39m[38;5;12mstorage[39m[38;5;12m [39m
|
||
[38;5;12mmanagement,[39m[38;5;12m [39m[38;5;12mfiles,[39m[38;5;12m [39m[38;5;12mdistributed[39m[38;5;12m [39m[38;5;12msystems,[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12mcase[39m[38;5;12m [39m[38;5;12mstudies.[39m
|
||
[48;5;235m[38;5;249m- **Syllabus** (http://comp.uark.edu/~wingning/csce3613/CSCE3613.pdf)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Assignments** (http://comp.uark.edu/~wingning/csce3613/Homework3613.html)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Lecture Notes** (http://comp.uark.edu/~wingning/csce3613/CourseNote3613.html)[49m[39m
|
||
[48;5;235m[38;5;249m- **Readings** (http://comp.uark.edu/~wingning/csce3613/Link3613.html)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1mCSCI-UA.0202: Operating Systems (Undergrad)[0m[38;5;12m (http://www.cs.nyu.edu/~mwalfish/classes/15sp/index.html) [39m[38;5;14m[1mOperating Systems[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mNYU[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- NYU's operating system course. It's a fundamental course focusing basic ideas of operating systems, including memory management, process scheduling, file system, ect. It also includes some recommended reading materials. What's more, t[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249mhere are a series of hands-on lab materials, helping you easily understand OS.[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Assignments** (http://www.cs.nyu.edu/~mwalfish/classes/15sp/labs.html)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Lectures** (http://www.cs.nyu.edu/~mwalfish/classes/15sp/syllabus.html)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Old Exams** (http://www.cs.nyu.edu/~mwalfish/classes/15sp/exams.html)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1mCSCI 360[0m[38;5;12m (http://compsci.hunter.cuny.edu/~sweiss/course_materials/csci360/csci360_f14.php) [39m[38;5;14m[1mComputer Architecture 3[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mCUNY Hunter College[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- A course that covers cache design, buses, memory hierarchies, processor-peripheral interfaces, and multiprocessors, including GPUs.[49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1mCSCI 493.66[0m[38;5;12m (http://compsci.hunter.cuny.edu/~sweiss/course_materials/csci493.66/csci493.66_spr12.php) [39m[38;5;14m[1mUNIX System Programming (formerly UNIX Tools)[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mCUNY Hunter College[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- A course that is mostly about writing programs against the UNIX API, covering all of the basic parts of the kernel interface and libraries, including files, processes, terminal control, signals, and threading.[49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1mCSCI 493.75[0m[38;5;12m (http://compsci.hunter.cuny.edu/~sweiss/course_materials/csci493.65/csci493.65_spr14.php) [39m[38;5;14m[1mParallel Computing[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mCUNY Hunter College[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- The course is an introduction to parallel algorithms and parallel programming in C and C++, using the Message Passing Interface (MPI) and the OpenMP application programming interface. It also includes a brief introduction to parallel [49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249marchitectures and interconnection networks. It is both theoretical and practical, including material on design methodology, performance analysis, and mathematical concepts, as well as details on programming using MPI and OpenMP.[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1mHack the Kernel[0m[38;5;12m (https://www.ops-class.org/) [39m[38;5;14m[1mIntroduction to Operating Systems[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mSUNY University at Buffalo, NY[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- This course is an introduction to operating system design and implementation. We study operating systems because they are examples of mature and elegant solutions to a difficult design problem: how to safely and efficiently share syst[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249mem resources and provide abstractions useful to applications.[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- For the processor, memory, and disks, we discuss how the operating system allocates each resource and explore the design and implementation of related abstractions. We also establish techniques for testing and improving system perform[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249mance and introduce the idea of hardware virtualization. Programming assignments provide hands-on experience with implementing core operating system components in a realistic development environment. Course by **Dr.Geoffrey Challen** (ht[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249mtps://blue.cse.buffalo.edu/people/gwa/)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Syllabus** (https://www.ops-class.org/courses/buffalo/CSE421_Spring2016/)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Slides** (https://www.ops-class.org/slides/)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Video lectures** (https://www.youtube.com/playlist?list=PLE6LEE8y2Jp-kbEcVR2W3vfx0Pdca0BD3)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Assignments** (https://www.ops-class.org/asst/0/)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Old Exams** (https://www.ops-class.org/exams/)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1mECE 459[0m[38;5;12m (http://patricklam.ca/p4p/) [39m[38;5;14m[1mProgramming for Performance[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mUniversity of Waterloo[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- Learn techniques for profiling, rearchitecting, and implementing software systems that can handle industrial-sized inputs, and to design and build critical software infrastructure. Learn performance optimization through parallelizatio[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249mn, multithreading, async I/O, vectorization and GPU programming, and distributed computing.[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Lecture slides** (https://github.com/patricklam/p4p-2015/tree/master/lectures)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1mECGR4101/5101[0m[38;5;12m (https://webpages.uncc.edu/~jmconrad/EducationalMaterials/index.html) [39m[38;5;14m[1mEmbedded Systems using the Renesas RX63N Processor[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mUniversity of North Carolina at Charlotte[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- Introduction to designing microcontroller-based embedded computer systems using assembly and C programs. Examination of Real-time Operating Systems and their impact on performance. Computer engineering applications will be emphasized.[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- The goal of this course is to solidify and build upon a student’s knowledge of computer organization by presenting hands-on experience with microcontrollers. Students will also examine a few sensors that are used in commercial and med[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249mical products and learn how to interface them in a microcontroller system.[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Lecture Videos** (https://www.youtube.com/playlist?list=PLPIqCiMhcdO5gxLJWt_hY5CPMzqg75IU5)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Lecture Notes** (https://webpages.uncc.edu/~jmconrad/EducationalMaterials/index.html)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1mPODC[0m[38;5;12m (http://dcg.ethz.ch/lectures/podc_allstars/) [39m[38;5;14m[1mPrinciples of Distributed Computing[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mETH-Zurich[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- Explore essential algorithmic ideas and lower bound techniques, basically the "pearls" of distributed computing in an easy-to-read set of lecture notes, combined with complete exercises and solutions.[49m[39m
|
||
[48;5;235m[38;5;249m- **Book** (http://dcg.ethz.ch/lectures/podc_allstars/lecture/podc.pdf)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Assignments and Solutions** (http://dcg.ethz.ch/lectures/podc_allstars/)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1mSPAC[0m[38;5;12m (http://homes.cs.washington.edu/~djg/teachingMaterials/spac/) [39m[38;5;14m[1mParallelism and Concurrency[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mUniv of Washington[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- Technically not a course nevertheless an awesome collection of materials used by Prof Dan Grossman to teach parallelism and concurrency concepts to sophomores at UWash[49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1m6.824[0m[38;5;12m (http://css.csail.mit.edu/6.824/2014/index.html) [39m[38;5;14m[1mDistributed Systems[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mMIT[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- MIT's graduate-level DS course with a focus on fault tolerance, replication, and consistency, all taught via awesome lab assignments in Golang![49m[39m
|
||
[48;5;235m[38;5;249m- **Assignments** (http://css.csail.mit.edu/6.824/2014/labs/) - Just do `git clone git://g.csail.mit.edu/6.824-golabs-2014 6.824`[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Readings** (http://css.csail.mit.edu/6.824/2014/schedule.html)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1m6.828[0m[38;5;12m (http://pdos.csail.mit.edu/6.828/2014/) [39m[38;5;14m[1mOperating Systems[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mMIT[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- MIT's operating systems course focusing on the fundamentals of OS design including booting, memory management, environments, file systems, multitasking, and more. In a series of lab assignments, you will build JOS, an OS exokernel wri[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249mtten in C.[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Assignments** (http://pdos.csail.mit.edu/6.828/2014/labguide.html)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Lectures** (http://pdos.csail.mit.edu/6.828/2014/schedule.html)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Videos** (http://pdos.csail.mit.edu/6.828/2011/schedule.html) Note: These are student recorded cam videos of the 2011 course. The videos explain a lot of concepts required for the labs and assignments.[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1mCSEP 552[0m[38;5;12m (http://courses.cs.washington.edu/courses/csep552/16wi/) [39m[38;5;14m[1mDistributed Systems[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mUniversity of Washington[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- CSEP552 is a graduate course on distributed systems. Distributed systems have become central to many aspects of how computers are used, from web applications to e-commerce to content distribution. This course will cover abstractions a[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249mnd implementation techniques for the construction of distributed systems, including client server computing, the web, cloud computing, peer-to-peer systems, and distributed storage systems. Topics will include remote procedure call, mai[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249mntaining consistency of distributed state, fault tolerance, high availability, and other topics. As we believe the best way to learn the material is to build it, there will be a series of hands-on programming projects.[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Lectures** (http://courses.cs.washington.edu/courses/csep552/13sp/video/) of a previous session are available to watch.[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1m15-213[0m[38;5;12m (http://www.cs.cmu.edu/~213/) [39m[38;5;14m[1mIntroduction to Computer Systems (ICS)[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mCarnegie-Mellon University[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- The ICS course provides a programmer's view of how computer systems execute programs, store information, and communicate. It enables students to become more effective programmers, especially in dealing with issues of performance, port[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249mability and robustness. It also serves as a foundation for courses on compilers, networks, operating systems, and computer architecture, where a deeper understanding of systems-level issues is required. Topics covered include: machine-l[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249mevel code and its generation by optimizing compilers, performance evaluation and optimization, computer arithmetic, memory organization and management, networking technology and protocols, and supporting concurrent computation.[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- This is the must-have course for everyone in CMU who wants to learn some computer science no matter what major are you in. Because it's CMU (The course number is as same as the zip code of CMU)![49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Lecture Notes** (http://www.cs.cmu.edu/~213/schedule.html)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Videos** (https://scs.hosted.panopto.com/Panopto/Pages/Sessions/List.aspx#folderID=%22b96d90ae-9871-4fae-91e2-b1627b43e25e%22) [49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Assignments** (http://csapp.cs.cmu.edu/public/labs.html)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1m15-319/619[0m[38;5;12m (http://www.cs.cmu.edu/~msakr/15619-s17/recitations.html) [39m[38;5;14m[1mCloud Computing (ICS)[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mCarnegie-Mellon University[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- This project-based on-line course focuses on skill building across various aspects of cloud computing. We cover conceptual topics and provide hands-on experience through projects utilizing public cloud infrastructures (Amazon Web Serv[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249mices (AWS), Microsoft Azure and Google Cloud Platform (GCP)). The adoption of cloud computing services continues to grow across a variety of organizations and in many domains. Simply, cloud computing is the delivery of computing as a se[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249mrvice over a network, whereby distributed resources and services are rented, rather than owned, by an end user as a utility.[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- For the projects, students will work with Amazon Web Services, Microsoft Azure and Google Cloud Platform, use them to rent and provision compute resources and then program and deploy applications that run on these resources. Students [49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249mwill develop and evaluate virtual machine (VM) and container scaling, elasticity and load balancing solutions. In addition, students will work with cloud storage systems and learn to develop different applications using batch, iterative[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m and stream processing frameworks. 15-619 students will have to complete an extra project which entails designing and implementing a complete web-service solution for querying big data. For the extra project, the student teams are evalu[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249mated based on the cost and performance of their web service.[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Lecture Notes** (http://www.cs.cmu.edu/~msakr/15619-s17/recitations.html)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Videos** (http://www.cs.cmu.edu/~msakr/15619-s17/recitations.html) [49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1m15-410[0m[38;5;12m (https://www.cs.cmu.edu/~410/) [39m[38;5;14m[1mOperating System Design and Implementation[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mCarnegie-Mellon University[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- This awesome course covers some fundamental topics of operating system, such as process model, virtual memory concurrency, threads, locking, interrupts, preemptibility, race conditions. It also covers introductory understanding of ty[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249mpical OS topics (file systems, transactions, scheduling, security concepts and technologies, memory consistency)Parallel programming models / frameworks.[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Lecture Notes** (https://www.cs.cmu.edu/~410/lecture.html) [49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Assignments** (https://www.cs.cmu.edu/~410/p1/proj1.html)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1m15-418[0m[38;5;12m (http://15418.courses.cs.cmu.edu/spring2015/) [39m[38;5;14m[1mParallel Computer Architecture and Programming[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mCarnegie-Mellon University[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- The goal of this course is to provide a deep understanding of the fundamental principles and engineering trade-offs involved in designing modern parallel computing systems as well as to teach parallel programming techniques necessary [49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249mto effectively utilize these machines. Because writing good parallel programs requires an understanding of key machine performance characteristics, this course will cover both parallel hardware and software design.[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Assignments** (http://15418.courses.cs.cmu.edu/spring2015/exercises)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Lecture Notes** (http://15418.courses.cs.cmu.edu/spring2015/reading)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Lecture Videos** (https://scs.hosted.panopto.com/Panopto/Pages/Sessions/List.aspx#folderID=%22a5862643-2416-49ef-b46b-13465d1b6df0%22)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Readings** (http://15418.courses.cs.cmu.edu/spring2015/reading)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1m15-440[0m[38;5;12m (http://www.cs.cmu.edu/~dga/15-440/F12/index.html) [39m[38;5;14m[1mDistributed Systems[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mCarnegie-Mellon University[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- Introduction to distributed systems with a focus on teaching concepts via projects implemented in the Go programming language.[49m[39m
|
||
[48;5;235m[38;5;249m- **Assignments** (http://www.cs.cmu.edu/~dga/15-440/F12/assignments.html)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1m15-721[0m[38;5;12m (http://15721.courses.cs.cmu.edu/spring2016/) [39m[38;5;14m[1mDatabase Systems[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mCarnegie-Mellon University[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- This course is a comprehensive study of the internals of modern database management systems. It will cover the core concepts and fundamentals of the components that are used in both high-performance transaction processing systems (OLT[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249mP) and large-scale analytical systems (OLAP). The class will stress both efficiency and correctness of the implementation of these ideas. All class projects will be in the context of a real in-memory, multi-core database system. The cou[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249mrse is appropriate for graduate students in software systems and for advanced undergraduates with strong systems programming skills.[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Assignments** (http://15721.courses.cs.cmu.edu/spring2016/syllabus.html)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Lecture Videos** (https://www.youtube.com/playlist?list=PLSE8ODhjZXjbisIGOepfnlbfxeH7TW-8O)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Readings** (http://15721.courses.cs.cmu.edu/spring2016/schedule.html)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1m15-445/645[0m[38;5;12m (http://15445.courses.cs.cmu.edu/fall2017/) [39m[38;5;14m[1mDatabase Systems[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mCarnegie-Mellon University[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- This course covers fundamental topics of DBMS, compared to CMU 15-721. [49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Assignments** (http://15445.courses.cs.cmu.edu/fall2017/assignments.html)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Lecture Videos** (https://www.youtube.com/playlist?list=PLSE8ODhjZXjYutVzTeAds8xUt1rcmyT7x)[49m[39m
|
||
[48;5;235m[38;5;249m- **Readings** (http://15445.courses.cs.cmu.edu/fall2017/schedule.html)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1m15-749[0m[38;5;12m (http://www.andrew.cmu.edu/course/15-749/) [39m[38;5;14m[1mEngineering Distributed Systems[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mCarnegie-Mellon University[0m[38;5;12m [39m
|
||
[38;5;12m - A project focused course on Distributed Systems with an awesome list of readings[39m
|
||
[48;5;235m[38;5;249m- **Readings** (http://www.andrew.cmu.edu/course/15-749/READINGS/)[49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1m18-447[0m[38;5;12m (http://www.ece.cmu.edu/~ece447/s15/doku.php?id=start) [39m[38;5;14m[1mIntroduction to Computer Architecture[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mCMU[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- Very comprehensive material on Computer Architecture - definitely more than just "introduction". Online material is very user-friendly, even the recitation videos available online. This is the Spring'15 version by Prof. **Onur Mutlu *[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m* (http://users.ece.cmu.edu/~omutlu/)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Lectures and Recitation** (http://www.ece.cmu.edu/~ece447/s15/doku.php?id=schedule)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Homeworks** (http://www.ece.cmu.edu/~ece447/s15/doku.php?id=homeworks) 7 HWs with answer set as well[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Readings** (http://www.ece.cmu.edu/~ece447/s15/doku.php?id=readings)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
|
||
[38;5;238m――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――[39m
|
||
[38;2;255;187;0m[4mProgramming Languages / Compilers[0m
|
||
|
||
[38;5;12m- [39m[38;5;14m[1mCS 75[0m[38;5;12m (https://www.cs.swarthmore.edu/~jpolitz/cs75/s16/index.html) [39m[38;5;14m[1mPrinciples of Compiler Design[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mSwathmore College[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- Modelled after the influential paper on **incremental approach to compiler design** (http://scheme2006.cs.uchicago.edu/11-ghuloum.pdf), this course teaches how to build a compiler in OCaml[49m[39m
|
||
[48;5;235m[38;5;249m- **Course on Github** (https://github.com/compilers-course-materials)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Notes** (https://github.com/compilers-course-materials/cs75-s16-lectures)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1mCS 91[0m[38;5;12m (https://www.cs.swarthmore.edu/~jpolitz/cs91/s15/index.html) [39m[38;5;14m[1mIntroduction to Programming Languages[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mSwathmore College[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- Uses the **Pyret** (https://www.pyret.org/) programming language & **PAPL** (http://papl.cs.brown.edu/2014/) book to understand the fundamentals of programming languages.[49m[39m
|
||
[48;5;235m[38;5;249m- **Labs** (https://www.cs.swarthmore.edu/~jpolitz/cs91/s15/s_labs.html)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1mCIS 194[0m[38;5;12m (http://www.seas.upenn.edu/~cis194/) [39m[38;5;14m[1mIntroduction to Haskell[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mPenn Engineering[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- Explore the joys of functional programming, using Haskell as a vehicle. The aim of the course will be to allow you to use Haskell to easily and conveniently write practical programs.[49m[39m
|
||
[48;5;235m[38;5;249m- **Previous** (http://www.seas.upenn.edu/~cis194/spring13/index.html) semester also available, with more exercises[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1mCIS 198[0m[38;5;12m (http://cis198-2016s.github.io/) [39m[38;5;14m[1mRust Programming[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mUPenn[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- This course covers what makes Rust so unique and applies it to practical systems programming problems. Topics covered include traits and generics; memory safety (move semantics, borrowing, and lifetimes); Rust’s rich macro system; clo[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249msures; and concurrency.[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Assignments** (https://github.com/cis198-2016s/homework)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1mCMSC 430[0m[38;5;12m (http://www.cs.umd.edu/class/spring2015/cmsc430/) [39m[38;5;14m[1mIntroduction to Compilers[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mUniv of Maryland[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- The goal of CMSC 430 is to arm students with the ability to design, implement, and extend a programming language. Throughout the course, students will design and implement several related languages, and will explore parsing, syntax qu[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249merying, dataflow analysis, compilation to bytecode, type systems, and language interoperation. [49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Lecture Notes** (http://www.cs.umd.edu/class/spring2015/cmsc430/Schedule.html)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Assignments** (http://www.cs.umd.edu/class/spring2015/cmsc430/Projects.html)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1mCorsopl[0m[38;5;12m (https://pradella.faculty.polimi.it/PL.html) [39m[38;5;14m[1mPrinciples of Programming Languages[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mPolitecnico di Milano[0m[38;5;12m - Readings[39m
|
||
[48;5;235m[38;5;249m- This course gives an overview of Scheme, Haskell and Erlang while analyzing the languages' similarities and differences. As a result, many important/prevalent concepts and how they manifest differently in different programming languag[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249mes are explained. Among these are (purely) functional programming, object orientation, type inference and evaluation order.[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- Thorough introduction to functional programming with no preknowledge in any functional language required. [49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1mCOS 326[0m[38;5;12m (http://www.cs.princeton.edu/~dpw/courses/cos326-12/info.php) [39m[38;5;14m[1mFunctional Programming[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mPrinceton University[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- Covers functional programming concepts like closures, tail-call recursion & parallelism using the OCaml programming language[49m[39m
|
||
[48;5;235m[38;5;249m- **Lectures** (http://www.cs.princeton.edu/~dpw/courses/cos326-12/lectures.php)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Assignments** (http://www.cs.princeton.edu/~dpw/courses/cos326-12/assignments.php)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1mCS 143[0m[38;5;12m (https://web.stanford.edu/class/cs143/) [39m[38;5;14m[1mCompiler construction[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mStanford University[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- CS143 is a Stanford's course in the practical and theoretical aspects of compiler construction.[49m[39m
|
||
[48;5;235m[38;5;249m- **Home** (https://web.stanford.edu/class/cs143/)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Syllabus** (https://web.stanford.edu/class/cs143/syllabus.html)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Lectures** (https://web.stanford.edu/class/cs143/)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Assignments** (https://web.stanford.edu/class/cs143/)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **CS143 - 2011** (http://www.keithschwarz.com/cs143/WWW/sum2011/)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1mCS 164[0m[38;5;12m (https://sites.google.com/a/bodik.org/cs164/home) [39m[38;5;14m[1mHack your language![0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mUC Berkeley[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- Introduction to programming languages by designing and implementing domain-specific languages.[49m[39m
|
||
[48;5;235m[38;5;249m- **Lecture Videos** (https://archive.org/details/ucberkeley-webcast-PL3A16CFC42CA6EF4F)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Code for Assignments** (https://bitbucket.org/cs164_overlord/)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1mCS 173[0m[38;5;12m (http://cs.brown.edu/courses/cs173/2014/) [39m[38;5;14m[1mProgramming Languages[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mBrown University[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- Course by Prof. Krishnamurthi (author of **HtDP** (http://htdp.org/2003-09-26/Book/)) and numerous other **awesome** (http://cs.brown.edu/courses/cs173/2012/book/) **books** (http://papl.cs.brown.edu/2014/index.html) on programming la[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249mnguages. Uses a custom designed **Pyret** (http://www.pyret.org/) programming language to teach the concepts. There was an **online class** (http://cs.brown.edu/courses/cs173/2012/OnLine/) hosted in 2012, which includes all lecture vide[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249mos for you to enjoy.[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Videos** (http://cs.brown.edu/courses/cs173/2012/Videos/)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Assignments** (http://cs.brown.edu/courses/cs173/2014/assignments.html)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1mCS 223[0m[38;5;12m (https://www.classes.cs.uchicago.edu/archive/2016/winter/22300-1/) [39m[38;5;14m[1mPurely Functional Data Structures In Elm[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mUniversity of Chicago[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- This course teaches functional reactive programming and purely functional data structures based on Chris Okazaki's book and using the Elm programming language.[49m[39m
|
||
[48;5;235m[38;5;249m- **Lectures** (https://www.classes.cs.uchicago.edu/archive/2015/winter/22300-1/Schedule.html)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Assignments** (https://www.classes.cs.uchicago.edu/archive/2015/winter/22300-1/Schedule.html)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1mCS 240h[0m[38;5;12m (http://www.scs.stanford.edu/14sp-cs240h/) [39m[38;5;14m[1mFunctional Systems in Haskell[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mStanford University[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- Building software systems in Haskell[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Lecture Slides** (http://www.scs.stanford.edu/14sp-cs240h/slides/)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- 3 Assignments: **Lab1** (http://www.scs.stanford.edu/14sp-cs240h/labs/lab1.html), **Lab2** (http://www.scs.stanford.edu/14sp-cs240h/labs/lab2.html), **Lab3** (http://www.scs.stanford.edu/14sp-cs240h/labs/lab3.html)[49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1mCS 421[0m[38;5;12m (https://courses.engr.illinois.edu/cs421/fa2014/) [39m[38;5;14m[1mProgramming Languages and Compilers[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mUniv of Illinois, Urbana-Champaign[0m[38;5;12m [39m
|
||
[38;5;12m Course that uses OCaml to teach functional programming and programming language design.[39m
|
||
[48;5;235m[38;5;249m- **Lectures** (https://courses.engr.illinois.edu/cs421/fa2014/lectures/index.html)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Videos** (http://recordings.engineering.illinois.edu/ess/portal/section/631edaeb-2a33-4537-b7c8-0c1cba783a4f)[49m[39m
|
||
[48;5;235m[38;5;249m- **Assignments** (https://courses.engr.illinois.edu/cs421/fa2014/mps/index.html)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Exams** (https://courses.engr.illinois.edu/cs421/fa2014/exams/index.html)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1mCS 3110[0m[38;5;12m (http://www.cs.cornell.edu/Courses/cs3110/2014fa/course_info.php) [39m[38;5;14m[1mData Structures and Functional Programming[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mCornell University[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- Another course that uses OCaml to teach alternative programming paradigms, especially functional and concurrent programming.[49m[39m
|
||
[48;5;235m[38;5;249m- **Lecture Slides** (http://www.cs.cornell.edu/Courses/cs3110/2014fa/lecture_notes.php)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Assignments** (http://www.cs.cornell.edu/Courses/cs3110/2014fa/)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1mCS 4120[0m[38;5;12m (http://www.cs.cornell.edu/courses/CS4120/2013fa/) [39m[38;5;14m[1mIntroduction to Compilers[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mCornell University[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- An introduction to the specification and implementation of modern compilers. Topics covered include lexical scanning, parsing, type checking, code generation and translation, an introduction to optimization, and compile-time and run-t[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249mime support for modern programming languages. As part of the course, students build a working compiler for an object-oriented language.[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Syllabus** (http://www.cs.cornell.edu/courses/CS4120/2013fa/overview.html)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Lectures** (http://www.cs.cornell.edu/courses/CS4120/2013fa/schedule.html)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Assignments** (http://www.cs.cornell.edu/courses/CS4120/2013fa/homework.html)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1mCS 4400[0m[38;5;12m (https://pl.barzilay.org/) [39m[38;5;14m[1mProgramming Languages[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mNortheastern University[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- This is a course on the study, design, and implementation of programming languages.[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- The course works at two simultaneous levels: first, we will use a programming language that can demonstrate a wide variety of programming paradigms. Second, using this language, we will learn about the mechanics behind programming lan[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249mguages by implementing our own language(s). The two level approach usually means that we will often see how to use a certain feature, and continue by implementing it.[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Syllabus** (https://pl.barzilay.org/syllabus.html)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Lecture Notes/Resources** (https://pl.barzilay.org/resources.html)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1mCS 4610[0m[38;5;12m (http://www.cs.virginia.edu/~weimer/4610/) [39m[38;5;14m[1mProgramming Languages and Compilers[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mUniversity of Virginia[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- Course that uses OCaml to teach functional programming and programming language design. Each assignment is a part of an interpreter and compiler for an object-oriented language similar to Java, and you are required to use a different [49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249mlanguage for each assignment (i.e., choose 4 from Python, JS, OCaml, Haskell, Ruby).[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Lecture Notes** (http://www.cs.virginia.edu/~weimer/4610/lectures.html)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Assignments** (http://www.cs.virginia.edu/~weimer/4610/pa.html)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1mCS 5114[0m[38;5;12m (http://www.cs.cornell.edu/courses/CS5114/2013sp/index.php) [39m[38;5;14m[1mNetwork Programming Languages[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mCornell University[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- This course provides an introduction to the languages used to program computer networks. It will examine recent proposals based on logic, functional, and distributed languages, as well as tools for establishing correctness using autom[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249matic solvers, model checkers, and proof assistants.[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Syllabus** (http://www.cs.cornell.edu/courses/CS5114/2013sp/syllabus.php)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Lectures** (http://www.cs.cornell.edu/courses/CS5114/2013sp/syllabus.php)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1mCS 5142[0m[38;5;12m (http://www.cs.cornell.edu/courses/CS5142/2013fa/) [39m[38;5;14m[1mScripting Languages[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mCornell University[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- Perl, PHP, JavaScript, VisualBasic -- they are often-requested skills for employment, but most of us do not have the time to find out what they are all about. In this course, you learn how to use scripting languages for rapid prototyp[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249ming, web programming, data processing, and application extension. Besides covering traditional programming languages concepts as they apply to scripting (e.g., dynamic typing and scoping), this course looks at new concepts rarely found [49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249min traditional languages (e.g., string interpolation, hashes, and polylingual code). Through a series of small projects, you use different languages to achieve programming tasks that highlight the strengths and weaknesses of scripting. [49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249mAs a side effect, you practice teaching yourself new languages.[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Syllabus** (http://www.cs.cornell.edu/courses/CS5142/2013fa/)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Lectures** (http://www.cs.cornell.edu/courses/CS5142/2013fa/#schedule)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Assignments** (http://www.cs.cornell.edu/courses/CS5142/2013fa/#schedule)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1mCS 5470[0m[38;5;12m (http://matt.might.net/teaching/compilers/spring-2015/) [39m[38;5;14m[1mCompilers[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mUniversity of Utah[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- If you're a fan of Prof Matt's writing on his **fantastic blog** (http://matt.might.net/articles/) you ought to give this a shot. The course covers the design and implementation of compilers, and it explores related topics such as int[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249merpreters, virtual machines and runtime systems. Aside from the Prof's witty take on **cheating** (http://matt.might.net/teaching/compilers/spring-2015/#collaboration) the page has tons of interesting links on programming languages, par[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249msing and compilers.[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Lecture Notes** (https://www.dropbox.com/sh/zanwtoflw4pcfu8/5pdT6axS3y)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Projects** (http://matt.might.net/teaching/compilers/spring-2015/#projects)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1mCS 6118[0m[38;5;12m (http://www.cs.cornell.edu/courses/CS6118/2012fa/) [39m[38;5;14m[1mTypes and Semantics[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mCornell University[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- Types and Semantics is about designing and understand programming languages, whether they be domain specific or general purpose. The goal of this class is to provide a variety of tools for designing custom (programming) languages for [49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249mwhatever task is at hand. Part of that will be a variety of insights on how languages work along with experiences from working with academics and industry on creating new languages such as Ceylon and Kotlin. The class focuses on types a[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249mnd semantics and the interplay between them. This means category theory and constructive type theory (e.g. Coq and richer variations) are ancillary topics of the class. The class also covers unconventional semantic domains such as class[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249mical linear type theory in order to both break students from conventional thinking and to provide powerful targets capable of formalizing thinks like networking protocols, resource-sensitive computation, and concurrency constructs. The [49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249mclass project is to design and formalize a (programming) language for a purpose of the student's choosing, and assignments are designed to ensure students have had a chance to practice applying the techniques learned in class before cul[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249mminating these skills in the class project.[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Syllabus** (http://www.cs.cornell.edu/courses/CS6118/2012fa/)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Lectures** (http://www.cs.cornell.edu/courses/CS6118/2012fa/)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1mCSC 253[0m[38;5;12m (http://pgbovine.net/cpython-internals.htm) [39m[38;5;14m[1mCPython internals: A ten-hour codewalk through the Python interpreter source code[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mUniversity of Rochester[0m[38;5;12m [39m
|
||
[38;5;12m - Nine lectures walking through the internals of CPython, the canonical Python interpreter implemented in C. They were from the [39m[48;2;30;30;40m[38;5;13m[3mDynamic Languages and Software Development[0m[38;5;12m course taught in Fall 2014 at the University of Rochester.[39m
|
||
[38;5;12m- [39m[38;5;14m[1mCSE 341[0m[38;5;12m (http://courses.cs.washington.edu/courses/cse341/16sp/) [39m[38;5;14m[1mProgramming Languages[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mUniversity of Washington[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- Covers non-imperative paradigms and languages such as Ruby, Racket, and ML and the fundamentals of programming languages.[49m[39m
|
||
[48;5;235m[38;5;249m- **Lectures and Videos** (https://courses.cs.washington.edu/courses/cse341/16sp/#lectures)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Assignments and Tests** (https://courses.cs.washington.edu/courses/cse341/16sp/#homeworks)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1mCSE P 501[0m[38;5;12m (http://courses.cs.washington.edu/courses/csep501/09au/lectures/video.html) [39m[38;5;14m[1mCompiler Construction[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mUniversity of Washington[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- Teaches understanding of how a modern compiler is structured and the major algorithms that are used to translate code from high-level to machine language. The best way to do this is to actually build a working compiler, so there will [49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249mbe a significant project to implement one that translates programs written in a core subset of Java into executable x86 assembly language. The compilers themselves will use scanner and parser generator tools and the default implementati[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249mon language is Java.[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Lectures** (http://courses.cs.washington.edu/courses/csep501/09au/lectures/video.html)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Assignments, Tests, and Solutions** (http://courses.cs.washington.edu/courses/csep501/09au/homework/index.html)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1mDMFP[0m[38;5;12m (http://cs.wheaton.edu/~tvandrun/dmfp/) [39m[38;5;14m[1mDiscrete Mathematics and Functional Programming[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mWheaton College[0m[38;5;12m [39m
|
||
[38;5;12m - A course that teaches discrete maths concepts with functional programming[39m
|
||
[38;5;12m - [39m[38;5;14m[1mLecture Videos[0m[38;5;12m (http://cs.wheaton.edu/~tvandrun/dmfp/)[39m
|
||
[38;5;12m - [39m[38;5;14m[1mAssignments[0m[38;5;12m (http://cs.wheaton.edu/~tvandrun/dmfp/source.html)[39m
|
||
[38;5;12m- [39m[38;5;14m[1mPCPP[0m[38;5;12m (http://www.itu.dk/people/sestoft/itu/PCPP/E2015/) [39m[38;5;14m[1mPractical Concurrent and Parallel Programming[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mIT University of Copenhagen[0m[38;5;12m [39m
|
||
[38;5;12m - In this MSc course you learn how to write correct and efficient concurrent and parallel software, primarily using Java, on standard shared-memory multicore hardware.[39m
|
||
[38;5;12m [39m[38;5;12m-[39m[38;5;12m [39m[38;5;12mThe[39m[38;5;12m [39m[38;5;12mcourse[39m[38;5;12m [39m[38;5;12mcovers[39m[38;5;12m [39m[38;5;12mbasic[39m[38;5;12m [39m[38;5;12mmechanisms[39m[38;5;12m [39m[38;5;12msuch[39m[38;5;12m [39m[38;5;12mas[39m[38;5;12m [39m[38;5;12mthreads,[39m[38;5;12m [39m[38;5;12mlocks[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12mshared[39m[38;5;12m [39m[38;5;12mmemory[39m[38;5;12m [39m[38;5;12mas[39m[38;5;12m [39m[38;5;12mwell[39m[38;5;12m [39m[38;5;12mas[39m[38;5;12m [39m[38;5;12mmore[39m[38;5;12m [39m[38;5;12madvanced[39m[38;5;12m [39m[38;5;12mmechanisms[39m[38;5;12m [39m[38;5;12msuch[39m[38;5;12m [39m[38;5;12mas[39m[38;5;12m [39m[38;5;12mparallel[39m[38;5;12m [39m[38;5;12mstreams[39m[38;5;12m [39m[38;5;12mfor[39m[38;5;12m [39m[38;5;12mbulk[39m[38;5;12m [39m[38;5;12mdata,[39m[38;5;12m [39m[38;5;12mtransactional[39m[38;5;12m [39m[38;5;12mmemory,[39m[38;5;12m [39m[38;5;12mmessage[39m[38;5;12m [39m[38;5;12mpassing,[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12mlock-free[39m[38;5;12m [39m[38;5;12mdata[39m[38;5;12m [39m[38;5;12mstructures[39m[38;5;12m [39m[38;5;12mwith[39m[38;5;12m [39m
|
||
[38;5;12mcompare-and-swap.[39m
|
||
[38;5;12m - It covers concepts such as atomicity, safety, liveness and deadlock.[39m
|
||
[38;5;12m - It covers how to measure and understand performance and scalability of parallel programs.[39m
|
||
[38;5;12m - It covers tools and methods to find bugs in concurrent programs.[39m
|
||
[38;5;12m- [39m[38;5;14m[1m6.945[0m[38;5;12m (https://groups.csail.mit.edu/mac/users/gjs/6.945/index.html) [39m[38;5;14m[1mAdventures in Advanced Symbolic Programming[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mMIT[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- Taught by Gerald Sussman of SICP fame, this class deals with concepts and techniques for the design an implementation of large software systems that can be adapted to uses not anticipated by the designer. Applications include compiler[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249ms, computer-algebra systems, deductive systems, and some artificial intelligence applications.[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Assignments** (https://groups.csail.mit.edu/mac/users/gjs/6.945/assignments.html): Extensive programming assignments, using MIT/GNU Scheme. Students should have significant programming experience in Scheme, Common Lisp, Haskell, CAM[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249mL or other "functional" language.[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Readings** (https://groups.csail.mit.edu/mac/users/gjs/6.945/readings/)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1mCS 696[0m[38;5;12m (http://www.eli.sdsu.edu/courses/fall15/cs696/index.html) [39m[38;5;14m[1mFunctional Design and Programming[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mSan Diego State University[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- Covers functional programming basis using Clojure.[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- Topics include testing, functional programming, immutable collections and concurrency.[49m[39m
|
||
[48;5;235m[38;5;249m- Also includes assignments covering Clojurescript, **Reagent** (Reagent Github) etc.[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1mL28[0m[38;5;12m (https://www.cl.cam.ac.uk/teaching/1516/L28/) [39m[38;5;14m[1mAdvanced Functional Programming[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mUniversity of Cambridge[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- This module aims to teach students how to use the features of modern typed functional programming languages (e.g. OCaml, Haskell) to design and implement libraries and DSLs. It aims to demonstrate how such techniques can improve both [49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249mcorrectness and efficiency. Students wishing to take the module should have some experience of a typed functional programming language and an understanding of type inference.[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- This particular session was taught by a prominent OCaml programmer, open Source contributor & author of real world OCaml - Dr Anil Madhavapeddy.[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
|
||
[38;5;238m――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――[39m
|
||
|
||
[38;2;255;187;0m[4mAlgorithms[0m
|
||
|
||
[38;5;12m- [39m[38;5;14m[1mCS 61B[0m[38;5;12m (http://datastructur.es/sp16/) [39m[38;5;14m[1mData Structures[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mUC Berkeley[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- In this course, you will study advanced programming techniques including data structures, encapsulation, abstract data types, interfaces, and algorithms for sorting and searching, and you will get a taste of “software engineering”—the[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m design and implementation of large programs.[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Full Lecture Materials** (http://datastructur.es/sp16/) Lecture of Spring 2016. This website contains full matrials including video links, labs, homeworks, projects. Very good for self-learner. Also a good start for Java. And it inc[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249mludes some other useful resources for Java Documentation, Data Structure Resources, Git/GitHub and Java Development Resources. **Resources** (http://datastructur.es/sp16/resources.html)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Labs** (http://www.cs.berkeley.edu/~jrs/61b/lab/index.html) The link to labs and projects is included in the website.[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Lecture Videos** (https://archive.org/details/ucberkeley-webcast-PL-XXv-cvA_iC2Khb1B5NnbE7SHPQ1-W17) [49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1mCS 97SI[0m[38;5;12m (http://web.stanford.edu/class/cs97si/) [39m[38;5;14m[1mIntroduction to Competitive Programming[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mStanford University[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- Fantastic repository of theory and practice problems across various topics for students who are interested to participate in ACM-ICPC.[49m[39m
|
||
[48;5;235m[38;5;249m- **Lectures and Assignments** (https://github.com/jaehyunp/stanfordacm)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1mCS 224[0m[38;5;12m (http://people.seas.harvard.edu/~minilek/cs224/fall14/index.html) [39m[38;5;14m[1mAdvanced Algorithms[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mHarvard University[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- CS 224 is an advanced course in algorithm design, and topics we will cover include the word RAM model, data structures, amortization, online algorithms, linear programming, semidefinite programming, approximation algorithms, hashing, [49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249mrandomized algorithms, fast exponential time algorithms, graph algorithms, and computational geometry.[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Lecture Videos** (http://people.seas.harvard.edu/~minilek/cs224/fall14/lec.html) (**Youtube** (https://www.youtube.com/playlist?list=PL2SOU6wwxB0uP4rJgf5ayhHWgw7akUWSf))[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Assignments** (http://people.seas.harvard.edu/~minilek/cs224/fall14/hmwk.html)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1mCS 261[0m[38;5;12m (http://theory.stanford.edu/~tim/w16/w16.html) [39m[38;5;14m[1mA Second Course in Algorithms[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mStanford University[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- Algorithms for network optimization: max-flow, min-cost flow, matching, assignment, and min-cut problems. Introduction to linear programming. Use of LP duality for design and analysis of algorithms. Approximation algorithms for NP-com[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249mplete problems such as Steiner Trees, Traveling Salesman, and scheduling problems. Randomized algorithms. Introduction to online algorithms.[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Lecture Notes, Videos & Assignments** (http://theory.stanford.edu/~tim/w16/w16.html) (**Youtube** (https://www.youtube.com/playlist?list=PLEGCF-WLh2RJh2yDxlJJjnKswWdoO8gAc))[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1mCS 473/573[0m[38;5;12m (http://jeffe.cs.illinois.edu/teaching/algorithms/) [39m[38;5;14m[1mFundamental Algorithms[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mUniv of Illinois, Urbana-Champaign[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- Algorithms class covering recursion, randomization, amortization, graph algorithms, network flows and hardness. The lecture notes by Prof. Erikson are comprehensive enough to be a book by themselves. Highly recommended![49m[39m
|
||
[48;5;235m[38;5;249m- **Lecture Notes** (http://web.engr.illinois.edu/~jeffe/teaching/algorithms/all-algorithms.pdf)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Labs and Exams** (http://web.engr.illinois.edu/~jeffe/teaching/algorithms/all-hwex.pdf)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1mCS 2150[0m[38;5;12m (https://github.com/aaronbloomfield/pdr) [39m[38;5;14m[1mProgram & Data Representation[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mUniversity of Virginia[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- This data structures course introduces C++, linked-lists, stacks, queues, trees, numerical representation, hash tables, priority queues, heaps, huffman coding, graphs, and x86 assembly.[49m[39m
|
||
[48;5;235m[38;5;249m- **Lectures** (http://aaronbloomfield.github.io/pdr/slides/)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Assignments** (http://aaronbloomfield.github.io/pdr/labs/)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1mCS 4820[0m[38;5;12m (http://www.cs.cornell.edu/courses/CS4820/2015sp/) [39m[38;5;14m[1mIntroduction to Analysis of Algorithms[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mCornell University[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- This course develops techniques used in the design and analysis of algorithms, with an emphasis on problems arising in computing applications. Example applications are drawn from systems and networks, artificial intelligence, compute[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249mr vision, data mining, and computational biology. This course covers four major algorithm design techniques (greedy algorithms, divide and conquer, dynamic programming, and network flow), computability theory focusing on undecidability,[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m computational complexity focusing on NP-completeness, and algorithmic techniques for intractable problems, including identification of structured special cases, approximation algorithms, and local search heuristics.[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Lectures** (http://www.cs.cornell.edu/courses/CS4820/2015sp/lectures/)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Syllabus** (http://www.cs.cornell.edu/courses/CS4820/2015sp/syllabus/)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1mCSCI 104[0m[38;5;12m (http://www-scf.usc.edu/~csci104/20142/lectures/) [39m[38;5;14m[1mData Structures and Object Oriented Design[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mUniversity of Southern California (USC)[0m
|
||
[48;5;235m[38;5;249m- **Lectures** (http://www-scf.usc.edu/~csci104/20142/lectures)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Labs** (http://www-scf.usc.edu/~csci104/20142/labs)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Assignments** (http://www-scf.usc.edu/~csci104/20142/assignments/)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Additional Resources** (http://www-scf.usc.edu/~csci104/20142/resources.html)[49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1mCSCI 135[0m[38;5;12m (http://compsci.hunter.cuny.edu/~sweiss/courses/csci135.php) [39m[38;5;14m[1mSoftware Design and Analysis I[0m[38;5;12m [39m
|
||
[48;2;30;30;40m[38;5;13m[3mCUNY Hunter College[0m
|
||
[48;5;235m[38;5;249m- It is currently an intensive introduction to program development and problem solving. Its emphasis is on the process of designing, implementing, and evaluating small-scale programs. It is not supposed to be a C++ programming course, a[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249mlthough much of the course is spent on the details of C++. C++ is an extremely large and complex programming language with many features that interact in unexpected ways. One does not need to know even half of the language to use it wel[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249ml.[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Lectures and Assignments** (http://compsci.hunter.cuny.edu/~sweiss/course_materials/csci135/csci135_36_fall12.php)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1mCSCI 235[0m[38;5;12m (http://compsci.hunter.cuny.edu/~sweiss/courses/csci235.php) [39m[38;5;14m[1mSoftware Design and Analysis II[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mCUNY Hunter College[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- Introduces algorithms for a few common problems such as sorting. Practically speaking, it furthers the students' programming skills with topics such as recursion, pointers, and exception handling, and provides a chance to improve soft[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249mware engineering skills and to give the students practical experience for more productive programming.[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Lectures and Assignments** (http://compsci.hunter.cuny.edu/~sweiss/course_materials/csci235/csci235_f14.php)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1mCSCI 335[0m[38;5;12m (http://compsci.hunter.cuny.edu/~sweiss/courses/csci335.php) [39m[38;5;14m[1mSoftware Design and Analysis III[0m[38;5;12m [39m
|
||
[48;2;30;30;40m[38;5;13m[3mCUNY Hunter College[0m
|
||
[48;5;235m[38;5;249m- This includes the introduction of hashes, heaps, various forms of trees, and graphs. It also revisits recursion and the sorting problem from a higher perspective than was presented in the prequels. On top of this, it is intended to in[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249mtroduce methods of algorithmic analysis.[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Lectures and Assignments** (http://compsci.hunter.cuny.edu/~sweiss/course_materials/csci335/csci335_s14.php)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1mCSE 331[0m[38;5;12m (http://courses.cs.washington.edu/courses/cse331/15sp/) [39m[38;5;14m[1mSoftware Design and Implementation[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mUniversity of Washington[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- Explores concepts and techniques for design and construction of reliable and maintainable software systems in modern high-level languages; program structure and design; program-correctness approaches, including testing.[49m[39m
|
||
[48;5;235m[38;5;249m- **Lectures, Assignments, and Exams** (http://courses.cs.washington.edu/courses/cse331/15sp/#all)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1mCSE 373[0m[38;5;12m (http://www3.cs.stonybrook.edu/~skiena/373/) [39m[38;5;14m[1mAnalysis of Algorithms[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mStony Brook University[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- Prof Steven Skiena's no stranger to any student when it comes to algorithms. His seminal **book** (http://www.algorist.com/) has been touted by many to be best for **getting that job in Google** (http://steve-yegge.blogspot.com/2008/0[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m3/get-that-job-at-google.html). In addition, he's also well-known for tutoring students in competitive **programming competitions** (http://www.programming-challenges.com/pg.php?page=index). If you're looking to brush up your knowledge [49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249mon Algorithms, you can't go wrong with this course.[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Lecture Videos** (http://www.cs.sunysb.edu/~algorith/video-lectures/)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1mECS 122A[0m[38;5;12m (http://web.cs.ucdavis.edu/~gusfield/cs122f10/) [39m[38;5;14m[1mAlgorithm Design and Analysis[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mUC Davis[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- Taught by **Dan Gusfield** (http://web.cs.ucdavis.edu/~gusfield/) in 2010, this course is an undergraduate introduction to algorithm design and analysis. It features traditional topics, such as Big Oh notation, as well as an importanc[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249me on implementing specific algorithms. Also featured are sorting (in linear time), graph algorithms, depth-first search, string matching, dynamic programming, NP-completeness, approximation, and randomization.[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Syllabus** (http://web.cs.ucdavis.edu/~gusfield/cs122f10/syll122.pdf)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Lecture Videos** (http://web.cs.ucdavis.edu/~gusfield/cs122f10/videolist.html)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Assignments** (http://web.cs.ucdavis.edu/~gusfield/cs122f10/)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1mECS 222A[0m[38;5;12m (http://web.cs.ucdavis.edu/~gusfield/cs222w11/) [39m[38;5;14m[1mGraduate Level Algorithm Design and Analysis[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mUC Davis[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- This is the graduate level complement to the ECS 122A undergraduate algorithms course by **Dan Gusfield** (http://web.cs.ucdavis.edu/~gusfield/) in 2011. It assumes an undergrad course has already been taken in algorithms, and, while [49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249mgoing over some undergraduate algorithms topics, focuses more on increasingly complex and advanced algorithms.[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Lecture Videos** (http://web.cs.ucdavis.edu/~gusfield/cs222f07/videolist.html)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Syllabus** (http://web.cs.ucdavis.edu/~gusfield/cs222w11/syll11.pdf)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Assignments** (http://web.cs.ucdavis.edu/~gusfield/cs222w11/)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1m6.INT[0m[38;5;12m (https://courses.csail.mit.edu/iap/interview/index.php) [39m[38;5;14m[1mHacking a Google Interview[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mMIT[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- This course taught in the MIT Independent Activities Period in 2009 goes over common solution to common interview questions for software engineer interviews at highly selective companies like Apple, Google, and Facebook. They cover ti[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249mme complexity, hash tables, binary search trees, and other common algorithm topics you should have already covered in a different course, but goes more in depth on things you wouldn't otherwise learn in class- like bitwise logic and pro[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249mblem solving tricks.[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Handouts** (https://courses.csail.mit.edu/iap/interview/materials.php)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Topics Covered** (https://courses.csail.mit.edu/iap/interview/calendar.php)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1m6.006[0m[38;5;12m (https://ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-006-introduction-to-algorithms-fall-2011/index.htm) [39m[38;5;14m[1mIntroduction to Algorithms[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mMIT[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- This course provides an introduction to mathematical modeling of computational problems. It covers the common algorithms, algorithmic paradigms, and data structures used to solve these problems. The course emphasizes the relationship [49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249mbetween algorithms and programming, and introduces basic performance measures and analysis techniques for these problems.[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Lecture Videos** (http://ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-006-introduction-to-algorithms-fall-2011/lecture-videos/)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m - [39m[38;5;14m[1mAssignments[0m[38;5;12m (http://ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-006-introduction-to-algorithms-fall-2011/assignments/)[39m
|
||
[48;5;235m[38;5;249m- **Readings** (http://ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-006-introduction-to-algorithms-fall-2011/readings/)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Resources** (http://ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-006-introduction-to-algorithms-fall-2011/download-course-materials/)[49m[39m
|
||
[48;5;235m[38;5;249m- **Old Exams** (http://ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-006-introduction-to-algorithms-fall-2011/exams/)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1m6.046J/18.410J[0m[38;5;12m (http://ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-046j-design-and-analysis-of-algorithms-spring-2015/index.htm) [39m[38;5;14m[1mDesign and Analysis of Algorithms[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mMIT[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- This is an intermediate algorithms course with an emphasis on teaching techniques for the design and analysis of efficient algorithms, emphasizing methods of application. Topics include divide-and-conquer, randomization, dynamic progr[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249mamming, greedy algorithms, incremental improvement, complexity, and cryptography. This course assumes that students know how to analyze simple algorithms and data structures from having taken **6.006** (http://ocw.mit.edu/courses/electr[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249mical-engineering-and-computer-science/6-006-introduction-to-algorithms-fall-2011/). It introduces students to the design of computer algorithms, as well as analysis of sophisticated algorithms.[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Lecture Videos** (http://ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-046j-design-and-analysis-of-algorithms-spring-2015/lecture-videos/)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m - [39m[38;5;14m[1mLecture Notes[0m[38;5;12m (http://ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-046j-design-and-analysis-of-algorithms-spring-2015/lecture-notes/)[39m
|
||
[48;5;235m[38;5;249m- **Assignments** (http://ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-046j-design-and-analysis-of-algorithms-spring-2015/assignments/)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Resources** (http://ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-046j-design-and-analysis-of-algorithms-spring-2015/download-course-materials/)[49m[39m
|
||
[48;5;235m[38;5;249m- **Old Exams** (http://ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-046j-design-and-analysis-of-algorithms-spring-2015/exams/)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1m6.851[0m[38;5;12m (https://courses.csail.mit.edu/6.851/spring21/index.html) [39m[38;5;14m[1mAdvanced Data Structures[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mMIT[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- This is an advanced DS course, you must be done with the **Advanced Algorithms** (https://courses.csail.mit.edu/6.854/current/) course before attempting this one.[49m[39m
|
||
[48;5;235m[38;5;249m- **Lectures** (https://courses.csail.mit.edu/6.851/spring21/lectures/) Contains videos from sp2012 version, but there isn't much difference.[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Assignments** (https://courses.csail.mit.edu/6.851/spring21/psets/) contains the calendar as well.[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1m6.854/18.415J[0m[38;5;12m (https://courses.csail.mit.edu/6.854/current/) [39m[38;5;14m[1mAdvanced Algorithms[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mMIT[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- Advanced course in algorithms by Dr. David Karger covering topics such as amortization, randomization, fingerprinting, word-level parallelism, bit scaling, dynamic programming, network flow, linear programming, fixed-parameter algorit[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249mhms, and approximation algorithms.[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Register** on **NB** (http://nb.mit.edu/subscribe?key=D3a8CYpoO2VcR1ZcfaxmR5KbyjCGXd3INNXvL3mxEakYJ7qGJw) to access the **problem set and lectures** (http://nb.mit.edu/).[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1m6.854J/18.415J[0m[38;5;12m (http://ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-854j-advanced-algorithms-fall-2005/index.htm) [39m[38;5;14m[1mAdvanced Algorithms[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mMIT[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- This course is a first-year graduate course in algorithms. Emphasis is placed on fundamental algorithms and advanced methods of algorithmic design, analysis, and implementation. Techniques to be covered include amortization, randomiza[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249mtion, fingerprinting, word-level parallelism, bit scaling, dynamic programming, network flow, linear programming, fixed-parameter algorithms, and approximation algorithms. Domains include string algorithms, network optimization, paralle[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249ml algorithms, computational geometry, online algorithms, external memory, cache, and streaming algorithms, and data structures. The need for efficient algorithms arises in nearly every area of computer science. But the type of problem t[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249mo be solved, the notion of what algorithms are "efficient,'' and even the model of computation can vary widely from area to area. In this second class in algorithms, we will survey many of the techniques that apply broadly in the design[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m of efficient algorithms, and study their application in a wide range of application domains and computational models. The goal is for the class to be broad rather than deep. Our plan is to touch upon the following areas. This is a tent[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249mative list of topics that might be covered in the class; we will select material adaptively based on the background, interests, and rate of progress of the students.[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Lecture Videos - Spring 2016** (https://www.youtube.com/playlist?list=PL6ogFv-ieghdoGKGg2Bik3Gl1glBTEu8c)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Lecture Notes** (http://ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-854j-advanced-algorithms-fall-2005/lecture-notes/)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m - [39m[38;5;14m[1mAssignments[0m[38;5;12m (http://ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-854j-advanced-algorithms-fall-2005/assignments/)[39m
|
||
[48;5;235m[38;5;249m- **Readings** (http://ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-854j-advanced-algorithms-fall-2005/readings/)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Resources** (http://ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-854j-advanced-algorithms-fall-2005/download-course-materials/)[49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1m15-451/651[0m[38;5;12m (http://www.cs.cmu.edu/afs/cs/academic/class/15451-f10/www/) [39m[38;5;14m[1mAlgorithms[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mCarnegie Mellon University[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- The required algorithms class that go in depth into all basic algorithms and the proofs behind them. This is one of the heavier algorithms curriculums on this page. Taught by Avrim Blum and **Manuel Blum** (http://en.wikipedia.org/wik[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249mi/Manuel_Blum) who has a Turing Award due to his contributions to algorithms. Course link includes a very comprehensive set of reference notes by Avrim Blum.[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1m16s-4102[0m[38;5;12m (http://www.cs.virginia.edu/~shelat/16s-4102/) [39m[38;5;14m[1mAlgorithms[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mUniversity of Virginia[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- **Lecture Videos & Homeworks** (http://www.cs.virginia.edu/~shelat/16s-4102/) (**Youtube** (https://www.youtube.com/channel/UCxXYk53cSZof2bR_Ax0uJYQ/videos))[49m[39m
|
||
|
||
[38;5;238m――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――[39m
|
||
|
||
[38;2;255;187;0m[4mCS Theory[0m
|
||
|
||
[38;5;12m- [39m[38;5;14m[1mCIS 500[0m[38;5;12m (http://www.seas.upenn.edu/~cis500/cis500-f14/index.html) [39m[38;5;14m[1mSoftware Foundations[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mUniversity of Pennsylvania[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- An introduction to formal verification of software using the Coq proof assistant. Topics include basic concepts of logic, computer-assisted theorem proving, functional programming, operational semantics, Hoare logic, and static type s[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249mystems.[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Lectures and Assignments** (http://www.seas.upenn.edu/~cis500/cis500-f14/index.html#schedule)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Textbook** (http://www.cis.upenn.edu/~bcpierce/sf/current/index.html)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1mCS 103[0m[38;5;12m (http://web.stanford.edu/class/cs103/) [39m[38;5;14m[1mMathematical Foundations of Computing[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mStanford University[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- CS103 is a first course in discrete math, computability theory, and complexity theory. In this course, we'll probe the limits of computer power, explore why some problems are harder to solve than others, and see how to reason with ma[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249mthematical certainty.[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- Links to all lectures notes and assignments are directly on the course page[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1mCS 173[0m[38;5;12m (https://courses.engr.illinois.edu/cs173/fa2014/A-lecture/index.html) [39m[38;5;14m[1mDiscrete Structures[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mUniv of Illinois Urbana-Champaign[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- This course is an introduction to the theoretical side of computer science. In it, you will learn how to construct proofs, read and write literate formal mathematics, get a quick introduction to key theory topics and become familiar w[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249mith a range of standard mathematics concepts commonly used in computer science.[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Textbook** (http://web.engr.illinois.edu/~mfleck/building-blocks/) Written by the professor. Includes Instructor's Guide.[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Assignments** (https://courses.engr.illinois.edu/cs173/fa2014/A-lecture/Homework/index.html)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Exams** (https://courses.engr.illinois.edu/cs173/fa2014/A-lecture/Exams/index.html)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1mCS 276[0m[38;5;12m (http://www.cs.berkeley.edu/~sanjamg/classes/cs276-fall14/) [39m[38;5;14m[1mFoundations of Cryptography[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mUC Berkeley[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- This course discusses the complexity-theory foundations of modern cryptography, and looks at recent results in the field such as Fully Homomorphic Encryption, Indistinguishability Obfuscation, MPC and so on.[49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1mCS 278[0m[38;5;12m (http://www.cs.berkeley.edu/~luca/cs278-08/) [39m[38;5;14m[1mComplexity Theory[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mUC Berkeley[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- A graduate level course on complexity theory that introduces P vs NP, the power of randomness, average-case complexity, hardness of approximation, and so on.[49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1mCS 374[0m[38;5;12m (https://courses.engr.illinois.edu/cs498374/fa2014/) [39m[38;5;14m[1mAlgorithms & Models of Computation (Fall 2014)[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mUniversity of Illinois Urbana-Champaign[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- CS 498 section 374 (unofficially "CS 374") covers fundamental tools and techniques from theoretical computer science, including design and analysis of algorithms, formal languages and automata, computability, and complexity. Specific [49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249mtopics include regular and context-free languages, finite-state automata, recursive algorithms (including divide and conquer, backtracking, dynamic programming, and greedy algorithms), fundamental graph algorithms (including depth- and [49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249mbreadth-first search, topological sorting, minimum spanning trees, and shortest paths), undecidability, and NP-completeness. The course also has a strong focus on clear technical communication.[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Assignments/Exams** (https://courses.engr.illinois.edu/cs498374/fa2014/work.html)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Lecture Notes/Labs** (https://courses.engr.illinois.edu/cs498374/fa2014/lectures.html)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Lecture videos** (http://recordings.engineering.illinois.edu/ess/portal/section/115f3def-7371-4e98-b72f-6efe53771b2a)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1mCS 3110[0m[38;5;12m (http://www.cs.cornell.edu/courses/CS3110/2014fa/) [39m[38;5;14m[1mData Structures and Functional Programming[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mCornell University[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- CS 3110 (formerly CS 312) is the third programming course in the Computer Science curriculum, following CS 1110/1112 and CS 2110. The goal of the course is to help students become excellent programmers and software designers who can d[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249mesign and implement software that is elegant, efficient, and correct, and whose code can be maintained and reused.[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Syllabus** (http://www.cs.cornell.edu/courses/CS3110/2014fa/course_info.php)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Lectures** (http://www.cs.cornell.edu/courses/CS3110/2014fa/lecture_notes.php)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Assignments** (http://www.cs.cornell.edu/courses/CS3110/2014fa/index.php)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1mCS 3220[0m[38;5;12m (http://www.cs.cornell.edu/~bindel/class/cs3220-s12/) [39m[38;5;14m[1mIntroduction to Scientific Computing[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mCornell University[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- In this one-semester survey course, we introduce numerical methods for solving linear and nonlinear equations, interpolating data, computing integrals, and solving differential equations, and we describe how to use these tools wisely [49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m(we hope!) when solving scientific problems.[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Syllabus** (http://www.cs.cornell.edu/~bindel/class/cs3220-s12/syllabus.html)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Lectures** (http://www.cs.cornell.edu/~bindel/class/cs3220-s12/lectures.html)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Assignments** (http://www.cs.cornell.edu/~bindel/class/cs3220-s12/assignments.html)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1mCS 4300[0m[38;5;12m (http://www.cs.cornell.edu/courses/CS4300/2013fa/) [39m[38;5;14m[1mInformation Retrieval[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mCornell University[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- Studies the methods used to search for and discover information in large-scale systems. The emphasis is on information retrieval applied to textual materials, but there is some discussion of other formats.The course includes technique[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249ms for searching, browsing, and filtering information and the use of classification systems and thesauruses. The techniques are illustrated with examples from web searching and digital libraries.[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Syllabus** (http://www.cs.cornell.edu/courses/CS4300/2013fa/lectures/introduction.pdf)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Lectures** (http://www.cs.cornell.edu/courses/CS4300/2013fa/lectures.htm)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Assignments** (http://www.cs.cornell.edu/courses/CS4300/2013fa/lectures.htm)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1mCS 4810[0m[38;5;12m (https://www.dsteurer.org/toc13/) [39m[38;5;14m[1mIntroduction to Theory of Computing[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mCornell University[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- This undergraduate course provides a broad introduction to the mathematical foundations of computer science. We will examine basic computational models, especially Turing machines. The goal is to understand what problems can or canno[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249mt be solved in these models.[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Syllabus** (https://www.dsteurer.org/toc13/syllabus/)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Lectures** (https://www.dsteurer.org/toc13/lectures/)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Assignments** (https://www.dsteurer.org/toc13/homework/)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1mCS 6810[0m[38;5;12m (https://complexity16.dsteurer.org/) [39m[38;5;14m[1mTheory of Computing[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mCornell University[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- This graduate course gives a broad introduction to complexity theory, including classical results and recent developments. Complexity theory aims to understand the power of efficient computation (when computational resources like tim[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249me and space are limited). Many compelling conceptual questions arise in this context. Most of these questions are (surprisingly?) difficult and far from being resolved. Nevertheless, a lot of progress has been made toward understanding [49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249mthem (and also why they are difficult). We will learn about these advances in this course. A theme will be combinatorial constructions with random-like properties, e.g., expander graphs and error-correcting codes. Some examples:[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m - Is finding a solution inherently more difficult than verifying it?[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m - Do more computational resources mean more computing power?[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m - Is it easier to find approximate solutions than exact ones?[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m - Are randomized algorithms more powerful than deterministic ones?[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m - Is it easier to solve problems in the average case than in the worst case?[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m - Are quantum computers more powerful than classical ones?[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Syllabus** (https://complexity16.dsteurer.org/syllabus/)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Lectures** (https://complexity16.dsteurer.org/lectures/)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Assignments** (https://complexity16.dsteurer.org/homework/)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1mCSCE 3193[0m[38;5;12m (http://www.csce.uark.edu/~sgauch/3193/S11/index.html) [39m[38;5;14m[1mProgramming Paradigms[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mUniversity of Arkansas (Fayetteville)[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- Programming in different paradigms with emphasis on object oriented programming, network programming and functional programming. Survey of programming languages, event driven programming, concurrency, software validation.[49m[39m
|
||
[48;5;235m[38;5;249m- **Syllabus** (http://www.csce.uark.edu/~sgauch/3193/S11/syllabus.html)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Notes** (http://www.csce.uark.edu/~sgauch/3193/S11/notes/index.html)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Assignments** (http://www.csce.uark.edu/~sgauch/3193/S11/hw/index.html)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Practice Exams** (http://www.csce.uark.edu/~sgauch/3193/S11/exams/index.html)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1m6.045[0m[38;5;12m (https://stellar.mit.edu/S/course/6/sp15/6.045/index.html) [39m[38;5;14m[1mGreat Ideas in Theoretical Computer Science[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mMIT[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- This course provides a challenging introduction to some of the central ideas of theoretical computer science. Beginning in antiquity, the course will progress through finite automata, circuits and decision trees, Turing machines and c[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249momputability, efficient algorithms and reducibility, the P versus NP problem, NP-completeness, the power of randomness, cryptography and one-way functions, computational learning theory, and quantum computing. It examines the classes of[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m problems that can and cannot be solved by various kinds of machines. It tries to explain the key differences between computational models that affect their power.[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Syllabus** (https://stellar.mit.edu/S/course/6/sp15/6.045/courseMaterial/topics/topic1/syllabus/syllabus2015/syllabus2015.pdf)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Lecture Notes** (https://stellar.mit.edu/S/course/6/sp15/6.045/materials.html)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Lecture Videos** (http://stellar.mit.edu/S/course/6/sp15/6.045/special/videos/index.html)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
|
||
[38;5;238m――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――[39m
|
||
|
||
[38;2;255;187;0m[4mIntroduction to CS[0m
|
||
|
||
[38;5;12m- [39m[38;5;14m[1mCS 10[0m[38;5;12m (https://inst.eecs.berkeley.edu/~cs10/fa14/) [39m[38;5;14m[1mThe Beauty and Joy of Computing[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mUC Berkeley[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- CS10 is UCB's introductory computer science class, taught using the beginners' drag-and-drop language. Students learn about history, social implications, great principles, and future of computing. They also learn the joy of programmin[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249mg a computer using a friendly, graphical language, and will complete a substantial team programming project related to their interests.[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Snap*!*** (http://snap.berkeley.edu) (based on Scratch by MIT).[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Curriculum** (http://bjc.berkeley.edu)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1mCS 50[0m[38;5;12m (https://cs50.harvard.edu/) [39m[38;5;14m[1mIntroduction to Computer Science[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mHarvard University[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- CS50x is Harvard College's introduction to the intellectual enterprises of computer science and the art of programming for majors and non-majors alike, with or without prior programming experience. An entry-level course taught by Davi[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249md J. Malan.[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Lectures** (http://cs50.tv/2017/fall/#about,lectures)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Problem Sets** (http://cs50.tv/2017/fall/#about,psets)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- The course can also be taken from **edX** (https://www.edx.org/course/introduction-computer-science-harvardx-cs50x).[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- The course's OpenCourseware resides **here** (http://cs50.tv)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1mCS 61A[0m[38;5;12m (http://cs61a.org/) [39m[38;5;14m[1mStructure and Interpretation of Computer Programs [0m[38;5;12mPython[39m[38;5;14m[1m [0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mUC Berkeley[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- In CS 61A, we are interested in teaching you about programming, not about how to use one particular programming language. We consider a series of techniques for controlling program complexity, such as functional programming, data abst[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249mraction, and object-oriented programming. Mastery of a particular programming language is a very useful side effect of studying these general techniques. However, our hope is that once you have learned the essence of programming, you wi[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249mll find that picking up a new programming language is but a few days' work.[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Lecture Videos** (http://www.infocobuild.com/education/audio-video-courses/computer-science/cs61a-spring2014-berkeley.html)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Lecture Resources by Type** (http://cs61a.org/by_type.html)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Lecture Resources by Topic** (http://cs61a.org/by_topic.html)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Additional Resources** (http://cs61a.org/articles/resources.html)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Practice Problems** (http://cs61a.org/problems/)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Extra Lectures** (http://cs61a.org/extra.html)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1mCS 61AS[0m[38;5;12m (http://berkeley-cs61as.github.io/) [39m[38;5;14m[1mStructure & Interpretation of Computer Programs [0m[38;5;12mRacket[39m[38;5;14m[1m [0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mUC Berkeley[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- A self-paced version of the CS61 Course but in Racket / Scheme. 61AS is a great introductory course that will ease you into all the amazing concepts that future CS courses will cover, so remember to keep an open mind, have fun, and al[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249mways respect the data abstraction[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Lecture Videos** (https://www.youtube.com/course?category=University%2FEngineering%2FComputer%2520Science%2FProgramming%2520Languages&list=EC6D76F0C99A731667)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Assignments and Notes** (http://berkeley-cs61as.github.io/textbook.html)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1mCS 101[0m[38;5;12m (http://online.stanford.edu/course/computer-science-101-self-paced) [39m[38;5;14m[1mComputer Science 101[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mStanford University[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- CS101 teaches the essential ideas of Computer Science for a zero-prior-experience audience. Participants play and experiment with short bits of "computer code" to bring to life to the power and limitations of computers.[49m[39m
|
||
[48;5;235m[38;5;249m- Lectures videos will available for free after registration.[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1mCS 106A[0m[38;5;12m (https://see.stanford.edu/Course/CS106A) [39m[38;5;14m[1mProgramming Methodology[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mStanford University[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- This course is the largest of the introductory programming courses and is one of the largest courses at Stanford. Topics focus on the introduction to the engineering of computer applications emphasizing modern software engineering pri[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249mnciples: object-oriented design, decomposition, encapsulation, abstraction, and testing. Programming Methodology teaches the widely-used Java programming language along with good software engineering principles.[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Lecture Videos** (https://see.stanford.edu/Course/CS106A)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Assignments** (https://see.stanford.edu/Course/CS106A)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **All materials in a zip file** (http://see.stanford.edu/materials/icspmcs106a/ProgrammingMethodologyAllMaterials.zip)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1mCS 106B[0m[38;5;12m (https://see.stanford.edu/Course/CS106B) [39m[38;5;14m[1mProgramming Abstractions[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mStanford University[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- This course is the natural successor to Programming Methodology and covers such advanced programming topics as recursion, algorithmic analysis, and data abstraction using the C++ programming language, which is similar to both C and Ja[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249mva.[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Lectures** (https://see.stanford.edu/Course/CS106B)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Assignments** (https://see.stanford.edu/Course/CS106B)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **All materials in a zip file** (http://see.stanford.edu/materials/icspacs106b/ProgrammingAbstractionsAllMaterials.zip)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1mCS 107[0m[38;5;12m (https://see.stanford.edu/Course/CS107) [39m[38;5;14m[1mProgramming Paradigms[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mStanford University[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- Topics: Advanced memory management features of C and C++; the differences between imperative and object-oriented paradigms. The functional paradigm (using LISP) and concurrent programming (using C and C++)[49m[39m
|
||
[48;5;235m[38;5;249m- **Lectures** (https://see.stanford.edu/Course/CS107)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Assignments** (https://see.stanford.edu/Course/CS107)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1mCS 109[0m[38;5;12m (http://otfried.org/courses/cs109/index.html) [39m[38;5;14m[1mProgramming Practice Using Scala[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mKAIST[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- This course introduces basic concepts of programming and computer science, such as dynamic and static typing, dynamic memory allocation, objects and methods, binary representation of numbers, using an editor and compiler from the comm[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249mand line, running programs with arguments from the command line, using libraries, and the use of basic data structures such as arrays, lists, sets, and maps. We will use Scala for this course.[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Lectures** (http://otfried.org/courses/cs109/index.html)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Assignments** (http://otfried.org/courses/cs109/index.html)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1mCS 1109[0m[38;5;12m (http://www.cs.cornell.edu/courses/CS1109/2013su/) [39m[38;5;14m[1mFundamental Programming Concepts[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mCornell University[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- This course provides an introduction to programming and problem solving using a high-level programming language. It is designed to increase your knowledge level to comfortably continue to courses CS111x. Our focus will be on generic p[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249mrogramming concepts: variables, expressions, control structures, loops, arrays, functions, pseudocode and algorithms. You will learn how to analyze problems and convert your ideas into solutions interpretable by computers. We will use M[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249mATLAB; because it provides a productive environment, and it is widely used by all engineering communities.[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Syllabus** (http://www.cs.cornell.edu/courses/CS1109/2013su/syllabus.html)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Lectures** (http://www.cs.cornell.edu/courses/CS1109/2013su/calendar.html)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Assignments** (http://www.cs.cornell.edu/courses/CS1109/2013su/calendar.html)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1mCS 1110[0m[38;5;12m (http://www.cs.cornell.edu/courses/CS1110/2014fa/) [39m[38;5;14m[1mIntroduction to Computing Using Python[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mCornell University[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- Programming and problem solving using Python. Emphasizes principles of software development, style, and testing. Topics include procedures and functions, iteration, recursion, arrays and vectors, strings, an operational model of proce[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249mdure and function calls, algorithms, exceptions, object-oriented programming, and GUIs (graphical user interfaces). Weekly labs provide guided practice on the computer, with staff present to help. Assignments use graphics and GUIs to he[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249mlp develop fluency and understanding.[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Syllabus** (http://www.cs.cornell.edu/courses/CS1110/2014fa/about/grading.php)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Lectures** (http://www.cs.cornell.edu/courses/CS1110/2014fa/lectures/index.php)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Assignments** (http://www.cs.cornell.edu/courses/CS1110/2014fa/assignments/index.php)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1mCS 1112[0m[38;5;12m (http://www.cs.cornell.edu/courses/CS1112/2014fa/) [39m[38;5;14m[1mIntroduction to Computing Using Matlab[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mCornell University[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- Programming and problem solving using MATLAB. Emphasizes the systematic development of algorithms and programs. Topics include iteration, functions, arrays and vectors, strings, recursion, algorithms, object-oriented programming, and [49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249mMATLAB graphics. Assignments are designed to build an appreciation for complexity, dimension, fuzzy data, inexact arithmetic, randomness, simulation, and the role of approximation. NO programming experience is necessary; some knowledge [49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249mof Calculus is required.[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Syllabus** (http://www.cs.cornell.edu/courses/CS1112/2014fa/syllabus.html)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Lectures** (http://www.cs.cornell.edu/courses/CS1112/2014fa/syllabus.html#schedule)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Assignments** (http://www.cs.cornell.edu/courses/CS1112/2014fa/Exercises/exercises.html)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Projects** (http://www.cs.cornell.edu/courses/CS1112/2014fa/Projects/projects.html)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1mCS 1115[0m[38;5;12m (http://www.cs.cornell.edu/courses/CS1115/2013fa/) [39m[38;5;14m[1mIntroduction to Computational Science and Engineering Using Matlab Graphical User Interfaces[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mCornell University[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- Programming and problem solving using MATLAB. Emphasizes the systematic development of algorithms and programs. Topics include iteration, functions, arrays and vectors, strings, recursion, algorithms, object-oriented programming, and [49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249mMATLAB graphics. Assignments are designed to build an appreciation for complexity, dimension, fuzzy data, inexact arithmetic, randomness, simulation, and the role of approximation. NO programming experience is necessary; some knowledge [49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249mof Calculus is required.[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Syllabus** (http://www.cs.cornell.edu/courses/CS1115/2013fa/syllabus.htm)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Lectures** (http://www.cs.cornell.edu/courses/CS1115/2013fa/lecture_slides.htm)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Projects** (http://www.cs.cornell.edu/courses/CS1115/2013fa/projects_and_exams.htm)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1mCS 1130[0m[38;5;12m (http://www.cs.cornell.edu/courses/CS1130/2014sp/) [39m[38;5;14m[1mTransition to OO Programming[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mCornell University[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- Introduction to object-oriented concepts using Java. Assumes programming knowledge in a language like MATLAB, C, C++, or Fortran. Students who have learned Java but were not exposed heavily to OO programming are welcome.[49m[39m
|
||
[48;5;235m[38;5;249m- **Syllabus** (http://www.cs.cornell.edu/courses/CS1130/2014sp/about/overview.php)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Lectures** (http://www.cs.cornell.edu/courses/CS1130/2014sp/web-lectures/index.php)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Assignments** (http://www.cs.cornell.edu/courses/CS1130/2014sp/assignments/index.php)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1mCS 1133[0m[38;5;12m (http://www.cs.cornell.edu/courses/CS1133/2013fa/) [39m[38;5;14m[1mTransition to Python[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mCornell University[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- Introduction to the Python programming language. Covers the basic programming constructs of Python, including assignment, conditionals, iteration, functions, object-oriented design, arrays, and vectorized computation. Assumes programm[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249ming knowledge in a language like Java, Matlab, C, C++, or Fortran.[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Syllabus** (http://www.cs.cornell.edu/courses/CS1133/2013fa/about/overview.php)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Lectures** (http://www.cs.cornell.edu/courses/CS1133/2013fa/lectures/index.php)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Assignments** (http://www.cs.cornell.edu/courses/CS1133/2013fa/assignments/index.php)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1mCS 1410-2[0m[38;5;12m (http://www.eng.utah.edu/~cs1410-20/) and [39m[38;5;14m[1mCS2420-20[0m[38;5;12m (http://www.eng.utah.edu/~cs2420-20/) [39m[38;5;14m[1mComputer Science I and II for Hackers[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mUniversity of Utah[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- An intro course in the spirit of SICP designed by **Professor Matthew Flatt** (http://www.cs.utah.edu/~mflatt/) (one of the lead designers of Racket and author of HtDP). Mostly Racket and C, and a bit of Java, with explanations on how[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m high level functional programming concepts relate to the design of OOP programs. Do this one before SICP if SICP is a bit too much...[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Lectures and Assignments 1** (http://www.eng.utah.edu/~cs1410-20/schedule.html)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Lectures and Assignments 2** (http://www.eng.utah.edu/~cs2420-20/schedule.html)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Textbook** (http://htdp.org/2003-09-26/Book/curriculum.html)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Racket Language** (http://racket-lang.org/)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1mCS 2110[0m[38;5;12m (http://www.cs.cornell.edu/courses/CS2110/2014fa/index.html) [39m[38;5;14m[1mObject-Oriented Programming and Data Structures[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mCornell University[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- CS 2110 is an intermediate-level programming course and an introduction to computer science. Topics include program design and development, debugging and testing, object-oriented programming, proofs of correctness, complexity analysis[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m, recursion, commonly used data structures, graph algorithms, and abstract data types. Java is the principal programming language. The course syllabus can easily be extracted by looking at the link to **lectures** (http://www.cs.cornell[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m.edu/courses/CS2110/2014fa/lecturenotes.html).[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Syllabus** (http://www.cs.cornell.edu/courses/CS2110/2014fa/lecturenotes.html)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Lectures** (http://www.cs.cornell.edu/courses/CS2110/2014fa/lecturenotes.html)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Assignments** (http://www.cs.cornell.edu/courses/CS2110/2014fa/assignments.html)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1mCS 4302[0m[38;5;12m (http://courses2.cit.cornell.edu/info4302_2012fa/) [39m[38;5;14m[1mWeb Information Systems[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mCornell University[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- This course will introduce you to technologies for building data-centric information systems on the World Wide Web, show the practical applications of such systems, and discuss their design and their social and policy context by exami[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249mning cross-cutting issues such as citizen science, data journalism and open government. Course work involves lectures and readings as well as weekly homework assignments, and a semester-long project in which the students demonstrate the[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249mir expertise in building data-centric Web information systems.[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Syllabus** (http://courses2.cit.cornell.edu/info4302_2012fa/course_information.php)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Lectures** (http://courses2.cit.cornell.edu/info4302_2012fa/lectures.php)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Assignments** (http://courses2.cit.cornell.edu/info4302_2012fa/homeworks.php)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1mCSCE 2004[0m[38;5;12m (http://www.csce.uark.edu/~sgauch/2004/S14/index.html) [39m[38;5;14m[1mProgramming Foundations I[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mUniversity of Arkansas (Fayetteville)[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- Introductory course for students majoring in computer science or computer engineering. Software development process: problem specification, program design, implementation, testing and documentation. Programming topics: data representa[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249mtion, conditional and iterative statements, functions, arrays, strings, file I/O, and classes. Using C++ in a UNIX environment.[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Syllabus** (http://www.csce.uark.edu/~sgauch/2004/S14/syllabus.html)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Notes** (http://www.csce.uark.edu/~sgauch/2004/S14/notes/index.html)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Assignments** (http://www.csce.uark.edu/~sgauch/2004/S14/hw/index.html)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Practice Exams** (http://www.csce.uark.edu/~sgauch/2004/S14/index.html)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1mCSCI E-1[0m[38;5;12m (http://cse1.net/lectures) [39m[38;5;14m[1mUnderstanding Computers and the Internet[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mHarvard University Extension College[0m[38;5;12m [39m
|
||
|
||
[48;5;235m[38;5;249m- This course is all about understanding: understanding what's going on inside your computer when you flip on the switch, why tech support has you constantly rebooting your computer, how everything you do on the Internet can be watched [49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249mby others, and how your computer can become infected with a worm just by being turned on. Designed for students who use computers and the Internet every day but don't fully understand how it all works, this course fills in the gaps. Thr[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249mough lectures on hardware, software, the Internet, multimedia, security, privacy, website development, programming, and more, this course "takes the hood off" of computers and the Internet so that students understand how it all works an[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249md why. Through discussions of current events, students are exposed also to the latest technologies.[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Lecture Videos** (http://cse1.net/lectures)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Syllabus** (http://cse1.net/syllabus)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Notes / Recaps** (http://cse1.net/recaps)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Assignments** (http://cse1.net/psets)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1mCS-for-all[0m[38;5;12m (http://www.cs.hmc.edu/csforall/) [39m[38;5;14m[1mCS for All[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mHarvey Mudd College[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- This book (and course) takes a unique approach to “Intro CS.” In a nutshell, our objective is to provide an introduction to computer science as an intellectually rich and vibrant field rather than focusing exclusively on computer prog[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249mramming. While programming is certainly an important and pervasive element of our approach, we emphasize concepts and problem-solving over syntax and programming language features.[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Lectures and Other resources** (https://www.cs.hmc.edu/twiki/bin/view/ModularCS1)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1m6.001[0m[38;5;12m (http://ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-001-structure-and-interpretation-of-computer-programs-spring-2005/index.htm) [39m[38;5;14m[1mStructure and Interpretation of Computer Programs[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mMIT[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- Teaches big-picture computing concepts using the Scheme programming language. Students will implement programs in a variety of different programming paradigms (functional, object-oriented, logical). Heavy emphasis on function composit[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249mion, code-as-data, control abstraction with continuations, and syntactic abstraction through macros. An excellent course if you are looking to build a mental framework on which to hang your programming knowledge.[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Lectures** (http://ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-001-structure-and-interpretation-of-computer-programs-spring-2005/video-lectures)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Textbook** (http://mitpress.mit.edu/sicp/full-text/book/book.html) (**epub** (https://github.com/sarabander/sicp), **pdf** (https://github.com/sarabander/sicp-pdf))[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **IDE** (http://www.neilvandyke.org/racket-sicp/)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1m6.005[0m[38;5;12m (http://web.mit.edu/6.005/www/fa16/) [39m[38;5;14m[1mSoftware Construction, Fall 2016[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mMIT[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- This course introduces fundamental principles and techniques of software development. Students learn how to write software that is safe from bugs, easy to understand, and ready for change. Topics include specifications and invariants;[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m testing, test-case generation, and coverage; state machines; abstract data types and representation independence; design patterns for object-oriented programming; concurrent programming, including message passing and shared concurrency[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m, and defending against races and deadlock; and functional programming with immutable data and higher-order functions.[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Lectures Notes/Assignments** (http://web.mit.edu/6.005/www/fa16/)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
|
||
|
||
[38;5;238m――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――[39m
|
||
|
||
[38;2;255;187;0m[4mMachine Learning[0m
|
||
|
||
[38;5;12m- [39m[38;5;14m[1mDEEPNLP[0m[38;5;12m (https://github.com/oxford-cs-deepnlp-2017/) [39m[38;5;14m[1mDeep Learning for Natural Language Processing[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mUniversity of Oxford[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- This is an applied course focussing on recent advances in analysing and generating speech and text using recurrent neural networks. We introduce the mathematical definitions of the relevant machine learning models and derive their ass[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249mociated optimisation algorithms. The course covers a range of applications of neural networks in NLP including analysing latent dimensions in text, transcribing speech to text, translating between languages, and answering questions. Thi[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249ms course is organised by Phil Blunsom and delivered in partnership with the **DeepMind Natural Language Research Group**.[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Lectures** (https://github.com/oxford-cs-deepnlp-2017/lectures)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- Assignments are available on the organisation page titled as "practicals"[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1mCS20si[0m[38;5;12m (http://web.stanford.edu/class/cs20si/index.html) [39m[38;5;14m[1mTensorflow for Deep Learning Research[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mStanford University[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- This course will cover the fundamentals and contemporary usage of the Tensorflow library for deep learning research. We aim to help students understand the graphical computational model of Tensorflow, explore the functions it has to o[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249mffer, and learn how to build and structure models best suited for a deep learning project. Through the course, students will use Tensorflow to build models of different complexity, from simple linear/logistic regression to convolutional[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m neural network and recurrent neural networks with LSTM to solve tasks such as word embeddings, translation, optical character recognition. Students will also learn best practices to structure a model and manage research experiments.[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Assignments** (https://github.com/chiphuyen/tf-stanford-tutorials) available on Github.[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1mCOMS 4771[0m[38;5;12m (http://www.cs.columbia.edu/~jebara/4771/index.html) [39m[38;5;14m[1mMachine Learning[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mColumbia University[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- Course taught by **Tony Jebara** (http://www.cs.columbia.edu/~jebara/resume.html) introduces topics in Machine Learning for both generative and discriminative estimation. Material will include least squares methods, Gaussian distribut[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249mions, linear classification, linear regression, maximum likelihood, exponential family distributions, Bayesian networks, Bayesian inference, mixture models, the EM algorithm, graphical models, hidden Markov models, support vector machin[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249mes, and kernel methods.[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Lectures and Assignments** (http://www.cs.columbia.edu/~jebara/4771/handouts.html)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1mCS 109[0m[38;5;12m (http://cs109.github.io/2015/) [39m[38;5;14m[1mData Science[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mHarvard University[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- Learning from data in order to gain useful predictions and insights. This course introduces methods for five key facets of an investigation: data wrangling, cleaning, and sampling to get a suitable data set; data management to be able[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m to access big data quickly and reliably; exploratory data analysis to generate hypotheses and intuition; prediction based on statistical methods such as regression and classification; and communication of results through visualization,[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m stories, and interpretable summaries.[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Lectures** (http://cm.dce.harvard.edu/2015/01/14328/publicationListing.shtml)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Slides** (http://cs109.github.io/2014/pages/schedule.html)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Labs and Assignments** (http://cs109.github.io/2014/pages/homework.html)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **2014 Lectures** (http://cs109.github.io/2014/)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **2013 Lectures** (http://cm.dce.harvard.edu/2014/01/14328/publicationListing.shtml) *(slightly better)*[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1mCS 156[0m[38;5;12m (https://work.caltech.edu/telecourse.html) [39m[38;5;14m[1mLearning from Data[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mCaltech[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- This is an introductory course in machine learning (ML) that covers the basic theory, algorithms, and applications. ML is a key technology in Big Data, and in many financial, medical, commercial, and scientific applications. It enable[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249ms computational systems to adaptively improve their performance with experience accumulated from the observed data. ML has become one of the hottest fields of study today, taken up by undergraduate and graduate students from 15 differen[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249mt majors at Caltech. This course balances theory and practice, and covers the mathematical as well as the heuristic aspects. [49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Lectures** (https://work.caltech.edu/lectures.html)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Homework** (https://work.caltech.edu/homeworks.html)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Textbook** (https://work.caltech.edu/textbook.html)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1mCS 189[0m[38;5;12m (http://www.eecs189.org/) [39m[38;5;14m[1mIntroduction To Machine Learning[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mUC Berkeley[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- Introductory ML course covering a wide range of topics: ranging from least squares to convolutional neural networks[49m[39m
|
||
[48;5;235m[38;5;249m- **Notes** (http://www.eecs189.org/)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Homework** (http://www.eecs189.org/)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1mCS 224d[0m[38;5;12m (http://cs224d.stanford.edu/) [39m[38;5;14m[1mDeep Learning for Natural Language Processing[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mStanford University[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- Natural language processing (NLP) is one of the most important technologies of the information age. Understanding complex language utterances is also a crucial part of artificial intelligence. Applications of NLP are everywhere becaus[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249me people communicate most everything in language: web search, advertisement, emails, customer service, language translation, radiology reports, etc. There are a large variety of underlying tasks and machine learning models powering NLP [49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249mapplications. Recently, deep learning approaches have obtained very high performance across many different NLP tasks. These models can often be trained with a single end-to-end model and do not require traditional, task-specific feature[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m engineering. In this spring quarter course students will learn to implement, train, debug, visualize and invent their own neural network models. The course provides a deep excursion into cutting-edge research in deep learning applied t[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249mo NLP.[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Syllabus** (http://cs224d.stanford.edu/syllabus.html)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Lectures and Assignments** (http://cs224d.stanford.edu/syllabus.html)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1mCS 229r[0m[38;5;12m (http://people.seas.harvard.edu/~minilek/cs229r/fall15/index.html) [39m[38;5;14m[1mAlgorithms for Big Data[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mHarvard University[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- Big data is data so large that it does not fit in the main memory of a single machine, and the need to process big data by efficient algorithms arises in Internet search, network traffic monitoring, machine learning, scientific comput[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249ming, signal processing, and several other areas. This course will cover mathematically rigorous models for developing such algorithms, as well as some provable limitations of algorithms operating in those models.[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Lectures** (http://people.seas.harvard.edu/~minilek/cs229r/fall15/lec.html) (**Youtube** (https://www.youtube.com/playlist?list=PL2SOU6wwxB0v1kQTpqpuu5kEJo2i-iUyf))[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Assignments** (http://people.seas.harvard.edu/~minilek/cs229r/fall15/hmwk.html)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1mCS 231n[0m[38;5;12m (http://cs231n.stanford.edu/) [39m[38;5;14m[1mConvolutional Neural Networks for Visual Recognition[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mStanford University[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- Computer Vision has become ubiquitous in our society, with applications in search, image understanding, apps, mapping, medicine, drones, and self-driving cars. This course is a deep dive into details of the deep learning architectures[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m with a focus on learning end-to-end models for these tasks, particularly image classification. During the 10-week course, students will learn to implement, train and debug their own neural networks and gain a detailed understanding of [49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249mcutting-edge research in computer vision.[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Lecture Notes** (http://cs231n.stanford.edu/syllabus.html)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Lecture Videos** (https://www.youtube.com/watch?v=NfnWJUyUJYU&list=PLkt2uSq6rBVctENoVBg1TpCC7OQi31AlC)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Github Page** (http://cs231n.github.io/)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1mCS 287[0m[38;5;12m (http://www.cs.berkeley.edu/~pabbeel/cs287-fa13/) [39m[38;5;14m[1mAdvanced Robotics[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mUC Berkeley[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- The course introduces the math and algorithms underneath state-of-the-art robotic systems. The majority of these techniques are heavily based on probabilistic reasoning and optimization---two areas with wide applicability in modern Ar[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249mtificial Intelligence. An intended side-effect of the course is to generally strengthen your expertise in these two areas.[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Lectures Notes** (http://www.cs.berkeley.edu/~pabbeel/cs287-fa13/#syllabus)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Assignments** (http://www.cs.berkeley.edu/~pabbeel/cs287-fa13/#assignments)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1mCS 395T[0m[38;5;12m (http://www.nr.com/CS395T/) [39m[38;5;14m[1mStatistical and Discrete Methods for Scientific Computing[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mUniversity of Texas[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- Practical course in applying modern statistical techniques to real data, particularly bioinformatic data and large data sets. The emphasis is on efficient computation and concise coding, mostly in MATLAB and C++.[49m[39m
|
||
[38;5;12mTopics[39m[38;5;12m [39m[38;5;12mcovered[39m[38;5;12m [39m[38;5;12minclude[39m[38;5;12m [39m[38;5;12mprobability[39m[38;5;12m [39m[38;5;12mtheory[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12mBayesian[39m[38;5;12m [39m[38;5;12minference;[39m[38;5;12m [39m[38;5;12munivariate[39m[38;5;12m [39m[38;5;12mdistributions;[39m[38;5;12m [39m[38;5;12mCentral[39m[38;5;12m [39m[38;5;12mLimit[39m[38;5;12m [39m[38;5;12mTheorem;[39m[38;5;12m [39m[38;5;12mgeneration[39m[38;5;12m [39m[38;5;12mof[39m[38;5;12m [39m[38;5;12mrandom[39m[38;5;12m [39m[38;5;12mdeviates;[39m[38;5;12m [39m[38;5;12mtail[39m[38;5;12m [39m[38;5;12m(p-value)[39m[38;5;12m [39m[38;5;12mtests;[39m[38;5;12m [39m[38;5;12mmultiple[39m[38;5;12m [39m[38;5;12mhypothesis[39m[38;5;12m [39m[38;5;12mcorrection;[39m[38;5;12m [39m[38;5;12mempirical[39m[38;5;12m [39m[38;5;12mdistributions;[39m[38;5;12m [39m[38;5;12mmodel[39m[38;5;12m [39m
|
||
[38;5;12mfitting;[39m[38;5;12m [39m[38;5;12merror[39m[38;5;12m [39m[38;5;12mestimation;[39m[38;5;12m [39m[38;5;12mcontingency[39m[38;5;12m [39m[38;5;12mtables;[39m[38;5;12m [39m[38;5;12mmultivariate[39m[38;5;12m [39m[38;5;12mnormal[39m[38;5;12m [39m[38;5;12mdistributions;[39m[38;5;12m [39m[38;5;12mphylogenetic[39m[38;5;12m [39m[38;5;12mclustering;[39m[38;5;12m [39m[38;5;12mGaussian[39m[38;5;12m [39m[38;5;12mmixture[39m[38;5;12m [39m[38;5;12mmodels;[39m[38;5;12m [39m[38;5;12mEM[39m[38;5;12m [39m[38;5;12mmethods;[39m[38;5;12m [39m[38;5;12mmaximum[39m[38;5;12m [39m[38;5;12mlikelihood[39m[38;5;12m [39m[38;5;12mestimation;[39m[38;5;12m [39m[38;5;12mMarkov[39m[38;5;12m [39m[38;5;12mChain[39m[38;5;12m [39m[38;5;12mMonte[39m[38;5;12m [39m[38;5;12mCarlo;[39m[38;5;12m [39m[38;5;12mprincipal[39m[38;5;12m [39m[38;5;12mcomponent[39m[38;5;12m [39m[38;5;12manalysis;[39m[38;5;12m [39m
|
||
[38;5;12mdynamic[39m[38;5;12m [39m[38;5;12mprogramming;[39m[38;5;12m [39m[38;5;12mhidden[39m[38;5;12m [39m[38;5;12mMarkov[39m[38;5;12m [39m[38;5;12mmodels;[39m[38;5;12m [39m[38;5;12mperformance[39m[38;5;12m [39m[38;5;12mmeasures[39m[38;5;12m [39m[38;5;12mfor[39m[38;5;12m [39m[38;5;12mclassifiers;[39m[38;5;12m [39m[38;5;12msupport[39m[38;5;12m [39m[38;5;12mvector[39m[38;5;12m [39m[38;5;12mmachines;[39m[38;5;12m [39m[38;5;12mWiener[39m[38;5;12m [39m[38;5;12mfiltering;[39m[38;5;12m [39m[38;5;12mwavelets;[39m[38;5;12m [39m[38;5;12mmultidimensional[39m[38;5;12m [39m[38;5;12minterpolation;[39m[38;5;12m [39m[38;5;12minformation[39m[38;5;12m [39m[38;5;12mtheory.[39m
|
||
[48;5;235m[38;5;249m- **Lectures and Assignments** (http://wpressutexas.net/forum/)[49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1mCS 4780[0m[38;5;12m (http://www.cs.cornell.edu/courses/CS4780/2014fa/) [39m[38;5;14m[1mMachine Learning[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mCornell University[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- This course will introduce you to technologies for building data-centric information systems on the World Wide Web, show the practical applications of such systems, and discuss their design and their social and policy context by exami[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249mning cross-cutting issues such as citizen science, data journalism and open government. Course work involves lectures and readings as well as weekly homework assignments, and a semester-long project in which the students demonstrate the[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249mir expertise in building data-centric Web information systems.[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Syllabus** (http://www.cs.cornell.edu/courses/CS4780/2014fa/)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Lectures** (http://www.cs.cornell.edu/courses/CS4780/2014fa/)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1mCS 4786[0m[38;5;12m (http://www.cs.cornell.edu/courses/CS4786/2015sp/index.htm) [39m[38;5;14m[1mMachine Learning for Data Science[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mCornell University[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- An introductory course in machine learning, with a focus on data modeling and related methods and learning algorithms for data sciences. Tentative topic list:[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m - Dimensionality reduction, such as principal component analysis (PCA) and the singular value decomposition (SVD), canonical correlation analysis (CCA), independent component analysis (ICA), compressed sensing, random projection, the in[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249mformation bottleneck. (We expect to cover some, but probably not all, of these topics).[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m - Clustering, such as k-means, Gaussian mixture models, the expectation-maximization (EM) algorithm, link-based clustering. (We do not expect to cover hierarchical or spectral clustering.).[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m - Probabilistic-modeling topics such as graphical models, latent-variable models, inference (e.g., belief propagation), parameter learning.[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m - Regression will be covered if time permits.[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Assignments** (http://www.cs.cornell.edu/courses/CS4786/2015sp/assignments.htm)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Lectures** (http://www.cs.cornell.edu/courses/CS4786/2015sp/lectures.htm)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1mCVX 101[0m[38;5;12m (https://class.stanford.edu/courses/Engineering/CVX101/Winter2014/info) [39m[38;5;14m[1mConvex Optimization[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mStanford University[0m[38;5;12m [39m
|
||
[38;5;12m [39m[38;5;12m-[39m[38;5;12m [39m[38;5;12mThe[39m[38;5;12m [39m[38;5;12mcourse[39m[38;5;12m [39m[38;5;12mconcentrates[39m[38;5;12m [39m[38;5;12mon[39m[38;5;12m [39m[38;5;12mrecognizing[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12msolving[39m[38;5;12m [39m[38;5;12mconvex[39m[38;5;12m [39m[38;5;12moptimization[39m[38;5;12m [39m[38;5;12mproblems[39m[38;5;12m [39m[38;5;12mthat[39m[38;5;12m [39m[38;5;12marise[39m[38;5;12m [39m[38;5;12min[39m[38;5;12m [39m[38;5;12mapplications.[39m[38;5;12m [39m[38;5;12mTopics[39m[38;5;12m [39m[38;5;12maddressed[39m[38;5;12m [39m[38;5;12minclude[39m[38;5;12m [39m[38;5;12mthe[39m[38;5;12m [39m[38;5;12mfollowing.[39m[38;5;12m [39m[38;5;12mConvex[39m[38;5;12m [39m[38;5;12msets,[39m[38;5;12m [39m[38;5;12mfunctions,[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12moptimization[39m[38;5;12m [39m[38;5;12mproblems.[39m[38;5;12m [39m[38;5;12mBasics[39m[38;5;12m [39m[38;5;12mof[39m[38;5;12m [39m[38;5;12mconvex[39m[38;5;12m [39m[38;5;12manalysis.[39m[38;5;12m [39m
|
||
[38;5;12mLeast-squares,[39m[38;5;12m [39m[38;5;12mlinear[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12mquadratic[39m[38;5;12m [39m[38;5;12mprograms,[39m[38;5;12m [39m[38;5;12msemidefinite[39m[38;5;12m [39m[38;5;12mprogramming,[39m[38;5;12m [39m[38;5;12mminimax,[39m[38;5;12m [39m[38;5;12mextremal[39m[38;5;12m [39m[38;5;12mvolume,[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12mother[39m[38;5;12m [39m[38;5;12mproblems.[39m[38;5;12m [39m[38;5;12mOptimality[39m[38;5;12m [39m[38;5;12mconditions,[39m[38;5;12m [39m[38;5;12mduality[39m[38;5;12m [39m[38;5;12mtheory,[39m[38;5;12m [39m[38;5;12mtheorems[39m[38;5;12m [39m[38;5;12mof[39m[38;5;12m [39m[38;5;12malternative,[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12mapplications.[39m[38;5;12m [39m[38;5;12mInterior-point[39m[38;5;12m [39m[38;5;12mmethods.[39m[38;5;12m [39m
|
||
[38;5;12mApplications[39m[38;5;12m [39m[38;5;12mto[39m[38;5;12m [39m[38;5;12msignal[39m[38;5;12m [39m[38;5;12mprocessing,[39m[38;5;12m [39m[38;5;12mstatistics[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12mmachine[39m[38;5;12m [39m[38;5;12mlearning,[39m[38;5;12m [39m[38;5;12mcontrol[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12mmechanical[39m[38;5;12m [39m[38;5;12mengineering,[39m[38;5;12m [39m[38;5;12mdigital[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12manalog[39m[38;5;12m [39m[38;5;12mcircuit[39m[38;5;12m [39m[38;5;12mdesign,[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12mfinance.[39m
|
||
[38;5;12m - [39m[38;5;14m[1mTextbook[0m[38;5;12m (http://web.stanford.edu/~boyd/cvxbook/)[39m
|
||
[38;5;12m - [39m[38;5;14m[1mLectures and Assignments[0m[38;5;12m (https://class.stanford.edu/courses/Engineering/CVX101/Winter2014/courseware/7206c57866504e83821d00b5d3f80793/)[39m
|
||
[38;5;12m- [39m[38;5;14m[1mDS-GA 1008[0m[38;5;12m (http://cilvr.cs.nyu.edu/doku.php?id=deeplearning2015:schedule) [39m[38;5;14m[1mDeep Learning[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mNew York University[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- This increasingly popular course is taught through the Data Science Center at NYU. Originally introduced by **Yann Lecun** (http://yann.lecun.com/), it is now led by **Zaid Harchaoui** (http://www.harchaoui.eu/), although Prof. Lecun [49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249mis rumored to still stop by from time to time. It covers the theory, technique, and tricks that are used to achieve very high accuracy for machine learning tasks in computer vision and natural language processing. The assignments are in[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m Lua and hosted on Kaggle.[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Course Page** (http://cilvr.cs.nyu.edu/doku.php?id=deeplearning2015:schedule)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Recorded Lectures** (http://techtalks.tv/deep-learning-nyu-spring-2015/)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1mEECS E6893 & EECS E6895[0m[38;5;12m (http://www.ee.columbia.edu/~cylin/course/bigdata/) [39m[38;5;14m[1mBig Data Analytics & Advanced Big Data Analytics[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mColumbia University[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- Students will gain knowledge on analyzing Big Data. It serves as an introductory course for graduate students who are expecting to face Big Data storage, processing, analysis, visualization, and application issues on both workplaces a[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249mnd research environments.[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- Taught by **Dr. Ching-Yung Lin** (http://researcher.watson.ibm.com/researcher/view.php?person=us-chingyung)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Course Site** (http://www.ee.columbia.edu/~cylin/course/bigdata/)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- Assignments - Assignments are present in the Course Slides[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1mEECS E6894[0m[38;5;12m (http://llcao.net/cu-deeplearning15/index.html) [39m[38;5;14m[1mDeep Learning for Computer Vision and Natural Language Processing[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mColumbia University[0m[38;5;12m [39m
|
||
[38;5;12m [39m[38;5;12m-[39m[38;5;12m [39m[38;5;12mThis[39m[38;5;12m [39m[38;5;12mgraduate[39m[38;5;12m [39m[38;5;12mlevel[39m[38;5;12m [39m[38;5;12mresearch[39m[38;5;12m [39m[38;5;12mclass[39m[38;5;12m [39m[38;5;12mfocuses[39m[38;5;12m [39m[38;5;12mon[39m[38;5;12m [39m[38;5;12mdeep[39m[38;5;12m [39m[38;5;12mlearning[39m[38;5;12m [39m[38;5;12mtechniques[39m[38;5;12m [39m[38;5;12mfor[39m[38;5;12m [39m[38;5;12mvision[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12mnatural[39m[38;5;12m [39m[38;5;12mlanguage[39m[38;5;12m [39m[38;5;12mprocessing[39m[38;5;12m [39m[38;5;12mproblems.[39m[38;5;12m [39m[38;5;12mIt[39m[38;5;12m [39m[38;5;12mgives[39m[38;5;12m [39m[38;5;12man[39m[38;5;12m [39m[38;5;12moverview[39m[38;5;12m [39m[38;5;12mof[39m[38;5;12m [39m[38;5;12mthe[39m[38;5;12m [39m[38;5;12mvarious[39m[38;5;12m [39m[38;5;12mdeep[39m[38;5;12m [39m[38;5;12mlearning[39m[38;5;12m [39m[38;5;12mmodels[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12mtechniques,[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12msurveys[39m[38;5;12m [39m[38;5;12mrecent[39m[38;5;12m [39m[38;5;12madvances[39m[38;5;12m [39m[38;5;12min[39m[38;5;12m [39m[38;5;12mthe[39m[38;5;12m [39m
|
||
[38;5;12mrelated[39m[38;5;12m [39m[38;5;12mfields.[39m[38;5;12m [39m[38;5;12mThis[39m[38;5;12m [39m[38;5;12mcourse[39m[38;5;12m [39m[38;5;12muses[39m[38;5;12m [39m[38;5;12mTheano[39m[38;5;12m [39m[38;5;12mas[39m[38;5;12m [39m[38;5;12mthe[39m[38;5;12m [39m[38;5;12mmain[39m[38;5;12m [39m[38;5;12mprogramming[39m[38;5;12m [39m[38;5;12mtool.[39m[38;5;12m [39m[38;5;12mGPU[39m[38;5;12m [39m[38;5;12mprogramming[39m[38;5;12m [39m[38;5;12mexperiences[39m[38;5;12m [39m[38;5;12mare[39m[38;5;12m [39m[38;5;12mpreferred[39m[38;5;12m [39m[38;5;12malthough[39m[38;5;12m [39m[38;5;12mnot[39m[38;5;12m [39m[38;5;12mrequired.[39m[38;5;12m [39m[38;5;12mFrequent[39m[38;5;12m [39m[38;5;12mpaper[39m[38;5;12m [39m[38;5;12mpresentations[39m[38;5;12m [39m[38;5;12mand[39m[38;5;12m [39m[38;5;12ma[39m[38;5;12m [39m[38;5;12mheavy[39m[38;5;12m [39m[38;5;12mprogramming[39m[38;5;12m [39m[38;5;12mworkload[39m[38;5;12m [39m[38;5;12mare[39m[38;5;12m [39m[38;5;12mexpected.[39m
|
||
[38;5;12m - [39m[38;5;14m[1mReadings[0m[38;5;12m (http://llcao.net/cu-deeplearning15/reading.html)[39m
|
||
[38;5;12m - [39m[38;5;14m[1mAssignments[0m[38;5;12m (http://llcao.net/cu-deeplearning15/programming_problem.html)[39m
|
||
[38;5;12m - [39m[38;5;14m[1mLecture Notes[0m[38;5;12m (http://llcao.net/cu-deeplearning15/index.html) [39m
|
||
[38;5;12m- [39m[38;5;14m[1mEE103[0m[38;5;12m (http://stanford.edu/class/ee103/) [39m[38;5;14m[1mIntroduction to Matrix Methods[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mStanford University[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- The course covers the basics of matrices and vectors, solving linear equations, least-squares methods, and many applications. It'll cover the mathematics, but the focus will be on using matrix methods in applications such as tomograph[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249my, image processing, data fitting, time series prediction, finance, and many others. EE103 is based on a book that **Stephen Boyd** (http://stanford.edu/~boyd/) and **Lieven Vandenberghe** (http://www.seas.ucla.edu/~vandenbe/) are curre[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249mntly writing. Students will use a new language called **Julia** (http://julialang.org/) to do computations with matrices and vectors.[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Lectures** (http://stanford.edu/class/ee103/lectures.html)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Book** (http://stanford.edu/class/ee103/mma.html)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Assignments** (http://stanford.edu/class/ee103/homework.html)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Code** (http://stanford.edu/class/ee103/julia_files)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1mFast.ai Introduction to Machine Learning for Coders[0m[38;5;12m (http://course.fast.ai/ml.html) [39m[48;2;30;30;40m[38;5;13m[3mFast.ai / University of San Francisco[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- There are around 24 hours of lessons, and you should plan to spend around 8 hours a week for 12 weeks to complete the material. The course is based on lessons recorded at the University of San Francisco for the Masters of Science in D[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249mata Science program. We assume that you have at least one year of coding experience, and either remember what you learned in high school math, or are prepared to do some independent study to refresh your knowledge. [49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Lecture Videos** (http://course.fast.ai/lessonsml1/lessonsml1.html)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Lecture Notes** (https://medium.com/@hiromi_suenaga/machine-learning-1-lesson-1-84a1dc2b5236)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Jupyter Notebooks** (https://github.com/fastai/fastai/tree/master/courses/ml1)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1mInfo 290[0m[38;5;12m (http://www.ischool.berkeley.edu/courses/i290-abdt) [39m[38;5;14m[1mAnalyzing Big Data with Twitter[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mUC Berkeley school of information[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- In this course, UC Berkeley professors and Twitter engineers provide lectures on the most cutting-edge algorithms and software tools for data analytics as applied to Twitter's data. Topics include applied natural language processing a[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249mlgorithms such as sentiment analysis, large scale anomaly detection, real-time search, information diffusion and outbreak detection, trend detection in social streams, recommendation algorithms, and advanced frameworks for distributed c[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249momputing.[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Lecture Videos** (http://www.ischool.berkeley.edu/newsandevents/audiovideo/webcast/21963)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Previous Years coursepage** (http://blogs.ischool.berkeley.edu/i290-abdt-s12/)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1mMachine Learning: 2014-2015[0m[38;5;12m (https://www.cs.ox.ac.uk/people/nando.defreitas/machinelearning/) [39m[48;2;30;30;40m[38;5;13m[3mUniversity of Oxford[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- The course focusses on neural networks and uses the **Torch** (https://github.com/torch/torch7/wiki/Cheatsheet) deep learning library (implemented in Lua) for exercises and assignments. Topics include: logistic regression, back-propag[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249mation, convolutional neural networks, max-margin learning, siamese networks, recurrent neural networks, LSTMs, hand-writing with recurrent neural networks, variational autoencoders and image generation and reinforcement learning[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Lectures and Assignments** (https://www.cs.ox.ac.uk/people/nando.defreitas/machinelearning/)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Source code** (https://github.com/oxford-cs-ml-2015/)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1mStatLearning[0m[38;5;12m (https://lagunita.stanford.edu/courses/HumanitiesandScience/StatLearning/Winter2015/about) [39m[38;5;14m[1mIntro to Statistical Learning[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mStanford University[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- This is an introductory-level course in supervised learning, with a focus on regression and classification methods. The syllabus includes: linear and polynomial regression, logistic regression and linear discriminant analysis; cross-v[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249malidation and the bootstrap, model selection and regularization methods (ridge and lasso); nonlinear models, splines and generalized additive models; tree-based methods, random forests and boosting; support-vector machines.[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- The lectures cover all the material in **An Introduction to Statistical Learning, with Applications in R** (http://www-bcf.usc.edu/~gareth/ISL/) which is a more approachable version of the **Elements of Statistical Learning** (http://[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249mstatweb.stanford.edu/~tibs/ElemStatLearn/) (or ESL) book.[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1m10-601[0m[38;5;12m (http://www.cs.cmu.edu/~ninamf/courses/601sp15/) [39m[38;5;14m[1mMachine Learning[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mCarnegie Mellon University[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- This course covers the theory and practical algorithms for machine learning from a variety of perspectives. It covers topics such as Bayesian networks, decision tree learning, Support Vector Machines, statistical learning methods, uns[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249mupervised learning and reinforcement learning. The course covers theoretical concepts such as inductive bias, the PAC learning framework, Bayesian learning methods, margin-based learning, and Occam's Razor. Short programming assignments[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m include hands-on experiments with various learning algorithms. This course is designed to give a graduate-level student a thorough grounding in the methodologies, technologies, mathematics and algorithms currently needed by people who [49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249mdo research in machine learning.[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- Taught by one of the leading experts on Machine Learning - **Tom Mitchell**[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Lectures** (http://www.cs.cmu.edu/~tom/10701_sp11/lectures.shtml)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Project Ideas and Datasets** (http://www.cs.cmu.edu/~tom/10701_sp11/proj.shtml)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1m10-708[0m[38;5;12m (http://www.cs.cmu.edu/~epxing/Class/10708-14/index.html) [39m[38;5;14m[1mProbabilistic Graphical Models[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mCarnegie Mellon University[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- Many of the problems in artificial intelligence, statistics, computer systems, computer vision, natural language processing, and computational biology, among many other fields, can be viewed as the search for a coherent global conclus[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249mion from local information. The probabilistic graphical models framework provides a unified view for this wide range of problems, enabling efficient inference, decision-making and learning in problems with a very large number of attribu[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249mtes and huge datasets. This graduate-level course will provide you with a strong foundation for both applying graphical models to complex problems and for addressing core research topics in graphical models.[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Lecture Videos** (http://www.cs.cmu.edu/~epxing/Class/10708-14/lecture.html)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Assignments** (http://www.cs.cmu.edu/~epxing/Class/10708-14/homework.html)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Lecture notes** (http://www.cs.cmu.edu/~epxing/Class/10708-14/lecture.html)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Readings** (http://www.cs.cmu.edu/~epxing/Class/10708-14/lecture.html)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1m11-785[0m[38;5;12m (http://deeplearning.cs.cmu.edu/) [39m[38;5;14m[1mDeep Learning[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mCarnegie Mellon University[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- The course presents the subject through a series of seminars and labs, which will explore it from its early beginnings, and work themselves to some of the state of the art. The seminars will cover the basics of deep learning and the u[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249mnderlying theory, as well as the breadth of application areas to which it has been applied, as well as the latest issues on learning from very large amounts of data. We will concentrate largely, although not entirely, on the connectioni[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249mst architectures that are most commonly associated with it. *Lectures* and *Reading Notes* are available on the page.[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1mCS246[0m[38;5;12m (http://web.stanford.edu/class/cs246/) [39m[38;5;14m[1mMining Massive Data Sets[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mStanford University[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- The course will discuss data mining and machine learning algorithms for analyzing very large amounts of data. The emphasis will be on Map Reduce as a tool for creating parallel algorithms that can process very large amounts of data.[49m[39m
|
||
[48;5;235m[38;5;249m- **Lecture Videos** (http://www.mmds.org/#mooc)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Assignments** (http://web.stanford.edu/class/cs246/handouts.html)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Lecture notes** (http://web.stanford.edu/class/cs246/handouts.html)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Readings** (http://www.mmds.org/#book)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1mCS276[0m[38;5;12m (http://web.stanford.edu/class/cs276/index.html) [39m[38;5;14m[1mInformation Retrieval and Web Search[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mStanford University[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- Basic and advanced techniques for text-based information systems: efficient text indexing; Boolean and vector space retrieval models; evaluation and interface issues; Web search including crawling, link-based algorithms, and Web metad[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249mata; text/Web clustering, classification; text mining.[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Lecture notes** (http://web.stanford.edu/class/cs276/index.html#syllabus)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Readings** (http://web.stanford.edu/class/cs276/index.html#books)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1mPractical_RL[0m[38;5;12m (https://github.com/yandexdataschool/Practical_RL) [39m[38;5;14m[1mReinforcement Learning in the Wild[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mYandex SDA[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- A course on reinforcement learning in the wild. Taught on-campus in HSE and Yandex SDA (russian) and maintained to be friendly to online students (both english and russian).[49m[39m
|
||
[48;5;235m[38;5;249m- **Syllabus** (https://github.com/yandexdataschool/Practical_RL#syllabus)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1mUvA DEEP LEARNING[0m[38;5;12m (http://uvadlc.github.io/) [39m[38;5;14m[1mUvA Deep Learning Course[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mUniversity of Amsterdam[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- This course is taught in the MSc program in Artificial Intelligence of the University of Amsterdam. In this course we study the theory of deep learning, namely of modern, multi-layered neural networks trained on big data. The course f[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249mocuses particularly on computer vision and language modelling, which are perhaps two of the most recognizable and impressive applications of the deep learning theory.[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Lecture Videos & Notes** (http://uvadlc.github.io/#lecture)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Practicals** (http://uvadlc.github.io/#practicals)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Readings** (http://uvadlc.github.io/#other-links)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
|
||
[38;5;238m――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――[39m
|
||
|
||
[38;2;255;187;0m[4mSecurity[0m
|
||
[38;5;12m- [39m[38;5;14m[1mCIS 4930 / CIS 5930[0m[38;5;12m (http://www.cs.fsu.edu/~redwood/OffensiveComputerSecurity/) [39m[38;5;14m[1mOffensive Computer Security[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mFlorida State University[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- Course taught by **W. Owen Redwood** (http://ww2.cs.fsu.edu/~redwood/) and **Xiuwen Liu** (http://www.cs.fsu.edu/~liux/). It covers a wide range of computer security topics, starting from Secure C Coding and Reverse Engineering to Pen[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249metration Testing, Exploitation and Web Application Hacking, both from the defensive and the offensive point of view.[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Lectures and Videos** (http://www.cs.fsu.edu/~redwood/OffensiveComputerSecurity/lectures.html)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Assignments** (http://www.cs.fsu.edu/~redwood/OffensiveComputerSecurity/assignments.html)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1mCS 155[0m[38;5;12m (https://crypto.stanford.edu/cs155/) [39m[38;5;14m[1mComputer and Network Security[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mStanford[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- Principles of computer systems security. Attack techniques and how to defend against them. Topics include: network attacks and defenses, operating system holes, application security (web, email, databases), viruses, social engineering[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m attacks, privacy, and digital rights management. Course projects focus on building reliable code. Recommended: Basic Unix. Primarily intended for seniors and first-year graduate students.[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1mCS 161[0m[38;5;12m (http://www-inst.eecs.berkeley.edu/~cs161/sp15/) [39m[38;5;14m[1mComputer Security[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mUC Berkeley[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- Introduction to computer security. Cryptography, including encryption, authentication, hash functions, cryptographic protocols, and applications. Operating system security, access control. Network security, firewalls, viruses, and wor[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249mms. Software security, defensive programming, and language-based security. Case studies from real-world systems.[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1mCS 259[0m[38;5;12m (https://courseware.stanford.edu/pg/courses/331628/cs259-winter-2013) [39m[38;5;14m[1mSecurity Modeling and Analysis[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mStanford[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- The course will cover a variety of contemporary network protocols and other systems with security properties. The course goal is to give students hands-on experience in using automated tools and related techniques to analyze and evalu[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249mate security mechanisms. To understand security properties and requirements, we will look at several network protocols and their properties, including secrecy, authentication, key establishment, and fairness. In parallel, the course wil[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249ml look at several models and tools used in security analysis and examine their advantages and limitations. In addition to fully automated finite-state model checking techniques, we will also study other approaches, such as constraint so[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249mlving, process algebras, protocol logics, probabilistic model checking, game theory, and executable models based on logic programming.[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1mCS 261[0m[38;5;12m (http://www.icir.org/vern/cs261n-Sp14/) [39m[38;5;14m[1mInternet/Network Security[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mUC Berkeley[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- This class aims to provide a thorough grounding in network security suitable for those interested in conducting research in the area, as well as students more generally interested in either security or networking. We will also look at[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m broader issues relating to Internet security for which networking plays a role. Topics include: denial-of-service; capabilities; network intrusion detection; worms; forensics; scanning; traffic analysis / inferring activity; architect[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249mure; protocol issues; legality and ethics; web attacks; anonymity; honeypots; botnets; spam; the underground economy; research pitfalls. The course is taught with an emphasis on seminal papers rather than bleeding-edge for a given topic[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m.[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1mCS 5430[0m[38;5;12m (http://www.cs.cornell.edu/courses/CS5430/2013sp/) [39m[38;5;14m[1mSystem Security[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mCornell University[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- This course discusses security for computers and networked information systems. We focus on abstractions, principles, and defenses for implementing military as well as commercial-grade secure systems.[49m[39m
|
||
[48;5;235m[38;5;249m- **Syllabus** (http://www.cs.cornell.edu/courses/CS5430/2013sp/01.intro.html)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Lectures** (http://www.cs.cornell.edu/courses/CS5430/2013sp/02.outline.html)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Assignments** (http://www.cs.cornell.edu/courses/CS5430/2013sp/)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1mCSCI 4968[0m[38;5;12m (https://github.com/RPISEC/MBE) [39m[38;5;14m[1mModern Binary Exploitation[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mRensselaer Polytechnic Institute[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- This repository contains the materials as developed and used by **RPISEC** (http://rpis.ec) to[49m[39m
|
||
[38;5;12mteach Modern Binary Exploitation at [39m[38;5;14m[1mRensselaer Polytechnic Institute[0m[38;5;12m (http://rpi.edu) in[39m
|
||
[38;5;12mSpring 2015. This was a university course developed and run solely by students to teach[39m
|
||
[38;5;12mskills in vulnerability research, reverse engineering, and binary exploitation.[39m
|
||
[48;5;235m[38;5;249m- **Lectures Notes** (http://security.cs.rpi.edu/courses/binexp-spring2015/lectures/)[49m[39m
|
||
[48;5;235m[38;5;249m- **Labs** (https://github.com/RPISEC/MBE/tree/master/src)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Projects** (https://github.com/RPISEC/MBE/tree/master/src)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1mCSCI 4976[0m[38;5;12m (https://github.com/RPISEC/Malware) [39m[38;5;14m[1mMalware Analysis[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mRensselaer Polytechnic Institute[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- This repository contains the materials as developed and used by **RPISEC** (http://rpis.ec) to[49m[39m
|
||
[38;5;12mteach Malware Analysis at [39m[38;5;14m[1mRensselaer Polytechnic Institute[0m[38;5;12m (http://rpi.edu) in[39m
|
||
[38;5;12mFall 2015. This was a university course developed and run solely by students, primarily using the[39m
|
||
[38;5;12m- [39m[38;5;14m[1mEECS 588[0m[38;5;12m (https://www.eecs.umich.edu/courses/eecs588/) [39m[38;5;14m[1mComputer & Network Security[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mUniversity of Michigan[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- Taught by **J. Alex Halderman** (https://jhalderm.com/) who has analyzed the security of Electronic Voting Machines in the **US** (https://jhalderm.com/pub/papers/dcvoting-fc12.pdf) and **over** (https://jhalderm.com/pub/papers/ivotin[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249mg-ccs14.pdf) **seas** (https://jhalderm.com/pub/papers/evm-ccs10.pdf).[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- This intensive research seminar covers foundational work and current topics in computer systems security.[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Readings** (https://www.eecs.umich.edu/courses/eecs588/readings.html)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;14m[1mPractical Malware Analysis[0m[38;5;12m (http://www.amazon.com/Practical-Malware-Analysis-Dissecting-Malicious/dp/1593272901)[39m
|
||
[38;5;12mbook by Michael Sikorski and Andrew Honig, to teach skills in reverse engineering, malicious behaviour, malware,[39m
|
||
[38;5;12mand anti-analysis techniques.[39m
|
||
[48;5;235m[38;5;249m- **Lectures Notes** (https://github.com/RPISEC/Malware/tree/master/Lectures)[49m[39m
|
||
[48;5;235m[38;5;249m- **Labs** (https://github.com/RPISEC/Malware/tree/master/Labs)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Projects** (https://github.com/RPISEC/Malware/tree/master/Projects)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1m6.857[0m[38;5;12m (https://courses.csail.mit.edu/6.857/2015/) [39m[38;5;14m[1mComputer and Network Security[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mMIT[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- Emphasis on applied cryptography and may include: basic notion of systems security, cryptographic hash functions, symmetric cryptography (one-time pad, stream ciphers, block ciphers), cryptanalysis, secret-sharing, authentication code[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249ms, public-key cryptography (encryption, digital signatures), public-key attacks, web browser security, biometrics, electronic cash, viruses, electronic voting, Assignments include a group final project. Topics may vary year to year.[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m**Lecture Notes** (https://courses.csail.mit.edu/6.857/2015/handouts)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m**References** (https://courses.csail.mit.edu/6.857/2015/references)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1m6.858[0m[38;5;12m (http://css.csail.mit.edu/6.858/2014/) [39m[38;5;14m[1mComputer Systems Security[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mMIT[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- Design and implementation of secure computer systems. Lectures cover threat models, attacks that compromise security, and techniques for achieving security, based on recent research papers. Topics include operating system (OS) securit[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249my, capabilities, information flow control, language security, network protocols, hardware security, and security in web applications.[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- Taught by **James Mickens** (http://research.microsoft.com/en-us/people/mickens/) and **Nickolai Zeldovich** (http://people.csail.mit.edu/nickolai/)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Video Lectures and Labs** (http://css.csail.mit.edu/6.858/2014/schedule.html)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Quizzes** (http://css.csail.mit.edu/6.858/2014/quiz.html)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Readings** (http://css.csail.mit.edu/6.858/2014/reference.html)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Final Projects** (http://css.csail.mit.edu/6.858/2014/projects.html)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1m18-636[0m[38;5;12m (https://courseware.stanford.edu/pg/courses/334553/18636-spring-2013) [39m[38;5;14m[1mBrowser Security[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mStanford[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- The Web continues to grow in popularity as platform for retail transactions, financial services, and rapidly evolving forms of communication. It is becoming an increasingly attractive target for attackers who wish to compromise users'[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m systems or steal data from other sites. Browser vendors must stay ahead of these attacks by providing features that support secure web applications. This course will study vulnerabilities in existing web browsers and the applications t[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249mhey render, as well as new technologies that enable web applications that were never before possible. The material will be largely based on current research problems, and students will be expected to criticize and improve existing defen[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249mses. Topics of study include (but are not limited to) browser encryption, JavaScript security, plug-in security, sandboxing, web mashups, and authentication.[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
|
||
[38;5;238m――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――[39m
|
||
[38;2;255;187;0m[4mArtificial Intelligence[0m
|
||
|
||
[38;5;12m- [39m[38;5;14m[1mCS 188[0m[38;5;12m (http://ai.berkeley.edu/home.html) [39m[38;5;14m[1mIntroduction to Artificial Intelligence[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mUC Berkeley[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- This course will introduce the basic ideas and techniques underlying the design of intelligent computer systems. A specific emphasis will be on the statistical and decision-theoretic modeling paradigm. By the end of this course, you w[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249mill have built autonomous agents that efficiently make decisions in fully informed, partially observable and adversarial settings. Your agents will draw inferences in uncertain environments and optimize actions for arbitrary reward stru[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249mctures. Your machine learning algorithms will classify handwritten digits and photographs. The techniques you learn in this course apply to a wide variety of artificial intelligence problems and will serve as the foundation for further [49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249mstudy in any application area you choose to pursue.[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Lectures** (http://ai.berkeley.edu/lecture_videos.html)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Projects** (http://ai.berkeley.edu/project_overview.html)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Exams** (http://ai.berkeley.edu/exams.html)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1mCS 4700[0m[38;5;12m (http://www.cs.cornell.edu/courses/CS4700/2014fa/) [39m[38;5;14m[1mFoundations of Artificial Intelligence[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mCornell University[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- This course will provide an introduction to computer vision, with topics including image formation, feature detection, motion estimation, image mosaics, 3D shape reconstruction, and object and face detection and recognition. Applicati[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249mons of these techniques include building 3D maps, creating virtual characters, organizing photo and video databases, human computer interaction, video surveillance, automatic vehicle navigation, and mobile computer vision. This is a pro[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249mject-based course, in which you will implement several computer vision algorithms throughout the semester.[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Assignments** (http://www.cs.cornell.edu/courses/CS4700/2014fa/)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Lectures** (http://www.cs.cornell.edu/courses/CS4700/2014fa/)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1mCS 6700[0m[38;5;12m (http://www.cs.cornell.edu/courses/CS6700/2013sp/) [39m[38;5;14m[1mAdvanced Artificial Intelligence[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mCornell University[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- The design of systems that are among top 10 performers in the world (human, computer, or hybrid human-computer).[49m[39m
|
||
[48;5;235m[38;5;249m- **Syllabus** (http://www.cs.cornell.edu/courses/CS6700/2013sp/lectures/CS6700-Overview_v2.pptx)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Lectures** (http://www.cs.cornell.edu/courses/CS6700/2013sp/)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Readings** (http://www.cs.cornell.edu/courses/CS6700/2013sp/)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1m6.868J[0m[38;5;12m (http://ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-868j-the-society-of-mind-fall-2011/index.htm) [39m[38;5;14m[1mThe Society of Mind[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mMIT[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- This course is an introduction, by Prof. **Marvin Minsky** (http://www.nytimes.com/2016/01/26/business/marvin-minsky-pioneer-in-artificial-intelligence-dies-at-88.html?_r=0), to the theory that tries to explain how minds are made from[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m collections of simpler processes. It treats such aspects of thinking as vision, language, learning, reasoning, memory, consciousness, ideals, emotions, and personality. It incorporates ideas from psychology, artificial intelligence, an[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249md computer science to resolve theoretical issues such as wholes vs. parts, structural vs. functional descriptions, declarative vs. procedural representations, symbolic vs. connectionist models, and logical vs. common-sense theories of l[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249mearning.[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Lectures** (http://ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-868j-the-society-of-mind-fall-2011/video-lectures/)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Assignments** (http://ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-868j-the-society-of-mind-fall-2011/assignments/)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Readings** (http://ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-868j-the-society-of-mind-fall-2011/readings/)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
|
||
[38;5;238m――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――[39m
|
||
[38;2;255;187;0m[4mComputer Graphics[0m
|
||
[38;5;12m- [39m[38;5;14m[1mCAP 5415[0m[38;5;12m (http://crcv.ucf.edu/courses/CAP5415/) [39m[38;5;14m[1mComputer Vision[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mUniversity of Central Florida[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- An introductory level course covering the basic topics of computer vision, and introducing some fundamental approaches for computer vision research.[49m[39m
|
||
[48;5;235m[38;5;249m- **Lectures and Videos** (http://crcv.ucf.edu/videos/Lecture_Videos/)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Assignments** (http://crcv.ucf.edu/courses/CAP5415/Fall2014/index.php)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1mCIS 581[0m[38;5;12m (https://alliance.seas.upenn.edu/~cis581/wiki/index.php?title=CIS_581:_Computer_Vision_%26_Computational_Photography) [39m[38;5;14m[1mComputer Vision and Computational Photography[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mUniversity of Pennsylvania[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- An introductory course in computer vision and computational photography focusing on four topics: image features, image morphing, shape matching, and image search.[49m[39m
|
||
[48;5;235m[38;5;249m- **Lectures** (https://alliance.seas.upenn.edu/~cis581/wiki/index.php?title=Schedule)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Assignments** (https://alliance.seas.upenn.edu/~cis581/wiki/index.php?title=Projects)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1mCMU 462[0m[38;5;12m (http://15462.courses.cs.cmu.edu/fall2015) [39m[38;5;14m[1mComputer Graphics[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mCarnegie Mellon University[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- This course provides a comprehensive introduction to computer graphics. Focuses on fundamental concepts and techniques, and their cross-cutting relationship to multiple problem domains in graphics (rendering, animation, geometry, imag[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249ming). Topics include: sampling, aliasing, interpolation, rasterization, geometric transformations, parameterization, visibility, compositing, filtering, convolution, curves & surfaces, geometric data structures, subdivision, meshing, sp[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249matial hierarchies, ray tracing, radiometry, reflectance, light fields, geometric optics, Monte Carlo rendering, importance sampling, camera models, high-performance ray tracing, differential equations, time integration, numerical differ[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249mentiation, physically-based animation, optimization, numerical linear algebra, inverse kinematics, Fourier methods, data fitting, example-based synthesis.[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Lectures and Readings** (http://15462.courses.cs.cmu.edu/fall2015/reading)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Assignments and Quizes** (http://15462.courses.cs.cmu.edu/fall2015/exercises)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1mCS 378[0m[38;5;12m (https://github.com/ut-cs378-vision-2014fall/course-info) [39m[38;5;14m[1m3D Reconstruction with Computer Vision[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mUTexas[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- In this lab-based class, we'll dive into practical applications of 3D reconstruction, combining hardware and software to build our own 3D environments from scratch. We'll use open-source frameworks like OpenCV to do the heavy lifting,[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m with the focus on understanding and applying state-of-the art approaches to geometric computer vision[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Lectures** (https://github.com/ut-cs378-vision-2014fall/course-info/tree/master/meeting-notes)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1mCS 4620[0m[38;5;12m (http://www.cs.cornell.edu/Courses/CS4620/2014fa/index.shtml#) [39m[38;5;14m[1mIntroduction to Computer Graphics[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mCornell University[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- The study of creating, manipulating, and using visual images in the computer.[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Assignments** (http://www.cs.cornell.edu/Courses/CS4620/2014fa/index.shtml#asgn)[49m[39m
|
||
[48;5;235m[38;5;249m- **Exams** (http://www.cs.cornell.edu/Courses/CS4620/2014fa/index.shtml#exams)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1mCS 4670[0m[38;5;12m (http://www.cs.cornell.edu/courses/CS4670/2015sp/) [39m[38;5;14m[1mIntroduction to Computer Vision[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mCornell University[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- This course will provide an introduction to computer vision, with topics including image formation, feature detection, motion estimation, image mosaics, 3D shape reconstruction, and object and face detection and recognition. Applicati[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249mons of these techniques include building 3D maps, creating virtual characters, organizing photo and video databases, human computer interaction, video surveillance, automatic vehicle navigation, and mobile computer vision. This is a pro[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249mject-based course, in which you will implement several computer vision algorithms throughout the semester.[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Assignments** (http://www.cs.cornell.edu/courses/CS4670/2015sp/projects/projects.html)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Lectures** (http://www.cs.cornell.edu/courses/CS4670/2015sp/lectures/lectures.html)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1mCS 6670[0m[38;5;12m (https://canvas.instructure.com/courses/904706) [39m[38;5;14m[1mComputer Vision[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mCornell University[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- Introduction to computer vision. Topics include edge detection, image segmentation, stereopsis, motion and optical flow, image mosaics, 3D shape reconstruction, and object recognition. Students are required to implement several of the[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m algorithms covered in the course and complete a final project.[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Syllabus** (https://canvas.instructure.com/courses/904706/assignments/syllabus)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Lectures** (https://canvas.instructure.com/courses/904706)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Assignments** (https://canvas.instructure.com/courses/904706/assignments)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1mCSCI 1230[0m[38;5;12m (http://cs.brown.edu/courses/csci1230/index.html) [39m[38;5;14m[1mIntroduction to Computer Graphics[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mBrown University[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- This course offers an in-depth exploration of fundamental concepts in 2D and 3D computer graphics. It introduces 2D raster graphics techniques, including scan conversion, simple image processing, interaction techniques and user interf[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249mace design. The bulk of the course is devoted to 3D modeling, geometric transformations, and 3D viewing and rendering.[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Lectures** (http://cs.brown.edu/courses/csci1230/lectures.html)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Labs** (http://cs.brown.edu/courses/csci1230/labs.html)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Demos** (http://cs.brown.edu/courses/csci1230/demos.html)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1mCSCI-GA.2270-001[0m[38;5;12m (https://mrl.nyu.edu/~perlin/courses/fall2015/) [39m[38;5;14m[1mGraduate Computer Graphics[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mNew York University[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- Step-by-step study computer graphics, with reading and homework at each lecture (Fall2015)[49m[39m
|
||
[48;5;235m[38;5;249m- **Lectures** (https://mrl.nyu.edu/~perlin/courses/fall2015/)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
|
||
[38;5;238m――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――[39m
|
||
[38;2;255;187;0m[4mMisc[0m
|
||
[38;5;12m- [39m[38;5;14m[1mAM 207[0m[38;5;12m (http://am207.github.io/2016/index.html) [39m[38;5;14m[1mMonte Carlo Methods and Stochastic Optimization[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mHarvard University[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- This course introduces important principles of Monte Carlo techniques and demonstrates the power of these techniques with simple (but very useful) applications. All of this in Python![49m[39m
|
||
[48;5;235m[38;5;249m- **Lecture Videos** (http://cm.dce.harvard.edu/2015/02/24104/publicationListing.shtml)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Assignments** (http://am207.github.io/2016/homework.html)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Lecture Notes** (http://am207.github.io/2016/lectures.html)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1mCS 75[0m[38;5;12m (http://ocw.tufts.edu/Course/75) [39m[38;5;14m[1mIntroduction to Game Development[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mTufts University[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- The course taught by **Ming Y. Chow** (http://mchow01.github.io) teaches game development initially in PyGame through Python, before moving on to addressing all facets of game development. Topics addressed include game physics, sprite[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249ms, animation, game development methodology, sound, testing, MMORPGs and online games, and addressing mobile development in Android, HTML5, and iOS. Most to all of the development is focused on PyGame for learning principles[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Text Lectures** (http://ocw.tufts.edu/Course/75/Learningunits)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Assignments** (http://ocw.tufts.edu/Course/75/Assignments)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Labs** (http://ocw.tufts.edu/Course/75/Labs)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1mCS 50[0m[38;5;12m (https://cs50.github.io/games/) [39m[38;5;14m[1mIntro to Game Developement[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mHarvard University[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- This course picks up where Harvard College’s **CS50** (https://cs50.harvard.edu/) leaves off, focusing on the development of 2D and 3D interactive games. Students explore the design of such childhood games as Super Mario Bros., Legend[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m of Zelda, and Portal in a quest to understand how video games themselves are implemented. Via lectures and hands-on projects, the course explores principles of 2D and 3D graphics, animation, sound, and collision detection using framewo[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249mrks like Unity and **LÖVE 2D** (https://love2d.org/), as well as languages like Lua and C#. By class’s end, students will have programmed several of their own games and gained a thorough understanding of the basics of game design and de[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249mvelopment.[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Assignments** (https://cs50.github.io/games/assignments)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Lecture Videos** (https://cs50.github.io/games/lectures)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1mCS 100[0m[38;5;12m (https://github.com/mikeizbicki/ucr-cs100) [39m[38;5;14m[1mOpen Source Software Construction[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mUC Riverside[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- This is a course on how to be a hacker. Your first four homework assignments walk you through the process of building your own unix shell. You'll be developing it as an open source project, and you will collaborate with each other at [49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249mvarious points.[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Github Page** (https://github.com/mikeizbicki/ucr-cs100)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Assignments** (https://github.com/mikeizbicki/ucr-cs100/tree/2015winter/assignments)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1mCS 108[0m[38;5;12m (http://web.stanford.edu/class/archive/cs/cs108/cs108.1092/) [39m[38;5;14m[1mObject Oriented System Design[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mStanford[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- Software design and construction in the context of large OOP libraries. Taught in Java. Topics: OOP design, design patterns, testing, graphical user interface (GUI) OOP libraries, software engineering strategies, approaches to program[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249mming in teams.[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1mCS 168[0m[38;5;12m (https://inst.eecs.berkeley.edu/~cs168/fa15/) [39m[38;5;14m[1mComputer Networks[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mUC Berkeley[0m
|
||
[48;5;235m[38;5;249m- This is an undergraduate level course covering the fundamental concepts of networking as embodied in the Internet. The course will cover a wide range of topics; see the lecture schedule for more details. While the class has a textbook[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m, we will not follow its order of presentation but will instead use the text as a reference when covering each individual topic. The course will also have several projects that involve programming (in Python).[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- You should know programming, data structures, and software engineering. In terms of mathematics, your algebra should be very solid, you need to know basic probability, and you should be comfortable with thinking abstractly. The TAs wi[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249mll spend very little time reviewing material that is not specific to networking. We assume that you either know the material covered in those courses, or are willing to learn the material as necessary. We won't cover any of this materia[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249ml in lecture.[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1mCS 193a[0m[38;5;12m (http://web.stanford.edu/class/cs193a/lectures.shtml) [39m[38;5;14m[1mAndroid App Development, Spring 2016[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mStanford University[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- Course Description: This course provides an introduction to developing applications for the Android mobile platform.[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- Prerequisite: CS 106B or equivalent. Java experience highly recommended. OOP highly recommmended.[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- Devices: Access to an Android phone and/or tablet recommended but not required.[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- Videos: Videos list can be found **here** (http://web.stanford.edu/class/cs193a/videos.shtml)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- Other materials: Some codes, handsout, homework ..... and lecture notes are not downloadable on the site due to login requirement. Please head to my Github repo **here** (https://github.com/VoLuong/Materials-CS193A-Android-App-Develop[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249mment-Standford) to download them.[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1mCS 193p[0m[38;5;12m (https://itunes.apple.com/us/course/developing-ios-7-apps-for/id733644550) [39m[38;5;14m[1mDeveloping Applications for iOS[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mStanford University[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- Updated for iOS 7. Tools and APIs required to build applications for the iPhone and iPad platform using the iOS SDK. User interface designs for mobile devices and unique user interactions using multi-touch technologies. Object-oriente[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249md design using model-view-controller paradigm, memory management, Objective-C programming language. Other topics include: object-oriented database API, animation, multi-threading and performance considerations.[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- Prerequisites: C language and object-oriented programming experience[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- Recommended: **Programming Abstractions** (https://itunes.apple.com/us/course/programming-abstractions/id495054099)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Updated courses for iOS8 - Swift** (https://itunes.apple.com/us/course/developing-ios-8-apps-swift/id961180099)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Updated courses for iOS9 - Swift** (https://itunes.apple.com/us/course/developing-ios-9-apps-swift/id1104579961)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1mCS 223A[0m[38;5;12m (https://see.stanford.edu/Course/CS223A) [39m[38;5;14m[1mIntroduction to Robotics[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mStanford University[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- The purpose of this course is to introduce you to basics of modeling, design, planning, and control of robot systems. In essence, the material treated in this course is a brief survey of relevant results from geometry, kinematics, sta[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249mtics, dynamics, and control.[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1mCS 262a[0m[38;5;12m (http://www.cs.berkeley.edu/~brewer/cs262/) [39m[38;5;14m[1mAdvanced Topics in Computer Systems[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mUC Berkeley[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- CS262a is the first semester of a year-long sequence on computer systems research, including operating systems, database systems, and Internet infrastructure systems. The goal of the course is to cover a broad array of research topic[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249ms in computer systems, and to engage you in top-flight systems research. The first semester is devoted to basic thematic issues and underlying techniques in computer systems, while the second semester goes deeper into topics related to[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m scalable, parallel and distributed systems. The class is based on a discussion of important research papers and a research project. [49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Parts**: Some Classics, Persistent Storage, Concurrency, Higher-Level Models, Virtual Machines, Cloud Computing, Parallel and Distributed Computing, Potpourri. [49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- Prerequisites: The historical prerequisite was to pass an entrance exam in class, which covered undergraduate operating systems material (similar to **UCB's CS162** (https://cs162.eecs.berkeley.edu/)). There is no longer an exam. Howe[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249mver, if you have not already taken a decent undergrad OS class, you should talk with me before taking this class. The exam had the benefit of "paging in" the undergrad material, which may have been its primary value (since the pass rate[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m was high).[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Readings & Lectures** (http://www.cs.berkeley.edu/~brewer/cs262/)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1mCS 294[0m[38;5;12m (http://inst.eecs.berkeley.edu/~cs294-101/sp15/) [39m[38;5;14m[1mCutting-edge Web Technologies[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mBerkeley[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- Want to learn what makes future web technologies tick? Join us for the class where we will dive into the internals of many of the newest web technologies, analyze and dissect them. We will conduct survey lectures to provide the backgr[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249mound and overview of the area as well as invite guest lecturers from various leading projects to present their technologies.[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1mCS 411[0m[38;5;12m (http://video.bilkent.edu.tr/course_videos.php?courseid=10) [39m[38;5;14m[1mSoftware Architecture Design[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mBilkent University[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- This course teaches the basic concepts, methods and techniques for designing software architectures. The topics include: rationale for software architecture design, modeling software architecture design, architectural styles/patterns,[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m architectural requirements analysis, comparison and evaluation of architecture design methods, synthesis-based software architecture design, software product-line architectures, domain modeling, domain engineering and application engin[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249meering, software architecture implementation, evaluating software architecture designs.[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1mCS 3152[0m[38;5;12m (http://www.cs.cornell.edu/courses/CS3152/2014sp/) [39m[38;5;14m[1mIntroduction to Computer Game Development[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mCornell University[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- A project-based course in which programmers and designers collaborate to make a computer game. This course investigates the theory and practice of developing computer games from a blend of technical, aesthetic, and cultural perspectiv[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249mes. Technical aspects of game architecture include software engineering, artificial intelligence, game physics, computer graphics, and networking. Aesthetic and cultural include art and modeling, sound and music, game balance, and playe[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249mr experience.[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Syllabus** (http://www.cs.cornell.edu/courses/CS3152/2014sp/about/faq.php)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Lectures** (http://www.cs.cornell.edu/courses/CS3152/2014sp/lectures/index.php)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Assignments** (http://www.cs.cornell.edu/courses/CS3152/2014sp/assignments/index.php)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1mCS 4152[0m[38;5;12m (http://www.cs.cornell.edu/courses/CS4152/2014sp/) [39m[38;5;14m[1mAdvanced Topics in Computer Game Development[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mCornell University[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- Project-based follow-up course to CS/INFO 3152. Students work in a multidisciplinary team to develop a game that incorporates innovative game technology. Advanced topics include 3D game development, mobile platforms, multiplayer gamin[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249mg, and nontraditional input devices. There is a special emphasis on developing games that can be submitted to festivals and competitions, or that can be commercialized.[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Syllabus** (http://www.cs.cornell.edu/courses/CS4152/2014sp/about/faq.php)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Lectures** (http://www.cs.cornell.edu/courses/CS4152/2014sp/sessions/index.php)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Assignments** (http://www.cs.cornell.edu/courses/CS4152/2014sp/assignments/index.php)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1mCS 4154[0m[38;5;12m (http://www.cs.cornell.edu/courses/CS4154/2014fa/) [39m[38;5;14m[1mAnalytics-driven Game Design[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mCornell University[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- A project-based course in which programmers and designers collaborate to design, implement, and release a video game online through popular game portals. In this course, students will use the internet to gather data anonymously from p[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249mlayers. Students will analyze this data in order to improve their game over multiple iterations. Technical aspects of this course include programming, database architecture, and statistical analysis.[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Syllabus** (http://www.cs.cornell.edu/courses/CS4154/2014fa/about/faq.php)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Lectures** (http://www.cs.cornell.edu/courses/CS4154/2014fa/lectures/index.php)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Assignments** (http://www.cs.cornell.edu/courses/CS4154/2014fa/assignments/index.php)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1mCS 4812[0m[38;5;12m (https://courses.cit.cornell.edu/physics4481-7681_2018fa/) [39m[38;5;14m[1mQuantum Information Processing[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mCornell University[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- Hardware that exploits quantum phenomena can dramatically alter the nature of computation. Though constructing a working quantum computer is a formidable technological challenge, there has been much recent experimental progress. In a[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249mddition, the theory of quantum computation is of interest in itself, offering strikingly different perspectives on the nature of computation and information, as well as providing novel insights into the conceptual puzzles posed by the q[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249muantum theory. The course is intended both for physicists, unfamiliar with computational complexity theory or cryptography, and also for computer scientists and mathematicians, unfamiliar with quantum mechanics. The prerequisites are fa[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249mmiliarity (and comfort) with finite dimensional vector spaces over the complex numbers, some standard group theory, and ability to count in binary.[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Syllabus** (https://courses.cit.cornell.edu/physics4481-7681_2018fa/)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Lectures** (https://courses.cit.cornell.edu/physics4481-7681_2018fa/)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1mCS 4860[0m[38;5;12m (http://www.cs.cornell.edu/courses/CS4860/2012fa/) [39m[38;5;14m[1mApplied Logic[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mCornell University[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- In addition to basic first-order logic, when taught by Computer Science this course involves elements of Formal Methods and Automated Reasoning. Formal Methods is concerned with proving properties of algorithms, specifying programming[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m tasks and synthesizing programs from proofs. We will use formal methods tools such as interactive proof assistants (see **www.nuprl.org** (http://www.nuprl.org)). We will also spend two weeks on constructive type theory, the language u[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249msed by the Coq and Nuprl proof assistants.[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Syllabus** (http://www.cs.cornell.edu/courses/CS4860/2012fa/schedule.php)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Lectures** (http://www.cs.cornell.edu/courses/CS4860/2012fa/schedule.php)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Assignments** (http://www.cs.cornell.edu/courses/CS4860/2012fa/schedule.php)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1mCS 5150[0m[38;5;12m (http://www.cs.cornell.edu/courses/CS5150/2014fa/overview.html) [39m[38;5;14m[1mSoftware Engineering[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mCornell University[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- Introduction to the practical problems of specifying, designing, building, testing, and delivering reliable software systems[49m[39m
|
||
[48;5;235m[38;5;249m- **Lectures** (http://www.cs.cornell.edu/courses/CS5150/2014fa/materials.html)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Assignments** (http://www.cs.cornell.edu/courses/CS5150/2014fa/assignments.html)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1mCS 5220[0m[38;5;12m (http://www.cs.cornell.edu/~bindel/class/cs5220-f11/) [39m[38;5;14m[1mApplications of Parallel Computers[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mCornell University[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- How do we solve the large-scale problems of science quickly on modern computers? How do we measure the performance of new or existing simulation codes, and what things can we do to make them run faster? How can we best take advantage [49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249mof features like multicore processors, vector units, and graphics co-processors? These are the types of questions we will address in CS 5220, Applications of Parallel Computers. Topics include:[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m - Single-processor architecture, caches, and serial performance tuning[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m - Basics of parallel machine organization[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m - Distributed memory programming with MPI[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m - Shared memory programming with OpenMP[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m - Parallel patterns: data partitioning, synchronization, and load balancing[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m - Examples of parallel numerical algorithms[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m - Applications from science and engineering[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Lectures** (http://www.cs.cornell.edu/~bindel/class/cs5220-f11/lectures.html)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Assignments** (http://www.cs.cornell.edu/~bindel/class/cs5220-f11/assignments.html)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1mCS 5540[0m[38;5;12m (https://sites.google.com/site/cs5540sp2013/) [39m[38;5;14m[1mComputational Techniques for Analyzing Clinical Data[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mCornell University[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- CS5540 is a masters-level course that covers a wide range of clinical problems and their associated computational challenges. The practice of medicine is filled with digitally accessible information about patients, ranging from EKG re[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249madings to MRI images to electronic health records. This poses a huge opportunity for computer tools that make sense out of this data. Computation tools can be used to answer seemingly straightforward questions about a single patient's t[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249mest results (“Does this patient have a normal heart rhythm?”), or to address vital questions about large populations (“Is there any clinical condition that affects the risks of Alzheimer”). In CS5540 we will look at many of the most imp[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249mortant sources of clinical data and discuss the basic computational techniques used for their analysis, ranging in sophistication from current clinical practice to state-of-the-art research projects.[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Syllabus** (https://sites.google.com/site/cs5540sp2013/home/course-description)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Lectures** (https://sites.google.com/site/cs5540sp2013/lectures)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Assignments** (https://sites.google.com/site/cs5540sp2013/assignments)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1mCS 5724[0m[38;5;12m (http://courses2.cit.cornell.edu/cs5724/) [39m[38;5;14m[1mEvolutionary Computation[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mCornell University[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- This course will cover advanced topics in evolutionary algorithms and their application to open-ended computational design. The field of evolutionary computation tries to address large-scale optimization and planning problems through [49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249mstochastic population-based methods. It draws inspiration from evolutionary processes in nature and in engineering, and also serves as abstract models for these phenomena. Evolutionary processes are generally weak methods that require l[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249mittle information about the problem domain and hence can be applied across a wide variety of applications. They are especially useful for open-ended problem domains for which little formal knowledge exists and the number of parameters i[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249ms undefined, such as for the general engineering design process. This course will provide insight to a variety of evolutionary computation paradigms, such as genetic algorithms, genetic programming, and evolutionary strategies, as well [49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249mas governing dynamics of co-evolution, arms races and mediocre stable states. New methods involving symbiosis models and pattern recognition will also be presented. The material will be intertwined with discussions of representations an[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249md results for design problems in a variety of problem domains including software, electronics, and mechanics.[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Syllabus** (http://courses2.cit.cornell.edu/cs5724/)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Lectures** (http://courses2.cit.cornell.edu/cs5724/schedule.htm)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Assignments** (http://courses2.cit.cornell.edu/cs5724/)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1mCS 6452[0m[38;5;12m (http://www.cs.cornell.edu/courses/CS6452/2012sp/index.php) [39m[38;5;14m[1mDatacenter Networks and Services[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mCornell University[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- CS6452 focuses on datacenter networks and services. The emerging demand for web services and cloud computing have created need for large scale data centers. The hardware and software infrastructure for datacenters critically determine[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249ms the functionality, performance, cost and failure tolerance of applications running on that datacenter. This course will examine design alternatives for both the hardware (networking) infrastructure, and the software infrastructure for[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m datacenters.[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Syllabus** (http://www.cs.cornell.edu/courses/CS6452/2012sp/lectures.php)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Lectures** (http://www.cs.cornell.edu/courses/CS6452/2012sp/lectures.php)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1mCS 6630[0m[38;5;12m (http://www.cs.cornell.edu/courses/CS6630/2012sp/about.stm) [39m[38;5;14m[1mRealistic Image Synthesis[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mCornell University[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- CS6630 is an introduction to physics-based rendering at the graduate level. Starting from the fundamentals of light transport we will look at formulations of the Rendering Equation, and a series of Monte Carlo methods, from sequential[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m sampling to multiple importance sampling to Markov Chains, for solving the equation to make pictures. We'll look at light reflection from surfaces and scattering in volumes, illumination from luminaries and environments, and diffusion [49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249mmodels for translucent materials. We will build working implementations of many of the algorithms we study, and learn how to make sure they are actually working correctly. It's fun to watch integrals and probability distributions transf[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249morm into photographs of a slightly too perfect synthetic world.[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Syllabus** (http://www.cs.cornell.edu/courses/CS6630/2012sp/about.stm)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Lectures** (http://www.cs.cornell.edu/courses/CS6630/2012sp/schedule.stm)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Assignments** (http://www.cs.cornell.edu/courses/CS6630/2012sp/schedule.stm)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Readings** (http://www.cs.cornell.edu/courses/CS6630/2012sp/schedule.stm)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1mCS 6640[0m[38;5;12m (http://www.cs.cornell.edu/courses/CS6640/2012fa/index.shtml#) [39m[38;5;14m[1mComputational Photography[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mCornell University[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- A course on the emerging applications of computation in photography. Likely topics include digital photography, unconventional cameras and optics, light field cameras, image processing for photography, techniques for combining multipl[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249me images, advanced image editing algorithms, and projector-camera systems.cornell.edu/courses/CS6630/2012sp/about.stm)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Lectures** (http://www.cs.cornell.edu/courses/CS6640/2012fa/index.shtml#schedule)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Assignments** (http://www.cs.cornell.edu/courses/CS6640/2012fa/index.shtml#hw)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1mCS 6650[0m[38;5;12m (http://www.cs.cornell.edu/courses/CS6650/2013fa/) [39m[38;5;14m[1mComputational Motion[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mCornell University[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- Covers computational aspects of motion, broadly construed. Topics include the computer representation, modeling, analysis, and simulation of motion, and its relationship to various areas, including computational geometry, mesh generat[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249mion, physical simulation, computer animation, robotics, biology, computer vision, acoustics, and spatio-temporal databases. Students implement several of the algorithms covered in the course and complete a final project. This offering [49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249mwill also explore the special role of motion processing in physically based sound rendering.[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1mCS 6840[0m[38;5;12m (http://www.cs.cornell.edu/courses/CS6840/2014sp/) [39m[38;5;14m[1mAlgorithmic Game Theory[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mCornell University[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- Algorithmic Game Theory combines algorithmic thinking with game-theoretic, or, more generally, economic concepts. The course will study a range of topics at this interface[49m[39m
|
||
[48;5;235m[38;5;249m- **Syllabus** (http://www.cs.cornell.edu/courses/CS6840/2014sp/)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Lectures** (http://www.cs.cornell.edu/courses/CS6840/2014sp/)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Assignments** (http://www.cs.cornell.edu/courses/CS6840/2014sp/)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Readings** (http://www.cs.cornell.edu/courses/CS6840/2014sp/)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1mCSE 154[0m[38;5;12m (http://courses.cs.washington.edu/courses/cse154/14au/) [39m[38;5;14m[1mWeb Programming[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mUniversity of Washington[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- This course is an introduction to programming for the World Wide Web. Covers use of HTML, CSS, PHP, JavaScript, AJAX, and SQL.[49m[39m
|
||
[48;5;235m[38;5;249m- **Lectures** (http://courses.cs.washington.edu/courses/cse154/14au/lectures.shtml#today)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Assignments** (http://courses.cs.washington.edu/courses/cse154/14au/homework.shtml)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1mESM 296-4F[0m[38;5;12m (http://ucsb-bren.github.io/esm296-4f/) [39m[38;5;14m[1mGIS & Spatial Analysis[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mUC Santa Barbara[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- Taught by **James Frew** (http://www.bren.ucsb.edu/people/Faculty/james_frew.htm), **Ben Best** (http://mgel.env.duke.edu/people/ben-best/), and **Lisa Wedding** (http://www.centerforoceansolutions.org/team/lisa-wedding)[49m[39m
|
||
[48;5;235m[38;5;249m- Focuses on specific computational languages (e.g., Python, R, shell) and tools (e.g., GDAL/OGR, InVEST, MGET, ModelBuilder) applied to the spatial analysis of environmental problems[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **GitHub ** (http://ucsb-bren.github.io/esm296-4f/) (includes lecture materials and labs)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1mICS 314[0m[38;5;12m (http://philipmjohnson.github.io/ics314f13/) [39m[38;5;14m[1mSoftware Engineering[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mUniversity of Hawaii[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- Taught by **Philip Johnson** (http://philipmjohnson.org/)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- Introduction to software engineering using the **"Athletic Software Engineering" pedagogy** (http://philipmjohnson.org/essays/ase-initial-results.html)[49m[39m
|
||
[48;5;235m[38;5;249m- **Readings** (http://philipmjohnson.github.io/ics314f13/readings/)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Experiences** (http://philipmjohnson.github.io/ics314f13/experiences/)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Assessments** (http://philipmjohnson.github.io/ics314f13/assessments/)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1mIGME 582[0m[38;5;12m (http://hfoss-fossrit.rhcloud.com) [39m[38;5;14m[1mHumanitarian Free & Open Source Software Development[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mRochester Institute of Technology[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- This course provides students with exposure to the design, creation and production of Open Source Software projects. Students will be introduced to the historic intersections of technology and intellectual property rights and will bec[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249mome familiar with Open Source development processes, tools and practices.[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1mI485 / H400[0m[38;5;12m (http://www.informatics.indiana.edu/rocha/i-bic/) [39m[38;5;14m[1mBiologically Inspired Computation[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mIndiana University[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- Course taught by **Luis Rocha** (http://www.informatics.indiana.edu/rocha/lr_form.html) about the multi-disciplinary field algorithms inspired by naturally occurring phenomenon. This course provides introduces the following areas: L-s[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249mystems, Cellular Automata, Emergence, Genetic Algorithms, Swarm Intelligence and Artificial Immune Systems. It's aim is to cover the fundamentals and enable readers to build up a proficiency in applying various algorithms to real-world [49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249mproblems.[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Lectures** (http://www.informatics.indiana.edu/rocha/i-bic/#materials)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Assignments** (http://www.informatics.indiana.edu/rocha/i-bic/#labs)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1mOpen Sourced Elective: Database and Rails[0m[38;5;12m (http://www.schneems.com/ut-rails/) [39m[38;5;14m[1mIntro to Ruby on Rails[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mUniversity of Texas[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- An introductory course in Ruby on Rails open sourced by University of Texas' CS Adjunct Professor, Richard Schneeman.[49m[39m
|
||
[48;5;235m[38;5;249m- **Lectures** (http://www.schneems.com/ut-rails/)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Assignments** (http://www.schneems.com/ut-rails/)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Videos** (https://www.youtube.com/playlist?list=PL7A85FD7803A8CB1F)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1mSCICOMP[0m[38;5;12m (http://mlecture.uni-bremen.de/ml/index.php?option=com_content&view=article&id=233) [39m[38;5;14m[1mAn Introduction to Efficient Scientific Computation[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mUniversität Bremen[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- This is a graduate course in scientific computing created and taught by **Oliver Serang** (http://colorfulengineering.org/) in 2014, which covers topics in computer science and statistics with applications from biology. The course is [49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249mdesigned top-down, starting with a problem and then deriving a variety of solutions from scratch.[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- Topics include memoization, recurrence closed forms, string matching (sorting, hash tables, radix tries, and suffix tries), dynamic programming (e.g. Smith-Waterman and Needleman-Wunsch), Bayesian statistics (e.g. the envelope paradox[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m), graphical models (HMMs, Viterbi, junction tree, belief propagation), FFT, and the probabilistic convolution tree.[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- **Lecture videos on Youtube** (https://www.youtube.com/user/fillwithlight/videos) and for direct **download** (http://mlecture.uni-bremen.de/ml/index.php?option=com_content&view=article&id=233)[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1m14-740[0m[38;5;12m (http://www.ini740.rocks/F20) [39m[38;5;14m[1mFundamentals of Computer Networks[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mCMU[0m[38;5;12m [39m
|
||
[48;5;235m[38;5;249m- This is an introductory course on Networking for graduate students. It follows a top-down approach to teaching Computer Networks, so it starts with the Application layer which most of the students are familiar with and as the course u[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249mnravels we learn more about transport, network and link layers of the protocol stack.[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- As far as prerequisites are concerned - basic computer, programming and probability theory background is required.[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- The course site contains links to the lecture videos, reading material and assignments.[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
|
||
|
||
[38;5;238m――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――[39m
|
||
[38;2;255;187;0m[4mStatistics[0m
|
||
|
||
[38;5;12m- [39m[38;5;14m[1mSTAT 340[0m[38;5;12m (https://andrewpbray.github.io/reg/index.html) [39m[38;5;14m[1mApplied Regression Methods[0m[38;5;12m [39m[48;2;30;30;40m[38;5;13m[3mSmith College[0m[38;5;12m [39m
|
||
|
||
[38;5;12m- This course covers the beautiful and useful tool of regression, which is the central technique of statistical modeling. By the end of this course you will be able to:[39m
|
||
[48;5;235m[38;5;249m- Discern research questions and data that are well-suited to regression analysis.[49m[39m
|
||
[48;5;235m[38;5;249m- Conduct thorough exploratory data analysis of data in multiple dimensions.[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- Understand the mathematical foundations of regression.[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- Perform regression analysis in a modern computing environment.[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[48;5;235m[38;5;249m- Interpret your model and communicate what it implies.[49m[39m[48;5;235m[38;5;249m [49m[39m
|
||
[38;5;12m- [39m[38;5;14m[1mSyllabus[0m[38;5;12m (https://andrewpbray.github.io/reg/syllabus.html)[39m
|
||
[38;5;12m- [39m[38;5;14m[1mLecture Notes[0m[38;5;12m (https://andrewpbray.github.io/reg/index.html)[39m
|