Learn about traditional and mobile malware, the security threats they represent, state-of-the-art analysis and detection techniques, and the underground ecosystem that drives such a profitable but illegal business.
This course will discuss the major ideas used today in the implementation of programming language compilers. You will learn how a program written in a high-level language designed for humans is systematically translated into a program written in low-level assembly more suited to machines!
This course introduces concepts, languages, techniques, and patterns for programming heterogeneous, massively parallel processors. Its contents and structure have been significantly revised based on the experience gained from its initial offering in 2012. It covers heterogeneous computing architectures, data-parallel programming models, techniques for memory bandwidth management, and parallel algorithm patterns.
A modern VLSI chip has a zillion parts -- logic, control, memory, interconnect, etc. How do we design these complex chips? Answer: CAD software tools. Learn how to build these tools in this class.
A course driven by 20 practical questions about wireless, web, and the Internet, about how products from companies like Apple, Google, Facebook, Netflix, Amazon, Ericsson, HP, Skype and AT&T work.
In this offering, we will cover 7 of the 20 questions, and you will have the opportunity to personalize your own learning experience by choosing which of the versions suits you best.
In this course--the second in a trans-institution sequence of MOOCs on Mobile Cloud Computing with Android--we will learn how to apply patterns, pattern languages, and frameworks to alleviate the complexity of developing concurrent and networked services on mobile devices running Android that connect to popular cloud computing platforms.
Examines key computational abstraction levels below modern high-level languages. From Java/C to assembly programming, to basic processor and system organization.
In this course, you will learn about software defined networking and how it is changing the way communications networks are managed, maintained, and secured.
The Internet is a computer network that millions of people use every day. Understand the design strategies used to solve computer networking problems while you learn how the Internet works.
Join the data revolution. Companies are searching for data scientists. This specialized field demands multiple skills not easy to obtain through conventional curricula. Introduce yourself to the basics of data science and leave armed with practical experience extracting value from big data. #uwdatasci
Learn to defend and protect vital company information using the latest technology and defense strategies. Analyze internal and external threats to proactively prevent information attacks. Gain experience by solving real-world problems and leave the class equipped to establish and oversee information security.