• Tips & tricks for MySQL Developers. Работа с SQL

    • Tutorial

    Эта статья задумана мной как сборник некоторых интересных моментов по использованию и оптимизации SQL запросов в БД MySQL, на мой взгляд, плохо освещенных в интернете. Так, из статьи вы узнаете о конструкции with rollup, и о том, как переписать подзапросы in и not in на join'ы, а так же обновление и удаление данных в нескольких таблицах — одним запросом, и многое другое. Начнем по порядку.
    Читать дальше →
  • Как ускорить разработку вашего проекта вместе с COLT?

      image

      Компания CodeOrchestra выпустила новую версию своего революционного инструмента для ливкодинга — COLT. Разработчики добавили поддержку JS и сделали новый интерфейс на JavaFX платформе.
      В первой части статьи я подробнее расскажу про кольт, а во второй поделюсь опытом использования этого замечательного продукта на боевом и технически сложном проекте.
      Читать дальше →
    • Верстка писем, набор сниппетов



        Автор изображения MVBen

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

        В ходе работ у меня накопилось немного готовых решений, которые я сам ныне держу у себя под рукой и крайне часто использую, чем и с вами хочу поделиться.
        Читать дальше →
      • NodeJS Cluster-hub. Обмен сообщениями в cluster, запросы, межпроцессные эксклюзивные блокировки (критические секции)

          Работая в очередной раз с модулем cluster, я столкнулся с необходимостью обмена сообщениями между рабочими процессами. К сожалению стандартный функционал модуля позволяет отправлять сообщения только с master процесса на worker, и в обратном направлении. При этом нет возможности получить какой-то ответ на сообщение, а очень хотелось бы. Поэтому я написал модуль cluster-hub. Возможно кому-нибудь он пригодится.

          Модуль позволяет
          • Отправлять сообщения master->worker, worker->master, master->master
          • Отправлять запросы и получать ответы (через callback)
          • Использовать эксклюзивные блокировки по ключу (критические секции)


          Кому интересно — прошу под кат.
          Читать дальше →
          • +19
          • 5.5k
          • 7
        • Управление загрузкой изображений

          • Translation
          • Tutorial


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

          Использование контейнера для каждого изображения


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

          <div class="img_wrapper">
              <img src="comicbookguy.jpg" alt=""/>
          </div>
          

          С помощью контейнера можно контролировать соотношение сторон картинки, а также использовать индикатор загрузки, что очень удобно, если изображения тяжелые.
          Читать дальше →
        • Использование Drag&Drop в HTML 5

          • Tutorial


          Долгое время для создания Drag&Drop функционала использовались JavaScript-функции, однако браузеры не всегда корректно могли отображать результат. В HTML 5 есть способ грамотной поддержки Drag&Drop, с небольшим применением JavaScript. В этой статье подробно разобран наглядный пример применения Drag&Drop в HTML 5.

          Поддержка браузерами


          На сегодняшний день функция Drag&Drop в HTML 5 корректно обрабатывается всеми современными настольными браузерами, (частично даже IE 5.5!), однако мобильные такую возможность не поддерживают. Подробнее данные в таблице caniuse.com.
          Читать дальше →
        • Crossfilter.js, dc.js и D3.js для визуализации Данных

            Приветствую ценителей красивой и функциональной визуализации данных! Предлагаю вашему вниманию небольшой обзор нескольких JavaScript библиотек, которые вкупе с D3.js позволят создать интерактивную визуализацию многомерных данных с возможностью применения фильтрации «на лету».


            Заинтересовались, тогда добро пожаловать под кат.
            Читать дальше →
          • Prepros: open-source компилятор файлов для front-end разработки



              Здравствуйте, уважаемые Хабражители.

              Данная статья посвящена фантастическому, на мой взгляд, open-source приложению Prepros, которое может облегчить рабочий процесс многим фронт-энд разработчикам.

              Prepros умеет компилировать файлы LESS, Sass, SCSS, Stylus, Jade, Slim, Coffeescript, LiveScript, Haml и Markdown, минифицировать и объединять в один JavaScript-файлы и это еще не все.

              Под катом — более подробный обзор приложения.

              Читать дальше →
            • Final Term: новый взгляд на терминал

                image

                Встречайте концепт нового эмулятора терминала для GNU/Linux — Final Term (http://finalterm.org).

                Краткий список нововведений выглядит следующим образом: семантические контекстные (текстовые) меню, «умное» автодополнение, возможность создания собственных сочетаний хоткеев.
                Читать дальше →
              • Автодополнение SQL кода прямо в редакторе PHPStorm

                • Tutorial
                В PHPStorm есть встроенная возможность подключения автодополнения имен таблиц и полей в редакторе кода, однако не все об этом знают.



                Если у вас код отображается примерно так, то прошу под кат.
                Читать дальше →
              • Silicone Skeleton — настроенный Silex


                  Если вы не один раз начинали новые проекты с использованием Silex, то вы знаете что каждый раз в начале нужно настроить его под себя: добавить провайдеры, переопределить некоторые сервисы, определить структуру каталогов, и т.д. Со временем у вас появляется базовый набор для Silex которые вы используете для создания нового проекта.
                  Но если у вас его нету, предлагаю вам ознакомиться с моим: Silicone Skeleton.
                  Читать дальше →
                • Создание огроооомных приложений на AngularJS

                  • Translation
                  • Tutorial
                  Документация по Ангуляру отлично подходит для начала работы и ковыряния в API. Однако, она не объясняет как организовать и управлять приложением, когда оно разрастется до десятков или сотен тысяч строк кода. Я собрал здесь некоторые из моих наблюдений и передового опыта по управлению расползающимися приложениями. Сначала взглянем на организацию, затем перейдем к некоторым советам по улучшению производительности и закончим краткой сводкой по инструментам, серверам и процессу сборки. Этот пост будет сосредоточен на больших приложениях, в частности, есть отличная статья по лучшим практикам AngularJS с декабрьской встречи, на которую также стоит взглянуть.
                  Читать дальше →
                • Как я писал Bomberman’а на Android

                    День добрый, уважаемые хабражители.
                    Писать игры хотел ещё с того момента, когда только начал программировать. И вот, решил всё-таки попробовать себя в написании игр на Android.
                    Игру осенью сделал ещё и выложил в маркет. Правда её удалили, так как права на Bomberman'а у Konami. Но статья, естественно, не об этом.

                    Параллельно с разработкой игры писал туториалы по LibGDX, и постоянно люди просили выложить исходники. Решил всё-таки поделиться ими и немного рассказать про разработку. Может кому-нибудь и поможет в изучении LibGDX. Ссылка на репозиторий с исходниками внизу статьи.

                    Читать дальше →
                  • N+1 полезная книга для бизнеса: часть 3



                      Привет!
                      Прошлые два обзора полезных книг за 2010 и 2011 год собрали просто адовое количество закладок, поэтому я продолжу. Прошел ещё год, ещё около 250 прочитанных книг – и вот самые интересные под катом.

                      Кто сказал, что слоны не умеют танцевать? Возрождение корпорации IBM: взгляд изнутри (Герстнер Луис)


                      Отличная книга про то, как удалось восстановить IBM. То, что со стороны выглядело как бессистемное перемещение активов и последовательность приказов без особого смысла, через несколько лет начало складываться в единую систему.

                      Догнать зайца (Стивен Спир)


                      Отличная книга про дебаг производственных процессов. Одна из основных вещей – то, что все серьёзные проблемы возникают из-за сочетания некритичных багов. Есть примеры из американской ядерной программы, NASA и т.п. Я предлагаю прямо сейчас пойти и прочитать описание железнодорожного крушения на Каменской: один не отчитался, второй не проверил тормоза, третий зажал тангенту, четвёртый сорвал стоп-кран. Результат — катастрофа.
                      Читать дальше →
                    • Способы «защиты» flash-приложений


                        Здравствуйте. Я попытаюсь рассказать о нескольких способах защиты от исследования кода, мошенничества и воровства, используемых при разработке flash-приложений, а также о том, как можно обойти некоторые из них.
                        Стоит заметить, что сейчас существует немало отличных презентаций и работ на эту тему (см. ссылки в конце статьи), однако, я бы хотел немного подробней расписать некоторые нюансы, и объединить множество информации по теме в одном месте. По крайней мере, я постараюсь это сделать.
                        Читать дальше →
                      • Мягкие ссылки на страже доступной памяти или как экономить память правильно

                          image
                          Все java-разработчики, рано или поздно, встречаются с пресловутой ошибкой OutOfMemoryError. 
                          После этой встречи мы начинаем более бережно относится к используемой памяти, экономить ее. Начиная с версии 1.2 в Java появился пакет java.lang.ref.* с классами SoftReference, WeakReference, PhantomReference. Далее я расскажу вам о том, как помогут эти классы в борьбе с OutOfMemoryError. И что более интересно, приведу реальные примеры их использования. Начнем.
                          Читать дальше →
                        • Eclipse for Java Developers. Навигация и редактирование


                          Наблюдая за со своими знакомыми, которые недавно начали изучать программирование или перешли на Eclipse c другой IDE, я часто замечаю что они почти не используют вспомогательные инструменты среды разработки. Они либо не знают о них вообще, либо не понимают какую практическую пользу они могут принести.
                          Данная статья предназначена в основном для начинающих в работе с Eclipse. Но в процессе подготовки статьи я сам узнал о нескольких простых и удобных инструментах, которые за два года активной разработки ни разу не использовал.
                          В данной статье речь пойдет о навигации и редактировании.
                          Внутри скриншоты.
                          Читать дальше →
                        • Правильный хостинг для MODx своими руками

                          • Tutorial

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

                          На всякий случай, приложу видео, как должна работать админка MODx Revo.

                          Для быстрой и комфортной работы желательно:
                          • Быстрый браузер — Google Chrome. Админка Revo работает в нем молниеносно
                          • Хороший интернет-канал. Тут без вариантов, нужно всем и всегда.
                          • Качественный хостинг — про него и пишу.


                          В конце поста есть ссылки на скрипты для автоматической установки MODx с созданием юзера, хоста nginx, процесса php5-fpm и базы дынных.

                          Читать дальше →
                        • Сборник полезных ссылок для системного администратора

                            Думаю у каждого грамотного системного администратора есть коллекция ссылок на полезные в работе ресурсы. Я имею в виду различные сайты и блоги, на которых выкладываются полезные с точки зрения системного администратора посты.
                            Предлагаю ими поделиться в формате ссылка — описание.
                            Пример: habrahabr.ru — разнообразные статьи и новости на IT и около-IT тематику.

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

                            P.S. Хабр, опеннет и лор можно не упоминать. Можно выкладывать ссылки на конкретные статьи, если считаете их очень полезными.

                            Начну с себя (т.к я администрирую linux, то и ссылки у меня в основном соответствующие):
                            Читать дальше →