Привет, меня зовут Денис Малиночкин, и я живу в городе Одинцово, что находится немного левее Москвы. Некоторые люди уже знают меня по интернет-книге «Less. Путеводитель для новичков», а немногие другие по нику mrmlnc, который, возможно, вы уже встречали на GitHub или в маркете расширений для редактора Visual Studio Code.

Немного о прошлом

Веб-технологиями я заинтересовался в 2007-году, когда один из моих одноклассников показал мне Ucoz и то, что он на нём сделал. Тогда это было круто, и я ничего не понимал в этом, но след оставило. В 2008 году я понял, что конструкторы — это хорошо, но ведь они на чем-то написаны. Ради ознакомления купил справочник, как сейчас помню, О. Рева с лимоном на обложке и тегами, написанными в верхнем регистре, внутри. С тех самых пор меня захватил веб. Сначала это был HTML и CSS, потом подтянулись JavaScript и PHP, а затем уже Node.js. Раз речь зашла о технологиях, то поговорим о том, с чем я сейчас работаю.

Технологии

Не буду скучно писать про HTML5/CSS3/ES2015 — опишу свой личный опыт и моральные устои, которые выработались за время работы с различными технологиями. На данный момент я могу выделить следующий опыт.

HTML

В качестве HTML-препроцессора предпочитаю использовать Pug (ранее Jade) или Nunjucks, если на то есть причины. Также имел опыт работы с Twig, EJS и Handlebars.

CSS

Разумеется Less. Помимо этого работаю с Sass (SCSS-синтаксис) и, если есть причины, Stylus. Также, нахожу полезным некоторые плагины PostCSS, который, в целом, может успешно заменить любой препроцессор. Однако, пока я не вижу серьёзных причин отказаться от Less.

К слову, я пишу стили без использования фреймворков. Слежу за развитием Bootstrap, MDL, UIkit, Kube, Concise CSS и несколькими микро-фреймворками, впоследствии улучшая свой стартовый шаблон Yellfy. Я сторонник простоты стилей и ярый противник их усложнения за счёт использования бессмысленных «кастомизаций», которые пригодятся максимум несколько раз. О каких кастомизациях идёт речь? — посмотрите на исходный код Foundation for Sites.

Слежу за чистотой кода, использую Normalize, Autoprefixer, stylelint и некоторые другие инструменты. Из методологий могу выделить RSCSS и BEM.

JavaScript (Node.js)

В зависимости от проекта предпочитаю TypeScript или ES2015-синтаксис. В качестве линтера использую ESLint в обёртке от Синдре Сорхуса под названием XO с переопределёнными правилами или, в случае с TypeScript, безальтернативный TSLint.

Для клиентской стороны имел опыт работы с jQuery (и его альтернативами), Angular, Riot и небольшой опыт работы с Vue. На серверной стороне под мой кругозор попали: Adonis, Koa и Express. Обобщая, можно сказать, что они все похожи и ничего не стоит потратить максимум день на освоение практически любого *фреймворкИлиБиблиотека*.

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

PHP

Базовые знания. Опыт работы с шаблонизаторами: Twig, Swig.

Прочее

В качестве таск-менеджера использую в «живых» проектах Gulp. В случае разработки проектов, которые не предполагают многократной сборки (небольшие библиотеки), всё настраивается по настроению, но чаще всего это npm-скрипты. Также имеется опыт написания сложных задач и плагинов для Gulp и Grunt.

Ярый фанат unit-тестирования и тестирования в широком понятии этого слова.

Развитие, мотивация и будущее

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

Проекты есть? А если найду?

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

Откуда получаю знания?

Раньше основным источником знаний были книги издательств: «Манн, Иванов и Фербер», «Питер», «Символ-Плюс», «Бином-Пресс» и «БХВ-Петербург». За это время я прочитал довольно много книг. Конечно, эти знания полезны, но не успевают за непрерывно развивающейся областью.

Теперь же, в основном, всю необходимую информацию получаю из документации w3c и интернет-ресурсов по типу: SitePoint, Smashing Magazine, Nettuts+, Cats Who Code, w3school и множества других, как англоязычных, так и русскоязычных. При этом, часто читаю новые книги по веб-разработке и системному администрированию.

Опыт работы

В 2016 году закончил факультет МТУСИ «Сети и системы связи» и успешно защитил выпускную квалификационную работу по специальности «Инфокоммуникационные технологии и системы связи» на тему «Анализ эффективности мультиплексирования трафика на звене мультисервисной сети связи». Поэтому помимо разговоров на темы, любимые веб-разработчиками, могу поддержать разговор и о сетях.

Хотите платить мне зарплату?

Я буду рад любым предложениям. Пишите на Email с кратким описанием вашего проекта или компании, и я обязательно отвечу вам в ближайшее время. Для предметного общения, можно и желательно приложить тестовое задание.

К сожалению, я еще не успел поработать ни в одной компании по своим интересам. Но это не мешает мне делиться c общественностью своими разработками на GitHub. По мере возможностей принимаю участие в интересных мне проектах и не стесняюсь делать PR. А ещё я активный участник сообщества редактора Visual Studio Code от Microsoft — пишу плагины и помогаю это делать другим, а также внедрял полную поддержку функций Emmet в редактор.

Контактная информация