Session 1: Do's and Don'ts of Data Visualization. Presenter: Randy Olson, Ph.D.

Size: px
Start display at page:

Download "Session 1: Do's and Don'ts of Data Visualization. Presenter: Randy Olson, Ph.D."

Transcription

1 Session 1: Do's and Don'ts of Data Visualization Presenter: Randy Olson, Ph.D.

2 DO S AND DON TS OF DATA VISUALIZATION Dr. Randy Olson randalolson.com

3 ABOUT ME AI researcher B.S. in CS, Uni. Central Florida (2010) Ph.D. in CS / EEBB, Michigan State Uni. (2015) Postdoc, Computational Genetics Penn Data tinkerer Data blog: randalolson.com/blog/ Community leader: reddit.com/r/dataisbeautiful

4 DATA VIZ TURNS TABLES OF NUMBERS

5 INTO MEANINGFUL INSIGHT

6 DATA VIZ CAN ALSO MISLEAD

7 LET S COVER SOME GUIDELINES FOR DATA VISUALIZATION

8 COLOR IN DATA VISUALIZATION

9 COLOR SHOULD ADD INFORMATION Google tutorial searches Python JavaScript R 0% 5% 10% 15% Python JavaScript R Google tutorial searches 0% 5% 10%

10 TYPES OF COLOR SCHEMES Qualitative Sequential Diverging

11 CONSIDER COLOR BLINDNESS

12 CONSIDER COLOR BLINDNESS ColorOracle.org

13 REQUIREMENTS OF A COLOR SCHEME A color scheme should: Add information Encode the data well Accommodate color blindness Print well both color and B&W

14 LIBRARIES WITH GOOD COLOR SCHEMES Seaborn (Python) matplotlib s style library ggplot2 (R) D3.js (JavaScript) or head to ColorBrewer2.org

15 COMMON PITFALLS IN DATA VISUALIZATION

16 UNLABELED CHARTS Most common mistake Can make your visualization useless 12% 10% 8% 6% 4% 2% 0%

17 % Google searches UNLABELED CHARTS Most common mistake Can make your visualization useless Python JavaScript R 12% 10% 8% 6% 4% 2% 0%

18 USING 3-DIMENSIONAL CHARTS

19 % Google searches % Google searches USING 3-DIMENSIONAL CHARTS 10% Python JavaScript R Python JavaScript R 10% 5% 5% 0% %

20 FRIENDS DON T LET FRIENDS USE 3-DIMENSIONAL CHARTS

21 PARTS DON T SUM TO A MEANINGFUL WHOLE % of users who use >2 programming languages R 41% Python 75% JavaScript 58%

22 PARTS DON T SUM TO A MEANINGFUL WHOLE % of users who use >2 programming languages R JavaScript Python Note: Fake data 0% 10% 20% 30% 40% 50% 60% 70% 80%

23 TOO MANY CATEGORIES Google tutorial searches Visual Ruby Basic VBAPerl Matlab Swift Objective-C R Java lua Javascript C PHP C++ C# Python

24 TOO MANY CATEGORIES Google tutorial searches Java Other PHP Python

25 BAR CHARTS NOT STARTING AT ZERO 7.40% 7.20% 7.00% 6.80% 6.60% 6.40% Google tutorial searches for JavaScript % 6.00% 4.00% 2.00% 0.00% Google tutorial searches for JavaScript

26 FAILING TO NORMALIZE DATA Orlando 1000s of Python users in Orlando % of Python users in NYC NYC Chicago Chicago Note: Fake data % 2% 4% 6% 8%

27 CHARTJUNK Extraneous labels Pointless images Excessive color Fancy animations

28 CHARTJUNK Extraneous labels Pointless images Excessive color Fancy animations

29 MORE EXAMPLES viz.wtf Reddit.com/r/DataIsUgly Makeover Monday vizwiz.blogspot.com/p/makeover-monday-challenges.html

30 GOOD PRACTICES IN DATA VISUALIZATION

31 StackOverflow Rank WHEN APPROPRIATE, SHOW THE DATA Programming language popularity GitHub Rank

32 StackOverflow Rank WHEN APPROPRIATE, SHOW THE DATA Programming language popularity GitHub rank

33 CLARIFY CORRELATION!= CAUSATION

34 LABEL OBJECTS AND DATA DIRECTLY Google tutorial searches Python JavaScript R 10% 5% 0%

35 LABEL OBJECTS AND DATA DIRECTLY Google tutorial searches 12% 10% 8% 6% 4% 2% 0% Python JavaScript R

36 LABEL OBJECTS AND DATA DIRECTLY Google tutorial searches Python JavaScript R 0% 2% 4% 6% 8% 10% 12%

37 LABEL OBJECTS AND DATA DIRECTLY Google tutorial searches Python 10.4% JavaScript 7% R 2.6%

38 LABEL OBJECTS AND DATA DIRECTLY Google tutorial searches Python 10% JavaScript 7% R 3%

39 MAKE SURE YOUR VISUALIZATION STANDS BY ITSELF Could someone interpret the chart by itself? Make sure chart alone can tell your story

40 INCLUDE THE UNDERLYING DATA When possible Public data is better Store in a public repository GitHub.com figshare.com Link to the data repository in your visualization

41 DESCRIBE YOUR METHODS IN DETAIL From raw data to the chart What data? Manipulations? Omissions? Or just provide the code! GitHub.com Link to the methods in your visualization

42 IF YOU TORTURE THE DATA LONG ENOUGH, IT WILL CONFESS TO ANYTHING. How to Lie With Statistics (1954)

43 IF IT CAN T BE REPRODUCED, THEN IT SHOULDN T BE TRUSTED

44 THESE ARE GUIDELINES, NOT RULES

45 THESE ARE GUIDELINES, NOT RULES BUT IT S HELPFUL TO KNOW RULES BEFORE YOU LEARN TO BREAK THEM

46

47 THANK YOU!

Best Programming Languages to Learn in 2017

Best Programming Languages to Learn in 2017 Best Programming Languages to Learn in 2017 Exclusive case study backed with lot of data. Introduction This ebook is intended to help you choose a programming languages which has most number of jobs, high

More information

EECS 282 Information Systems Design and Programming. Atul Prakash Professor, Computer Science and Engineering University of Michigan

EECS 282 Information Systems Design and Programming. Atul Prakash Professor, Computer Science and Engineering University of Michigan EECS 282 Information Systems Design and Programming Atul Prakash Professor, Computer Science and Engineering University of Michigan 1 What is the Course About? A second programming course - but different

More information

EECS 282 Information Systems Design and Programming. Atul Prakash Professor, Computer Science and Engineering University of Michigan

EECS 282 Information Systems Design and Programming. Atul Prakash Professor, Computer Science and Engineering University of Michigan EECS 282 Information Systems Design and Programming Atul Prakash Professor, Computer Science and Engineering University of Michigan 1 What is the Course About? A second programming course - but different

More information

MIS2502: Data Analytics Principles of Data Visualization. Alvin Zuyin Zheng

MIS2502: Data Analytics Principles of Data Visualization. Alvin Zuyin Zheng MIS2502: Data Analytics Principles of Data Visualization Alvin Zuyin Zheng zheng@temple.edu http://community.mis.temple.edu/zuyinzheng/ Data visualization can: provide clear understanding of patterns in

More information

Documentation and Deployment

Documentation and Deployment Documentation and Deployment CS 370 SE Practicum, Cengiz Günay (Some slides courtesy of Eugene Agichtein and the Internets) I know what I learned this semester: CS 370, Günay (Emory) Documentation and

More information

Objectives. Structure. Munster Programming Training

Objectives. Structure. Munster Programming Training 1 Munster Programming Training Objectives 1. To give a short and basic introduction to computer programming, web design, web animation and video production. 2. To foster interest in computers by encouraging

More information

SilverStripe - Website content editors.

SilverStripe - Website content editors. SilverStripe - Website content editors. Web Content Best Practices In this section: Learn how to make your site search-engine friendly Learn how to make your content accessible Other web best practices

More information

How to get on Google s radar

How to get on Google s radar How to get on Google s radar April Mechler #WCJAX Google Myths WE VE ALL FALLEN FOR You can get to page 1 in a month! MYTH #1 #WCJAX LIE! You can get to page 1 in a month For typical results, try 4-6 months.

More information

Technology Background Development environment, Skeleton and Libraries

Technology Background Development environment, Skeleton and Libraries Technology Background Development environment, Skeleton and Libraries Christian Kroiß (based on slides by Dr. Andreas Schroeder) 18.04.2013 Christian Kroiß Outline Lecture 1 I. Eclipse II. Redmine, Jenkins,

More information

Monday. A few notes on homework I want ONE spreadsheet with TWO tabs

Monday. A few notes on homework I want ONE spreadsheet with TWO tabs CS 1251 Page 1 Monday Sunday, September 14, 2014 2:38 PM A few notes on homework I want ONE spreadsheet with TWO tabs What has passed before We ended last class with you creating a function called givemeseven()

More information

THINKING VISUALLY: AN INTRODUCTION TO DATA & INFORMATION VISUALIZATION

THINKING VISUALLY: AN INTRODUCTION TO DATA & INFORMATION VISUALIZATION THINKING VISUALLY: AN INTRODUCTION TO DATA & INFORMATION VISUALIZATION Learning Event for CES Ontario Li Ka Shing Knowledge Institute June 22, 2016 Jesse Carliner ACTING COMMUNICATIONS & REFERENCE LIBRARIAN

More information

Top Down Breaking a Problem Down

Top Down Breaking a Problem Down Top Down Breaking a Problem Down Putting a few Python structures together Last Updated: Tuesday, February 12, 2019 Page 2 Copyright 2018 Objective, Overview Introduction This lesson and Lab is to bring

More information

Introduction to the course and basic programming concepts

Introduction to the course and basic programming concepts Introduction to the course and basic programming concepts Lecture 1 of TDA 540 Object-Oriented Programming Jesper Cockx Fall 2018 Chalmers University of Technology Gothenburg University About the course

More information

MySQL. The Right Database for GIS Sometimes

MySQL. The Right Database for GIS Sometimes MySQL The Right Database for GIS Sometimes Who am I? Web/GIS Software Engineer with Cimbura.com BS in IT, MGIS Michael Moore I like making and using tools (digital or physical) GIS Web Services I m most

More information

CS240: Programming in C

CS240: Programming in C CS240: Programming in C Lecture 1: Class overview. Cristina Nita-Rotaru Lecture 1/ Fall 2013 1 WELCOME to CS240 Cristina Nita-Rotaru Lecture 1/ Fall 2013 2 240 Team Instructor: Cristina Nita-Rotaru Special

More information

Statistical Graphs & Charts

Statistical Graphs & Charts Statistical Graphs & Charts CS 4460 Intro. to Information Visualization August 30, 2017 John Stasko Learning Objectives Learn different statistical data graphs Line graph, Bar Graph, Scatterplot, Trellis,

More information

THOMAS LATOZA SWE 621 FALL 2018 DESIGN ECOSYSTEMS

THOMAS LATOZA SWE 621 FALL 2018 DESIGN ECOSYSTEMS THOMAS LATOZA SWE 621 FALL 2018 DESIGN ECOSYSTEMS LOGISTICS HW5 due today Project presentation on 12/6 Review for final on 12/6 2 EXAMPLE: NPM https://twitter.com/garybernhardt/status/1067111872225136640

More information

Seema Sirpal Delhi University Computer Centre

Seema Sirpal Delhi University Computer Centre Getting Started on HTML & Web page Design Seema Sirpal Delhi University Computer Centre How to plan a web development project draft a design document convert text to HTML use Frontpage to create web pages

More information

Objects and Classes Lecture 1

Objects and Classes Lecture 1 Objects and Classes Lecture 1 Waterford Institute of Technology January 6, 2016 John Fitzgerald Waterford Institute of Technology, Objects and ClassesLecture 1 1/19 Fundamental Programming Course Content

More information

CocoaHeads Aachen Server-side Swift

CocoaHeads Aachen Server-side Swift Server-side Swift 2016-08-25 Ullrich Platt, Michael Plagge Agenda Motivation for Server-side Swift Concepts / Architecture(s) Pros & Cons Requirements Status In depth: Frameworks Overview Swift@IBM / Kitura

More information

CIS 086 : Week 1. Web Development with PHP and MySQL

CIS 086 : Week 1. Web Development with PHP and MySQL + CIS 086 : Week 1 Web Development with PHP and MySQL + Introduction n Instructor: Mark Brautigam n You: Skills and Technology Survey n You: Expectations of this class n You: Introduce yourself on the

More information

CSCI 311 WEB ACCESSIBILITY

CSCI 311 WEB ACCESSIBILITY CSCI 311 WEB ACCESSIBILITY The Plan Look at the importance of building accessible sites What accessibility means Accessibility guidelines Examples Motivating Example What is it like to navigate websites

More information

Notebooks for documenting work-flows

Notebooks for documenting work-flows C. Troupin, A. Barth C. Muñoz, S. Watelet, & J.-M. Beckers GHER-University of Liège Balearic Islands Coastal Ocean Observing and Forecasting System Notebooks for documenting work-flows Motivation Reproducibility

More information

SEO According to Google

SEO According to Google SEO According to Google An On-Page Optimization Presentation By Rachel Halfhill Lead Copywriter at CDI Agenda Overview Keywords Page Titles URLs Descriptions Heading Tags Anchor Text Alt Text Resources

More information

INFSCI 1017 Implementation of Information Systems Spring 2017

INFSCI 1017 Implementation of Information Systems Spring 2017 INFSCI 1017 Implementation of Information Systems Spring 2017 Time: Thursdays 6:00 8:30 Location: Information Science Building, Room 406 Instructor: Alexander Nolte Office Hours: Monday, 1-2PM Thursdays,

More information

What Are The SEO Benefits from Online Reviews and UGC?

What Are The SEO Benefits from Online Reviews and UGC? Online Reviews: The Benefits, Best Practices and More. By: Joe Vernon on www.gravitatedesign.com Growing up I was told by my parents not to care what others thought of me but to continue being who I was.

More information

Accessible Content. Make sure your message reaches everyone!

Accessible Content. Make sure your message reaches everyone! Accessible Content Make sure your message reaches everyone! Disability Network Southwest Michigan We educate and connect people with disabilities to resources while advocating social change. What is Accessible

More information

Android: Android Programming And Android App Development For Beginners (Learn How To Program Android Apps, How To Develop Android Applications

Android: Android Programming And Android App Development For Beginners (Learn How To Program Android Apps, How To Develop Android Applications Android: Android Programming And Android App Development For Beginners (Learn How To Program Android Apps, How To Develop Android Applications Through Java Programming, Android For Dummies) Ebooks Free

More information

Inside COM+: Base Services (Microsoft Programming Series) Ebooks Free

Inside COM+: Base Services (Microsoft Programming Series) Ebooks Free Inside COM+: Base Services (Microsoft Programming Series) Ebooks Free An in-depth architectural overview of COM+ component technologies for enterprise developers, this book offers a detailed look by providing

More information

Getting Started with Python

Getting Started with Python Getting Started with Python A beginner course to Python Ryan Leung Updated: 2018/01/30 yanyan.ryan.leung@gmail.com Links Tutorial Material on GitHub: http://goo.gl/grrxqj 1 Learning Outcomes Python as

More information

(First is used here)

(First is used here) Solo Complete all four programs by yourself Print programs 1, 2, 3, and 4, staple them together (or lose points) and turn in to your section leader or Rick if Cody is your SL from 9:55-10:01 am Wednesday,

More information

Utilizing Folksonomy: Similarity Metadata from the Del.icio.us System CS6125 Project

Utilizing Folksonomy: Similarity Metadata from the Del.icio.us System CS6125 Project Utilizing Folksonomy: Similarity Metadata from the Del.icio.us System CS6125 Project Blake Shaw December 9th, 2005 1 Proposal 1.1 Abstract Traditionally, metadata is thought of simply

More information

Image Manipulation in MATLAB Due Monday, July 17 at 5:00 PM

Image Manipulation in MATLAB Due Monday, July 17 at 5:00 PM Image Manipulation in MATLAB Due Monday, July 17 at 5:00 PM 1 Instructions Labs may be done in groups of 2 or 3 (i.e., not alone). You may use any programming language you wish but MATLAB is highly suggested.

More information

C Sc 227 Project 1: Three Main Methods

C Sc 227 Project 1: Three Main Methods C Sc 227 Project 1: Three Main Methods Collaboration Solo! Complete all four programs by yourself. Turnin: Print programs 1, 2, and 3 (Welcome.java not needed), staple them together (or lose points) and

More information

Introduction. Introduction to OOP with Java. Lecture 01: Introduction to OOP with Java - AKF Sep AbuKhleiF -

Introduction. Introduction to OOP with Java. Lecture 01: Introduction to OOP with Java - AKF Sep AbuKhleiF - Introduction to OOP with Java Instructor: AbuKhleif, Mohammad Noor Sep 2017 www.abukhleif.com Lecture 01: Introduction Instructor: AbuKhleif, Mohammad Noor Sep 2017 www.abukhleif.com AbuKhleiF - www.abukhleif.com

More information

Introduction to Git and GitHub for Writers Workbook February 23, 2019 Peter Gruenbaum

Introduction to Git and GitHub for Writers Workbook February 23, 2019 Peter Gruenbaum Introduction to Git and GitHub for Writers Workbook February 23, 2019 Peter Gruenbaum Table of Contents Preparation... 3 Exercise 1: Create a repository. Use the command line.... 4 Create a repository...

More information

CS162 Week 1. Kyle Dewey. Friday, January 10, 14

CS162 Week 1. Kyle Dewey. Friday, January 10, 14 CS162 Week 1 Kyle Dewey Overview Basic Introduction CS Accounts Scala survival guide Office Hour Choose an hour from within: Tuesday/Thursday 11 AM - 1 PM Friday 11 AM - 4 PM Also available by appointment

More information

Lecture 6: Scatter Plots and R Skills

Lecture 6: Scatter Plots and R Skills Lecture 6: Scatter Plots and R Skills March 5, 2018 Overview Course Administration Good, Bad and Ugly Few, Chapter 13 Line Charts in R Course Administration 1. Rosa has graded problem sets thank you block

More information

CS 32. Lecture 1: oops

CS 32. Lecture 1: oops CS 32 Lecture 1: oops Textbooks Problem Solving in C++ (CS 16) Chapters 10-18 Data Structures with C++ (CS 24) Chapters 12-14 Reader SBPrinter at UCen Grading Labs 20% Programming Assignments 20% 3 thirdterm

More information

LEARN IOS 11 PROGRAMMING WITH SWIFT 4 SECOND EDITION LEARN THE FUNDAMENTALS OF IOS APP DEVELOPMENT WITH SWIFT 4 AND XCODE 9

LEARN IOS 11 PROGRAMMING WITH SWIFT 4 SECOND EDITION LEARN THE FUNDAMENTALS OF IOS APP DEVELOPMENT WITH SWIFT 4 AND XCODE 9 LEARN IOS 11 PROGRAMMING WITH SWIFT 4 SECOND EDITION LEARN THE FUNDAMENTALS OF IOS APP DEVELOPMENT WITH SWIFT 4 AND XCODE 9 page 1 / 5 page 2 / 5 learn ios 11 programming pdf ios (formerly iphone OS) is

More information

CS106 Lab 1: Getting started with Python, Linux, and Canopy. A. Using the interpreter as a fancy calculator

CS106 Lab 1: Getting started with Python, Linux, and Canopy. A. Using the interpreter as a fancy calculator CS106 Lab 1: Getting started with Python, Linux, and Canopy Dr. Victor Norman Goals: To learn How python can be used interactively for simple computational tasks. How to run Canopy Start playing with Turtle

More information

Introduction to OOP with Java. Instructor: AbuKhleif, Mohammad Noor Sep 2017

Introduction to OOP with Java. Instructor: AbuKhleif, Mohammad Noor Sep 2017 Introduction to OOP with Java Instructor: AbuKhleif, Mohammad Noor Sep 2017 Lecture 01: Introduction Instructor: AbuKhleif, Mohammad Noor Sep 2017 Instructor AbuKhleif, Mohammad Noor Studied Computer Engineer

More information

Web Site Design and Development. CS 0134 Fall 2018 Tues and Thurs 1:00 2:15PM

Web Site Design and Development. CS 0134 Fall 2018 Tues and Thurs 1:00 2:15PM Web Site Design and Development CS 0134 Fall 2018 Tues and Thurs 1:00 2:15PM By the end of this course you will be able to Design a static website from scratch Use HTML5 and CSS3 to build the site you

More information

Google Analytics 101

Google Analytics 101 Copyright GetABusinessMobileApp.com All rights reserved worldwide. YOUR RIGHTS: This book is restricted to your personal use only. It does not come with any other rights. LEGAL DISCLAIMER: This book is

More information

Overview. Rationale Division of labour between script and C++ Choice of language(s) Interfacing to C++

Overview. Rationale Division of labour between script and C++ Choice of language(s) Interfacing to C++ Scripting 1 Overview Rationale Division of labour between script and C++ Choice of language(s) Interfacing to C++ Rationale C++ isn't the best choice for all problems Complicated feature set, syntax Low-level,

More information

Infographics and Visualisation (or: Beyond the Pie Chart) LSS: ITNPBD4, 1 November 2016

Infographics and Visualisation (or: Beyond the Pie Chart) LSS: ITNPBD4, 1 November 2016 Infographics and Visualisation (or: Beyond the Pie Chart) LSS: ITNPBD4, 1 November 2016 Overview Overview (short: we covered most of this in the tutorial) Why infographics and visualisation What s the

More information

Software Implementation

Software Implementation Software Implementation Quiz with Explainations Hans-Petter Halvorsen, M.Sc. Questions 1. List 10 different Programming Languages 2. What is an IDE? - Give some Examples 3. What is.net? 4. What is ASP.NET?

More information

What is the Best Way for Children to Learn Computer Programming?

What is the Best Way for Children to Learn Computer Programming? What is the Best Way for Children to Learn Computer Programming? Dr Alex Davidovic One of the defining characteristics of today s society is that the computers and mobile devices are the integral and natural

More information

DSC 201: Data Analysis & Visualization

DSC 201: Data Analysis & Visualization DSC 201: Data Analysis & Visualization Python and Notebooks Dr. David Koop Computer-based visualization systems provide visual representations of datasets designed to help people carry out tasks more effectively.

More information

SKILL AREA 304: Review Programming Language Concept. Computer Programming (YPG)

SKILL AREA 304: Review Programming Language Concept. Computer Programming (YPG) SKILL AREA 304: Review Programming Language Concept Computer Programming (YPG) 304.1 Demonstrate an Understanding of Basic of Programming Language 304.1.1 Explain the purpose of computer program 304.1.2

More information

DOWNLOAD : THE RUBY PROGRAMMING LANGUAGE

DOWNLOAD : THE RUBY PROGRAMMING LANGUAGE DOWNLOAD : THE RUBY PROGRAMMING LANGUAGE RUBY - OFFICIAL SITE ruby is... a dynamic, open source programming language with a focus on simplicity and productivity. it has an elegant syntax that is natural

More information

Lecture 01 & 02 Computer Programming

Lecture 01 & 02 Computer Programming Lecture 01 & 02 Computer Programming 15 Computer Systems Engineering Second Semester By: Mr. Ali Asghar Manjotho, Lecturer, CSE-MUET Contents Computer programming (LL 02) Why programming? (LL 02) Instructions

More information

But before understanding the Selenium WebDriver concept, we need to know about the Selenium first.

But before understanding the Selenium WebDriver concept, we need to know about the Selenium first. As per the today s scenario, companies not only desire to test software adequately, but they also want to get the work done as quickly and thoroughly as possible. To accomplish this goal, organizations

More information

Practical C Programming (Nutshell Handbooks) Ebooks Free

Practical C Programming (Nutshell Handbooks) Ebooks Free Practical C Programming (Nutshell Handbooks) Ebooks Free There are lots of introductory C books, but this is the first one that has the no-nonsense, practical approach that has made Nutshell HandbooksÂ

More information

GOOGLE ANALYTICS 101 INCREASE TRAFFIC AND PROFITS WITH GOOGLE ANALYTICS

GOOGLE ANALYTICS 101 INCREASE TRAFFIC AND PROFITS WITH GOOGLE ANALYTICS GOOGLE ANALYTICS 101 INCREASE TRAFFIC AND PROFITS WITH GOOGLE ANALYTICS page 2 page 3 Copyright All rights reserved worldwide. YOUR RIGHTS: This book is restricted to your personal use only. It does not

More information

An Introduction To Programming With Visual Basic 2012 Ebooks Free

An Introduction To Programming With Visual Basic 2012 Ebooks Free An Introduction To Programming With Visual Basic 2012 Ebooks Free NOTE:Â You are purchasing a standalone product; MyProgrammingLab does not come packaged with this content. If you wouldâ like to purchase

More information

Unifer Documentation. Release V1.0. Matthew S

Unifer Documentation. Release V1.0. Matthew S Unifer Documentation Release V1.0 Matthew S July 28, 2014 Contents 1 Unifer Tutorial - Notes Web App 3 1.1 Setting up................................................. 3 1.2 Getting the Template...........................................

More information

Attacks Against Websites 3 The OWASP Top 10. Tom Chothia Computer Security, Lecture 14

Attacks Against Websites 3 The OWASP Top 10. Tom Chothia Computer Security, Lecture 14 Attacks Against Websites 3 The OWASP Top 10 Tom Chothia Computer Security, Lecture 14 OWASP top 10. The Open Web Application Security Project Open public effort to improve web security: Many useful documents.

More information

Visual Encoding Design

Visual Encoding Design CSE 442 - Data Visualization Visual Encoding Design Jeffrey Heer University of Washington Last Time: Data & Image Models The Big Picture task questions, goals assumptions data physical data type conceptual

More information

AI2 Static Maps the

AI2 Static Maps the AI2 Static Maps 101...the Google Static Map Tutorial for AI2 Static Maps do not need to be be static. Need an active map, map pins, follow your location in real time, bla bla bla? Did ya know, Google Static

More information

Read & Download (PDF Kindle) Java: An Introduction To Problem Solving And Programming (6th Edition)

Read & Download (PDF Kindle) Java: An Introduction To Problem Solving And Programming (6th Edition) Read & Download (PDF Kindle) Java: An Introduction To Problem Solving And Programming (6th Edition) Java: An Introduction to Problem Solving and Programming, 6e, is ideal for introductory Computer Science

More information

run your own search engine. today: Cablecar

run your own search engine. today: Cablecar run your own search engine. today: Cablecar Robert Kowalski @robinson_k http://github.com/robertkowalski Search nobody uses that, right? Services on the Market Google Bing Yahoo ask Wolfram Alpha Baidu

More information

The COS 333 Project. Robert M. Dondero, Ph.D. Princeton University

The COS 333 Project. Robert M. Dondero, Ph.D. Princeton University The COS 333 Project Robert M. Dondero, Ph.D. Princeton University 1 Overview A simulation of reality In groups of 3-5 people... Build a substantial three tier software system 2 Three-Tier Systems "Three

More information

DRACULA. CSM Turner Connor Taylor, Trevor Worth June 18th, 2015

DRACULA. CSM Turner Connor Taylor, Trevor Worth June 18th, 2015 DRACULA CSM Turner Connor Taylor, Trevor Worth June 18th, 2015 Acknowledgments Support for this work was provided by the National Science Foundation Award No. CMMI-1304383 and CMMI-1234859. Any opinions,

More information

Software. Programming Languages. Types of Software. Types of Languages. Types of Programming. Software does something

Software. Programming Languages. Types of Software. Types of Languages. Types of Programming. Software does something Software Software does something LBSC 690: Week 10 Programming, JavaScript Jimmy Lin College of Information Studies University of Maryland Monday, April 9, 2007 Tells the machine how to operate on some

More information

Data Visualization (CIS 468)

Data Visualization (CIS 468) Data Visualization (CIS 468) Web Programming Dr. David Koop What is Data Visualization? 2 Exploration Communication Spectrum Consecutive Starts by a Quarterback for a Single Team Exploration Confirmation

More information

Web Server Setup Guide

Web Server Setup Guide SelfTaughtCoders.com Web Server Setup Guide How to set up your own computer for web development. Setting Up Your Computer for Web Development Our web server software As we discussed, our web app is comprised

More information

What Type Of Graph Is Best To Use To Show Data That Are Parts Of A Whole

What Type Of Graph Is Best To Use To Show Data That Are Parts Of A Whole What Type Of Graph Is Best To Use To Show Data That Are Parts Of A Whole But how do you choose which style of graph to use? This page sets They are generally used for, and best for, quite different things.

More information

01 INTRODUCTION TO COURSE

01 INTRODUCTION TO COURSE DATA STRUCTURES AND ALGORITHMS 01 INTRODUCTION TO COURSE ALGORITHMS & DATA STRUCTURES IMRAN IHSAN ASSISTANT PROFESSOR, AIR UNIVERSITY, ISLAMABAD WWW.IMRANIHSAN.COM LECTURES ADAPTED FROM: DANIEL KANE, NEIL

More information

Contemporary Multilevel Machines

Contemporary Multilevel Machines Languages, Levels, Virtual Machines A multilevel machine Contemporary Multilevel Machines A six-level computer. The support method for each level is indicated below the level. The primary difference between

More information

Project Plan Visualizing Dynamic Data Exploration

Project Plan Visualizing Dynamic Data Exploration Project Plan Visualizing Dynamic Data Exploration The Capstone Experience From Students to Professionals Team Yello Matt Chebowski Jarrod Rougeau Greg Spletzer Jim Wang Stephanie Winsky Department of Computer

More information

Read & Download (PDF Kindle) Programming: C ++ Programming : Programming Language For Beginners: LEARN IN A DAY! (C++, Javascript, PHP, Python, Sql,

Read & Download (PDF Kindle) Programming: C ++ Programming : Programming Language For Beginners: LEARN IN A DAY! (C++, Javascript, PHP, Python, Sql, Read & Download (PDF Kindle) Programming: C ++ Programming : Programming Language For Beginners: LEARN IN A DAY! (C++, Javascript, PHP, Python, Sql, HTML, Swift) Start Learning to Program in the C++ Language

More information

At the University we see a wide variety Focusing on free. 1. Preparing Data 2. Visualization

At the University we see a wide variety Focusing on free. 1. Preparing Data 2. Visualization At the University we see a wide variety Focusing on free 1. Preparing Data 2. Visualization http://vis.stanford.edu/wrangler https://www.trifacta.com Interactive tool for cleaning & rearranging Suggests

More information

FREE ONLINE EXCEL TRAINING VIDEO COURSE FOR BEGINNERS

FREE ONLINE EXCEL TRAINING VIDEO COURSE FOR BEGINNERS LEARN EXCEL A BEGINNERS PDF FREE ONLINE EXCEL TRAINING VIDEO COURSE FOR BEGINNERS THE EXCEL VBA PROGRAMMING TUTORIAL FOR BEGINNERS 1 / 6 2 / 6 3 / 6 learn excel a beginners pdf Join this FREE Online Excel

More information

Continuous integration & continuous delivery. COSC345 Software Engineering

Continuous integration & continuous delivery. COSC345 Software Engineering Continuous integration & continuous delivery COSC345 Software Engineering Outline Integrating different teams work, e.g., using git Defining continuous integration / continuous delivery We use continuous

More information

Part 3: Online Social Networks

Part 3: Online Social Networks 1 Part 3: Online Social Networks Today's plan Project 2 Questions? 2 Social networking services Social communities Bebo, MySpace, Facebook, etc. Content sharing YouTube, Flickr, MSN Soapbox, etc. Corporate

More information

Scripted Components: Problem. Scripted Components. Problems with Components. Single-Language Assumption. Dr. James A. Bednar

Scripted Components: Problem. Scripted Components. Problems with Components. Single-Language Assumption. Dr. James A. Bednar Scripted Components: Problem Scripted Components Dr. James A. Bednar jbednar@inf.ed.ac.uk http://homepages.inf.ed.ac.uk/jbednar (Cf. Reuse-Oriented Development; Sommerville 2004 Chapter 4, 18) A longstanding

More information

Scripted Components Dr. James A. Bednar

Scripted Components Dr. James A. Bednar Scripted Components Dr. James A. Bednar jbednar@inf.ed.ac.uk http://homepages.inf.ed.ac.uk/jbednar SAPM Spring 2012: Scripted Components 1 Scripted Components: Problem (Cf. Reuse-Oriented Development;

More information

Setting up Blogger. We have focused on Blogger as it is easy to use and ideal for someone starting blogging.

Setting up Blogger. We have focused on Blogger as it is easy to use and ideal for someone starting blogging. Setting up Blogger The three most popular platforms for blogging are WordPress, Tumblr and Blogger. In Module 1 the primary features of each platform were outlined. We have focused on Blogger as it is

More information

CS 1110 SPRING 2016: GETTING STARTED (Jan 27-28) First Name: Last Name: NetID:

CS 1110 SPRING 2016: GETTING STARTED (Jan 27-28)   First Name: Last Name: NetID: CS 1110 SPRING 2016: GETTING STARTED (Jan 27-28) http://www.cs.cornell.edu/courses/cs1110/2016sp/labs/lab01/lab01.pdf First Name: Last Name: NetID: Goals. Learning a computer language is a lot like learning

More information

1) What is the first step of the system development life cycle (SDLC)? A) Design B) Analysis C) Problem and Opportunity Identification D) Development

1) What is the first step of the system development life cycle (SDLC)? A) Design B) Analysis C) Problem and Opportunity Identification D) Development Technology In Action, Complete, 14e (Evans et al.) Chapter 10 Behind the Scenes: Software Programming 1) What is the first step of the system development life cycle (SDLC)? A) Design B) Analysis C) Problem

More information

Data Science Bootcamp Curriculum. NYC Data Science Academy

Data Science Bootcamp Curriculum. NYC Data Science Academy Data Science Bootcamp Curriculum NYC Data Science Academy 100+ hours free, self-paced online course. Access to part-time in-person courses hosted at NYC campus Machine Learning with R and Python Foundations

More information

CS 343: Artificial Intelligence

CS 343: Artificial Intelligence CS 343: Artificial Intelligence Kernels and Clustering Prof. Scott Niekum The University of Texas at Austin [These slides based on those of Dan Klein and Pieter Abbeel for CS188 Intro to AI at UC Berkeley.

More information

These Are the Top Languages for Enterprise Application Development

These Are the Top Languages for Enterprise Application Development These Are the Top Languages for Enterprise Application Development And What That Means for Business August 2018 Enterprises are now free to deploy a polyglot programming language strategy thanks to a decrease

More information

3. Visual Analytics (Part 1: Visual Encoding) Jacobs University Visualization and Computer Graphics Lab

3. Visual Analytics (Part 1: Visual Encoding) Jacobs University Visualization and Computer Graphics Lab 3. Visual Analytics (Part 1: Visual Encoding) 3.1 Introduction Motivation Big Data cannot be analyzed anymore without the help of computers. Computers are good in quickly processing large amounts of data.

More information

Read & Download (PDF Kindle) Java Programming For Beginners: Learn With Complete Bible

Read & Download (PDF Kindle) Java Programming For Beginners: Learn With Complete Bible Read & Download (PDF Kindle) Java Programming For Beginners: Learn With Complete Bible This book will help you learn the basics of Java programming in an easy way. This Edition is a comprehensive guide

More information

(Ca...

(Ca... 1 of 8 9/7/18, 1:59 PM Getting started with 228 computational exercises Many physics problems lend themselves to solution methods that are best implemented (or essentially can only be implemented) with

More information

Few s Design Guidance

Few s Design Guidance Few s Design Guidance CS 4460 Intro. to Information Visualization September 9, 2014 John Stasko Today s Agenda Stephen Few & Perceptual Edge Fall 2014 CS 4460 2 1 Stephen Few s Guidance Excellent advice

More information

CP122 CS I. Chapter 13: Recursion

CP122 CS I. Chapter 13: Recursion CP122 CS I Chapter 13: Recursion Russian law banning VPNs comes into effect today Tech News! Tech News! Russian law banning VPNs comes into effect today Shelley: AI to write horror story openings THE PATH

More information

Introduction to Programming

Introduction to Programming Introduction to Programming G. Bakalli March 8, 2017 G. Bakalli Introduction to Programming March 8, 2017 1 / 33 Outline 1 Programming in Finance 2 Types of Languages Interpreters Compilers 3 Programming

More information

Module 13 Wrap-up CS 106 Winter 2018

Module 13 Wrap-up CS 106 Winter 2018 Module 13 Wrap-up CS 106 Winter 2018 Module 01 Processing Recap Types Variables Control flow Functions Classes Module 02 Arrays and Strings Array operations Arrays as values Functions on arrays Special

More information

Web Hosting. Important features to consider

Web Hosting. Important features to consider Web Hosting Important features to consider Amount of Storage When choosing your web hosting, one of your primary concerns will obviously be How much data can I store? For most small and medium web sites,

More information

Unit 10: Data Structures CS 101, Fall 2018

Unit 10: Data Structures CS 101, Fall 2018 Unit 10: Data Structures CS 101, Fall 2018 Learning Objectives After completing this unit, you should be able to: Define and give everyday examples of arrays, stacks, queues, and trees. Explain what a

More information

Programming for Engineers in Python

Programming for Engineers in Python Programming for Engineers in Python Lecture 13: Shit Happens Autumn 2011-12 1 Lecture 12: Highlights Dynamic programming Overlapping subproblems Optimal structure Memoization Fibonacci Evaluating trader

More information

Python for Oracle. Oracle Database Great for Data Store. Critical for Business Operations. Performance? Run in laptop? But how do you share it?

Python for Oracle. Oracle Database Great for Data Store. Critical for Business Operations. Performance? Run in laptop? But how do you share it? Python for Oracle Arup Nanda Longtime Oracle Technologist And Python Explorer Oracle Database Great for Data Store Critical for Business Operations Performance? Run in laptop? But how do you share it?

More information

Graph Structure Over Time

Graph Structure Over Time Graph Structure Over Time Observing how time alters the structure of the IEEE data set Priti Kumar Computer Science Rensselaer Polytechnic Institute Troy, NY Kumarp3@rpi.edu Abstract This paper examines

More information

Code review guide. Notice: Read about the language that you will test its code, if you don t have an idea about the language this will be difficult.

Code review guide. Notice: Read about the language that you will test its code, if you don t have an idea about the language this will be difficult. Code review guide Author: Jameel Nabbo Website: www.jameelnabbo.com Table of contents Introduction Code review Checklist Steps to perform on code review task Tips for code review Starting the Code review

More information

Software System/Design & Architecture. Eng.Muhammad Fahad Khan Assistant Professor Department of Software Engineering

Software System/Design & Architecture. Eng.Muhammad Fahad Khan Assistant Professor Department of Software Engineering Software System/Design & Architecture Eng.Muhammad Fahad Khan Assistant Professor Department of Software Engineering Todays lecture Model View Controller (MVC) Copyright 2012 @ M.Fahad Khan 2 Model-View-Controller

More information

Guideline for Creating Accessible Public Documents 1

Guideline for Creating Accessible Public Documents 1 Guideline for Creating Accessible Public Documents 1 I. Word Documents 2 Estimates indicate that in the United States, 12.5 million people rely on some sort of assistive technology to access electronic

More information

State of the Headless CMS Market 2018

State of the Headless CMS Market 2018 State of the Headless CMS Market 2018 by Kentico Software Headless CMS Market in 2018 For many years, companies have been using traditional web-oriented Content Management Systems. But the world has changed.

More information