В ряде статей на Хабре упоминалось разделение серверов на «pets» и «cattle». Эта терминология пошла с одной небезинтересной статьи за авторством Noah Slater — open source активиста и соавтора CouchDB. Я не смог скрафтить хороший перевод английского «cattle», «животные, выращиваемые в промышленном животноводстве», поэтому под катом вас ждет перевод с Крупным Рогатым Скотом. Очень крупным.
Ранее мы рассматривали различные нюансы собеседования ИТ-специалистов и управленческие кейсы, связанные с работой технологических компаний. Сегодня мы поговорим о том, как правильно критиковать своих сотрудников.
На самом деле так выглядел бы Ассемблер, если бы он был оружием, но с C тоже надо быть предельно аккуратным
От переводчика:
Данная публикация является переводом статьи-ответа на текст «How to C in 2016». Перевод последнего был опубликован мной в пятницу и вызвал, местами, неоднозначную реакцию сообщества. Наводку на данный «ответ», для поддержания обсуждения вопроса уже в рамках Хабра, дал пользователь CodeRush, за что ему отдельное спасибо.
Ранее в сети была опубликована статья «Программирование на С в 2016 году» с множеством полезных советов, среди которых, увы, были и не очень удачные идеи. Именно поэтому я решил прокомментировать соответствующие моменты. Пока я готовил новый материал, кто-то заметил, что за работу на C должны браться только ответственные программисты, в то время как безответственным хватит и других языков, в рамках которых имеется больше возможностей для совершенствования имеющихся навыков. Давайте разбираться в секретах специалистов своего дела.
В нашем блоге мы уже затрагивали тему предсказания цен акций с помощью алгоритма адаптивной фильтрации. Финансист из Нью-Йорка Ватсал Шах (Vatsal Shah) в своей работе рассмотрел возможность использования для этих целей алгоритмов машинного обучения. Мы представляем вашему вниманию главные мысли этого документа.
Одной из существенных проблем для систем виртуальной реальности является определение положение человека в ней. Если с углами и поворотами спокойно справляются современные гироскопы и акселлерометры, то с положением в пространстве все значительно сложнее.
Похожие проблемы испытывают и коптеры внутри помещений. Они могут висеть без поворота. Даже высоту над полом могут держать за счет высотомеров. Но по горизонтали плывут, потому что своих координат коптеры не знают и не могут самостоятельно скорректировать свое положение в пространстве. Инерциальные системы не позволяют этого сделать.
Но есть решение — использование высокоточной системы навигации внутри помещений.
Чуть больше деталей по самой системе: Indoor «GPS» с точностью +-2см.
Демо:
Демо: Отслеживание положения шлема виртуальной реальности внутри помещения с частотой до 16Гц и точностью +-2см:
В первой части статьи мы рассказали, зачем нужна DDRRE, а также как и при помощи каких инструментов происходит сбор данных. Вторая часть статьи будет посвящена использованию полученного на первом этапе потока данных.
Напомним общую схему системы:
Блок RAW Data Collection описан в первой статье и представляет собой набор из standalone-адаптеров.
В основе следующих двух лежит параллельная потоковая обработка данных. В качестве фреймворка используется Spark Streaming. Почему именно он? Было решено, что стоит использовать единый дистрибутив Hadoop – Cloudera, который из коробки включает в себя Spark, HBase и Kafka. К тому же в компании на тот момент уже имелась экспертиза по Spark.
Развлекитесь: три одинаковых цилиндра, длиной больше диаметра, взаимно перпендикулярно пересекаются своими осями в одной точке.
То же другими словами: оси координат сделали толстыми-толстыми, круглыми:
?: не пользуясь софтом и справочниками — нарисовать от руки или кратко описать словами форму области пересечения (скрыта шаром на рис. выше).
Очевидно, что никаких дополнительных знаний или тренируемых навыков для ответа не требуется — если человек понимает слова «цилиндр» и «перпендикуляр» — этого достаточно.
От автора: Наброски для этой статьи появились еще в начале 2015 года, правда, до публикации материалов дело так и не дошло. Наконец, решив, что в ящике моего письменного стола от вышеупомянутого «черновика» не будет никакой пользы, представляю его вашему вниманию в исходном виде. Единственное, что изменилось в тексте – год, с 2015 на 2016.
И я всегда рад услышать комментарии по поводу необходимых исправлений, уточнений или даже ваши жалобы.
Итак, статья ...
Первое правило программирования на С – не используйте его, если можно обойтись другими инструментами.
Когда найти альтернативный метод не удается, самое время вспомнить о современных заповедях программиста.