DRAFT: This module has unpublished changes.

Courses I've taken so far in my computer-science MS degree at Boston University:

 

Mobile Application Development (Eric Braude and Ron Czik, spring 2013): An introduction to programming for Android devices using the Android framework in Java. As a project for this course I developed the first stage of my longer-term Brouillon text editor project. I've uploaded two of the final requirements for that course: the comments and responses on my specification of the project, and my final project description with screenshots. 

 

Computer Networks (John Day, summer 2013): The theory and practice of computer networking. I wrote a term project critically examining the flaws in IP, the Internet Protocol, and examining how they could be fixed or replaced.

 

Computer Language Theory (Anatoly Temkin, fall 2013): Formal languages, their grammars, and the automata used to model them.  

 

Operating Systems (Yuting Zhang, summer 2014): The theory and details of computer operating systems. I wrote a term project examining the fact that every major non-Windows operating system available is now Unix-family, and what that actually means. I realize now there is some conceptual confusion in it (about what is kernel-level and what isn't) but I think it's still a helpful paper for those who are interested.

 

Software Design and Patterns (Jie Lu, fall 2014): The most common recognized design patterns in object-oriented programming, including model-view-controller. A good way to think about how to program in a way that takes account the likelihood of future changes. 

 

Software Engineering (Yuting Zhang, ongoing spring 2015): A team-oriented course introducing the process of collaborative real-world software development. 

 

 

Before beginning my MS degree, I also completed a BU undergraduate prerequisite certificate in computer science, made up of the following courses:

Programming with Java (Eric Braude and Mike Tizio, spring 2012)

Discrete Mathematics (Madani Naidjate, spring 2012) 

Computer Architecture (Dave Hendrickson, summer 2012)

Data Structures with Java (Victor Shtern, fall 2012)

 

DRAFT: This module has unpublished changes.