Algorithmic Thinking (Part 1)

share ›
‹ links

Below are the top discussions from Reddit that mention this online Coursera course from Rice University.

Offered by Rice University. Experienced Computer Scientists analyze and solve computational problems at a level of abstraction that is ... Enroll for free.

Reddsera may receive an affiliate commission if you enroll in a paid course after using these buttons to visit Coursera. Thank you for using these buttons to support Reddsera.

Taught by
Luay Nakhleh
Associate Professor
and 2 more instructors

Offered by
Rice University

Reddit Posts and Comments

0 posts • 32 mentions • top 11 shown below

r/argentina • comment
6 points • santicarta

>Si quiero empezar a aprender lenguajes de programación, por donde empiezo?

Si no sabes nada de nada de programación, podes empezar acá

>Python?

La curva de aprendisaje es bastante piola, y esta bueno, por ahí si queres algo que se pueda "ver" onda con ventanitas y demás no es lo mejor (en mi opinión)

>Que diferencia hay entre Java, aplicación.net, full stack developer,? Que hace cada uno?

Java y .net son lenguajes de programación. La diferencia entre ambos es a nivel tecnológico, si no sabes de ninguno de los 2 al principio te va a dar lo mismo.

Full stack developer: es un programador que hace el Front End (lo que vez) y Back End, "lo que pasa una vez que apretas en boton comprar en el carrito"

r/learnpython • post
30 points • Lugersmith
Started programming, is this a good plan?

Before studying things, I like to order things out long term on how I am planing on studying and I want to you guys to see my thought process:

First thing, is finishing these two courses: https://www.coursera.org/learn/python then https://www.coursera.org/learn/interactive-python-1. And then read Python Crash Course, and after it, I thought of reading Automate the boring stuff with python.

I heard the MIT course could be hard on people with little experience, so I though these last few would prepare me for: https://www.edx.org/course/introduction-computer-science-mitx-6-00-1x-11,

Now, the basics out the way, I heard Learning Python is a long book, that will really make a strong foundation.

To continue, I'd enter https://www.coursera.org/learn/algorithmic-thinking-1#ratings. Now I've read that the Python Cookbook is a book full of amazing things, so I put this after the course, cause I didn't know where else to do so.

And to top it all off: https://university.mongodb.com/courses/M101P/about . I heard this is important, and worth learning.

Am I overdoing it? Is the order correct? I really appreciate any comment, personal experiences, and so on.

r/MSCSO • comment
3 points • High-Priority

I was in the same boat not long ago and got some pretty good info straight from the MCSO program staff. You may have seen this list elsewhere online already, but just in case you haven’t here it is:

1) Programming Foundations with JavaScript, HTML and CSS, Coursera, Duke University, 4 weeks. https://www.coursera.org/learn/duke-programming-web 2) Introduction to Java Programming, edX, Universidad Carlos de Madrid, 5 weeks. https://www.edx.org/course/introduction-to-java-programming-starting-to-code-with-java 3) Learn to Program in Java, edX, Microsoft Professional Certificate Program, 4 weeks. https://www.edx.org/course/learn-to-program-in-java-1 4) Intro to Java Programming - Part 1, edX, Hong Kong University of Science and Technology, 5 weeks. https://www.edx.org/course/introduction-java-programming-part-1-hkustx-comp102-1x-9 5) Intro to Java Programming - Part 2, edX, Hong Kong University of Science and Technology, 5 weeks. (could combine these two courses) https://www.edx.org/course/introduction-java-programming-part-2-hkustx-comp102-2x-9 6) AP Computer Science A: Java Programming Classes and Objects, edX, Purdue Univ., 6 weeks. https://www.edx.org/course/ap-computer-science-a-java-programming-classes-and-objects

CS 314 - Data Structures 1) Foundations of Data Structures, edX, IIT Bombay, 6 weeks https://www.edx.org/course/foundations-of-data-structures 2) Data Structures and Software Design, edX, University of Penn, 8-10 weeks. https://www.edx.org/course/data-structures-software-design-pennx-sd2x 3) Data Structures Fundamentals, edX, UC San Diego, 6 weeks. https://www.edx.org/course/data-structures-fundamentals-uc-san-diegox-algs201x 4) Data Structures and Algorithms, Coursera, UC San Diego, 6 weeks. https://www.coursera.org/specializations/data-structures-algorithms

CS 311 - Discrete Math 1) Introduction to Discrete Mathematics for CS Specialization, Coursera, UC San Diego, 3 months https://www.coursera.org/specializations/discrete-mathematics 2) Discrete Mathematics, Coursera, Shanghai Jiao Tong University, 11 weeks https://www.coursera.org/learn/discrete-mathematics

CS 331 Algorithms and Complexity 1) Advanced Algorithms and Complexity, Coursera, UC San Diego, 4 weeks https://www.coursera.org/learn/advanced-algorithms-and-complexity 2) Algorithmic Thinking (Part 1), Courersa, Rice University, 4 weeks https://www.coursera.org/learn/algorithmic-thinking-1 3) Algorithmic Thinking (Part 2), Coursera, Rice University, 4 weeks https://www.coursera.org/learn/algorithmic-thinking-1 4) Algorithms Specialization (4 parts), Coursera, Stanford, 4 months https://www.coursera.org/specializations/algorithms

CS 429 Computer Architecture 1) Computation Structures 2: Computer Architecture, edX, MIT, 10 weeks https://www.edx.org/course/computation-structures-2-computer-mitx-6-004-2x 2) Computer Architecture, Coursera, Princeton, 4 weeks https://www.coursera.org/learn/comparch

CS 439 Computer Systems 1) Build a modern computer from First Principles: From Nand to tetris (Project-Centered Course) https://www.coursera.org/learn/build-a-computer

r/MSCSO • post
3 points • Slothfase
Recommended online courses from MSCSO

Hey all. I posted on the inaugural admissions thread that I was admitted without a CS undergrad and that I had taken MOOCs recommended by MSCSO. Early on in my application I had sent the admissions office an email and received a list of courses that they were considering in order to offer prospective students recommendations on how to prepare.

As per a few peoples request, here is that list:

> CS 312 - Intro to Programming > > 1) Programming Foundations with JavaScript, HTML and CSS, Coursera, Duke University, 4 weeks. > https://www.coursera.org/learn/duke-programming-web > > 2) Introduction to Java Programming, edX, Universidad Carlos de Madrid, 5 weeks. > https://www.edx.org/course/introduction-to-java-programming-starting-to-code-with-java > > 3) Learn to Program in Java, edX, Microsoft Professional Certificate Program, 4 weeks. > https://www.edx.org/course/learn-to-program-in-java-1 > > 4) Intro to Java Programming - Part 1, edX, Hong Kong University of Science and Technology, 5 weeks. > https://www.edx.org/course/introduction-java-programming-part-1-hkustx-comp102-1x-9 > > 5) Intro to Java Programming - Part 2, edX, Hong Kong University of Science and Technology, 5 weeks. (could combine these two courses) > https://www.edx.org/course/introduction-java-programming-part-2-hkustx-comp102-2x-9 > > 6) AP Computer Science A: Java Programming Classes and Objects, edX, Purdue Univ., 6 weeks. > https://www.edx.org/course/ap-computer-science-a-java-programming-classes-and-objects > > CS 314 - Data Structures > > 1) Foundations of Data Structures, edX, IIT Bombay, 6 weeks > https://www.edx.org/course/foundations-of-data-structures > > 2) Data Structures and Software Design, edX, University of Penn, 8-10 weeks. > https://www.edx.org/course/data-structures-software-design-pennx-sd2x > > 3) Data Structures Fundamentals, edX, UC San Diego, 6 weeks. > https://www.edx.org/course/data-structures-fundamentals-uc-san-diegox-algs201x > > 4) Data Structures and Algorithms, Coursera, UC San Diego, 6 weeks. > https://www.coursera.org/specializations/data-structures-algorithms > > CS 311 - Discrete Math > > 1) Introduction to Discrete Mathematics for CS Specialization, Coursera, UC San Diego, 3 months > https://www.coursera.org/specializations/discrete-mathematics > > 2) Discrete Mathematics, Coursera, Shanghai Jiao Tong University, 11 weeks > https://www.coursera.org/learn/discrete-mathematics

> CS 331 Algorithms and Complexity > > 1) Advanced Algorithms and Complexity, Coursera, UC San Diego, 4 weeks > https://www.coursera.org/learn/advanced-algorithms-and-complexity > > 2) Algorithmic Thinking (Part 1), Courersa, Rice University, 4 weeks > https://www.coursera.org/learn/algorithmic-thinking-1 > > 3) Algorithmic Thinking (Part 2), Coursera, Rice University, 4 weeks > https://www.coursera.org/learn/algorithmic-thinking-1

4) Algorithms Specialization (4 parts), Coursera, Stanford, 4 months https://www.coursera.org/specializations/algorithms

> CS 429 Computer Architecture > > 1) Computation Structures 2: Computer Architecture, edX, MIT, 10 weeks > https://www.edx.org/course/computation-structures-2-computer-mitx-6-004-2x > > 2) Computer Architecture, Coursera, Princeton, 4 weeks > https://www.coursera.org/learn/comparch > > > CS 439 Computer Systems > > 1) Build a modern computer from First Principles: From Nand to tetris (Project-Centered Course) > https://www.coursera.org/learn/build-a-computer

I chose one class from each topic (minus the Discrete Math, given my undergrad was Mathematics) and included the certificates in my application to both MSCSO and OMSCS.

I did end up picking OMSCS, but I hope to see the MSCSO program thrive and I wish all applicants the best of luck!

r/reactjs • comment
1 points • Turing_com_

Hi, I am Akshay from Turing.com’s internal team and I would love to help you with this. Our tests have been designed by engineering leaders from Google, Facebook, and Stanford to test developers for a Silicon Valley bar.

First of all, don’t be disheartened by the fact that you couldn’t pass the test in your first attempt. In fact, many of our successful developers who are now working with top US companies couldn’t pass our tests while appearing for them for the first time.

Turing allows you to reappear for any of our tests in 3 months if you were unsuccessful in your previous attempt. Meanwhile during these 3 months you can freshen up your knowledge, get some more practice, fine-tune your skills and come back stronger.

Here are some resources that might help you crack the test in your next attempt:

Coursera - https://www.coursera.org/learn/algorithmic-thinking-1
Hackerrank - https://hackerrank.com/
Codility - https://app.codility.com/demo/take-sample-test/
Khan Acadamy - https://www.khanacademy.org/computing/computer-science/algorithms
Data structures and algorithms - https://leetcode.com
System Design - https://github.com/donnemartin/system-design-primer
OOP & Design Patterns - https://www.youtube.com/playlist?list=PLF206E906175C7E07
Git - https://git-scm.com/book/en/v2

If you need any more information, please reach out to me at [email protected]

r/MSCSO • comment
1 points • Tender_Figs

Awesome. I did notice they had this list on this reddit (which they confirmed), but I'm unsure if it's one from each or the whole list..

CS 312 - Intro to Programming 1) Programming Foundations with JavaScript, HTML and CSS, Coursera, Duke University, 4 weeks. https://www.coursera.org/learn/duke-programming-web 2) Introduction to Java Programming, edX, Universidad Carlos de Madrid, 5 weeks. https://www.edx.org/course/introduction-to-java-programming-starting-to-code-with-java 3) Learn to Program in Java, edX, Microsoft Professional Certificate Program, 4 weeks. https://www.edx.org/course/learn-to-program-in-java-1 4) Intro to Java Programming - Part 1, edX, Hong Kong University of Science and Technology, 5 weeks. https://www.edx.org/course/introduction-java-programming-part-1-hkustx-comp102-1x-9 5) Intro to Java Programming - Part 2, edX, Hong Kong University of Science and Technology, 5 weeks. (could combine these two courses) https://www.edx.org/course/introduction-java-programming-part-2-hkustx-comp102-2x-9 6) AP Computer Science A: Java Programming Classes and Objects, edX, Purdue Univ., 6 weeks. https://www.edx.org/course/ap-computer-science-a-java-programming-classes-and-objects

CS 314 - Data Structures 1) Foundations of Data Structures, edX, IIT Bombay, 6 weeks https://www.edx.org/course/foundations-of-data-structures 2) Data Structures and Software Design, edX, University of Penn, 8-10 weeks. https://www.edx.org/course/data-structures-software-design-pennx-sd2x 3) Data Structures Fundamentals, edX, UC San Diego, 6 weeks. https://www.edx.org/course/data-structures-fundamentals-uc-san-diegox-algs201x 4) Data Structures and Algorithms, Coursera, UC San Diego, 6 weeks. https://www.coursera.org/specializations/data-structures-algorithms

CS 311 - Discrete Math 1) Introduction to Discrete Mathematics for CS Specialization, Coursera, UC San Diego, 3 months https://www.coursera.org/specializations/discrete-mathematics 2) Discrete Mathematics, Coursera, Shanghai Jiao Tong University, 11 weeks https://www.coursera.org/learn/discrete-mathematics

CS 331 Algorithms and Complexity 1) Advanced Algorithms and Complexity, Coursera, UC San Diego, 4 weeks https://www.coursera.org/learn/advanced-algorithms-and-complexity 2) Algorithmic Thinking (Part 1), Courersa, Rice University, 4 weeks https://www.coursera.org/learn/algorithmic-thinking-1 3) Algorithmic Thinking (Part 2), Coursera, Rice University, 4 weeks https://www.coursera.org/learn/algorithmic-thinking-1 4) Algorithms Specialization (4 parts), Coursera, Stanford, 4 months https://www.coursera.org/specializations/algorithms

CS 429 Computer Architecture 1) Computation Structures 2: Computer Architecture, edX, MIT, 10 weeks https://www.edx.org/course/computation-structures-2-computer-mitx-6-004-2x 2) Computer Architecture, Coursera, Princeton, 4 weeks https://www.coursera.org/learn/comparch

CS 439 Computer Systems 1) Build a modern computer from First Principles: From Nand to tetris (Project-Centered Course) https://www.coursera.org/learn/build-a-computer

r/MSCSO • comment
1 points • Danny_Boodman

No it would'nt. I have anonther degree wrote them email and got this answer.

--> "Applicants who do not hold a degree in computer science should have prior coursework or experience equivalent to the following UT Computer Science undergraduate courses:

• Discrete Math for Computer Science (CS 311) • Introduction to Programming (CS 312) • Data Structures (CS 314) • Algorithms and Complexity (CS 331) • Computer Organization and Architecture (CS 429) • Principles of Computer Systems (CS 439)

Here are the undergraduate course descriptions for more information about the material covered in the prerequisite courses. If an applicant has evidence of gaining content knowledge on these subjects through a course or through work experience, it is important to detail that in the CV and personal statement. It is also possible to take courses through online platforms or a local university.

I’ve attached a list of courses that would be helpful for an applicant to prepare for the program.  Once again, I would recommend mentioning these in the personal statement to show that an applicant has acquired the content knowledge to succeed in the program.  

CS 312 - Intro to Programming 1)  Programming Foundations with JavaScript, HTML and CSS, Coursera, Duke University, 4 weeks. https://www.coursera.org/learn/duke-programming-web 2)  Introduction to Java Programming, edX, Universidad Carlos de Madrid, 5 weeks. https://www.edx.org/course/introduction-to-java-programming-starting-to-code-with-java 3) Learn to Program in Java, edX, Microsoft Professional Certificate Program, 4 weeks. https://www.edx.org/course/learn-to-program-in-java-1 4)  Intro to Java Programming - Part 1, edX, Hong Kong University of Science and Technology, 5 weeks. https://www.edx.org/course/introduction-java-programming-part-1-hkustx-comp102-1x-9 5)  Intro to Java Programming - Part 2, edX, Hong Kong University of Science and Technology, 5 weeks. (could combine these two courses) https://www.edx.org/course/introduction-java-programming-part-2-hkustx-comp102-2x-9 6)  AP Computer Science A:  Java Programming Classes and Objects, edX, Purdue Univ., 6 weeks. https://www.edx.org/course/ap-computer-science-a-java-programming-classes-and-objects

CS 314 - Data Structures 1) Foundations of Data Structures, edX, IIT Bombay, 6 weeks https://www.edx.org/course/foundations-of-data-structures 2)  Data Structures and Software Design, edX, University of Penn, 8-10 weeks. https://www.edx.org/course/data-structures-software-design-pennx-sd2x 3)  Data Structures Fundamentals, edX, UC San Diego, 6 weeks. https://www.edx.org/course/data-structures-fundamentals-uc-san-diegox-algs201x 4)  Data Structures and Algorithms, Coursera, UC San Diego, 6 weeks. https://www.coursera.org/specializations/data-structures-algorithms

CS 311 - Discrete Math 1)  Introduction to Discrete Mathematics for CS Specialization, Coursera, UC San Diego, 3 months https://www.coursera.org/specializations/discrete-mathematics 2)  Discrete Mathematics, Coursera, Shanghai Jiao Tong University, 11 weeks https://www.coursera.org/learn/discrete-mathematics

CS 331 Algorithms and Complexity 1)  Advanced Algorithms and Complexity, Coursera, UC San Diego, 4 weeks https://www.coursera.org/learn/advanced-algorithms-and-complexity 2)  Algorithmic Thinking (Part 1), Courersa, Rice University, 4 weeks https://www.coursera.org/learn/algorithmic-thinking-1 3)  Algorithmic Thinking (Part 2), Coursera, Rice University, 4 weeks https://www.coursera.org/learn/algorithmic-thinking-1 4)  Algorithms Specialization (4 parts), Coursera, Stanford, 4 months https://www.coursera.org/specializations/algorithms

CS 429 Computer Architecture 1)  Computation Structures 2: Computer Architecture, edX, MIT, 10 weeks https://www.edx.org/course/computation-structures-2-computer-mitx-6-004-2x 2) Computer Architecture, Coursera, Princeton, 4 weeks https://www.coursera.org/learn/comparch

CS 439 Computer Systems 1)  Build a modern computer from First Principles:  From Nand to tetris (Project-Centered Course) https://www.coursera.org/learn/build-a-computer "

So try to take courses through online platforms or a local university.

Good Luck

r/MSCSO • comment
1 points • Epines1911

CS 312 - Intro to Programming 1) Programming Foundations with JavaScript, HTML and CSS, Coursera, Duke University, 4 weeks. https://www.coursera.org/learn/duke-programming-web 2) Introduction to Java Programming, edX, Universidad Carlos de Madrid, 5 weeks. https://www.edx.org/course/introduction-to-java-programming-starting-to-code-with-java 3) Learn to Program in Java, edX, Microsoft Professional Certificate Program, 4 weeks. https://www.edx.org/course/learn-to-program-in-java-1 4) Intro to Java Programming - Part 1, edX, Hong Kong University of Science and Technology, 5 weeks. https://www.edx.org/course/introduction-java-programming-part-1-hkustx-comp102-1x-9 5) Intro to Java Programming - Part 2, edX, Hong Kong University of Science and Technology, 5 weeks. (could combine these two courses) https://www.edx.org/course/introduction-java-programming-part-2-hkustx-comp102-2x-9 6) AP Computer Science A: Java Programming Classes and Objects, edX, Purdue Univ., 6 weeks. https://www.edx.org/course/ap-computer-science-a-java-programming-classes-and-objects

CS 314 - Data Structures 1) Foundations of Data Structures, edX, IIT Bombay, 6 weeks https://www.edx.org/course/foundations-of-data-structures 2) Data Structures and Software Design, edX, University of Penn, 8-10 weeks. https://www.edx.org/course/data-structures-software-design-pennx-sd2x 3) Data Structures Fundamentals, edX, UC San Diego, 6 weeks. https://www.edx.org/course/data-structures-fundamentals-uc-san-diegox-algs201x 4) Data Structures and Algorithms, Coursera, UC San Diego, 6 weeks. https://www.coursera.org/specializations/data-structures-algorithms

CS 311 - Discrete Math 1) Introduction to Discrete Mathematics for CS Specialization, Coursera, UC San Diego, 3 months https://www.coursera.org/specializations/discrete-mathematics 2) Discrete Mathematics, Coursera, Shanghai Jiao Tong University, 11 weeks https://www.coursera.org/learn/discrete-mathematics

CS 331 Algorithms and Complexity 1) Advanced Algorithms and Complexity, Coursera, UC San Diego, 4 weeks https://www.coursera.org/learn/advanced-algorithms-and-complexity 2) Algorithmic Thinking (Part 1), Courersa, Rice University, 4 weeks https://www.coursera.org/learn/algorithmic-thinking-1 3) Algorithmic Thinking (Part 2), Coursera, Rice University, 4 weeks https://www.coursera.org/learn/algorithmic-thinking-1 4) Algorithms Specialization (4 parts), Coursera, Stanford, 4 months https://www.coursera.org/specializations/algorithms

CS 429 Computer Architecture 1) Computation Structures 2: Computer Architecture, edX, MIT, 10 weeks https://www.edx.org/course/computation-structures-2-computer-mitx-6-004-2x 2) Computer Architecture, Coursera, Princeton, 4 weeks https://www.coursera.org/learn/comparch

CS 439 Computer Systems 1) Build a modern computer from First Principles: From Nand to tetris (Project-Centered Course) https://www.coursera.org/learn/build-a-computer

Kathryn sent that to me several months ago when I asked her similar questions☺

r/cscareerquestions • comment
1 points • 425trafficeng

This is the list UT-Austin sends out for preparing for their online masters.

CS 312 - Intro to Programming

  1. ⁠Programming Foundations with JavaScript, HTML and CSS, Coursera, Duke University, 4 weeks. https://www.coursera.org/learn/duke-programming-web
  2. ⁠Introduction to Java Programming, edX, Universidad Carlos de Madrid, 5 weeks. https://www.edx.org/course/introduction-to-java-programming-starting-to-code-with-java
  3. ⁠Learn to Program in Java, edX, Microsoft Professional Certificate Program, 4 weeks. https://www.edx.org/course/learn-to-program-in-java-1
  4. ⁠Intro to Java Programming - Part 1, edX, Hong Kong University of Science and Technology, 5 weeks. https://www.edx.org/course/introduction-java-programming-part-1-hkustx-comp102-1x-9
  5. ⁠Intro to Java Programming - Part 2, edX, Hong Kong University of Science and Technology, 5 weeks. (could combine these two courses) https://www.edx.org/course/introduction-java-programming-part-2-hkustx-comp102-2x-9
  6. ⁠AP Computer Science A: Java Programming Classes and Objects, edX, Purdue Univ., 6 weeks. https://www.edx.org/course/ap-computer-science-a-java-programming-classes-and-objects

CS 314 - Data Structures

  1. ⁠Foundations of Data Structures, edX, IIT Bombay, 6 weeks https://www.edx.org/course/foundations-of-data-structures
  2. ⁠Data Structures and Software Design, edX, University of Penn, 8-10 weeks. https://www.edx.org/course/data-structures-software-design-pennx-sd2x
  3. ⁠Data Structures Fundamentals, edX, UC San Diego, 6 weeks. https://www.edx.org/course/data-structures-fundamentals-uc-san-diegox-algs201x
  4. ⁠Data Structures and Algorithms, Coursera, UC San Diego, 6 weeks. https://www.coursera.org/specializations/data-structures-algorithms

CS 311 - Discrete Math

  1. ⁠Introduction to Discrete Mathematics for CS Specialization, Coursera, UC San Diego, 3 months https://www.coursera.org/specializations/discrete-mathematics
  2. ⁠Discrete Mathematics, Coursera, Shanghai Jiao Tong University, 11 weeks https://www.coursera.org/learn/discrete-mathematics

CS 331 Algorithms and Complexity

  1. ⁠Advanced Algorithms and Complexity, Coursera, UC San Diego, 4 weeks https://www.coursera.org/learn/advanced-algorithms-and-complexity
  2. ⁠Algorithmic Thinking (Part 1), Courersa, Rice University, 4 weeks https://www.coursera.org/learn/algorithmic-thinking-1
  3. ⁠Algorithmic Thinking (Part 2), Coursera, Rice University, 4 weeks https://www.coursera.org/learn/algorithmic-thinking-1
  4. ⁠Algorithms Specialization (4 parts), Coursera, Stanford, 4 months https://www.coursera.org/specializations/algorithms

CS 429 Computer Architecture

  1. ⁠Computation Structures 2: Computer Architecture, edX, MIT, 10 weeks https://www.edx.org/course/computation-structures-2-computer-mitx-6-004-2x
  2. ⁠Computer Architecture, Coursera, Princeton, 4 weeks https://www.coursera.org/learn/comparch

CS 439 Computer Systems

  1. ⁠Build a modern computer from First Principles: From Nand to tetris (Project-Centered Course) https://www.coursera.org/learn/build-a-computer

r/MSCSO • comment
1 points • Snoo-75754

I asked them and they send me this list. Applicants who do not hold a degree in computer science should have prior coursework or experience equivalent to the following UT Computer Science undergraduate courses:

• Discrete Math for Computer Science (CS 311) • Introduction to Programming (CS 312) • Data Structures (CS 314) • Algorithms and Complexity (CS 331) • Computer Organization and Architecture (CS 429) • Principles of Computer Systems (CS 439)

Here are the undergraduate course descriptions for more information about the material covered in the prerequisite courses. If an applicant has evidence of gaining content knowledge on these subjects through a course or through work experience, it is important to detail that in the CV and personal statement. It is also possible to take courses through online platforms or a local university.

I’ve attached a list of courses that would be helpful for an applicant to prepare for the program. Once again, I would recommend mentioning these in the personal statement to show that an applicant has acquired the content knowledge to succeed in the program.

CS 312 - Intro to Programming 1) Programming Foundations with JavaScript, HTML and CSS, Coursera, Duke University, 4 weeks. https://www.coursera.org/learn/duke-programming-web 2) Introduction to Java Programming, edX, Universidad Carlos de Madrid, 5 weeks. https://www.edx.org/course/introduction-to-java-programming-starting-to-code-with-java 3) Learn to Program in Java, edX, Microsoft Professional Certificate Program, 4 weeks. https://www.edx.org/course/learn-to-program-in-java-1 4) Intro to Java Programming - Part 1, edX, Hong Kong University of Science and Technology, 5 weeks. https://www.edx.org/course/introduction-java-programming-part-1-hkustx-comp102-1x-9 5) Intro to Java Programming - Part 2, edX, Hong Kong University of Science and Technology, 5 weeks. (could combine these two courses) https://www.edx.org/course/introduction-java-programming-part-2-hkustx-comp102-2x-9 6) AP Computer Science A: Java Programming Classes and Objects, edX, Purdue Univ., 6 weeks. https://www.edx.org/course/ap-computer-science-a-java-programming-classes-and-objects

CS 314 - Data Structures 1) Foundations of Data Structures, edX, IIT Bombay, 6 weeks https://www.edx.org/course/foundations-of-data-structures 2) Data Structures and Software Design, edX, University of Penn, 8-10 weeks. https://www.edx.org/course/data-structures-software-design-pennx-sd2x 3) Data Structures Fundamentals, edX, UC San Diego, 6 weeks. https://www.edx.org/course/data-structures-fundamentals-uc-san-diegox-algs201x 4) Data Structures and Algorithms, Coursera, UC San Diego, 6 weeks. https://www.coursera.org/specializations/data-structures-algorithms

CS 311 - Discrete Math 1) Introduction to Discrete Mathematics for CS Specialization, Coursera, UC San Diego, 3 months https://www.coursera.org/specializations/discrete-mathematics 2) Discrete Mathematics, Coursera, Shanghai Jiao Tong University, 11 weeks https://www.coursera.org/learn/discrete-mathematics

CS 331 Algorithms and Complexity 1) Advanced Algorithms and Complexity, Coursera, UC San Diego, 4 weeks https://www.coursera.org/learn/advanced-algorithms-and-complexity 2) Algorithmic Thinking (Part 1), Courersa, Rice University, 4 weeks https://www.coursera.org/learn/algorithmic-thinking-1 3) Algorithmic Thinking (Part 2), Coursera, Rice University, 4 weeks https://www.coursera.org/learn/algorithmic-thinking-1 4) Algorithms Specialization (4 parts), Coursera, Stanford, 4 months https://www.coursera.org/specializations/algorithms

CS 429 Computer Architecture 1) Computation Structures 2: Computer Architecture, edX, MIT, 10 weeks https://www.edx.org/course/computation-structures-2-computer-mitx-6-004-2x 2) Computer Architecture, Coursera, Princeton, 4 weeks https://www.coursera.org/learn/comparch

CS 439 Computer Systems 1) Build a modern computer from First Principles: From Nand to tetris (Project-Centered Course) https://www.coursera.org/learn/build-a-computer

Please let us know if you have any other questions.

UTCS Online Masters Program Staff [email protected]