CSCI 1105 Introduction to Computer Programming
This course provides a general introduction to computer programming. The main focus is on programming skills and how to apply these skills in solving a variety of problems. Procedural programming concepts are stressed.
CSCI 1107 Social Computing
‘A hands-on course on technologies and the underlying infrastructure for social computing, including quoted from Dalhousie University Calendar 2019/20 digital collaboration media, social networks and visualization, and their social impact. Students will use various applications, such as Twitter, YouTube, and wikis to examine their functionalities, and explore infrastructure technologies including databases, computer networks and Web-servers that facilitate their execution.’
CICS-1109 Practical Data Science
This course will provide students with a practical overview of key techniques and research methods used to effectively manipulate, process and investigate data from diverse disciplines such as sport, urbanism, neuroscience, and humanities.
CSCI 1110 Introduction to Computer Science
This course provides a general introduction to computer science and the hardware and software of computers. The main focus is on programming skills and how to apply these skills in solving a variety of problems. Algorithmic concepts, linear data structures are emphasized.
CSCI 1120 Introduction to Computer Systems
This course begins with NAND gates and the mathematical foundations of binary numbers and boolean logic. We’ll learn how to progressively assemble simple components into more complex ones until we have a minimal architecture capable of computation. From there, we’ll look at how software is structured, and how programming languages define software.
CSCI 1170 Introduction to Web Design and Development
This course introduces students to key web concepts and skills for designing, implementing, and maintaining web content. Topics include introduction to the Web, UI and UX best practices, client-side web programming paradigms such as HTML, cascading style sheets, and dynamic con-tent/interactive website development using JavaScript/jQuery, and web content organization and maintenance.
CSCI 2100 Workplace Communications for Computer Science
This course helps students communicate effectively and with confidence in a variety of workplace settings. Students learn to understand their audience and to deliver accurate, effective messages. Written assignments and oral presentations allow for the development of these skills through practice.
CSCI 2110 Data Structures and Algorithms
This course provides a comprehensive introduction to data structures and algorithms, including their design, analysis, and implementation. In discussing design and analysis there is a strong emphasis on abstraction. In discussing implementation, general approaches that are applicable in a wide range of procedural programming languages are emphasized, in addition to a focus on the details of implementations.
CSCI 2134 Software Development
This course presents techniques and methodologies for software development with modern tools. It introduces students to the software development life cycle and best practices for source code management, testing, debugging, and building. Particular focus will be on building individual skills in the development and testing phases of the life cycle. Students will be expected to work with existing medium size code-bases that are implemented in di_erent programming languages. Students will be exposed to a variety of software tools and will be expected to use them throughout the course.
CSCI 2141 – Introduction to Database Systems
This course introduces students to the concepts of database management systems and database design. Topics include: Database (DB) components, DB design using entity-relationship (relational and object oriented), SQL, and transactional properties and techniques to support them. The con-cepts will be reinforced using one or more Database Management Systems (DBMS).
CSCI 2170 – Introduction to Server Side Scripting
A server-side scripting language is used to create web pages with dynamic content. The course provides the technology necessary for connecting client web pages to web servers, and processing and storing information obtained using forms during web sessions.
CSCI 2201 Introduction to Information Security
Information security is becoming increasingly important in today’s networked world, and is impacting every aspect of our lives including finance, healthcare, government, education, arts and entertainment. The objective of this course is to teach the basic principles of information security from the perspective of providing security awareness and its best practices for the real world.
CSCI 2690 Introduction to Software Projects
This course will introduce students to software projects including their structure, organization and management. Topics include project management, agile development, theory of software engineering. Topics and their order are subject to change as the course evolves. There is no programming in this course. Instead, students will be do a lot of reading and write a research paper.
CSCI 2691 Introductory Project
In this course, students work in project teams to solve a practical applied computer science problem for a community group such as a charity, non-profit organization, or educational institution. Team members are drawn from all years of study. The project gives students an opportunity to develop their technical and professional skills.
CSCI 1300 Calculus in Computer Science
This course is an introduction to calculus with a focus on applications to computer science. Students will be exposed to examples from graphics, machine learning, robotics, simulation, and other areas of computer science. Topics covered will include single variable limits, derivatives, integrals, differential equations, and Fourier series.
CSCI 1335 Discrete Math for Computer Science
This course is an introduction to formal reasoning and discrete mathematics with applications to computer science. Students will be introduced to formal notation and reasoning about problems and algorithms. Topics include: sets, sequences, and summations, simple proof techniques, elementary numbertheory, back-of-the-envelope approximations, combinatorial objects. Applications and relevance of these concepts in computer science will be emphasized.
MATH 1030 Matrix Theory and Linear Algebra I
This course is a self-contained introduction to Matrix Theory and Linear Algebra. Topics include: sub-spaces, linear transformations, determinants, eigenvalues and eigenvectors, systems of linear equations.
MGMT 1000 Management Organizational Issues I
The Faculty of Management includes the schools of business, public administration, library and information studies and resource and environmental studies. Context will be built within this definition of “management”. This class introduces the student to management issues with emphasis on creativity, leadership, and innovation. Experiential learning will be used to explore the basic management issues of planning, organization, leading and controlling within a variety of venues including both for-profit and not for-profit.
MGMT 1001Managing Organization Issues II
The course places management in its broadest context and helps students from diverse disciplines understand the complex social, economic, ecological, political and technological forces shaping 21st century leadership in the public, private and nonprofit sectors. Key themes explored in the course include systems thinking, values based approaches to management, and personal and professional development.
MATH 2060 Introduction to Probability and Statistics I
Rigorous introduction to probability and statistical theory. Topics covered include elementary probability, random variables, distributions, estimation and hypothesis testing. Estimation and testing are introduced using maximum likelihood and the generalized likelihood ratio.
MGMT 2303 Micro Organizational Behaviour
Organizational behaviour and the study of work organizations and management draw on a number of disciplines within social sciences to help us to understand and make sense of individual behaviour and human action in groups and organizations. Through a combination of individual and group work and a blend of classroom based activities, this course will explore concepts and theories relating to micro aspects of organizational behaviour.