WHAT HAPPENS AFTER PYTHON IN CS1? *

Size: px
Start display at page:

Download "WHAT HAPPENS AFTER PYTHON IN CS1? *"

Transcription

1 WHAT HAPPENS AFTER PYTHON IN CS1? * Joseph D. Oldham Centre College Danville, KY oldham@centre.edu ABSTRACT In Centre College began using Python as the first language in a breadth first CS1 taken by both majors and non-majors. Shannon described that course our choice of Python for that course in [5]. At this point all matriculating students in our program used Python as a first language in that CS1 course. In general we are happy with the choice, and we have the experience to say why. We can also point out some issues that have arisen as a result of the choice. INTRODUCTION Centre College began using Python as the programming language in CS1 in the academic year. At present all matriculating students began in Python. During summer of 2004 our program committee undertook a curriculum review, with eyes cast toward both CC2001 [7] and the LACS model curriculum [1]. We concluded that we are satisfied with the choice of Python, and we were able to understand why. We were able to note cases where our choice of Python contributed to issues later in the curriculum, and were able to discuss how we address or could address those issues. Our purpose in this paper is to share those observations. Our observations are anecdotal. Our program is not large enough to present a meaningful quantitative analysis. We believe our observations have benefit for others in the Computer Science Education community, especially those considering adopting Python as a first language. The context of our observations is important. CS1 is breadth first course taken by both majors and non-majors. However, we do emphasize programming as described in detail in [5]. Students completing CS1 and continuing in our program typically move into one of two subsequent courses, depending on whether they took CS1 in fall or spring. Fall CS1 students move into a traditional CS2 with emphasis on data structures. The primary * Copyright 2005 by the Consortium for Computing Sciences in Colleges. Permission to copy without fee all or part of this material is granted provided that the copies are not made or distributed for direct commercial advantage, the CCSC copyright notice and the title of the publication and its date appear, and notice is given that copying is by permission of the Consortium for Computing Sciences in Colleges. To copy otherwise, or to republish, requires a fee and/or specific permission. 7

2 JCSC 20, 6 (June 2005) language in CS2 is Java. Spring CS1 students move into a computer organization and architecture course. In that course we choose to focus on the MIPS architecture, as presented in Patterson and Hennessey [4]. Later course offerings are traditional artifact based courses, including operating systems, database, compilers, software engineering, and programming languages. We will begin teaching a software development course, largely as described in the LACS model curriculum [1] in the year. We found cause to reflect on our early use of Python particularly when thinking about CS2, and organization. We still found echoes of Python in CS1 when discussing later courses. GOALS RELATED TO PRGRAMMING IN CS1 We can state our goals for CS1, restricted to what we want students to gain from their programming experience in that course, simply. Students should: 1. Have productive fun in CS1. 2. Learn basic programming concepts and constructs. 3. Get a significant introduction to object oriented programming. Our first goal is important because in our school many majors are found by students taking CS1 for general education credit becoming interested in computing. In broad terms Python fits well with our goals. It: has features that allow students to have more than the usual amount of fun in CS1; includes enough basic programming constructs; supports object orientation without requiring an objects first approach. Others have recognized that Python improves productivity by delivering a positive experience [2]. We agree, and can express this in terms of our goals. We can also provide caveats. PYTHON AND THE STUDENT EXPERIENCE Our students report, and we observe, that they enjoy learning Python in CS1 because Python allows a beginning student to get going quickly on interesting projects. The syntax is generally easy, the environment friendly, and there are built in features that make the language highly expressive even for novice programmers. For example, dictionaries and built-in string functionality help beginning students write programs that deal with more interesting data at lower cost than is found in many early programming experiences. Packages such as VPython [11] or Zelle s graphics module [6] allow beginning students to write programs with graphical components, even in a breadth first course. Python is a language that students perceive as mainstream rather than a useless language. Because Python is freely available on multiple platforms there is no monetary or environmental burden placed on the student. The results of using Python as a first language are almost uniformly positive in terms of student experience. We can be more specific. Python has an active community of open source developers who provide both lively discussions and useful modules. Students learn that they are part of a wider computing community. This lesson enhances continued student enjoyment of and success in the field and the benefit pertains in all subsequent courses. Python is a scripting language. CGI scripting allows students to program to a web interface. CGI scripting also gives students early exposure to topics that appear later: 8

3 CCSC:Mid-South Conference programming with a web interface and event driven programming. Early exposure greatly enhances later experiences. This benefit pertains most directly in our database course and in our planned software development course. Python provides an interactive shell, which encourages students to experiment on the fly. Students learn the fundamental skill of using programming tools to investigate how things work. When considering the student experience and the choice of Python in CS1 we really do not find significant downstream curricular issues. Python in CS1 does a great job helping us meet our first goal or providing students an enjoyable, productive CS1. PYTHON AND BASIC PROGRAMMING CONCEPTS AND CONSTRUCTS Using Python for teaching basic programming offers both benefits and issues. Benefits of Python in Teaching Basic Programming Concepts and Constructs The bulk of Python syntax is mainstream. Operators, if statements, while loops and so on learned in Python are useful in subsequent languages. One significant superficial variation in Python is the use of indentation for grouping statements. However, we observe that students adapt readily to the use of grouping symbols in CS2. Python has excellent string processing and regular expression tools. Students begin programming with strings early on, increasing the breadth of problems we can assign. Students learn basic string handling functionality in a good environment; strings aren t hard. Regular expressions can be introduced as a useful tool and an important theoretic construct. Students can leave CS1 with some experience in simple parsing. Parsing issues can be a hold up in many projects in later courses. This early experience with strings and regular expressions has a broadly applicable benefit downstream. Python has good support for fundamental structures. Python lists are syntactically similar to arrays in most languages, but fully heterogeneous. Python for loops provide a clear mechanism for iteration over lists. Python provides a built-in dictionary type. CS2 students benefit from early familiarity with both indexed and associative structures; they can approach the details of hash tables as simply the details behind a useful tool. Python supports important concepts. We do not prefer an objects first approach, but do teach modularization. Python supports functions and modules. A Python module is a (source) file of functions. The development community extends Python using modules. This has several benefits for our students. Students can examine modules of source code provided by serious developers. Students leave CS1 with concepts of multi-file programming and extending a language by modules. Students immediately begin organizing their own solutions in a modular way. This broadly applicable concept cannot be introduced too soon. Finally, Python has a built-in mechanism for documentation, documentation strings, which is easy to use. Exposing students to a language with built-in documentation support helps demonstrate the importance of documentation. 9

4 JCSC 20, 6 (June 2005) Issues Raised by using Python to Teach Basic Concepts and Constructs Any programming language not designed for classroom use presents pedagogic issues. Our task is to point out the issues we have observed while using Python, and tell the reader what we do about addressing these issues. The broad general issues of many languages appear with Python. Like any other industrial strength language there is more to Python than we care to teach. We must choose an effective subset of the language to cover. In the past students have sometimes raised issue with our choice of text. Until 2004 there has been no CS1 text using Python as the exemplary language. In fall 2004 we began using Zelle s text [6], and were pleased with it on a first go-round. Finally, Python evolves quickly, and changes from release to release can be significant. Since students typically download the latest version of Python, and Python releases do not follow the academic calendar, faculty have to be aware of new releases and their features. Laboratory environments have to be kept reasonably current. For instance, as of Python 2.2, the division operator / has a companion, floor division (//). 7/2 and 2//2 both yield 3, while 7.0/2 yields 3.5 and 7.0//2 yields 3. In Python 3.0 the semantics of / will change, and 7/2 will yield 3.5 [9]. Python development is organized enough, however, to have a defined strategy for changes in the language [8]. More specific issues exist with using Python to teach basic programming. Foremost, Python s dynamic typing leaves students lacking practical exposure to many concepts associated with type. Python variables are associated with an identifier. The variable is created when the identifier appears on the left side of an assignment statement. The identifier is just a label referring to an object. The identifier can be made to refer to any other object by placing the identifier on the left of another assignment statement. Thus, Python declaration is done only at the time of first use and lacks explicit type information. Declarations lack explicit type because all type information is associated with the object referenced, not the identifier that references the object. Students do not have any trouble learning to create and use variables in Python, but they do not learn much about type. (There is one pitfall for students; misspelling a variable name on the left side of an assignment simply creates a new variable with the variant identifier. Thus, x=1 on line 23 creates x, while X=3 10 lines later creates X. For novice programmers the difference between x and X is difficult to spot, and the language does nothing to help.) Introducing students to Java in CS2 allows us to discuss type more completely with students. We do make more of a point of explaining type and distinguishing declaration from definition in CS2 than might be otherwise expected. From the perspective of teaching beginning students, Python offers several other concepts and constructs quirks. Python does not adequately represent compilation or pointers, and its approach to parameter passing is rather odd. Python code is interpreted. Behind the scenes byte code is generated and executed on a virtual machine. From a student s perspective there is no compilation phase. Yet our preferred text in organization refers to compilation as matter of course. Students who come to organization from CS2 (and Java) have less difficulty, having seen a compilation phase, than those who come directly from CS1. Compilation alone might be adequately addressed by the CS2 course. 10

5 CCSC:Mid-South Conference Python (as Java) has no need for explicit pointers. Python creates a unique id for each variable, which is implemented as an address. The built-in function id() can be used to obtain this value. When variable x is assigned a new value, x gets a new id. This introduces the concept of addressing, but it is not equivalent to students using pointers. Python uses pass by assignment semantics in function calls. Roughly speaking this means that the formal parameter of the function is a reference to the actual parameter up until the formal parameter is assigned a new value. At that point the formal parameter no longer references the actual parameter, and their respective values need no longer agree. (This can look like value semantics.) These semantics are not unique [10]. These semantics are consistent within Python. However, it is difficult to address the traditional distinction between value, reference and address parameters in this context. Having moved to more modern languages in CS1 and CS2 we find we face several concept and construct issues. We conclude that the students need a better understanding of compilation following CS1, an understanding of pointers following CS1 and CS2, and a better model to discuss parameter passing. Since our organization text refers to C and compilation we have chosen to address these issues directly in the organization course. We will provide a brief, focused introduction to C by way of background at the outset of the organization course beginning spring OBJECT ORIENTATION IN PYTHON In CS1 we seek only to introduce object orientation. Using Python students begin using objects almost immediately. As with Python dictionaries, we believe early use facilitates subsequent student understanding of both concept and mechanism. After students have written several useful programs without writing their own classes we can have them develop meaningful classes in preparation for Java in CS2. However, Python s flavor of object orientation introduces some issues. Issues Raised by using Python to teach Object Orientation Python does not support data hiding well. In Python, data hiding is a convention, not a syntactical constraint [3]. In other words, there really is no such thing as a private data member. If one wants to teach object oriented design with strict data hiding from the outset then Python may be a poor choice. Rather than introduce the details of Python s conventions for pseudo-private attributes, we require students to use getters and setters for attributes when building Python classes. Our students may not write perfectly idiomatic Python, but they will develop habits we want. In Python, instance variables (corresponding to Java instance fields) are defined in the init () function (constructor.) Variables defined in the class definition are shared by all instances (Java static fields.) Python instances can override class variables using the same identifier. For example, given class C, initially each instance may share class field F. However, it is perfectly legal for C object O j to assign a unique value to F, so that O j.f C.F, while for all k j, O k.f==c.f. Because shared fields may not be important in CS1 this could be ignored. However, these semantics are consistent with the following legal behavior. Objects O j and O k are instances of class C. Each has a single 11

6 JCSC 20, 6 (June 2005) instance field F1. The following is perfectly legal: O j.f2 = 1. Now O j has instance field F2, but O k does not have such a field. While not unique to Python and sometimes useful, these semantics make could make it difficult to teach or learn the basic idea of using a class to model a set of objects with common features. This is another aspect of Python s object orientation that we simply avoid. We prefer the model of object orientation in Java. We ignore or discourage use of Python features that are inconsistent with the Java model. However, Python allows us to impart some basic, useful object oriented concepts, which benefit students entering CS2. CONCLUSIONS It is always difficult to judge the effects of curricular change in any objective way. Our program is too small for meaningful statistical analysis. We can observe that there is little difference in the percentage of students going from CS1 to the next available computing course when we compare a period of time just before our switch to Python to a period of time after the change. (See Table 1.) Further, our graduates in Computer Science have taken the ETS exam for a number of years, and we cannot recognize any significant change in scores on the ETS exam following the introduction of Python. Table 1. S98 F99 (pre Python) S03-F04 (post Python) CS1 Enrollment Next Course Enrollment R e t e n t i o n (Next/CS1) 58% 54% Qualitatively, while we recognize some issues raised by starting students in Python, we do not believe they are worse than the set of issues we would face given any other choice for a first language. None of the issues we have recognized is particularly difficult to handle. Most issues are addressed naturally in CS2 or the Computer Organization course. The most important response is for faculty to be aware of what the CS1 experience with Python does and does not provide. On the other hand, some of the benefits of Python, especially the less tangible benefits discussed above as part of the student experience, persist throughout the curriculum. Our program remains committed to using Python in CS1. For us it seems a good fit; we enjoy seeing the students have fun. The course receives good marks on student evaluations and on senior exit interviews. We offer this review to help guide others in their decision making if they are considering moving to Python, or to help them recognize pitfalls if they have recently adopted Python. REFERENCES [1] Liberal Arts Computer Science Consortium, A 2004 Model for a Liberal Arts Degree in Computer Science, February 27, 2004 draft, available at (Visited September 6, 2004.) 12

7 CCSC:Mid-South Conference [2] Hendrix, Amy, Snake Charmer, NetWorker, 8, 1 (March 2004), [3] Lutz, M., Ascher, D., Learning Python, second edition. O Reilly, 2003 [4] Patterson, A., Hennessy, J., Computer Organization and Design: The Hardware / Software Interface, second edition. Moran Kaufmann, San Francisco, CA, [5] Shannon, C., Another breadth-first approach to CS I using Python. In Proceedings of the 34 th SIGCSE technical symposium on Computer science education (SIGCSE 03) (Reno, Nevada, USA). ACM Press, New York, NY, 2003, [6] Zelle, J. Python Programming: An Introduction to Computer Science. Franklin, Beedle & Associates, Wilsonville, OR, [7] Computing Curricula 2001 Computer Science Volume. Available at (Visited September 6, 2004.) [8] (Visited September 6, 2004). [9] (Visited September 6, 2004). [10] (Visited September 6, 2004). [11] (Visited September 6, 2004). 13

Multi-Paradigm Approach for Teaching Programming

Multi-Paradigm Approach for Teaching Programming Multi-Paradigm Approach for Teaching Laxmi P Gewali* and John T Minor School of Computer Science University of Nevada, Las Vegas 4505 Maryland Parkway, Las Vegas Nevada 89154 Abstract: Selecting an appropriate

More information

Extensible and Dynamic Data Structure Viewers in Java

Extensible and Dynamic Data Structure Viewers in Java Extensible and Dynamic Data Structure Viewers in Java Jhilmil Jain Computer Science and Software Engineering Department, Auburn University, Auburn AL Email: jainjhi@auburn.edu Problem & motivation Many

More information

Curriculum Mapping for National Curriculum Statement Grades R-12 and Oracle Academy.

Curriculum Mapping for National Curriculum Statement Grades R-12 and Oracle Academy. Curriculum Mapping for National Curriculum Statement Grades R-12 and Oracle Academy. Contents Executive Summary... 3 IT Curriculum Overview... 3 Aims... 3 Oracle Academy Introduction to Computer Science...

More information

CRITERIA FOR ACCREDITING COMPUTING PROGRAMS

CRITERIA FOR ACCREDITING COMPUTING PROGRAMS CRITERIA FOR ACCREDITING COMPUTING PROGRAMS Effective for Reviews During the 2014-2015 Accreditation Cycle Incorporates all changes approved by the ABET Board of Directors as of October 26, 2013 Computing

More information

TOOLS AND TECHNIQUES FOR TEST-DRIVEN LEARNING IN CS1

TOOLS AND TECHNIQUES FOR TEST-DRIVEN LEARNING IN CS1 TOOLS AND TECHNIQUES FOR TEST-DRIVEN LEARNING IN CS1 ABSTRACT Test-Driven Development is a design strategy where a set of tests over a class is defined prior to the implementation of that class. The goal

More information

CPS122 Lecture: From Python to Java last revised January 4, Objectives:

CPS122 Lecture: From Python to Java last revised January 4, Objectives: Objectives: CPS122 Lecture: From Python to Java last revised January 4, 2017 1. To introduce the notion of a compiled language 2. To introduce the notions of data type and a statically typed language 3.

More information

Preface A Brief History Pilot Test Results

Preface A Brief History Pilot Test Results Preface A Brief History In Fall, 2005, Wanda Dann and Steve Cooper, originators of the Alice approach for introductory programming (in collaboration with Randy Pausch), met with Barb Ericson and Mark Guzdial,

More information

EMBEDDING CYBERSECURITY IN THE SECOND PROGRAMMING COURSE (CS2) *

EMBEDDING CYBERSECURITY IN THE SECOND PROGRAMMING COURSE (CS2) * EMBEDDING CYBERSECURITY IN THE SECOND PROGRAMMING COURSE (CS2) * Michael Verdicchio, Deepti Joshi, Shankar M. Banik Department of Mathematics and Computer Science The Citadel Charleston, SC 29409 843 953-5039

More information

Curriculum Outcome Assesment using Subject Matter on the FE Examination.

Curriculum Outcome Assesment using Subject Matter on the FE Examination. Session : Curriculum Outcome Assesment using Subject Matter on the FE Examination. Enno Ed Koehn, Ramakanth Mandalika Lamar University Abstract: In engineering education, assessment has become a major

More information

Updating the contents and structure of Computer Engineering Larry Hughes Electrical and Computer Engineering Dalhousie University 18 November 2016

Updating the contents and structure of Computer Engineering Larry Hughes Electrical and Computer Engineering Dalhousie University 18 November 2016 Introduction Updating the contents and structure of Computer Engineering Larry Hughes Electrical and Computer Engineering Dalhousie University 8 November 06 The Department of Electrical and Computer Engineering

More information

Computing Accreditation Commission Version 2.0 CRITERIA FOR ACCREDITING COMPUTING PROGRAMS

Computing Accreditation Commission Version 2.0 CRITERIA FOR ACCREDITING COMPUTING PROGRAMS Computing Accreditation Commission Version 2.0 CRITERIA FOR ACCREDITING COMPUTING PROGRAMS Optional for Reviews During the 2018-2019 Accreditation Cycle Mandatory for Reviews During the 2019-2020 Accreditation

More information

FOUNDATIONS OF A CROSS-DISCIPLINARY PEDAGOGY FOR BIG DATA *

FOUNDATIONS OF A CROSS-DISCIPLINARY PEDAGOGY FOR BIG DATA * FOUNDATIONS OF A CROSS-DISCIPLINARY PEDAGOGY FOR BIG DATA * Joshua Eckroth Stetson University DeLand, Florida 386-740-2519 jeckroth@stetson.edu ABSTRACT The increasing awareness of big data is transforming

More information

Department of Business Information Technology

Department of Business Information Technology Department of Business Information Technology 1 Department of Business Information Technology Chair Lorraine J. Willoughby Phone: 701-858-3314 Toll-Free: 1-800-777-0750, ext. 3308 Department Phone: 701-858-3308

More information

Please consult the Department of Engineering about the Computer Engineering Emphasis.

Please consult the Department of Engineering about the Computer Engineering Emphasis. COMPUTER SCIENCE Computer science is a dynamically growing discipline. ABOUT THE PROGRAM The Department of Computer Science is committed to providing students with a program that includes the basic fundamentals

More information

Blending Information Systems Security and Forensics Curricula

Blending Information Systems Security and Forensics Curricula Association for Information Systems AIS Electronic Library (AISeL) MWAIS 2012 Proceedings Midwest (MWAIS) 5-2012 Blending Information Systems Security and Forensics Curricula Jason Ferguson Friends University,

More information

USING EPORTFOLIOS TO PROMOTE STUDENT SUCCESS THROUGH HIGH- IMPACT PRACTICES

USING EPORTFOLIOS TO PROMOTE STUDENT SUCCESS THROUGH HIGH- IMPACT PRACTICES P a g e 1 ALBERTUS MAGNUS COLLEGE USING EPORTFOLIOS TO PROMOTE STUDENT SUCCESS THROUGH HIGH- IMPACT PRACTICES PROJECT REPORT, JUNE 14, 2012 STATUS OF PROJECT GOALS With the support of the Davis Educational

More information

INF - INFORMATION SCIENCES

INF - INFORMATION SCIENCES INF - INFORMATION SCIENCES INF 6000 Introduction to Information Management Cr. 3 Introduction to current data/information management from an interdisciplinary perspective, incorporating the latest ideas,

More information

ETHICAL ISSUES IN WEB DESIGN *

ETHICAL ISSUES IN WEB DESIGN * ETHICAL ISSUES IN WEB DESIGN * Dr. James K. Harris Department of Computer Sciences Georgia Southern University Statesboro, GA 30461 912-478-CSCS jkharris@georgiasouthern.edu ABSTRACT This paper explores

More information

This course supports the assessment for Scripting and Programming Applications. The course covers 4 competencies and represents 4 competency units.

This course supports the assessment for Scripting and Programming Applications. The course covers 4 competencies and represents 4 competency units. This course supports the assessment for Scripting and Programming Applications. The course covers 4 competencies and represents 4 competency units. Introduction Overview Advancements in technology are

More information

Recent Developments in Career and Technical Education. New York State Education Department November 2016

Recent Developments in Career and Technical Education. New York State Education Department November 2016 Recent Developments in Career and Technical Education New York State Education Department November 2016 Topics Graduation Pathways- CTE and CDOS CTE Teacher Certification CTE and ESSA Graduation Pathways

More information

Title Core TIs Optional TIs Core Labs Optional Labs. All None 1.1.6, 1.1.7, and Network Math All None None 1.2.5, 1.2.6, and 1.2.

Title Core TIs Optional TIs Core Labs Optional Labs. All None 1.1.6, 1.1.7, and Network Math All None None 1.2.5, 1.2.6, and 1.2. CCNA 1 Plan for Academy Student Success (PASS) CCNA 1 v3.1 Instructional Update # 2006-1 This Instructional Update has been issued to provide guidance on the flexibility that Academy instructors now have

More information

Creating an Eportfolio with MS FrontPage: It Doesn t Get Any Easier! Steve M. Hyndman June Hyndman Eastern Kentucky University.

Creating an Eportfolio with MS FrontPage: It Doesn t Get Any Easier! Steve M. Hyndman June Hyndman Eastern Kentucky University. Creating an Eportfolio with MS FrontPage: It Doesn t Get Any Easier! Steve M. Hyndman June Hyndman Eastern Kentucky University Abstract In recent years, many Colleges of Education have converted the educator

More information

CompuScholar, Inc. Alignment to Nevada "Computer Science" Course Standards

CompuScholar, Inc. Alignment to Nevada Computer Science Course Standards CompuScholar, Inc. Alignment to Nevada "Computer Science" Course Standards Nevada Course Details: Course Name: Computer Science Primary Cluster: Information and Media Technologies Standards Course Code(s):

More information

EFFECTIVE AND EFFICIENT USE OF THE FUNDAMENTALS OF ENGINEERING EXAM FOR OUTCOMES ASSESSMENT

EFFECTIVE AND EFFICIENT USE OF THE FUNDAMENTALS OF ENGINEERING EXAM FOR OUTCOMES ASSESSMENT EFFECTIVE AND EFFICIENT USE OF THE FUNDAMENTALS OF ENGINEERING EXAM FOR OUTCOMES ASSESSMENT ASEE Annual Conference June 2014 John Steadman, Ph.D., P.E., University of South Alabama David Whitman, Ph.D.,

More information

Electronic portfolios: balancing learning and assessment

Electronic portfolios: balancing learning and assessment Electronic portfolios: balancing learning and assessment Gail Ring Clemson University, USA Abstract In 2006, our university instituted a requirement that all undergraduates create and submit a digital

More information

Integrating Multiple Approaches for Interacting with Dynamic Data Structure Visualizations

Integrating Multiple Approaches for Interacting with Dynamic Data Structure Visualizations Electronic Notes in Theoretical Computer Science 224 (2009) 141 149 www.elsevier.com/locate/entcs Integrating Multiple Approaches for Interacting with Dynamic Data Structure Visualizations James H. Cross

More information

Course Text. Course Description. Course Objectives. StraighterLine Introduction to Programming in C++

Course Text. Course Description. Course Objectives. StraighterLine Introduction to Programming in C++ Introduction to Programming in C++ Course Text Programming in C++, Zyante, Fall 2013 edition. Course book provided along with the course. Course Description This course introduces programming in C++ and

More information

Test-Driven Design for Introductory OO Programming. Viera Krňanová Proulx. Northeastern University. SIGCSE 2009, Chatanooga, TN

Test-Driven Design for Introductory OO Programming. Viera Krňanová Proulx. Northeastern University. SIGCSE 2009, Chatanooga, TN Test-Driven Design for Introductory OO Programming Viera Krňanová Proulx Northeastern University vkp@ccs.neu.edu SIGCSE 2009, Chatanooga, TN 1 Disclaimer This is not TDD TeachScheme/ReachJava curriculum

More information

Your Student s Head Start on Career Goals and College Aspirations

Your Student s Head Start on Career Goals and College Aspirations Your Student s Head Start on Career Goals and College Aspirations INFORMATION TECHNOLOGY (IT) NETWORKING PATHWAY The Destinations Networking Pathway prepares students to test and evaluate computer network

More information

Agenda. Why choose our specification The GCSE reforms Changes to all GCSEs in Business Our new GCSE (9-1) qualification

Agenda. Why choose our specification The GCSE reforms Changes to all GCSEs in Business Our new GCSE (9-1) qualification Launch event Agenda Why choose our specification The GCSE reforms Changes to all GCSEs in Business Our new GCSE (9-1) qualification Overview Content Assessment Support Contact details and next steps 2

More information

CPS122 Lecture: From Python to Java

CPS122 Lecture: From Python to Java Objectives: CPS122 Lecture: From Python to Java last revised January 7, 2013 1. To introduce the notion of a compiled language 2. To introduce the notions of data type and a statically typed language 3.

More information

A Java Execution Simulator

A Java Execution Simulator A Java Execution Simulator Steven Robbins Department of Computer Science University of Texas at San Antonio srobbins@cs.utsa.edu ABSTRACT This paper describes JES, a Java Execution Simulator that allows

More information

GLS UNIVERSITY. Faculty of Computer Technology Master of Computer Applications (MCA) Programme

GLS UNIVERSITY. Faculty of Computer Technology Master of Computer Applications (MCA) Programme GLS UNIVERSITY Faculty of Computer Technology Master of Computer Applications (MCA) Programme 1. GLS University s Master of Computer Applications programme is a three-year full-time postgraduate programme

More information

IT Specialist, Associate of Applied Science Outcomes Assessment Implementation Summary. Academic Year

IT Specialist, Associate of Applied Science Outcomes Assessment Implementation Summary. Academic Year UNIVERSITY OF ALASKA FAIRBANKS Outcomes Assessment Implementation Summary Information Technology Specialist, A.A.S. College of Rural and Community Development IT Specialist, Associate of Applied Science

More information

Report to External Review Board

Report to External Review Board Report to External Review Board Brigham Young University Civil & Environmental Engineering October 14, 2005 ABET Accreditation ABET requires outcomes-based strategy with clear objectives and assessment

More information

Ursuline College Accelerated Program

Ursuline College Accelerated Program Ursuline College Accelerated Program CRITICAL INFORMATION! DO NOT SKIP THIS LINK BELOW... BEFORE PROCEEDING TO READ THE UCAP MODULE, YOU ARE EXPECTED TO READ AND ADHERE TO ALL UCAP POLICY INFORMATION CONTAINED

More information

INCORPORATING ADVANCED PROGRAMMING TECHNIQUES IN THE COMPUTER INFORMATION SYSTEMS CURRICULUM

INCORPORATING ADVANCED PROGRAMMING TECHNIQUES IN THE COMPUTER INFORMATION SYSTEMS CURRICULUM INCORPORATING ADVANCED PROGRAMMING TECHNIQUES IN THE COMPUTER INFORMATION SYSTEMS CURRICULUM Charles S. Saxon, Eastern Michigan University, charles.saxon@emich.edu ABSTRACT Incorporating advanced programming

More information

Coding and Unit Testing! The Coding Phase! Coding vs. Code! Coding! Overall Coding Language Trends!

Coding and Unit Testing! The Coding Phase! Coding vs. Code! Coding! Overall Coding Language Trends! Requirements Spec. Design Coding and Unit Testing Characteristics of System to be built must match required characteristics (high level) Architecture consistent views Software Engineering Computer Science

More information

PART-TIME MASTER S DEGREE PROGRAM. Information Systems. Choose from seven specializations study on campus and online.

PART-TIME MASTER S DEGREE PROGRAM. Information Systems. Choose from seven specializations study on campus and online. PART-TIME MASTER S DEGREE PROGRAM Information Systems Choose from seven specializations study on campus and online. The IT program for leaders MASTER OF SCIENCE IN INFORMATION SYSTEMS The part-time MSIS

More information

MLIS eportfolio Guidelines

MLIS eportfolio Guidelines ST. CATHERINE UNIVERSITY MLIS eportfolio Guidelines APRIL 15, 2018 LIS 8900 EPORTFOLIO (0 CREDIT) All students are required to complete an eportfolio in order to fulfill graduation requirements. Students

More information

CALIFORNIA STATE POLYTECHNIC UNIVERSITY, POMONA ACADEMIC SENATE ACADEMIC PROGRAMS COMMITTEE REPORT TO THE ACADEMIC SENATE AP

CALIFORNIA STATE POLYTECHNIC UNIVERSITY, POMONA ACADEMIC SENATE ACADEMIC PROGRAMS COMMITTEE REPORT TO THE ACADEMIC SENATE AP CALIFORNIA STATE POLYTECHNIC UNIVERSITY, POMONA ACADEMIC SENATE ACADEMIC PROGRAMS COMMITTEE REPORT TO THE ACADEMIC SENATE AP-088-167 Electronic Systems Engineering Technology BS FOR SEMESTERS Academic

More information

VISUALIZING NP-COMPLETENESS THROUGH CIRCUIT-BASED WIDGETS

VISUALIZING NP-COMPLETENESS THROUGH CIRCUIT-BASED WIDGETS University of Portland Pilot Scholars Engineering Faculty Publications and Presentations Shiley School of Engineering 2016 VISUALIZING NP-COMPLETENESS THROUGH CIRCUIT-BASED WIDGETS Steven R. Vegdahl University

More information

SOFTWARE ENGINEERING. Curriculum in Software Engineering. Program Educational Objectives

SOFTWARE ENGINEERING. Curriculum in Software Engineering. Program Educational Objectives Software Engineering 1 SOFTWARE ENGINEERING For the undergraduate curriculum in Software Engineering (http:// www.se.iastate.edu) leading to the degree Bachelor of Science. This curriculum is accredited

More information

Coding: Beyond Learning Microsoft in Education

Coding: Beyond Learning Microsoft in Education Coding: Beyond Learning Microsoft in Education WeSpeakCode Week: 23-29 March 2015 What? Complete Technology Education Solution (for Students, Teachers, Staff) Why? Develop Creativity Establish computational

More information

Comprehensive Program Review Report

Comprehensive Program Review Report Comprehensive Program Review Report Program Review - Information Technology Prepared by: Ramyar Alavi-Moghaddam What are the strengths of your area?: 1. The current program has close alignment with industry

More information

Liberal Arts and Science Test (LAST)

Liberal Arts and Science Test (LAST) Assessment I: Licensure Assessment Brief Description of Assessment and its Use in the Program Candidates wishing to teach children Birth - Grade 2 are required to pass The New York State Teacher Certification

More information

MASTER OF SCIENCE (M.S.) MAJOR IN COMPUTER SCIENCE (NON-THESIS OPTION)

MASTER OF SCIENCE (M.S.) MAJOR IN COMPUTER SCIENCE (NON-THESIS OPTION) Master of Science (M.S.) Major in Computer Science (Non-thesis Option) 1 MASTER OF SCIENCE (M.S.) MAJOR IN COMPUTER SCIENCE (NON-THESIS OPTION) Major Program The Master of Science (M.S.) degree with a

More information

COMPUTER SCIENCE AND ENGINEERING (CSEG)

COMPUTER SCIENCE AND ENGINEERING (CSEG) Bucknell University 1 COMPUTER SCIENCE AND ENGINEERING (CSEG) Faculty Professors: Xiannong Meng, Luiz Felipe Perrone Associate Professors: Stephen M. Guattery (Chair), Brian R. King, Lea D. Wittie Assistant

More information

Response to the Validation Panel for the DIT Foundation Programmes

Response to the Validation Panel for the DIT Foundation Programmes Response to the Validation Panel for the DIT Foundation Programmes Condition: The programme should be presented as two separate programmes with separate programme documentation, including programme aims,

More information

Frame for Evaluation. Spring Semester

Frame for Evaluation. Spring Semester Southern Illinois University Carbondale College of Applied Sciences and Arts School of Allied Health Medical Dosimetry Program Assessment Plan Spring 2017 Analysis and Actions MISSION: The mission of the

More information

MSc(IT) Program. MSc(IT) Program Educational Objectives (PEO):

MSc(IT) Program. MSc(IT) Program Educational Objectives (PEO): MSc(IT) Program Master of Science (Information Technology) is an intensive program designed for students who wish to pursue a professional career in Information Technology. The courses have been carefully

More information

CALIFORNIA STATE POLYTECHNIC UNIVERSITY, POMONA ACADEMIC SENATE ACADEMIC PROGRAMS COMMITTEE REPORT TO THE ACADEMIC SENATE AP

CALIFORNIA STATE POLYTECHNIC UNIVERSITY, POMONA ACADEMIC SENATE ACADEMIC PROGRAMS COMMITTEE REPORT TO THE ACADEMIC SENATE AP CALIFORNIA STATE POLYTECHNIC UNIVERSITY, POMONA ACADEMIC SENATE ACADEMIC PROGRAMS COMMITTEE REPORT TO THE ACADEMIC SENATE AP-091-167 Electromechanical Systems Engineering Technology BS FOR SEMESTERS Academic

More information

Introduction to Computer Science and Business

Introduction to Computer Science and Business Introduction to Computer Science and Business The Database Programming with PL/SQL course introduces students to the procedural language used to extend SQL in a programatic manner. This course outline

More information

CPS122 Lecture: Course Intro; Introduction to Object-Orientation

CPS122 Lecture: Course Intro; Introduction to Object-Orientation Objectives: CPS122 Lecture: Course Intro; Introduction to Object-Orientation 1. To introduce the course requirements and procedures. 2. To introduce fundamental concepts of OO: object, class Materials:

More information

COP 1220 Introduction to Programming in C++ Course Justification

COP 1220 Introduction to Programming in C++ Course Justification Course Justification This course is a required first programming C++ course in the following degrees: Associate of Arts in Computer Science, Associate in Science: Computer Programming and Analysis; Game

More information

CIS* Programming

CIS* Programming CIS*1300 - Programming CALENDAR DESCRIPTION This course examines the applied and conceptual aspects of programming. Topics may include data and control structures, program design, problem solving and algorithm

More information

Deanship of Academic Development. Comprehensive eportfolio Strategy for KFU Dr. Kathryn Chang Barker Director, Department of Professional Development

Deanship of Academic Development. Comprehensive eportfolio Strategy for KFU Dr. Kathryn Chang Barker Director, Department of Professional Development Deanship of Academic Development Comprehensive eportfolio Strategy for KFU Dr. Kathryn Chang Barker Director, Department of Professional Development The new Department of Professional Development (DPD)

More information

THE ORTHOGONALITY IN C++ *

THE ORTHOGONALITY IN C++ * THE ORTHOGONALITY IN C++ * Feng-Jen Yang Computer Science Department Prairie View A&M University Prairie View, TX 77446 936 261-9883 fengjen_yang@pvamu.edu ABSTRACT Orthogonality was first introduced to

More information

FITC Institute Final Report Appendix K. Curriculum Analysis Report: Florida State University Computer Science Program

FITC Institute Final Report Appendix K. Curriculum Analysis Report: Florida State University Computer Science Program FITC Institute Final Report Appendix K Curriculum Analysis Report: June 9, 2015 Chandrahasa Ambavarapu, Graduate Research Assistant Jinxuan Ma, Ph.D., Post-Doctoral Researcher Heather Kelleher, Graduate

More information

Title Core TIs Optional TIs Core Labs Optional Labs. All None 1.1.4a, 1.1.4b, 1.1.4c, 1.1.5, WAN Technologies All None None None

Title Core TIs Optional TIs Core Labs Optional Labs. All None 1.1.4a, 1.1.4b, 1.1.4c, 1.1.5, WAN Technologies All None None None CCNA 4 Plan for Academy Student Success (PASS) CCNA 4 v3.1 Instructional Update # 2006-1 This Instructional Update has been issued to provide guidance to the Academy instructors on the flexibility that

More information

KOMAR UNIVERSITY OF SCIENCE AND TECHNOLOGY (KUST)

KOMAR UNIVERSITY OF SCIENCE AND TECHNOLOGY (KUST) Programming Concepts & Algorithms Course Syllabus Course Title Course Code Computer Department Pre-requisites Course Code Course Instructor Programming Concepts & Algorithms + lab CPE 405C Computer Department

More information

Student Performance Q&A:

Student Performance Q&A: Student Performance Q&A: 2004 AP Computer Science A Free-Response Questions The following comments on the 2004 free-response questions for AP Computer Science A were written by the Chief Reader, Chris

More information

BETHESDA CHEVY CHASE HIGH SCHOOL Career and Technology Education Department

BETHESDA CHEVY CHASE HIGH SCHOOL Career and Technology Education Department BETHESDA CHEVY CHASE HIGH SCHOOL Career and Technology Education Department Mr. Jonathan Nateghi-Asli Jonathan_A_Nateghi-Asli@mcpsmd.org Resource Teacher http://bit.ly/bcctechnology Graduation Requirements

More information

CIM Level 3 Foundation Certificate in Marketing

CIM Level 3 Foundation Certificate in Marketing Qualification Specification: CIM Level 3 Foundation Certificate in Marketing About CIM CIM (The Chartered Institute of Marketing) has been representing its members and the industry for over 100 years.

More information

COP 1170 Introduction to Computer Programming using Visual Basic

COP 1170 Introduction to Computer Programming using Visual Basic Course Justification This course is the first computer programming course in the Computer Information Systems Associate in Arts degree program; is required in the Computer Programming and Analysis, Database

More information

COURSE OUTLINE. School of Engineering Technology and Applied Science. Computer Systems and Networks Technology (CSNT) PRE-REQUISITES/CO-REQUISITES:

COURSE OUTLINE. School of Engineering Technology and Applied Science. Computer Systems and Networks Technology (CSNT) PRE-REQUISITES/CO-REQUISITES: COURSE OUTLINE SCHOOL: School of Engineering Technology and Applied Science DEPARTMENT: Information and Communication Engineering Technology (ICET) PROGRAM: COURSE TITLE: Computer Systems and Networks

More information

Information Technology Certified Computer Professional Certification: Should Four-year Institutions Embrace It?

Information Technology Certified Computer Professional Certification: Should Four-year Institutions Embrace It? Information Technology Certified Computer Professional : Should Four-year Institutions Embrace It? Al Fundaburk This research surveyed 353 information technology professionals with certification from the

More information

School of Engineering & Computational Sciences

School of Engineering & Computational Sciences Catalog: Undergraduate Catalog 2014-2015 [Archived Catalog] Title: School of Engineering and Computational Sciences School of Engineering & Computational Sciences Administration David Donahoo, B.S., M.S.

More information

School of Engineering & Built Environment

School of Engineering & Built Environment School of Engineering & Built Environment BSc (Hons) in Cyber Security and Networks Programme Specification Proforma (PSP) 2015/2016 Programme Specification Document 2015/2016 BSc (Hons) in Cyber Security

More information

BIM Goes to School AUTODESK REVIT BUILDING INFORMATION MODELING. BIM in the Architectural Curriculum. Savannah College of Art and Design, USA

BIM Goes to School AUTODESK REVIT BUILDING INFORMATION MODELING. BIM in the Architectural Curriculum. Savannah College of Art and Design, USA AUTODESK REVIT BUILDING INFORMATION MODELING As BIM adoption grows in the building industry, so does the use of BIM in educational curricula. This white paper focuses on how BIM is being leveraged within

More information

Guidelines for Texas Skill Standards Based Program Recognition

Guidelines for Texas Skill Standards Based Program Recognition Guidelines for Texas Skill Standards Based Program Recognition Texas Workforce Investment Council 1100 San Jacinto Boulevard, Suite 1.100 Austin, Texas 78701 (512) 936 8100 www.gov.texas.gov/twic Publication

More information

Assessment Plan. Academic Cycle

Assessment Plan. Academic Cycle College of Business and Technology Assessment Plan Division or Department: School of Business (Accounting, BS) Prepared by: Nat Briscoe Date: June 21, 2017 Approved by: Margaret Kilcoyne Date: June 21,

More information

CIS 120. Introduction to Programming

CIS 120. Introduction to Programming CIS 120 Introduction to Programming Approved: May 6, 2011 EFFECTIVE DATE: Fall 2011 COURSE PACKAGE FORM Contact Person (s) Matt Butcher, Andra Goldberg, Dave White, Steve Sorden Date of proposal to Curriculum

More information

Academic Program Review Cyber Security College of Southern Nevada 2017

Academic Program Review Cyber Security College of Southern Nevada 2017 Academic Program Review Cyber Security College of Southern Nevada 2017 ACADEMIC EVALUATION WORKSHEET PROGRAM ASSESSMENT DATA Date Submitted: Submitted by: Margaret Taylor PROGRAM Assessment Data to be

More information

Assessment Plan. Academic Cycle

Assessment Plan. Academic Cycle College of Business and Technology Division or Department: School of Business (Business Administration, BS) Prepared by: Marcia Hardy Date: June 21, 2017 Approved by: Margaret Kilcoyne Date: June 21, 2017

More information

COMPUTER SCIENCE (CSCI)

COMPUTER SCIENCE (CSCI) Bucknell University 1 COMPUTER SCIENCE (CSCI) Faculty Professors: Xiannong Meng, Luiz Felipe Perrone Associate Professors: Stephen M. Guattery (Chair), Brian R. King, Lea D. Wittie Assistant Professors:

More information

About the course.

About the course. 1 About the course www.sheffield.ac.uk/is Skills relevant to your career Our MSc in Information Systems provides you with the practical knowledge you need in the fastgrowing field of information systems.

More information

Title Core TIs Optional TIs Core Labs Optional Labs. 1.1 WANs All None None None. All None None None. All None 2.2.1, 2.2.4, 2.2.

Title Core TIs Optional TIs Core Labs Optional Labs. 1.1 WANs All None None None. All None None None. All None 2.2.1, 2.2.4, 2.2. CCNA 2 Plan for Academy Student Success (PASS) CCNA 2 v3.1 Instructional Update # 2006-1 This Instructional Update has been issued to provide guidance on the flexibility that Academy instructors now have

More information

Comparing Two Program Contents with Computing Curricula 2005 Knowledge Areas

Comparing Two Program Contents with Computing Curricula 2005 Knowledge Areas Comparing Two Program Contents with Computing Curricula 2005 Knowledge Areas Azad Ali, Indiana University of Pennsylvania azad.ali@iup.edu Frederick G. Kohun, Robert Morris University kohun@rmu.edu David

More information

Model Curriculum for K-12 Computer Science: Draft Report of the ACM K-12 Task Force Curriculum Committee*

Model Curriculum for K-12 Computer Science: Draft Report of the ACM K-12 Task Force Curriculum Committee* Model Curriculum for K-12 Computer Science: Draft Report of the ACM K-12 Task Force Curriculum Committee* Allen Tucker (Chair) - Bowdoin College Fadi Deek - New Jersey Inst. of Technology Jill Jones -

More information

Loyola Marymount University School of Education

Loyola Marymount University School of Education Loyola Marymount University School of Education The California Teaching Performance Assessment (CalTPA) Frequently Asked Questions The information presented in this guide is meant to serve as introductory

More information

Higher National Unit specification: general information. Graded Unit 2

Higher National Unit specification: general information. Graded Unit 2 Higher National Unit specification: general information This Graded Unit has been validated as part of the HND Computing: Software Development. Centres are required to develop the assessment instrument

More information

A SHIFT OF ACCENT IN INTRODUCTORY OBJECT ORIENTED PROGRAMMING COURSES. Eugeni Gentchev*, Claudia Roda**

A SHIFT OF ACCENT IN INTRODUCTORY OBJECT ORIENTED PROGRAMMING COURSES. Eugeni Gentchev*, Claudia Roda** A SHIFT OF ACCENT IN INTRODUCTORY OBJECT ORIENTED PROGRAMMING COURSES Eugeni Gentchev*, Claudia Roda** * The American University of Paris, Computer Science Department 148 rue de Grenelle, 75007 Paris,

More information

CS112 Lecture: Defining Instantiable Classes

CS112 Lecture: Defining Instantiable Classes CS112 Lecture: Defining Instantiable Classes Last revised 2/3/05 Objectives: 1. To describe the process of defining an instantiable class 2. To discuss public and private visibility modifiers. Materials:

More information

CONCENTRATIONS: HIGH-PERFORMANCE COMPUTING & BIOINFORMATICS CYBER-SECURITY & NETWORKING

CONCENTRATIONS: HIGH-PERFORMANCE COMPUTING & BIOINFORMATICS CYBER-SECURITY & NETWORKING MAJOR: DEGREE: COMPUTER SCIENCE MASTER OF SCIENCE (M.S.) CONCENTRATIONS: HIGH-PERFORMANCE COMPUTING & BIOINFORMATICS CYBER-SECURITY & NETWORKING The Department of Computer Science offers a Master of Science

More information

CS2900 Introductory Programming with Python and C++ Kevin Squire LtCol Joel Young Fall 2007

CS2900 Introductory Programming with Python and C++ Kevin Squire LtCol Joel Young Fall 2007 CS2900 Introductory Programming with Python and C++ Kevin Squire LtCol Joel Young Fall 2007 Course Web Site http://www.nps.navy.mil/cs/facultypages/squire/cs2900 All course related materials will be posted

More information

Compilers. Prerequisites

Compilers. Prerequisites Compilers Prerequisites Data structures & algorithms Linked lists, dictionaries, trees, hash tables Formal languages & automata Regular expressions, finite automata, context-free grammars Machine organization

More information

Academic Program Plan for Assessment of Student Learning Outcomes The University of New Mexico

Academic Program Plan for Assessment of Student Learning Outcomes The University of New Mexico Academic Program Plan for Assessment of Student Learning Outcomes The Mexico A. College, Department and Date 1. College: School of Engineering 2. Department: Department of Civil Engineering 3. Date: February

More information

The Information Technology Program (ITS) Contents What is Information Technology?... 2

The Information Technology Program (ITS) Contents What is Information Technology?... 2 The Information Technology Program (ITS) Contents What is Information Technology?... 2 Program Objectives... 2 ITS Program Major... 3 Web Design & Development Sequence... 3 The Senior Sequence... 3 ITS

More information

Information Technology Health Informatics OIT Assessment Report Information Technology Health Informatics Mission Statement:

Information Technology Health Informatics OIT Assessment Report Information Technology Health Informatics Mission Statement: I. Program History Information Technology Health Informatics OIT Assessment Report 2011-2012 History The field of Health Informatics is the result of the convergence of information management and information

More information

COMPUTER SCIENCE. Computer Science 123

COMPUTER SCIENCE. Computer Science 123 Computer Science 123 COMPUTER SCIENCE Natural Applied Sciences Division Jamie Alonzo, Division Dean Division Office, Room 701 Steve Hodges, Program Contact, (831) 479-6494 Aptos Counseling: (831) 479-6274

More information

Accounting Major (Last Revised 03/2019)

Accounting Major (Last Revised 03/2019) Accounting Major (Last Revised 03/2019) Required Business Core (39 hours) Credit ECON 1041 Principles of Macroeconomics ECON 1051 Principles of Microeconomics (ECON 1041) ECON 1011 Statistics for Business

More information

The Thomas Hardye School Summer Preparation Task Computer Science A Level

The Thomas Hardye School Summer Preparation Task Computer Science A Level The Thomas Hardye School Summer Preparation Task Computer Science A Level Purpose of task: You should download and install the Python IDLE on your home computer to enable you to practice writing code using

More information

Beijing Jiaotong University CS-23: C++ Programming Summer, 2019 Course Syllabus

Beijing Jiaotong University CS-23: C++ Programming Summer, 2019 Course Syllabus Beijing Jiaotong University CS-23: C++ Programming Summer, 2019 Course Syllabus Course Personnel: Instructor Name: Jovan Ilić Office: TBD Phone: TBD e-mail: TBD Teaching Assistants Name: TBD Office: TBD

More information

Curriculum Map Grade(s): Subject: AP Computer Science

Curriculum Map Grade(s): Subject: AP Computer Science Curriculum Map Grade(s): 11-12 Subject: AP Computer Science (Semester 1 - Weeks 1-18) Unit / Weeks Content Skills Assessments Standards Lesson 1 - Background Chapter 1 of Textbook (Weeks 1-3) - 1.1 History

More information

HOLY ANGEL UNIVERSITY College of Engineering & Architecture Department of Computer Engineering

HOLY ANGEL UNIVERSITY College of Engineering & Architecture Department of Computer Engineering HOLY ANGEL UNIVERSITY College of Engineering & Architecture Department of Computer Engineering University Vision, Mission, Goals and Objectives: Mission Statement (VMG) We, the academic community of Holy

More information

Example Candidate Responses. Cambridge International AS & A Level Computer Science. Paper 2

Example Candidate Responses. Cambridge International AS & A Level Computer Science. Paper 2 Example Candidate Responses Cambridge International AS & A Level Computer Science 9608 Paper 2 Cambridge International Examinations retains the copyright on all its publications. Registered Centres are

More information

Project 0: Implementing a Hash Table

Project 0: Implementing a Hash Table CS: DATA SYSTEMS Project : Implementing a Hash Table CS, Data Systems, Fall Goal and Motivation. The goal of Project is to help you develop (or refresh) basic skills at designing and implementing data

More information

Health Education Community Health Education

Health Education Community Health Education + Master of Science Program Health Education Community Health Education CECH 2014 Primary Faculty: Keith King, PhD, MCHES 513-556-3859 keith.king@uc.edu I. Program Overview The Master of Science (MS) in

More information

MINUTES Date 5/7/2015. Monthly Faculty Meeting Department of Electrical Engineering

MINUTES Date 5/7/2015. Monthly Faculty Meeting Department of Electrical Engineering Monthly Faculty Meeting Department of Electrical Engineering Present: Roger Dougal, Chair Andrea Benigni Charles Brice MVS chandrashekhar Yinchao Chen Herbert Ginn Asif Khan Krishna Mandal Enrico Santi

More information