Cloud Computing Concepts, part 2 – Coursera & UIUC
Ну наконец-то. Что-то долго телились, курс уже полтора месяца как закончился (начавшись сразу после окончания первой части), а сертификаты пришли только позавчера. В общем - как-то так, и вот с таким результатом:

Если вкратце – вторая часть лично мне показалась несколько слабее первой (про которую писала ранее). Да, было интересно, несколько новых для себя вещей я таки узнала. Но в общем и целом, список тем (см. страницу курса) показался несколько хаотичным и менее связным. Если не “галопом по европам”, то уж точно “всего понемногу”.
Что понравилось больше всего (читать как “показалось наиболее полезным”)? Leader Election, транзакционная целостность, механизмы синхронизации в распределённых системах и репликация данных – вообще, модные нынче темы, не без этого. Что я уже более-менее знала – это графы сетей и потоковый процессинг данных при помощи Storm. Что воспринималось как “слегка оффтопичное, но для общей эрудиции пусть будет” – всякие sensor networks, механизмы авторизации и распределённые файлухи типа NFS. Ну и ещё, под самый конец, немного баек про то, что бывает, “если в кузнице не было гвоздя” – то есть, как наслоение мелких косяков в больших распределённых системах (как в физической их структуре, так и в программном обеспечении) может привести к катастрофическим последствиям, большим убыткам и долгим простоям. Нового, может, и немного – но на чужих ошибках всегда легче учиться, чем на своих.
Математика была, но в меньших количествах, куда больше было “обзорности”, что ли (не знаю, как это ещё обозвать). Может, конечно, это потому, что после освоения базового понятийного ряда из первой части всё остальное – уже дело техники… но всё же, настраивалась на чуть большие хардкорность и зубодробительность :) Ну, по крайней мере, стиль преподавания у этого сурового индийского деятеля не изменился, как шпарил, так и шпарит. Да, я снова периодически ставила на паузу и за ним записывала!
Формат основных домашних заданий был привычен – квизы, собственно, как формата “выбери правильный ответ”, так и “реши задачу и введи число”. На сей раз обсчитывали количество сообщений, которые должны были расползтись по сети в том или ином протоколе, серийную эквивалентность различных транзакций и прочие приятные вещи. Что изменилось: теперь не было двух больших зубодробительных квизов за курс, но были небольшие квизы каждую неделю, по пройденным на этой неделе темам. Пересдать один раз по-прежнему можно (и при таком объёме вопросов достаточно легко).
Экзамен как-то тоже был не в пример проще прошлого раза. Если в первом курсе я, возясь с подсчётами на бумажке, еле успела решить всё за положенные полтора часа, то тут мне хватило по уши менее половины этого времени. Подсчёты были, но их было меньше (видимо, ввиду специфики), большая часть вопросов были… концептуально-теоретическими, что ли. Правда, в паре вопросов на первой попытке я таки ошиблась – решила пересдать. И на второй раз вопросы не так уж и сильно отличались. Были, конечно, несколько новых – но большую часть я без особых проблем переписала из первой попытки.
Что до опционального задания на программирование – здесь оно тоже было. Основанное на задании из первой части курса (посему тем, кто не делал первое, смысла соваться в это не было). Если точнее – то основываясь на коде распределённого membership protocol из первой части, надо было написать не менее распределённую систему хранения данных в формате “ключ-значение”. Посмотрела я на “скелет” задания (не менее говнокодный C++, чем первый)… подумала - “ради принципа я себе уже всё доказала, а времени у меня не анлим”… и забила. Как выяснилось впоследствии – и правильно сделала, ибо (чуть забегу вперёд, ну да ладно) очень похожее, практически идентичное задание на “replicated key/value storage” мне встретилось в другом курсе – но уже на куда более приятных технологиях. Так что в практических знаниях не потеряла, в оценках тоже. Но кому интересно – те могут попробовать, конечно же.
В общем и целом – хоть и было попроще, всё равно не жалею, что прошла и первую часть, и вторую. Со всем этим гораздо легче и на соседних курсах (о которых расскажу подробнее чуть позже), и в работе (больше тонкостей, происходящих “под капотом”, становится понятно). Посмотрим, что там дальше будет. Всем люциферианского духа Познания, пацаны!