• Favicons, Touch Icons, Tile Icons и т. д. Что выбрать?

    • Перевод
    От переводчика.
    Это перевод статьи Филипа Бернарда с сайта css-tricks.com. Часть статьи, содержащую описание работы с созданным им сервисом, я позволил себе опустить. Если вы найдете ошибки, просьба сообщить о них в личном сообщении.

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


    Фавикон был представлен в 1999 году, в Internet Explorer 5 (источник) и стандартизирован W3C несколько месяцев спустя. Это была маленькая иконка, представляющая сайт.



    С тех пор большинство настольных браузеров следуют тенденции и используют фавикон тем или иным способом. Это очень просто, не так ли? Создать маленькую картинку и добавить в любой интернет-проект, чтобы сделать его «завершённым». Ничего сложного.
    Или нет?
  • Инфраструктура разработки приложения на PhoneGap для iOS и Android

      Сегодня я расскажу вам о нашем опыте разработки кросс-платформенных мобильных приложений на основе PhoneGap/Cordova. В проекте используются такие технологии, как HTML5, CSS3 и Angular.js. Grunt применяется в качестве task manager’а, позволяющего упростить и ускорить выполнение рутинных задач. Все сборки компилируются локально во время процесса разработки.


      Источник: build.phonegap.com

      Когда версия готова к этапу тестирования, она компилируется с помощью PhoneGap Build и загружается на Ubertesters — сервис дистрибуции мобильных приложений, который позволяет проводить тестирование быстро и эффективно на всех подключенных устройствах. Приложение поддерживает минимум iOS 6 и Android 4.1 (87.5 % доля рынка).
      Читать дальше →
    • Удобоваримый вызов Java методов из нативного кода

      Существует довольно много приложений под Android, которые совмещают C++ и Java код. Где Java выступает оберткой/прослойкой, а C++ выполняет всю грязную работу. Пожалуй, ярким примером могут служить игры. В связи с этим часто приходится вызывать Java код из нативного для доступа к системным свойствам и плюшкам, которые предоставляет система (переключится на другую активность, послать или скачать что-либо из интернета). Причин много, а проблема одна: каждый раз приходится писать в лучшем случае 5 строчек кода и помнить, какую сигнатуру функции нужно запихнуть в параметр. Потом еще нужно перевести эти параметры в нужный тип. Стандартный пример из туториалов:

      long f (int n, String s, float g); 
      

      Строка-сигнатура для данного метода будет (ILjava/lang/String;F)J.

      Вам удобно это все запоминать? А переводить С-строки в jstring? Мне — нет. Мне хочется писать:

      CallStaticMethod<long>(className, “f”, 1, 1.2f); 
      

      Подробности под катом
    • 50+ лучших дополнений к Bootstrap



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

        Для статьи я подобрал наиболее полезные дополнения «на все случаи жизни».
        Читать дальше →
      • Искусственный рассвет

        Началось всё год назад. Перед Новым 2014 годом несколько пришел в упадок жизненный тонус. Процесс самокопания привел к следующей мысли:



        — А, что ж так темно-то, Господи? © День радио.

        Впрочем, для человека, живущего зимой по летнему времени — мысль вполне естественная.
        Что же делать?
      • Встраиваем бэкдор в публичный ключ RSA

        • Tutorial

        Привет, %username%!
        Когда я увидел, как это работает, сказать, что я был в шоке — ничего не сказать. Это довольно простой трюк но после прочтения этой статьи вы больше никогда не будете смотреть на RSA по-прежнему. Это не взлом RSA, это нечто, что заставит вашу паранойю очень сильно разбухнуть.
        Читать дальше →
      • Black Swift: зачем мы его сделали

          Как уважаемые хабровчане знают, вот уже почти год мы разрабатываем маленький компьютер (примерно с SD-карточку), работающий под OpenWRT, со встроенным Wi-Fi, USB, Ethernet, азартными играми и доступными женщинами. Дмитрий dzhe уже несколько раз писал про него — и, в общем, с каждым разом собирал в комментариях один и тот же вопрос: а зачем вы вообще его делаете? Ну ведь есть же Raspberry Pi, стоит он столько же, есть VoCore, Carambola, Edison, в конце концов, — зачем нужен ещё один «нанокомпьютер»?

          Пожалуй, надо наконец на этот вопрос ответить — заодно отметив этим ответом появление у нас своего корпоративного блога (спасибо, Хабр!), а также запуск отдельного веб-сайта, посвященного только этому проекту.



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

          Читать дальше →
        • OAuth: описание протокола простым и понятным языком

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

            Пример кросс-авторизации


            Вернемся в 2005-й год и представим, что мы пишем социальную сеть. В ней имеется форма импорта контактов из адресной книги GMail. Что нужно для доступа к контактам GMail? Конечно, логин и пароль от ящика. Но если мы попросим ввести их на нашем сайте, пользователь заподозрит неладное. Где гарантия, что мы не сохраняем на сервере введенные пароли? Поэтому нам хочется, чтобы пароль вводился только на сайте GMail, и после этого доступ к контактам через API GMail предоставлялся нашей социальной сети (возможно, на время).
            Под катом - повествование с примерами
          • Вход в систему по подключению определенной флешки

              Одним ужасным пятничным вечером мне стало интересно как реализован вход в систему(Windows 7) по отпечатку пальца, так часто использующийся на ноутбуках. Что меня большего всего интересовало – как сделана такая прозрачная интеграция с WinLogon(механизм входа в систему).

              С помощью знакомого я узнал что сие называется Credential Provider(по крайней мере начиная с Vista, до неё – был другой механизм). И тут-то я вспомнил что давно хотел сделать чтобы система разблокировалась при подключении одной определенной флешки. Поэтому я захотел быстренько наваять такой проект.
              читать дальше