10 сентября 2017

"...Блоки разные верстать и с шрифтами как играть учат в школе, учат в школе, учат в школе." Отзыв на книгу "CSS: The Missing Manual, 4th edition"

Отрицание, или "Ты помнишь, как всё начиналось"


Современная профессиональная разработка ПО настолько комплексное занятие, что часто приходится выходить из зоны комфорта чтобы посмотреть в каких ещё направлениях работают другие люди чтобы улучшить продукт.
Программы, в которых основная работа выполняется без участия человека, зачастую всё равно не обходятся без создания web UI (например интерфейс для управления и настройки).
Раньше в Java мире проблему создания таких web UI силами backend разработчиков решали фреймворками (например Vaadin, GWT), которые позволяли не зная CSS и JS описывать UI на Java. И оно даже стабильно работало, если приложение - просто прослойка для работы с БД.
Ожидаемо интерфейсы выглядели как под копирку, были слабо кастомизируемы, тратили ресурсы серверов на динамическую генерацию html, и выглядели по-энтерпрайзному уныло (разработчикам было пофиг, да и задачи "сделать хорошо" не ставилось). Иногда вишенкой на торте было то, что попытка интегрировать код UI-фреймворков с кучей магии, в которую никто не вникал, в многопоточное и динамическое окружение сложного backend-а приводила к появлению race conditions, которые обязательно что-то ломали на продакшене, и к утечкам памяти. Нет, авторы этих фреймворков не идиоты. Но мощь и гибкость этих вещей иногда играла злую шутку с теми, кто думал: "Ну оно ведь и так должно работать. Это же почти как в том примере из документации!"

28 мая 2017

Классика Project Management-a: "Мифический человеко-месяц" и "Психбольница в руках пациентов"

Всем привет!

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

17 сентября 2016

"With Great Power Comes Great Responsibility". Отзыв на фильм "Snowden"


Предисловие


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

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

04 июня 2016

"Алло, мы ищем Java Developer-a!"

Всем привет!
Так случилось, что в конце мая 2016 года я решил "закинуть удочку" в мир предложений о работе для Java Developer-a в Москве, дабы синхронизировать своё представление о нём с реальностью, оценить насколько мой skill set вообще релевантен требованиям работодателей и не остаться к хренам без хорошей работы подстелить себе соломку на всякий случай :)

На данный момент я уже вторую неделю прохожу собеседования в московских компаниях разного вида (продуктовая и заказная разработка) и уровня "крутости".

Возможно, мой срез состояния рынка вакансий Java Developer на май 2016 поможет кому нибудь сориентироваться в трендах работодателей, чтобы оставаться привлекательным для работодателей разработчиком. Всё ниже описанное - мой личный опыт, прошу это учитывать.

24 апреля 2016

Манифест профессионального программиста

Вступление

В последнее время вологодское IT-сообщество лихорадит от появления нового крупного игрока на местном рынке борьбы за кадры - "Сбербанк-Технологии". Не секрет, что далеко не у всех контор в городе дела идут достаточно хорошо, да и многие сотрудники уже достаточно долго не меняли своего места работы из-за скудного выбора компаний (которые к тому же имеют почти отсутствующее пересечение по профессиональным навыкам, предъявляемым для сотрудников), что и послужило поводом для начала активной миграции людей.

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

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

Поэтому я решил сформулировать для себя "манифест профессионального программиста" в стиле Agile Manifesto с присущем ему приоритезацией целей, который бы максимально точно описывал мои мысли насчёт профессиональной деятельности и идеалам, к которым я (и наверно кто-нибудь ещё) хотел бы стремиться.
Одна из его полезняшек в том, что если ты его принимаешь, то на него можно ссылаться при разговоре с HR-ами, чтобы было меньше вопросов :)
Может это не финальная версия, но мне кажется, что я где-то близко к правде.
PS:
По просьбе читателей перенёс его на github.
https://github.com/OStrekalovsky/pro-prog-manifesto

02 ноября 2015

Science Slam Вологда. 02.11.2015

Сегодня побывал на мероприятии "Science Slam", уже не в первый раз проводившееся в Вологде. Цель мероприятия - популяризация и создание благоприятного образа молодых учёных.

Кратко о правилах

Каждый участник ("слэмер") должен за 10 минут рассказать о собственном научном исследовании так, чтобы это было понятно широкой публике.
Оцениваются выступления громкостью аплодисментов.
Как правило, подобные мероприятия проходят не в академических залах, а в барах и других подобных увеселительных заведениях.

В общем, становится понятно, что подходить серьёзно к оценке работ участников в таком формате бессмысленно. Это всё just for fun. Да и для выступающих молодых исследователей это крайне стрессовая и нестандартная обстановка, ведь тут нельзя зарыться в свои термины, а надо устраивать публичное шоу на сцене для высокой оценки и удачно парировать после всего этого кучу вопросов от слушателей, которые в том числе из-за невозможности более детально ознакомиться с работой, начинают задавать каверзные вопросы.