faculty
Joshua Carberry
Assistant Teaching Professor
Computer & Information Science
Contact
508-910-6697
g`^o_boov=rj^ppa+bar
Dion 303B
Teaching
Courses
Systems-level programming using C in a Unix environment. Students develop programs that interact with the operating system, focusing on memory management, file I/O, and modular program design. Topics include core language features, pointers and dynamic memory, data structures, and the use of standard libraries. The course also covers command-line tools, shell scripting, and system-level programming concepts such as processes and file systems. Emphasis is placed on debugging, code quality, and practical software development workflows.
Systems-level programming using C in a Unix environment. Students develop programs that interact with the operating system, focusing on memory management, file I/O, and modular program design. Topics include core language features, pointers and dynamic memory, data structures, and the use of standard libraries. The course also covers command-line tools, shell scripting, and system-level programming concepts such as processes and file systems. Emphasis is placed on debugging, code quality, and practical software development workflows.
Systems-level programming using C in a Unix environment. Students develop programs that interact with the operating system, focusing on memory management, file I/O, and modular program design. Topics include core language features, pointers and dynamic memory, data structures, and the use of standard libraries. The course also covers command-line tools, shell scripting, and system-level programming concepts such as processes and file systems. Emphasis is placed on debugging, code quality, and practical software development workflows.
Systems-level programming using C in a Unix environment. Students develop programs that interact with the operating system, focusing on memory management, file I/O, and modular program design. Topics include core language features, pointers and dynamic memory, data structures, and the use of standard libraries. The course also covers command-line tools, shell scripting, and system-level programming concepts such as processes and file systems. Emphasis is placed on debugging, code quality, and practical software development workflows.
Systems-level programming using C in a Unix environment. Students develop programs that interact with the operating system, focusing on memory management, file I/O, and modular program design. Topics include core language features, pointers and dynamic memory, data structures, and the use of standard libraries. The course also covers command-line tools, shell scripting, and system-level programming concepts such as processes and file systems. Emphasis is placed on debugging, code quality, and practical software development workflows.
Software analysis and design using object-oriented and service-oriented architectures. The course covers modeling and specification of software systems using industry-standard techniques and languages, with iterative practices for developing and refining designs. It includes contemporary tools for modeling, collaboration, and version control. Design, prototyping, and evaluation of software systems in realistic development environments are explored through a team-based project.
Software analysis and design using object-oriented and service-oriented architectures. The course covers modeling and specification of software systems using industry-standard techniques and languages, with iterative practices for developing and refining designs. It includes contemporary tools for modeling, collaboration, and version control. Design, prototyping, and evaluation of software systems in realistic development environments are explored through a team-based project.
Software analysis and design using object-oriented and service-oriented architectures. The course covers modeling and specification of software systems using industry-standard techniques and languages, with iterative practices for developing and refining designs. It includes contemporary tools for modeling, collaboration, and version control. Design, prototyping, and evaluation of software systems in realistic development environments are explored through a team-based project.
Software analysis and design using object-oriented and service-oriented architectures. The course covers modeling and specification of software systems using industry-standard techniques and languages, with iterative practices for developing and refining designs. It includes contemporary tools for modeling, collaboration, and version control. Design, prototyping, and evaluation of software systems in realistic development environments are explored through a team-based project.
Empirical methods in computer science and software engineering. The course covers experimental design, observational case studies, and reproducibility for investigating computing problems. Students design experiments, develop case studies, and analyze real-world data using contemporary tools. Topics include probability and statistical techniques for data-driven decision making. Emphasis is placed on critical evaluation of empirical research and hands-on experience with data.
Online and Continuing Education Courses
Offered as needed to present advanced material to graduate students.