Как стать автором
Обновить
17
0
Al Geas @StGeass

Front-end Developer at DIWO

Отправить сообщение

Войти в IT и, что дальше?

Время на прочтение7 мин
Количество просмотров37K

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

Читать далее
Всего голосов 24: ↑19 и ↓5+20
Комментарии34

Мини-ПК в 2022 году: интересные модели, которые могут пригодиться в офисе и дома

Время на прочтение4 мин
Количество просмотров53K

Несмотря на все усугубляющийся кризис производства полупроводниковых компонентов, производители электронных устройств поставляют на рынок все новые девайсы. В 2022 году успело выйти немало интересных моделей, которые могут пригодиться как компаниям, так и обычным пользователям. Подробнее об этих моделях — под катом.
Читать дальше →
Всего голосов 54: ↑49 и ↓5+60
Комментарии103

Почему не все сеньоры получают оффер мечты, и что с этим делать

Время на прочтение11 мин
Количество просмотров35K
На Хабре много познавательных статей про то, «как я собеседовался в X» (раз, два, три, или вот четыре). Часто они написаны с одной стороны баррикад, т.е. со стороны соискателя. Читая очередную, я понял, что мое представление о найме тоже однобоко — и решил воспользоваться служебным положением, чтобы порасспросить HR одного из крупных рекрутинговых агентств, работающих в IT, как все это видится с их стороны.

Итак, ситуация: вполне себе квалифицированный и успешный сеньор хочет устроиться в конкретную большую компанию, собеседуется, проходит все этапы, но оффера так и не видит. Почему? Что он делает не так? Давайте разбираться.


Приятного чтения!
Всего голосов 48: ↑36 и ↓12+36
Комментарии94

Григорий Остер — Вредные советы для учителей программировать

Время на прочтение15 мин
Количество просмотров29K

Есть у человека такой замечательный перк. Он может обучить другого человека чему-то полезному. Да, конечно, некоторые животные тоже так могут делать, но им далеко до того грандиозного масштаба, с которым мы обучаем друг друга. Мы это дело поставили на поток и проворачиваем в таких объёмах, что тут можно только позавидовать.

Доводилось ли Вам кого-нибудь учить?

Что? Вас уже корёжит и передёргивает от одного только упоминания этого мероприятия? Вы постоянно вспоминаете о том самом стажёре, который был настолько туп, что Вы просто не могли себя сдержать?

Кто-то обвалил собранную базу данных, потому что не увидел разницы между rm -rf ./old и rm -rf . /old?

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

Заходите, поговорим.
Читать дальше →
Всего голосов 80: ↑72 и ↓8+85
Комментарии72

Fastify.js — не только самый быстрый веб-фреймворк для node.js

Время на прочтение8 мин
Количество просмотров38K
Последние 10 лет среди веб-фреймворков для node.js самой большой популярностью пользуется Express.js. Всем, кто с ним работал, известно, что сложные приложения на Express.js бывает сложно структурировать. Но, как говорится, привычка — вторая натура. От Express.js бывает сложно отказаться. Как, например, сложно бросить курить. Кажется, что нам непременно нужна эта бесконечная цепь middleware, и если у нас забрать возможность создавать их по любому поводу и без повода — проект остановится.

Отрадно, что сейчас, наконец, появился достойный претендент на место главного веб-фреймворка всех и вся — я имею в виду не Fastify.js, а, конечно же, Nest.js. Хотя по количественным показателям популярности, до Express.js ему очень и очень далеко.

Таблица. Показатели популярности пакетов по данным npmjs.org, github.com
Пакет Количество загрузок Количество «звезд»
1 connect 4 373 963 9 100
2 express 16 492 569 52 900
3 koa 844 877 31 100
4 nestjs 624 603 36 700
5 hapi 389 530 13 200
6 fastify 216 240 18 600
7 restify 93 665 10 100
8 polka 71 394 4 700
9 loopback 28 501 13 300
10 Adonis.js 3 825 10 100


Express.js по-прежнему работает в более чем в 2/3 веб-приложений для node.js. Более того, 2/3 наиболее популярных веб-фреймворков для node.js используют подходы Express.js. (Точнее было бы сказать, подходы библиотеки Connect.js, на которой до версии 4 базировался Express.js).

В предлагаемом сообщении обсуждаются особенности основных веб-фреймворков для node.js, и что делает Fastify.js фреймворком другого уровня, что позволяет выбрать его как фреймворк для разработки Вашего следующего проекта.
Читать дальше →
Всего голосов 21: ↑21 и ↓0+21
Комментарии32

NestJS. Загрузка файлов в S3 хранилище (minio)

Время на прочтение6 мин
Количество просмотров16K
NestJS — фреймворк для создания эффективных, масштабируемых серверных приложений на платформе Node.js. Вы можете встретить утверждение, что NestJS является платформо-независимым фреймворком. Имеется в виду, что он может работать на базе одного из двух фрейморков по Вашему выбору: NestJS+Express или NestJS+Fastify. Это действительно так, или почти так. Эта платформо-независимость заканчивается, на обработке запросов Content-Type: multipart/form-data. То есть практически на второй день разработки. И это не является большой проблемой, если Вы используете платформу NestJS+Express — в документации есть пример работы для Content-Type: multipart/form-data. Для NestJS+Fastify такого примера нет, и примеров в сети не так уж и много. И некоторые из этих примеров идут по весьма усложненному пути.

Выбирая между платформой NestJS+Fastify и NestJS+Express я сделал выбор в сторону NestJS+Fastify. Зная склонность разработчиков в любой непонятной ситуации вешать на объект req в Express дополнительные свойства и так общаться между разными частями приложения, я твердо решил что Express в следующем проекте не будет.
Читать дальше →
Всего голосов 3: ↑2 и ↓1+2
Комментарии6

Инструменты Node.js разработчика. Протокол mqtt для работы с веб-сокетами

Время на прочтение5 мин
Количество просмотров18K
Технология веб-сокет позволяет в веб-приложении или в мобильном приложении реализовать отправку сообщений с сервера на клиент, что невозможно сделать средствами REST-API. Для работы с веб-сокетами часто используют библиотеку socket.io, или же разработчики работают с нативными объектами веб-сокет браузеров. В этом сообщении я попытаюсь показать, что оба пути не решают всех проблем, и гораздо лучше использовать для работы с веб-сокетами специализированные серверы, например mqtt-сервер (раньше его назвали mqtt-брокер).

Справедливости ради, и чтобы избежать ненужных споров, замечу, что кроме mqtt-сервера может быть использован еще целый ряд серверов, например rabbitmq.
Читать дальше →
Всего голосов 12: ↑8 и ↓4+4
Комментарии12

Исповедь docker хейтера

Время на прочтение10 мин
Количество просмотров122K

Я должен признаться. Я ненавижу docker. Всей своей душой. Это самая ужасная софтина, которую я видел за последние 10 лет.


С одной стороны, я очень уважаю одноименную компанию. Ребята из Docker Inc. реально популяризировали контейнеризацию. Теперь о ней не знает только ленивый. С другой стороны, ничего принципиально нового они не изобрели — контейнеризация на момент, когда Docker "выстрелил", уже существовала более 30 лет (начиная от chroot, вспомним еще jails и zones, ну, и наконец-то — namespaces & cgroups).


Круто, что docker реально ускоряет разработку во множество раз. Если вести ее правильно, то даже без потери в качестве. В любом случае, docker здесь, от него не деться и приходится им пользоваться.


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


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

Читать дальше →
Всего голосов 220: ↑203 и ↓17+186
Комментарии539

Возможно, в мозге найден эквивалент обратного распространения

Время на прочтение7 мин
Количество просмотров11K

Давно известно, что биологические нейроны действуют подобно битам: либо отправляют сигнал соседнему нейрону, либо не делают этого; поэтому исследователи построили модель, где роль обучающих сигналов выполняют всплески нейронной активности.

Не прерывая работу нейронов, эта модель позволяет выполнять биологическое обратное распространение, а эффективность реализации нового алгоритма близка к эффективности классического обратного распространения. За подробностями и кодом приглашаем под кат, пока у нас начинается курс по ML и DL.

Читать далее
Всего голосов 14: ↑11 и ↓3+11
Комментарии19

Освежите ваш COBOL: почему на язык 60-летней выдержки вдруг резко возник спрос?

Время на прочтение13 мин
Количество просмотров51K

Давным-давно, когда мир был юн, и компьютеры в нем были в новинку, я учился по программе на младшего сотрудника (Associate Degree) по обработке данных – программ по «компьютерным наукам» тогда не было – и в рамках этой программы преподавались бухгалтерское дело, математика, статистика, а также три языка программирования: ассемблер IBM/360, FORTRAN и COBOL. К 80-м студентам уже рассказывали, что COBOL мертвый язык, и никто его больше не изучают.

Ныне государственные учреждения и банки умоляют прислать им COBOL-щиков, специалистов по языку, который не хочет умирать

Читать далее
Всего голосов 51: ↑47 и ↓4+67
Комментарии88

20 вещей, которые я узнал за 20 лет работы инженером-программистом

Время на прочтение8 мин
Количество просмотров99K

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

Особенно отзываются пункты «стройте компактные системы» и «лучший код — это отсутствие кода». Последний совет я превращаю в цитату из какого-то второсортного фильма про самураев: «Лучшая победа — та, которую ты одержал, не доставая меч из ножен» (думаю, сослуживцы за моей спиной уже закатывают глаза). И, конечно, бесконечные разговоры про легендарных 10x-программистов постоянно хочется прервать советом не связываться с 0,1x-программистами (которые реально существуют, в отличие от 10x).

Читать далее
Всего голосов 154: ↑149 и ↓5+176
Комментарии158

Квантовая теория. Вселенная из волн вероятностей

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

image Что будет, если по аналогии с двущелевым опытом, все пространство на пути частицы до экрана будет заполнено щелями?
Читать дальше →
Всего голосов 55: ↑52 и ↓3+68
Комментарии153

Я провёл более 600 технических интервью — и вот пять проблемных мест, которые я заметил у кандидатов

Время на прочтение9 мин
Количество просмотров49K
Недавно я провёл 600-е собеседование на interviewing.io (IIO). Хотелось бы поделиться опытом, рассказать, как я подхожу к интервью, и пролить свет на типичные проблемы у кандидатов. Каждый интервьюер на IIO индивидуален, поэтому ваши результаты могут отличаться. У нас на платформе сформировалось замечательное сообщество, где каждый работает над улучшением своих знаний, навыков и результатов интервью.

Пробное интервью на interviewing.io


Мы оцениваем людей по трём четырёхбалльным шкалам. Оценка «один» означает плохой результат, а «четыре» — очень хороший. Я обычно вначале даю кандидату три балла, а затем прибавляю/отнимаю очки по мере интервью.

Каждый интервьюер отдаёт предпочтение какому-то одному аспекту. Лично я проявляю некоторую предвзятость в сторону скиллов «общение» («коммуникация») и «решение проблем», которые мы обсудим ниже.
Читать дальше →
Всего голосов 46: ↑41 и ↓5+52
Комментарии47

Светодиодные лампы IKEA TRÅDFRI и умный дом Xiaomi

Время на прочтение2 мин
Количество просмотров35K
В этом году в российских магазинах IKEA появились умные светодиодные лампы TRÅDFRI (Тродфри), управляемые по протоколу Zigbee.

Для управления этими лампами можно использовать zigbee-шлюзы умного дома Xiaomi.

Читать дальше →
Всего голосов 17: ↑17 и ↓0+17
Комментарии33

Измеряем мышечную массу: чем и зачем?

Время на прочтение6 мин
Количество просмотров137K
Проблема анализа мышечной массы заключается в том, что с одной стороны — мышечная масса является как бы константной величиной, и у здоровых людей приблизительно укладывается в один коридор значений.

С другой стороны мышечная масса, увеличение ее — это увеличение и веса тела. Соответственно, нужно быть уверенным в том, что человек «толстеет» из-за мышц, а не из-за жира. И, наконец, непосредственно проблема с вычислением как таковым: все подручные методы достаточно приблизительны.



Давайте поговорим об этом.
Читать дальше →
Всего голосов 29: ↑23 и ↓6+17
Комментарии26

В IT растет цензура, а мы не замечаем — разрешают только улыбаться и молчать

Время на прочтение8 мин
Количество просмотров125K

У меня есть две статьи-интервью вот с такими странными абзацами. За обоими кроются неприятные истории для меня и для людей, про которых я писал.

Читать далее
Всего голосов 383: ↑366 и ↓17+463
Комментарии1526

Капитальный ремонт в сталинке и организация видеонаблюдения

Время на прочтение26 мин
Количество просмотров60K
image

Часть 2. Про «немножечко IT» внизу статьи. Про организацию видео наблюдения нашего дома. Тыц

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

Обратная сторона профильных видео на ютубе — я стал сомневаться в людях (ютьюбодеформация), если они не смотрят ютуб по профилю своей специальности. Новая поговорка звучит так: скажи мне на что ты подписан, и я скажу кто — ты. 

Я не могу отказаться от увиденного на мониторе результата, если он технически совершеннее и теоретически достижим за те же деньги. Насмотревшись видосиков, я кинул клич по одной известной платформе для поиска исполнителей с полным описанием своей задачи — замену полов. Ни один из 5 откликнувшихся не предложил мне то, чего я желал. А хотел я стяжку про профлисту, как делают по Питеру в старых домах!

Я лучше знал что я хочу и как хочу, и никто не сможет в этом мне помочь. Я был отравлен восхваленными лайками и просмотрами видео. Измученный сомнениями, я принял единственное неправильное решение в этой ситуации — сделать все самостоятельно. Я медленно превращался в ютуб-одиночку... 
Читать дальше →
Всего голосов 166: ↑111 и ↓55+94
Комментарии249

MAM: сборка фронтенда без боли

Время на прочтение16 мин
Количество просмотров11K

Здравствуйте, меня зовут Дмитрий Карловский, и я… обожаю MAM. MАМ управляет Агностик Модулями, избавляя меня от львиной доли рутины.


Типичный Агностик Модуль


Агностик Модуль, в отличие от традиционного, это не файл с исходником, а директория, внутри которой могут быть исходники на самых разных языках: программная логика на JS/TS, тесты к ней на TS/JS, композиция компонент на view.tree, стили на CSS, локализация в locale=*.json, картинки и тд, и тп. При желании не сложно прикрутить поддержку любого другого языка. Например, Stylus для написания стилей, или HTML для описания шаблонов.


Зависимости между модулями трекаются автоматически путём анализа исходников. Если модуль включается, то включается целиком — каждый исходник модуля транспилируется и попадает в соответствующий бандл: скрипты — отдельно, стили — отдельно, тесты — отдельно. Для разных платформ — свои бандлы: для ноды — свои, для браузера — свои.


Полная автоматизация, отсутствие конфигурирования и бойлерплейта, минимальные размеры бандлов, автоматическое выкачивание зависимостей, разработка сотен отчуждаемых библиотек и приложений в одной кодовой базе без боли и страданий. Ух какая наркомания! Уберите от мониторов беременных, слабонервных, детей и добро пожаловать на подводную лодку!

Читать дальше →
Всего голосов 28: ↑20 и ↓8+12
Комментарии37

Изучаем и реализуем алгоритм работы правильного observer паттерна для react компонентов

Время на прочтение11 мин
Количество просмотров11K


Итак продолжаем развивать observer-паттерн. В предыдущей статье от старого и очень простого паттерна "observer" маленькими шагами мы пришли к mobx и написали его мини-версию. В этой статье мы напишем полноценную версию mobx которая реализует алгоритм обновления зависимостей в правильном порядке для избежания ненужных вычислений. Надо сказать что попытки описать этот алгоритм на хабре предпринимались и раньше в статьях товарища vintage про атомы тут, тут, и тут но там не описан в полной мере последний "правильный" порядок обновления о чем и будет речь в этой статье.

Читать дальше →
Всего голосов 14: ↑14 и ↓0+14
Комментарии14

Ортолинейная сплит клавиатура — это что такое? Обзор Iris Keyboard

Время на прочтение13 мин
Количество просмотров106K
За сто с лишним лет клавиатуры сильно изменились внешне: стали лёгкими, тонкими, есть даже проекционные со сканером. Но рынок ничего не меняет в их раскладке («QWERTY» появилась в 1890 году), клавиатуры не стали удобней для пальцев, не адаптированы для положения кистей и предплечий. Всё человечество стало проводить жизнь за компьютером, но эргономика главного инструмента ввода осталась в позапрошлом веке.

Я решил узнать, можно ли купить удобную клавиатуру в 2020 году. Краткий ответ: пришлось паять самому.


Всего голосов 100: ↑96 и ↓4+114
Комментарии293

Информация

В рейтинге
Не участвует
Откуда
Чита, Забайкальский край, Россия
Дата рождения
Зарегистрирован
Активность