Computer Science - Sophomore
Course # HUSS 2051
Credits 6
Prerequisites and/or Corequisites: NA
Course Description
This course is an introduction to philosophy. It aims at providing students with the basic knowledge of philosophical theories, categories, and topics. We explore major philosophical discussions in the contemporary world ranging from epistemology to aesthetics. The course does not presume to dictate any philosophical doctrine, its purpose is to help students develop skills of reasoning, responsible decision making, and to reflect on things non-pragmatic.
Course Learning Outcomes
Upon the completion of the course, students are expected to be able to:
- use philosophical categories accurately in discussing philosophical topics;
- untangle (latent) premises upon which (their own or others’) philosophical statements are made;
- identify inconsistencies and potential errors that require attention and investigation;
- take a systematic approach, to ensure that issues are viewed in a “bigger picture” and essentials are not overlooked;
- defend a stance in a debate reasonably (using relevant facts, knowledge of theories, coherent arguments);
- discuss philosophical issues responsibly (amicably and cooperatively).
Course Assessments and Grading
Item |
Weight |
Attendance |
5 % |
Participation in in-class activities |
15% |
Student presentations (individual) |
30% (2 presentations x 15%) |
Student presentations (group debates) |
15% (3 debates x5%) |
Midterm test |
15% |
Final paper |
20% |
Course # DMNS 2012
Credits 6
Course Description
Discrete Mathematics for Computer Science is an introductory course designed to provide a foundational understanding of the mathematical concepts and techniques used in computer science. The course covers sets, relations, functions, and other fundamental mathematical concepts used in computer science, such as logical reasoning, induction, recursion, counting, graphs, and trees. This course also covers the applications of concepts in computer science such as algorithms, their reliability and complexity.
Course Learning Outcomes
Upon the completion of this course, students will:
- Describe the fundamental concepts of propositional logic.
- Construct truth tables for compound propositions
- Analyze the precedence of logical operators.
- Apply propositional logic to solve logic puzzles and system specifications.
- Differentiate between predicates and quantifiers, including the universal, existential, and uniqueness quantifiers.
- Translate English statements using propositional logic and predicate logic.
- Identify and manipulate sets, relations, and functions including operations with sets and properties of functions using appropriate mathematical notation.
- Evaluate the properties of various algorithms, including searching, sorting, and greedy algorithms, and compare their efficiency and complexity in different contexts.
- Apply mathematical proof techniques, such as mathematical induction and strong induction, to validate statements and solve problems involving sequences, summations, and recurrence relations.
- Solve advanced counting problems using techniques like the pigeonhole principle, permutations, combinations, and binomial coefficients, and apply these methods to complex scenarios.
- Model problems using graphs and trees.
- Analyze graph structures, including different types of graphs, connectivity, Euler and Hamilton paths.
Course Assessments and Grading
Item |
Weight |
Homework |
10% |
Quizzes |
20% |
Class Participation |
10% |
Midterm Exam |
30% |
Final Exam |
30% |
Course # DMNS 2071
Credits 6
Prerequisites and/or Corequisites: None
Course Description
This course is designed to give students a solid basis for furthering their studies related to the biological sciences by striking a balance between mastery of core concepts and exposure to the breadth of the discipline. Students examine the interrelationships between organisms, their biotic and abiotic environments, and the genetic, evolutionary, and ecological processes governing the patterns we observe in nature. By the end of the course, students are expected to apply biological knowledge to new situations and to integrate concepts from multiple sub-disciplines to solve problems and make predictions about biological systems.
Course Learning Outcomes
Upon the completion of the course, students will be able to:
In Genetics:
- Introduce the sciences, including the scientific method, bioethics, and the fundamental concepts of chemistry and physics that provide a framework within which learners comprehend biological processes.
- Explain the structures, functions, and processes of the cell, the most basic unit of life.
- Introduce the earliest experiments that revealed the basis of genetics through the intricacies of DNA to current applications in the emerging studies of biotechnology and genomics.
In Evolution
- Explain the core concepts of evolution with examples illustrating evolutionary processes.
- Explain in what way each of the four major mechanisms of evolution (mutation, genetic drift, selection, gene flow) may contribute to adaptation, divergence, speciation and/or extinction.
- Describe evolutionary processes in the context of genetics.
In Ecology
- Explore the diversity life by distinguishing specific characteristics of every group of organisms.
- Discuss emerging phylogenetic relationships and its implication to sustainable ecosystems.
- Explain the core concepts of botany, plant life and processes.
- Discuss the form and function of the human (animal) body, including body systems and processes.
- Explain ecological concepts highlighting localized, real-world issues of conservation and biodiversity that relates to Central Asia.
Course Assessments and Grading
Item |
Weight |
Genetics Exam |
20 % |
Evolution Exam |
20 % |
Ecology Exam |
20 % |
Research |
40 % |
Course # COMP 2051
Credits 6
Prerequisites and/or Corequisites: Programming 2 (Java)
Course Description
This Specialization explains high level patterns used in Microservice architectures and the motivation to move towards these architectures and away from monolithic development of applications. Students will learn how Java interacts with databases in a modern framework, using the very popular Spring Boot Framework, with Microservices. Students wishing to develop Java based Web Applications and Restful Micro Services will be using the very popular Spring MVC and Spring Boot frameworks with minimal configuration.
Applied Learning Project
Students will build an extensive application iteratively in a succession of hands on labs. Labs will specifically target the projects Eureka, Ribbon, Hystrix, Feign and Zuul. This is a very hands on course series with a variety of labs to illustrate the key concepts.
LearnQuest Spring Framework Specialization program consists of - 4 course series:
- Specialization course 1: Spring Ecosystem and Core
- Specialization course 2: Spring MVC, Spring Boot, and Rest Controllers
- Specialization course 3: Spring Data Repositories
- Specialization course 4: Spring Cloud Overview
Note: There will be only one mandatory offline class session with the UCA instructor at the beginning. Depending on course progress the number of sessions might change.
Course Learning Outcomes
Upon the completion the course, students will be able to:
- Understand the importance of the Spring Framework in Java development and demonstrate proficiency in configuring object dependency injection using XML, annotations, and Java configuration classes.
- Develop Java-based web applications and RESTful microservices using Spring MVC and Spring Boot frameworks, including creating custom HTTP headers and handling JSON or XML payloads.
- Build and deploy services using URL templates, and understand how these services can be consumed by various clients, such as Java and Angular JS, to illustrate service reuse in a distributed architecture.
- Apply Java Persistence Framework (JPA) and Spring Data Repositories to interact with databases, and learn to expose repositories as REST web services using HATEOAS concepts.
- Utilize Spring Aspect-Oriented Programming (AOP) for applying cross-cutting concerns like logging in a centralized manner, and understand Spring's transaction management and declarative transaction configuration.
- Explore microservice architecture patterns and their benefits over monolithic development, and implement these patterns using Spring Cloud and Netflix OSS technologies.
- Gain hands-on experience with Spring Cloud projects like Eureka, Ribbon, Hystrix, Feign, and Zuul to implement microservice components such as service registration, discovery, client-side load balancing, circuit breakers, and gateway services.
Course Assessments and Grading
Item |
Weight % |
Specialization course 1: |
10 |
Offline assessment-1 |
5 |
Specialization course 2: |
15 |
Offline assessment-2 |
5 |
Examination |
15 |
Specialization course 3: |
10 |
Offline assessment-3 |
5 |
Specialization course 4: |
10 |
Offline assessment-4 |
5 |
Examination |
10 |
Project |
10 |
Course # COMP 2081
Credits 6
Course Description
Want to get started in the world of coding and build websites as a career? This certificate, designed by the software engineering experts at Meta—the creators of Facebook and Instagram, will prepare you for a career as a front-end developer.
Upon completion, you’ll get access to the Meta Career Programs Job Board—a job search platform that connects you with 200+ employers who have committed to sourcing talent through Meta’s certificate programs, as well as career support resources to help you with your job search.
By the end, you’ll put your new skills to work by completing a real-world project where you’ll create your own front-end web application.
Meta Front-End Developer Professional Certificate program consists of - 9 course series:
- Introduction to Front-End Development
- Programming with JavaScript
- Version Control (optional, not graded by UCA)
- HTML and CSS in depth
- React Basics
- Advanced React
- Principles of UX/UI Design (optional, not graded by UCA)
- Front-End Developer Capstone
- Coding Interview Preparation (optional, not graded by UCA)
Note: There will be only one mandatory offline class session with UCA instructor at the beginning. Depending of course progress the number of sessions might change.
Course Learning Outcomes
Upon the completion of the course, students will be able to:
- Create a responsive website using HTML to structure content, CSS to handle visual style, and JavaScript to develop interactive experiences.
- Learn Bootstrap CSS Framework to create webpages and work with GitHub repositories and version control.
- Create robust and reusable components with advanced techniques and learn different patterns to reuse common behavior.
- Interact with a remote server and fetch and post data via an API.
- Seamlessly test React applications with React Testing Library.
- Integrate commonly used React libraries to streamline your application development.
Course Assessments and Grading
Item |
Weight |
Program series -- 1 |
5 % |
Offline assessment-1 |
5 % |
Program series – 2 |
10 % |
Offline assessment-2 |
5 % |
Program series – 4 |
5 % |
Offline assessment-3 |
5 % |
Examination |
15 % |
Program series – 5 |
5 % |
Offline assessment-4 |
5 % |
Program series – 6 |
10 % |
Offline assessment-5 |
5 % |
Program series – 8 |
5 % |
Examination |
10 % |
Project |
10 % |
Attendance |
|
Physical training
Course # HUSS 1080
Credits 0
Pre-requisites and Co-requisites: None
Course description
The purpose of physical education is to strengthen health, develop the physical and mental abilities of students. Physical exercises and sports games is the way to a powerful and functional body, clear mind and strong spirit. The course is both practical and theoretical, it covers basic concepts of anatomy and physiology as well as health and safety requirements.
Course learning outcomes
Upon completion of the course students will be able to:
- perform a range of physical activities
- understand health and safety requirements for a range of physical activities
- describe the role and progress of sport in Central Asia
- chose an appropriate physical activities program for their age and gender
- identify tiredness and its symptoms to control the body during athletic exercises
- describe the technique of running for a long and a short distance and jumping
- accomplish running for a short and a long distance and jumping according to all necessary norms
- describe the rules of a range of sports games
- participate in a range of sports games according to their rules and techniques
Course Assessments and Grading
Controlling exercises and testing |
Normative |
|||||
Boys |
Girls |
|||||
5 |
4 |
3 |
5 |
4 |
3 |
|
Running – 60m (minutes and seconds ) |
8,6 |
9,4 |
10,2 |
9,6 |
10,2 |
10,6 |
Running – 100m (minutes and seconds) |
14.0 |
14.2 |
14.6 |
16.0 |
16.3 |
17.0 |
ABS – 30 seconds |
25 |
23 |
21 |
23 |
21 |
18 |
Long distance running – 1000m |
3.50 |
4.00 |
4.10 |
4.30 |
4.40 |
4.50 |
Long distance running – 2000m |
|
|
|
10.3 |
12.1 |
13.10 |
Long distance running – 3000m |
14.0 |
16.00 |
17.00 |
|
|
|
Push up on the cross bar (турник) |
20 |
17 |
15 |
|
|
|
Jumping with running (m,sm) |
4.45 |
4.20 |
3.70 |
3.60 |
3.35 |
3.10 |
Jumping from the stand position(m,sm) |
2.20 |
2.00 |
1.90 |
2.00 |
1.90 |
1.60 |
* The course will be graded with PASS/FAIL.