• Я хочу, чтобы сайты открывались мгновенно

      Здравствуйте, меня зовут Александр Зеленин и я веб-разработчик. Я расскажу, как сделать так, чтобы ваш сайт открывался быстро. Очень быстро.


      Я хочу, чтобы мой сайт открывался быстро
    • Изоморфное Приложение с React и Redux

      • Перевод
      Итак, я знаю что ты любишь Todo списки, то есть, что тебе очень нравится писать Todo списки, поэтому мне хочется, чтобы ты создал один из них, используя новый, восхитительный и питательный («nutritious» прим. пер.) Flux фреймворк, Redux! Я желаю тебе только лучшего.

      В этой статье ты научишься как сконструировать свое собственное Redux приложение, не ограничиваясь, но так же включая.

      • Цельнозерновой рендеринг на сервере
      • Расширенный роутинг, богатый Omega-3
      • Маслянистая асинхронная загрузка данных
      • Гладкое функциональное послевкусие


      Если это похоже на то, чего ты хочешь в этой жизни, вперед под кат, если нет, то не заморачивайся.
      Читать дальше →
    • Catberry.js: Прогрессивный рендеринг

      • Tutorial
      image


      В предыдущей статье я рассказывал про реализацию Flux и веб-компонентов во фреймворке Catberry.js, и эта статья – обещанное продолжение про движок прогрессивного рендеринга.

      Что значит «прогрессивный»?


      Наверное, вы сталкивались хотя бы раз в жизни с JPEG-картинкой, которая сперва загружается с сервера мутной, а по мере загрузки остального содержимого становится чётче. Такой формат картинки называется "Progressive JPEG", и его основная идея – показать как можно скорее пользователю хоть какое-то содержимое, пусть и не до конца готовое. Пользователь с первой секунды уже будет знать размер картинки и ее примерное содержимое, а в дальнейшем содержимое будет становится только отчётливее.

      Лично я не знаю откуда появилась идея назвать потоковый (stream-based) рендеринг HTML прогрессивным, но первое применение этого термина именно к рендерингу HTML я нашел в статье за декабрь 2009 года "Progressive rendering via multiple flushes". Однако и в более свежих статьях, например от разработчиков Google, можно найти термин «Optimized (progressive) rendering».
      Читать дальше →
    • Сетевая безопасность, Часть 2. Next-Generation Firewall

        Если посмотреть на интерактивную карту текущих кибер-атак, происходящих в мире, в режиме реального времени, то становится очевидно, что единственное место, где нет криминальной кибер-активности на Земле – это Антарктида. 2014 год был богат на громкие взломы и утечки данных. Взлом Apple iCloud с последующим выкладыванием в сеть интимных фотографий разных известных людей, утечка данных 80 миллионов клиентов из JP Morgan, троян в Regin на компьютерах администрации ЕС, взлом eBay, взлом Home Depot, DDoS-атака на сайт Кремля, взломы сети Московского метро и т.д. Однако взлом Sony Entertainment замечателен тем, что за последние три года инфраструктура компании взломана уже как минимум третий раз. Поэтому, прежде чем говорить о современных средствах сетевой защиты, я кратко опишу стратегию реализации сетевой атаки на примере одной из самых известных атак последнего времени – атаки на Sony Pictures Entertainment 2014.

        Несколько слов о том, что, собственно, произошло. В пятницу, 21 ноября 2014 года, руководители Sony получили письмо с предложением заплатить определённую сумму за то, чтобы ИТ-инфраструктура Sony избежала «массированной бомбардировки». Письму не придали значения, у многих руководителей оно попало в спам, но уже 24 ноября 2014 года сотрудники Sony, придя в понедельник утром на работу, увидели у себя на мониторах следующую картинку:


        Большинство компьютеров и ИТ сервисов компании было неработоспособно. Как утверждают некоторые источники, в течении нескольких следующих дней сотрудники Sony не пользовались рабочими компьютерами и работали при помощи ручки и бумаги. По ходу этой атаки (считают, что скрытая фаза атаки развивалась от нескольких месяцев до года) из Sony утекли данные (по некоторым оценкам, общим объёмом до 100 терабайт) на миллионы долларов. Впоследствии хакеры выложили в сеть несколько новых, ещё не выпущенных на экраны фильмов и большое количество конфиденциальной информации, включая личные данные сотрудников. По разным оценкам, примерный совокупный ущерб от этой атаки составил порядка 100 миллионов долларов.

        Как это произошло и, главное, почему?
        Читать дальше →
        • +9
        • 28,4k
        • 8
      • Пишем свой упрощенный OpenGL на Rust — часть 2 (проволочный рендер)

          Итак, в продолжение предыдущей статьи пишу 2-ю часть, где мы попробуем добраться до того, чтобы написать проволочный рендер. Напоминаю, что цель этого цикла статей — написать сильно упрощенный аналог OpenGL на Rust. В качестве основы используется «Краткий курс компьютерной графики» от haqreu, в своих же статьях я сосредоточиваюсь больше не на графике как таковой, а на особенностях реализации при помощи Rust: возникающие проблемы и их решения, личные впечатления, полезные ресурсы для изучающих Rust. Сама получившаяся программа не имеет особенной ценности, польза от этого дела в изучении нового перспективного ЯП и основ трехмерной графики. Наконец, это занятие довольно таки увлекательно.

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


          Машинка, которую мы получим в конце статьи
          Читать дальше →
        • «Галоп пикселя — часть вторая» — перспектива, цвет, анатомия и прикладные упражнения

          • Tutorial


          «Галоп пикселя» — часть первая (линк)
          «Галоп пикселя» — часть вторая (линк)
          «Галоп пикселя» — часть третья (линк)
          «Галоп пикселя» — часть четвертая (линк)

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

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

          Не будем мешкать. Возьмем наши пиксельные лопатки и двинемся на врага сплоченной группой. Быть может, нам повезет, и кто-нибудь, выжив, расскажет потомкам о ещё одной битве Теоретического войска возле местечка, вошедшего в историю сети как Хаброва падь.


          Лопатить пиксели
        • Свой облачный хостинг за 5 минут. Часть 1: Ansible, Docker, Docker Swarm

            Cloud hosting

            Привет Хабр! Последние 1.5 года я работал над своим проектом, которому был необходим надежный облачный хостинг. До этого момента я больше 10 лет занимался веб-программированием и когда я решил построить свой хостинг у меня были относительно поверхностные знания в этой области, я и сейчас не являюсь системным администратором. Все что я буду рассказывать может выполнить обычный программист в течение 5 минут, просто запустив набор сценариев для Ansible, которые я подготовил специально для вас и выложил на GitHub.
            Читать дальше →
          • Открытые правоохранительные данные — статистика и данные по каждому преступлению

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

              Это такие направления как:
              • данные о состоянии окружающей среды: качество воздуха, состояние почвы, качество воды, результаты проверки продуктов питания, очагах болезней, загрязняющем шуме и многое другое.
              • данные о качестве образования (средние баллы ЕГЭ по школам), средние зарплаты выпускников ВУЗов и многое другое;
              • данные о качестве работы учреждений здравоохранения. Процент успешных операций на сердце, муниципальная статистика по видам болезни, данные по причинам смертности и многое другое
              • данные о деятельности правоохранительных органов. Это статистика с детальностью до подразделения и деперсонализированная информация по каждому преступлению


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

              Остановимся подробнее на правоохранительных данных.

              Их особенность такова что в разных странах по разному осуществляется выполнение правоохранительных функций. Если в России или в Великобритании полиция является единой структурой вертикального подчинения, то в США существует множество полицейских управлений на уровне отдельных штатов и отдельных графств.

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

              В США совсем недавно Барак Обама создал специальную инициативу Police Data Initiative как раз по повышению качества открытости полицейских департаментов.
              Читать дальше →
              • +18
              • 15,3k
              • 7
            • Задачи реального мира: как на практике считают надежность систем (reliability, MTTF, failure rate)?

                В предыдущей статье мы рассмотрели терминологию и математическую основу расчетов отказоустойчивости различных систем и выяснили, что на практике, когда речь идет об оценках MTTF (Mean Time To Failure — среднего времени до отказа) и других характеристик надежности, в большинстве случаев предполагается, что отказы подчиняются пуассоновской модели. Соответственно, их вероятностное описание основано на экспоненциальном распределении вероятностей.

                Этот материал будет посвящен практическим аспектам применения этой модели, причем стоит сразу оговориться, что он широко используется, как в электронике, так и в самых разных областях: например, при оценке рисков в авиационной и атомной отрасли, прогнозирования в автопроме, оценке надежности облачных сервисов в Интернете и т.п. Общим предположением, повторюсь, является гипотеза о постоянстве интенсивности отказов λ, которая, как мы увидели из предыдущей статьи, обратно пропорциональна среднему времени безотказной работы MTTF=1/λ.

                Итак, давайте для начала рассмотрим совсем простой пример: устройство, состоящее из двух элементов, для каждого из которых известны интенсивности отказов λ1 и λ2. Отказ любого из элементов приводит к отказу устройства в целом. Например, компьютер (условно) можно представить, как систему, состоящую из процессора и материнской платы. Пусть для них среднее время до отказа (MTTF) равны 2 и 3 годам (соответственно, λ1=1/2 года-1 и λ2=1/3 года-1). Какова будет оценка MTTF для компьютера, в целом? И какова вероятность отказа компьютера через 1 год после начала эксплуатации?

                Читать дальше →
              • Ionic framework. Обзор экосистемы


                  Ionic framework — один из самых широко обсуждаемых фреймворков. Как гласит официальный сайт, Ionic — это SDK для создания гибридных мобильных приложений, набор CSS и JS компонент, созданный на основе AngularJS, SASS, Apache Cordova.

                  На момент написания статьи репозиторий Ionic насчитывает 15300 звездочек, а сумма инвестиций в компанию Drifty, чьим продуктом является Ionic, уже достигла $3.7 миллиона.

                  Посмотрим, что интересного предлагает Ionic для разработчика.
                  Читать дальше →