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

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

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

Сказ о том, как я за год решил более 600 leetcode задач

Уровень сложности Простой
Время на прочтение 7 мин
Количество просмотров 70K

Всем салют!

Хочу рассказать вам историю о том, как я начинал с уровня — «не могу решить даже 1 easy задачу из 10» до уровня — «могу решить каждую вторую medium задачу» и прошел несколько coding сессий в таких компаниях как Meta, Booking, Careem, Avito...

Читать далее
Всего голосов 150: ↑141 и ↓9 +132
Комментарии 406

Как изучать китайский язык / 怎样学习汉语? Пошаговая инструкция

Уровень сложности Простой
Время на прочтение 2 мин
Количество просмотров 36K

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

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

И как же?
Всего голосов 26: ↑17 и ↓9 +8
Комментарии 39

Моя любимая задача для собеседований по программированию

Уровень сложности Средний
Время на прочтение 9 мин
Количество просмотров 96K

В сети есть уйма постов и видео, где разбираются ответы на вопросы LeetCode. Но обычно рассмотрение в них происходит с позиции соискателя, а не работодателя. В этой же статье я приведу разбор собственной задачи по программированию, которую использовал при приёме людей на работу в Amazon, Google и Microsoft.
Читать дальше →
Всего голосов 131: ↑126 и ↓5 +121
Комментарии 170

Как выигрывать соревнования по программированию

Уровень сложности Простой
Время на прочтение 12 мин
Количество просмотров 19K

Я регулярно участвую в различных хакатонах и конкурсах по программированию, и довольно часто удаётся выигрывать.Рассказываю о внутренней кухне, вспоминаю поучительные истории с хакатонов и делюсь секретами успеха.

Читать далее
Всего голосов 39: ↑20 и ↓19 +1
Комментарии 29

Как перезагрузиться, пройдя пешком 250 км, или каким был для меня Путь Сантьяго

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

Всем привет! Меня зовут Катя Черных, я бизнес аналитик в Х5 Tech, работаю на продукте Ценообразование. Живу в Москве, со времён ковида работаю удалённо и большую часть дня провожу дома. Поэтому к планированию отпуска отношусь серьёзно, стараюсь уезжать подальше из своего домашнего офиса, чтобы максимально перезагрузиться. Люблю природу, хайкинги, трекинги и всякие трейлы. 

В мае 2023 года я прошла паломнический Путь Сантьяго (Эль Камино-де-Сантьяго).  Мой маршрут начинался в северной Португалии в Порту и за 11 дней я прошла 250 километров до испанского города Сантьяго-де-Компостела. 

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

Читать далее
Всего голосов 33: ↑29 и ↓4 +25
Комментарии 13

Как вырастить солёную пирамидку

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

Да кому нужна эта обычная скучная соль? Превращаем мелкие белые крупинки в потрясающие пирамидальные кристаллы в домашних условиях.

Читать далее
Всего голосов 232: ↑229 и ↓3 +226
Комментарии 72

Как и чем живёт современный Токио

Время на прочтение 16 мин
Количество просмотров 30K
В предыдущем материале я рассмотрел причины, привёдшие к образованию Токайдo, а также основы японского городского планирования. Сегодня расскажу о том, как и чем живёт современный Токио, ядро этого громадного мегалополиса: жилищный вопрос, постепенный отход от эгалитаризма в эпоху post bubble economy, несколько социальных феноменов.

Читать дальше →
Всего голосов 120: ↑118 и ↓2 +116
Комментарии 20

Как я изучал структуры данных и алгоритмы для собеседования в FAANG

Время на прочтение 12 мин
Количество просмотров 60K
Продолжая тему устройства в FAANG, которую уже мы поднимали в нашем блоге, и специально к старту нового потока нашего курса по алгоритмам сегодня делюсь описанием пути Эско Обонга, старшего инженера-программиста Uber.

Эта история началась в 2015 году, когда стартап, к которому я присоединился как «сотрудник-основатель», закрылся через шесть месяцев после первого раунда инвестиций, и я искал новую работу. Первое моё собеседование было с  Codecademy, где на этапе телефонного разговора меня заверили: «Не волнуйтесь, мы не задаём сумасшедших вопросов об алгоритмах или что-то в этом роде». И я им поверил…


Приятного чтения!
Всего голосов 61: ↑55 и ↓6 +49
Комментарии 71

Проектирование и разработка шаблонного движка на C# и ANTLR

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

Предыстория


Уже много лет мы помогаем нашим клиентам отправлять потребителям хорошие, информативные и человеческие письма. В них вместо сухого “Добрый день” мы пишем “Здравствуйте, Никита!”, а вместо “Ваш баланс пополнился” сообщаем “вы получили 25 баллов”. Но маркетологи становятся все изобретательнее, и современное письмо от интернет-магазина должно выглядеть так:


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


И мы хотим уметь генерировать такие письма автоматически.

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

Автоматизация нагрузочного тестирования: связка Jmeter + TeamCity + Grafana

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


Изображение: Flickr

В нашем блоге на Хабре мы продолжаем рассказывать о построении DevOps-культуры в компании — например, в одном из последних топиков мы описывали то, какие задачи решаем с помощью системы SaltStack. Сегодня речь пойдет о другой интересной теме — автоматизации нагрузочного тестирования с помощью связки нескольких готовых инструментов.
Всего голосов 25: ↑25 и ↓0 +25
Комментарии 5

4 вида утечек памяти в JavaScript и как с ними бороться

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

В этой статье мы рассмотрим распространённые виды утечек памяти в клиентском JavaScript. Также мы узнаем, как их обнаружить с помощью Chrome Development Tools.


timeline в Chrome Dev Tools

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

Короткая шпаргалка по блокировкам при чтении и изменении данных в зависимости от уровня изоляции транзакции в MSSQL

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

  • если в одной транзакции поменять данные — селект этих данных (в другой транзакции или без транзакции) не будут ждать окончания первой транзакции и вернут записанные данные незакомиченных транзакций
  • если в одной транзакции считать данные — апдейты этих данных в другой транзакции не будут ждать окончания первой транзакции
  • шаред локи не используются. Что аналогично установке NOLOCK хинта во все селекты в Read Commited
  • эксклюзивные локировки устанавливаются в процессе выполнения стейтмента и снимаются по окончанию транзакции


Read Committed + read_committed_snapshot off

(alter database xxx set read_committed_snapshot off)

  • если в одной транзакции поменять данные — селект этих данных (в другой транзакции или без транзакции) будут ждать окончания первой транзакции. Селект с NOLOCK хинтом вернёт изменённые, но не закомиченные данные.
  • если в одной транзакции считать данные — апдейты этих данных в другой транзакции не будут ждать окончания первой транзакции
  • шаред локировки устанавливаются в процессе работы стейтмента и снимаются по окончанию стейтмента
  • эксклюзивные локировки устанавливаются в процессе выполнения стейтмента и снимаются по окончанию транзакции


Дальше
Всего голосов 19: ↑19 и ↓0 +19
Комментарии 26

Конкурс по программированию на JS: Классификатор слов

Время на прочтение 5 мин
Количество просмотров 73K
Компания Hola объявляет начало весеннего конкурса по программированию! Призовой фонд увеличен:

  1. Первое место: 3000 USD.
  2. Второе место: 2000 USD.
  3. Третье место: 1000 USD.
  4. Возможно, мы решим отметить чьи-то чрезвычайно оригинальные решения двумя специальными призами в 400 USD.
  5. Если Вы отправите кому-то ссылку на этот конкурс, поставив наш адрес в CC, и этот человек займёт призовое место, Вы получите половину суммы приза (разумеется, не в ущерб награде победителя). За одного победителя такую награду может получить только один человек — тот, кто отправил ссылку первым.

Мы ищем талантливых программистов, поэтому авторы интересных решений будут приглашены на собеседования.

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


Правила


На этот раз мы решили попробовать что-то новенькое: для разнообразия, этот конкурс — не на производительность кода.

Условия конкурса на английском языке размещены на GitHub. Ниже — перевод на русский язык.

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

Введение в machine learning: с чего начать изучение и как применять

Время на прочтение 1 мин
Количество просмотров 30K
image
Машинное обучение — это математическая дисциплина, изучающая алгоритмы способные выделять знания из данных. Несмотря на то, что эта дисциплина в основном теоретическая, в жизни большинства людей она с каждым годом играет все большую и большую роль. Так, сложно сейчас встретить человека, который бы ничего не слышал о торговых роботах, Яндексе, Google Street View, Siri.

В докладе коллеги Алексадра Сенова из проекта Synqera для очередного нашего технического i-Free meet-up проведен небольшой экскурс в машинное обучение. Из него мы узнаем чуть больше про области применения, рассмотрим основные задачи, возникающие в рамках машинного обучения, а так же алгоритмы их решения. Уделим внимание проблемам, возникающим при их применении, приведем пару примеров и рекоммендаций по дальнейшему изучению.

Подробности
Всего голосов 15: ↑11 и ↓4 +7
Комментарии 0

Про Бурали-Форти, Пуанкаре и то самое определение единицы

Время на прочтение 11 мин
Количество просмотров 80K
Если вы, уважаемый мой читатель, имеете обыкновение проводить много времени в интернете, вы наверняка уже видели эту картинку с цитатой:

image

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

В нижеследующем тексте я раскрою перед вами тайну этого загадочного сочетания символов. Пожалуйте под кат, однако помните поучительную историю о любопытной Варваре, которой на базаре рассказали про парадокс Банаха-Тарского, отчего она сошла с ума, разрезала себе нос на конечное количество частей и склеила из них рогатую сферу Александера.
N.B. Я предупреждал.
Всего голосов 145: ↑141 и ↓4 +137
Комментарии 146

Архитектура Intel RealSense SDK

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

Пакет Intel RealSense SDK по своей архитектуре отличается от своего предшественника — пакета Intel Perceptual Computing SDK. Если вы, будучи разработчиком, использовали Intel Perceptual Computing SDK для разработки приложений, вы быстро оцените улучшенную модель программирования в новом SDK, предоставляющую доступ к поддерживаемым режимам работы через несколько популярных платформ разработки приложений. В этой статье мы описываем основные изменения в Intel RealSense SDK.
Читать дальше →
Всего голосов 10: ↑9 и ↓1 +8
Комментарии 0

Смотря на код с закрытыми глазами

Время на прочтение 6 мин
Количество просмотров 123K
От переводчика

Эта статья — перевод блогозаписи Флориана Бейджерса, слепого программиста из Нидерландов.
Перевод любительский, поэтому прошу указывать на ошибки и критиковать.
Я не нашёл корректного перевода слова accessibility, поэтому перевёл его как «доступность». Если есть вариант получше — предложите, пожалуйста.
Антон Туманов предложил «адаптированность», за что ему большое спасибо.
Как заметил в комментарии pepelsbey, «доступность» является корректным переводом, вернул её обратно.
Почему я сделал перевод? Я наткнулся на опрос на Quora.com «Как программируют слабовидящие программисты?». Ответы людей меня впечатлили, а блогозапись Флориана показалась наилучшим вариантом для введения в этот важный вопрос.

Я — программист. А ещё я слеп. Слеп, как крот, как говорится. Таков я от рождения.

Когда я говорю об этом своим товарищам, то те из них, у кого никогда не было проблем со зрением, обычно задают один из трёх вопросов:

  • Как же ты тогда можешь читать то, что я пишу?
  • Ого. А как ты тогда можешь кодить?
  • Или — самый популярный вопрос — А ты видишь сны?

Мне задают эти вопросы снова и снова. Поэтому в этой блогозаписи я хочу на них ответить. Я попытаюсь нарисовать картинку для тех из вас, кто интересуется доступностью и тем, как слепые люди пользуются компьютером, кодят и выполняют другие работы в 21 веке.
Читать дальше
Всего голосов 227: ↑224 и ↓3 +221
Комментарии 174

Современные операционные системы. 4-е изд

Время на прочтение 3 мин
Количество просмотров 59K
Привет Хаброжители!
У нас вышло 4-е измененное издание книги «Современные операционные системы».

image

Эндрю Таненбаум представляет новое издание своего всемирного бестселлера, необходимое для понимания функционирования современных операционных систем. Оно существенно отличается от предыдущего и включает в себя сведения о последних достижениях в области информационных технологий. Например, глава о Windows Vista теперь заменена подробным рассмотрением Windows 8.1 как самой актуальной версии на момент написания книги. Появился объемный раздел, посвященный операционной системе Android. Был обновлен материал, касающийся Unix и Linux, а также RAID-систем. Гораздо больше внимания уделено мультиядерным и многоядерным системам, важность которых в последние несколько лет постоянно возрастает. Появилась совершенно новая глава о виртуализации и облачных вычислениях. Добавился большой объем нового материала об использовании ошибок кода, о вредоносных программах и соответствующих мерах защиты. В книге в ясной и увлекательной форме приводится множество важных подробностей, которых нет ни в одном другом издании.
Читать дальше →
Всего голосов 30: ↑29 и ↓1 +28
Комментарии 12

История Вселенной за один день

Время на прочтение 1 мин
Количество просмотров 17K
Здравствуйте.
Хочу предложить Вашему вниманию великолепный документальный сериал «Космос: Пространство и время» от канала FOX и National Geographic, являющийся продолжением научно-популярной передачи «Космос: Персональное путешествие с Карлом Саганом». Год выпуска 2014, фильм сделан на очень высоком уровне и самое главное — никакого креационизма, мистики и прочей чепухи.

image

Ведущий — американский астрофизик, доктор философии по физике, писатель и популяризатор науки Нил Деграсс Тайсон (Плутон негодует), очень интересно и доступно расскажет о том, что происходило начиная с первой секунды существования нашей Вселенной.

Читать дальше →
Всего голосов 23: ↑15 и ↓8 +7
Комментарии 10

От чего защищает strong name в .net cборках?

Время на прочтение 4 мин
Количество просмотров 16K
Основная цель strong name или подписи сборки это ее уникальность в GAC(Global assembly cache). На основании сборки во время подписи вычисляется криптографический открытый ключ, закрытый хранится в секрете у производителя сборки, хеш-функция от которого и составляет public token, что, по сути, есть strong name для сборки. Public token сохраняется в метаданных сборки и в паре с именем сборки, версией, и культурой, и служит для уникальной ее идентификации.

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

Но многие заблуждаются думая, что сборка со строгим именем защищена от модификации. Справедливости ради, стоит заметить, что если производитель сборки опубликовал public token или открытый ключ, например на своем сайте, то всегда можно проверить соответствует ли этот ключ или токен тому ключу, который зашит в используемые сборки, но это скорее придется проверить вручную. Важно другое, что строгое имя не защитит сборку от модификации, как многие думают, и соответственно механизм в CLR не отработает, как положено и загрузит модифицированную сборку.
Читать дальше →
Всего голосов 42: ↑26 и ↓16 +10
Комментарии 28

Информация

В рейтинге
4 326-й
Зарегистрирован
Активность