Search
Write a publication
Pull to refresh
1
0
Санкир @sankir

Функциональное сопровождение

Send message

История взлома одной браузерной игры. Возврат контроля

Reading time11 min
Views37K
Доброго времени суток. Я занимаюсь аудитом защищённости веб-приложений. По простому — тестами на проникновение в отношении веб-сайтов. Иногда в моей практике встречаются интересные и познавательные случаи, которые я бы хотел описывать в виде таких вот статей, но редко (для меня это первый случай) бывают ситуации когда клиент разрешает публикацию подобного материала с подробным описанием всех имевшихся проблем и предпринятых действий. Естественно, тут вы не встретите никаких конкретных имён, названия фирмы-заказчика и т. д. Упоминания таких данных мне, наверное, никто никогда не разрешит. Надеюсь что для вас, уважаемые читатели, данная статья окажется интересной и полезной.
Читать дальше →

Умный бэкап MySQL

Reading time4 min
Views2.5K
Думаю, у многих в жизни возникала ситуация, когда есть полный бэкап базы MySQL, и нужно восстановить только несколько таблиц из него. Или, еще хуже, нужно восстановить старые записи в этих таблицах, не затерев при этом новых. А в случае если дамп занимает сотни мегабайт, процесс не очень вдохновляет.

В этой статье я опишу концепцию умного бэкапа, реализованную в Sypex Dumper. А также приведу примеры использования.
Читать дальше →

Сравнительное тестирование JavaScript-календарей

Reading time3 min
Views11K
Долгое время использовал в своих проектах, различные готовые JavaScript-календари для ввода дат, в частности Dynarch jsCalendar, и они полностью устраивали. Но в ходе разработки одного проекта, связанного с автострахованием, возникла необходимость довольно частого ввода дат из прошлого (дни рождения, дата выдачи паспорта и водительских прав, пенсионного и т.п.). Оказалось, что использовать календари в таких случаях не так уж и удобно, так как приходится отматывать несколько десятков лет назад и для этого приходится делать много действий мышкой.
Читать дальше →

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

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

Упрощение жизни разработчика с помощью сторонних сервисов

Reading time3 min
Views9.7K
Представляю скромную подборку сервисов, которые ускоряют экономят время разработчику и/или ресурсы сервера. Здесь не будет подробных обзоров, только список с кратким описанием и ссылками. Также, я не претендую на свежесть ресурсов, поэтому кому-то перечисленный список покажется слишком очевидным и известным всем.

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

Google Fusion Tables


Позволяет развернуть реляционную базу данных на серверах гугла с обращениями с помощью библиотеки Visualization или JSONP.
Статья на хабре: habrahabr.ru/blogs/webdev/116035
Ссылка: www.google.com/fusiontables/Home

Минусы: количество обращений в секунду равно пяти с одно IP адреса и столько же при обращении с аккаунта (используя авторизацию). То есть развернуть сайт с хорошей посещаемостью и работать с сервисом с помощью сервера не получится. Стоимость увеличения лимита — от 10 тысяч долларов в год (см. Maps API Premier). Кроме того, отсутствуют джойны, которые заменяются представлениями (view), создаваемыми через интерфейс.
Читать дальше →

Ускоряем загрузку карты в World of Tanks

Reading time4 min
Views186K

Заметил я как-то, что на моём компьютере карты в WoT загружаются очень долго — больше минуты. Заходишь, бывает, в бой, а он уже секунд 30 идёт. А иногда вообще обнаруживаешь свой танк уже в виде горящих обломков. Компьютер мой, конечно, старенький и давно просит апгрейда, но вначале можно попытаться сделать что-то программным путём.
Читать дальше →

Дорога к свету

Reading time10 min
Views24K

Простейший робот из подручных средств



image
Наш простой робот

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

Поиск, сортировка и фильтры для списков в HTML

Reading time2 min
Views31K
Простой мини-скрипт List.js размером 7 КБ добавляет интерактивности маркированным спискам в HTML. С помощью скрипта можно сделать удобный поиск, сортировку, редактирование списка с добавлением или удалением новых элементов (например, адресная книга на странице) и т.д. Чем-то напоминает Chosen, только там модифицировались выпадающие списки.

List.js — обычный JavaScript, который не требует jQuery, работает без проблем во всех браузерах. Пару примеров см. здесь и здесь.

List.js опубликован под открытой лицензией MIT.
Читать дальше →

Нестартап — олдскульный некоммерческий сайт

Reading time4 min
Views1.7K
Это не модный вебдванольный стартап с валидной вёрсткой. Это старый олдскульный сайт, весь в шрамах и костылях.
image
Скромное сообщество туристов, не тех, кто от слова «тур» и «тагиил», а тех, кто с гитарой и у костра, а также велосипедистов. Нас более 10000 — оставивших несколько сообщений на форуме, и до 10000 человек в день. Самая масштабная «форумовка» — 5500 человек. Историю нашего некоммерческого уютного сайта попробую рассказать.
Кому интересно - читаем.

Неравномерно идущие часы

Reading time4 min
Views77K

Идея этих часов состоит в том, что стрелки на них двигаются неравномерно, то ускоряясь, то отставая, но тем не менее, в среднем, часы показывают правильное время. Сейчас расскажу, как такие сделать.
Читать дальше →

Исключение != ошибка

Reading time4 min
Views29K
Многие программисты почему-то считают, что исключения и ошибки — это одно и то же. Кто-то постоянно кидает exception, кто-то через errorHandler превращает ошибки в исключения. Некоторые пытаются увеличить производительность, используя исключения. Но, на самом деле, exception и ошибки — это совершенно разные механизмы. Не надо одним механизмом заменять другой. Они созданы для разных целей.

Когда появился php5 с исключениями, а затем ZendFramework, который всегда кидает исключения — я не мог понять: чем же exception лучше моего любимого trigger_error()? Долго думал, обсуждал с коллегами и разобрался в этом вопросе. Теперь я чётко знаю, где использовать trigger_error(), а где throw new Exception().

В чём же принципиальная разница между ними?

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

Пробуем бесплатную виртуализацию со специями в Ubuntu 11.04 amd64

Reading time4 min
Views31K
image

Специя или SPICE (сокр. от англ. «Simple Protocol for Independent Computing Environments», то есть «Простой протокол для независимой вычислительной среды») — открытый протокол удаленного доступа к компьютеру или виртуальной машине.

Использование SPICE позволяет не только получить доступ к экрану, а также к буферу обмена и звуковой карте. В настоящее время протокол SPICE находится в стадии интенсивной разработки, несмотря на это его уже сегодня можно попробовать использовать в виртуальной машине под управлением модифицированного гипервизора KVM вместо базового открытого протокола VNC (Virtual Network Computing), используемого по-умолчанию.
Читать дальше →

Изменение часовых зон в России, Белоруссии и на Украине

Reading time44 min
Views40K
Как вы, наверняка, уже слышали, осенью 2011 сразу несколько государств приняли решение об изменении порядка исчисления времени на своей территории, а также об отмене сезонного перехода на летнее время.
В списке этих государств: Россия, Белоруссия, Украина, частично признанные государства: Абхазия и Южная Осетия, а также непризнанное государство Приднестровье. Т.е. во всех часовых поясах этих стран теперь круглый год будет фиксированный сдвиг относительно UTC, без дополнительных сезонных сдвигов.
(Примечание: Украина сначала приняла решение о переходе на время UTC+3 без летнего времени, но потом отменила принятое ранее решение и пока вернулась к прежнему порядку исчисления времени с сезонными переводами часов. Подробности ниже.)

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

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

12+ полезных Google Chrome chrome:// команд

Reading time2 min
Views400K
Все знают, что для того чтобы попасть в меню у Хрома, нужно нажать на Гаечный ключ в правом верхнем углу.

Однако есть несколько особенностей, которые не доступны из меню, которые вы можете увидеть только с помощью chrome:// команд.

Под катом приведены 12 самых полезных chrome:// команд, которые должны знать все.
Читать дальше →

Объединение javascript файлов

Reading time4 min
Views40K
Эпоха тёплого лампового WEB 1.0 давно прошла, и в последнее время мы имеем дело со страницами, которые кишат так называемой динамичностью. Динамичность может быть обеспечена при помощи JavaScript, VbScript и плагинами вроде Java, Flash, Silverlight. В этой статье я хочу затронуть одну из возможных оптимизаций web-сайта — объединение всех javascript файлов в один.

Зачем?


Основных причин две:
  1. Повышение скорости загрузки страницы.
  2. Снижение нагрузки на сервер.

Начнём с «повышения скорости загрузки». Зачастую web-сайт просто пестрит скриптами и их общее число может перевалить за 50. Впрочем, это уже будет «клинический случай». Но хотя бы 15-30 встречается регулярно. На каждый чихскрипт браузер посылает запрос и, в зависимости от ответа, либо грузит его полностью, либо забирает из кеша. 15 запросов это много. На это нужно время. Да, все современные браузеры загружают файлы параллельно, но это не повод их так эксплуатировать. В моём случае скорость загрузки страницы возросла в несколько раз.

Касательно снижения нагрузки на сервер — всё сложнее. Снижение числа запросов в любом случае улучшает ситуацию, но вот насколько — я сказать затрудняюсь, т.к. я не админ. Я полагаю, что для снижения нагрузки можно найти массу более простых и действенных решений. Возможно, это, так называемая, экономия спичек на фоне пожара. Но в качестве побочного эффекта — сгодится.
Читать дальше →
12 ...
18

Information

Rating
Does not participate
Location
Россия
Date of birth
Registered
Activity