Ты занимаешься сексом и думаешь, что готов делать это целый день. Но после секса тебе ничего не хочется — только кушать пиццу и играть в доту. Что изменилось? Ты тот же, девушка та же.
Только что ты был альфа-самцом и за секунду превратился в омежку-куколда.
Что случилось?! ⬇️
Делом в том, что после полового акта твой пролактин улетает в небеса.
А теперь представь, что есть люди, которые всю жизнь живут с таким высоким уровнем пролактина. У них нет мотивации, жизненной энергии, им ничего не хочется. ⬇️
Они думают, что проблема в голове, пьют антидепрессанты, которые еще больше убивают гормональный фон. А проблема не в голове, а в крови.
Поэтому не будь куколдом, сдай кровь на тестостерон, эстрадиол и пролактин.
• • •
Missing some Tweet in this thread? You can try to
force a refresh
Почему Ruby — идеальный язык программирования. Тред:
⬇️
Все данные в Ruby — это true, кроме nil и false.
Во многих других языках все значения, которые интуитивно «пусты», становятся false. Например, ноль, пустая строка и т.д. При этом пустой массив или пустой объект — это true.
Ruby же полагается на логику, а не на интуицию.
⬇️
x = x + 1
Подумайте над этим выражением. Как x может быть равен x+1? Это же абсурдно с точки зрения математики. Ведь по правилу тождества x может быть равен самому себе, а не самому себе плюс один.
⬇️
Redux и MobX - это популярные библиотеки для управления состоянием веб-приложения.
Тред сравнения этих библиотек ⬇️
1. Redux - это библиотека, которая предоставляет предсказуемый однонаправленный поток данных. Это означает, что все изменения состояния приложения происходят через действия и редьюсеры. Redux также предоставляет возможности для логирования, "временных путешествий" и других фич.
2. MobX - это библиотека, которая использует парадигму наблюдаемых объектов для управления состоянием. Она позволяет автоматически реагировать на любые изменения, связанные с этими объектами. MobX предоставляет возможности для изменения и фильтрации данных в реальном времени.
Тред про правила работы с TypeScript, которые облегчат жизнь кабана и повысят его силу и эффективность.
1. Не болтай много
const x: number = 69 // Плохо
const x = 69 // Хорошо
Избегай аннотирования типов везде, где TypeScript может вывести тип без угрозы твоей безопасности.
Кукарек<кококо> кукарек = new Кукарек<кококо> оставь Java-петуханам.
2. Будь четким
Если state имеет три состояния, то не нужно присваивать ему тип string. Чем более узкий и четкий у тебя тип, тем лучше:
type State: 'pending' | 'error' | 'ok'
Тред: самые частые ошибки во фронтенд-проектах.
Джуны часто просят меня поревьюить их тестовое задание или выпускные проекты, и у многих повторяются один и те же ошибки. Сейчас расскажу как их исправить.
1. Используй prettier.io
Плохо отформатированный код просто кричит о непрофессионализме автора. Не нужно руками форматировать файл или вручную настраивать eslint-правила. Просто поставь Prettier!
2. Используй eslint.org хотя бы c recommended-конфигом
Это очень сильно повысит качество твоего кода и покажет, что ты заинтересован следовать хорошим практикам в индустрии. Со временем добавь правила из eslint-plugin-sonarjs и eslint-plugin-unicorn.
Тред: собеседование фронтендера.
В Яндексе я был собеседующим программистом, т.е. проводил интервью и ставил оценки – на какой грейд подходит кандидат. Но я не принимал решение о найме, т.к. собеседование состояло из серии встреч (yandex.ru/jobs/ya-interv…).
⬇️
После Яндекса я уже сам нанимал людей в свою команду и проводил собеседования самостоятельно.
Обычно я начинаю со скрининга по базовым JS-вопросам: например, typeof []. Дальше можно углубиться: как отличить массив от объекта? Какие минусы у instanceof?
⬇️
Я не вижу смысла задавать JavaScript WTF-вопросы типа typeof null или [] * {} - 0, т.к. практической пользы от них нет. Не могу представить, в какой ситуации вам нужно умножать массив на объект. Но знать "4" + 2 было бы неплохо, т.к. даже TypeScript вас от этого не спасет.