Как стать автором
Обновить
-2
0
Куакерх @QeqReh

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

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

Я решил 500 задач на LeetCode — и они действительно меня чему-то научили

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

Много кто знает, что такое Leetcode. Это своего рода решебник — задачи, которые дают на технических собеседованиях в крупных компаниях (в том числе и из FAANG) и их решения.

Такие задания, заточенные на знание структур данных и алгоритмов, все чаще встречаются и на собеседованиях в небольших компаниях. Многим кандидатам это не нравится — они утверждают, что навыки «литкодинга» ничего не говорят о том, как человек справится с реальной работой. Согласен. Если вы не можете слёту решать задачи c LeetCode, это не значит, что вы плохой разработчик. Возможно, вам в реальной работе вообще никогда не понадобится, скажем, инвертировать бинарное дерево. Однако глупо отрицать, что на LeetCode можно изучить массу подходов и инструментов, которые окажутся полезными. В этой статье я расскажу о том, что вынес для себя из работы с платформой.

Уроки Литкода
Всего голосов 24: ↑16 и ↓8+15
Комментарии47

Хватит совать в детей интерфероны

Время на прочтение9 мин
Количество просмотров119K
Интерфероны? Да в задницу их!


Это, как многие думают, концентрат иммунитета. Коротко — нет.

Что происходит:

  1. Ребёнка с симптомами ОРВИ приводят к педиатру.
  2. Педиатр прописывает витамин С, разбавленный сахар и интерферон в форме ректального суппозитория. Если витамин С и дорогой сахар в целом безопасны, то вот с интерфероном это далеко не так.
  3. Уровень интерферона в крови — это сложнейшая система, дающая сигнал к запуску процесса иммунного ответа, связующее звено врождённого и приобретённого иммунитета, но добавление интерферона в организм не означает, что иммунитет будет «сильнее». Упрощая, интерфероны тормозят работу заражённых клеток и дают другим клеткам вокруг поражённой вирусом сигнал, что произошло вторжение, останавливают деление вируса внутри клетки и стимулируют работу Т- и В-лимфоцитов. Так же они способны влиять на деление клеток, что важно при онкологии, например.

Изначально этот класс белков случайно открыли в 1957 году вирусологи Алик Айзекс и Жан Линдеман. У них возникла проблема с мышами, которые не заболевали при введении вируса. Как выяснилось позже, причина была в том, что эти мыши уже болели другой вирусной инфекцией, что приводило к выбросу белков ранее неизвестного класса — интерферонов. Поначалу казалось, что наконец найдено универсальное решение против вирусных болезней, но, как обычно, дальнейшие исследования выявили множество ограничений. Например, при введении серьёзных дозировок интерферона альфа можно получить жёсткую депрессию, биполярное расстройство и другие ментальные нарушения вплоть до бреда и галлюцинаций.

Поэтому сегодня я попробую объяснить, почему этот класс препаратов вовсе не добрые капельки от гриппа, а серьёзное лечение с кучей побочных эффектов. Ну и бесполезность введения его в нос и per rectum тоже затронем.
Читать дальше →
Всего голосов 161: ↑153 и ↓8+180
Комментарии231

Как дедушка TPS вырастил внуков Lean, Kanban, Scrum и Agile?

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

И причем здесь алхимия?

Есть всего два пути как увеличить прибыль. Увеличить выручку или снизить расходы. Оптимизация предлагает делать это одновременно.

Для начала предлагаю немного истории и терминологии.

"TPS" - ("Toyota Production System" - зародившаяся в середине 20 века ) - система управления производственным предприятием на основе оптимизации процессов, созданная на предприятиях "Toyota" в Японии целым поколением талантливых управленцев. "TPS" в короткие сроки позволила японскому автопроизводителю не только догнать, но и перегнать лидера рынка - американский автопром, что в свою очередь побудило американцев учиться у японцев, благо японцы не были против и с радостью делились своими секретами, так как обучение являлось одним из принципов "TPS".После ошеломительного успеха TPS распространилась по всему миру, адаптировалась к разным культурам и распространялась на разный бизнес, но более всего расчленялась на отдельные инструменты и внедрялась частями из за чего, к огромному сожалению, и теряла главный синергетический эффект. Дело в том, что каждый отдельный элемент этой системы сам по себе несет большую ценность, однако соединенные вместе, эти элементы образуют структуру, превосходящую в своей совокупности простую сумму эффектов от каждого отдельного элемента.

"Lean" (80ые года 20 века)- система бережливого производства, лучше всего представить ее как адаптацию TPS к западной культуре и именно на ней я и попытаюсь объяснить TPS.

"Kanban" - один из аутентичных инструментов TPS - принцип "точно в срок" - подход, исходящий от производства, который направлен на сокращение запасов и времени выполнения заказа за счет синхронизации производства с запросами клиентов и возможностями поставщиков. Кстати, именно в Kanban первым и отразился принцип обучения. "Тoyota" не хотела, чтобы поставщики диктовали ей условия поставок и привозили, например, больше деталей "про запас", экономя на логистике, однако здесь создавался конфликт интересов, и "Toyota" приняла решение учить и внедрять свои принципы работы в бизнес поставщиков, что оптимизировало процессы внутри партнеров, что в свою очередь положительно влияло на саму "Toyota" - принцип "win-win".

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

Go: конкурентность и привязки к потокам в планировщике

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

Переключение горутины с одного потока ОС на другой довольно затратно и может значительно замедлить работу приложения, если это происходит слишком часто. Однако со временем эту проблему решил планировщик Go путем обеспечения привязки горутин к потоку (scheduler affinity) в условиях конкурентной работы (concurrently). А чтобы нам лучше понять всю прелесть этой доработки, давайте вернемся назад в прошлое и посмотрим, как было до.

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

Пишем сервис на GO. Runtime контроллер и Graceful Shutdown

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


Напишем вместе HTTP-сервис на golang с нуля? Я уверен, что это довольно несложно. Для тех, кто каждую неделю этим занимается, моя статья не будет особенно интересна, но я все равно рекомендую взглянуть и оценить, возможно, ваши комментарии спасут кому-то жизнь. А может кое-какие из моих рассуждений спасут вашу.


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


Это первая часть. Первые шаги в нашем нелегком пути. И в этой статье мы попробуем достичь следующих целей:


  • Выработаем понимание структуры и жизненного цикла приложения.
  • Формализуем наше представление жизненного цикла на языке go.
Читать дальше →
Всего голосов 15: ↑13 и ↓2+13
Комментарии19

Информация

В рейтинге
Не участвует
Откуда
Чехия
Зарегистрирован
Активность