* 312 Foundations II 332 Data Abstractions 311 I 351 Hw/Sw Interface 371 Digital Circuits EE205 Signal Conditioning (or EE215) 344 Management 341 Programming Languages required CS required CompE required not required pre-req co-req or pre-req STAT391 Prob/Stats For CS 331 Sw Design / Impl 333 Systems 390A Tools MATH308 Linear Algebra * recommended (co- or pre-) 369 Design
* logic, proofs, sets, unclocked circuits, finite state machines, 312 Foundations II 332 Data Abstractions 311 I 351 Hw/Sw Interface 371 Digital Circuits EE205 Signal Conditioning (or EE215) 344 Management 341 Programming Languages required CS required CompE required not required pre-req co-req or pre-req STAT391 Prob/Stats For CS 331 Sw Design / Impl 333 Systems 390A Tools MATH308 Linear Algebra * recommended (co- or pre-) 369 Design logic, proofs, sets, unclocked circuits, finite state machines, undecidability, …
* 70% data structures: big-O, trees, heaps, hashing, sorting, graphs 312 Foundations II 332 Data Abstractions 311 I 351 Hw/Sw Interface 371 Digital Circuits EE205 Signal Conditioning (or EE215) 344 Management 341 Programming Languages required CS required CompE required not required pre-req co-req or pre-req STAT391 Prob/Stats For CS 331 Sw Design / Impl 333 Systems 390A Tools MATH308 Linear Algebra * recommended (co- or pre-) 369 Design 70% data structures: big-O, trees, heaps, hashing, sorting, graphs 20-25% threads, parallelism, 5-10% P, NP
* bits, binary numbers, assembly, C, pointers, caching, 312 Foundations II 332 Data Abstractions 311 I 351 Hw/Sw Interface 371 Digital Circuits EE205 Signal Conditioning (or EE215) 344 Management 341 Programming Languages required CS required CompE required not required pre-req co-req or pre-req STAT391 Prob/Stats For CS 331 Sw Design / Impl 333 Systems 390A Tools MATH308 Linear Algebra * recommended (co- or pre-) 369 Design bits, binary numbers, assembly, C, pointers, caching, connection to Java, …
* linux, bash, grep, make, version control, … (1-credit, pass/fail) 312 Foundations II 332 Data Abstractions 311 I 351 Hw/Sw Interface 371 Digital Circuits EE205 Signal Conditioning (or EE215) 344 Management 341 Programming Languages required CS required CompE required not required pre-req co-req or pre-req STAT391 Prob/Stats For CS 331 Sw Design / Impl 333 Systems 390A Tools MATH308 Linear Algebra * recommended (co- or pre-) 369 Design linux, bash, grep, make, version control, … (1-credit, pass/fail)
* non-trivial C/C++ programming, programming for performance, 312 Foundations II 332 Data Abstractions 311 I 351 Hw/Sw Interface 371 Digital Circuits EE205 Signal Conditioning (or EE215) 344 Management 341 Programming Languages required CS required CompE required not required pre-req co-req or pre-req STAT391 Prob/Stats For CS 331 Sw Design / Impl 333 Systems 390A Tools MATH308 Linear Algebra * recommended (co- or pre-) 369 Design non-trivial C/C++ programming, programming for performance, asynchronous I/O, …
* discrete probability / statistics in computing 312 Foundations II 332 Data Abstractions 311 I 351 Hw/Sw Interface 371 Digital Circuits EE205 Signal Conditioning (or EE215) 344 Management 341 Programming Languages required CS required CompE required not required pre-req co-req or pre-req STAT391 Prob/Stats For CS 331 Sw Design / Impl 333 Systems 390A Tools MATH308 Linear Algebra * recommended (co- or pre-) 369 Design discrete probability / statistics in computing (counting, Bayes, …), expectation and variance, …
* software design, testing, specs, 312 Foundations II 332 Data Abstractions 311 I 351 Hw/Sw Interface 371 Digital Circuits EE205 Signal Conditioning (or EE215) 344 Management 341 Programming Languages required CS required CompE required not required pre-req co-req or pre-req STAT391 Prob/Stats For CS 331 Sw Design / Impl 333 Systems 390A Tools MATH308 Linear Algebra * recommended (co- or pre-) 369 Design software design, testing, specs, debugging, design patterns, … (Java)
* functional programming, static vs. dynamic typing, 312 Foundations II 332 Data Abstractions 311 I 351 Hw/Sw Interface 371 Digital Circuits EE205 Signal Conditioning (or EE215) 344 Management 341 Programming Languages required CS required CompE required not required pre-req co-req or pre-req STAT391 Prob/Stats For CS 331 Sw Design / Impl 333 Systems 390A Tools MATH308 Linear Algebra * recommended (co- or pre-) 369 Design functional programming, static vs. dynamic typing, modularity, … (e.g., ML, Scheme, Ruby) …
* SQL, relational algebra, xpath, transactions, MapReduce, … 312 Foundations II 332 Data Abstractions 311 I 351 Hw/Sw Interface 371 Digital Circuits EE205 Signal Conditioning (or EE215) 344 Management 341 Programming Languages required CS required CompE required not required pre-req co-req or pre-req STAT391 Prob/Stats For CS 331 Sw Design / Impl 333 Systems 390A Tools MATH308 Linear Algebra * recommended (co- or pre-) 369 Design SQL, relational algebra, xpath, transactions, MapReduce, …
312 Foundations II 332 Data Abstractions 311 I 351 Hw/Sw Interface 371 Digital Circuits EE205 Signal Conditioning (or EE215) 344 Management 341 Programming Languages required CS required CompE required not required pre-req co-req or pre-req STAT391 Prob/Stats For CS 331 Sw Design / Impl 333 Systems 390A Tools MATH308 Linear Algebra * recommended (co- or pre-) 369 Design 2 credit HW lab: tools for digital design; bridge course using 311 concepts (EEs take a different sequence)
312 Foundations II 332 Data Abstractions 311 I 351 Hw/Sw Interface 371 Digital Circuits EE205 Signal Conditioning (or EE215) 344 Management 341 Programming Languages required CS required CompE required not required pre-req co-req or pre-req STAT391 Prob/Stats For CS 331 Sw Design / Impl 333 Systems 390A Tools MATH308 Linear Algebra * recommended (co- or pre-) 369 Design Joint with EE, significant lab component, Verilog, Timing, Power, Datapath, Control
* 312 Foundations II 332 Data Abstractions 311 I 351 Hw/Sw Interface 371 Digital Circuits EE205 Signal Conditioning (or EE215) 344 Management 341 Programming Languages required CS required CompE required not required pre-req co-req or pre-req STAT391 Prob/Stats For CS 331 Sw Design / Impl 333 Systems 390A Tools MATH308 Linear Algebra * recommended (co- or pre-) 369 Design