Обновить
33
0
Сергей Кузнецов@cr0t

Разработчик

Отправить сообщение

Побит рекорд самого короткого кода по определению IE

Время на прочтение1 мин
Охват и читатели3.4K
Без малого год назад, я уже писал (http://habrahabr.ru/blogs/javascript/50544/) о самом коротком способе определение браузера Internet Explorer, но вот некто Aleko нашел еще более короткий вариант:

-[1,]

Всего 5 байт. Пример использования:
if(-[1,]){
alert("Not IE!");
}

19 необщеизвестных приёмов

Время на прочтение5 мин
Охват и читатели2.1K
Заметка не новая, но я уверен, что и сейчас не все знают всё нижеперечисленное (Здесь и далее курсив переводчика).

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

Замер скорости в контроллерах — это очень просто. Используйте метод benchmark в любой модели.
Читать дальше →

Мое видео-резюме

Время на прочтение2 мин
Охват и читатели1.9K
В связи с поиском работы, я решил подойти творчески и с друзьями сделал вот такой ролик как видео-резюме:


Под катом как создавалось...

Физика высоких температур

Время на прочтение1 мин
Охват и читатели1.3K
Все уже наверняка обратили внимание, что в PostgreSQL 8.4 появился новый режим работы базы данных: Warm standby. При нём во время работы базы данных Write-Ahead логи (WAL) транслируются на подчинённую базу данных, на которой в реальном времени применяются, как если бы это происходило на основной системе. Поэтому, если основная база данных по какой-то причине (молния/торнадо/третья мировая война/другие стихийные бедствия) выйдет из строя, можно будет мгновенно переключиться на подчинённую базу данных (данные в которой будут достаточно актуальны по сравнению с основной базой) и использовать её дальше.
Но, к сожалению, «тёплый стэндбай» подразумевает, что на подчинённой системе непрерывно происходит процесс восстановления базы данных; из чего следует, что пока основная база жива, подчинённой базой пользоваться нельзя.
Если вы читаете хотя бы блог depesz (не говоря уже про коммит-логи), то вы уже знаете, к чему я веду; если же нет, то… 19-го декабря прошлого года в разрабатываемую версию PostgreSQL 8.5 была добавлена функциональность Hot standby. Теперь, при настройке репликации WAL, подчинённая база данных тоже может использоваться для запросов SELECT (и только SELECT, по понятным причинам). Если раньше второй сервер со второй базой данных простаивал в ожидании форс-мажора, и админу приходилось краснеть перед менеджерами при вопросах об эффективности использования оборудования — то теперь этот сервер, при правильном построении логики приложений, поможет разгрузить основную базу данных.
Подробности о функционировании Hot standby можно прочитать в соответствующей статье из документации разрабатываемой версии PostgreSQL.

Google Chrome for Mac. Теперь с расширениями!

Время на прочтение1 мин
Охват и читатели1.9K
image
Вот и настал момент, который многие так долго ждали.
Ну по-крайней мере пользователи Chrome под Mac. Хотя это и заняло больше времени, чем ожидалось, закладки синхронизации и расширений были включены в последнюю версию (4.0.288.1) — dev channel version.

На самом деле, если вы используете Chrome для Mac на этом раннем этапе, то нет причин, почему вы не захотите использовать Dev версии (которые вы можете найти здесь) особенно учитывая это обновление.

UPD: Как говорят к комментах — поддержки таск-менеджера по-прежнему не наблюдается.

Больше текста и скрин под катом

Highcharts: Красивые, динамические чарты за 5 минут!

Время на прочтение2 мин
Охват и читатели70K
image
Highcharts — библиотека для создания чартов написанная на JavaScript, позволяет легко добавлять интерактивные, анимированные графики на сайт или в веб-приложение. На данный момент чарты поддерживают большое количество диаграмм линейных, круговых, колоночных рассеивающих и многих других типов.

Чарты работают со всеми популярными браузерами, включая Safari на iPhone.
Минимальная версия для IE составляет 6+. Также браузеры поддерживающие Canvas элемент, и в некоторых случаях SVG для графического рендеринга.
Читать дальше →

7+ превосходных инструментов для оптимизации изображений

Время на прочтение5 мин
Охват и читатели106K
Перевод статьи 8 Excellent Tools for Optimizing Your Images
К сожалению на момент перевода один из сервисов перестал работать. Но хабровчане предложили еще много хороших решений!

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

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

IE is Being Mean to Me

Время на прочтение1 мин
Охват и читатели984
Наткнулся на замечательную песню, в очередной раз освящающая тему противостояния верстальщиков и интернет разработчиков против Internet Explorer.

Знание английского приветствуется.


P.S. Видео не самой первой свежести но на хабре вроде бы не проскакивало :)

Визуальный сахар для ActiveRecord

Время на прочтение4 мин
Охват и читатели1.2K
Каждый, кто разрабатывал приложение на RoR знает, что в консоли (./script/console) не слишком удобно просматривать ActiveRecord объекты, они имеют мягко говоря не читабельный вид

Например в моем последнем проекте есть модель Schema
Читать дальше →

Настраиваем Aptana Studio с нуля для работы над Django-проектами

Время на прочтение4 мин
Охват и читатели25K
image

Зачем оно вообще?


    Тут должен быть текст в духе «раньше я качал Eclipse Classic, который весит 160 с лишним метров, чтобы поставить на него PyDev и только тогда… Но потом я попробовал Aptana...».

    Собственно, Aptana Studio представляет собой среду для веб-разработки, построенную на основе Eclipse. Причем это значит именно то, что значит — почти все плагины Eclipse совместимы и с Aptana, только при этом в ней нету по умолчанию всей этой универсальности и Java-наворотов своего прародителя. И да, старый добрый PyDev здесь тоже есть, а на мой взгляд это — лучшая IDE-надстройка для питона. Естественно, для написания мелких проектов куда быстрее и проще использовать Geany, но сейчас не о нем :)
Читать дальше →

Триграммный индекс или «Поиск с опечатками»

Время на прочтение4 мин
Охват и читатели40K
Как-то по долгу службы появилась необходимость добавить к поиску на сайте всем известную фичу, сервис «Возможно вы имели в виду…» или «Поиск с опечатками». Стали думать как реализовывать. Сторонние сервисы и api использовать не хотелось, ибо время до чужого сервера и назад, да и в целом не очень хорошо. Как раз кстати пришелся модуль pg_trgm, который ищет близкие к запросу слову на основе триграммного индекса.

Итак, идея есть, надо реализовывать.

GITips & GITricks

Время на прочтение2 мин
Охват и читатели2.4K
Уже было несколько статей, где авторы рассказывали о том как скрасить консольные будни с git. В последней приведенной ссылке автор предлагает создавать алиасы, для работы c git, непосредственно в shell. Это не очень хороший способ, хотя бы потому, что, например алиас gc будет конфликтовать с одноименной командой пакета graphviz. git сам прекрасно умеет работать с собственным алиасами.

Ваш новый gitconfig

Nested Grids с помощью ExtJS 3.0

Время на прочтение6 мин
Охват и читатели3.3K

Введение



image

Суть проблемы, рассматриваемой в данной статье заключается в том, что Grid объекты библиотеки ExtJS не предназначены для использования в контексте вложенности. В общем случае, такая задача редко становится перед разработчиком. И все же, иногда, как, например, в моем случае, с ней приходится сталкиваться. Ниже я попытаюсь поделиться накопленным опытом, и, возможно, окажу тем самым кому-нибудь неоценимую помощь, на что искренне надеюсь :). Итак, в добрый путь…

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

Юзабилити и дизайн интерфейсов для хардкорных программеров

Время на прочтение15 мин
Охват и читатели16K
С того момента как я начал программировать я наблюдал и думал об одном особом явлении — как большинство программистов активно избегают всего, что касается дизайна интерфейсов и вопросов юзабилити.


Я понимаю, откуда это пришло. Большинство программистов любят программировать. Они готовы учиться новым особенностям языков программирования, пробуют новые компоненты и библиотеки, улучшают свои алгоритмы и архитектуру кода или скажем оптимизируют структуру используемых данных. Это кажется очень важным, потому что, программа хороша настолько, насколько хороши её коды и алгоритмы и насколько все это оптимизировано. И это так. Но только если программы пишутся для программистов.

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

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

Виджет выбора OpenID провайдера на Prototype

Время на прочтение1 мин
Охват и читатели1.5K
Когда-то я уже писал, как интегрировать OpenID авторизацию в ваш сайт. Речь шла о серверной части.
Сейчас же я говорю о UI части — виджет для выбора провайдера.

В качестве клиентской библиотеки для своего проекта я выбрал prototype и первым делом я полез в гугл поискать готовое решение. Удалось найти такое, но только для JQuery — code.google.com/p/openid-selector

И так мне ничего не оставалось как написать OpenID selector самому. Вот что получилось

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

10 способов побороть проблемы в IE6

Время на прочтение3 мин
Охват и читатели2.7K

1. Используйте DOCTYPE


Лучше всегда прописывать доктайп в заголовке каждой html-страницы, причем, строгий режим рекомендуется:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">

для XHTML:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">

от себя добавлю, что недопускайте никаких сторонних символов перед доктайпом. Ни пробелов, ни переносов строки — иначе появятся странные поля у body и html
Читать дальше →

Коллективная разработка с использованием git и Trac в проекте Midnight Commander

Время на прочтение6 мин
Охват и читатели5.1K
    Действительно, в интернете сейчас можно найти достаточно много информации о настройке GIT и работе с ним, но недостаточно освещен вопрос коллективной разработки и «рабочего процесса» отдельно взятого проекта от начала и до конца.

    Попробую восполнить этот пробел на примере открытого проекта Midnight Commander, не останавливаясь на вопросах установки необходимого ПО, так как этот момент неплохо описан в интернете, и вы сможете легко найти интересующую вас дополнительную информацию самостоятельно.
Читать дальше →

Отладка Javascript

Время на прочтение5 мин
Охват и читатели146K
Debug Logo

Многие задают мне один и тот же вопрос:
«Как дебажить этот $%*!%$! JavaScript?».

Так вот, во-первых JavaScript — не $%*!%$! А как я его дебажу — сейчас расскажу.

(Примечание: наверное эта статья больше для новичков. Так что не судите строго)

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

Распараллеливание длительных операций

Время на прочтение2 мин
Охват и читатели12K
Мне часто приходится сталкиваться с задачами, требующими от базы данных очень большой производительности при обработке больших массивов данных. Сегодня я расскажу об очень простом, но действенном приеме, который может вас выручить, если база уже не поспевает за тем количеством данных, которые скапливаются и должны быть обработаны. Метод не зависит от базы данных, но по привычке публикую в блог PostgreSQL, и пример будет именно на ней. Давайте сразу перейдем к примеру.
Читать дальше →

ХХ полезных советов для пользователей Git среднего уровня. Часть 2

Время на прочтение4 мин
Охват и читатели26K
Это продолжение статьи ХХ полезных советов для пользователей Git среднего уровня

Про reset, незапланированно снова про альясы, про замечательный filter-branch, про мерджи и разрешение конфликтов с помощью rerere, про rebase (интерактивный и не очень) и, в завершение, про обслуживание своей гитницы.

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

Информация

В рейтинге
Не участвует
Откуда
Швеция
Зарегистрирован
Активность