Всем привет, можете нас поздравить с окончанием первой учебной недели :).

В этом семестре мы учимся всего два дня в неделю, в понедельник и в среду. Мы взяли по два курса. Вообще по всему университету правило, что минимум можно брать три курса, но по нашей специальности Master of Science in Computer Science оказалось, можно брать минимум два курса. И если брать два курса в семестр, то стоимость одного курса получается заметно меньше, и это хорошо.

Антон

Я, Антон, зачислен «полностью», мне не надо досдавать дополнительные предметы, и я записался на следующие курсы основной программы.

CPSC 440 Computer System Architecture – обязательный курс

Этот предмет о том как в общем устроен компьютер. Объясняют подробно, что такое процессор, многоядерный процессор, память, многопоточное программирование и т.д. В России у меня был похожий курс, но здесь чувствуется, что преподают не сухую теорию, рассказывают интересно, и ставят специальные полезные задачи типа «сколько и каких именно нужно процессоров чтобы произвести определённые вычисления за определённое время»

CPSC 541 Systems and Software Standards and Requirements – курс «на выбор»

Рассказывают о роли различный стандартов на то как составлять ТЗ, как его согласовывать с заказчиком, как везти разработку, как «продавать» написанный софт, как оказывать поддержку. Оказывается для всего этого написаны разные стандарты, и если им следовать, то на всех этапах жизненного цикла софта будет допускаться меньше ошибок.

Я могу сказать что пока эти предметы мне не кажутся сложными, даже, наверное, наоборот, лёгкими.

Поэтому, всё свободное время я помогал Ане. У неё всё гораздо сложнее.

Аня

Аня «условно» зачислена. Это значит, что ей надо досдать дополнительные предметы, т.к. университету показалось, что она их не проходила раньше. Ей нужно досдать два предмета:

CPSC 240 (Computer Organization and Assembly Language)

На этом предмете изучают ассемблер. Оказывается Ане к первому занятию уже было назначено задание. Преподаватель на учебный email отправил летом задание. А мы до начала учебы не проверяли учебный email, т.к. вся информация о поступлении, приходила на частный email. Анино задание заключалось в том, чтобы настроить весь софт для написания программ на ассемблере, и написать первую программу. Т.к. Аня это не сделала к первому занятию (к понедельнику), ей сказали сделать это к следующему занятию (к среде).

Сложность этого задание заключается в том, что существует множество видов ассемблеров, и интерпретаторов этого языка. И ей почему то не сказали по какому учебнику можно готовиться. Приходилось всё находить самостоятельно.

Очередная сложность, в том, что преподаватель требует, чтобы программа «запускалась» интерпретатором NASM, а он работает только из под UNIX. А так-же, есть требование, чтобы UNIX работал не на виртуальной машине, а на реальном процессоре, только тогда у программы будет доступ ко всем регистрам процессора.

Таким образом, от нас потребовалось:

  • Установить UNIX флешку, сделать её загрузочной и загрузиться с флешки.
  • Установить интерпретатор NASM и компилятор C++
  • Написать программу (было сложно)
  • Представить результат на бумаге

Сразу скажу, что списать практически нереально. Во первых за это может быть очень серьёзное наказание вплоть до отчисления. Все комментарии, переменные и форматирование кода, имена файлов должны быть уникальными. Во вторых, в тех бумагах, которые нужно сдать профессору, нужно напечатать весь текст из командной строки, который генерит программа. И ещё нужно было выполнить команду, которая показывает подробную информацию о файлах которые нужно было писать, компилировать и запускать (дату последней модификации, точный размер и владельца файла) и напечатать эту информацию и сдать вместе со всей работой.

Мы никогда такого не делали, поэтому было непросто. И это надо было сделать за вечер понедельника и вторник. В эти дни мы ложились спать в 4:30 утра. Но мы очень во многом разобрались, задание сделали больше чем на половину. Профессор был удивлён, что у Ани многое получилось. На следующем занятии Ане было уже многое понятно, и она задавала профессору вопросы по теме. Так что, похоже мы справимся с этим предметом 🙂

CPSC 323 (Programming Languages and Translations)

На этом предмете изучают принципы трансляторов и компиляторов. Домашнее задание ещё не задавали. У Ани были только лекции. Поэтому я в деталях не могу рассказать какие сложности есть с этим предметом.

Университет

Хочу в завершении написать пару слов про университет. Он огромный (вот карта) поперёк пешком его можно пройти за 15-20 минут, в нём учатся очень много студентов. Очень много интернациональных студентов из Индии, Китая, Японии, и стран восточной Европы. В университете очень развитая IT инфраструктура. На всей территории есть WI-FI, в библиотеке сотни компьютеров с интернетом, за которыми можно поработать (бесплатно). Есть сетевые принтеры. Чтобы на них печатать, нужно на свой «аккаунт положить» денежку, 1 страница стоит $0.10. В университете ещё есть несколько более уютных общественных компьютерных залов. Там играет приятная музыка, компьютеры стоят по периметру комнаты, а ц центре диванчики и журнальные столики, за которыми можно сесть со своим ноутбуком. В университете есть столовая (платная), там несколько «ресторанов» (как в торговых центрах), всё съедобно и не очень дорого, мы с Аней уже два раза ели.