Как стать автором
Обновить
1
0
Роман Гардукевич @OdNairy

iOS Team Lead

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

地形图非线性保密处理算法, или что не так с картами Китая на спутниковых снимках

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

Китай — это не просто другая страна. Это другой мир. Необязательно ехать туда, чтобы убедиться в этом. Иногда достаточно зайти в интернет. Например, использовать Google Maps или другие сервисы, чтобы открыть карту Китая. И тогда можно заметить, что расположение объектов (дорог, рек, достопримечательностей и многого другого) на карте и на спутниковых снимках, мягко говоря, не совпадает.

В этой статье хотелось бы рассказать, почему происходит такая путаница и что из этого следует.
Читать дальше →
Всего голосов 182: ↑178 и ↓4+216
Комментарии183

Переход на Metal

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

Мы закончили регрессионное тестирование и со дня на день собираемся начать раскатывать на бой релиз с включенным Metal. Зачем мы это делаем и как всё происходит — рассказываем в статье. 

Причина первая: уход на пенсию OpenGL для iOS/OSX. В 2018 году Apple объявили, что прекращают поддержку этого графического API, и это только вопрос времени, когда они удалят его из своих операционок и запретят выкладывать в App Store приложения, использующие GLES (OpenGL for Embedded Systems — подмножество API OpenGL для встроенных систем, например, мобильных устройств). А кому надо впопыхах интегрировать незнакомый API? Правильно, никому. Плюс, нет-нет да и случаются какие-то неприятные падения где-то под капотом OpenGL, починка которых сводится к мольбам, что очередной точечный фикс кода всё исправит.

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

Как отлаживать bash-script-ы по шагам или, возможно, самая короткая статья о программировании/отладке на Хабре

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

Мне всегда хотелось иметь возможность отлаживать bash-scripts так же, как и любой другой код, т.е. по шагам, и bash такую возможность предусмотрел, но о ней не все знают. Несмотря на довольно большой опыт использования Linux, я дошёл до неё только недавно.

Читать далее
Всего голосов 158: ↑157 и ↓1+188
Комментарии37

Германия — плюсы, минусы и немыслимое

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

Этот пост родился как комментарий к вот этому посту о жизни в Германии. Мне понравился критический взгляд автора на многие вещи и комментарии сообщества. Однако через какое-то время мой планируемый комментарий настолько разросся, что я решил создать отдельную статью со своим видением плюсов и минусов жизни в Германии. Хотя это не совсем правильно: Германия очень разная. Различаются не только земли, но и регионы внутри них и даже города. Поэтому не хочу экстраполировать свой опыт на всю Германию, но опишу реалии проживания в городе Нюрнберг.

Читать далее
Всего голосов 112: ↑101 и ↓11+121
Комментарии583

История операций по коррекции зрения: сравнение рисков и побочных эффектов

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

Механическое устройство, выстреливающее или медленно двигающее лезвием для срезания верхней части роговицы глаза

Начнём с истории, чтобы было понятно, как эволюционировали методы, а потом перейдём к рискам и побочным эффектам современных операций.

Итак, доктор Снеллен, который изобрёл таблицу проверки зрения, выдвинул теорию о том, что можно «поцарапать» глаз так, что кривизна роговицы изменится. Случилось это в 1869 году (в этом же году появилась таблица Менделеева и докопали Суэцкий канал), поэтому «царапать» тогда могли только металлическим скальпелем. Офтальмологии как отдельной науки официально не было, и занимались ей обычные хирурги — те же самые, которые бодро отпиливали руки и ноги при возникновении инфекции.

К глазам они приступать поначалу не решались: пациент вроде жив, шевелится и не кричит, значит, трогать его пока нет достаточных оснований. Поэтому первая операция по коррекции зрения была проведена доктором Лансом в Голландии только через 30 лет, в 1898 году.

Следующим отличившимся персонажем стал выдающийся советский хирург академик Святослав Николаевич Фёдоров, который предложил очень своеобразный метод: точечно нагревать роговицу глаза до тех пор, пока она не деформируется. Но вместе с японским офтальмологом Сато они быстро перешли к надрезам. Сато резал изнутри и тем самым создавал много осложнений, а Фёдоров делал насечки алмазным ножом снаружи. Эти самые надрезы фактически и положили начало современным лазерным операциям.
Читать дальше →
Всего голосов 100: ↑98 и ↓2+96
Комментарии297

Германия, или Туда и Обратно — 1

Время на прочтение14 мин
Количество просмотров67K
Почти два года назад, под Новый год, у меня зазвонил телефон.

После пары дежурных фраз «как сам, как дети» меня позвали работать в Германию.



Я крепко призадумался.

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

Итак, под бой курантов мы с супругой приняли решение: «Ехать!»

Кто хочет прочитать про мой увлекательный, но весьма субъективный опыт переезда в Германию — добро пожаловать под кат.
Читать дальше →
Всего голосов 118: ↑114 и ↓4+145
Комментарии728

Детальный разбор структуры зарплат IT-специалистов в Кремниевой Долине

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

О чем пойдет речь


image

В рамках пятничного безумия, давайте представим, что у Вас волшебным образом появилось разрешение на работу в США, и Вы уже готовы после завтрака телепортироваться в самый центр Маунтин-Вью, чтобы моментально найти работу в крупной IT-компании и начать зарабатывать свой первый взнос на дом в Кремниевой Долине. Но прежде, давайте попробуем разобраться из чего состоит заработная плата разработчика программного обеспечения, что обычно включено в социальный пакет IT-специалиста, и какие дополнительные льготы получают сотрудники крупных технологических компаний в США. Все эти знания пригодятся Вам, чтобы продать себя дороже, жить комфортнее и быстрее заработать на сарайчик в пригороде Сан-Франциско.

Если Вам проще воспринимать информацию на слух или в режиме видео-ролика, то специально для Вас готово 28-минутное видео с тайм-кодами в комментариях.

Три главных компонента


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

Так вот, в первую очередь нужно понимать, что сумма, которую заплатит Вам работодатель
формируется из трех компонентов:

  1. Сash — это деньги, которые Вы получаете непосредственно на карточку два раза в
    месяц (или же их присылают Вам бумажным чеком, который потом можно либо обналичить, либо положить на Ваш банковский счет.
  2. Non-cash — это акции в различных вариациях: RSA, RSU, PSU, PSA или ESPP.
  3. Benefits — все косвенные затраты работодателя на Вас, с которых Вы также имеете
    выгоду.

Когда речь заходит о зарплате, тут принято говорить о сумме за год до уплаты налогов. Эта сумма называется Total Compensation (TC) и включает в себя Cash и Non-cash компоненты.
Читать дальше →
Всего голосов 71: ↑71 и ↓0+71
Комментарии150

Реально ли разработчику в Кремниевой долине стать миллионером? Разбор от Staff Engineer в Lyft

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


Изображение: Unsplash

Уже несколько дней интернет-общественность активно обсуждает фильм Юрия Дудя про Кремниевую долину. Опрошенные блогером эксперты рассказали об устройстве мировой IТ-столицы, а также подробно описали жизнь и быт работников технологических компаний.

В фильме проскочила мысль, что многие приезжают в Долину не ради денег, а менять мир, однако талантливые разработчики зарабатывают если не 300к USD/с., то хотя бы под миллион USD в год. И вообще, все приехавшие специалисты быстро вливаются в окружающую действительность стартапов и предпринимательства.

Я решил разобраться, так ли это на самом деле или в реальности не всё так просто. Для этого я поговорил с Денисом Неклюдовым, Staff Engineer в компании Lyft (конкурент Uber) и автором DevJobAccelerator. Итак, посмотрим, как на самом деле выглядит карьерный путь разработчиков в Кремниевой долине – от старта до компенсаций в миллионы долларов.
Читать дальше →
Всего голосов 60: ↑54 и ↓6+71
Комментарии147

VPN везде и всюду: IPsec без L2TP со strongSwan

Время на прочтение10 мин
Количество просмотров324K
image
достаточно сильный лебедь

Если вы когда-либо искали VPN, который будет работать на десктопах, мобильных устройствах и роутерах без установки дополнительного ПО и перепрошивки роутера, вы, вероятно, выбирали между PPTP и L2TP+IPsec. У протокола PPTP имеются проблемы с безопасностью и прохождением через брандмауеры и NAT, так что в 2015 году его уже использовать не стоит, а использование L2TP излишне, т.к. L2 VPN, по моему мнению, для обычного удаленного доступа не нужен практически никогда.

Удивительно, что в интернете не так-то просто можно найти информацию о настройке чего-то помимо L2TP+IPsec в транспортном режиме, учитывая, что это обширный стек протоколов, который можно конфигурировать буквально как душе угодно, поэтому я попытаюсь устранить такое несовершенство мира.

Небольшое введение в мир IPsec

Вообще говоря, не совсем правильно называть IPsec VPN. IPsec не предназначен для построения «виртуальных частных сетей», а создан для шифрования или защиты от подмены передаваемых по IP данных. Это специальный слой поверх IP, который, в зависимости от режима и настроек, работает по-разному. В отличие от привычного VPN, который создает новый интерфейс в системе, на который вы, как это чаще всего бывает, назначаете IP-подсеть из диапазона частных адресов (т.е. создаете новый сетевой сегмент), и через который маршрутизируется трафик в зашифрованном виде, IPsec просто шифрует трафик магическим образом между «внешними» интерфейсами сервера и клиента.
Читать дальше →
Всего голосов 50: ↑49 и ↓1+48
Комментарии166

iOS. Работа с сетью, когда приложение не запущено

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

image


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


Тема эта сложная и проблем там несчётное количество. Обсудим те, с которыми пришлось столкнуться за последние несколько месяцев. Сразу прошу прощения за объём. Покороче никак, слишком много мелочей, на которые стоит обратить внимание.

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

checkm8 для Lightning-видеоадаптеров Apple

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

Появление эксплойта checkm8 можно назвать одним из важнейших событий прошедшего года для исследователей продукции Apple. Ранее мы уже опубликовали технический анализ этого эксплойта. Сейчас сообщество активно развивает джейлбрейк checkra1n на основе checkm8, поддерживающий линейку устройств iPhone от 5s до X и позволяющий установить на iOS пакетный менеджер Cydia и с его помощью устанавливать различные пакеты и твики.


checkm8 в значительной степени опирается на смещения различных функций в SecureROM и данных в SRAM. В связи с этим могут возникнуть вопросы: как изначально был извлечен SecureROM конкретного устройства? Был ли он извлечен с помощью уязвимостей, лежащих в основе checkm8, или каким-то другим образом?


Наверное, ответить на эти вопросы могут лишь сами исследователи, принимавшие участие в разработке checkm8. Однако, в этой статье мы расскажем об одном из подходов к извлечению SecureROM, основанном на уязвимостях, используемых в checkm8, и требующем минимальных знаний о структуре памяти устройства. Описанный метод не является универсальным и будет работать только на устройствах без технологии безопасности W^X. В качестве примера мы рассмотрим Lightning-видеоадаптер Apple (да, в этом адаптере есть свой SoC с SecureROM) и продемонстрируем не только извлечение SecureROM, но и полную реализацию функциональности checkm8 для этого адаптера.

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

Почему Wi-Fi не будет работать, как планировалось, и зачем знать, каким телефоном пользуется сотрудник

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


Привет!

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

Для разминки — небольшая задачка. Представьте себе беспроводную сеть Wi-Fi, состоящую из точки доступа (AP) и двух одинаковых клиентских устройств (STA1 и STA2).

Читаем надписи на коробках:
AP: 1733,3 Мбит/c
STA1, STA2: 866,7 Мбит/c

Внимание, вопрос. Оба клиента одновременно начинают загружать с сервера большой файл. На какую пропускную способность может рассчитывать каждое из устройств?
Читать дальше →
Всего голосов 61: ↑61 и ↓0+61
Комментарии69

Универсальные ссылки: дворец из подводных камней

Время на прочтение14 мин
Количество просмотров28K
При том, как много мобильные приложения дали человечеству, они в то же время «сломали» интернет. Вместо понятных ссылок на сайты, которые можно скопировать и поделиться, стало нужно объяснять «поставь такое-то приложение и зайди там туда-то».

К счастью, разработчики мобильных платформ осознали эту проблему и предложили концепцию «универсальных ссылок», которые одним кликом открывают нужное на любой платформе. Но то, что для пользователя «одним кликом», для программиста — «потом и кровью». На пути к успеху стоит целый ворох неожиданных нюансов, и Константин Якушев познакомился с ними на личном опыте при внедрении универсальных ссылок в Badoo. А затем на нашей конференции Mobius рассказал, как сделать всё правильно и обойти проблемы. Зрителям доклад понравился, и мы решили, что негоже полезному материалу оставаться только видеозаписью, поэтому под катом — его текстовая версия.

В докладе ситуация рассмотрена со стороны iOS, но универсальные ссылки на то и универсальные, чтобы объединять разные платформы, так что извлечь пользу могут не только iOS-разработчики.

Читать дальше →
Всего голосов 39: ↑38 и ↓1+37
Комментарии15

Профессиональное выгорание в ИТ (результаты исследования «Моего круга»)

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


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

Большинство вопросов анкеты строилось на материалах мастер-класса Наталии Дзеружинской, доктора медицинских наук, профессора, врача-психиатра высшей квалификационной категории, проведённого ею в рамках «Школы менеджеров «Стратоплан»» (видеозаписи 5 мастер-классов школы).

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

Как мы узнали, более 50% ИТ-специалистов имеют опыт профессионального выгорания, причём половина из них прошли через этот опыт 2 и более раза. Для работодателя подобное выгорание сотрудников имеет довольно серьёзные последствия: до 20% сотрудников находятся регулярно в подобном состоянии, только 25% выгорающих остаётся на прежнем месте работы. А значит, довольно большая часть сотрудников работает крайне неэффективно и мешает другим, плюс постоянно нужно вкладывать средства в рекрутинг и адаптацию новых сотрудников взамен выгоревших. Если работодатель научится управлять процессом выгорания, то сможет экономить много материальных и моральных сил для своей компании.
Читать дальше →
Всего голосов 55: ↑54 и ↓1+53
Комментарии115

Мобильный интерфейс для одной руки

Время на прочтение4 мин
Количество просмотров47K
В своей книге Designing Mobile Interfaces (2011) дизайнер Стивен Хубер ввел понятие The Thumb Zone («зона большого пальца») — область экрана, наиболее удобная при использовании телефона одной рукой. С года издания книги средний размер смартфона заметно увеличился, и «мертвая зона» — область, которую сложно достать пальцем одной руки, — также стала больше.

«Зона большого пальца» для 5–4,7-дюймового экрана, если держать телефон в левой и в правой руке, соответственно. Изображение основано на публикации Скотта Хэрффа.
Изображение. «Зона большого пальца» для 5–4,7-дюймового экрана, если держать телефон в левой и в правой руке, соответственно. Изображение основано на публикации Скотта Хэрффа.

Читать дальше →
Всего голосов 42: ↑38 и ↓4+34
Комментарии49

Сотрудники со стажем в компании более 2 лет зарабатывают на 50% меньше

Время на прочтение1 мин
Количество просмотров243K
Журнал Forbes обратил внимание на интересную тему, о которой не принято говорить: зависимость зарплаты сотрудника от стажа работы в компании. Выясняется, что на максимальную зарплату могут рассчитывать вовсе не лояльные сотрудники, а совсем наоборот — те, кто часто меняет работу.

У этого явления существует несколько причин. Одна из них — кадровая политика большинства компаний, которая устанавливает потолок на максимальное повышение зарплаты сотрудника. В среднем, в 2013 году зарплаты внутри компаний повышались на 3%. Слабые сотрудники могут рассчитывать на прибавку 1,3%, а самые лучшие — на 4,5%, но не более того. Это примерно соответствует уровню инфляции (2,1% за прошлый год).

В то же время при смене работодателя средняя прибавка к зарплате составляет от 10% до 20%, а иногда и больше.
Читать дальше →
Всего голосов 152: ↑133 и ↓19+114
Комментарии305

Выбор китайского планшета '2013

Время на прочтение7 мин
Количество просмотров394K
Полгода назад я уже писал о выборе китайского планшета.
За это время многое изменилось, поэтому я привёл статью о выборе к сегодняшним реалиям.

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



Прежде всего давайте разберёмся, зачем нужен планшет. Вот основные его применения:

• Интернет-браузинг
• Игры
• Просмотр фильмов
• Просмотр интернет-видео
• Чтение электронной документации (pdf, djvu)
• Чтение электронных книг (художественная литература)
• Прослушивание музыки
• Использование в качестве большого навигатора, работа с картами
• Специальные применения (управление оборудованием и т.д.).

Читать дальше →
Всего голосов 72: ↑45 и ↓27+18
Комментарии48

Как продлить жизнь (ресурс) литий-ионной аккумуляторной батареи

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

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


Литий-ионные аккумуляторы больше страдают от процесса «старения» (ухудшение характеристик на протяжении времени), чем от циклирования. Это означает, что большинство аккумуляторов не может служить свыше 5 лет при обычных условиях эксплуатации (оптимистичный прогноз). Мораль такова — если покупаете литий-ионный аккумулятор, внимательно относитесь к дате изготовления — при полугодовой давности вы потеряете 10% от заявленого ресурса.


Старение батарей ускоряется при работе или хранении в жарких условиях – смотри таблицу для литий-кобальтовых аккумуляторов (для литий-марганцевых и литий-железных батарей результаты немного лучше)



Деградация характеристик литий-кобальтовых аккумуляторов всвязи с температурой хранения
Температура, °C 40% уровень заряда (рекомендуемый уровень заряда) 100% уровень заряда (поддерживается пользователями при работе)
0°C
98% через 1 год
94% через 1 год
25°C
96% через 1 год
80% через 1 год
40°C
85% через 1 год
65% через 1 год
60°C
75% через 1 год
60% через 3 месяца

Читать дальше →
Всего голосов 58: ↑55 и ↓3+52
Комментарии79

Парни, нам нужно поговорить

Время на прочтение4 мин
Количество просмотров128K
От переводчика: на оригинальный пост меня навёл EugeneOZ, за что ему отдельное спасибо.
Если кто-то найдёт какой-то косяк — я буду рад репортам в ЛС.


Парни, нам нужно поговорить


Мои дорогие задроты, гики, хакеры, дизайнеры, создатели, сборщики и очумельцы — с нашей культурой происходит что-то очень и очень странное.

Мы ведём себя как настоящие козлы по отношению друг к другу.

Нет, скажете вы, это вовсе не так, верно? Гики помогают друг другу! Ну, хм, может, иногда мы и помогаем, но большую часть времени мы являемся частью самого жестокого, критично настроенного и безразличного сообщества из всех, что я знаю. Сколько сайтов за день мы поливаем дерьмом? Скольким клиентам мы желаем отправиться в ад? Сколько мы глумимся над кривым фотошопом?
Читать дальше →
Всего голосов 324: ↑277 и ↓47+230
Комментарии208

Рождённые в СССР

Время на прочтение5 мин
Количество просмотров181K
image
Вы не задумывались, почему мы были (а может и остаёмся) самой читающей нацией? А почему так много учёных, математиков даже заграницей имеют до боли знакомые фамилии и имена? Почему не один громкий IT проект от WinAmp, через Google и множество других например к BitCoin не обошёлся без тех же фамилий?
Читать дальше →
Всего голосов 294: ↑175 и ↓119+56
Комментарии546

Информация

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