Pull to refresh
1
0
Send message

Async/await. Куда делся thread.  Инверсия асинхронности. Разоблачение мистификации

Level of difficultyMedium
Reading time8 min
Views14K

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

Конечно, многие обиделись на меня за то, что я посмел возражать признанному авторитету, который вынес в заголовок своей очень известной работы фразу There is no thread (Там нет потока) ведь хорошо известно, что: «нет пророка в своем отечестве», и, видимо, быть не должно, но это все эмоции.

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

Читать далее
Total votes 14: ↑2 and ↓12-10
Comments25

Типы событий в React и TypeScript

Level of difficultyEasy
Reading time3 min
Views12K

При работе с React и TypeScript вы часто сталкиваетесь с подобными ошибками:

const onChange = (e) => {}; // Parameter 'e' implicitly has an 'any' type.

<input onChange={onChange} />;

Не всегда понятно, какой тип следует присвоить пременнойe внутри функции onChange.

Это может произойти с onClick, onSubmit или любым другим обработчиком событий, которые получают элементы DOM.

К счастью, есть несколько решений:

Читать далее
Total votes 4: ↑2 and ↓20
Comments5

Почему B-деревья быстрые?

Level of difficultyEasy
Reading time7 min
Views50K

B-дерево — это структура, помогающая выполнять поиск в больших объёмах данных. Она была изобретена более сорока лет назад, однако по-прежнему используется в большинстве современных баз данных. Хотя существуют и более новые структуры индексов, например, LSM-деревья, B-дерево пока никто не победил в обработке большинства запросов баз данных.

После прочтения этого поста вы будете знать, как B-дерево упорядочивает данные и выполняет поисковые запросы.

Читать далее
Total votes 151: ↑150 and ↓1+183
Comments13

Я выучил иностранный язык за год и у вас тоже получится

Level of difficultyEasy
Reading time7 min
Views81K

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

Читать далее
Total votes 48: ↑36 and ↓12+37
Comments238

Книга «Грокаем глубокое обучение с подкреплением»

Reading time13 min
Views12K
image Привет, Хаброжители!

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

Давайте научимся создавать системы глубокого обучения на примере увлекательных упражнений, сопровождаемых кодом на Python с подробными комментариями и понятными объяснениями. Вы увидите, как работают алгоритмы, и научитесь создавать собственных агентов глубокого обучения с подкреплением, используя оценочную обратную связь.
Читать дальше →
Total votes 11: ↑11 and ↓0+11
Comments3

Симулятор электронных схем Qucs-S снова жив

Reading time6 min
Views44K

Qucs-S является программой с открытым исходным кодом для моделирования электронных схем. Qucs-S кроссплатформенный (поддерживаются Linux, Windows и FreeBSD), написан на С++ с использованием набора библиотек Qt и разрабатывается полностью в частном порядке (в отличие, например от KiCAD, который имеет спонсора в лице CERN). В феврале этого года проект восстал из мёртвых и вышел релиз 0.0.23. Главным новшеством версии 0.0.23 было то, что программа теперь портирована на Qt5, чем обеспечена собираемость на современных дистрибутивах Linux. Актуальным релизом на текущий момент является 0.0.24 https://github.com/ra3xdh/qucs_s/releases/tag/0.0.24, в котором добавлено несколько новых видов моделирования. Далее будут рассмотрены основные возможности программы и показано как в Qucs-S смоделировать схему.


Читать дальше →
Total votes 74: ↑74 and ↓0+74
Comments33

Как заинтересовать 120+ HR всего за месяц. Или как захантить к себе аналитика данных

Reading time7 min
Views15K

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

В начале немного статистики по прохождению этапов отбора в компанию:

1 этап "Собеседование с HR-ом": 120+ HR-ов (рекрутеров) написало мне за месяц

2 этап "Собеседование с руководителем" (знакомство и/или "Техническое собеседование" или "Тестовое задание"): все 120+ рекрутеров позвали меня на собеседования с руководителями, но лишь 80 я смог осилить и принял приглашение (почему не всем я сказал да - расскажу дальше). 50 тех собесов было пройдено и 5 заданий было сделано

3 этап "Финальное собеседование" - знакомство с командой: 15 встреч было всего

С какими компаниями успел пообщаться за этот месяц: Яндекс.Облако, СберМаркет, СберЗвук, СберАвто, Ростелеком, Делимобиль, разные команды Х5 Ритейл групп, ВК, Авито, Delivery Club, Skyeng, Учи.ру, DoDo, Joom, YClients (куда я в итоге и пошел) и многие другие.Дальше я раскрою лайфхаки по каждому из этапов прохождения отбора - постараюсь быть полезным как тем, кто в поиске работы, так и нанимающим HR-ам.

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

Читать далее
Total votes 12: ↑8 and ↓4+5
Comments5

Information

Rating
Does not participate
Registered
Activity

Specialization

Fullstack Developer, Web Developer
Middle
From 120,000 ₽
JavaScript
React
TypeScript
JQuery
HTML
CSS
PHP
SQL
Python
Docker