Pull to refresh
1
0
Кирилл @elephanten

Прикладной программист c++

Send message

Спецификатор constexpr в C++11 и в C++14

Reading time16 min
Views212K
Одна из новых возможностей C++11 — спецификатор constexpr. С помощью него можно создавать переменные, функции и даже объекты, которые будут рассчитаны на этапе компиляции. Это удобно, ведь раньше для таких целей приходилось использовать шаблоны. Но тут все не так просто. У тех, кто не так хорошо знаком с constexpr, может сложиться впечатление, что теперь не будет никаких проблем с расчетами на этапе компиляции. Но на constexpr-выражения наложены серьезные ограничения.

В первой части будет рассказано про constexpr, о том, какие будут изменения в стандарте C++14, а во второй части будет пример использования constexpr: библиотека, которая считает результат математического выражения в строке.
С помощью нее можно будет написать следующий код:
constexpr auto x = "(4^2-9)/8+2/3"_solve;
std::cout << "Answer is " << x;

И ответ в виде дроби будет получен на этапе компиляции:
Answer is 37/24
Сразу предупреждаю, код этой библиотеки сложно понять.
Кому эта тема интересна, добро пожаловать под кат!
Читать дальше →
Total votes 53: ↑52 and ↓1+51
Comments45

Квалификация инструментов для разработки встраиваемого ПО

Reading time4 min
Views3.2K
Привет, Хабр! В этой статье я хочу максимально просто и доступно рассказать про то, как доказывается, что ваши средства разработки и верификации подходят для создания систем повышенной надежности. Это очень важный и далеко не самый простой вопрос, и моя цель — ответить на него как можно более понятным языком. В самой статье я обобщил указания из отраслевых стандартов, таких как КТ-178 или Р-331 (встраиваемое ПО в авиации), ГОСТ Р ИСО 26262-8 (встраиваемое ПО в автомобилестроении). Так что добро пожаловать под кат.
Читать дальше →
Total votes 3: ↑2 and ↓1+3
Comments0

Переезд в Иннополис

Reading time18 min
Views195K


В 2017 году мы с семьёй переехали в Иннополис.

За 3 года жизни эйфория прошла и сформировалось какое-то устойчивое мнение об этом городе.

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

Меня никто не просил писать эту статью и тем более не платил за неё. В общем, это не заказная «приезжайте к нам, у нас тут классно». Пишу всё так, как вижу своими глазами.
Читать дальше →
Total votes 171: ↑165 and ↓6+200
Comments480

Инструменты для удалёнки: как неправильное использование приложений чуть не стоило нам $50 000

Reading time4 min
Views13K
Мы работаем удалённо с 2013 года и знаем, в каких местах новички-удалёнщики бьются головой. В статье 5 глупых ошибок, которые мы совершили, пока искали идеальный набор приложений для онлайн-офиса.

Бонус в конце: ссылка на каталог приложений для удалённой работы.

image
Читать дальше →
Total votes 16: ↑12 and ↓4+13
Comments22

МЭМС акселерометры, магнитометры и углы ориентации

Reading time8 min
Views34K


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

Чтобы понять, на какие точности углов мы можем рассчитывать, нужно приложить некоторое количество усилий.

TL;DR: Описан небольшой скрипт для Octave/MATLAB, позволяющий оценить ошибки расчёта углов ориентации по измерениям МЭМС акселерометров и магнитометров. На входе скрипта — параметры датчиков из даташитов (и/или погрешности калибровки). Статья может быть полезна тем, кто начинает использовать инерциальные датчики в своих устройствах. Небольшой ликбез по датчикам прилагается. Ссылка на гитхаб тоже.
Вот как мы решили эту задачу:
Total votes 26: ↑26 and ↓0+26
Comments23

Программист, стая и Джон Стейнбек

Reading time6 min
Views14K
Вообще, если взглянуть беспристрастно, я – очень плохой работник. И как программист, и как менеджер, и как хоть кто. Но с работы меня не выгоняют. Даже повышают периодически, предоставляют ресурсы, возможности и телевизор.

Причины две (только моему начальнику не говорите): я умею выстраивать отношения (=плести интриги) и готовить «корейский завтрак» — быстро вникать в контекст любой задачи и находить решение. Собственно, за это меня и держат.

Но так было не всегда. Ровно наоборот – с первых трех работ я уволился сам, и именно потому, что не умел плести интриги и быстро вникать в контекст задач, как технических, так и менеджерских. А потом что-то изменилось.

Ну, изменилось и изменилось – я просто наслаждался результатом, пока не прочитал книжку про работу мозга. Тут всё встало на свои места. Дело оказалось в дефолт-системе мозга.
Читать дальше →
Total votes 30: ↑23 and ↓7+24
Comments27

Четвертушка Ethernet-а: старая скорость, новые возможности

Reading time6 min
Views89K

5 февраля этого года был утверждён новый стандарт на 10-мегабитный Ethernet. Да, вы верно прочитали: десять мегабит в секунду.

Для чего в 21-м веке нужна такая «маленькая» скорость? Для замены того зоопарка, который скрывается под ёмким названием «полевая шина» — Profibus, Modbus, CC-Link, CAN, FlexRay, HART и т.д. Их слишком много, они несовместимы между собой и относительно сложны в настройке. А хочется просто воткнуть кабель в коммутатор, и всё. Как с обычным Ethernet.
И вскоре это станет возможным!
Total votes 156: ↑156 and ↓0+156
Comments157

Как взлететь на батарейках или практика эксплуатации электропарамотора SkyMax. Часть 2

Reading time4 min
Views19K
Продолжение статьи «Как взлететь на батарейках или немного теории электропарамотора. Часть 1».

4. Описание электропарамотора SkyMax.

В предыдущей статье уже фигурировала фотография внутреннего устройства используемой батареи в проекте. Она же — в собранном виде:

image

Кратко ее характеристики еще раз:

  • конфигурация 15S16P LG HG2;
  • номинальное напряжение 55 В;
  • ёмкость: 46 А-ч;
  • диапазон рабочих напряжений: 45 — 63 В;
  • продолжительный ток разряда: 80 А;
  • кратковременный ток разряда: 320 А;
  • запасаемая энергия: 2.6 кВт-ч;
  • сечение силовых проводов 4х6 кв.мм;
  • вес 12 кг.
Total votes 65: ↑64 and ↓1+63
Comments95

Как взлететь на батарейках или немного теории электропарамотора. Часть 1

Reading time8 min
Views19K

1. Вступление


Здравствуйте. Меня зовут Илья. Я из Санкт-Петербурга. Мне 31 год. С давних пор у меня основные увлечения — аккумуляторы, электротранспорт и авиация.

В 2010 году я узнал про самый демократичный способ обрести личные крылья:

image
Читать дальше →
Total votes 61: ↑59 and ↓2+57
Comments36

0, 0, 1, 0, 2, 0, 2, 2, 1, 6, 0, 5, 0, 2, 6, 5, 4, 0, 5, 3, 0, 3, 2, 9, 0, 4, 9, 3, 6, 14, 0, 6, 3, 5, 15, 0, 5, 3, 5…

Reading time2 min
Views16K
Есть два мужика с именами «Van Eck». Первый, в 1985 году показал всему миру как за 15 долларов перехватывать данные с монитора (Van Eck phreaking), второй, в 2010 придумал хитрую последовательность (Van Eck's sequence). Круче простоты задания этой последовательности могут быть только её свойства и загадки.

Итак, алгоритм генерации членов последовательности. Берем «стартовое число», например «0», выписываем. Следующий член — это то, сколько шагов назад встречалось это число в предыдущей под-последовательности. Если ни разу, то пишем ноль. Следующее — это сколько шагов назад встречался ноль в предыдущей под-последовательности, то есть один шаг назад. Записываем единицу. Единица впервые — пишем ноль. Опа, ноль встречался два шага назад. Пишем два, и так далее…

Для точки отчета «0» первые 97 членов последовательности:
0, 0, 1, 0, 2, 0, 2, 2, 1, 6, 0, 5, 0, 2, 6, 5, 4, 0, 5, 3, 0, 3, 2, 9, 0, 4, 9, 3, 6, 14, 0, 6, 3, 5, 15, 0, 5, 3, 5, 2, 17, 0, 6, 11, 0, 3, 8, 0, 3, 3, 1, 42, 0, 5, 15, 20, 0, 4, 32, 0, 3, 11, 18, 0, 4, 7, 0, 3, 7, 3, 2, 31, 0, 6, 31, 3, 6, 3, 2, 8, 33, 0, 9, 56, 0, 3, 8, 7, 19, 0, 5, 37, 0, 3, 8, 8, 1

График:

image

Total votes 61: ↑34 and ↓27+7
Comments61

Как работает бизнес-авиация в России (центры FBO)

Reading time8 min
Views37K


Если объехать аэропорт Шереметьево, то можно увидеть небольшой терминал А, который время от времени берёт под охрану ФСО, если в этот день бизнес-джетом вылетает кто-то из первых лиц государства.

Если у вас есть примерно 90 миллионов рублей в год на содержание собственного самолёта (и сам самолёт тоже пригодится), то ваш вылет выглядит так: вы выходите около этого терминала А из машины, проходите досмотр за 30–40 секунд, если полёт зарубежный — паспортный контроль (он обязателен для всех), потом прямо по полю переходите к самолёту в 50 метрах от терминала, садитесь, пристёгиваетесь и летите.

От момента, когда вы вышли из машины, и до момента, когда вы встали на предстарт ВПП, проходит от 8–15 (внутренний рейс) до 15 минут (международный). Багаж можно отправить заранее.

Теперь давайте разберёмся, как это работает и кому вообще нужно. А также чем хороши бизнес-джеты.
Читать дальше →
Total votes 48: ↑45 and ↓3+42
Comments18

Ведро дёгтя в бочке мёда, или О потенциальном культурном шоке для заводящих трактор

Reading time9 min
Views9.3K
На Хабре в последнее время регулярно публикуются статьи, посвящённые поиску работы за пределами РФ, Украины и СНГ и последующему переезду в другую страну. На мой взгляд, они адекватно рассказывают о перипетиях поиска потенциального работодателя, заключения контракта, прохождения необходимых формальностей и оформления документов, о планировании и подготовки к переезду. Но о чём они обычно умалчивают или забывают упомянуть, или обходят стороной — это адаптации к новым реалиям, культурной среде, жизни в новом незнакомом обществе. «Культурный шок», о котором непременно рассказывают в том числе в государственных интеграционных программах, доступных по месту нового жительства, для многих оказывается непереносимым, и если о таких вещах потенциальный ИТ-эмигрант извещён заранее — ему будет проще адаптироваться. Или же, возможно, он поменяет своё решение на отъезд в выбранную страну и поищет более привлекательные места для переезда, или же вовсе откажется от намерения в ближайшее время сменить страну проживания.
Читать дальше →
Total votes 113: ↑34 and ↓79-45
Comments90

Собираем полную колоду

Reading time12 min
Views15K
Колодой, если верить писателям, раньше называлась «команда», которую набирал себе вор. У каждого человека в команде была своя «масть» — специализация и назначение. Вот что пишет об этом Борис Акунин в книге «Любовник смерти»:

«Пацаны рассказывали, что у настоящих деловых, кто по законам живет, шайка „колодой“ называется, и в каждой колоде свой кумплект. Кумплект — это восемь фартовых, каждый при своем положении. Главный — »король"; при нем маруха, по-деловому «дама»; потом «валет» — вроде как главный помощник; ну и прочие бойцы, от десятки до шестерки. А больше восьми человек в шайке не держат, так уж исстари заведено."

Меньше восьми людей брать смысла нет, будут пробелы в «компетенциях». Больше — нельзя, будет дублирование и потеря управляемости.



Как ни странно, тот же Джефф Сазерленд, один из авторов скрама, называл похожие цифры — от 5 до 9 человек. Хотя и не уточнял специализацию.

Ну да ладно. А мы продолжаем тему построения команд по ролям, на основе тестов Белбина.
Читать дальше →
Total votes 38: ↑35 and ↓3+32
Comments18

Кровососы. Классификация программиста

Reading time13 min
Views28K
Кто такие руководители, и зачем они нужны? Какая от них в жизни польза? Чем они вообще занимаются? А чем они должны заниматься?

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

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

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

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

Я использую специальную модель для оценки руководителей, с которой вам и предлагаю ознакомиться.
Читать дальше →
Total votes 53: ↑31 and ↓22+9
Comments29

Цифровая лирика: мегаподборка песен и клипов о программировании и программистах

Reading time5 min
Views9.2K
Широко распространено мнение, что музыкальные способности и талант к программированию взаимосвязаны. Многие профессиональные музыканты питают склонность к точным наукам. Например, Борис Гребенщиков окончил факультет прикладной математики СПбГУ, а гитарист Radiohead Джонни Гринвуд (Jonny Greenwood) с детства неровно дышал к программированию.

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

Именно о них и пойдёт речь.

Total votes 18: ↑17 and ↓1+16
Comments14

Зацените, на 70% готовый турбореактивный ховерборд

Reading time4 min
Views31K


Этот пост меня заставил написать Паша zhovner и рассказать, зачем я строю джетпак, как это выглядит изнутри и на каком этапе находится проект Jethackers.

Зачем все это нужно


В 2014 году я узнал про Ива Росси и написал статью на Хабр. Тогда мне казалось, что это под силу только воякам или крупному авиагиганту. Потом, погуглив, я нашел, что движки свободно продаются в интернете… по цене моей годовой зарплаты. Пару лет думал, как замутить бизнес/стартап/инвестиции, но так и не придумал, и решил стартовать в этом феврале с пустыми руками, «авось, проскочу».

Джетпак/ховерборд не сложнее по устройству, чем мотоцикл. 60-х годов. Я не понимаю почему его еще нельзя купить и их не собирают в каждом гараже. Есть мнения, что джетпак не нужен человечеству. Я же хочу показать, что джетпак — это офигенно и здорово, и что каждый может собрать себе такой же. А еще дать под зад крутым инженерам и авиакомпаниям, что они ленивые, жадные и неромантичные, совсем забыли о чем мечтали в детстве.

image

Total votes 76: ↑68 and ↓8+60
Comments176

В трёх статьях о наименьших квадратах: ликбез по теории вероятностей

Reading time10 min
Views22K
Полтора года назад я опубликовал статью «Математика на пальцах: методы наименьших квадратов», которая получила весьма приличный отклик, который, в том числе, заключался в том, что я предложил нарисовать сову. Ну, раз сова, значит, нужно объяснять ещё раз. Через неделю ровно на эту тему я начну читать несколько лекций студентам-геологам; пользуюсь случаем, излагаю тут (адаптированные) основные тезисы в качестве черновика. Моей основной целью не является дать готовый рецепт из книги о вкусной и здоровой пищи, но рассказать, почему он таков и что ещё находится в соответствующем разделе, ведь связи между разными разделами математики — это самое интересное!

На данный момент я предполагаю разбить текст следующим образом:


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

Насколько обоснован теорвер или верите ли вы в теорию эволюции?


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


Читать дальше →
Total votes 46: ↑45 and ↓1+44
Comments21

Как я диплом в LaTeX писал с GitHub, Docker и TravisCI

Reading time5 min
Views45K

Еще со времен обучения в университете я использовал LaTeX для оформления лабораторных и курсовых работ. Познакомился впервые с LaTeX на Coursera, на курсе "Документы и презентации в LaTeX".


В этой заметке я расскажу, как я писал диплом с помощью LaTeX и почему я использовал GitHub, Docker и TravisCI.


Но зачем?

Читать дальше →
Total votes 77: ↑76 and ↓1+75
Comments69

Game over, пацаны

Reading time11 min
Views111K
— Я те говорю, гама вообще реальная! – продолжал размахивать на ходу руками Петр. – Не заметишь, как просидишь всю ночь!

— Да что за игра такая, которая только в компьютерном клубе есть? – продолжал, в свою очередь, удивляться Стас. – На дворе 2018 год, откуда вообще компьютерный клуб взялся?

— Ну, уж точно не из тех, которые… — Павел туманно показал глазами куда-то в сторону. – Без игровых автоматов, короче. А игра действительно стоящая.

— Стоящая? – Петр округлил глаза. – Да это, блин, мега-игра! Я ничего подобного не видел еще! Тут тебе ни жанров, ни ограничений, понимаешь? Хочешь – картошку выращивай, хочешь – машины проектируй, хочешь – войну начинай, хочешь – на Марс лети! Да хоть бы и вообще ничего не делай, просто сиди на улице и смотри, что люди делают! Ты такого кайфа не видал еще!

— Ну прям заинтриговали. – улыбнулся Стас. – Далеко еще?

— Нет, сейчас, за углом вход. – ответил Петр.

— Э, пацаны, стоять!
Читать дальше →
Total votes 177: ↑149 and ↓28+121
Comments185

Почему будущее хранения данных всё ещё за магнитной плёнкой

Reading time6 min
Views73K
Жёсткие диски приближаются к пределам своего развития, а плёнка становится лишь лучше со временем.

image

Финансовые институты обязывают компании хранить всё больше данных и всё более долгий период времени. Количество данных, которое приходится хранить, каждый год вырастает на 30–40 процентов по сравнению с предыдущим годом. Вместительность жёстких дисков тоже растёт, но со вдвое меньшим темпом. К счастью, вся эта информация не требует мгновенного доступа, поэтому плёнка — отличное решение проблемы.
Читать дальше →
Total votes 73: ↑71 and ↓2+69
Comments248
1
23 ...

Information

Rating
Does not participate
Location
Санкт-Петербург и область, Россия
Registered
Activity