• Learn OpenGL. Урок 4.11 — Сглаживание

    • Translation
    • Tutorial
    OGL3

    Сглаживание


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


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


    Нет, это никуда не годится. Разве такое качество изображения хочется видеть в релизной версии своего приложения?
    Читать дальше →
    • +39
    • 21.2k
    • 1
  • Модель CMMI

      Всем здравствуйте! Наконец-то я на Хабре. Постараюсь незамедлительно начать приносить пользу если не всему сообществу, то хотя бы некоторой его части:)

      Я был немало удивлён, обнаружив, что на Хабре практически нет информации о модели CMMI, если не считать пары упоминаний здесь и здесь.
      На западе уже давно крупные заказы по разработке ПО доверяются только компаниям, прошедшим сертификацию на соответствие какому-либо международному стандарту, зачастую им становится модель CMMI. Хотя сами авторы этой модели неоднократно повторяют, что это не стандарт, а всего лишь сборник рекомендаций по улучшению процессов внутри организации.

      Что такое CMMI?


      Википедия даёт следующее определение:
      Capability Maturity Model Integration (CMMI) – Комплексная модель производительности и зрелости – набор моделей (методологий) совершенствования процессов в организациях разных размеров и видов деятельности. CMMI содержит набор рекомендаций в виде практик, реализация которых, по мнению разработчиков модели, позволяет реализовать цели, необходимые для полной реализации определенных областей деятельности.

      Читать дальше →
    • Что в имени тебе моем: как качественно «пробить» человека в сети Интернет?

      Мы постоянно встречаемся в своей жизни с новыми людьми, и стоит констатировать, что помимо хороших друзей нам попадаются мутные товарищи, а иногда и отъявленные мошенники. Любовь наших сограждан оставить свой след в интернете и старания наших ИТ-компаний по автоматизации всего и вся позволяют нам довольно оперативно собирать интересующую информацию о конкретных персонах по открытым источникам. Чтобы это делать быстро и качественно, нам нужно владеть простой методологией разведывательной работы и знать, где и какую информацию о человеке можно добыть в интернете.
      Читать дальше →
    • Python: коллекции, часть 2/4: индексирование, срезы, сортировка

      • Tutorial
      Часть 1 Часть 2 Часть 3 Часть 4
      imageДанная статья является продолжением моей статьи "Python: коллекции, часть 1: классификация, общие подходы и методы, конвертация".

      В данной статье мы продолжим изучать общие принципы работы со стандартными коллекциями (модуль collections в ней не рассматривается) Python.

      Для кого: для изучающих Python и уже имеющих начальное представление о коллекциях и работе с ними, желающих систематизировать и углубить свои знания, сложить их в целостную картину.

      ОГЛАВЛЕНИЕ:


      1. Индексирование
      2. Срезы
      3. Сортировка
      Читать дальше →
    • Прямой доступ к диску из python (simhdd)

        image

        Добрый день, коллеги. Со времени написания первой статьи прошло достаточно много времени. За это время моя библиотечка для доступа к диску научилась работать со встроенными SMART-тестами и их логами а также механизмами безопасности современных накопителей.

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

          Работа ИТ-специалистов сегодня достаточно высоко оплачивается. Как и в любой сфере тут главное быть профессионалом и хорошо разбираться в своей работе и отрасли. Но сегодня мы в 1cloud постараемся выяснить, за что работодатели готовы платить большие суммы «айтишникам» и какие профессии оплачиваются выше других. Для удобства сравнения, все примеры в статье приводятся в долларах и отражают зарплату в месяц.

          Читать дальше →
        • Чистый javascript.Переменные

          • Translation
          Перевод книги Райана Макдермота clean-code-javascript.

          Оглавление:



          image
          Читать дальше →
        • Горизонтальное масштабирование. Что, зачем, когда и как?

            Александр Макаров

            Александр Макаров ( SamDark )


            Здравствуйте! Я Александр Макаров, и вы можете меня знать по фреймворку «Yii» — я один из его разработчиков. У меня также есть full-time работа — и это уже не стартап — Stay.com, который занимается путешествиями.

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

            Что такое масштабирование, вообще? Это возможность увеличить производительность проекта за минимальное время путем добавления ресурсов.

            Обычно масштабирование подразумевает не переписывание кода, а либо добавление серверов, либо наращивание ресурсов существующего. По этому типу выделяют вертикальное и горизонтальное масштабирование.
            Читать дальше →
          • Чистим домашний интернет от очень назойливой рекламы (Ad's blocker для OpenWRT)



              Дело было вечером, делать было нечего... © С. В. Михалков
              Навеяно публикацией «Как я bind`ом вирусы искал…», а конкретно этой веткой комментариев. Надеюсь, не поздно размещаю.

              Сидел я и думал, телевизор Samsung, WinPhone, (а впоследствии может кофеварка и пылесос) показывают суперназойливую рекламу, надо с этим чтото делать, и раз в WinPhone и телевизор(кофеварку, пылесос) плагина AdBlock нету, то он должен быть там где ходит их трафик, на роутере.
              Читать дальше →
            • htop и многое другое на пальцах

              • Translation


              На протяжении долгого времени я не до конца понимал htop. Я думал, что средняя загрузка [load average] в 1.0 означает, что процессор загружен на 50%, но это не совсем так. Да и потом, почему именно 1.0?

              Затем я решил во всём разобраться и написать об этом. Говорят, что лучший способ научиться новому — попытаться это объяснить.
              Читать дальше →
            • Python-шпаргалка. Часть 1 — Язык и Типы объектов

              image

              Данная статья представляет собой очень краткую, но емкую выжимку всего, что должен знать начинающий разработчик или QA-инженер о языке Python. Надеюсь, что усердие, приложенное при написании данной статьи, поможет многим подготовиться к собеседованиям на соответствующие вакансии и расширить свой IT-кругозор.

              Статью стоит воспринимать не как учебник, а как удобную шпаргалку или «опорный сигнал» (так моя учительница истории называла подобное «творчество» в школе). Здесь не будет подробных определений, объяснений в целую главу, а лишь четкие термины, списки, краткие выжимки кода. Статья основана на замечательной книге Марка Лутца «Изучаем Python (5-е издание)», так что за её корректность и достоверность можете не переживать. Итак, начнем.
              Читать дальше →
            • Nano: И всё-таки его придётся выучить [2]

                Продолжаем. Предыдущий топик (навигация по тексту): тут.

                Сегодняшняя тема — работа с выделением, копирование и удаление кусков текста.

                Для понимания принципов команд работы с текстом нужно сначала понять принцип выделения текста. Он осуществляется либо мышью, либо с клавиатуры. С клавиатуры выделение происходит так: сначала отмечается начало выделение: Alt-A или Ctrl-^. Далее следует навигация — и до момента выполнения действия над текстом в буффере, выделение сохраняется (обратите внимание, выделение сохраняется даже при вводе текста, в этом оно сильно отличается от выделения в gui-приложениях windows и ближе к persistent blocks в TurboC, DN и соответствующей опции Far Manager'а).

                Обратите внимание, применимы все функции навигации, включая переход по номеру строки или поиск (в следующих выпусках).

                Далее выделенный текст можно удалить или скопировать в буффер. Это делает комбинация Ctrl-K (или F9).

                Выделенный текст можно скопировать в буффер обмена — комбинация Alt-6 (да, мы ЛЮБИМ nano).

                Далее мы можем вставить текст из буффера обмена — Ctrl-U или F10. Обратите внимание — в подсказке снизу написана неправда, это не отмена удаления, это вставка.

                Читать дальше →
              • Честный обзор накопителя OCZ Trion 150

                  Не так давно в блоге OCZ был обзор накопителя Trion 100, а сегодня передо мной оказалась его обновленная версия — Trion 150. Как и прежде, накопитель позиционируется в бюджетный сектор со всеми сопутствующими: не хватает звезд с неба, простота изготовления, низкая цена. В московской рознице купить 150-й можно за 5500, 10500 и 20500 рублей (256, 480 и 960 Гбайт соответственно). Что же получает пользователь в обмен на кровно заработанные? Давайте рассмотрим во всех подробностях.

                  Читать дальше →
                • «Щадящая» балансировка между несколькими провайдерами на офисном шлюзе

                  • Tutorial
                  Эта статья описывает конфигурацию шлюза под управлением Linux для балансировки трафика между каналами разных провайдеров.


                  Результат, достигаемый в этом руководстве, отличается от результата подобных руководств: для каждого клиента используется один и тот же внешний IP-адрес, что избавляет от проблем с интернет-сервисами, которые не готовы к смене IP-адреса клиента в рамках одной сессии.
                  Читать дальше →
                • Выбираем ультрабук на Windows 10 за 200-250$ от VOYO

                    Изучая ультрабуки, я обнаружил, что на рынке ноутбуков-трансформеров правит компания VOYO. Все продукты в этой линейке похожи, однако каждый может подобрать конфигурацию под себя, то есть определить подходящий размер экрана (10.1", 11.6" или 13.3") и необходимость различных функций, вроде поддержки LTE (4G) или качества фронтальной камеры. На выбор представлено 6 моделей с очень похожими названиями, так что разбираться будем опять со сравнительными табличками. Поехали.

                    image
                    Читать дальше →
                  • Альтернативы Raspberry Pi

                      Когда речь заходит об одноплатных компьютерах (single-board computer), вероятно, первым на ум приходит именно Raspberry Pi. Тем более, что недавно вышла третья «малина», которая шустрее и мощнее предыдущих версий. Крохотные компьютеры этой линейки, изначально предназначавшиеся под обучение информатике, способны делать много чего интересного. Эта «машинка» может стать метеостанцией на солнечной энергии, управляющим центром «умного дома», игровой приставкой для любителей 8-битной классики и даже сердцем радиоуправляемых моделей. Тут все зависит от фантазии, желания и прямоты рук.



                      Но несмотря на все свои особенности и преимущества, Raspberry Pi конечно же несовершенен. На рынке одноплатных компьютеров есть и другие модели. Ниже представлена подборка альтернатив RPi, заслуживающих внимания.

                      Читать дальше →
                    • Sublime Text: валидация синтаксиса, автодополнение (v.1.1)

                        UPD: по совету комментаторов, заменил jsl на более новый eslint

                        Заметил у себя на работе, что многие JS-разработчики до сих пор используют «голый» Sublime Text, матерясь и чертыхаясь после каждой пропущенной запятой, непарной скобочки или еще какой опечатки. Поэтому написал краткий гайд по исправлению этого недоразумения, которым с вами и делюсь. Итак:
                        Читать дальше →
                        • +6
                        • 27.8k
                        • 9
                      • Selenium для Python. Глава 6. Объекты Страницы

                        • Tutorial
                        Продолжение перевода неофициальной документации Selenium для Python.
                        Оригинал можно найти здесь.

                        Содержание:


                        1. Установка
                        2. Первые шаги
                        3. Навигация
                        4. Поиск элементов
                        5. Ожидания
                        6. Объекты Страницы
                        7. WebDriver API
                        8. Приложение: Часто Задаваемые Вопросы

                        6. Объекты страницы


                        Этот раздел является введением в руководство по паттернам проектирования объектов страницы. Объект страницы представляет собой область пользовательского интерфейса в веб-приложении, с которой будет взаимодействовать ваш тест.

                        Плюсы использования паттернов объектов страницы:

                        • Создание многократно используемого кода, который может быть использован среди множества тест-кейсов
                        • Уменьшение количества дублируемого кода
                        • Если интерфейс пользователя изменяется, требуется правка всего в одном месте

                        Читать дальше →
                      • Подборка: Более 70 источников по машинному обучению для начинающих



                          Индикатор кулачкового аналогового компьютера / Wiki

                          В нашем блоге мы уже рассказывали о разработке системы квантовой связи и о том, как из простых студентов готовят продвинутых программистов. Сегодня мы решили вернуться к теме машинного обучения и привести адаптированную (источник) подборку полезных материалов.
                          Читать дальше →