All streams
Search
Write a publication
Pull to refresh
11
0
Дмитрий Пищалка @dmitryprogrammer

Front-End Developer

Send message

Comedy. Акторы в Node.JS для гибкого масштабирования

Reading time14 min
Views17K

Привет, хабравчане! В этой статье я познакомлю вас с фреймворком Comedy — реализацией акторов в Node.JS. Акторы позволяют масштабировать отдельные модули вашего Node.JS приложения без изменения кода.

Читать дальше →

Как участие в профессиональных ИТ-сообществах влияет на карьеру

Reading time4 min
Views25K
image
Мы знаем, что для ИТ-рекрутеров крайне важно закрыть вакансию в кратчайшие сроки наименее затратным способом. Для этого у рекрутеров есть множество инструментов и методик: как для непосредственного поиска нужного специалиста, так и для предварительной оценки его профессиональных качеств. Они смотрят на опыт работы кандидата, на указанные им навыки, на отзывы со стороны коллег. В том числе смотрят и на его активность в профессиональных ИТ-сообществах.

Поэтому, месяц назад мы ввели на «Моём круге» рейтинги участия в ИТ-сообществах. Теперь каждый соискатель может показать на своём профиле, какой вклад он внёс и какие награды получил на «Хабре» и «Тостере», на StackOverflow и GitHub.

Но какую именно роль профессиональные ИТ-сообщества играют в жизни разработчиков и в их карьере? Насколько для работодателя важна информация об участии соискателя в этих сообществах? Какие сообщества более важны, а какие менее? Можно ли всё это как-то посчитать, измерить и оценить?

Мы провели опрос среди пользователей «Моего круга» по этой теме, собрали ответы тысячи респондентов и перевели их в наглядные диаграммы. На наш взгляд, получилась очень любопытная и убедительная картинка.
Читать дальше →

Эти токсичные, токсичные собеседования

Reading time8 min
Views105K


Всё началось, когда автор Ruby on Rails признался миру:

Когда IP-адресов будет хватать всем?

Reading time7 min
Views49K
Количество IP-адресов для устройств, доступных в глобальной сети по протоколу IPv4, достигло порядка 4,3 млрд и уже практически исчерпано из-за длины IP-адреса в 32 бита. В адресном пространстве IPv6 задействовано 128 бит, что делает практически бесконечным количество адресуемых устройств. Прямой и простой совместимости друг с другом у протоколов IPv4 и IPv6 нет. Именно из-за этого быстрого и дешевого перехода на IPv6 only не будет. Страшно? Да нет. Просто нужно вступить на эту дорогу — и рано или поздно мы войдем в эру «чистого» IPv6. Хорошо это или плохо?

image

Читать дальше →

Практическое руководство по использованию CSS Modules в React приложениях

Reading time9 min
Views183K
Привет Хабр! Предлагаю вашему вниманию свободный перевод статьи «Practical Guide to React and CSS Modules» от Tatu Tamminen.

В прошлом веб-разработчики тратили много времени и сил на создание повторно используемых компонентов. Оcобую проблему представлял собой CSS и природа его каскадов. Например, если разработчик создаёт компонент для отображения древовидной структуры, то как он может гарантировать, что CSS класс (например, .leaf), используемый в этом компоненте, не приведёт к побочным эффектам в других частях приложения? Были созданы различные методологии и соглашения, чтобы справиться с проблемами селекторов. БЭМ и SMACSS — широко используемые методологии, которые хорошо выполняют свои задачи, но в то же время далеко не идеальны. В этой статье рассказывается о недостатках таких методологий, основанных на соглашении об именах, о том, что представляют собой CSS Modules, и о том, как эти модули можно использовать в React приложении.
Читать дальше →

Что может и чего не может нейросеть: пятиминутный гид для новичков

Reading time8 min
Views73K
С момента описания первого искусственного нейрона Уорреном Мак-Каллоком и Уолтером Питтсом прошло более пятидесяти лет. С тех пор многое изменилось, и сегодня нейросетевые алгоритмы применяются повсеместно. И хотя нейронные сети способны на многое, исследователи при работе с ними сталкиваются с рядом трудностей: от переобучения до проблемы «черного ящика».

Если термины «катастрофическая забывчивость» и «регуляризация весов» вам пока ни о чем не говорят, читайте дальше: попробуем разобраться во всем по порядку.

Читать дальше →

Как повысить шансы при поиске работы и получить максимум приглашений на перспективные собеседования при минимуме времени

Reading time5 min
Views35K
В данной публикации привожу рекомендации, выработанные на основе опыта поиска как работы, так и сотрудников. Все рекомендации проверены опытом и сформулированы в виде конкретных практических действий с короткими пояснениями. Рекомендации приводятся на примере одного из самых популярных сайтов по поиску работы.
Читать дальше →

[UPDATED + Комментарии] Сначала они воруют, а когда ты побеждаешь, то тебя убивают

Reading time9 min
Views179K
Кому-то может показаться, что это начало какой-то детской загадки, но на самом деле это реальность. Ответ на нее Департамент Информационных Технологий.

Заранее говорю, что статья является лишь сводом информации. Каждый из вас может сделать собственные выводы.

[UPD]: ДИТ ответил в комментариях
[UPD]: ДИТ прислал официальный ответ
[UPD]: Сайты, которые указывают на связь компании Альтрикс и компании Тактик Лабс почистили, но интернет помнит все
Часть 2. Сначала они воруют, а когда ты побеждаешь, то тебя убивают
Читать дальше →

WebStorm 2017.2 – что нового в поддержке JavaScript, TypeScript, Angular и Sass и работе с ESLint, Karma и Mocha

Reading time4 min
Views16K
На этой неделе вышло большое обновление WebStorm. В этом посте мы расскажем подробнее о том, какие улучшения ждут JavaScript-разработчиков в WebStorm 2017.2 и других IDE JetBrains версии 2017.2.

Вы можете прочитать подробнее о WebStorm 2017.2 и скачать его на нашем сайте.

Улучшения в поддержке JavaScript и TypeScript


Move symbol


Новый рефакторинг Move symbol переносит классы, глобальные функции и переменные из одного JavaScript или TypeScript файла в другой. IDE автоматически добавит экспорт и обновит ES6-импорты в файлах, где используется этот символ.

Чтобы вызвать этот рефакторинг, поставьте курсор на символ в ES6-модуле и нажмите F6.


Читать дальше →

Новый V8 и скорость Node.js: техники оптимизации сегодня и завтра

Reading time19 min
Views28K
Node.js, с момента появления, зависит от JS-движка V8, который обеспечивает исполнение команд языка, который мы все знаем и любим. V8 — это виртуальная машина JavaScript, написанная Google для браузера Chrome. С самого начала V8 создавали для того, чтобы сделать JavaScript быстрым, по крайней мере — обеспечить большую скорость, чем конкурирующие движки. Для динамического языка без строгой типизации достижение высокой производительности — задача непростая. V8 и другие движки развиваются, всё лучше решая эту задачу. Однако, новый движок — это не просто «рост скорости исполнения JS». Это — и необходимость в новых подходах к оптимизации кода. Не всё то, что было сегодня самым быстрым, будет радовать нас максимальной производительностью в будущем. Не всё, что считалось медленным, останется таким.

Как характеристики TurboFan V8 повлияют на то, как будут оптимизировать код? Как техники, считающиеся оптимальными сегодня, покажут себя в недалёком будущем? Как ведут себя «убийцы производительности V8» в наши дни, и чего от них можно ожидать? В этом материале мы постарались найти ответы на эти и многие другие вопросы.

Перед вами — плод совместного труда Дэвида Марка Клементса и Маттео Коллины. Материал проверили Франциска Хинкельманн и Бенедикт Мейрер из команды разработчиков V8.


Читать дальше →

Хотите зашифровать вообще любое TCP соединение? Теперь у вас есть NoiseSocket

Reading time6 min
Views37K


Привет, %username%!

Не всё в этом мире крутится вокруг браузеров и бывают ситуации, когда TLS избыточен или вообще неприменим. Далеко не всегда есть необходимость в сертификатах, очень часто хватает обычных публичных ключей, взять тот же SSH.

А еще есть IoT, где впихивать TLS целиком это вообще задача не для слабонервных. И бэкенд, который, я почти уверен, у всех после балансера общается друг с другом по обычному HTTP. И P2P и еще и еще и еще…

Не так давно в сети появилась спецификация Noise Protocol Framework. Это по сути конструктор протоколов безопасной передачи данных, который простым языком описывает стадию хэндшейка и то, что происходит после неё. Автор — Trevor Perrin, ведущий разработчик мессенджера Signal, а сам Noise используется в WhatsApp. Так что, был отличный повод рассмотреть этот протокольный фреймворк поближе.

Он так понравился нам своей простотой и лаконичностью, что мы решили на его основе запилить аж целый новый протокол сетевого уровня, который не уступает TLS в безопасности, а в чём-то даже превосходит. Мы презентовали его на DEF CON 25, где он был очень тепло принят. Пора поговорить о нём и у нас.

Собеседование для фронтенд-разработчика на JavaScript: самые лучшие вопросы

Reading time9 min
Views213K
Недавно мне довелось побывать на встрече участников проекта FreeCodeCamp в Сан-Франциско. Если кто не знает, Free Code Camp — это сообщество, нацеленное на изучение JavaScript и веб-программирования. Там один человек, который готовился к собеседованиям на позицию фронтенд-разработчика, попросил меня подсказать, какие вопросы по JavaScript стоит проработать. Я немного погуглил, но не смог найти подходящего списка вопросов, на который я бы мог дать ссылку и сказать: «Разбери эти вопросы и работа твоя». Некоторые списки были близки к тому, что мне хотелось найти, некоторые выглядели очень уж простыми, но все они были либо неполными, либо содержали вопросы, которые вряд ли кто станет задавать на реальном собеседовании.

image
Читать дальше →

Пишем игру змейка с помощью JavaScript + Canvas

Reading time7 min
Views48K
Доброго времени суток, друзья. Сейчас я постараюсь вам показать как можно написать игру Змейка. Конечно, не самым быстрым способом и не самым маленьким в плане количества строк кода, но по-моему самым понятным для начинающих разработчиков, как я. Статья написана для людей, желающих чуть-чуть познакомиться с элементом canvas и его простыми методами для работы с 2D графикой.
image
Напишем змейку в «старом» виде, без особо красивой графики — в виде кубиков. Но это только упростит понимание разработки. Ну что же, поехали!
Читать дальше →

Быстрые сетки для верстальщиков

Reading time5 min
Views72K

Любому верстальщику, перед которым встала очередная задача по вёрстке адаптивного макета, нужны сетки. В большинстве случаев берётся старый добрый bootstrap, и в html-ке начинают появляться div-ы с классами вида col-xs-6 col-sm-4 col-md-3. И вроде бы всё хорошо и быстро, но в данном подходе часто возникает множество подводных камней. В данной статье мы рассмотрим эти подводные камни, и закидаем тухлыми помидорами рассмотрим мою поделку для беспроблемных сеток.

Читать дальше →

Как уважать время или как стать эффективным тим лидером

Reading time10 min
Views23K
image alt


Нужно ли управлять временем?


Если вы никогда не задавались этим вопросом, то вы наверняка имеете проблемы с организацией рабочего процесса.

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

Чем выше эффективность использования рабочего времени, тем быстрее и качественнее можно выполнить любой проект. Как мы знаем время деньги, а сэкономленное время это заработанные деньги для компании и соответственно для себя. Если вы менеджер или только целитесь в руководители, то надеюсь я вас убедил почему одно из главнейших качеств руководителя это умение управлять своим временем и временем всего отдела.
Читать дальше →

Про Agile, Scrum и командную работу. Как устроены процессы развития продуктов в Альфа-Лаборатории

Reading time5 min
Views21K

Негибкий “Энтерпрайз” и гибкие методологии


Существует устоявшееся мнение, что IT-специалист в крупных компаниях — это маленький “винтик” в огромном механизме, призванный выполнять какую-то конкретную функцию. А механизм, в свою очередь, беспощадно эксплуатирует ресурс своих “винтиков”.

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



Я расскажу, как у нас в Лаборатории выстраиваются процессы работы. Мы опираемся на концепцию Agile. В качестве основного фреймворка мы выбрали Scrum, модель производства — командно-центричная.
Читать дальше →

JavaScript без this

Reading time10 min
Views21K
Ключевое слово this в JavaScript можно назвать одной из наиболее обсуждаемых и неоднозначных особенностей языка. Всё дело в том, что то, на что оно указывает, выглядит по-разному в зависимости от того, где обращаются к this. Дело усугубляется тем, что на this влияет и то, включён или нет строгий режим.



Некоторые программисты, не желая мириться со странностями this, стараются вовсе не пользоваться этой конструкцией языка. Не вижу тут ничего плохого. На почве неприятия this было создано много полезного. Например — стрелочные функции и привязка this. Как результат, при разработке можно практически полностью обойтись без this.
Читать дальше →

CASL. Авторизация для JavaScript приложения

Reading time4 min
Views11K

CASL JavaScript В наше время почти каждое приложение имеет понятие прав доступа и предоставляет различные функции для разных групп пользователей (например, admin, member, subscriber и т.д.). Эти группы обычно называются "роли".


По своему опыту скажу, что логика прав доступа большинства приложений построена вокруг ролей (проверка звучит так: если пользователь имеет эту роль, то он может что-то сделать) и в конечном итоге имеем массивную систему, с множеством сложных проверок, которую трудно поддерживать. Эту проблему можно решить при помощи CASL.

Читать дальше →

Cpp ❤️ Mobile

Reading time2 min
Views9.5K


Пять лет прятали от хабраобщественности DevDay. Опасались, что встречи проходят в Новосибирске, а общественность — по всей России и не только. Но, кажется, трансляция решает все проблемы, а тема очередного DevDay прекрасна, что молчать о ней нельзя.
Читать дальше →

Увольнение – это маленькая смерть. Как сохранить ценного специалиста решившего уволиться?

Reading time4 min
Views85K


— Нам нужно срочно поговорить! Примерно так начинаются 90% всех разговоров про увольнение. Причем кто бы не начинал разговор первым, результат обычно предсказуем. Что делать, если от вас уходит нужный человек? Под катом мнение вице-президента Parallels Николая Добровольского.
Читать дальше →

Information

Rating
11,643-rd
Location
Самара, Самарская обл., Россия
Date of birth
Registered
Activity