CS 320 n Elements of Visual Programming Course

  • Slides: 18
Download presentation
CS 320 n – Elements of Visual Programming Course Introduction Mike Scott Visual Programming

CS 320 n – Elements of Visual Programming Course Introduction Mike Scott Visual Programming Course Introduction

Who Am I • • • Lecturer in CS department since 2000 Undergrad Stanford,

Who Am I • • • Lecturer in CS department since 2000 Undergrad Stanford, MSCS RPI US Navy for 8 years, submarines 2 years Round Rock High School Wife (Kelly) is a nurse. 2 daughters, Olivia and Isabelle Visual Programming Course Introduction 2

What We Will Do Today • Discuss course content, syllabus, and tools • demos

What We Will Do Today • Discuss course content, syllabus, and tools • demos of course software Visual Programming Course Introduction 3

Administrative Information • class web site: www. cs. utexas. edu/~scottm/cs 320 n Visual Programming

Administrative Information • class web site: www. cs. utexas. edu/~scottm/cs 320 n Visual Programming Course Introduction 4

What Will We Do in CS 320 n • Have Fun? !? ! •

What Will We Do in CS 320 n • Have Fun? !? ! • Learn to write computer programs using Alice and Lab. VIEW • Okay if you “Never-ed. ” Visual Programming Course Introduction 5

How This Class Will Work • In class – lecture and lab work –

How This Class Will Work • In class – lecture and lab work – demos – answers your questions • Outside of class – exercises (not graded) – reading – assignments Visual Programming Course Introduction 6

Grading • Homework Projects ~ 50% – – – 6 Alice projects 3 Lab.

Grading • Homework Projects ~ 50% – – – 6 Alice projects 3 Lab. VIEW projects Point value varies per project some done as individuals, some as pairs in class presentations of 2 projects are to be your own work! Copying or having someone else do them is academic dishonesty and will result in an F in the course • Attendance and Class work, ~ 10% • Midterm ~ 20% • Final ~ 20%, last week of class Visual Programming Course Introduction 7

Books • Learning to Program with Alice, Second Edition. • ISBN 10: 013208516 X,

Books • Learning to Program with Alice, Second Edition. • ISBN 10: 013208516 X, ISBN 13: 978 -0132085168 • Publisher: Prentice Hall Visual Programming Course Introduction 8

Homework Procedures • Your must obtain an account for the CS department Elements Lab

Homework Procedures • Your must obtain an account for the CS department Elements Lab • Visit this website to request account • http: //www. cs. utexas. edu/facilities/computing/ – takes at least a day for account to become active. – do this today, please! • account allows you to use computers in CS Microlab in Painter Hall and to turn in programs to an account on Elements lab server – software used in course is available and FREE, so you can work at home if you prefer Visual Programming Course Introduction 9

What is Visual Programming? • What is a computer program? – Do you use

What is Visual Programming? • What is a computer program? – Do you use many programs? – Have you ever written a program? • What skills are necessary for programming? Visual Programming Course Introduction 10

Programming and Computing • NY Times Article by Steve Lohr • http: //www. nytimes.

Programming and Computing • NY Times Article by Steve Lohr • http: //www. nytimes. com/2005/08/23/technol ogy/23 geeks. html • Jamika Burge, a computer grad student at Virginia Tech, logging video of conflict negotiations during her internship at I. B. M. in San Jose. Visual Programming Course Introduction 11

Text Based Programming private String[] get. Word. List() { Scanner s; String temp; JFile.

Text Based Programming private String[] get. Word. List() { Scanner s; String temp; JFile. Chooser chooser = new JFile. Chooser(); Tree. Set<String> words = new Tree. Set<String>(); //open the file chooser and get a file int retval = chooser. show. Open. Dialog(null); chooser. grab. Focus(); if (retval == JFile. Chooser. APPROVE_OPTION) { File source = chooser. get. Selected. File(); try { s = new Scanner( source ); while( s. has. Next() ) { temp = s. next(); if( temp != null && temp. length() == WORD_SIZE ) { words. add( temp ); } } s. close(); } } catch(IOException e) { System. out. println("An error occured while trying “ + “to read from the file: " + e); } return words. to. Array(new String[words. size()]); } Visual Programming Course Introduction 12

Eww!! Visual Programming Course Introduction 13

Eww!! Visual Programming Course Introduction 13

Visual Programming • Use of a graphical interface to create the program instead of

Visual Programming • Use of a graphical interface to create the program instead of text – easier with simple programs – less likely to make mistakes – Visual Basic, Visual C#, Visual C++ • visual tool for creating graphical user interface (GUI), but lots of text based programming still required • IEEE has an annual conference on Visual Languages/Human Centric Computing (VL/HCC) Visual Programming Course Introduction 14

Visual Programming • Lots of true Visual Languages – VIPR, Self, Pygmalion, Prograph and

Visual Programming • Lots of true Visual Languages – VIPR, Self, Pygmalion, Prograph and many, many more – not a lot of commercial successes • Exception: Lab. VIEW • An educational language and tool called Alice Visual Programming Course Introduction 15

An Alice Program Visual Programming Course Introduction 16

An Alice Program Visual Programming Course Introduction 16

Lab. VIEW Program Visual Programming Course Introduction 17

Lab. VIEW Program Visual Programming Course Introduction 17

Demos Visual Programming Course Introduction 18

Demos Visual Programming Course Introduction 18