Courses

2017

  • Coursera

What is news?

From Joe Grimm, et al. of Michigan State University via Coursera
  • Earning and keeping trust
    • The Power of Credibility
    • The importance of accuracy
    • Finding balance in a world that tilts
    • Global journalistic ethics
    • Transparency and dealing with mistakes
    • Is seeing believing?
    • National Press Photographers Association guidelines
    • Sensationalism in journalism
    • What is propaganda?
    • Readings in plagiarism
  • Connecting with audiences and communities
    • News Elements & Values
    • First things first: your lead
    • Point-of-view journalism
    • Frameworks for POV journalism
  • Forms of journalism and their purposes
    • Local news
    • Features
    • Sports
    • National and international news
    • Science and environmental news
    • Opinion writing
    • Advice from a journalism recruiter
  • Journalism happens in interesting ways
    • A 2-minute history of journalism
    • Engaging online audiences
    • How social media makes issues go viral
    • Crowdsourcing in journalism
    • Social Media Tools for Journalists
    • Doing social media journalism

America Through Foreign Eyes

From Anne S. Chao, Julie Fette, & Jeffrey Fleisher of Rice University via Coursera
  • America through African Eyes
  • America through Chinese Eyes
  • America through French Eyes
  • America through Mexican Eyes
  • Reversing the Gaze

2016

  • Coursera

Securing Digital Democracy

From J. Alex Halderman of University of Michigan via Coursera
  • Voting as a Security Problem
    • The Security Mindset
    • Security Requirements for Voting
    • The Living Voice
    • Early Paper Ballots
    • The Australian Ballot
    • Mechanical Voting Machines
    • Punched Card Voting
  • Computers at the Polls
    • Optical Scan Voting
    • DRE Voting Machines
    • Inside the Black Box
    • Paper as a Defense
    • Diebold
    • More Goes Wrong
  • Security Procedures and Voting Around the World
    • Voter Registration
    • Voter Authentication
    • Guarding Against Tampering
    • Field Testing
    • Case Studies
    • India’s EVMs
  • Human Factors and Internet Voting
    • Usability
    • Usable Paper Ballots
    • Accessibility
    • Absentee Voting
    • Client-side Threats
    • Server-side Threats
  • New Technology and Policy
    • Post-Election Auditing
    • End-to-End Verifiable Voting
    • Verifying an E2E Result
    • Election Policy in the U.S.
    • Testing and Certification
    • Recommendations

Serious Gaming

From Coursera
  • What are serious games?
  • Why do we play games?
    • Relationship between play and culture
    • Psychological function of play
    • Motivations for playing and gaming
  • Serious games and simulations
    • The ABCDEsim
    • Simulation at VSTEP
    • Professional simulators versus simulation games
    • Classifications
  • Persuasive gaming
  • Impact of serious games
    • Determining impact
    • Survey method
    • Experimental method
  • Future of serious games

Academic Information Seeking

From Birgitte Munk & Thomas Skov Jensen of University of Copenhagen & Technical University of Denmark via Coursera
  • Search strategy & logging
  • Mendeley usage
  • Respecting copyright

Fundamentals of Digital Image and Video Processing

  • Computer Science
  • Mathematics
  • Matlab
From Aggelos K. Katsaggelos of Northwestern University via Coursera
  • Introduction to Image and Video Processing
    • Analog v.s. Digital Systems
    • Image and Video Signals
    • Electromagnetic Spectrum
  • Signals and Systems
    • 2D and 3D Discrete Signals
    • Complex Exponential Signals
    • Linear Shift-Invariant Systems
    • 2D Convolution
    • Filtering in the Spatial Domain
  • Fourier Transform and Sampling
    • 2D Fourier Transform
    • Sampling
    • Discrete Fourier Transform
    • Filtering in the Frequency Domain
    • Change of Sampling Rate
  • Motion Estimation
    • Applications of Motion Estimation
    • Phase Correlation
    • Block Matching
    • Spatio-Temporal Gradient Methods
    • Fundamentals of Color Image Processing
  • Image Enhancement
    • Point-wise Intensity Transformations
    • Histogram Processing
    • Linear Noise Smoothing
    • Non-linear Noise Smoothing
    • Sharpening
    • Homomorphic Filtering
    • Pseudo Coloring
    • Video Enhancement
  • Image Recovery
    • Image Restoration
    • Matrix-Vector Notation for Images
    • Inverse Filtering
    • Constrained Least Squares
    • Set-Theoretic Restoration Approaches
    • Iterative Restoration Algorithms
    • Iterative Least-Squares and Constrained Least-Squares
    • Spatially Adaptive Algorithms
    • Wiener Restoration Filter
    • Wiener v.s. Constrained Least-Squares Restoration Filter
    • Wiener Noise Smoothing Filter
    • Bayesian Restoration Algorithms
    • Maximum Likelihood and Maximum A Posteriori Estimation
    • Other Restoration Applications
  • Lossless Compression
    • Elements of Information Theory
    • Run-Length Coding and Fax
    • Huffman Coding
    • Arithmetic Coding
    • Dictionary Techniques
    • Predictive Coding
  • Image Compression
    • Scalar Quantization
    • Vector Quantization
    • Differential Pulse-Code Modulation
    • Fractal Image Compression
    • Transform Coding
    • JPEG
    • Subband Image Compression
  • Video Compression
    • Motion-Compensated Hybrid Video Encoding
    • On Video Compression Standards
    • H.261, H.263, MPEG-1 and MPEG-2
    • MPEG-4
    • H.264
    • H.265
  • Image and Video Segmentation
    • Methods Based on Intensity Discontinuity
    • Methods Based on Intensity Similarity
    • Watersheds and K-Means Algorithms
    • Advanced Methods
  • Sparsity
    • Sparsity-Promoting Norms
    • Matching Pursuit
    • Smooth Reformulations
    • Applications

2015

  • Coursera
  • EdX
  • Stanford
  • Udacity

Quantitative Formal Modeling and Worst-Case Performance Analysis

  • Computer Science
  • Mathematics
From Pieter Cuijpers of European Institute of Innovation & Technology via Coursera
  • Modeling systems as token consumption/production systems
    • Drawing consumption/production models
    • Petri-nets and dataflow graphs
    • Refinement
  • Syntax and semantics
    • Syntax and semantics
    • Formalizing pictures as bipartite graphs
    • Formalizing behaviors as a prefix orders
    • Formalizing interpretations as functions
    • Formalizing the Petri-nets interpretation
    • Formalizing time and scheduling
  • Performance analysis
    • Throughput and the maximum cycle mean
    • Periodic scheduling
    • Latency analysis
    • Buffering

Knowledge-Based AI: Cognitive Systems

  • Computer Science
  • Algorithms
  • Artificial Intelligence
  • Python
From Ashok Goel of Georgia Tech via Udacity
  • Introduction to KBAI and Cognitive Systems.
    • Where Knowledge-Based AI fits into AI as a whole
    • Cognitive systems: what are they?
    • AI and cognition: how are they connected?
  • Fundamentals
    • Semantic Networks
    • Generate & Test
    • Means-Ends Analysis
    • Problem Reduction
    • Production Systems
  • Common Sense Reasoning
    • Frames
    • Understanding
    • Common Sense Reasoning
    • Scripts
  • Planning
    • Logic
    • Planning
  • Learning
    • Learning by Recording Cases
    • Incremental Concept Learning
    • Classification
    • Version Spaces & Discrimination Trees
  • Analogical Reasoning
    • Case-Based Reasoning
    • Explanation-Based Learning
    • Analogical Reasoning
  • Visuospatial Reasoning
    • Constraint Propagation
    • Visuospatial Reasoning
  • Design & Creativity
    • Configuration
    • Diagnosis
    • Design
    • Creativity
  • Metacognition
    • Learning by Correcting Mistakes
    • Meta-Reasoning
    • AI Ethics

Modeling Discrete Optimization

  • Computer Science
  • Mathematics
  • Minizinc
From Peter James Stuckey of University of Melbourne via Coursera [Certificate]
  • Modeling with Sets
  • Modeling with Functions
  • Multiple Models
  • Modeling with Predicates
  • Debugging and Improving MiniZinc Models
  • Working with Data
  • Modeling Scheduling and Packing Problems
  • Option Types
  • User Defined Functions
  • Constraint Programming
  • Mixed Integer Programming

Signals & Systems Part 01

  • Electrical Engineering
  • Mathematics
From Vikram Gadre of Indian Institute of Technology Bombay via EdX

An introduction to signals and systems

Signals and systems as seen in everyday life, and in various branches of engineering and science: electrical, mechanical, hydraulic, thermal, biomedical signals and systems as examples. Extracting the common essence and requirements of signal and system analysis from these examples.

Formalizing signals

Energy and power signals, Signal properties: periodicity, absolute integrability, determinism and stochastic character. Some special signals of importance: the unit step, the unit impulse, the sinusoid, the complex exponential, some special time-limited signals; continuous and discrete time signals, continuous and discrete amplitude signals.

Formalizing systems

System properties: linearity, additivity and homogeneity, shift- invariance, causality, memory, stability, rationality, realizability. Examples.

Continuous time and discrete time Linear Shift-Invariant (LSI) systems in detail

The impulse response and step response, convolution, input-output behavior with aperiodic convergent inputs, cascade, parallel and cascade-parallel interconnections. Characterization of causality and stability of linear shift-invariant systems. System representation through differential equations and difference equations.

Periodic and semi-periodic inputs to an LSI system

The notion of a frequency response and its relation to the impulse response, Fourier series representation, the Fourier Transform, Convolution/multiplication and their effect in the frequency domain, magnitude and phase response, Fourier domain duality.

Interactive Computer Graphics with WebGL

  • Computer Science
  • Graphics
  • Web
  • GLSL
  • JavaScript
From Edward Angel of University of New Mexico via Coursera [Certificate]

Projects

Syllabus

  • Introduction and Background
    • Course Overview
    • Outline via Examples
    • Prerequisites and References
    • A Simple WebGL Example
    • Getting Started with WebGL
    • OpenGL and WebGL
    • HTML and Browsers
    • JavaScript
  • WebGL
    • Square Program
    • Shader Execution Model
    • Square Program: The HTML file
    • Square Program: The JavaScript File
    • WebGL Primitves and Viewing
    • Tessellation and Twist
    • The Sierpinski Gasket
    • Moving to Three Dimensions
  • The Open GL Shading Language and Interaction
    • Color
    • GLSL and Shaders
    • Input and Interaction
    • Animation
    • Buttons and Menus
    • Keyboard and Sliders
  • Displaying Geometry in WebGL
    • Position Input
    • Picking
    • Matrices
    • Representation
    • Geometry 1
    • Geometry 2
    • Homogeneous Coordinates
    • Some Caveats
  • Transformations
    • Affine Transformations
    • Rotation, Translation, Scaling
    • Transformation
    • Transformations in WebGL
    • Representing a Cube
    • Animating the Cube
  • Viewing in WebGL
    • Classical Viewing
    • Positioning the Camera
    • Projection
    • Projection in WebGL
    • Orthogonal Projection Matrices
    • Perspective Projection Matrices
    • Representing and Displaying Meshes
    • Lighting and Shading
    • The Phone Lighting Model
  • Lighting, Shading and Texture Mapping
    • Lighting and Shading in WebGL
    • Polygon Shading
    • Per Vertex vs per Fragment Shading
    • Buffers in WebGL
    • Texture Mapping Overview
    • Approaches to Texture Mapping
    • WebGL Texture Mapping
  • WebGL Texture Mapping
    • WebGL Texture Objects
    • Texture Mapping to the Cube
    • Texture Mapping Variations
    • Reflection and Environment Maps
    • Bump Maps
    • Compositing and Blending
    • Imaging Applications
  • Using the GPU
    • The Mandelbrot Set
    • Generating the Mandelbrot Set in the CPU
    • Generating the Mandelbrot Set in the GPU
    • Framebuffer Objects
    • Renderbuffers
    • Render to Texture
  • Render-to-Texture Applications
    • Picking by Color
    • Buffer Pingponging
    • Diffusion Example
    • Agent-Based Models

The Rise of Superheroes and Their Impact on Pop Culture

  • Art
From Michael Uslan & Stan Lee of Smithsonian via EdX [Certificate]
  • The Secret Origins of Comic Books
    • What are the mythic origins of superheroes?
    • How did the Great Depression, gangsters, and the escalating conflict in Europe influence the earliest comics?
    • How did the first comic strips and books connect with their audience?
    • Who was the first “super” hero?
  • The Golden Age of Super-Heroes
    • What new cultural milieu did many of the original comics emerge from?
    • How did America’s entry into World War 2 forever change comic superheroes?
    • What are the stories behind the creators and their creations?
  • After the Golden Age
    • What did the end of the war mean for comics and their patriotic superheroes?
    • How were comics writers and artists affected by McCarthyism and the 50s culture of arts censorship?
    • How did Cold War paranoia seed a thrilling new generation of superheroes?
  • Superheroes of the Silver Age and The Age of Marvel
    • How did the Silver Age create new growth in the comic book industry?
    • How did Stan Lee forever change the notion of what a superhero is?
    • How was Batman’s transformation from kitschy everyman in the TV series to dark knight of justice in the graphic novels emblematic of the shift in the language of comics?
  • The Bronze Age to Today
    • How has globalization and the information age influenced a new generation of art and artists?
    • How has the popularity of superheroes in film and TV changed the nature of comic book fandom?

Final project: creation and exploration of a superhero and supervillain, The Adventurer & The Nihilist

Statistical Learning

  • Computer Science
  • Data Science
  • Mathematics
  • Statistics
  • R
From Stanford [Certificate]
  • Introduction and Overview of Statistical Learning
  • Linear Regression
  • Classification
  • Resampling Methods
  • Linear Model Selection and Regularization
  • Moving Beyond Linearity
  • Tree-based Methods
  • Support Vector Machines
  • Unsupervised Learning

Artificial Intelligence Planning

  • Computer Science
  • AI
From Gerhard Wickler, Austin Tate of University of Edinburgh via Coursera [Certificate]
  • Introduction and Planning in Context
    • What is Planning
    • Conceptual Model for Planning
    • Planning and Search
  • State-Space Search: Heuristic Search and STRIPS
    • Heuristic Search Strategies
    • A* Tree Search
    • Properties of A*
    • A* Graph Search
    • Good Heuristics
    • Structured States
    • Structured Operators
    • Domains and Problems
    • Forward Search
    • Backward Search
  • Plan-Space Search and HTN Planning
  • Graphplan and Advanced Heuristics
  • Plan Execution and Applications

2014

  • Coursera
  • EdX
  • Future Learn
  • Stanford
  • Udacity

Bioinformatics Algorithms (Part 1)

  • Biology
  • Computer Science
  • Algorithms
  • Bioinformatics
  • Python
From Pavel Pevzner, Phillip E. C. Compeau, Nikolay Vyahhi of UC San Diego via Coursera [Certificate]
  • Where in the Genome Does DNA Replication Begin?
    • Introduction to DNA Replication
    • Hidden Messages in the Replication Origin
    • Some Hidden Messages are More Surprising than Others
    • An Explosion of Hidden Messages
    • The Simplest Way to Replicate DNA
    • Asymmetry of Replication
    • Peculiar Statistics of the Forward and Reverse Half-Strands
    • Some Hidden Messages Are More Elusive than Others
    • A Final Attempt at Finding DnaA Boxes in E. Coli
    • Complications in oriC Predictions
    • Find DnaA boxes in Salmonella enterica
    • Open Problems
    • Multiple Replication Origins in a Bacterial Genome
    • Finding Replication Origins in Draft Bacterial Genomes
    • Finding Replication Origins in Archaea
    • Finding Replication Origins in Yeast
    • Computing Exact Probabilities of Patterns in a String and the Overlapping Words Paradox
    • Big-O Notation
    • Probabilities of Patterns in a String
    • The Most Beautiful Experiment in Biology
    • Chemical Basis for Directionality of DNA Strands
    • The Overlapping Words Paradox
  • How Do We Sequence Antibiotics? (Brute Force Algorithms)
    • The Discovery of Antibiotics
    • How Do Bacteria Make Antibiotics?
    • Dodging the Central Dogma
    • Sequencing Antibiotics by Shattering Them Into Pieces
    • A Brute Force Algorithm for Cyclopeptide Sequencing
    • A Faster Algorithm for Cyclopeptide Sequencing
    • How Fast Is This Algorithm?
    • Adapting Cyclopeptide Sequencing for Spectra with Errors
    • From 20 to More than 100 Amino Acids
    • The Spectral Convolution Saves the Day
    • From Simulated to Real Spectra
    • Sequence a Peptide from a Real Spectrum
    • Open Problems
    • Beltway and Turnpike Problems
    • Sequencing Standard Subpeptides
    • Sequencing Cyclic Peptides in Primates
    • Gause and Lysenkoism
    • Discovery of Codons
    • Quorum Sensing
    • Molecular Mass
    • Selenocysteine and Pyrrolysine
    • A Pseudo-polynomial Algorithm for the Turnpike Problem
  • Which DNA Patterns Act As Cellular Clocks? (Randomized Algorithms)
    • Do We Have a “Clock Gene”?
    • Motif Finding Is More Difficult Than You Think
    • Implanted Motif Problem
    • Scoring Motifs
    • From the Motif Finding Problem to the Median String Problem
    • Greedy Motif Search
    • Motif Finding Meets Oliver Cromwell
    • Randomized Motif Search
    • How Can a Randomized Algorithm Perform So Well?
    • Gibbs Sampling
    • Gibbs Sampler in Action
    • Complications in Motif Finding
    • How Does Tuberculosis Hibernate to Hide from Antibiotics?
    • Identify the DosR Motif
    • Gene Expression
    • DNA Arrays
    • Buffon’s Needle (The First Randomized Algorithm)
  • How Do We Assemble Genomes? (Graph Algorithms)
    • Exploding Newspapers
    • Genome Assembly Is More Difficult Than You Think
    • The String Reconstruction Problem
    • String Reconstruction As a Walk Through the Overlap Graph
    • Another Graph…
    • …Another Walk
    • Seven Bridges of Konigsberg
    • Eulerian Cycles and Balanced Graphs
    • Euler’s Theorem
    • Universal String Problem
    • From Euler’s Algorithm to an Algorithm for Finding Eulerian Cycles
    • Assembling Read-Pairs
    • De Bruijn Graphs Face the Harsh Realities of Assembly
    • Assembling a Real Genome
    • A Short History of Read Generation Technologies
    • Repeats in the Human Genome
    • Graphs
    • Icosian Game
    • Tractable versus Intractable Problems
    • Leonhard Euler
    • Seven Bridges of Kaliningrad
    • Inferring Multiplicities of Edges in de Bruijn Graphs
  • How Do We Compare Biological Sequences? (Dynamic Programming Algorithms)
    • Cracking the Non-Ribosomal Code
    • What is Sequence Alignment?
    • The Manhattan Tourist Problem
    • Sequence Alignment is the Manhattan Tourist Problem in Disguise
    • The Change Problem
    • The Manhattan Tourist Problem Revisited
    • From Manhattan to an Arbitrary DAG
    • Backtracking in the Alignment Graph
    • Scoring Alignments
    • Local Versus Global Sequence Alignment
    • The Myriad Faces of Sequence Alignment
    • Penalizing Insertions and Deletions in Sequence Alignment
    • Space-Efficient Sequence Alignment
    • Multiple Sequence Alignment
    • Reconstructing the Non-Ribosomal Code
    • Non-Ribosomal Code
    • Topological Orderings in Graphs
    • PAM Scoring Matrices
    • Divide-and-Conquer Algorithms
    • Multiple Scoring Alignment
  • Are There Fragile Regions in the Human Genome? (Combinatorial Algorithms)
    • Of Mice and Men
    • The Random Breakage Model of Chromosome Evolution
    • Modeling Chromosomes by Signed Permutations
    • Reversal Distance
    • Sorting by Reversals: Greed is Good But Not Great
    • Breakpoints
    • Rearrangements in Tumor Genomes
    • From Unichromosomal to Multichromsomal Genomes
    • Two-Breaks
    • Breakpoint Graphs
    • Rearrangement Hotspots in the Human Genome
    • Constructing Synteny Blocks

Exploring Neural Data

  • Biology
  • Neuroscience
  • Computer Science
  • Bioinformatics
  • Python
  • numpy
  • matplotlib
From Monica Linden, David Sheinberg of Brown University via Coursera [Certificate]
  • What does the brain tell us? Exploring neural responses
    • Neurons
    • Anatomy of the Nervous System
    • Orienting to the Brain
    • Approaches to Neuroscience
    • Single Unit Electophysiology
    • Spike Sorting
  • Why are humans unique? Exploring motor control
    • Motor System
    • Rate Coding
    • Interview with John Donoghue
    • Python: Histograms
    • Python: Polar Plots
    • Python: Curve Fitting
    • Dimensionality Reduction
  • How do we make sense of our senses? Exploring visual objects
    • Visual System
    • Eye Movements
    • Interview with David Sheinberg
    • Python: Data Frames
    • Python: Integrating Images into Plots
    • Animation of Eye Movements
    • Who Owns Data?
  • What happens when we sleep? Exploring brain states
    • Brain Rhythms
    • Waves
    • Interview with Mary Carskadon
    • Python: Power Spectra and Spectrograms
    • New and Emerging Techniques
  • Delving Deeper: Final Projects
    • Donoghue Multi-Electrode Motor Cortex
    • Carskadon Sleep EEG
    • Sheinberg Visual Processing
    • Collaborative Research in Computational Neuroscience
    • National Sleep Research Resource

From GPS and Google Maps to Spatial Computing

  • Mathematics
  • Computer Science
  • GIS
  • Java
From Shashi Shekhar and Brent Hecht of University of Minnesota via Coursera [Certificate]
  • Introduction to Spatial Computing
    • Defining Spatial Computing
    • Interviews with Johannes Schoning, Loren Terveen, Martin Raubal
  • Spatial Query Languages
    • SQL
    • Spatial Extensions
    • Multi-table Spatial Queries
    • Trends in Spatial Query Languages
  • Spatial Networks
    • Conceptual and Mathematical Models
    • SQL Extensions: CONNECT and RECURSIVE
    • Storage of Data Structures
    • Algorithms for Connectivity
    • Algorithms for Shortest Path
    • Interviews with Dev Oliver, Betsy George
  • Spatial Data Mining
    • Spatial Pattern Families
    • Spatial Data Types and Relationships
    • Limitation of Traditional Statistics
    • Location Prediction Models
    • Hotspots
    • Spatial Outliers
    • Colocations and Co-occurrences
  • Volunteered Geographic Information
    • Producing VGI
    • Pros and Cons of VGI
    • WikiBrain
    • Interview with Michael Goodchild
  • Positioning
    • GPS
    • Wifi and Cellular Positioning
    • Content-based Positioning
    • Geoparsing
    • Location-field Positioning
  • Cartography and Geographic Human-Computer Interaction
    • Reference Maps
    • Thematic Maps
    • Spatialization
  • Future Directions in Spatial Computing
    • Spatial Databases
    • Data Mining
    • Advances in Cartography
    • Advances in Positioning

Towards Scottish Independence? Understanding the Referendum

From Alan Convery of The University of Edinburgh via Future Learn
  • Why is Scotland having a referendum?
  • What does ‘Yes’ mean?
  • What does ‘No’ mean?
  • What do Scots think?
  • The Day After
  • What Next?

Introduction to Forensic Science

  • Science
From Roderick Bates of Nanyang Technical University via Coursera [Certificate]
  • Introduction to Forensic Science
    • Basic Ideas in Forensic Science
    • What is Forensic Science
    • Application of Forensic Science
    • Limits of Forensic Science
    • Locard’s Exchange Principle
    • Roberto Calvi Case
    • Buck Ruxton & the Jigsaw Murders Case
    • Forensic Laboratories
    • Reconstruction & Re-enactment
    • The Woodchipper Murder Case
  • Chemical Analysis in Forensic Science
    • Introduction to Atomic Structure
    • Elemental Analysis
    • Analysis of Microscopic Objects
    • Napolean Case
    • JFK Assassination Case
    • Introduction to Chromatography
    • GC & HPLC
    • Infrared Spectroscopy
    • Mass Spectroscopy
  • Time of Death
    • Recent deaths
    • Decomposing Bodies: Putrefaction, Forensic Entomology
    • Analysis of Skeletal Remains
    • Ötzi Case
  • Blood
    • Blood Biology
    • Tests for Blood
    • Precipitin Technology
    • Blood Spatter Analysis
    • Lord Lucan Case
  • DNA
    • Introduction to DNA
    • Techniques used in DNA Profiling
    • Polymerase Chain Reaction (PCR)
    • Short Tandem Repeats (STRs)
    • Colin Pitchfork Case
    • Cold Cases
    • Early Uses of DNA Profiling
    • Mitochondrial DNA
    • DNA Profiling of Other Species
    • Peter Falconio & Joanne Lees Case
  • Fingerprinting
    • History of Fingerprinting
    • Principles of Fingerprinting
    • Visualising Fingerprints
    • Brandon Mayfield Case Summary
  • Polymers & Fibers
    • Introduction to Polymers & Fibers
    • Natural Polymers
    • Hair
    • Wayne Williams Case
    • Sarah Payne Case
  • Firearms
    • Internal Ballistics
    • Gun Shot Residue
  • Narcotics
    • Types of Illegal Drugs
    • Cocaine
    • Opium, Morphine & Heroin
    • Synthetic Drugs
    • Analogs
    • Detection and Identification of Drugs
  • Toxicology
    • Introduction to Toxicology
    • Deliberate & Accidental Poisoning
    • Toxins & Biological Poisons
    • LD50
    • Forensic Toxicology
    • Alcohol
    • Inorganic Poisons - Arsenic
    • Inorganic Poisons - Thallium
    • Inorganic Poisons - Barium
    • Nerve Agents
    • Georgi Markov Case
    • Alexander Litvinenko Case
  • Case Studies
    • King Richard III Case
    • Annie Le Case
    • June Devaney Case
    • JonBonent Ramsey
    • The Unabomber Case
    • Psychological Profiling
    • The Soham Murders Case
    • Dr. Crippen Case

Questionnaire Design for Social Surveys

  • Social Science
  • Statistics
From Frederick Conrad and Frauke Kreuter of University of Michigan via Coursera [Certificate]
  • Overview on standardized interviewing
    • Different types of questions
    • Measurement error in questions: Bias and variance
    • Standardized and conversational interviewing
    • From specifying a concept to asking questions
  • Response Proces
    • Comprehension
    • Retrieval
    • Judgment
    • Response
  • Asking Factual Questions
    • Facts and quasi facts
    • Memory and recall
    • Asking sensitive questions
    • Mode, privacy and confidentiality
  • Measuring Attitudes
    • Context effects in attitude questions
    • Use of different scales
    • Offering don’t know options
    • Response order effects
  • Testing Questionnaires
    • Expert reviews and focus groups
    • Cognitive interviews
    • Behavior Coding
    • Quantitative techniques
  • Putting it all together
    • The questionnaire from start to finish
    • Things to put at the end
    • Mode Choice: Implementations for layout
    • Self-administered questionnaires

Experimentation for Improvement

  • Science
  • Data Science
  • Statistics
  • R
From Kevin Dunn of McMaster University via Coursera [Certificate]
  • Week 1: Why experiment? We consider experiments that can improve processes in your life, and those of the people around you. We explore examples of experiments and case studies of what can go wrong in an experiment as well. Also: demonstrations of how experiments should be run when changing two variables (factorial experiments).
  • Week 2: Full factorials in two variables and three variables (also called “factors”), including the study of categorical variables.
  • Week 3: Using least squares (regression) models to analyze data from factorial experiments.
  • Week 4: Half fractions and fractional factorials, with real case studies and examples. This module is being time-warped over two actual weeks.
  • Week 5: Using response surface methods to optimize a system.
  • Week 6: Bringing all the prior topics together; in-depth case studies.

Creative Programming for Digital Media & Mobile Applications

  • Computer Science
  • Art
  • Processing
From Mick Grierson, Marco Gillies, & Matthew Yee-King of University of London via Coursera [Certificate]
Course Projects
Topics
  • Lesson 1: Introduction: sonic painter
    • Using Processing
    • Setting up your Android or iOS device
    • Getting started with Sound, Graphics and Interaction
  • Lesson 2: Interactive D/VJ app
    • Creating a basic interface
    • Controlling sound playback with your interface
    • Creating images and displaying them on the screen
    • Image sequences and animation
  • Lesson 3: Audiovisualiser
    • Analysing audio signals
    • Using algorithms to create graphics
    • Controlling graphics parameters with audio signals
    • Using different colorspaces
    • Controlling media with accelerometers
  • Lesson 4: Angrydroids: Creating a Physics Game
    • Implementing a basic 2D game
    • Understanding and using physics engines
    • Creating in-game sound effects
    • Creating basic graphics
  • Lesson 5: Instaspam: Image manipulation and social media sharing
    • Accessing the camera on a mobile device.
    • Manipulating images using tints and overlays
    • Creating a Graphic User Interface with sliders and buttons
    • Sharing media using web services
    • Creating a facebook app
    • Creating a web app on your server
  • Lesson 6: Music machine
    • Creating a programmable sequencer
    • Making a basic drum machine
    • Making a basic synthesiser
    • Adding a GUI
    • Putting it all together

Databases

  • Computer Science
  • Data Science
  • SQL
  • XPath
  • XQuery
  • XSLT
  • DTD
  • JSON
  • JSONSchema
From Jennifer Widom of Stanford [Certificate]
  • Data Models
    • Introduction and Relational Databases
    • XML Data
    • JSON Data
  • Querying Relational Databases
    • Relational Algebra
    • SQL
  • Querying XML Databases
    • XPath and XQuery
    • XSLT
  • Database Design
    • Relational Design Theory
    • Unified Modeling Language
  • SQL Advanced Features
    • Indexes and Transactions
    • Constraints and Triggers
    • Views and Authorization
    • On-Line Analytical Processing
    • Recursion in SQL

Logic: Languages and Information 2

  • Logic
  • Philosophy
  • Computer Science
  • Prolog
From Greg Restall & Jen Davoren of University of Melbourne via Coursera [Certificate]
  • The Syntax of Predicate Logic; Translations using quantifiers
  • Models for Predicate Logic; Classifying propositions and arguments; Finite and Infinite Domains
  • Tree Proofs for Predicate Logic; Soundness and Completeness
  • Identity; Functions; Counting
  • Simplifying Digital Circuits with Timing
  • Definite Descriptions and Existence
  • Databases, Resolution and Prolog
  • Quantificational Scope
  • Limits, Continuity and Quantifier Alternation

Street-Fighting Math

  • Mathematics
From Sanjoy Mahanjan & Isaac Chuang of MIT via EdX [Certificate]
  • Dimensional Analysis
  • Easy Cases
  • Lumping
  • Pictorial Proofs
  • Taking Out the Big Part
  • Analogy

HTML5 Game Development

  • Computer Science
  • Web
  • Games
  • HTML5
  • Javascript
  • Canvas
From Colt McAnlis & Peter Lubbers of Udacity [Certificate]
  • Optional HTML/Javascript crash course
  • Introduction to Canvas rendering
  • Atlases
  • Map rendering
  • Basic Input, handling events
  • The entity hierarchy
  • Box2D, and using external libraries
  • Adding sound
  • Asynchronous Loading

Logic: Languages and Information 1

  • Logic
  • Philosophy
  • Computer Science
  • Prolog
From Greg Restall & Jen Davoren of University of Melbourne via Coursera [Certificate]
  • Language and Models of Propositional Logic
  • Proof Trees for Propositional Logic
  • Combinational Digital Systems
  • Vagueness
  • Implication and Implicature
  • Propositional Logic Programming

Paradigms of Computer Programming

  • Computer Science
  • Programming Languages
  • Oz
From Peter Van Roy of Louvain via EdX [Certificate]
  • Recursion/invariants
  • Lists/patterns
  • Higher-order/records
  • Trees
  • Semantics
  • State/abstraction
  • OOP
  • Java/exceptions
  • Dataflow
  • Multiagent Dataflow

Social and Economic Networks: Models and Analysis

  • Computer Science
  • Mathematics
  • Networks
  • Graph Theory
From Matthew O. Jackson of Stanford via Coursera [Certificate]
  • Introduction, Empirical Background and Definitions:
    • Examples of Social Networks and their Impact
    • Definitions
    • Measures and Properties: Degrees, Diameters
    • Small Worlds
    • Weak and Strong Ties
    • Degree Distributions
  • Background, Definitions, and Measures Continued:
    • Homophily
    • Dynamics
    • Centrality Measures: Degree, Betweenness, Closeness, Eigenvector, and Katz-Bonacich
    • Erdos and Renyi Random Networks: Thresholds and Phase Transitions
  • Random Networks
    • Poisson Random Networks
    • Exponential Random Graph Models
    • Growing Random Networks
    • Preferential Attachment and Power Laws
    • Hybrid models of Network Formation
  • Strategic Network Formation
    • Game Theoretic Modeling of Network Formation
    • The Connections Model
    • The Conflict between Incentives and Efficiency
    • Dynamics
    • Directed Networks
    • Hybrid Models of Choice and Chance.
  • Diffusion on Networks
    • Empirical Background
    • The Bass Model
    • Random Network Models of Contagion
    • The SIS model
    • Fitting a Simulated Model to Data
  • Learning on Networks
    • Bayesian Learning on Networks
    • The DeGroot Model of Learning on a Network
    • Convergence of Beliefs
    • The Wisdom of Crowds
    • How Influence depends on Network Position
  • Games on Networks
    • Network Games
    • Peer Influences: Strategic Complements and Substitutes
    • the Relation between Network Structure and Behavior
    • A Linear Quadratic Game
    • Repeated Interactions and Network Structures

2013

  • Coursera
  • DePaul
  • Udacity

Principles of Reactive Programming

  • Computer Science
  • Functional Programming
  • Scala
  • Akka
  • ScalaCheck
From Erik Meijer, Martin Odersky, Roland Kuhn of École Polytechnique Fédérale de Lausanne via Coursera [Certificate]
  • Monads
  • Functional Programs in a Stateful World
  • Futures
  • Observables: Event Streams
  • Actors
  • Supervisors
  • Distributed Actors

Master's Thesis

  • Computer Science
  • Programming Languages
  • Forensics
  • Coq
From Corin Pitcher of DePaul

Introduction to Public Speaking

From Matt McGarrity of University of Washington via Coursera
  • Speaking Situations
  • Rhetoric, Literacy and Orality
  • Performance and Communication Orientation
  • Impromptu Speeches
  • Outlining, and flowing
  • Developing, Arranging, and Phrasing Main Points
  • Using Evidence
  • Speech Structure
  • Pacing and Pausing
  • Movement
  • The Informative Speech
  • Visual Aids
  • Style for Clarity and Ethos
  • Persuasive Speech
  • Argumentative Congruency
  • Framing Arguments Strategically
  • Using Language Stylistically

Discrete Optimization

  • Computer Science
  • Mathematics
  • Python
  • Minizinc
From Pascal Van Hentenryck of University of Melbourne via Coursera [Certificate]
  • Constraint Programming
  • Local Search
  • Linear & Integer Programming

Malicious Software and its Underground Economy: Two Sides to Every Story

  • Computer Science
  • Security
  • Assembly
From Lorenzo Cavallaro of University of London International Programmes via Coursera [Certificate]
  • Malicious Software
  • Botnets & Detection
  • Rootkits
  • Evolution of Malware and AV
  • Reverse Engineering
  • Polymorphism, Code Obfuscation
  • Static Analysis
  • Dynamic Analysis
  • Mobile Malware
  • Specialized Cybercrime
  • Pay-per-Install, Exploit-as-a-service
  • China’s Online Underground Economy
  • The Cost of Cybercrime

Introduction to Artificial Intelligence

  • Computer Science
  • Mathematics
  • Algorithms
  • AI
  • Machine Learning
From Sebastian Thrun & Peter Norvig of Stanford University via Udacity [Certificate]
  • Overview of AI
  • Statistics, Uncertainty, and Bayes networks
  • Machine Learning
  • Logic and Planning
  • Markov Decision Processes and Reinforcement Learning
  • Hidden Markov Models and Filters
  • Adversarial and Advanced Planning
  • Image Processing and Computer Vision
  • Robotics and robot motion planning
  • Natural Language Processing and Information Retrieval

Introduction to Data Science

  • Computer Science
  • Statistics
  • Data Science
  • Analytics
  • Python
  • Hive
From Bill Howe of University of Washington via Coursera [Certificate]
  • Data science articulated, data science examples, history and context, technology landscape
  • Databases and the relational algebra
  • MapReduce, Hadoop, relationship to databases, algorithms, extensions, language; key-value stores and NoSQL; tradeoffs of SQL and NoSQL
  • Data cleaning, entity resolution, data integration, information extraction
  • Basic statistical modeling, experiment design
  • Introduction to Machine Learning, supervised learning, decision trees/forests, simple nearest neighbor
  • Unsupervised learning: k-means, multi-dimensional scaling
  • Visualization, visual data analytics
  • Ethics, privacy
  • Graph Analytics: PageRank, community detection, recursive queries, iterative processing

Distributed Systems II

  • Computer Science
  • Distributed Systems
  • Scala
  • Akka
From Ljubomir Perkovic of DePaul

Master's Independent Study II

  • Computer Science
  • Languages
  • Security
  • Coq
  • Gecode
From Corin Pitcher and Radha Jagadeesan of DePaul

Natural Language Processing

  • Computer Science
  • Natural Language Processing
  • Statistics
  • Machine Learning
  • Algorithms
  • Python
From Michael Collins of Columbia University via Coursera [Certificate]
  • Language modeling
  • Trigram Language Models
  • Tagging Problems
  • Hidden Markov Models, Viterbi Algorithm
  • Probabilistic Context-Free Grammars, CKY
  • Lexicalized PCFGs
  • Parse Trees
  • IBM Models 1 and 2 for Machine Translation, EM Algorithm
  • Phrase-Based Translation Models, Decoding Algorithm
  • Log-linear Models
  • Maximum-Entropy Markov Models
  • Conditional Random Fields
  • Forward Backward Algorithm
  • Naive Bayes Model
  • Inside Outside Algorithm

Aboriginal Worldviews and Education

  • Sociology
  • History
From Jean-Paul Restoule of University of Toronto via Coursera [Certificate]
  • Comparing worldviews
  • Aboriginal Education, past, present and future
  • Indigenous ways of knowing
  • Stereotyping and cultural appropriation
  • The relationship between First Nations and Settlers

Algorithms: Design and Analysis, Part 2

  • Computer Science
  • Mathematics
  • Algorithms
  • Graph Theory
  • Lua
From Tim Roughgarden of Stanford via Coursera [Certificate]
  • Week 1
    • Two Motivating Applications (Sequence Alignment and Internet Routing)
    • Selected Review from Part I (Optional)
    • Introduction to Greedy Algorithms
    • A Scheduling Application
    • Prim’s Minimum Spanning Tree Algorithm
  • Week 2
    • Kruskal’s Minimum Spanning Tree Algorithm
    • Clustering
    • Advanced Topics on the Union-Find Data Structure (Advanced + optional, to be posted later)
    • Huffman Codes
  • Week 3
    • Dynamic Programming and Applications
    • The Knapsack Problem
    • Sequence Alignment
    • Optimal Search Trees
  • Week 4
    • More Dynamic Programming and Shortest Paths
    • Single-Source Shortest Paths, Revisited
    • The Bellman-Ford Algorithm
    • Internet Routing
    • The All-Pairs Shortest Paths Problem
    • The Floyd-Warshall Algorithm
    • Johnson’s Algorithm
  • Week 5
    • P, NP, and What They Mean
    • Reductions Between Problems
    • NP-Complete Problems
    • The P vs. NP Problem
    • Solvable Special Cases of NP-Complete Problems
    • Smarter (But Still Exponential-Time) Search Algorithms for NP-Complete Problems
    • The Traveling Salesman Problem
  • Week 6
    • Heuristics with Provable Guarantees
    • Greedy and Dynamic Programming Heuristics for the Knapsack Problem
    • Local Search: General Principles, Max Cut, and 2SAT
    • Approximation Algorithms
    • Local Search

Master's Independent Study I

  • Computer Science
  • Languages
  • Security
  • C++
From Corin Pitcher and Radha Jagadeesan of DePaul

Parallel Algorithms

  • Computer Science
  • Distributed Systems
  • Algorithms
  • Python
  • MPI
  • OpenCL
From Massimo Dipierro of DePaul

Computing for Data Analysis

  • Computer Science
  • Statistics
  • Mathematics
  • Analytics
  • R
From Roger Peng of Johns Hopkins Bloomberg School of Public Health via Coursera [Certificate]
  • Data Types
  • Vector Operations
  • Input/Output
  • Functional Programming
  • Debug Tools
  • Plotting, Graphs
  • Regular Expressions
  • Classes, Object-Oriented R

2012

  • Caltech
  • Coursera
  • DePaul
  • EdX
  • Udacity

Software as a Service II

  • Computer Science
  • SaaS
  • Ruby
  • Rails
From Armando Fox and David Patterson of Berkely via EdX [Certificate]
  • Advanced Rails
  • Legacy Code
  • Teams
  • Version Control
  • Design Patterns
  • S.O.L.I.D.
  • Javascript
  • DevOps, Monitoring
  • Performance and Security

Learning From Data

  • Computer Science
  • Mathematics
  • Machine Learning
  • R
  • Octave
  • Python
From Yaser S. Abu-Mostafa of Caltech
  • The Learning Problem, Perceptron
  • Is Learning Feasible?
  • The Linear Model I, Linear Regression
  • Error and Noise
  • Training versus Testing
  • Theory of Generalization
  • The VC Dimension, Growth Function
  • Bias-Variance Tradeoff
  • The Linear Model II, Nonlinear Transforms, Logistic Regression
  • Neural Networks, Stochastic Gradient Descent
  • Overfitting
  • Regularization
  • Validation, Cross Validation
  • Support Vector Machines
  • Kernel Methods, Soft-Margin SVMs
  • Radial Basis Functions
  • Occam’s Razor, Sampling Bias, Data Snooping
  • Bayesian Learning, Aggregation/Ensemble Learning/Boosting

Software as a Service I

  • Computer Science
  • SaaS
  • Ruby
  • Rails
From Armando Fox and David Patterson of Berkely via EdX [Certificate]
  • SaaS Architecture
  • SOA and Cloud Computing
  • Ruby
  • Rails
  • Behavior Driven Development Design
  • Test Driven Development

Computer Security

  • Computer Science
  • Security
  • Scala
From Radha Jagadeesan of DePaul
  • Cryptography
  • Access Control
  • Worms, Malicious Software
  • Legal/Ethical
  • Authentication, Passwords
  • Accountability
  • Intrusion Detection & Prevention
  • Software Security

Research Colloquium II

  • Computer Science
From Peter Hastings of DePaul
  • Tweaking Games as a Research Tool
  • Metonymies in Computer Science Education
  • Type Checking in the Features of Product Lines
  • Using Graph Theory to Aid Protein Folding
  • Ideal Game Features
  • Differential Context Relaxation in Recommendation Systems
  • Games in Higher Education
  • Traceability and Verification
  • Column-oriented Databases for Analytics
  • Content Management Systems as Expert Systems
  • Machine Learning Techniques to Show Student Comprehension
  • Relationships Between Design Patterns in Practice

Introduction to Sustainability

  • Sustainability
  • Environmentalism
From Jonathan Tomkin of University of Illinois via Coursera [Certificate]
  • Week 1
    • Introduction & Population
    • Demographic transition
    • Neo-Malthusians
    • J-curves and S-curves
    • Role of the Developing world
  • Week 2
    • Population
    • The disappearance of the third world
    • Demographics
    • Population pyramids
    • Population projections
    • Transition in world population
  • Week 3
    • Ecosystems, Extinction & Tragedy of the Commons
    • Hardin Model
    • Objections to the Hardin Model
    • ToC Solutions
  • Week 4
    • Climate Change
    • The climate of the near future: hot, hotter, or hottest?
    • Weather vs. Climate
    • Proxy and data climate evidence
    • Climate projections
  • Week 5
    • Energy
    • Peak Oil/Fossil Fuel
    • Energy survey, availability, and density
    • EROI
  • Week 6
    • Agriculture and Water
    • The hydrologic cycle
    • Patterns of water use
    • Green Revolution
    • GM crops and the precautionary principle
  • Week 7
    • Environmental Economics and Policy
    • Can economists lead the way to sustainability?
    • Environmental Evaluation
    • Project and policy evaluation
    • Incentive policies
  • Week 8
    • Measuring sustainability
    • Ethics and Culture
    • The long view
    • Carbon Footprints
    • Sustainability
    • certification
    • Energy and water efficiency metrics Sustainability Ethics
    • Environmental ideology and conservation movements

Gamification

  • Gamification
  • Psychology
From Kevin Werbach of University of Pennsylvania via Coursera [Certificate]
  • Week 1
    • What is Gamification?
    • Introduction
    • Course overview and logistics
    • Gamification defined
    • Why study gamification?
    • History of gamification
    • Categories and examples
  • Week 2
    • Games
    • Gamification in context
    • What is a game?
    • Games and Play
    • Video games
    • It’s Just a Game?
  • Week 3
    • Game Thinking
    • Why Gamify
    • Thinking Like a Game Designer
    • Design rules
    • Tapping the Emotions
    • Anatomy of Fun
    • Finding the Fun
  • Week 4
    • Game Elements
    • Breaking Games Down
    • The pyramid of elements
    • The PBL Triad
    • Limitation of Elements
    • Bing Gordon interview
  • Week 5
    • Psychology and Motivation (I)
    • Gamification as motivational design
    • Behaviorism
    • Behaviorism in gamification
    • Reward structures
    • Reward schedules
  • Week 6
    • Psychology and Motivation (II)
    • Limits of behaviorism
    • Dangers of behaviorism
    • Extrinsic and intrinsic rewards
    • How rewards can de-motivate
    • Self-determination theory
    • First half wrap-up
  • Week 7
    • Gamification Design Framework
    • Design Thinking
    • D1/2: Business objectives/target behaviors
    • D3: Players
    • D4: Activity loops
    • D5/6: Don’t forget the fun and deploy
  • Week 8
    • Design Choices
    • Two approaches to gamification
    • Is Gamification right for me?
    • Designing for collective good
    • Designing for happiness
    • Amy Jo Kim interview
  • Week 9
    • Enterprise Gamification
    • Enterprise applications
    • Workplace motivations
    • The game vs. the job
    • Playbor
    • Daniel Debow interview
  • Week 10
    • Social Good and Behavior Change
    • Gamification for good?
    • Social good applications
    • Social good techniques
    • Behavior change
    • Susan Hunt Stevens interview
  • Week 11
    • Critiques and Risks
    • Pointsification
    • Exploitationware
    • Gaming the game
    • Legal issues
    • Regulatory issues
  • Week 12
    • Beyond the Basics
    • Inducement prizes
    • Virtual economies
    • Collective action
    • The future of gamification
    • Course review and wrap-up

Health Policy and the Affordable Care Act

  • Health
  • Policy
From Ezekiel Emanuel of University of Pennsylvania via Coursera [Certificate]
  • Access to health care
  • Quality of health care
  • Cost of US health care in the international context
  • Growth in US health care costs
  • Health care malpractice
  • History of health care reform
  • The ACA and access to health care
  • The ACA and cost control
  • The ACA and health care delivery
  • The ACA and innovation

Algorithms

  • Computer Science
  • Mathematics
  • Algorithms
  • Graph Theory
  • Python
From Michael Littman of Rutgers University via Udacity [Certificate]
  • Multiplication Algorithms, Recurrence Relations
  • Big-Theta, Graphs, Growth Rates
  • Basic Graph Algorithms
  • It’s Who You Know
  • Strong and Weak Bonds
  • Hardness of Network Problems

Algorithms: Design and Analysis, Part 1

  • Computer Science
  • Mathematics
  • Algorithms
  • Graph Theory
  • Lua
From Tim Roughgarden of Stanford via Coursera [Certificate]
  • Week 1
    • Introduction
    • Merge Sort
    • Asymptotic Notation
    • Guiding Principles of Algorithm Analysis
    • Divide & Conquer Algorithms
  • Week 2
    • Master Method
    • QuickSort
  • Week 3
    • Final Thoughts on Sorting & Searching
    • Introduction to Graph Algorithms : Graph Representations & Mininum Cuts in Graphs
    • Randomized Selection
    • Karger’s Minimum Cut Algorithm
  • Week 4
    • Graph Search: Breadth-First Search, Depth-First Search
    • Applications: Topological Sort, Connected Components
    • Strongly Connected Components
  • Week 5
    • Dijkstra’s Shortest-Path Algorithm
    • Data structures and how to use them
    • Heaps
    • Hash Table Basics
  • Week 6
    • More Hash Tables (Advanced Topics)
    • Bloom Filters
    • Balanced Binary Search Trees

Machine Learning

  • Computer Science
  • Mathematics
  • Machine Learning
  • Octave
From Andrew Ng of Stanford via Coursera [Certificate]
  • Week 1
    • Introduction
    • Linear Regression with One Variable
    • Linear Algebra Review
  • Week 2
    • Linear Regression with Multiple Variables
    • Octave Tutorial
  • Week 3
    • Logistic Regression
    • Regularization
  • Week 4
    • Multi-Class Classification
    • Neural Networks: Representation
  • Week 5
    • Neural Networks: Learning
  • Week 6
    • Bias-Variance
    • Advice for Applying Machine Learning
    • Machine Learning System Design
  • Week 7
    • Support Vector Machines (SVMs)
  • Week 8
    • Clustering (K-Means and PCA)
    • Dimensionality Reduction
  • Week 9
    • Anomaly Detection
    • Recommender Systems
  • Week 10
    • Large-Scale Machine Learning
    • Example of an application of machine learning

Applied Cryptography

  • Computer Science
  • Mathematics
  • Theory
  • Cryptography
  • Security
  • Python
From David Evans of University of Virginia via Udacity [Certificate]
  • Perfect Ciphers
  • Symmetric Encryption
  • Key Exchange
  • Asymmetric Encryption
  • Public Key Protocols
  • Using Cryptographic Primitives
  • Secure Computation

Distributed Systems I

  • Computer Science
  • Distributed Systems
  • Networking
  • Java
From Elliot Clark of DePaul
  • Processes: Threads, Servers, Code Migration
  • Communication: RPCs, Messages, Streams
  • Clocks: Synchronization, Lamport Clocks, Vector Clocks
  • Mutual Exclusion
  • Election Algorithms
  • Replication
  • Fault Tolerance
  • Distributed Commits

Cryptography I

  • Computer Science
  • Mathematics
  • Theory
  • Cryptography
  • Security
  • Python
  • gmpy
From Dan Boneh of Stanford via Coursera [Certificate]
  • Week 1
    • Background and overview.
    • One-time encryption using stream ciphers.
    • Semantic security.
  • Week 2
    • Block ciphers and pseudorandom functions.
    • Chosen plaintext security and modes of operation.
    • The DES and AES block ciphers.
  • Week 3
    • Message integrity. CBC-MAC, HMAC, PMAC, and CW-MAC.
    • Collision resistant hashing.
  • Week 4
    • Authenticated encryption. CCM, GCM, TLS, and IPsec.
    • Key derivation functions.
    • Odds and ends: deterministic encryption, non-expanding encryption, and format preserving encryption.
  • Week 5
    • Basic key exchange: Diffie-Hellman, RSA, and Merkle puzzles.
    • A crash course in computational number theory.
    • Number theoretic hardness assumptions.
  • Week 6
    • Public key encryption.
    • Trapdoor permutations and RSA.
    • The ElGamal system and variants.

Cryptology

  • Computer Science
  • Cryptography
  • Security
  • Mathematics
  • Python
From Marcus Schaefer of DePaul
  • Classic Ciphers (Shift Cipher, Vigenere, Hill Cipher, etc.)
  • Cryptanalysis, Statistics, Mathematical Foundations
  • Modern Block Ciphers (DES, AES) and attacks (differential cryptanalysis)
  • Public Key Cryptography (DH Key exchange, RSA, ElGamal) and attacks

2011

  • DePaul

Research Colloquium I

  • Computer Science
From Jose Zagal of DePaul
  • NYSE Network Architecture
  • Graph Theory and Crossings
  • Using Simple Algorithms to Replace “Amateurs”
  • Data Visualization in Practice
  • Technology as Social Ill
  • Games to Teach Logical Thinking
  • Technology to Solve Social Ills
  • Alternative Accessibility Constraints
  • Imaging Databases and the Limits of Accuracy

Theory of Computation

  • Computer Science
  • Theory
From Iyad Kanj of DePaul
  • Turing Machines
  • Decidability and Reducibility
  • Advanced Topics in Computability Theory
  • Time and Space Complexity
  • Intractability
  • Advanced Topics in Complexity Theory

Architecture and Design for Multiplayer Games

  • Computer Science
  • Game Development
  • Networking
  • C++
  • C#
From Edward Keenan of DePaul
  • Visual Studio, C#, Perforce, and XNA
  • Serialization, Data Alignment
  • Socket Programming, TCP and UDP
  • Event Queues for Game Engines
  • In-Game Lobbies
  • Microsoft Live Networking

Object-Oriented Software Development

  • Computer Science
  • Software Engineering
  • Java
From Radha Jagadeesan of DePaul
  • Basics
  • Objects as Functions
  • Architectural Patterns
  • Structural Patterns
  • Observer/Visualizing a Simulation
  • Simulation, Null Objects, Proxies
  • Object Creation
  • Subclassing and Template Method
  • Iterator and Visitor

2010

  • DePaul

Formal Semantics of Programming Languages

  • Computer Science
  • Languages
  • Coq
From James Riely of DePaul
  • Basics: Functional Programming and Reasoning About Programs
  • Lists: Products, Lists and Options
  • Poly: Polymorphism and Higher-Order Functions
  • Logic: Logic in Coq
  • Ind: Propositions and Evidence
  • Imp: Simple Imperative Programs
  • Equiv: Program Equivalence
  • Hoare: Hoare Logic
  • Smallstep: Small-step Operational Semantics
  • Stlc: The Simply Typed Lambda-Calculus
  • Subtyping: Subtyping

Programming Language Concepts

  • Computer Science
  • Languages
  • Javascript
  • Ruby
  • Scala
  • Scheme
From Corin Pitcher of DePaul
  • Introduction
    • Lisp, Scheme
    • Recursion, Higher-Order Functions, Let Bindings
    • List Functions
    • Read-Eval-Print-Loop
  • Functional Programming
    • Scala
    • Data Types; Tuples, Lists
    • Immutability
    • Function Types and Higher-Order Functions
    • For Expressions, List Comprehensions
    • Tail Recursion
    • Anonymous Functions
    • Enumerated Types
    • Structured Types
    • Option Types
    • Recursive Types
  • Scope and Storage Management
    • Parameter Passing (Call-by-Value, Call-by-Reference)
    • Static Scope
    • Dynamic Scope
    • First Class Functions
    • Closures
  • Interpreters and Operational Semantics
    • Abstract Syntax Trees
    • Informal and Formal Semantics
    • Operational Semantics of Arithmetic, While-loop, Let, Functions, Closures
  • Object-Oriented Programming
    • Dynamic Lookup
    • Inheritance
    • Subtyping
    • Encapsulation
    • Mixins/Traits
    • Prototypes
  • Type Systems
    • Static Analysis
    • Parametric Polymorphism
    • Type Inference
    • Logic and Constraint Programming
    • Generics and Type Variance

2008

  • Grinnell

Galilee in the Time of Jesus/Hillel

  • Anthropology
From Grinnell

College Writing

  • Writing
From Grinnell

Human-Computer Interaction

  • Computer Science
  • HCI
From Janet Davis of Grinnell

Religion in US Public Life

  • Religious Studies
From Tyler Roberts of Grinnell

Who Killed Kirov?

  • History
From Edward Cohn of Grinnell

Programming Language Concepts

  • Computer Science
  • Programming Languages
  • Scheme
  • PHP
  • Icon
  • Haskell
From John Stone of Grinnell

2007

  • Grinnell
  • IUPUI

Foundations of Abstract Algebra

  • Mathematics
From Elizabeth Moore of Grinnell

Problem Solving Seminar

  • Mathematics
From Chris French of Grinnell

Humanities II: Roman and Early Christian Culture

  • English
  • Theater
From Ellen Mease of Grinnell

Algorithms

  • Computer Science
  • Algorithms
From Marge Coahran of Grinnell

Reading Laboratory

  • Speed Reading
From Grinnell

Computer Organization, Architecture

  • Computer Science
From Marge Coahran of Grinnell

Introduction to Religion

  • Religious Studies
From IUPUI

Computer Networks

  • Computer Science
  • Networks
  • Java
From Janet Davis of Grinnell

Role of Religion in World Politics

  • Political Science
From Robert Grey of Grinnell

Evolution of Technology

From Janet Davis of Grinnell

Computer Networks Research

  • Computer Science
  • Networks
From Janet Davis of Grinnell

Automata, Formal Languages, Computational Complexity

  • Computer Science
  • Theory
From John Stone of Grinnell

2006

  • Grinnell
  • IUPUI

Combinatorics

  • Mathematics
From Tom Moore of Grinnell

European History: 1650 - Present

  • History
From Grinnell

Consumption and Citizenship in Europe

  • Political Science
From Grinnell

Operating Systems and Parallel Algorithms

  • Computer Science
  • Operating Systems
  • Parallel Algorithms
  • C
From Janet Davis of Grinnell

Software Design

  • Computer Science
  • Software Engineering
  • Java
From Henry Walker of Grinnell

Art Appreciation

  • Art
From IUPUI

Introduction to Symbolic Logic

  • Philosophy
  • Mathematics
From IUPUI

Intermediate Japanese II

  • Japanese
From Marnie Jorenby of Grinnell

Computer Graphics for Science

  • Computer Science
  • Graphics
  • C++
  • OpenGL
  • GLUT
From Grinnell

Foundation of Analysis

  • Mathematics
From Keri Kornelson of Grinnell

Computer Science Fundamentals

  • Computer Science
  • Java
  • Scheme
From Henry Walker of Grinnell

Introduction to Political Science

  • Political Science
From Ira Strauber of Grinnell

Memory Management, Data Representation, and Formal Methods

  • Computer Science
  • Theory
  • C
From Grinnell

Theater and Drama in Renaissance Italy

  • Theatre
  • History
From Grinnell

2005

  • Grinnell

Humanities I: The Ancient Greek World

  • Humanities
From Edward Phillips of Grinnell

Literary Analysis

  • English
From Maria Teresa Prendergast of Grinnell

Differential Equations

  • Mathematics
From Royce Wolf of Grinnell

British History II

  • History
From Elizabeth Prevost of Grinnell

Problem Solving Seminar

  • Mathematics
From Grinnell

Intermediate Japanese I

  • Japanese
From Marnie Jorenby of Grinnell