Pull to refresh
25
0
ibeatle @ibeatle

User

Send message

Виджет для комментариев «В Контакте»: багрепорт

Reading time 3 min
Views 6.4K
Хочу поделиться сказом о том, как мы у себя на сайте внедряли виджет для комментариев «В Контакте» и что из этого вышло. Сразу скажу, что мое уважение к разработчикам этого виджета упало весьма и весьма низко, почти пробив уровень плинтуса – в день программиста это будет весьма символично.

Update: Друзья, больше спасибо всем за участие — еще вчера в виджете были исправлены основные ошибки; думаю, что это исключительно благодаря публикации здесь.

В моих глазах Хабр еще раз подтвердил свою репутацию IT-ресурса №1, надеюсь, что и в ваших тоже. Еще раз спасибо всем поддержавшим, а также разработчикам виджета!

Но обо всем по порядку.
Читать дальше →
Total votes 173: ↑141 and ↓32 +109
Comments 86

Fake — полноценное тестирование веб-приложений

Reading time 2 min
Views 1.5K
Fake
Буквально вчера на свет появилась первая версия удивительного проекта, о котором я хочу вам рассказать. Называется он несколько неприглядно — Fake.
Если коротко, то Fake — это основанный на WebKit и AppleScript браузер, предназначенный для автоматизированного тестирования веб-приложений. Наверняка те из вас, кто еще не познал прелести автоматизированного тестирования, помнят, как отлаживали какую-нибудь сложную форму регистрации и, отлавливая особо хитрый баг, приходилось кучу раз перезагружать страницу и раз за разом заполнять форму. И даже те, кто уже пишет тесты, не могут быть уверены, что JavaScript и Ajax работают как надо и все равно вынуждены тестировать сайт вручную загружая странички, снова и снова.
Что же делать?
Total votes 20: ↑13 and ↓7 +6
Comments 15

X-Jumper: новый паззло-платформер

Reading time 1 min
Views 2.7K
image
X-Jumper — это весьма сложный, но увлекательный инди-платформер от отечественного разработчика Platinum Arcade. Игра обладает рядом уникальных игровых элементов. Смотрите трейлер внутри новости, чтоб ознакомится с геймплеем более наглядно.

В игре на данный момент 12 уровней, динамичный геймплей, есть редактор карт.
Читать дальше →
Total votes 12: ↑7 and ↓5 +2
Comments 10

Оптимизация Javascript с помощью Google Closure Compiler

Reading time 1 min
Views 47K
image
Google открыла исходные коды нескольких инструментов, которые использовались их сотрудниками при разработке таких проектов как Google Docs, Google Maps и GMail.

В числе этих инструментов имеется достаточно интересная штука, называемая Google Closure Compiler. Данная утилита минимизирует и оптимизирует javascript-код, за счет чего он начинает работать и загружаться быстрее.
Читать дальше →
Total votes 89: ↑85 and ↓4 +81
Comments 67

TOP-10 Flash-игр

Reading time 2 min
Views 5.5K

Сегодня уже можно :)



1. Robokill. Вы управляете роботом, который перемещается по локациям и убивает противников. В процессе игры Вы зарабатываете деньги и можете усовершенствовать своего робота, покупая ему новое оружие, боеприпасы и т.д. Всего 10 затягивающих миссий.
Оф. сайт (триальная версия): www.rocksolidarcade.com/games/robokill Полная версия: robokill.hotbox.ru
Читать дальше →
Total votes 125: ↑88 and ↓37 +51
Comments 114

Подробное описание новинок в iPhone OS 3.0

Reading time 4 min
Views 883
Да, мне известно, что пост уже есть, но я написал несколько более подробное резюме.

Кроме того, как истинному ябломану, мне есть что сказать из религиозного :)

Итак: описание новых возможностей для потребителей и для разработчиков далее!
Читать дальше →
Total votes 161: ↑134 and ↓27 +107
Comments 232

Печатаем по сети на любом Windows-принтере

Reading time 3 min
Views 184K
Если у вас есть принтер, подключенный к Windows машине, то настроить его для сетевой печати на Mac достаточно просто, даже если драйверов для OSX для этого принтера не существует.

Для этого нужны три вещи:
  • Принтер, исправно работающий на Windows машине
  • Ghostscript — эмулятор PostScript принтера
  • RedMon — Redirection Port Monitor
Читать дальше →
Total votes 5: ↑5 and ↓0 +5
Comments 8

Что нужно знать про арифметику с плавающей запятой

Reading time 14 min
Views 931K


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

Арифметика с плавающей запятой почему-то считается экзотической областью компьютерных наук, учитывая, что соответствующие типы данных присутствуют в каждом языке программирования. Я сам, если честно, никогда не придавал особого значения компьютерной арифметике, пока решая одну и ту же задачу на CPU и GPU получил разный результат. Оказалось, что в потайных углах этой области скрываются очень любопытные и странные явления: некоммутативность и неассоциативность арифметических операций, ноль со знаком, разность неравных чисел дает ноль, и прочее. Корни этого айсберга уходят глубоко в математику, а я под катом постараюсь обрисовать лишь то, что лежит на поверхности.
Читать дальше →
Total votes 245: ↑242 and ↓3 +239
Comments 75

Git Wizardry

Reading time 17 min
Views 448K
1 Введение


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

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

Читать дальше →
Total votes 89: ↑66 and ↓23 +43
Comments 76

Underscore.js — библиотека, которая так хороша, что должна быть вне закона

Reading time 3 min
Views 49K
Каждый, кому приходилось писать объемные куски осмысленного кода на javascript, рано или поздно понимал, что ему многого не хватает в этом языке или просто неудобны некоторые врожденные конструкции. Для сглаживания шероховатостей применяются jQuery, Prototype, MooTools etc. Кто-то уже мало представляет себе, как можно кодить без них. Сегодня я расскажу о еще одной маааленькой библиотечке, которая делает мир javascript-программиста еще прекраснее. Речь пойдет о Underscore.js
Go ahead, make my day
Total votes 177: ↑163 and ↓14 +149
Comments 51

Vim и кириллица: парочка приёмов

Reading time 2 min
Views 56K
image

Раньше для редактирования обычных русскоязычных текстов, я обычно откладывал Vim в сторонку и прибегал к помощи других редакторов. Причиной этому была парочка очень неприятных косяков:
  1. На каждый чих приходилось сто раз переключать раскладку, чтобы корректно ввести пару команд и вернуться обратно. Например, замена буквы-опечатки в только что написанном слове, выливалось в: switch → добраться до буквы, нажать r → switch → [нужная буква] → switch → A → [пишем дальше]. Ад!
  2. Штатный spell checker букву «ё» не любил и любое слово с её участием предлагал заменить на аналог через «е». А я ё люблю, меня это расстраивало.

И вот, наконец, я нашёл решение обеим проблемам. Сижу сейчас и набираю этот текст в Vim. Любопытно, что оба барьера обходятся штатными средствами, без дополнительных плагинов. Поскольку материалов на английском и на них основанных куда больше чем исконно русских, найти эту информацию мне было не просто. Поэтому хочу поделиться ей с теми кому интересно.
Читать дальше →
Total votes 111: ↑102 and ↓9 +93
Comments 95

ModularGrid — модульная сетка в браузере (и не только сетка)

Reading time 1 min
Views 9.7K
ModularGrid — это небольшая программка на javascript (около 30 КБ), которая облегчает труд HTML-верстальщика.


Основные возможности ModularGrid


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

подробности
Total votes 120: ↑108 and ↓12 +96
Comments 65

7 способов определить хостера сайта

Reading time 8 min
Views 150K
Периодически перед многими из вебмастеров возникает задача определить хостера, у которого живет тот или иной сайт. Мотивация для этого бывает самая разная, как простое любопытство, так и желание поселиться по соседству на хорошем и стабильном хостинге или наоборот не вляпаться в такое соседство. В этом посте я приведу несколько известных мне методов с их достоинствами и недостатками. Вполне возможно, что он неполон, поэтому дополнения всячески приветствуются.
Так же «на берегу» оговорюсь: все упомянутые ниже сайты и хостеры упомянуты исключительно как наглядные примеры, и ни в коем случае не в качестве рекламы или, упаси господи, антирекламы. Выбор оных был сделан так же практически случайно — где какие методы у меня в свое время срабатывали, то и привожу.

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

1. NS-сервера


Даже странно, что забыл упомянуть с самого начала. Спасибо variable За напоминание. Очень часто люди пользуются NS-серверами хостера и при помощи whois'a мы моментально узнаем хостера.

Плюсы

  • Очень часто срабатывает на шаред-хостингах

Минусы

  • Зачастую пользователи VPS и дедиков, а так же продвинутые пользватели на шаред-хостингах пользуются своими DNS-серверами, либо используют свои поддомены.

2. Ошибка 403/404


Не могу сказать, что большинство, но немало серьезных хостеров страницы ошибок веб-сервера по умолчанию делают с информацией о себе, а многие их клиенты забывают/ленятся их переопределить. Поэтому в первую очередь стоит попытаться вызвать такую ошибку и посмотреть, что получится. Бывает так, что CMS на сайте при помощи mod_rewrite перехватывает запросы к несуществующим файлам и отдает в ответ свою 404-ю ошибку. Это можно попробовать обойти, вызвав ошибку 403 путем обращения к какталогу без индексного файла. Им может быть папка с картинками/шаблонами, папка для загруженных файлов, кэша движка, системная папка типа includes и т. п. Небольшой хинт — иногда на странице ошибки есть email вебмастера и часто из него можно узнать домен сайта хостера.
Читать дальше
Total votes 123: ↑86 and ↓37 +49
Comments 49

Skype и стандартные всплывающие сообщения в Ubuntu

Reading time 2 min
Views 7.7K
Пишу чтобы не забыть, а в дальнейшем использовать, надеюсь кому-нибудь тоже будет полезно. Озадачился заменить скайповские попапы на стандартные убунтовские нотификации, уж больно глаз режут. Есть задача, есть желание её решить. Как оказалось решение достаточно несложное. И так, решение.
Читать дальше →
Total votes 75: ↑69 and ↓6 +63
Comments 50

Что почитать по веб-разработке

Reading time 3 min
Views 232K
Топик Много книг, хороших и разных навёл на мысль сделать похожий каталог наиболее удачных и интересных книг по веб разработке.

Поэтому предлагаю здесь собрать и структурировать такие книги с небольшим описанием, вашим рейтингом и просто пообсуждать их.

update: Теперь есть электронные версии книг!

Начнём…
Читать дальше →
Total votes 118: ↑99 and ↓19 +80
Comments 137

MongoDB или как разлюбить SQL

Reading time 6 min
Views 66K
Введение

Коллеги, при разработке приложений, мы каждый день сталкиваемся с потребностью в гибком хранении информации (обновлении, поиске по ней, и т.д.). Класс продуктов, которые решают этот круг задач, как все мы знаем — Базы данных. Но что это такое в нашем понимании? У многих «база данных» твердо ассоциируется с MySQL, таблицами и SQL-запросами. И это устраивает до определенного момента. Действительно, реляционные базы данных дают массу преимуществ в работе: поскольку данные имеют сильную связанность, не нужно контролировать целостность базы данных. Используя простой под-запрос можно выбрать количество комментариев к каждому посту в блоге. Используя JOIN нетрудно делать сложные связанные выборки и получать данные сразу о нескольких сущностях.
Читать дальше →
Total votes 129: ↑122 and ↓7 +115
Comments 99

Настраиваем Vim под Python

Reading time 4 min
Views 42K
Сегодня я хочу рассказать вам, как я настраивал любимый всеми редактор Vim (который в одном режиме пищит, а в другом — все портит) для написания кода на Python. Статья расчитана на начинающих виммеров.
У меня получилась такая картинка:

Настроить и свой!
Total votes 69: ↑65 and ↓4 +61
Comments 61

Generating PDF files with PHP and FPDF

Reading time 5 min
Views 111K
Большинство web-сервисов экспортируют данные в разных форматах для дальнейшего использования. Данная статья о том, как экспортировать данные в pdf-формате.
Хотя многие знают как это делать, я опишу кратко для тех кто не знает.
Читать дальше →
Total votes 38: ↑35 and ↓3 +32
Comments 48

Скругленные углы в 3 div-a

Reading time 3 min
Views 4.3K
Есть много способов делать в верстке скругленные углы. И пока все браузеры поголовно не начнут поддерживать свойство border-radius, надо будет каждый раз думать о том, какой метод использовать в том или ином проекте.

Есть множество разнообразных методов — от использования подложек блоков фиксированных размеров и до создания уголков с помощью vml или svg. В этом топике я не буду рассматривать известные методы, так как информации по данному поводу предостаточно. Я попробовал создать yet another метод.

Сразу оговорюсь — мой метод не панацея, и ему свойственны несколько минусов, которые я опишу подробнее.
Читать дальше →
Total votes 88: ↑73 and ↓15 +58
Comments 109

Пример использования eAccelerator для нагруженного php-проекта

Reading time 3 min
Views 4.2K
Наш новый фронтенд-сервер сейчас вполне справляется с нагрузкой и в оптимизации не нуждается (чего нельзя сказать о базе данных), но после того, как я очередной раз посмотрел на его top, мне вдруг стало жалко ожесточённо разнашиваемых дисков, и я решил уделить этому пару минут и поставить eAccelerator.

Вот что получилось
Total votes 25: ↑22 and ↓3 +19
Comments 75
1

Information

Rating
Does not participate
Location
Санкт-Петербург, Санкт-Петербург и область, Россия
Registered
Activity