Как стать автором
Обновить
5
0

Пользователь

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

Ретроспектива. Doin’ It Right

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

Привет! Меня зовут Лёша Дидух, я тимлид команды личного кабинета в Skyeng. Это текстовая адаптация моего доклада про ретроспективы на DUMP-2022 в Екатеринбурге. 

Когда я пришёл в компанию пару лет назад, то немножко обалдел от разницы в подходах к управлению проектами и командами между моей прежней работой и Skyeng. Такой скачок между диаметрально противоположными культурами заставил меня переосмыслить и собрать воедино всё, что я знаю о ретроспективах. Будет полезно и тимлидам, и юным скрам-мастерам, да и вообще любому, кто хотя бы раз сидел на ретроспективе и думал: «Что я здесь делаю?».

В конце статьи можно найти запись доклада по теме.

Начнем издалека (но не просто так)

В 2000 году влиятельные ребята из мира IT, среди которых были Роберт Мартин (автор принципов SOLID и огромного числа книг про программирование) и Джеф Сазерленд (один из авторов Scrum), встретились, чтобы, как говорит сам дядя Боб, лучше узнать друг друга в надежде, что тесное общение приведет к чему-то интересному. 

Читать далее
Всего голосов 18: ↑17 и ↓1+16
Комментарии0

Дженерики в TypeScript

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

Привет, я Сергей Вахрамов, занимаюсь фронтенд-разработкой на Angular в компании Тинькофф. Во фронтенд-разработку вошел напрямую с тайпскрипта, просто перечитав всю документацию. С того момента и спецификация ECMAScript расширилась, и TypeScript сильно подрос. Казалось бы, почему разработчики могут бояться дженериков, ведь бояться там нечего? Мой опыт общения с джуниор-разработчиками говорит, что во многом ребята не используют обобщенные типы просто потому, что кто-то пустил легенду об их сложности.

Эта статья для тех, кто не использует generic-типы в TypeScript: не знают о них, боятся использовать или используют вместо реальных типов — any.

Перестать везде использовать тип "any"
Всего голосов 54: ↑53 и ↓1+52
Комментарии16

Как научиться чему угодно с помощью техники Фейнмана

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


Ричард Фейнман был физиком, удостоенным Нобелевской премии, который внёс значительный вклад в такие области, как квантовая механика и физика частиц. Он также стал пионером квантовых вычислений и ввел понятие нанотехнологии. Он был известным лектором, преподавал в Корнелльском университете и Калифорнийском технологическом институте.

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

Нет никаких чудо-людей. Просто случилось так, что они заинтересовались чем-то и выучили все про это. Ричард Фейнман

Ричарда Фейнмана Ричардом Фейнманом (по крайней мере, по мнению Ричарда Фейнмана) сделал не врождённый интеллект, а систематический способ, с помощью которого он выявлял то, чего не знал, а затем бросался постигать это.

На протяжении всей своей работы и жизни, Фейнман с элегантностью и простотой давал представление о своём процессе рассмотрения сложных концепций в мире физики и изложения знаний/идей. Многие из этих наблюдений о его процессе обучения были собраны в то, что мы сейчас называем «техникой Фейнмана».

Техника Фейнмана — это концепция обучения, которую вы можете использовать для понимания практически всего.

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

В этой статье будет представлен обзор техники Фейнмана и того, как вы можете применять её для постоянного расширения своих знаний и навыков. Короче говоря, Фейнман научит вас не только тому, как учиться, но и тому, как по-настоящему понимать.
Приятного чтения!
Всего голосов 85: ↑74 и ↓11+63
Комментарии106

React испортил веб-разработку

Время на прочтение4 мин
Количество просмотров39K
В начале июня я посетил конференцию разработчиков .debug, на которой у моей компании был свой стенд. Смысл стенда заключался в том, чтобы создать ситуацию «Измени моё мнение»: мы представляли какую-нибудь радикальную идею, предлагали людям обсудить её с нами, а потом показывали им, что интересного мы делаем.

Мы решили взять такую идею:


Моим первым оппонентом стал этот молодой парень справа, создающий приложения на нативном React.

Если серьёзно, то React — это хорошая библиотека. Она важна для веб-разработки, потому что в ней используются декларативные и реактивные шаблоны, а такой сдвиг парадигмы в момент её создания был нужен всем. В те времена (6-7 лет назад) возникали проблемы с движками рендеринга и реактивностью, но React довольно неплохо их решил.
Читать дальше →
Всего голосов 65: ↑52 и ↓13+39
Комментарии51

Внутреннее устройство Git: хранение данных и merge

Время на прочтение9 мин
Количество просмотров86K
В процессе перехода с SVN на Git мы столкнулись с необходимостью переписывания наших внутренних инструментов, связанных с развёртыванием кода, которые ориентировались на существование линейной истории правок (и разработку в trunk). На Хабре уже публиковались возможные решения этой проблемы через Git-SVN, но мы пошли другим путём. Нам нужна поддержка таких возможностей Git, как branching и merge, поэтому мы решили разобраться в основах, как же работает Git и каким способом должна осуществляться интеграция с ним.
Читать дальше →
Всего голосов 77: ↑77 и ↓0+77
Комментарии10

5 бесплатных инструментов, повышающих продуктивность труда веб-разработчика

Время на прочтение4 мин
Количество просмотров34K
Автор статьи, перевод которой мы сегодня публикуем, говорит, что один из способов разумной организации труда разработчика заключается в использовании инструментов, позволяющих достигать большего, прикладывая меньше усилий. Здесь он хочет рассказать о 5 замечательных инструментах, которые позволят любому разработчику повысить производительность своего труда. Вот видео, в котором сделан обзор этих инструментов.


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

Form design patterns. Обзор книги

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

Введение от автора обзора


Книга раскрывает, порой не очевидные для дизайнеров и фронтендеров, темы оформления полей, концепции работы с типами данных и юзабилити. Книга будет полезна и новичкам и разбирающимся в теме проектировщикам интерфейсов, т. к. первым даст понимание основ, а вторым пищу для размышлений над, порой спорными, паттернами проектирования. Обзор будет представлен в виде коротких тезисов из книги и краткими комментариями обзорщика.
Читать дальше →
Всего голосов 24: ↑23 и ↓1+22
Комментарии36

Редактор кода Visual Studio Code. Самый подробный гайд по настройке и установке плагинов для начинающих

Время на прочтение23 мин
Количество просмотров794K
Бесплатный, мощный, очень популярный, с кучей дополнений, да что там говорить, сам Фейсбук выбрал его в качестве основного редактора!


Сегодня речь пойдет о редакторе кода Visual Studio Code или просто VS Code. Мы с тобой его установим, настроим, а также применим плагины, которые существенно упростят нам работу.
Читать дальше →
Всего голосов 21: ↑18 и ↓3+15
Комментарии18

Возможности современного JavaScript, о которых вы могли не знать

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


Несмотря на то, что в последние семь лет я пишу на JavaScript почти каждый рабочий день, должен признаться, что уделяю мало внимания сообщениям о нововведениях от ES. Главные возможности вроде async/await и прокси — это одно, но ещё каждый год идёт поток мелких поэтапных изменений, которые не попадают в моё поле зрения, поскольку всегда находится что-то более важное для изучения.

В этой статье я собрал возможности современного JS, о которых мало говорили, когда они появились. Некоторые из них всего лишь повышают удобство, а некоторые невероятно практичны и могут сэкономить написание кучи кода.
Читать дальше →
Всего голосов 93: ↑85 и ↓8+77
Комментарии53

Чем отличаются JavaScript и ECMAScript?

Время на прочтение6 мин
Количество просмотров71K
Перевод What’s the difference between JavaScript and ECMAScript?

Как-то мы попробовали гуглить «различие между JavaScript и ECMAScript».

В итоге пришлось пробираться сквозь море двусмысленных и, казалось бы, противоречивых результатов:

«ECMAScript — это стандарт».
«JavaScript — это стандарт».
«ECMAScript — это спецификация».
«JavaScript — это реализация стандарта ECMAScript».
«ECMAScript — стандартизованный JavaScript».
«ECMAScript — это язык».
«JavaScript — это диалект ECMAScript».
«ECMAScript — это JavaScript».


Сдерживая желание заплакать, мы постарались овладеть собой и провели трудоемкое, но продуктивное исследование.

В этой статье представлено наше понимание различий между JavaScript и ECMAScript. Статья написана для тех, кто знаком с JavaScript, но хочет получить более четкое представление о его взаимоотношениях с ECMAScript, веб-браузерами, Babel и так далее. Вы также узнаете о скриптовых языках, движках JavaScript и средах выполнения JavaScript.

Ну что, погнали.
Читать дальше →
Всего голосов 47: ↑44 и ↓3+41
Комментарии67

Элегантные паттерны в современном JavaScript (сборная статья по циклу от Bill Sourour)

Время на прочтение6 мин
Количество просмотров5.9K
Привет, Хабр! Довольно известный преподаватель JavaScript Bill Sourour в своё время написал несколько статей по современным паттернам в JS. В рамках этой статьи мы постараемся обозреть идеи, которыми он поделился. Не то чтобы это были какие-то уникальные паттеры, но надеюсь статья найдёт своего читателя. Данная статья не «перевод» с точки зрения политики Хабра т.к. я описываю свои мысли, на которые меня навели статьи Била.

RORO


Абревиатура обозначает Receive an object, return an object — получить объект, вернуть объект. Привожу ссылку на оригинал статьи: ссылка

Билл писал, что пришёл к способу написанию функций при котором большинство из них принимают только один параметр — объект с аргументами функций. Возвращают они также объект результатов. На эту идею Билла вдохновила деструктуризация(одна из фич ES6).

Для тех, кто не знает о деструктуризации приведу необходимые пояснения по ходу рассказа.
Читать дальше →
Всего голосов 18: ↑10 и ↓8+2
Комментарии10

Одностраничники и SEO. Секреты оптимизации

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

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


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


Одностраничные сайты считаются модными и современными – и именно поэтому многие компании выбирают их, а не многостраничные сайты. Однако, одностраничники имеют и набор недостатков, одним из которых является SEO. Поэтому, выбирая сайт для своей компании и бизнеса, вы должны взвесить все «за» и «против».


В статье я постараюсь помочь с выбором, а также раскрою некоторые секреты SEO одностраничников.

Читать дальше →
Всего голосов 11: ↑7 и ↓4+3
Комментарии21

Принцип цикады и почему он важен для веб-дизайнеров

Время на прочтение6 мин
Количество просмотров228K
Пару лет назад я прочитал интересные факты о жизненном цикле периодических цикад. Обычно мы не видим вокруг себя много этих насекомых, потому что бóльшую часть своей жизни они проводят под землёй и тихо сосут корни растений.

Однако, в зависимости от вида, каждые 7, 11, 13 или 17 лет периодические цикады одновременно массово вылезают на свет и превращаются в шумных летающих тварей, спариваются и вскоре умирают.

Хотя наши странные цикады весело уходят в иной мир, возникает очевидный вопрос: это просто случайность, или числа 7, 11, 13 и 17 какие-то особенные?
Читать дальше →
Всего голосов 696: ↑682 и ↓14+668
Комментарии119

Структуры данных для самых маленьких

Время на прочтение22 мин
Количество просмотров337K
James Kyle как-то раз взял и написал пост про структуры данных, добавив их реализацию на JavaScript. А я взял и перевёл.

Дисклеймер: в посте много ascii-графики. Не стоит его читать с мобильного устройства — вас разочарует форматирование текста.


Читать дальше →
Всего голосов 91: ↑87 и ↓4+83
Комментарии51

Sans Forgetica: шрифт, который позволяет немного лучше запоминать прочитанное

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

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

В 2011 году на экранах кинотеатров появился фильм «Области тьмы», который отчасти отображал заветную мечту многих — улучшить свою память и ускорить мыслительный процесс. На днях ученые из Королевского мельбурнского технологического института объявили о создании … нет, не таблетки, но шрифта, который позволяет улучшить «усваиваемость» прочитанного текста.
Всего голосов 57: ↑51 и ↓6+45
Комментарии72

Пасхалка-текстовая RPG в коде поисковика Google

Время на прочтение2 мин
Количество просмотров36K
Пользователь Reddit (attempt_number_1) поделился на форуме очень необычной находкой — он смог запустить в коде сайта google.com текстовую RPG.


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

Как я диплом в LaTeX писал с GitHub, Docker и TravisCI

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

Еще со времен обучения в университете я использовал LaTeX для оформления лабораторных и курсовых работ. Познакомился впервые с LaTeX на Coursera, на курсе "Документы и презентации в LaTeX".


В этой заметке я расскажу, как я писал диплом с помощью LaTeX и почему я использовал GitHub, Docker и TravisCI.


Но зачем?

Читать дальше →
Всего голосов 77: ↑76 и ↓1+75
Комментарии69

Всякие штуки в MetaPost

Время на прочтение8 мин
Количество просмотров15K
В чем рисовать векторные картинки? Для меня, как и для многих других, ответ довольно очевиден: скорее всего, в иллюстраторе. Ну или в инкскейпе. Так же я думал, когда мне заказали отрисовать штук восемьсот картинок для учебника физики. Ничего такого, просто черно-белые технические иллюстрации со всякими блоками, шарами, пружинами, линзами, машинками, тракторами и прочим подобным. Предполагалось, что верстаться книга будет в латехе, а мне были предоставлены вордовские файлы со вставленными картинками — то карандашными набросками, то сканами из других книг — и вроде бы рукопись в каком-то виде. В этом случае первая мысль — рисовать в инкскейпе — уступила фантазиям на тему «как бы это так все автоматизировать». Лучшим вариантом показался в тот момент почему-то MetaPost.



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

Проектирование пользовательского интерфейса Windows 95

Время на прочтение19 мин
Количество просмотров44K
Три года назад мне попалась интересная научная статья сотрудника Microsoft Кента Салливана о процессе и результатах проектирования нового пользовательского интерфейса для Windows 95. С тех пор веб-страница исчезла — одна из причин, почему я такой цифровой Плюшкин.

Статья описывает некоторые общие проблемы оболочки Менеджера программ в Windows 3.1 и рассматривает варианты разработки отдельной оболочки для «новичков». Я склоняюсь к мнению, что она предположительно создавалась в духе программы At Ease от Apple, довольно популярной во времена System 7. Я хорошо помню, как мы запускали At Ease в начальной школе, так что детишкам не приходилось возиться с жёстким диском в Finder.

Итак, вот что Кент дословно написал в своей статье под названием «Пользовательский интерфейс Windows 95: конкретный пример проектирования функциональности» (The Windows 95 User Interface: A Case Study in Usability Engineering). Публикуем её, чтобы документ никогда не потерялся.
Читать дальше →
Всего голосов 45: ↑45 и ↓0+45
Комментарии137

React медленный, React быстрый: оптимизация React-приложения на практике

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

Всем привет! Хочу поделиться своим переводом статьи React is Slow, React is Fast: Optimizing React Apps in Practice автора François Zaninotto. Надеюсь, это кому-то будет полезным.


Краткое содержание:


  1. Измерение производительности React
  2. Почему ты обновился?
  3. Оптимизация через разбиение на компоненты
  4. shouldComponentUpdate
  5. Recompose
  6. Redux
  7. Reselect
  8. Остерегайтесь объектных литералов в JSX
  9. Заключение

React может быть медленным. Я хочу сказать, что любое React приложение среднего размера может оказаться медленным. Но прежде, чем искать ему замену, вы должны знать, что и любое среднее приложение на Angular или Ember может также оказаться медленным.


Хорошая новость в том, что если вы действительно заботитесь о производительности, то сделать React приложение очень быстрым довольно легко. Об этом — далее в статье.

Читать дальше →
Всего голосов 36: ↑35 и ↓1+34
Комментарии59
1

Информация

В рейтинге
Не участвует
Зарегистрирован
Активность