Pull to refresh
10
Karma
0
Rating
Мишган @evnuh

Извините, но я старался

Adminer — веб-интерфейс для баз данных размером в один .php файл

MySQL *PostgreSQL *SQL *NoSQL *


В свете недавнего поста про сравнение PostgreSQL и MySQL, в комментариях возникла проблема выбора удобного интерфейса для работы с постгресом. Я сам столкнулся с такой проблемой, решив поискать альтернативы всем известному phpMyAdmin / php*Admin, который считается стандартом у веб-мастеров.
Читать дальше →
Total votes 61: ↑56 and ↓5 +51
Views 79K
Comments 53

Быстрый фильтр каталога для интернет-магазинов на основе битмапов Redis

Website development *PHP *NoSQL *


Не секрет, что каждый интернет-магазин должен помогать пользователям найти то, что им нужно. Особенно, если товаров у вас много (> 10). На помощь приходит каталогизация товаров, но разбить товары по категориям — полдела. Товары внутри категории нужно уметь фильтровать по их свойствам. Особенно, если товары у вас разношёрстные, например, одежда, электроника, ювелирные изделия и т.д. И тут любой разработчик, пишущий свой e-commerce продукт, сталкивается с неприятными реалиями жизни: у товаров могут быть совершенно разные свойства, у некоторых товаров они могут отсутствовать, некоторые товары по одному свойству могут попадать под разные значения (цвет платья то ли синий, то ли голубой, соответственно, неплохо бы его показать и по синему и по голубому цвету). Проще говоря, у вас EAV. Бывает ещё, что EAV вам диагностирует заказчик ближе к концу разработки, а то и просит добавить фильтр по динамическим свойствам уже после релиза.
Читать дальше →
Total votes 38: ↑35 and ↓3 +32
Views 59K
Comments 75

Brubeck — быстрый, statsd-совместимый агрегатор метрик от GitHub

High performance *Website development *Designing and refactoring *Data visualization *


История появления


Одной из главных целей команды разработчиков GitHub всегда была высокая производительность. У них даже существует поговорка: «it's not fully shipped until it's fast» (продукт считается готовым только тогда, когда он работает быстро). А как понять, что что-то работает быстро или медленно? Нужно мерять. Измерять правильно, измерять надёжно, измерять всегда. Нужно следить за измерениями, визуализировать всевозможные метрики, держать руку на пульсе, особенно, когда дело имеешь с высоконагруженными онлайн системами, такими как GitHub. Поэтому метрики — это инструмент, позволяющий команде предоставлять столь быстрые и доступные сервисы, почти без даунтаймов.

В своё время GitHub одними из первых внедрили у себя инструмент под названием statsd от разработчиков из Etsy. statsd — это агрегатор метрик, написанный на Node.js. Его суть состояла в том, чтобы собирать всевозможные метрики и агрегировать их в сервере, для последующего сохранения в любом формате, например, в Graphite в виде данных на графике. statsd — это хороший инструмент, построенный на UDP сокетах, удобный в использовании как на основном Rails приложении, так и для сбора простейших метрик, наподобие вызова nc -u. Проблема с ним начала проявляться позже, по мере роста количества серверов и метрик, отправляемых в statsd.
Читать дальше →
Total votes 17: ↑17 and ↓0 +17
Views 17K
Comments 11

Ретроспектива разработки Crash Bandicoot, или как разработчики упаковывали целые игры в 2MB RAM

Abnormal programming *Designing and refactoring *Game development *
Recovery mode
Translation
Вот вам анекдот из конца 90-ых. Я (Dave Baggett) был одним из двух программистов (вместе с Andy Gavin), разрабатывающих Crash Bandicoot для PlayStation 1.



Оперативная память была главной проблемой даже в те времена. У PS1 было всего 2MB RAM, и нам приходилось совершать безумные вещи, чтобы уместить в них игру. У нас были уровни, содержащие более 10MB чистых данных, и эти 10 мегабайт должны были постранично загружаться и выгружаться в память динамически, без каких-либо видимых задержек для игрока, при фреймрейте в 30 кадров в секунду.
Читать дальше →
Total votes 109: ↑107 and ↓2 +105
Views 76K
Comments 31

CodeIgniter 3.0 — будет!

Website development *PHP *CodeIgniter *
Recovery mode


В последние годы популярность данного, некогда лидирующего PHP фреймворка, сошла на нет, что видно и по трендам использования различных PHP фреймворков, и по отзывам разработчиков. Многие из них поставили крест на CI после выхода новости годичной давности о поиске новых владельцев и мейнтейнеров для CodeIgniter, т.к. EllisLab перестало поддерживать его и перекинуло все силы на свою платную CMS ExpressionEngine. Остальные продолжали сетовать на то, что версия 2 вышла аж 28 января 2011 года (больше 3 лет назад!) и с тех пор кардинально не обновлялась.
Читать дальше →
Total votes 35: ↑29 and ↓6 +23
Views 20K
Comments 37

gmaps.js — самый легкий способ использования Google Maps API

Website development *JavaScript *Maps API *
Recovery mode
Привет!

Расскажу об одной небольшой (~30kb) JS библиотеке для удобной работы с Google Maps API под названием gmaps.js.
Раз уж библиотека создана для ускорения процесса веб-разработки, то и я вас задерживать не буду. Как можно понять из названия, она делает не что иное, как упрощает взаимодействие с API Google Maps. Многие из вас работали с API и, вероятно, каждый раз вам приходилось попотеть, чтобы порыться в документации и реализовать, например, свое собственное описание метки на карте. Или подписаться на событие взаимодействия с картой…
Читать дальше →
Total votes 94: ↑89 and ↓5 +84
Views 47K
Comments 24

Как Instagram к запуску Android приложения готовился

Server optimization *
Как вы уже могли узнать, Instagram продается Facebook за $1 млрд. У многих возник вопрос: За что такие деньги? Кто-то на хабре сравнил это с бумом доткомов. Да только весь этот бум на одном Facebook и держится.

В течении двух лет CEO Instagram Kevin Systrom думал, как же монетизировать свое быстрорастущее детище, но так и не придумал. При том много раз просказльзывали слухи о его отказе в сделке с Facebook. Автоподсказчик Google уже давно выдавал первым вариантом к запросу «kevin systrom» фразу «Kevin Systrom net worth». Дела шли в гору и без Facebook.

Неделю назад они выпустили приложение на Android и продались Facebook за сумму с 9 нулями в долларах. Владельцы андроидов были рады:

Разработчики же, не очень: «Куда так топят? За что им платят? Я тоже так могу, там же ничего сложного и инновационного!» кричал каждый второй разработчик на Android / iOS.

Лично я ждал падения сервиса в день релиза приложения в магазине Google Play. Но этого не случилось. Количество зарегистрированных пользователей в первые 24 часа составило около миллиона человек. Немалая цифра, я вам скажу.

И как же команде из 9 человек удалось вытерпеть такой наплыв и не сломаться?
Читать дальше →
Total votes 92: ↑72 and ↓20 +52
Views 5.5K
Comments 104

Information

Rating
4,824-th
Location
Москва, Москва и Московская обл., Россия
Registered
Activity