Pull to refresh
13
0
step307 @step307

User

Send message

QUnit. Тестирование javascript кода

Reading time5 min
Views64K
Наткнулся вчера на этот инструмент и не смог пройти мимо, провел ночь за написанием тестов, а теперь хочу поделиться находкой. QUnit — это библиотека от разработчиков jQuery, позволяющая писать unit-тесты для кода на javascript. Удобна в использовании, ничего лишнего, осваивается за 20 минут, выгода от применения — колоссальная.

Самым нетерпеливым сразу ссылки:
Официальная документация на сайте jquery: docs.jquery.com/QUnit
Реальные примеры тестов (для модулей jquery): view.jquery.com/trunk/jquery/test/unit
Руководство для начинающих (англ): www.swift-lizard.com/2009/11/24/test-driven-development-with-jquery-qunit
Система распределенного тестирования (гениально и просто): testswarm.com

Под катом информация о преимуществах юнит-тестирования применительно к js и разбор возможностей библиотеки на примерах.
Читать дальше →

Преодолеваем хабраэффект при помощи Coral CDN

Reading time3 min
Views4.3K
Вы выкладываете на Хабрахабре гиперссылку на интересный сайт, а он вскорости обрушивается под наплывом посетителей, начинает подтормаживать или вообще перестаёт отвечать.

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

Таковы бывают неприятные проявления хабраэффекта — естественного DDoS, аналогом которого на Заокраинном Западе является слэшдот-эффект.

Ну а как противостоять естественному DDoS?

Первыми приходят на ум наиболее бесхитростные способы.

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

Склад бесплатных иконок

Reading time1 min
Views164K
Прошелся по закладкам и образовалась такая толстенькая подборочка ресурсов с бесплатными и качественными иконками, с которой спешу поделиться с тобой %username%!

Iconfinder


image


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

ExtJS. Изложения в примерах

Reading time1 min
Views4.9K
Хотел бы начать знакомить всех с фреймворком ExtJS. Оказывается, все не так сложно как может показаться…

1. [ExtJS] :: Часть 1. Вводная. Модель DOM и типы данных в ExtJS
2. [ExtJS] :: Часть 2. Основы пользовательского интерфейса в ExtJS
3. [ExtJS] :: Часть 3. Загрузка, проверка и обработка форм в ExtJS
4. [ExtJS] :: Часть 4. Работа с выпадающими списками и календарем
5. [ExtJS] :: Часть 5. Отображение и редактирование табличных дан
6. [ExtJS] :: Часть 6. Обзор таблиц и списков
7. [ExtJS] :: Часть 7. Вкладки и деревья

Ссылка на ресурс тут

Пока все.

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

PS. С НАСТУПАЮЩИМ!!!

Готовимся к Хабра-эффекту

Reading time3 min
Views13K
Наплыв посетителейЗаметка посвящена не столько возможным методам защиты (о них уже было много написано), сколько обзору небольшого списка для быстрой проверки при подготовке к возможных скачкам посещаемости. Судя по статистике нагрузки на электронные магазины на прошлой неделе (когда начался рождественский сезон продаж на Западе), даже для крупных магазинов время ответа может колебаться на 20%, что же говорить о менее крупных веб-сайтах?

Такую проверку обязательно нужно проводить перед выпусками новых продуктов, а также перед сезоном массовых покупок (для России это время в канун Нового Года и Рождества). Итак, с чего начать?
Читать дальше →

Экспорт Дней рождения из вКонтакте в Google Calendar

Reading time3 min
Views41K
UPD: Скрипт устарел, он больше не работает и не поддерживается. Попробуйте использовать более новые аналоги, например вот этот.



Здравствуй, уважаемое хабрасообщество!
Сегодня я хочу поделиться с тобой одним, весьма полезным, на мой взгляд, скриптом. Если вам уже всё понятно из картинки для привлечения внимания, вот линк.

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

Инструменты быстрого прототипирования

Reading time9 min
Views206K
Прототипы, как инструменты дизайна, находятся на подъёме, и вот почему. Я твёрдо верю, что прототипирование помогает нам в процессе создания качественных пользовательских интерфейсов. Мы работаем в мире богатых, обладающих динамикой интерфейсов пользователя как в сети, так и на наших устройствах. Интерфейсы, которые мы создаём, интерактивны, откликаются на воздействие пользователя и обладают эмоциями. Прототипы позволяют сформулировать чувства и функции дизайна так, как этого не могут сделать простые экранные формы. Но как выбрать лучший инструмент прототипирования для работы?
Много текста. Читать дальше

Попытка классификации и анализа существующих подходов к наследованию в Javascript

Reading time9 min
Views3.1K

Некоторое время назад у меня дошли руки до темы, которая давно уже меня нервирует интересует. Эта тема — наследование в JavaScript.

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

Хочу сразу сказать, что я не претендую на глубокое понимание ООП в JavaScript, и даже не претендую на глубокое понимание ООП вообще. Я буду рад, если моя попытка анализа окажется кому-нибудь полезной, но основная цель публикации, в некотором смысле, противоположная — мне бы хотелось самому воспользоваться замечаниями людей, которые лучше меня ориентируются в теме, чтобы прояснить ее для себя.
Читать дальше →

20 полезных и красивых веб приложений

Reading time1 min
Views7.2K
Мы постоянно должны быть вдохновлены, чтобы не отставать от моды.

В этой статье я покажу вам 20 приложений, которые вдохновили нас, веб-приложения, которые изменили мир.

Давайте начнём.

Reinvigorate




Инструмент для отслеживания трафика в реальном времени с множеством полезных функций, включая «heat sensing».
Читаем Дальще

Пользовательские расширения для Extjs

Reading time1 min
Views1.7K
imageКаждый раз, когда я ищу информацию в сети по extjs, нахожу что-то новенькое и интересное, что можно с легкостью интегрировать в проект на extjs.
Сегодня день особенный, так как я нашел не инструмент, а целый репозиторий пользовательских расширений. Появился он еще в 2008 году*. Может я его и замечал раньше, но видимо он тогда еще не обладал таким изобилием расширений, какое можно наблюдать сейчас.

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

Мы ♥ Иконки

Reading time1 min
Views1.2K

Коротко о ясном


В интернете есть множество сайтов где выкладываются разного рода иконки, но по настоящему хороших сайтов мало. Но я нашел такой сайт. Иконки высшего качества собранные воедино совершенно бесплатно распространяются на сайте weloveicons.com. Иконки предоставляются в форматах для Mac OS, Windows и в .PNG

Каждый найдет себе то, что ищет


image image image

qutIM 0.2. Релиз готов!

Reading time2 min
Views2.1K
В честь праздника Хэллоуин хотим вас всех поздравить и представить вам новую версию мессенджера qutIM!

Больше года прошло уже с начала разработки версии 0.2, за этот год мы встречались со многими трудностями, были проблемы с серверами, был недостаток разработчиков (и пожалуй пока еще эта проблема остается), был и есть недостаток (точнее полное отсутствие) дизайнеров. Перед нами время от времени стоял выбор — использовать распространенные технологии или делать ставку на темных лошадок — долго решали между iris'ом, уже зарекомендовавшим себя в таких клиентах как Psi и Kopete, и мало кому известным gloox'ом, который оказался более перспективной разработкой.

qutIM — это молодой, перспективный и свободный многопротокольный клиент для общения в реальном времени. Начиная с версии 0.1.1 ядро было полностью переписано, реализация ICQ протокола перетерпела множественные изменения и была вынесена в отдельный плагин, были добавлены поддержки и многих других протоколов, так что теперь qutIM официально поддерживает следующие протоколы:
  • ICQ
  • Jabber
  • MRIM
  • IRC
  • VKontakte



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

35 свежих и полезных jQuery плагинов

Reading time6 min
Views46K
Быстрый и мощный jQuery может помочь дизайнерам и разработчикам в создании прекрасных интерактивных сайтов, которые будут привлекательными и совместимыми с большинством из браузеров. Ваш сайт будет и интересным и развлекательным. Навигация, галереи и слайдшоу являются теми компонентами, которые могут блистать на вашем сайте.

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

Типографика и WPF — Рисуем красивый текст

Reading time7 min
Views5.1K

Важно: этот подход устарел, теперь можно просто использовать DirectWrite и получать все плюшки OpenType. Пример конкретной реализации можно найти вот тут.



Введение


Как известно, в WPF есть достаточно мощная встроенная система типографики. К сожалению, эта система ориентирована в основном на работу с документами и, тем самым, все типографические изыски вроде поддержки OpenType невозможно использовать для какого-нибудь простого контрола вроде Label. Но, не смотря ни на что, есть все-таки возможность получить качественную отрисовку текста – просто нужно немного помучаться.
Читать дальше

10 полезных выводов и принципов юзабилити

Reading time8 min
Views23K
Каждый согласится, что юзабилити является важным аспектом веб-дизайна. Несмотря на то, работаете ли вы над дизайном сайта портфолио, над он-лайн магазином или веб-приложением, важно сделать страницы удобными и простыми для пользователей. В протяжении последних лет было сделано много исследований о разных аспектах веб-дизайна и дизайна интерфейсов. Результаты этих исследований весьма значимы и помогают нам улучшить качество наших работ. Данная статья содержит 10 полезных выводов и принципов юзабилити, которые помогут вам улучшить впечатления пользователей от ваших сайтов.
Идем дальше...

Сервер на стероидах: FreeBSD, nginx, MySQL, PostgreSQL, PHP и многое другое

Reading time16 min
Views40K
Нравится мне эта картинка, у меня, вот никогда такие красивые графики в какти не получались =(

Введение


С момента написания мной предыдущей статьи по оптимизации этой связки прошло довольно много времени. Тот многострадальный Pentium 4 c 512Мб памяти, обслуживающий одновременно до тысячи человек на форуме и до 150,000 пиров на трекере уже давно покоится на какой-нить немецкой, свалке, а клуб сменил уже не один сервер. Всё сказанное в ней всё ещё остаётся актуальным, однако есть вещи которые стоит добавить.
Статья большая, так что будет поделена на логические блоки:

0. Зачем вообще что-то оптимизировать?
  
1. Оптимизация ОС (FreeBSD)
  1.1 Переход на 7.х 
  1.2 Переход на 7.2
  1.3 Переход на amd64
  1.4 Разгрузка сетевой подсистемы
  1.5 FreeBSD и большое кол-во файлов
  1.6 Softupdates, gjournal и mount options
  
2. Оптимизация фронтенда (nginx)
  2.1 Accept Filters
  2.2 Кеширование
  2.3 AIO
  
3. Оптимизация бэкенда
  3.1 APC
  3.1.1 APC locking
  3.1.2 APC hints
  3.1.3 APC fragmentation
  3.2 PHP 5.3
  
4. Оптимизация базы данных
  4.1 MySQL 
  4.1.1 Переход на 5.1
  4.1.2 Переход на InnoDB
  4.1.3 Встроеный кеш MySQL - Query Cache
  4.1.4 Индексы
  
4.2 PostgreSQL
  4.2.1 Индексы
  4.2.2 pgBouncer и другие.
  4.2.3 pgFouine
  
4.3 Разгрузка базы данных
  4.3.1 SphinxQL
  4.3.2 Не-RDBMS хранилище
  4.4 Кодировки
  4.5 Асинхронность
  
Приложение. Мелочи.
  1. SSHGuard или альтернатива.
  2. xtrabackup
  3. Перенос почты на другой хост
  4. Интеграция со сторонним ПО
  5. Мониторинг
  
 6. Минусы оптимизации

Кому что-нибудь из этого списка интересно, жмём сюда...

Хабраэффект

Reading time1 min
Views4K
Сегодня очередной стартап, ссылка на который попала на главную Хабрахабра, пострадал от хабраэффекта.

В связи с чем не могу сдержать крик. Люди, не будьте нищебродами! Неужели, если вы запускаете стартап, в который вкладываете энное количество человекочасов, вам жалко оплатить нормальный хостинг, вроде mediatemple.net (никакой выгоды я от этой ссылки не получу). 20 долларов же всего в месяц. Не 100. Да и другие, аналогичные по качеству хостинги, вероятно есть (скиньте ссылки, кто знает).

Такая ли уж большая разница, платите вы 7 долларов в месяц, 12 или 20? Ну что за мелочи, если разговор идет о стартапе, то есть, как минимум, на что-то претендующем проекте?

Вам жалко пары долларов на стабильность проекта под нагрузками, или что???

Настройка nginx

Reading time5 min
Views300K
Тема правильной настройки nginx очень велика, и, боюсь, в рамки одной статьи на хабре никак не помещается. В этом тексте я постарался рассказать про общую структуру конфига, более интересные мелочи и частности, возможно, будут позже. :)

Неплохой начальной точкой для настройки nginx является конфиг, который идёт в комплекте с дистрибутивом, но очень многие возможности этого сервера в нём даже не упоминаются. Значительно более подробный пример есть на сайте Игоря Сысоева: sysoev.ru/nginx/docs/example.html. Однако, давайте лучше попробуем собрать с нуля свой конфиг, с бриджем и поэтессами. :)
подробности

Information

Rating
Does not participate
Location
Düsseldorf, Nordrhein-Westfalen, Германия
Date of birth
Registered
Activity