Pull to refresh
17
0
Andrewus @Andrewus

Head of platform & devops lead

Send message

База GeoIP – страны и города, январь 2011

Reading time2 min
Views12K
Вышла в свет новая версия русскоязычной базы данных стран и городов. Основные изменения:
— для перевода названий городов использован API Карт Google (идея chernikov)
— для поиска по странам СНГ подключена база geobaza.ru (идея derketzer)
Результат этой работы доступен для свободного скачивания.
Читать дальше →

Каркас сайта в один клик

Reading time1 min
Views5.7K
Дизайнерская компания Volkside сделала подарок веб-разработчикам, выпустив бесплатный букмарклет Wirify, с помощью которого можно отобразить каркас (wireframe) любого сайта одним щелчком мыши. Полезная вещь, чтобы быстро оценить некоторые аспекты дизайна сайта: модульную систему вёрстки, визуальную иерархию, свободное пространство, симметрию, золотое сечение, правило третей и т.д.


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

Тонкости регулярных выражений. Часть 2: возвраты и их количество

Reading time9 min
Views12K
Часть 1: метасимволы внутри и вне символьных классов.

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

Делаем свой webfile

Reading time4 min
Views13K
Отчего-то всегда хотел сделать свой сервис для загрузки файлов. Всевозможные slil/zalil не устраивали своей скоростью. ifolder — обилием рекламы. Пользовался не очень популярным (от этого он ни чуть хуже не становился) сервисом up.spbland.ru. Но это как-то не правильно. И тут я решил написать свой сервис. Не буду вдаваться в подробности и рутину, только концепция.
Читать дальше →

Самые быстрые настройки для PHP-скриптов

Reading time7 min
Views35K
Наверное, все, кто сталкивался с разработкой более или менее серьезных приложений, знают, что выбор формата хранения настроек скрипта или приложения — достаточно ответственное дело. Конфиги должны быть легко читаемыми, легко модифицируемыми, легко переносимыми, и так далее — список можно продолжать и продолжать.

Так как серверные PHP-скрипты выполняются, бывает, много раз в секунду, скорость загрузки конфигов — достаточно важный параметр. Хотя ему, порой, уделяется не очень много внимания. Давайте сравним различные варианты хранения настроек для PHP-скриптов с точки зрения скорости их работы. Ну и коснемся вкратце их удобства.
Читать дальше →

Полулегальное воровство печеньками

Level of difficultyEasy
Reading time5 min
Views56K
Часть хабралюдей честные и бескорыстные и привлекают их всякие техническия штучкэ. Но кое-кто кое-где у нас порой и не столь бескорыстен. Честно жить не хочет. Я расскажу вам о том, как можно по сути воровать, но при этом не выходя за рамки уголовного кодекса. Эдак с $15,000,000.
Читать дальше →

jQuery плагин, для Ajax загрузки видео на YouTube

Reading time6 min
Views12K
Недавно я написал небольшой плагин на jQuery и PHP. Функционал простой: посредством Ajax задается описание и загружается видео на YouTube, плагин вернет статус загрузки, и если она прошла успешно — id видео. Плагин может применяться на любом сайте, и легко вставляется в любую CMS.

Все началось с того, что при разработке CMS для сайта местного телеканала я столкнулся с необходимостью сделать загрузку видеороликов на YouTube. Так как на сайт часто будут добавлять видео, то каждый раз логиниться на YouTube, заливать туда ролик, получать на него ссылку, лезть в CMS и вставлять её туда — очень напряжно. Причем, желательно делать это через Ajax, чтоб можно было легко включить плагин в любой проект.

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

HTML5 Canvas — создание аркады-скроллера по шагам

Reading time8 min
Views5.7K
image

Предисловие

Это инструкция по созданию игры, которую я накодил за пару вечеров. Целью было не столько создание достойного представителя жанра, сколько проверка возможностей Canvas и ООП в JavaScript. Чтобы было интереснее, я поставил условие — никаких внешних файлов со спрайтами, вся графика рисуется встроенными методами. Также, не используется никаких фреймворков и библиотек. Просто потому, что в такой небольшой игре их использование ИМХО не оправдано.

В целом, Canvas молодая платформа, и может вызывать интерес перенесением на нее классических игровых концепций.

Задача

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

Исполнение

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

FileSystem API&File API: разбираемся и используем

Reading time14 min
Views98K
HTML5 Powered with Performance & Integration, and Offline & Storage
В данной статье я хочу рассмотреть FileSystem API и File API, разобраться с его методами и показать пару полезных штук. Эта статья является компиляцией материалов с html5rocks (1, 2, 3). Все представленные ниже демки можно посмотреть по первым двум ссылкам. Третья ссылка так же предлагает ряд интересных демо. Ну а теперь займемся изучением материала.
Читать дальше →

Последствия использования технологии Copy-Paste при программировании на Си++ и как с этим быть

Reading time8 min
Views7K
Copy-Paste, Ctrl-C, Ctrl-V
Я занимаюсь созданием анализатора PVS-Studio, выявляющего ошибки в исходном коде приложений на языке C/C++/C++0x. В связи с этим мне приходится просматривать большой объем исходного кода различных приложений, где с помощью PVS-Studio были обнаружены подозрительные участки кода. У меня накопилось достаточно примеров, в которых хорошо видно, когда ошибка появилась на свет из-за копирования участка кода и его модификации. Конечно, это не новая идея, что использовать Copy-Paste при программировании плохо. Однако попробуем не отделываться рекомендацией «не копируйте код» и подойдем к этой теме более внимательно.
Читать дальше →

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

Reading time2 min
Views4.8K


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

Смотрим

Настольные игры: во что играют в IT-офисах?

Reading time9 min
Views113K
В этом топике — обещанный обзор разных настольных игр.

— Первая часть — это «портированные» версии известных компьютерных (по сюжету Starcraft, Warcraft, Civilization, Age of Empires, Master of Orion, Doom)
— Вторая часть — игры, которые интересны многим хабражителям, судя по комментариям к прошлым топикам.
— В комментариях предлагаю делиться информацией об интересных играх: думаю, многие смогут подсказать нечто необычное в плане поиграть или же предупредить от напрасной покупки.
— Топик будет интересен тем, кто хочет понять, что популярно на рынке, вкратце посмотреть товар для магазина и тем, кому просто интересно, что же там вообще есть из настольных игр для себя, компании или в подарок.
— В конце есть приятный бонус хабрачитателям.

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

Система управления документами Alfresco

Reading time7 min
Views151K
logoПоиск по Хабру не нашел подробных статей по системе Alfresco. В данной статье попробую убить сразу двух зайцев: рассказать что представляет из себя система Alfresco и как мы используем ее в нашей работе.

Как хранятся документы в небольшой организации? Самое простое — на локальном диске. А если необходима совместная работа — пересылаются по почте, либо, самый популярный вариант, на сетевом диске. Еще прекрасный вариант — Google Docs, но не уверен что он широко используется в Российской практике.

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

При мысли о системе электронного документооборота первыми на ум приходят дорогие решения от известных вендоров, таких как Microsoft, EMC, 1С и т.д. Но есть и альтернатива закрытым решениям — система управления документами с открытым исходным кодом Alfresco. Или, если по-английски, то Open Source Enterprise Content Management System (ECM, CMS).

Конкуренты Alfresco — это закрытое ПО, такое как EMC Documentum, Open Text, Sharepoint. Сами разработчики Alfresco пишут о своих конкурентах, как о наследии 90-х годов, которое:
  • слишком дорого стоит
  • слишком сложно использовать, разворачивать, масштабировать
  • слишком сложно модифицировать под свои нужды
  • слишком “проприетарно”

Попробую рассказать о системе, а вы уже решайте правы ли были разработчики.
Читать дальше →

Программирование в PHP для командной строки

Reading time9 min
Views43K
Предисловие

Ubuntu предоставляет в комплекте с пакетом apache2 утилиты для включения\выключения виртуальных хостов и модулей. Однако, создание конфигов для виртуальных хостов отнимают дополнительное время. Поэтому, мне захотелось исправить этот недостаток. Можно было, конечно, сделать автоматические поддомены для апача, но я решил написать скрипт, который создает файлы конфигурации виртуальных хостов для апача, а так же, при необходимости, добавляет имя хоста в файл /etc/hosts. Я не очень хорошо пишу скрипты в bash'e, поэтому решил использовать PHP для моей довольно простой задачи, который я, к тому же, знаю довольно неплохо.
Итак, в этой статье мы сделаем сразу две полезных вещи: ознакомимся с операциями ввода\вывода командной строки в PHP и напишем скрипт, который совсем немного упростит нам жизнь.
Читать дальше →

Как оградить себя от сайтов-поглотителей времени?

Reading time2 min
Views65K
Думаю многие фрилансеры и не только, задавались этим вопросом. Сначала написал целый абзац текста, а потом подумал зачем лить воду? В общем вот конкретика:
Читать дальше →

Как создать и продать настольную игру

Reading time8 min
Views173K


Реальная информация о ситуации на отечественном рынке настольных игр из первых рук, описание процесса создания игры, перепись грабель и схема монетизации.

Кому: авторам настольных игр, разработчикам компьютерных и мобильных игр, желающих портировать их в настольный формат, тем, кому интересно как розница работает изнутри. И тем, кто просил подробности в прошлом топике про Старкрафт.

Кратко:
— Ситуация на рынке и оценка его ёмкости
— Почему важно сразу работать с крупным игроком
— Грабли разработчиков
— Расчёт монетизации и установка цены на продукт
— Аутсорсинг в Китай и другие замечательные страны
— Издание игры за рубежом
— Что нужно сделать, чтобы крупная розничная сеть полюбила ваш продукт

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

Ветвления. Что с ними можно сделать

Reading time11 min
Views8.5K
Мой прошлый пост вызвал огромный резонанс. Комментариев было не много, но я получил множество писем, а некоторые читатели выступили даже с открытыми заявлениями (там, правда, преобладают наезды на меня лично и на хабр в целом, но есть и мысли по существу вопроса). Поэтому я решил продолжить писать в жанре «мои мысли по поводу вопросов известной компании». Этим постом я постараюсь решить две задачи: (i) ответить на вопросы и возражения читателей предыдущего поста и (ii) толкнуть в некотором смысле философскую мысль о безIFовом программировании. Букв получилось довольно много, но те, кому интересно только что-то одно из поста, могут пропустить половину.

И ещё: этот топик (как и прошлый) — не наезд ни на кого. Просто интересно порассуждать об интересных вопросах. Здесь нет подтекста, намёка, вызова. Параноиков и сторонников теорий заговоров попрошу расслабиться.

В этот раз хотел бы взглянуть на вопрос 4.
Читать дальше →

Обнаружение объектов методом Оцу

Reading time6 min
Views47K
Здравствуйте, уважаемые хабрачитатели и хабракритики. Этот пост я хотел бы посвятить такой актуальной на сегодняшний день теме, как обнаружение объектов на изображениях.
В качестве одного из алгоритмов такого обнаружения рассмотрим выбор порога быстрым и эффективным методом Оцу.
Читать дальше →

Современные веб-формы: еще несколько тонкостей

Reading time11 min
Views31K
Большинство людей воспринимают мир с помощью глаз, поэтому визуальный дизайн имеет огромное значение при создании фронтендов веб-приложений. Но так ли полезны все эти рюшечки и «карамельки», которыми любят насытить интерфейс современные веб-дизайнеры? В данной статье я хотел бы рассказать о типичных ошибках при дизайне веб-форм, а также поделиться некоторыми секретами создания правильного интерфейса.



Потратить время на чтение

Фильтр Блума

Reading time3 min
Views63K
И снова здравствуйте! Сегодня я поведаю о фильтре Блума — структуре данных гениальной в своей простоте. По сути, этот фильтр реализует вероятностное множество всего с двумя операциями: добавление элемента к множеству и проверка принадлежности элемента множеству. Множество вероятностное потому, что последняя операция на вопрос «принадлежит ли этот элемент множеству?» даёт ответ не в форме «да/нет», а в форме «возможно/нет».

Как фильтр это делает?

Information

Rating
2,836-th
Location
Москва, Москва и Московская обл., Россия
Works in
Date of birth
Registered
Activity