• 250 строк кода, распознающих дату на русском языке

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



      Пример и код в jsFiddle.
      Читать дальше →
    • Используя силу JS во всех аспектах веб-проекта

        Привет хабр! Хочу представить вам мой проект над которым я работал последние несколько месяцев. Это небольшой пост о том как в одиночку и без денег имея в запасе знание JS разработать небольшой веб проект, плагины для нескольких браузеров и мобильную версию к нему.

        image

        Предисловие


        Меня всегда удручали закладки браузера или любые другие сервисы своей не информативностью. Довольно затруднительно найти нужную ссылку имея только фавиконку и заголовок. А если нужно найти конкретное видео или картинку в разросшейся коллекции закладок?
        Одно время я просто сохранял URL-ы в txt файл, вел скрытую группу Вконтакте, делал заметки в Evernote, пользовался кучей сервисов. Все это привело меня к созданию Raindrop.io.

        Под катом подробности и немного закулисья.
        Читать дальше →
      • Крошечный Excel на чистом JavaScript (30 строк кода)

        • Translation
        Особенности:
        • Около 30 строк обычного JavaScript
        • Использованные библиотеки: отсутствуют
        • Синтаксис как в Excel (формулы начинаются с "=")
        • Поддерживаются произвольные выражения(=A1+B2*C3)
        • Обнаруживаются циклические ссылки
        • Автоматическое сохранение в localStorage

        image
        Читать дальше →
      • Фабрика виджетов jQuery UI

        • Translation
        • Tutorial
        Все jQuery UI виджеты создаются на простой основе — Фабрике Виджетов. Она обеспечивает гибкую основу для создания сложных, структурированных плагинов с совместимым API. С её помощью можно создавать не только плагины jQuery UI, но и любые объектно-ориентированные компоненты, не изобретая велосипедов. Она не зависит от других компонентов jQuery UI, наоборот, большая часть компонентов UI зависит от неё.

        Что это?


        Фабрика виджетов это метод глобального объекта jQuery —
        jQuery.widget
      • Базовая архитектура веб-приложения на Backbone.js

          Разработчики часто просят рассказать о моём опыте использования Backbone.
          Многие слышали об этом MVC-фреймворке, смотрели примеры и документацию, но не решаются начать с ним работать. Поэтому вчера я сделал мини-доклад на встрече MoscowJS, призванный рассказать о том, как мы построили базовую архитектуру и какие получили плюсы. И сегодня в этой статье я публикую слайды, схемы и краткое описание.


          Читать дальше →
        • Как сделать хороший промо-ролик для стартапа. Часть 2. С места в карьер

            image

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

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

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

            Камера! Мотор!
            Читать дальше →
            • +21
            • 4.7k
            • 5
          • Хорошая альтернатива тарифным пакетам



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

              Казалось бы, это хорошее решение — как для клиента, так и для разработчика, т.к. в тарифных пакетах каждый клиент находит свое оптимальное соотношение цена/возможности, а владелец сервиса таким образом лучше удовлетворяет спрос и максимизирует прибыль.
              Читать дальше →
            • Архитектура взаимодействия клиентской и серверной частей Web приложения

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

              Читать дальше →
            • Проблемы сжатия и объединения Javascript

                сжатие текстовых файловПосле публикации ряда заметок на тему сжатия и объединения JavaScirpt-файлов стоит все же осветить наиболее характерные проблемы этого самого сжатия и объединения.

                Начнем с простого: как JS-сжатие способно испортить нам настроение. И как его поднять обратно :)

                UPD стартовал конкурс ускорения сайтов. В призах: монитор, веб-камера, мышь. Все гипер-быстрое.
                Читать дальше →
              • Топ-10 советов о том, как увеличить скорость загрузки страницы

                  Я думаю ни для кого не секрет, что скорость загрузки страницы влияет на множество факторов. Если кто-то не в курсе, то вкратце скажу следующее, что скорость загрузки влияет не только на то, дождется ли посетитель, когда загрузится Ваш сайт, но и на SEO оптимизацию. Ведь на сегодняшний день уже многие поисковые системы при ранжировании сайтов, начали учитывать скорость загрузки страницы. Поэтому чем быстрее будет грузиться Ваш сайт, тем больше посетителей Вы можете получить с поисковых систем, а, следовательно, и больше денег на этом заработать.

                  Поэтому в этой статья я решил собрать топ-10 советов о том, как же можно увеличить скорость загрузки веб-странички и сайта в целом. Статья не претендует на гениальность и рассчитана на новичков.
                  Читать дальше →
                • Lily — модуль для управления пользователями с авторизацией через различные сервисы

                    Думаю, редкий человек, следящий за блоком Yii на хабре, не видел статью об экстеншене для авторизации через социальные сети EAuth. Сегодня я хочу представить в некотором роде продолжение этой темы, а именно модуль для управления пользователями, основанном на вышеупомянутом дополнении.
                    Читать дальше →
                  • Проверка соблюдения стандартов кодирования РHP через git

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

                    Для того чтобы наказать говнокодеров облегчить страдания тех, кто делает ревью кода, можно использовать автоматические средства проверки кода, которые всем давно известны. Это PEAR и PHP Code Sniffer.
                    Читать дальше →
                  • TimeTracker — следим за временем

                      image

                      Месяц назад я решил, что буду поступать в магистратуру. Для поступления требуется сдать три экзамена: Логика, Информатика, Английский. Я создал для себя расписание на неделю и распределил подготовку по дням. Но вскоре заметил, что не успеваю заниматься ни по одному из предметов. Тут я и решил отслеживать на что я трачу свое время. Поискав в маркете, я не нашел ничего дельного, что могло бы решить мою проблему. Нужно было мне совсем не много.
                      Читать дальше →
                    • «Загадочные отступы» между инлайн-элементами

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

                        В этой статье мы попытаемся понять, что же из себя представляют эти загадочные "Отступы", что это за звери и с чем их едят. Так же рассмотрим, что такое inline-block, и почему после себя он ставит эти непонятные интервалы. Ну, и, самое главное, мы увидим несколько универсальных решений данного вопроса и, конечно же, обсудим все их стороны.
                        Читать дальше →
                      • Техническое задание на сайт

                          UPD: Продолжение статьи с примером техзадания

                          Не так давно на хабре были две статьи (Согласно техническому заданию и А зачем мне ТЗ? Я и так знаю!) посвященные техническим заданиям. У меня обе статьи вызвали, мягко говоря, недоумение, в особенности статья «Согласно техническому заданию». На мой взгляд, это вообще вредная статья, которая приводит к неверному понимаю сути ТЗ. В связи с этим хочу выразить свой взгляд на этот вопрос. Не буду говорить обо всех тех. заданиях, слишком широка тема, но думаю смогу рассказать о ТЗ на сайт.

                          То описание технического задания, о котором речь пойдет ниже, не является пересказом ГОСТа, но скорее является его творческой переработкой, хорошо сдобренной горьким опытом. Описанный ниже подход к ТЗ не охватывает все аспекты сайтостроения, но задает общее направление.

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

                          1. Обоснование необходимости ТЗ


                          А зачем вообще нужно ТЗ на сайт? Заказчик говорит: «Нужен следующий сайт: каталог товаров, корзина, форма заказа, доставка, мы на карте, о нас, обратная связь». Что не ясно? Ничего необычного, всё обыденно и рутинно.

                          Разработчик отчетливо представляет, что нужно сделать, а сделать, в его понимании нужно вот так:



                          Далее много букв
                        • Техническое задание на сайт. Практика



                            В комментариях к статье Техническое задание на сайт зашел разговор о шаблоне для техзадания и, собственно, примере ТЗ, составленного по описанным в статье принципам. Там я пообещал показать, и шаблон, и само ТЗ.

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

                            Много текста и картинок
                          • Сервис для более эффективного пополнения запаса английских слов

                              Добрый день!

                              Я хочу представить небольшой сервис, который создан, чтобы помочь в эффективном пополнении словарного запаса для английского языка:

                              image

                              Если коротко, работает он следующим образом.

                              1. Вы загружаете текст, который хотите прочитать. Это может быть URL статьи из интернета, книга или статья в pdf, doc, txt, ps или субтитры.

                              2. Система строит статистику слов и отображает слова, отсортированные по частоте употребляемости в тексте. Предварительно к словам применяется лемматизация (т. е. слова make и made будут считаться идентичными).

                              3. Вы отмечаете знакомые слова, а также слова, которые надо изучить.

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

                              А теперь чуть подробнее
                            • Сам себе пиарщик. Писатели и спикеры



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

                                Даже если у компании совсем нет денег, инструменты условно-бесплатного пиара есть всегда. Я называю их бесплатными условно, потому что на пиар всё равно придётся потратить какое-то время. Первое на что стоит потратить время – выявление талантливых и способных членов команды.
                                Читать дальше →