• Пастильда — открытый аппаратный менеджер паролей

      Pastilda — open source аппаратный USB менеджер паролей

      Немало заметок и обсуждений посвящены непростому вопросу безопасного хранения паролей, тема интересная и, похоже, актуальной будет ещё долго. Существуют различные программные решения для хранения паролей, о них довольно часто пишут на Хабре (например тут и вот тут), однако многим из них, как нам кажется, в той или иной степени свойственны следующие недостатки:
      • закрытый код снижает доверие и вероятность оперативного устранения уязвимостей
      • для автозаполнения нужно ставить дополнительный софт
      • после ввода мастер-пароля вся база открыта и доступна, в том числе для вредоносного ПО, что особенно актуально на недоверенных устройствах
      • использование мобильных приложений для хранения паролей все равно подразумевает ручной ввод с клавиатуры, например когда требуется залогиниться на стационарном ПК
      • автозаполнение невозможно в некоторых случаях (в bios, консоли)

      Мы пришли к выводу, что наиболее удобным решением будет простой и недорогой девайс, позволяющий аппаратно хранить и вводить логины/пароли на любые устройства, без установки какого-либо ПО.
      Читать дальше →
    • Рабочее место .NET разработчика или трудности выбора идеальной конфигурации

        Хабр, привет!

        Мы продолжаем приоткрывать дверь в технологическую кухню Retail Rocket. В сегодняшней статье мы решили поделиться историей о нашем «корпоративном backend`е», речь пойдет о рабочем месте для разработчика. Та самая зона комфорта, которая окружает нас в жизни, но является не менее важной, чем выбор стека технологий.

        Передо мной встала задача подготовить рабочее место для нового члена команды разработки, казалось бы, что может быть проще? На практике оказалось все гораздо сложнее, чем я ожидал. Раньше мы покупали стол «Галант» в IKEA, любое офисное кресло + MacBook Pro – и у нас готово новое рабочее место.


        Старое рабочее место .NET разработчика в офисе Retail Rocket

        С тех пор прошло 2 года, мы выросли, у нас изменился стиль работы — пора подбирать новую конфигурацию. Половина нашей команды работает на технологическом стеке от Microsoft. Это большой проект в Visual Studio 2015 + Resharper: 26 приложений, 9 библиотек, 3 проекта с тестами, что в сумме на момент публикации статьи дает 4 312 файлов и более 60 тыс. строк кода. Плюс IIS с компиляцией и запуском приложения на локальной машине, что накладывает повышенные требования к вычислительной мощности используемого оборудования.

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

          Полгода назад я писал про то, как мы участвовали в конкурсе по открытым данным с проектом "Московские школы". Потом было исследование московских результатов ЕГЭ, московских кружков и секций. Недавно удалось собрать все результаты в одном месте и аккуратно оформить:


          Я хотел бы подробно рассказать про процесс сбора и обработки школьных данных. Оказывается, что для каждой школы в Москве публикуется достаточно много информации: результаты ЕГЭ, ГИА и олимпиад, профили учителей, бухгалтерская отчётность и списки кружков.
          Читать дальше →
          • +26
          • 13,1k
          • 5
        • Как повысить рейтинг приложения в Google Play?

          Признаюсь, есть у меня одна вредная привычка. Когда на работе нужно спланировать продвижение мобильного приложения, я всегда забываю про оптимизацию описания для Google Play. Наверное, что-то в моем подсознании не считает Google Play таким же полноценным магазином приложений, как App Store. Кроме того, по разным оценкам, приложения на Android приносят меньше прибыли (в быту часто называют разницу в два раза, последние данные от App Annie дают разницу в 70%), а многие уважающие себя разработчики отличных игр и приложений вообще не делают Android-версию или выпускают ее через какое-то время после iOS-версии, когда уже понятно, что она гарантированно поднимется в топ за счет разогретого желания «андроедов» наслаждаться всеми теми благами, которыми наслаждаются «яблоеды». (Впрочем, есть и исключения.)

          Тем не менее, к нам постоянно обращаются какие-то отчаянные люди и просят сделать им ASO для Google Play. Ниже — список мер, которые могут помочь. Как говорится, спасение утопающих — дело рук самих утопающих.


          Для начала пройдемся по основным факторам ранжирования приложения в поиске в Google Play.
          Читать дальше →
          • +15
          • 18,4k
          • 4
        • Поисковая оптимизация для AppStore и Google Play или ASO

          Поисковая оптимизация для AppStore и Google Play — это комплекс мер по улучшению видимости мобильных приложений в поисковой выдаче AppStore и Google Play Market. Сокращенно называется ASO — Appstore Search Optimization.

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

            Про моментальный клей с содой разве что ещё анекдотов не насочиняли, но все молчат про одну интересную особенность. Итак, смесь цианоакрилата с содой моментально полимеризуется (твердеет), выделяя тепло и отлично схватываясь молекулярными связями с близлежащими слоями. Но не с любыми. С ABS-пластиком — хорошо, а с полипропиленом — плохо. Ну и что с того? При послойной заливке (точнее, «закапке») соблюдать точную форму детали непросто. Много излишков в конце приходится удалять механически (напильником). А как насчёт «опалубки» из таких же подручных материалов? Кустарная 3D-печать из кармана.


            Читать дальше →
          • Немного из истории специализированных ЭВМ военного назначения

              Середина ХХ столетия, СССР. Основное внимание было уделено созданию универсальных ЭВМ для решения сложных математических вычислительных задач, это были стационарные машины, которые ориентировались на последовательное или пакетное решение задач, вне связи с реальным масштабом времени и динамическим изменением параметров объектов внешней среды. Но уже к концу 50 годов в Министерстве обороны страны возник интерес к применению таких ЭВМ для решения задач обработки информации и управления в военных системах. Но сразу же возникли трудности, связанные с недостатками таких универсальных машин при использовании их в военных системах для решения задач управления в реальном времени. Поэтому начало ускоренными темпами развиваться направление вычислительной техники военного предназначения.



              Четко стали различать два класса ЭВМ: стационарные и мобильные. Развитию мобильных типов ЭВМ содействовали разные требования заказчиков, так как планировалось применять их и в сухопутных, и в авиационных, и в морских, и в ракетных, и в других систем в оборонных отраслях промышленности и на предприятиях, цифровая вычислительная техника начала применяться для систем противовоздушной и противоракетной обороны, для контроля космического пространства и управления полетами в авиации и в космосе. Стационарные работали в помещениях, а мобильные, следовательно, должны были быть транспортабельными.
              Подробности
            • Сводные данные о зарегистрированных доменах второго уровня в зоне .RU

              crawljob

              Целью исследования являлось получение актуального списка всех активных доменов в зоне .RU, к 01.01.2016 зарегистрировано в которой было 5040277 имён. Приняли решение пройтись по каждому имени краулером и проанализировать результат.
              Читать дальше →
            • Создание канала с автопостингом в Телеграме без единой строчки кода

              • Tutorial

              Вступление


              Предупреждаю сразу: технического в статье очень мало. Это практически пошаговая инструкция для не очень сведующих в техническом плане пользователей. Для людей сведущих (и тех, кому лень читать много текста), приведу две ссылки: Telegram Bots API + IFTTT Maker Channel.

              Теперь подробнее. Думаю, все слышали про мессенджер Telegram. Вероятно, многие даже знают про нехитрый API для создания ботов в этом мессенджере. Кроме того, не так давно в T появилась возможность создавать так называемые «каналы» (channels), упрощающие мгновенную рассылку сообщений практически любому количеству подписавшихся на канал лиц. Наконец, самая свежая новость: ботов стало можно добавлять в качестве администраторов в каналы, то есть такие рассылки стало можно делать автоматизированно.

              Думаю, не надо объяснять, что это открывает довольно широкие возможности для различных сервисов. Например, у меня довольно быстро получилось сделать следующее:
              • три канала (@RedditTop, @r_pics, @gone_wild — осторожно, последний с «взрослым» контентом), которые ежечасно импортируют топовые посты с Реддита (и двух его сабреддитов);
              • ещё канал, делающий то же с постами с 9GAG;
              • и, наконец, завел хитрого бота @JamesBot, который анонимно пересылает все сообщения, написанные ему, в общий канал (@secret_ru, @secret_en, @secret_es, @secret_ar или @secret_fa — в зависимости от языка). Получился анонимный чат средней степени трэшовости.

              Уже после создания всех этих ботов и каналов мне пришло в голову, что простейший автоимпорт постов откуда-то «снаружи» можно наладить вообще без всякого кода и хостинга — буквально минут за 5. На помощь нам придет прекрасный сервис IFTTT — If This Then That, имеющий множество интеграций с социальными сетями и прочими сервисами. Правда, к сожалению, прямой интеграции с Телеграмом у него (пока?) нет — зато есть т.н. IFTTT Maker Channel, позволяющий делать простые HTTP(S)-запросы при срабатывании триггера. К сожалению, мы не сможем принимать сообщения, отправленные боту (входящие запросы IFTTT Maker принимать может, но, увы, только в строго определенном формате) — интерактива не выйдет. Зато сможем по срабатывании любого события (например, новый твит или пост в FB):
              • публиковать сообщение в канале,
              • отправлять сообщение в заранее выбранный чат (куда добавлен наш бот),
              • отправлять сообщение заранее указанному пользователю (который добавил себе бота).
              Читать дальше →
            • Дорогие мне байты прошлого тысячелетия



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

              Мое знакомство с компьютерами началось в прошлом тысячелетии. Думаю, как и у многих. Первый компьютер – Правец 8д, на Хабре о нем есть статья. В комплекте с ним шел телевизор «Садко» с впаянным в него кустарно сделанным блоком для подключения компьютера…
              Читать дальше →