Pull to refresh
0
0.1
Артем Седых @sedyh

Backend / ML Developer

Send message

Вас просто стало слишком много

Level of difficultyEasy
Reading time6 min
Views134K

В последнее время тут появилось довольно много статей о сомнительных по содержанию собеседованиях, процессах отбора и т. д. (раз, два, три, четыре, пять, шесть, семь, восемь, девять, ничего себе как много, для круглого счёта можете и сами вспомнить одну. Если что, читать надо в том числе и комменты, они там даже ценнее порой самого текста). Основная претензия людей состоит в том, что на собеседованиях спрашивают вещи, которые не относятся к реальной работе, а сами процессы найма крайне затянуты.

Читать далее
Total votes 163: ↑122 and ↓41+116
Comments706

Как заказчик хотел blob вместо cache

Reading time3 min
Views4.1K

Сразу введу в курс дела, это был легаси проект и задача была доработка одного эндпоинта, который должен возвращать огромную Json-нину. По итогу работы среднее количество строк в респонсе было 800.000-2.000.000 строк и весил он в районе 30 мб.

На этом проекте я выяснил что Postman уже ломается от 1.000.000 строк, перестаёт работать форматирование и начинает хромать поиск. А в целом весь json напоминал мне один огромный клубок снега который пустили горы и он всё разрастался и разрастался, т.к. когда я пришёл на проект он был всего лишь 40.000-80.000 строк.

Json состоял из нескольких уровней и каждый уровень имел некоторое количество подуровней, похоже на эту картинку, только уровней было в районе 8 и каждый из уровней мог иметь до 80 подуровней.

Читать далее
Total votes 22: ↑4 and ↓18-13
Comments5

Почему «теорию всего» следует искать в информатике, и почему следующим Эйнштейном станет программист

Reading time7 min
Views25K

В 1962 году американский историк Томас Кун опубликовал книгу под названием "Структура научных революций", ставшую результатом его многолетнего анализа истории развития научного знания. По мнению Куна представления людей о природе развиваются не постепенно, а скачкообразно. После каждого скачка формируется новая парадигма знания, в рамках которой идут все дальнейшие исследования. Постепенно учёные натыкаются на факты и парадоксы, не вписывающиеся в текущую парадигму. Когда таких фактов становится достаточно много, их критическая масса заставляет учёных искать лучшие теории, согласующиеся со всеми необъяснимыми в рамках текущей парадигмы фактами. Когда такие теории появляются, происходит новый скачок - Кун называл такой скачок "сдвигом парадигмы". Самым ярким примером такого сдвига является смена научной картины мира на рубеже XIX-XX веков: несоответствие уравнений Максвелла ньютоновской механике привели к созданию теории относительности, а необъяснимость корпускулярно-волнового дуализма электромагнитного излучения привели к созданию квантовой механики. Теория относительности и квантовая механика сформировали научную парадигму физики XX века, в рамках которой учёные существуют и поныне.

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

Читать далее
Total votes 30: ↑23 and ↓7+30
Comments159

Делимся опытом, как показывают себя SSD в рамках RAID и какой уровень массива выгоднее

Reading time9 min
Views51K
В прошлом материале мы уже рассмотрели вопрос о том “Применим ли RAID на SSD” на примере накопителей Kingston, но сделали это только в рамках нулевого уровня. В текущей статье мы разберем варианты использования профессиональных и домашних NVMe-решений в самых популярных типах RAID-массивов и расскажем о совместимости контроллеров Broadcom с накопителями Kingston.


Читать дальше →
Total votes 13: ↑9 and ↓4+9
Comments16

Про uuid-ы, первичные ключи и базы данных

Reading time11 min
Views18K

Статья посвящена альтернативным версиям Qt-драйверов для работы с базами данных. По большому счету отличий от нативных Qt-драйверов не так много, всего пара: 1) Поддержка типа UUID; 2) Работа с сущностью "Транзакция" как с самостоятельным объектом. Но эти отличия привели к существенной модификации исходных Qt-решений и изменили мой подход к написанию рабочего кода.

Читать далее
Total votes 2: ↑1 and ↓10
Comments32

Отслеживание и визуализация положения МКС с помощью 30 строк JavaScript-кода

Reading time6 min
Views7K


Предлагаю вашему вниманию перевод этой замечательной статьи.

В этом туториале мы создадим веб-приложение, визуализирующее положение любого спутника, например, Международной Космической Станции (далее — МКС), в режиме реального времени (ну, почти).

Мы создадим приложение с нуля и примерим на себя роль настоящего ученого в области ракетостроения.

  • Мы узнаем, где найти данные для отдельного спутника, известные как двухстрочный набор элементов (two-line element set, TLE) (далее — ДНЭ)
  • Мы используем библиотеку ”satellite-js” для предсказания орбиты спутника по ДНЭ (это часть напрямую связана с ракетостроением)
  • Мы используем библиотеку ”CesiumJS” для визуализации результата, однако, вы можете использовать любую библиотеку/движок, которые умеют работать с долготой, широтой и высотой

Превью конечного результата:


Здесь мы видим движение МКС по орбите со скоростью, увеличенной в 40 раз. Для того, чтобы увидеть текущее положение МКС, нажмите на иконку часов в верхнем левом углу панели управления.
Total votes 18: ↑16 and ↓2+24
Comments0

Как не ошибиться с конкурентностью в Go

Reading time12 min
Views35K

Почему мы вообще хотим писать конкурентный код? Потому что процессоры перестали расти по герцовке и начали расти по ядрам. С каждым годом увеличивается количество ядер процессора, и мы хотим их эффективно утилизировать. Go — тот язык, который создан для этого. В документации так и написано.


Мы берём Go, начинаем писать конкурентный код. Конечно, ожидаем, что легко сможем обуздать мощь каждого ядра нашего процессора. Так ли это?


Меня зовут Артемий. Этот пост — вольная расшифровка моего доклада с GopherCon Russia. Он появился как попытка дать толчок людям, которые хотят разобраться, как писать хороший, конкурентный код.



Видео с конференции GopherCon Russia

Total votes 62: ↑58 and ↓4+54
Comments16

Моя история реализации офлайн приложения Хабра

Reading time6 min
Views4.9K

Создание своего приложения Хабра уже вошло в традицию среди хабрюзеров. Я решил не отставать и сделать своё.

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

Читать далее
Total votes 25: ↑25 and ↓0+25
Comments0

Проект, который сжег меня дотла

Reading time7 min
Views59K

Сейчас 3 часа ночи 10 августа 2013 года. Бесконечный приступ паники не дает мне сомкнуть глаз. Как сумасшедший, я раз за разом прокручиваю только что написанный код в голове. Внезапно я осознаю, что в архитектуре приложения есть серьезная проблема. Я вскрикиваю и скатываюсь с кровати, спотыкаясь о свою девушку, я бегу как сумасшедший к своему компьютеру, чтобы все исправить. 

Я знаю, что этот день будет прекрасной солнечной субботой. Я снова буду работать 12 часов подряд. А стресс и горящий дедлайн снова не дадут мне уснуть. Как я докатился до всего этого?

Читать далее
Total votes 73: ↑64 and ↓9+75
Comments76

Китайская компания Geely собирается выпустить системы ADAS, которые позволят убирать руки с руля

Reading time8 min
Views2.4K
image

Geely представила электромобиль премиум-класса – Zero Concept от Lynk & Co.

В 2021 году китайская компания Geely Auto Group выпустит фулл-стек решение для систем ADAS на основе 360-градусных камер, которые будут использоваться в электромобилях 2+ уровня. Именно такое заявление в четверг сделала компания Mobileye (подразделение Intel).

Mobileye заявила, что Geely будет внедрять систему SuperVision «в больших объемах».

SuperVision состоит из двух систем на чипе Mobileye EyeQ5 и 11 камер – семи камер дальнего действия и четырех ближнего. Данная система представляет собой готовое решение, основанное только на камерах, радаров и лидаров в ней нет. Амнон Шашуа, президент и главный исполнительный директор Mobileye, охарактеризовал SuperVision как «систему ADAS, сделанную так, как надо». Mobileye также используют резервные вычислительные модули в своих системах, основанных на камерах – компания стремится сделать системы ADAS более доступными для потребителей.
Total votes 4: ↑2 and ↓2+4
Comments4

В лесу родилась елочка: почему вечнозеленая хвоя вечно зеленая?

Reading time14 min
Views6.7K


Сложно себе представить новогодний интерьер или даже экстерьер без главного атрибута зимнего праздника — новогодней елки. Будучи вечнозелеными, хвойные деревья стали символом жизни, что не удивительно, ведь подавляющее большинство других растений в зимний период либо погибают, либо сбрасывают листву. Ученым давно известна разница между лиственными и хвойными деревьями, но некоторые моменты доселе оставались загадкой. Ученые из университета Умео (Швеция) провели исследование, в котором установили причину «вечнозелености» хвойных деревьев. Какие процессы поддерживают внешний вид хвои вне зависимости от сезона, насколько они сложны, и как это повлияло на людей? Ответы на эти вопросы мы найдем в докладе ученых. Поехали.

Читать дальше →
Total votes 16: ↑14 and ↓2+20
Comments1

Заметки Датасатаниста: реляционные vs связанные данные

Reading time5 min
Views8.3K


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

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

Мы обсудим, что такое реляционная модель и связанные с ней SQL и реляционная алгебра. Потом перейдем к примерам связанных данных из Викидата, а далее RDF, SPARQL и чутка поговорим про Datalog и логическое представление данных. В конце выводы — когда применять реляционную модель, а когда связно-логическую.

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

Если у вас есть сомнения, чем одно отличается от второго и зачем вообще нужны связанные данные (LinkedData), то добро пожаловать под кат.
Читать дальше →
Total votes 28: ↑26 and ↓2+41
Comments6

D&D-классы для разработчиков

Reading time10 min
Views24K
Вам кажется, что разработка ПО похожа на большую и плохо структурированную RPG, хотя никто не признаёт этого на собеседованиях? Тогда эта классификация вам понравится.


Читать дальше →
Total votes 53: ↑48 and ↓5+50
Comments15

Повесть о создании классической RTS в домашних условиях с нуля + разбор основных этапов разработки (AI, сеть и т.д.)

Reading time38 min
Views77K
image

В статье речь пойдет об одном очень не новом проекте, который создавался совсем в другое время и совсем в других условиях. Это моя старенькая RTS под названием Земля онимодов (Onimod land). Чтобы было сразу понятно, что она собой представляет, можно посмотреть коротенькое видео:
Читать дальше →
Total votes 117: ↑116 and ↓1+115
Comments119

Пишем на Java для Nintendo DS

Reading time6 min
Views6.5K
image

Введение


Все началось с того, что я случайно нашел список homebrew программ (программы, разработанные усилиями пользователей для устройств, не предназначенных для запуска пользовательского ПО) для Nintendo DS и в нем увидел одну очень интересную строчку, а именно: «Pstros NDS — MIDP implementation run on the CLDC java machine compiled for NDS».

Будучи большим поклонником Java и Nintendo DS я решил разобраться, что это за зверь такой, и по возможности попробовать написать под эту JVM свое приложение. Тех, кому это интересно прошу под кат.
Total votes 30: ↑29 and ↓1+28
Comments9

Как генерируются подземелья в Enter The Gungeon

Reading time7 min
Views23K
В последнее время я много играл в Enter The Gungeon. Это потрясающая, ужасно сложная игра в жанре bullet hell, сильно напомнившая мне Binding of Isaac. Но чем больше я играл в неё, тем больше осознавал малозаметную гениальность дизайна подземелий.


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

Поэтому я, естественно, запустил декомпилятор, чтобы Gungeon раскрыла мне все свои секреты. В этой статье я поделюсь с вами тем, что мне удалось найти.
Читать дальше →
Total votes 31: ↑31 and ↓0+31
Comments3

Как мы UX-дизайнера ловили на живца

Reading time2 min
Views12K
В поисках замены специалиста по UX для команды веб-дизайна нашего креативного отдела мы обнаружили, что найти хорошего кандидата очень непросто. На рынке труда у UX-дизайнеров сейчас примерно такая же ситуация, как 10 лет назад с веб-дизайнерами: профи прекрасно трудоустроены и не рассматривают предложения о работе, зато на вакансии откликается множество тех, кто хочет получать высокую зарплату в обмен на минимальные опыт и знания.

image

«Наевшись» сотней-другой сомнительных откликов и десятком неудачных собеседований, провалив попытки переманить толковых специалистов, запросивших слишком много даже для графа де Ла Фер, мы поняли, что пора кардинально менять стратегию. К поиску подключили креативный отдел. Сформулировали проблему, «поштормили» и придумали решение: если нам не удается собрать базу толковых UX-дизайнеров pull-методами, применим push – пусть они сами нам напишут, решили мы. Осталось придумать детали.

image

Читать дальше →
Total votes 21: ↑19 and ↓2+17
Comments14

Погружение в свёрточные нейронные сети. Часть 5 / 1 — 9

Reading time19 min
Views32K

Полный курс на русском языке можно найти по этой ссылке.
Оригинальный курс на английском доступен по этой ссылке.



Выход новых лекций запланирован каждые 2-3 дня.

Читать дальше →
Total votes 28: ↑27 and ↓1+26
Comments2

Принцип Брета Виктора: «Творцам нужна мгновенная связь с тем, что они создают»

Reading time30 min
Views21K
Это одно из лучших выступлений, которое я встречал. Хоть про эту презентацию уже писали на Хабре и переводили 6 лет назад, я решил её красиво оформить и ещё раз обратить на неё внимание. Она того стоит.

image

Брет Виктор: Я просто хочу рассказать вам о том, как прожить свою жизнь.

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

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

Эта презентация разбита на три части.

Вначале, я расскажу о принципе, которым я руководствуюсь в своей работе, и постараюсь показать вам, что из этого выходит. Также, я расскажу вам о некоторых людях, которые жили подобным образом. Об их принципах, о том, во что они верили и верят. Но все это будут только примеры, которые помогут Вам задуматься о том, во что верите Вы, и о том, как Вы хотите прожить свою жизнь.
Total votes 46: ↑41 and ↓5+36
Comments31

HyperCard, потерянное звено в эволюции Веба

Reading time8 min
Views9.1K

Перед тем, как Веб успел сделать что-либо, всё делала HyperCard



Где-то около 1988 года хозяйка моей квартиры заключила со мной сделку. Она купит компьютер Macintosh, я куплю внешний жёсткий диск, и мы оставим эту систему в гостиной, чтобы пользоваться ею по очереди. По большей части компьютер использовала она, поскольку я проводил вычисления на IBM 286 и просто хотел отслеживать прогресс Apple. Однако после того, как мы настроили Mac, как-то вечером я заметил на нём одну программку в меню приложений. «HyperCard?» – подумал я. «Что это?»

Я открыл программу и прочёл инструкцию. HyperCard позволяла создавать «стопки» карт, или визуальных страниц на экране Mac. В них можно было вставлять «поля», где показывался текст, таблицы или даже изображения. Можно было ставить «кнопки», связывавшие карты из стопки друг с другом, проигрывавшие разные звуки по нажатию – особенно мне запомнился один дребезжащий звук, которые я не могу забыть по сей день. Также можно было превращать изображения в кнопки.
Total votes 24: ↑23 and ↓1+22
Comments15
1
23 ...

Information

Rating
4,227-th
Location
Москва, Москва и Московская обл., Россия
Date of birth
Registered
Activity