Как стать автором
Обновить
5
0
Павел Иванов @ardentum

Пользователь

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

Подготовительная работа, которая поможет вам покорить Кикстартер [несколько прописных истин, о которых забывают]

Время на прочтение 7 мин
Количество просмотров 32K
Вы придумали крутую идею, записали потрясающее промо-видео, потратили несколько месяцев на подготовку, неделю оформляли страницу, запустили кампанию в ожидании головокружительного успеха и…

image

ничего не произошло…

В этом посте я постараюсь поделиться с вами некоторыми общеизвестными (и не очень) моментами, которыми часто пренебрегают отечественные разработчики, хотя они могут оказать существенное влияние на судьбу вашего проекта.
Читать дальше →
Всего голосов 44: ↑40 и ↓4 +36
Комментарии 16

Исследуем скорость выполнения JS и алгоритм отображения страниц

Время на прочтение 4 мин
Количество просмотров 7K
Тестирование скорости выполнения JS или отображения страниц — занятие неблагодарное. Любое тестирование отражает действительность только тогда, когда оно выполнено в как можно более одинаковых условиях и тестируются идентичные по функциональности вещи. Ведь на вопрос, что быстрее, грузовик или спорткар, каждый тут же ответит, что спорткар. А если по полю да с прицепом навоза? Победитель в каждом случае будет тот, кто лучше всего приспособлен для выполнения специфических задач.

В этой статье будет немного гипотез и немного фактов. Не будет фанатских речей и призывов сменить браузерную ориентацию.

Итак, наши подопытные кролики:
  • FF 4b7
  • Opera 10.63
  • Chrome 7

Я не тестировал IE9, потому что у меня он установлен на виртуальной машине, а это чревато наличием пенальти по скорости и ощутимым разбросом значений.
Читать дальше →
Всего голосов 63: ↑56 и ↓7 +49
Комментарии 86

JavaScript — полезные материалы

Время на прочтение 2 мин
Количество просмотров 79K
Хочу поделиться набором ссылок на нексолько полезных, интересных и, возможно, не самых известных материалов по JavaScript. Из них вы узнаете немного больше об истории появления языка, о его настоящем, тонкостях реализации в различных браузерах, и о будущем развития стандарта ECMAScript. О различных способах наследования в том числе об эмуляции «классического» ООП, множественном наследовании и миксинах. О функциональном стиле программирования в JavaScript: чистые функции, map, reduce, частичное применение и композиции функций. И, наконец, что если бы Хемингуэй писал на JavaScript?
Читать дальше →
Всего голосов 137: ↑130 и ↓7 +123
Комментарии 29

Область видимости в JavaScript и «поднятие» переменных и объявлений функций

Время на прочтение 6 мин
Количество просмотров 157K
Вы знаете, какое значение выведет этот код на JavaScript?
var foo = 1; 
function bar() { 
    if (!foo) { 
        var foo = 10; 
    } 
    alert(foo); 
} 
bar();

Читать дальше →
Всего голосов 135: ↑122 и ↓13 +109
Комментарии 71

Индексация AJAX-сайтов

Время на прочтение 4 мин
Количество просмотров 23K


Вместе с разработкой Joosy, AJAX внезапно – но ожидаемо, – заполонил все проекты, за которые мы беремся. Парадигма оказалась крайне удачной во всех аспектах, кроме одного. Того самого классического: «AJAX? Индексация? Пфф...». Пока мы делаем интернет-банки, это нас вполне устраивает. Но как не отказывать себе в этом изысканном удовольствии для открытых Web-ресурсов?

А вот как: Google AJAX Crawling – это стандарт Google, который позволяет при формировании AJAX-адресов специальным образом (#!) заставить Google магически запрашивать вместо него другой магический адрес. С которого Google будет ждать HTML-дамп этой страницы, который он весело прожует. Добрые люди уже написали статью про то как это работает. Ну а нам остается научиться эффективно этот дамп формировать. Да так, чтоб без вмешательства в код самого приложения.

Hashbang сделает это весело и непринужденно.
Всего голосов 45: ↑37 и ↓8 +29
Комментарии 53

Клавиатурные сокращения с Javascript

Время на прочтение 1 мин
Количество просмотров 1.9K
Mousetrap — маленькая библиотека (1.4 KB) для обработки клавиатурных нажатий.

// single keys
Mousetrap.bind('4', function() { highlight(2); });
Mousetrap.bind("$", function() { highlight(3); }, 'keydown');
Mousetrap.bind('x', function() { highlight(4); }, 'keyup');

// combinations
Mousetrap.bind('command+shift+K', function() { highlight(7); });
Mousetrap.bind(['command+k', 'ctrl+k'], function() { highlight(8); });

// gmail style sequences
Mousetrap.bind('g i', function() { highlight(11); });
Mousetrap.bind('* a', function() { highlight(12)});

// konami code!
Mousetrap.bind('up up down down left right left right b a enter', function() {
    highlight([15, 16, 17]);
});

Как видно, поддерживаются как одиночные нажатия, так и сочетания и клавиатурные комбо.

Работает в Internet Explorer 6+, Safari, Firefox, Chrome (с включенным Vimium не работает).

Пробуйте — craig.is/killing/mice
Всего голосов 58: ↑55 и ↓3 +52
Комментарии 28

Знакомство с Ruby on Rails 3.0

Время на прочтение 5 мин
Количество просмотров 17K


Добрый день, друзья. Не так давно мы с друзьями-коллегами решили поизучать Ruby on Rails – что это такое и с чем едят – для использования в будущем при разработке своих проектов.

Так как знаний по данной теме не было вообще, то и двигаться решили постепенно. При начальной установке Ruby с Rails 3.0 мы столкнулись с некоторыми трудностями, о которых в мануалах так сходу никто не упоминал. Поэтому я решил написать это небольшое руководство (которое является обобщением собственного опыта и перевода мануала на guides.rubyonrails.org/getting_started.html) по изначальной установке и настройке Ruby on Rails 3.0 для того, чтобы помочь таким же начинающим как я найти полезную информацию в одном месте и сэкономить свое время.
Читать дальше →
Всего голосов 75: ↑58 и ↓17 +41
Комментарии 80

Вы наверное шутите, мистер Дал, или почему Node.js — это венец эволюции веб-серверов

Время на прочтение 8 мин
Количество просмотров 29K
WTF is Node.js?

Node.js — вещь, вокруг которой сейчас много шума, восторженных отзывов и гневливых выкриков. При этом, по моим наблюдениям, в умах людей закрепилось следующее представление о том что же такое Node.js: «это штука, позволяющая писать на JavaScript на серверной стороне и использующая JavaScript-движок от Google Chrome». Поклонники языка восторженно вздохнули: «Ах! Сбылось!», противники же процедили сквозь зубы: «Ну вот только еще этой ерунды с прототипами и динамической типизацией нам на серверах не хватало!». И дружно побежали ломать копья в блоги и форумы.

При этом многие представители обоих лагерей придерживаются мнения, что Node.js — это эзотерическая игрушка, веселая задумка для переноса языка браузерных сценариев на «новые колеса». Дабы быть до конца честным, признаюсь, что я так же придерживался подобной точки зрения. В один прекрасный момент, я набрался духу и решил «копнуть поглубже». Выяснилось, что создатель Node.js Райан Дал далеко не фанатик, а человек, пытающийся решить реальную проблему. А его творение — не игрушка, а применимое на практике решение.

Так что же такое Node.js?
Всего голосов 243: ↑235 и ↓8 +227
Комментарии 252

Правильный захват контекста в Javascript

Время на прочтение 5 мин
Количество просмотров 37K
Довольно часто во многих статьях я вижу, как люди захватывают контекст this для использования в анонимной функции и удивляюсь — то, что уже стало стандартом — просто ужасная практика, которая противоречит всем канонам программирования. Вам знакома такая запись?
var self this;
Может вам тоже стоит переосмыслить этот аспект?
Читать дальше →
Всего голосов 113: ↑87 и ↓26 +61
Комментарии 147

Node.js v0.2.4 и ожидаемые улучшения в ветке v0.3.x

Время на прочтение 2 мин
Количество просмотров 1.6K
Прошедшие выходные могут похвастаться двумя релизами Node.js: очередной минорной версией в ветке v0.2.x и официальным релизом ветки v0.3.x.
И пусть разрабатываемая ветка всё ещё отмечена как «нестабильная», в ней ожидаются существенные улучшения производительности, переносимости и добавление новых возможностей, о которых стоит знать уже сейчас. Тем более, что эта версия уже вполне работоспособная.
Также в конце топика бонус в виде ссылок на репозитории пакетов Node.js v0.2.x и NPM (Node.js package manager).
Читать дальше →
Всего голосов 25: ↑23 и ↓2 +21
Комментарии 12

Простой Javascript Benchmarker

Время на прочтение 1 мин
Количество просмотров 999
Как вы замеряете производительность javascript кода?
У меня это происходило так:
  1. создаю файл index.html;
  2. копирую откуда-нибудь шаблон HTML;
  3. добаляю тэг script, в котором будет жить тестируемый код;
  4. если нужно замерить работу с массивами, то обязательно создаю или беру готовый генератор случайных массивов.
Читать дальше →
Всего голосов 10: ↑7 и ↓3 +4
Комментарии 4

Пошаговая установка Node.js на Windows без виртуалок

Время на прочтение 3 мин
Количество просмотров 59K


Эта статья предназначена для тех, кого бесят мильён левых служб и драйверов, которые ставят любые виртуалки. Тем, кто будут ставить доп. пакеты Node.js
Все остальные могут скачать скомпилированный Node.js node-js.prcn.co.cc
Или же установить Node.js из-под виртуалки nodejs.ru/25

Прошу под кат
Читать дальше →
Всего голосов 68: ↑54 и ↓14 +40
Комментарии 19

Шаблонизация на стороне клиента — уже реальность

Время на прочтение 2 мин
Количество просмотров 27K

Предыстория


Я занимаюсь разработкой IFrame приложений для социальной сети ВКонтакте. Самый удобный способ навигации по приложению — это динамическая подгрузка данных, без перезагрузки всей страницы. Раньше я генерил html код который нужно отобразить на сервере, пока не встретил EJS — JavaScript Templates…

EJS — Embedded JavaScript


EJS оказался одним из самых удобных и подходящих мне шаблонизаторов. Он работает, как с одиночными переменными, так и с массивами (читай объектами), присутствует логика (if...else...).
Читать дальше →
Всего голосов 84: ↑76 и ↓8 +68
Комментарии 183

Замыкания в JavaScript

Время на прочтение 5 мин
Количество просмотров 272K
Если вы используете JavaScript, но при этом так до конца и не разобрались, что же это за чудная штука такая — замыкания, и зачем она нужна — эта статья для вас.

Читать дальше →
Всего голосов 143: ↑131 и ↓12 +119
Комментарии 86

jQuery template engine

Время на прочтение 2 мин
Количество просмотров 11K
Началось все с прочтения вот этого поста.
Идея мне очень понравилась, и я, недолго думая, начал искать в интернете готовые решения «шаблонизаторов» для jQuery.
Читать дальше →
Всего голосов 35: ↑30 и ↓5 +25
Комментарии 56

Информация

В рейтинге
Не участвует
Откуда
Москва, Москва и Московская обл., Россия
Дата рождения
Зарегистрирован
Активность