-
Exploiting and Securing Vulnerabilities in Java Applications
Description In this course, we will wear many hats. With our Attacker Hats on, we will exploit Injection issues that allow us to steal data, exploit Cross Site Scripting issues to compromise a users browser, break authentication to gain access to data and functionality reserved for the ‘Admins’, and even exploit vulnerable components to run…
-
Object Oriented Programming in Java
Description Welcome to our course on Object Oriented Programming in Java using data visualization. People come to this course with many different goals — and we are really excited to work with all of you! Some of you want to be professional software developers, others want to improve your programming skills to implement that cool…
-
Advanced Data Structures in Java
Description How does Google Maps plan the best route for getting around town given current traffic conditions? How does an internet router forward packets of network traffic to minimize delay? How does an aid group allocate resources to its affiliated local partners? To solve such problems, we first represent the key pieces of data in…
-
Front-End JavaScript Frameworks: Angular
Description This course concentrates mainly on Javascript based front-end frameworks, and in particular the Angular framework (Currently Ver. 6.x). This course will use Typescript for developing Angular application. Typescript features will be introduced in the context of Angular as part of the exercises. You will also get an introduction to the use of Angular Material…
-
Concurrent Programming in Java
Description This course teaches learners (industry professionals and students) the fundamental concepts of concurrent programming in the context of Java 8. Concurrent programming enables developers to efficiently and correctly mediate the use of shared resources in parallel programs. By the end of this course, you will learn how to use basic concurrency constructs in Java…
-
Parallel Programming in Java
Description This course teaches learners (industry professionals and students) the fundamental concepts of parallel programming in the context of Java 8. Parallel programming enables developers to use multicore computers to make their applications run faster by using multiple processors at the same time. By the end of this course, you will learn how to use…
-
Distributed Programming in Java
Description This course teaches learners (industry professionals and students) the fundamental concepts of Distributed Programming in the context of Java 8. Distributed programming enables developers to use multiple nodes in a data center to increase throughput and/or reduce latency of selected applications. By the end of this course, you will learn how to use popular…
-
HTML, CSS, and Javascript for Web Developers
Description Do you realize that the only functionality of a web application that the user directly interacts with is through the web page? Implement it poorly and, to the user, the server-side becomes irrelevant! Today’s user expects a lot out of the web page: it has to load fast, expose the desired service, and be…
-
Kotlin for Java Developers
Description The Kotlin programming language is a modern language that gives you more power for your everyday tasks. Kotlin is concise, safe, pragmatic, and focused on interoperability with Java code. It can be used almost everywhere Java is used today: for server-side development, Android apps, and much more. Kotlin is 100% compatible with all existing…
-
Building Scalable Java Microservices with Spring Boot and Spring Cloud
Description “Microservices” describes a software design pattern in which an application is a collection of loosely coupled services. These services are fine-grained, and can be individually maintained and scaled. The microservices architecture is ideal for the public cloud, with its focus on elastic scaling with on-demand resources. In this course, you will learn how to…