• В разрезе: новостной агрегатор на Android с бэкендом. Система контроля конфигураций (Puppet)

      Вводная часть (со ссылками на все статьи)

      В ITIL (v3) среди описанных процессов есть 2 особенно интересных: «Процесс управления конфигурациями» и «Процесс управления изменениями», предназначенных для анализа и управления изменениями конфигураций систем. Для продолжения повествования нужно определиться, что такое «система». В это понятие входит огромное количество составляющих, влияющих (прямо или косвенно) на предоставление услуги:

      • серверы

        • настройки безопасности (пользователи, группы, права, межсетевые экраны);
        • установленные приложения и библиотеки;
        • настройки работы приложений (лимиты по дискрипторам, памяти, времени CPU и т.д.);
        • резервное копирование;

      • системы мониторинга за работой прикладного и системного ПО;
      • конфигурационные файлы самого продукта, его компонентов, вспомогательных системных и прикладных приложений
      • ...

      Пытаться минимизировать контур системы вашего проекта (тип, резервное копирование не относится к функционированию системы) – значит рыть себе яму, в которую рано или поздно вы провалитесь.
      Читать дальше →
    • World Machine + UE4: Полный рабочий процесс

      Привет, Хабр! Предлагаю вашему вниманию перевод статьи WorldMachine + UE4: Full Workflow.

      Руслан Назиров показал, как можно создавать красивые ландшафты в World Machine и импортировать их в Unreal Engine 4. Руслан начал работать с Unreal Engine всего год назад, но уже сейчас демонстрирует удивительные результаты.

      Процесс создания ландшафта для UE4


      1. Создание нужного ландшафта в World Machine. Я использую библиотеку макросов GeoGlyph для ускорения процесса создания ландшафта.

      image
      Читать дальше →
      • +13
      • 27.1k
      • 2
    • Вызов управляемого кода из неуправляемого

      image С задачей вызова неуправляемого кода из управляемого мы сталкиваемся довольно часто, и эта задача имеет простое решение в виде одного атрибута [DllImport] и небольшого набора дополнительных правил, которые хорошо изложены в MSDN. Обратная же задача встречается гораздо реже. В данной статье мы и рассмотрим небольшой пример, как это можно сделать. Его не стоит рассматривать как исчерпывающий, скорее лишь, как направление хода мыслей и концепцию. Итак, начнем.
      Читать дальше →
    • Ой, у меня задержка

        К нам часто приходят с такой проблемой, но надо сразу уточнить: обычно это мужчины, а мы занимаемся доставкой видео.

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

        Прежде чем переходить к обсуждению задержек (оно же latency, delay), надо ответить на очень важный вопрос: а зачем вообще их сокращать. Сокращать задержку хочется почти всегда, но требуется не всегда.

        Так, например, прямой эфир с острополитическим ток-шоу в принципе стоит минуты на 3 придержать от прямого эфира, что бы можно было оперативно отреагировать на резкое развитие дискуссии, а вот вебинар или удаленное управление беспилотником требует минимальной задержки чтобы люди могли спокойно перебивать друг друга, а груз падал ровно в цель.
        Читать дальше →
      • Emercoin снизит комиссии на транзакции в 100 раз



          Блокчейн-платформа Эмер с собственной криптовалютой Emercoin снизит комиссии на транзакции и создание записей в блокчейне в 100 раз. Функциональная ценность монеты EMC увеличится стократно.
          Читать дальше →
        • Стоимость недвижимости на тепловых картах

          В статье рассказано о процессе создания тепловой карты цен по продаже недвижимости для Москвы и Санкт-Петербурга.


          Тепловая карта цен Москвы


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

          Читать дальше →
        • Тестируем новый механизм синхронизации настроек JetBrains IDEs

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

            Если вы когда либо работали с JetBrains IDEs с разных компьютеров, вы могли сталкиваться с проблемой, что вам приходилось заново указывать настройки IDE (сочетания клавиш, подсветку синтаксиса, внешний вид, плагины и другие настройки).

            До сих пор эту проблему частично решал встроенный плагин Settings Repository. Для того, чтобы, плагин синхронизировал настройки, необходимо самостоятельно создать Git репозиторий (на GitHub или другом сервисе) и указать его в IDE.

            Читать дальше →
          • Система управления складом с использованием CQRS и Event Sourcing. Service Layer



              В данной статье будет рассмотрен Service Layer в Magento 2 и сервисы (API интерфейсы) для управления сущностями, которые были описаны в предыдущей статье, посвященной проектированию и выделению доменных сущностей для системы управления складом (Inventory).
              Читать дальше →
            • Kubernetes на голом железе за 10 минут

              • Translation


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


              По ходу этой статьи мы установим Kubernetes 1.6 на реальную (не виртуальную) машину под управлением Ubuntu 16.04 примерно за 10 минут. В результате у вас появится возможность начать изучать взаимодействие с Kubernetes посредством его CLI kubectl.
              Читать дальше →
            • ЦОД: этапы большой жизни

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

                Жизненный цикл ЦОДа включает в себя поэтапный процесс развития инженерной инфраструктуры в соответствии с задачами бизнеса и ИТ-процессами и может быть разделен на несколько этапов:

                1. Подготовительный: понимание целей создания, формирование концепции решения, выбор площадки;
                2. Проектирование в соответствии с выбранной концепцией и характеристиками площадки;
                3. Строительство;
                4. Эксплуатация;
                5. Оценка соответствия и анализ эффективности.



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

                Читать дальше →
              • Зачем бэкап? У нас же RAID



                  В корпоративные блоги принято писать success story — это положительно влияет на образ компании. К сожалению, не всегда в работе инженера всё заканчивается happy end-ом.
                  Надо сказать, что коллеги уже начинают подшучивать, что я «притягиваю» проблемы. Тем или иным образом я поучаствовал почти во всех проблемных заявках за последнее время. И теперь хочу рассказать одну поучительную историю из своей практики.
                  Читать дальше →
                • Что может чат-бот

                    Сначала мы выделили основные офисные процессы. Про чат-бота мы даже не говорили. Вот, например, заказ командировок. Сейчас я должна написать сотруднику службы деловых поездок в почту: «Я собираюсь в командировку в Сургут 5-го числа на три дня», а он: «Такой-то самолет и такая-то гостиница — всё подходит?», а я: «Да, давай». Дальше он пойдет согласовывать с руководством, забронирует сам билеты, спустя какое-то пришлёт мне подтверждение, что все Ок. Всё то же самое может делать бот.

                    Или если нужна справка для визы, то бот постучит в шину, шина постучит в кадровую подсистему и заберёт PDF, дальше отправит его на принтер отдела кадров и напишет письмо, что туда нужна печать. Затем уведомит меня, что можно подойти через пару часов. Если нужно оформить пропуск на гостя или забронировать переговорку для встречи, то достаточно поручить боту эту задачу, и он её выполнит.



                    Теперь давайте покажу пример чуть посложнее.

                    Читать дальше →
                  • Подробное руководство по созданию и развертыванию чата на Tornado + Telegram

                    Данное решение подойдет для небольших проектов, так как возможность параллельно вести диалог с несколькими пользователями реализована с помощью создания нового чат-бота, то есть чем больше ботов будет, тем больше людей смогут с вами связаться в один момент времени.
                    Читать дальше →
                    • +10
                    • 10.4k
                    • 4
                  • Как провести неидеальное собеседование тестировщика и почему идеальных не бывает


                      Дрейк и не знал, насколько был близок к подбору правильного тестировщика.


                      Рано или поздно может настать момент, когда к вам придут с просьбой найти тестировщика. Можно, конечно, почитать какую-нибудь литературу про тестирование – например, «Тестирование Дот Ком» Романа Савина. Да только, вполне возможно, кандидаты её тоже читали.


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

                      Первый тестировщик, как романтично...
                    • 10 шагов по решению задач в программировании

                      • Translation


                      Перевод статьи Валинды Чен.

                      Это сборник советов для разработчиков-новичков, которые смотрят на пустой экран и не знают, с чего начать. Нередко можно услышать от молодых разработчиков, работающих над решением каких-то задач в программировании, что они не уверены, за что нужно хвататься. Ты понимаешь саму задачу, логику, основы синтаксиса и так далее. Если ты видишь чей-то код, или тебе кто-то помогает, то можно всё сделать самому. Но бывает, что ты не уверен в своих силах, или поначалу тебе трудно реализовать свои мысли в коде, несмотря на то, что ты знаешь синтаксис и логику. Под катом — несколько советов по решению этой проблемы, которые помогут вам в повседневной работе.
                      Читать дальше →
                      • +17
                      • 55.3k
                      • 5
                    • Coco Framework — блокчейн по-крупному

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



                        Однако для того, чтобы стать профессиональным инструментом, блокчейн должен соответствовать жестким требованиям по производительности и безопасности, иметь хорошую репутацию и открытый код. Осознавая это, два компьютерных гиганта, Intel и Microsoft, решили «с нуля» создать принципиально новую блокчейн-систему, Coco Framework. Ее принципиальная особенность – поддержка технологии Intel Software Guard Extensions (Intel SGX) для аппаратного ограничения доступа к данным блокчейна и ускорения процесса их обработки.

                        По обещаниям разработчиков, исходный код Coco Framework будет выложен на GitHub в начале 2018 года. Под катом вы найдете инфографику о преимуществах Intel SGX с точки зрения блокчейна.
                        Читать дальше →
                      • Так сразу и не DASH: зачем мы начинаем майнить самый параноидальный альткоин

                        Изначально мы планировали майнинг DASH только как резервный вариант для мощностей, которые подготовили для майнинга Ethereum на случай, если бы эфир перешёл в PoS. Однако, стоило нам об этом упомянуть, как тут же посыпались тикеты с просьбой включить возможность майнинга Dash отдельно. И хотя выражение «по многочисленным просьбам» давно обросло бородой, по-другому и не скажешь: на этой неделе о многочисленным просьбам HashFlare открыл предзаказ годовых майнинг-контрактов X11 для добычи криптовалюты DASH, которая начнётся в сентябре.


                        На фото — та самая новая ферма в Таллине, на которой и будет майниться уже третья криптовалюта в нашем арсенале

                        По такому случаю, мы решили рассказать о ней подробнее: как самый повёрнутый на анонимности альтокин прошёл путь в пятёрку самых капитализированных криптовалют, попутно переименовавшись из Darkcoin собственно в DASH, и зачем его надо майнить.
                        Читать дальше →
                      • Набор конвертеров для Livestreet (из CMS Cogear, DLE и WordPress)

                          Набором являются три плагина:

                          Плагины позволят быстро перенести сайт в LiveStreet из CMS Cogear, DLE и WordPress (да пока всего три, но не все сразу), если ваш сайт не сильно оброс доработками и различными плагинами. А в случае достаточно развитого сайта с большим набором различных расширений, использование конвертера позволит сэкономить время на разработке конвертера под себя.
                          Читать дальше →
                        • Релиз LiveStreet 1.0.1


                            Рады сообщить о выходе багфиксной версии LiveStreet 1.0.1.

                            Список основных изменений:

                            • Возможность изменять ширину сайта, делать ее фиксированной или резиновой с ограничениями по максимальной и минимальной ширине. Параметры задаются в конфиге шаблона
                            • Возможность в настройках профиля указать часовой пояс
                            • Подтверждения смены емайла в профиле, подтверждаются как новая, так и старая почта
                            • Список активности теперь группируется по дате
                            • Тема оформления «light», которая убирает закругления и тени, включается в конфиге шаблона
                            • Автоматическая группировка пунктов в главном меню, если их много
                            • Fix XSS во всплывающих сообщениях
                            • Большое количество различных фиксов, обнаруженные после основного релиза

                            Читать дальше →
                          • Связка MODx Revolution + LiveStreet

                              Когда собирался писать свой топик, ломал голову куда же его писать? С одной стороны часть сайта написана на MODx, с другой стороны другая часть написана на LiveStreet, а с третьей стороны это такие костыли, что в пору в Ненормальное программирование писать. Оказалось, что Хабр готовился к такому повороту событий и сделал возможность писать сразу в несколько блогов, за что ему отдельный респект! :-)

                              Ну а теперь собственно к основному вопросу: В свое время я написал и запустил купонный сервис, само собой написанный на MODx Revolution (само собой, потому что я ярый любитель этого движка и что бы ни писал, всегда пишу именно на этом фреймворке).
                              Так вот, проект рос, развивался, много функционала было написано (благо MODx позволяет решить любую задачу), да вот только замыслилось мне на сайте еще и социалку-блог а-ля Хабрахабр запустить, да чтобы все наши пользователи там были, да чтобы отзывы по акциям туда же попадали, да чтобы отзывы были и в акциях, и в социалке, и чтобы и там и там их можно было комментировать и читать их в отдельной ветке все до кучи, и еще много-много чего… И когда я думал, сколько же мне понадобится времени, чтобы напрограммировать это все самому, я делался очень грусным...

                              Но вспомнил я про LiveStreet, о котором слышал давно-давно, и то, что он позиционируется как легкий и быстрый клон Хабра. И вот решил я отдельно социалку поднять на LS и увязать его с моим основным сайтом на MODx. LiveStreet установил и запустил за пару часов (это мое первое знакомство с этим движком).
                              Читать дальше →