среда, 31 декабря 2014 г.

2014 - было весело


31 декабря, последние часы до НГ. 2014 почти всё. Лично для меня - хороший год. 

Из того, что сейчас вспоминается:
  • написал и провёл живой квест
  • съездил с сыном на Бельтайн на Карельском перешейке
  • участвовал в ВВС с другим сыном
  • как обычно - летом в Мещере в ГП с обоими 
  • отработал почти два месяца в командировке на заводе Данон в Подмосковье
  • полетал в аэротрубе
  • начал ходить на тренировки по ножевому бою в Толпар
  • впервые участвовал в соревнованиях по ножевому бою и дошёл до полуфинала
  • прошёл онлайн курсы Stepic - программирование на Питоне, Линукс, Молекулярная биология и генетика
  • прошел онлайн-курс Coursera "Введение в биоинформатику" - максимальный балл
  • участвовал в двух курсах по Таро, проводимых molnija (никакой эзотерики, от Таро там только картинки, по факту - работа с символами в психологическом консультировании - что мне и понравилось)
  • твёрдо решил менять сферу деятельности в наступающем году
Счастливого Нового года!



Работа в области биоинформатики

Очередной намёк от жизни, что пора менять работу. Вчера на форуме Coursera в очередной раз завязалась дискуссия, кто лучшие биоинформатики - биологи или программисты и мельком проскочило это сообщение от одного из ведущих курса. 


Курс прошёл на 100 баллов, базовые навыки программирования есть. Задумался...

вторник, 30 декабря 2014 г.

Введение в биоинформатику - опыт онлайн-курсов

Сегодня завершил обучение на онлайн-курсе от Coursera "Введение в биоинформатику" - своего рода развитие курса "Молекулярная биология и  генетика" от Института биоинформатики.

Набрал 100 баллов из 100. Довольный как кот, наевшийся сметаны

Курс очень понравился. На русском языке, что немаловажно. Интересен сам материал - как проводят секвенирование генома, какие тут сложности и пути решения. Сложность материала, на мой взгляд, идеальная для "Введения в специальность" - нет заумных тем и в тоже время нет разжевывания/повторения школьных уроков по биологии. На первой неделе была очень познавательная видеоэкскурсия в лабораторию, где показывали, как это происходит в реале. Начиная с третьей недели в качестве домашнего задания студенты делают проект, довольно близкий к реальной работе. Вот текст вводного задания:
Некоторые штаммы кишечной палочки (Escherichia coli) являются патогенными. Один из таких штаммов, E.coli O104:H4, стал причиной вспышки пищевых отравлений в Европе в 2011м году.
Предлагается провести геномный анализ данного штамма, чтобы выяснить причину патогенности.
Для этого мы соберем бактериальный геном патогенного штамма из исходных данных, проаннотируем его и сравним с референсными штаммами.
Мы будем работать с данными, полученными на секвенаторе Illumina HiSeq 
То есть выдаются "сырые" данные, какие они есть на выходе секвенатора и "за руку" с преподавателями проходим через все этапы обработки данных, выясняя причину патогенности бактерий, безопасных в большинстве случаев. Работа в проекте воспринимается как настоящий квест.

Большой плюс - т.к. большая часть научного софта работает под Линукс, получилось хорошо закрепить знания, полученные на ноябрьских курсах. Более того, одна из программ требовала под свою работу 8 Гб оперативки - пришлось разобраться как можно работать на сервере - потом как нибудь отпишусь про это поподробнее. 

вторник, 23 декабря 2014 г.

Программист Python - базовый уровень

Как-то запала в душу идея о смене работы. Скачал с десяток вакансий, посмотрел что повторяется.

Для программиста Python базовый уровень (то, что требуется практически везде):
- опыт разработки на Python / Django
- знание английского на уровне чтения технической литературы и документации
- опыт работы с Linux
- знание SQL, опыт работы с реляционными базами данных
- опыт работы с frontend технологиями (HTML, CSS, JavaScript)
- навык работы с Git
- знание алгоритмов (прописано мало где, но, на мой взгляд, нужно)

SQL и CSS слегка пугают, потому что совсем ничего не знаю в этой сфере. Английский - потому что требует каждодневной учебы и не слишком интересен. Всё остальное - какие-то минимальные знания есть, тема мне интересна, так что за разумный срок (к концу лета? - раньше вряд ли соберусь на новую работу) вполне реально выйти на приемлемый уровень

среда, 10 декабря 2014 г.

Онлайн-курсы Института биоинформатики


Как я вчера сказал - на днях завершил онлайн-курсы по программированию на языке Питон. На самом деле - не только эти курсы. Институт биоинформатики проводил трехнедельные онлайн-курсы сразу по трём предметам: "Программирование на Python", "Введение в Linux" и "Молекулярная биология и генетика". Все три закончил с отличием - 100% возможных баллов.

Мотивация - совершенно стандартная для меня, "потому что интересно". Линукс хотел освоить наверное ещё лет двадцать назад, но... реальной необходимости не было, а хотел не настолько сильно, чтобы самостоятельно изучать учебники. После этих курсов я не стал мега-гуру, но командная строка теперь не вызывает ступора.

Технические курсы - проведены на качественном уровне и в принципе понятно как их применить. Молекулярная биология и генетика - неоднозначно. Сам по себе материал интересный, но тесты для проверки знаний на мой взгляд подобраны неудачно, скорее на память, чем на понимание. И напрашивается вопрос, зачем нужно тратить время на изучение этого? На самом деле, я бы даже не стал зарекаться, что не придётся работать в этой области. Со стороны биологии я вряд ли войду в эту науку, но если всерьёз взяться за программирование, то - возможны варианты. А пока - просто интересно. Что мне нравится - то что ситуация в этой области примерно как в 70-80 в компьютерной сфере. Много всего интересного и на мой взгляд достаточно низкий порог вхождения.


В воскресенье курсы завершились, по этому случаю была встреча с преподавателями. На линукс не успел - был на тренировке, на питон - не попал в зал, было битком, зато на биологии было гораздо свободнее, с удовольствием послушал. По привычке сел на первый ряд - в результате в онлайн-трансляции мой затылок практически всё время в левом нижнем углу.

Узнал про хобби "биохакинг на кухне" (DIY biology) - поищу материалы. Если всерьёз зацепит, то можно будет и съездить на Летнюю школу по биоинформатике - похоже, интересное мероприятие...

вторник, 9 декабря 2014 г.

Проект Эйлера - тренажёр для программистов

На днях завершил обучение на онлайн-курсах по программированию на Питоне. Курс трехнедельный, но по факту, у меня два неполных дня уходило, чтобы выполнить все задания за неделю.

Уровень даваемых знаний - не особо высокий, на уровне детского кружка программирования, но даже этого достаточно, чтобы реализовать кучу возможностей. Фантастический язык, реально рабочий инструмент, чтобы решать возникающие задачи.

Но... по работе мне такое нужно от силы раз в квартал, а навыки терять не хочется. Вспомнил про сайт "Проект Эйлера". Там собраны порядка пятисот задач, для решения которых без программирования не обойтись, и новые задачи периодически добавляются. Сложность задач нарастает от начала к концу. Самую первую я решил ещё года три назад на листке бумаги за пять минут и ещё свыше 400 000 человек решили её правильно. Некоторые задачи из последней сотни решили менее 100 человек. В общем, будет чем заняться.

Большой плюс - после ввода правильного ответа на задание, получаешь доступ к программам других участников, которые также получили правильный ответ. Можно посмотреть различные варианты алгоритмов, увидеть какие-то новые функции языка... Программировать можно на чём угодно, так что почти для любого языка примеры найдутся. Когда во время онлайн-курса я выкладывав программу из тридцати строк и в комментариях читал чьё-нибудь "А я уложился в восемь строк..." было мучительно любопытно - КАК?! Тут как раз можно узнать - как можно сделать проще и быстрее (а это можно сделать практически всегда)

Единственный минус - задания даны на английском и для правильного решения нужно точно понять смысл. Прочитать качественный перевод задач на русский можно здесь http://euler.jakumo.org/problems.html

P.S. За пару дней сделал первые восемь задач. Восьмую решило уже менее 200 000 человек.

P.P.S. Пожалуй, если доберусь хотя бы до конца первой сотни, есть смысл задуматься о смене работы...