• Нейронные сети для чайников. Сеть Кохонена

    В статье Нейросети для чайников. Начало автор Paul_Smith доступно показал насколько просто создать нейронную сеть для распознования картинок. Но есть одно но — то что он описал нейронной сетью не является. Перед его следующей статьей хочу рассказать вам как решить ту же задачу, но с использованием нейронной сети Кохонена.

    Итак, распознавать мы будем цифры, написанные белым по черному, такие как эти:
    image image image image image image
    Читать дальше →
  • Валидация CSS в Visual Studio 2010 с помощью расширения CSSCop

      Задача проверки файлов определения CSS-стилей, поиска в них ошибок и нарушений рекомендаций работы со стилями стала еще легче с новым расширением CSSCop для Visual Studio 2010 (название дано по аналогии с анализатором кода FxCop).

      image

      После установки расширения выберите требуемый для анализа файл CSS и в контекстно меню нажмите пункт “Run CSSCop”.

      Читать дальше →
    • Как правильно сортировать контент на основе оценок пользователей

      • Перевод


      В оригинале название звучит как «How Not To Sort By Average Rating». Я подумал, что дословный перевод «Как не сортировать по усреднённому рейтингу» будет малопонятен и хуже отражает содержание статьи.

      Постановка проблемы


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

      Неправильное решение №1

      Рейтинг= (Число положительных оценок) - (Число отрицательных оценок)
      

      Читать дальше →
    • Введение в CSS3 Multicolumn. Работаем с колонками

      • Tutorial
      apples

      Как расположить текст на странице в несколько колонок? И можно ли это делать автоматически? Наверняка, многие из тех из вас, кто занимается или занимался раньше веб-разработкой, сталкивались с такой задачей — и часто упирались в сложные решения, требующие хитрых стилей, либо применения дополнительных библиотек на JavaScript (см. например Columnizer-плагин для jQuery).

      Многоколоночная верстка контента (не путать с задачей общей многоколоночной верстки страницы, которая скорее ближе к проблеме расположения блоков по сетке) долго пробивала себе дорогу в мире веб-стандартов и, наконец-то, не просто достигла статуса Candidate Recommendation в виде соответствующего модуля CSS3 Multi-column Layout, но и получила достаточно широкую поддержку в браузерах: где-то с префиксами (-moz- или -webkit-) и где-то в актуальных (Opera 11.1+) и планируемых версиях (IE10+), причем сразу без префиксов.
      Читать дальше →
    • REST vs SOAP. Часть 1. Почувствуйте разницу

      Некоторое время назад я гуглил интернет по поводу “REST vs SOAP”, прочитал пару статей и вроде бы все понял, но не почувствовал от этого никакого удовлетворения. Что-то было не так, то ли я не почувствовал основную идею, то ли просто читал, одновременно слушая новый музон и думая о новой фиче в проекте. Как появилось время, решил восполнить этот пробел, заодно написав полезную статью по этому поводу.
      Читать дальше →
    • TodoMVC — «Hello, world» на стероидах

      • Tutorial
      Cуществует уже несколько десятков JavaScript-фреймворков для построения сложных приложений в браузере. Чтобы сравнить их между собой и выбрать наиболее подходящий, примитивного примера вроде классического «Hello, world» явно недостаточно. Более сложные и реалистичные примеры программ в книгах и документации каждого фреймворка могут сильно отличаться, и сравнивать их между собой затруднительно. Проект TodoMVC решает именно эту проблему. Это набор примеров реализации одного и того же простого, но вполне законченного веб-приложения с использованием разных фреймворков + эталонный пример на чистом JavaScript.

      Приложение TodoMVC — это список дел. Дела можно добавлять, помечать как выполненные и удалять. Список должен сохраняться в локальном хранилище браузера. Приложение должно по возможности использовать стандартный шаблон HTML и CSS. Вот подробная спецификация приложения.
      Читать дальше →
    • Как сделать хороший промо-ролик для стартапа. Часть 1. Проблема-решение

        image

        Вы прошли долгий и трудный путь от идеи до реализации вашего проекта. Стадия закрытого тестирования завершена, и вы готовы презентовать ваше детище миру. Главным и какое-то время единственным рекламоносителем вашего проекта может стать промо-ролик. Его можно выложить на YouTube и в социальных сетях, разослать партнёрам и инвесторам, разместить на главной странице сайта, сопроводить им пресс-релиз для СМИ или оживить выступление на конференции.

        Цель промо-ролика: кратко и понятно рассказать про суть и ценность проекта, заинтересовывать целевую аудиторию и побудить стать пользователем.

        Как сделать хороший ролик, который досмотрят до конца? Как сделать так, чтобы ролик вызвал улыбку, интерес, желание ознакомиться с проектом поближе? Универсальных рецептов нет, но есть отработанные сюжетные схемы, а также грабли, на которые до вас уже наступали много раз.
        Читать дальше →
      • Создаём parallax scrolling эффект с помощью jQuery и CSS

        • Перевод
        В последнее время, сайты с parallax scrolling эффектом стали появляться повсюду. Я не хотел это пропускать, поэтому я создал демонстрационную страницу с parallax scrolling эффектом с помощью jQuery и CSS.


        Читать дальше →
      • Простой parallax эффект для промо-сайта

          В последнем проекте который состоял всего из одной странички, потребовалось реализовать простой эффект, суть которого лучше понять на примере #1 и #2.

          Поскольку времени для реализации было достаточно, и долгое время таится желание написать хоть что-то, что может помочь другим разработчикам. Оформил все это дело в совсем малюсенький и простой plugin для jquery. Надеюсь, теперь этот код могут прочесть не только я и мой кот Борис, если же это и вовсе кому-то поможет в работе то я совсем не против использования его в ваших проектах, изменения копирования редактирования и т.д.
          Читать дальше →
        • Знакомство с Parallax Scrolling

          • Перевод
          Любой, кто играл или наблюдал за игрой друзей, либо в принципе видел игры, которые были выпущены в 80-90-х годах, должны быть знакомы с техникой параллакс-скроллинга.

          Вспомните такие игры, как Mario Bros, Streets of Rage, Mortal Kombat, Turtles in Time или оригинальную игру Moon Patrol. В этих играх техника параллакса наблюдается в тот момент, когда несколько фоновых слоев с различными текстурами двигаются с разной скоростью, что создает эффект трехмерного пространства.

          Почему я начал говорить о ретро-играх в статье о веб-разработке? Самым простым ответом мог бы быть «потому что они клевые», но нет. Параллакс-скроллинг является классным дизайнерским концептом, который прокладывает свой путь в мир веб-дизайна. Nike были одними из первых, кто использовал эту технику с большим успехом, когда они наняли маркетинговых гигантов Weiden and Kennedy для разработки их оригинального сайта Nike Better World. Сайт Nike Better World с того времени был обновлен и заменен на новый, однако есть другой сайт, довольно похожий на то, как выглядел первый параллакс-дизайн от Nike — сайт о спортивных напитках Activate.


          Читать дальше →
        • Постигаем Git

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

          Если вы не понимаете, что побудило сделать git именно таким, то вас ждут страдания. Используя множество флагов (--flag), вы сможете заставить git работать так, как по вашему мнению он должен работать, вместо того, чтобы работать так, как git того хочет. Это как забивать гвозди отверткой. Работа делается, но хуже, медленнее, да и отвертка портится.
          Читать дальше →
        • Переводим в код 5 действительно полезных шаблонов адаптивной разметки

            Приветствую всех.

            Недавно наш хабраколлега опубликовал интересную статью об адаптивной разметке.
            Уже не далеко то время, когда мы будем уделять верстке под все разрешения намного больше внимания, нежели делаем это сейчас. Посему считаю нужным подходить к этому периоду подкованным в данном вопросе, ну или хотя бы иметь четкое представление, что это такое и с чем его едят. Запасаемся смартфонами и таблетками.
            Читать дальше →
          • Kickstrap — форк Twitter Bootstrap с темами и бонусами

              image
              Kickstrap это то, что будет если соединить Twitter Bootstrap, HTML5 Boilerplate, значки от IcoMoon и Font Awesome, добавить проверенные jQuery плагины Chosen и jGrowl, включить поддержку разных цветовых схем и тем оформления Bootswatch, дополнительную CSS сетку и вменяемую поддержку ранних версий IE.
              Читать дальше →
            • Восемь принципов программирования, которые могут облегчить вам жизнь

                Одна из главных проблем в разработке программного обеспечения – борьба с возрастающей сложностью системы. Решением этой проблемы занимаются с времен появления первых программ. Результатами являются языки, всё более упрощающие взаимодействие с машиной, парадигмы программирования вроде ООП, паттерны. В этой статье будут рассмотрены принципы программирования, позволяющие уменьшить сложность и облегчить сопровождение системы.
                Читать дальше →
              • jQuery File Upload

                  Ура! Еще один, свеженький… чем он лучше других?



                  а) Новенький! Всегда, кто берется что-то делать, то обычно смотрит: есть ли в этом смысл, и если есть — делает это.
                  б) Красивенький! Можно не точить, а ставить из коробки. Основан на Bootstrap'е и иконках Glyphicons
                  в) Само собой мультиселект файлов, Drag&drop, прогрессбар и превьюшки фотографий.
                  г) Поддержка кросдоменного соединения, докачка и ресайз фоток на стороне клиента.
                  д) Готов для любой платформы сервера (PHP, Python, Ruby on Rails, Java, Node.js, и тому подобное.)

                  blueimp.github.com/jQuery-File-Upload

                  Поддержка браузеров:

                  github.com/blueimp/jQuery-File-Upload/wiki/Browser-support

                  Читать дальше →
                • Как прокачивать мозг

                    В этой теме я хочу поделиться своими знаниями про устройство мозга и тем, как применяю это на практике.

                    Не правда ли, картинка объемна?

                    Итак, как известно, мозг — важнейший орган нашего тела. Кто-то говорит, что он — самая сложная вещь во вселенной. И незнание некоторых его особенностей может очень плачевно сказать на жизни человека.

                    Но обо всем по порядку.

                    Понимание роли мозга


                    Нет невежества страшнее, чем невежество по отношению к самому себе.

                    Мозг управляет почти всем в нашем организме — от дыхания, работы органов чувств до сложных мыслительных процессов и воображения. Существует множество методик и советов по развитию, однако, как я убедился, мало какие делают упор на роль мозга в процессе.
                    Читать дальше →
                  • Изучить C# за 30 дней

                      Доброго времени суток!



                      Недавно в сети Tuts+ Premium был анонсирован новый курс под названием "30 Days to Learn C#". Его целью является обучение новоиспечённых программистов языку C#, разработанному компанией Microsoft, а также работе с платформой .NET. Этот курс, разумеется, не сделает из вас настоящего профессионала, а всего-лишь произведёт первое знакомство с языком и платформой в целом. Курс охватывает следующие темы:
                      Читать дальше →
                    • ikSelect — идеальный плагин для стилизации селектов

                        Около года назад, я уже делал подробный обзор jQuery-плагинов для стилизации селектов. Итог остался неутешительным, у каждого из них были свои недостатки, и я так и не смог найти то, что хотел. В комментариях отписалось довольно много разработчиков, но все мы сошлись на том, что идеального плагина нет, и что над любым из них приходится хорошо поработать напильником.

                        Недавно на хабре проскакивал Selectik — довольно неплохой плагин, но не без недостатков. Работа над ним, судя по GitHub, ещё идёт, но пока он не очень удобен, и его основные проблемы ещё имеют место быть.

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

                        В двух словах: он умеет практически всё, что умеет стандартный селект, при этом отлично стилизируется и подстраивается под особенности реализации селектов разных браузеров. Плагин полностью копирует внешний вид родного селекта Mac OS X, но его без проблем можно стилизировать через css.

                        Вот так он выглядит в закрытом виде:

                        Вот так в открытом:
                        Чем же он лучше остальных?
                      • Самый большой в мире класс по изучению jQuery

                          Доброго времени суток!

                          Не так давно я опубликовал статью о наборе учеников для ознакомления с прекрасным скринкастом под названием Learn jQuery in 30 Days, который недавно удачно преодолел отметку в 40000 учеников.
                          Если вы по какой-либо причине (например, отсутствие свободного времени) не смогли ознакомиться со скринкастом, то не стоит волноваться, так как после того, как будет опубликован последний урок, курс продолжит своё существование и вы сможете начать обучение в удобное для вас время.
                          На данный момент количество учеников составляет 41358 человек. Спешите к ним присоединиться. Чтобы сделать это, вам необходимо оставить адрес своей электронной почты на странице курса Learn jQuery in 30 Days.
                          Читать дальше →
                        • Morris.js: средство рисования красивых графиков при помощи jQuery и Raphaël

                          • Tutorial
                          В позавчерашнем выпуске «Mozilla Hacks Weekly» увидал гиперссылку «Morris.js», пошёл по ней, почитал, порадовался — а теперь и вам поведаю.

                          Morris — это легковесный джаваскрипт (всего-то 3052 байта после миниатюризации) с открытым исходным кодом (распространяемым по упрощённой лицензии BSD), который для работы требует jQuery и Raphaël и строит с их помощью графики на простой сетке горизонтальных линий, наподобие такого:

                          [график]

                          По оси абсцисс откладывается время, по оси ординат — какие-нибудь зависящие от времени значения. (Morris изначально разрабатывался для сайта, показывающего общее число автомашин той или иной марки в Великобритании, так что для него естественно, что ось абсцисс — это ось времени.)

                          Графики реагируют на мышь: вспучиваются точки, соответствующие указанному мышью моменту во времени, и подле них появляются подсказки.

                          Достоинство скрипта — простота API. Приведённый мною пример создаётся вот таким вызовом:

                          // поквартальные данные, тонкие линии, цвета их заданы в явном виде
                          Morris.Line({
                            element: 'quarterly',
                            data: [
                              {q: '2009 Q3', a: 100, b: 75},
                              {q: '2010 Q2', a: 75, b: 50},
                              {q: '2010 Q3', a: 75, b: 50},
                              {q: '2011 Q1', a: 50, b: 25},
                              {q: '2011 Q3', a: 50, b: 25},
                              {q: '2011 Q4', a: 75, b: 50},
                              {q: '2012 Q2', a: 100, b: 75}
                            ],
                            xkey: 'q',
                            ykeys: ['a', 'b'],
                            labels: ['Series A', 'Series B'],
                            lineColors: ['#167f39','#044c29'],
                            lineWidth: 2
                          });

                          Читать дальше →