Как стать автором
Обновить
72
0
Vasiliy Sorokin @Vass

C++ Developer

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

Kerberos простыми словами

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

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

Данную статью я написал после того, как сделал собственную библиотеку, генерирующую сообщения протокола Kerberos, а также после того, как я протестировал «стандартный клиент» Kerberos в Windows — набор функций SSPI. Я научился тестировать произвольные конфигурации сервисов при всех возможных видах делегирования. Я нашёл способ, как выполнять пре‑аутентификацию в Windows как с применением имени пользователя и пароля, так и с помощью PKINIT. Я также сделал библиотеку, которая умещает «стандартный» код для запроса к SSPI в 3–5 строк вместо, скажем, 50-ти.

Хотя в названии статьи фигурирует «простыми словами» однако эта статья предполагает, что читатель уже имеет какое‑то представление о Kerberos.

Читать далее
Всего голосов 18: ↑18.5 и ↓-0.5+19
Комментарии19

Пора релоцироваться

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

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

Читать далее
Всего голосов 189: ↑117 и ↓72+45
Комментарии263

Как найти удаленную работу в США с прицелом на релокацию: описания виз, списки ~1000 компаний, полезные инструменты

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

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

В этой статье я собрал материалы для тех, кто задумывается о поиске сначала удаленной работы в США, а затем и о переезде. В тексте есть описания виз, списки компаний, нанимающих на remote, инструменты для подготовки к собеседованиям. Надеюсь, будет полезно!

Читать далее
Всего голосов 42: ↑28 и ↓14+14
Комментарии11

Как определить C и C++-программистов по коду, который они пишут

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

Так уж случилось, что я пишу код для разных IoT-железок, связанных с электричеством, типа зарядных станций автомобилей. Поскольку аппаратных ресурсов, как правило, вполне достаточно, то основным фокусом является не экономия каждого байта и такта процессора, а понятный и надежный код. Поэтому в проекте разрабатывают под Embedded Linux и в качестве основного языка используют C++ в его современном варианте - C++17, активно поглядывая на фичи из стандарта 20-го года и новее.

Иногда запускаются новые проекты на той же платформе, с теми же процессами и с переиспользованием многих уже существующих компонентов, и тогда в эти проекты мы ищем программистов, с учетом вышесказанного - программистов на C++. В embedded, тем не менее, чистый C все еще очень популярен, и нередко собеседоваться на вакансию C++ Developer'а приходят именно сишники. Логика у человека простая: языки, на первый взгляд, довольно близкие, базовый синтаксис одинаков, про ООП кандидат что-то слышал, и значит, основная база уже есть и он сможет легко освоить C++ за 21 день в процессе работы, поэтому можно наплести про "с C++ тоже работал", начать писать на "Си с классами" и все получится.

Но нет, не получится.
Всего голосов 110: ↑86 и ↓24+62
Комментарии404

CompositionLocal в Jetpack Compose. Что это и как с его помощью реализовать реактивную локализацию приложения

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

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

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

Telegraff: Kotlin DSL для Telegram

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

Лого


На Хабре тысячи статей про то, как сделать Телеграм-бота под разные языки программирования и платформы. Тема далеко не новая.


Но Telegraff – лучший фреймворк для реализации Телеграм ботов и я это под катом докажу.

А ну-ка
Всего голосов 43: ↑39 и ↓4+35
Комментарии37

Как открыть ИП в Германии, если ты программист, и не набить шишек

Время на прочтение6 мин
Количество просмотров35K
В последние недели Берлин — популярная тема на Хабре. Не случайно — в Германии много возможностей для работы в ИТ с комфортным переездом. Но бюрократия она и в Африке бюрократия, а если встают вопросы об индивидуальном предпринимательстве за рубежом — головной боли не избежать.



Алина Ануфриева (allinne) работала фронтендером в Яндексе, но ее муж получил оффер из Германии, и они вместе с ребенком переехали в Берлин. Работа позволила мужу получить Blue Card — рабочую визу, действующую по всей Европе — и вид на жительство для семьи. Но если но был обязан работать именно в той компании, которая его позвала, то Алина получила более широкие возможности: работать где угодно и даже открывать свое дело.

Но первое время она занималась бытовыми делами, например устраивала ребенка в сад. «Надо заполнить 100500 формуляров, принести их в Jugendamt (управление по делам молодежи). Российское гражданство никаких трудностей не вызовет, если есть виза», — говорит она.

Алина смотрела вакансии на неполный рабочий день в Берлине, чтобы заниматься ребенком, но ей не удавалось найти работу даже на 30 часов в неделю. Наконец она нашла удаленный оффер из Финляндии, но столкнулась с бюрократическими трудностями — финские и немецкие законы устроены так, что организовать работу можно было только через ИП.

Открыть его сложнее чем в России, есть много подводных камней. Мы созвонились, и Алина подробно описала весь процесс, а я записал ее рассказ.
Читать дальше →
Всего голосов 42: ↑34 и ↓8+26
Комментарии113

Оптимизируем шаг за шагом с компилятором Intel C++

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


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

Итак, весь тернистый путь компиляции и оптимизации нашего приложения можно разбить на 7 шагов. Пошагали!
Читать дальше →
Всего голосов 29: ↑25 и ↓4+21
Комментарии3

R в качестве инструмента мониторинга цен

Время на прочтение6 мин
Количество просмотров18K
В данной статье хотел бы коснуться такой темы как мониторинг конкурентов. Понимаю, что у данной темы есть как много сторонников, ведь так или иначе мониторинг необходим для успешного развития почти любой компании, так и противники, которые защищают интересы своего бизнеса от мониторщиков.

Те, кто как то связан с продажами на конкурентном рынке, наверняка знают, что мониторинг конкурентов является важной задачей. Результаты используются для совершенно различных целей — от изменения локальных политик ценообразования и ведения ассортимента до составления стратегических планов развития компании. Автор решил попрактиковаться в решении данной задачи и промониторить одного из крупных ритейлеров электроники в России, чьим регулярным клиентом автор является. Что из этого вышло —
далее под катом
Всего голосов 13: ↑11 и ↓2+9
Комментарии14

Lock-free структуры данных. Concurrent maps: rehash, no rebuild

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

Пройдем по следам C++ 2015 Russia далее.
В предыдущей статье мы рассмотрели алгоритм для lock-free ordered list и на его основе сделали простейший lock-free hash map. У этого hash map есть недостаток: размер хеш-таблицы постоянен и не может быть изменен в процессе роста числа элементов в контейнере. Это не представляет проблемы, если мы заранее примерно представляем требуемый объем контейнера. А если нет?
Читать дальше →
Всего голосов 36: ↑35 и ↓1+34
Комментарии8

Детекторы углов

Время на прочтение18 мин
Количество просмотров110K
Мне интересна обработка изображений, в особенности работа с особыми точками. Ища информацию по детекторам углов, я не нашел достаточно большого обзора этих алгоритмов на русском языке. Поэтому я решил исправить ситуацию, написав эту статью. План статьи следующий:

  • Введение
  • Свойства особых точек
  • Детекторы углов
    • Moravec
    • Harris
    • Shi-Tomasi
    • Förstner
    • SUSAN
    • Trajkovic
    • FAST
    • CSS
    • Детектор, основанный на глобальных и локальных свойствах кривизны
    • CPDA
  • Выводы



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

Eggs.Variant — Часть I

Время на прочтение14 мин
Количество просмотров8.9K
На публикацию этого перевода меня сподвиг комментарий пользователя @encyclopedist к недавней статье «Фабричный метод без размещения в динамической памяти». Статья меня заинтересовала, но беглое гугление не выявило перевода. «Непорядок.» — подумал я — «Такая интересная статья по С++ и не переведена на русский язык. Надо бы исправить.»

Оглавление
  1. Введение
  2. Проектирование
  3. Реализация

  4. О чём ещё не сказано


Размышления о разработке Eggs.Variant — обобщённом типобезопасном размеченном объединении на C++11/14.

Введение


Объединение — это специальный тип класса, который в один момент времени может хранить только один из своих нестатических членов. Он занимает столько места, сколько требуется для размещения наибольшего из его членов.
9 [class]/5 Объединение — это класс, определяемый с ключевым словом union; одновременно он может хранить только один из своих членов (9.5). [...]
9.5 [class.union]/1 В объединении активным может быть только один из нестатических членов, то есть, в данный момент времени в объединении может храниться значение только одного из его нестатических членов. [...] Размер объединения достаточен для вмещения самого большого из его нестатических членов. Каждый нестатический член размещается в памяти так, словно он является единственным членом структуры. Все нестатические члены объекта объединения имеют одинаковый адрес.

Оригинал
9 [class]/5 A union is a class defined with the class-key union; it holds at most one data member at a time (9.5). [...]
9.5 [class.union]/1 In a union, at most one of the non-static data members can be active at any time, that is, the value of at most one of the non-static data members can be stored in a union at any time. [...] The size of a union is sufficient to contain the largest of its non-static data members. Each non-static data member is allocated as if it were the sole member of a struct. All non-static data members of a union object have the same address.



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

Идеальная передача и универсальные ссылки в C++

Время на прочтение9 мин
Количество просмотров155K
Недавно на isocpp.org была опубликована ссылка на статью Eli Bendersky «Perfect forwarding and universal references in C++». В этой небольшой статье есть простой ответ на простой вопрос — для решения каких задач и как нужно использовать rvalue-ссылки.
Узнать этот ответ
Всего голосов 56: ↑56 и ↓0+56
Комментарии27

Комета ISON разгорелась, время доставать бинокли

Время на прочтение3 мин
Количество просмотров150K
Сообщество астрономов шумит как растревоженный улей – комета ISON разгорелась. До недавнего времени она скромно летела к Солнцу, демонстрируя яркость согласно самым пессимистичным прогнозам. Ее яркость медленно подползала к 8 видимой звездной величине (обозначается как 8m). Однако 15 ноября произошла вспышка, которая подняла блеск кометы до пределов, видимых невооруженным глазом.


© John Nassr
Читать дальше →
Всего голосов 155: ↑154 и ↓1+153
Комментарии44

Водитель Curiosity продолжает отвечать на вопросы Хабра

Время на прочтение12 мин
Количество просмотров100K
Перед вами вторая часть ответов Паоло на вопросы, заданные Хабром.
Первая часть доступна по этой ссылке, а сами вопросы принимались вот в этом посте — все тексты вопросов взяты оттуда почти без изменений.

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



Читать дальше →
Всего голосов 221: ↑220 и ↓1+219
Комментарии59

MeCam — летающая камера за 49$

Время на прочтение2 мин
Количество просмотров188K
Новый миниатюрный квадрокоптер MeCam, недавно представленный компанией Always Innovating, способен поменять наши представления о способах видео- и фотосъёмки. MeCam представляет собой летающую камеру на базе Linux, которая управляется голосом и передаёт фото и видео по Wi-Fi либо Bluetooth на iOS либо Android-устройство с возможностью последующей публикации в Youtube, Google+, Facebook либо Twitter. Также, как альтернатива управлению голосом, поддерживается функция «Follow Me», при которой квадрокоптер неотступно следует за пользователем, ориентируясь на сигнал его смартфона либо планшета. В устройство встроено 14 датчиков, позволяющие самостоятельно преодолевать препятствия, имеется система стабилизации для получения плавного изображения и возможность панорамной съёмки.
Читать дальше →
Всего голосов 110: ↑109 и ↓1+108
Комментарии115

Читать книги на английском и учить язык легче с помощью WordMemo

Время на прочтение3 мин
Количество просмотров109K
Я хочу рассказать о некоммерческом сервисе wordmemo.ru, а также о связанной с ним программе WordMemo для устройств с ОС Android. Наш сервис предназначен для людей, которые хотят читать англоязычные тексты (например, художественную литературу). Сам я отношусь к тем людям, которым легко прочитать небольшие фрагменты “технической литеатуры”, а абзац из классики — невозможно. В основе сервиса, который мне очень помогает в этом деле, лежит «читалка» с возможностью смотреть переводы слов, выписывать их значения, и — самое важное! — тренажёрами, позволяющими эффективно заучивать выписанные слова. К примеру, для каждого незнакомого слова сохраняются контексты, в которых оно встречалось.
Главная идея сервиса состоит в том, что учить слова лучше всего не взятыми по отдельности, как в словарях, а в составе реальных предложений. Что-то вроде англо-русского разговорника и учебника, который вы создаете сами!
Читать дальше →
Всего голосов 55: ↑40 и ↓15+25
Комментарии28

XAircraft x650 и аэро-фотография

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


Как-то раз позвонил мне один мой друг фотограф и задал очень интересный вопрос: “Что если повесить какую-нибудь фото-мыльницу на радиоуправляемый вертолёт и попробовать как-то снимать этой мыльницой с воздуха?”
А я, помнится, с раннего детства мечтал о радиоуправляемых летательных аппаратах, но жил в так называемой “глубинке”, поэтому дальше детских чертежей в этом деле я не продвинулся тогда. В этот раз с ходу я ответить ничего не смог, но т.к. тема меня вдруг заинтересовала (а кого не заинтересует?), я пообещал разобраться с вопросом и созвониться позже.

Читать дальше →
Всего голосов 73: ↑71 и ↓2+69
Комментарии58

Расписание выхода статей на Хабре (на любую неделю)

Время на прочтение2 мин
Количество просмотров22K
Понедельник
  • Новости: ученые изобрели машину времени, вышел новый ноутбук толщиной 80 нанометров, Google покупает Microsoft, Facebook увольняет 1000 программистов.
  • Вылез стартап. Попиарился, лёг под хабраэффектом, встал, собрал замечания, поблагодарил, пропал навсегда.
  • Вышла новая версия третьего слева линукса. Качать срочно.
  • Я негодую — счет за телефон оператор округлил до кратности числу Пи.

Вторник
  • Опровержение новостей: ученые изобрели всего-лишь более точные часы, 80 нанометров — это техпроцесс, а не толщина ноутбука, Google покупает какой-то стартап, который отказался купить Microsoft, Facebook набирает 5000 программистов.
  • Начало холивара, модного на этой неделе (чай vs кофе, бинокль vs подзорная труба, черное vs белое)
  • Очень важный технический ресурс (ЖЖ, порнолаб, Sony Network) взломан (заДДОСен, конфискован УБОПом). Паника и отчаяние.

Читать дальше →
Всего голосов 432: ↑418 и ↓14+404
Комментарии57

TeeWorlds по-новому

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


Доброго времени суток, Хабралюди!

Как Вы могли прочесть из предыдущего топика — официальная поддержка TeeWorlds была сперва прекращена, после возобновлена частично, под эгидой “хобби”.
Это несколько опечалило поклонников игры.

Команда проекта 300Murlocs.com не могла не поддержать эту динамичную игру и решила дать ей новое рождение.
Читать дальше →
Всего голосов 83: ↑74 и ↓9+65
Комментарии66
1
23 ...

Информация

В рейтинге
Не участвует
Откуда
Ярославская обл., Россия
Дата рождения
Зарегистрирован
Активность