Pull to refresh
29
0
quard @quard

User

Send message

Нас Django вкус волнует и манит

Reading time6 min
Views8.9K
Кушаем кактус

Прошло уже несколько недель, как официально вышла 3 версия Django. Я работал с этой версией ещё до публикации официального релиза и, к сожалению, заметил, что развитие Django сильно замедлилось. Версия 1.3 от 1.7 отличается в разы, а вот 3 версия содержит косметические изменения ветки 2 и не более.

Мой проект winePad стартовал с версии Django 1.3, и к текущему моменту в нем переопределено около 12% внутреннего кода Django.

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

Вот о работе над ошибками я и хочу рассказать:
Читать дальше →
Total votes 17: ↑16 and ↓1+15
Comments31

Работа с геолокацией в iOS 24/7

Reading time8 min
Views27K



В последнее время, часто вижу вопрос:
Можно ли в iOS работать с геолокацией, когда приложение свернули и отправлять данные на сервер?

Это действительно возможно и совсем не сложно.
How to вместится в превью статьи.

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


Чтобы была какая-то конкретика, я предположил, что перед нами стоит задача написать вело-трекер. Со стороны пользователя это выглядит так:


  1. Скачиваю приложение
  2. Запускаю
  3. Регистрируюсь
  4. Нажимаю куда просят
  5. Закрываю
  6. Катаюсь
  7. Запускаю
  8. Вижу результат

p.s. финальный код здесь.

Любые совпадения с реально существующим приложением случайны
Total votes 16: ↑15 and ↓1+14
Comments11

Лекции Технопарка. 1 семестр. Алгоритмы и структуры данных

Reading time2 min
Views148K
Очередной пост в рамках нашего цикла лекций Технопарка. В этот раз мы предлагаем вашему вниманию курс, посвящённый алгоритмам и структурам данных. Автор курса — Степан Мацкевич, сотрудник компании ABBYY.

Лекция 1. Основы


Начало первой лекции посвящено обсуждению основных понятий, на которых строится вся дальнейшая программа курса: что такое алгоритм и структура данных. Описаны базовые виды алгоритмов, их характеристики и методы анализа. Далее рассматриваются примеры создания алгоритмов для вычисления чисел Фибоначчи, проверки числа на простоту, быстрого возведения числа в целую степень. В конце лекции рассказывается об особенностях использования алгоритмов для работы с массивами: создание однопроходных алгоритмов, поиск минимального элемента, бинарный поиск.


Читать дальше →
Total votes 52: ↑48 and ↓4+44
Comments14

Добавляем MVP в игры на Unity3D

Reading time5 min
Views21K
image Всем доброго времени суток. В данной статье хотел бы рассказать о том как можно применить шаблон MVP в процессе разработки игр на платформе Unity3D. Использование этого шаблона может способствовать упорядочению кода и улучшению структуры проекта. Стоит сразу отметить, что в статье не дается детального описания самого шаблона, а предполагается наличие у читателя базовых знаний о нем.

Как мы все с Вами знаем, MVP — это шаблон призванный отделить презентационную логику от логики приложения. В случае Unity3D, представлением может быть GameObject с набором прикрепленных к нему компонентов, необходимых для реализации презентационной логики ( в том числе и компонент самой презентационной логики — MonoBehaviour имплементирующий соответствующий интерфейс представления (View)).
Читать дальше →
Total votes 15: ↑13 and ↓2+11
Comments6

Краткий курс компьютерной графики: пишем упрощённый OpenGL своими руками, статья 4a из 6

Reading time7 min
Views85K

Содержание курса



Улучшение кода






Official translation (with a bit of polishing) is available here.




Построение перспективного искажения


Четвёртая статья будет разбита на две, первая часть говорит про построение перспективного искажения, вторая про то, как двигать камеру и что из этого следует. Задача на сегодня — научиться генерировать вот такие картинки:



Читать дальше →
Total votes 92: ↑90 and ↓2+88
Comments48

авторизация приложений и схема подписи данных на базе OAuth 2.0

Reading time3 min
Views9.3K
При написании большинства приложений на платформе Facebook разработчику требуется получить доступ к данным пользователя: список друзей, ньюсфиды, ссылки, likes и т. д. Разумеется, такую информацию нужно передавать, убедившись что она попадет к нужному получателю от определенного отправителя. Для этого FB предлагает использовать разработанную ими схему подписи на базе OAuth 2.0.

Данные о текущем пользователе (или о текущем профиле) FB передает в параметре signed_request, а именно:
  • algorithm — HMAC-SHA256;
  • user_id — айди текущего пользователя;
  • oauth_token — зашифрованная строка, которую можно использовать в дальнейшем для доступа к Graph API, Old Rest API или FQL;
  • expires — когда истекает oauth_token;
  • profile_id — появляется на табе профиля.
Читать дальше →
Total votes 37: ↑33 and ↓4+29
Comments16

20 инструментов для мониторинга Твиттера

Reading time3 min
Views45K

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


Внимание, под катом много картинок!
Total votes 67: ↑53 and ↓14+39
Comments14

Вероятностный морфологический анализатор русского и украинского языков на PHP

Reading time3 min
Views3.5K
Перед каждым разработчиком сайтов рано или поздно становится вопрос о реализации поиска по сайту. Желательно чтобы поиск был по основе слова, т.е. не учитывал окончания слов. Для этой цели используются программы стеммеры, которые и выделяют из слова основу. Многие стеммеры работают на основе словаря, и вот чтобы не использовать огромные словари в небольших и средних проектах можно использовать вероятностный морфологический анализатор. Его отличительная особенность в относительно малом размере базы данных и соответственно в отсутствии нагрузки на базу. Без больших потерь в качестве выделения основы.

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

Заинтриговал?
Total votes 21: ↑20 and ↓1+19
Comments16

Иконок много не бывает. Часть 1

Reading time2 min
Views2K
image
Хотя сайтов для поиска бесплатных иконок становится все больше, порой нужны именно наборы иконок, чтобы на протяжении всего проекта сохранить стиль. Ниже собран набор из 10 комплектов качественных, бесплатных иконок. Бесплатные лицензии бывают разными, поэтому перед тем как использовать, проверьте, пожалуйста, лицензию на странице загрузки.
Читать дальше →
Total votes 49: ↑31 and ↓18+13
Comments11

Centos5.5 Nginx 0.8.33 + PHP5.3.1(fpm) + MySQL5.5.0(phpmyadmin) — полная настройка для начинающих — 1 часть

Reading time12 min
Views5.3K
Centos5.5 Nginx 0.8.33 + PHP5.3.1(fpm) + MySQL5.5.0(phpmyadmin)

Недавно мой знакомый купил ВПС, и конечно же ему захотелось развернуть полноценный сервер, плюс учитывая начальные ресурсы: 768Мб памяти и 2 ядра выделеных на его контейнер, сервер должен быть не прожорливым и быстрым, на нем будет крутиться blog. Решил поставить nginx, и php+php-fpm. Думаю nginx описывать не буду, как и php+php-fpm обзоры можно найти на хабре. Вот только вся соль проблемы в том, что он хотел поставить все правильно, как в учебнике. Заглянул по форумам, перегуглил весь интернет, но так и не нашел правильного пацанского мануала. Везде только основные моменты настроек и установки сервера. Так не пойдет, сказал он и пришел ко мне. Одна голова хорошо, но пиво в двоем пить лучше!
Стали составлять план, что нам нужно для работы.

! Данный пост предназначен только для начинающих, для тех кто не имеет опыта в установке и настройке сервера. Вам будет понятно на примере что и где и как установить, и потом углубившись в мануалы и вооружившись напильником, сделать все конкретно под ваши задачи.
Как минимум для начала работы нужно:
Putty — the.earth.li/~sgtatham/putty/latest/x86/putty.exe — SSH client

Centos 5.5 — последяя будет уже стоять на серваке.
Nginx 0.8.33 — можно выбрать и старший релиз или стабильный.
PHP 5.3.1 — думаю проблем с ней не будет.
MySQL 5.5.0 — база!
php-fpm патч
suhosin-patch
libevent-1.4.13-stable

и далее все остальные пакеты которые понадобятся для компиляции и работы сервера:
gcc gcc-c++ libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel libxml2 libxml2-devel zlib zlib-devel glibc glibc-devel glib2 glib2-devel bzip2 bzip2-devel ncurses ncurses-devel curl curl-devel e2fsprogs e2fsprogs-devel krb5 krb5-devel libidn libidn-devel openssl openssl-devel openldap openldap-devel nss_ldap openldap-clients openldap-servers libmcrypt libmcrypt-devel pcre-devel

Поехали...
Total votes 40: ↑25 and ↓15+10
Comments28

Работа с ВКонтакте Open API в локальном окружении разработчика

Reading time3 min
Views4.7K
Как многие знают, авторы социальной сети ВКонтакте около двух месяцев назад опубликовали Open API, с помощью которого сторонние сайты получили возможность аутентифицировать пользователей с помощью их аккаунтов ВКонтакте. В документации для разработчиков рассказывается, как настроить Open API для вашего сайта на production сервере. Но в реальной жизни разработка ведется на локальных машинах с хранением кода в системе контроля версий, а обноваления на production устанавливаются периодически.

При этом появляется проблема: как тестировать Open API на локальных машинах разработчиков, если доступ к ней настроен только для production-а? В данной статье я хочу рассказать о том, как настроить локальное окружение, чтобы работать с Open API в стандартном цикле разработки. Оговорюсь, что я рассмотрю разработку под Windows с использованием технологий Microsoft, но идея может быть легко перенесена на другие платформы.
Читать дальше →
Total votes 13: ↑1 and ↓12-11
Comments5

HTC Desire за ~16К — реальность! Но как?!

Reading time2 min
Views2.1K
HTC DesireНаверное, многие из вас, как и я, были «приятно» удивлены официальной рекомендуемой ценой (RRP) HTC Desire в России. 25990 руб — немаленькая сумма для телефона на базе молодой, развивающейся свободной ОС.

Рекомендуемая цена на Nexus One подсказывала, что и HTC Desire должен был стоить на порядок меньше. Беглый осмотр иностранных интернет-магазинов показал, что цена на HTC Desire колеблется в районе 18-20К у таких монстров, как Amazon.de, и 16-17К в онлайн e-Tailer'ах. Вот уж поистине — привет российские налоги и жадность локальных ритейлеров…

Поразмыслив о гарантии и итоговой сумме телефона, я решилась на покупку.
Читать дальше →
Total votes 114: ↑103 and ↓11+92
Comments198

ExtJS и PHP в примере

Reading time21 min
Views3K
Добрый день,

Когда я начинал писать на ExtJS, именно примеров с PHP кодом в интернете не хватало, статьи были, но все они сводились к тому, что был код ExtJS (переводы книг) без PHP. Поэтому я и решил написать эту статью.
Читать дальше →
Total votes 29: ↑17 and ↓12+5
Comments20

Распознаем текст, используя расстояние Хэмминга

Reading time6 min
Views39K
На данную статью меня натолкнула статья Alex’а Поветкина — «Распознавание образов методом потенциальных функций»

Итак, мы собираемся написать программу на Delphi (я использую версию 6), способную перевести символы с картинки в текст. Задача довольно популярная в интернете, и на каждый пост «Хочу реализовать распознавание символов!!! Помогите» самые частые ответы «почитай в интернете» либо «не берись, используй файнридер» и тому подобное.

Я, как и многие другие, начал с изучения основных алгоритмов. Конечно, такие монстры как FineReader тратят на алгоритмическую составляющую огромные деньги, и их секретов нам не узнать, но прочей информации было найдено приличное количество, чтобы понять основные методы. Но начнем издалека.
Читать дальше →
Total votes 100: ↑91 and ↓9+82
Comments34

Перенос почты из Gmail в Google Apps

Reading time2 min
Views2.1K
image

Если вы решили использовать базовый пакет Google Apps, а до этого пользовались Gmail'ом, а письма старые вам нужны, то вы очень быстро столкнетесь с тем, что Google Email Uploader некорректно работает с кириллицей, да и вообще теряет письма при переносе, а миграция средствами Google Apps на бесплатном варианте недоступна.
Читать дальше →
Total votes 18: ↑14 and ↓4+10
Comments5

Заоблачные деньги

Reading time6 min
Views1.2K
Частные компании отбирают у государственных космических агентств инициативу в освоении внеземного пространства. Уже в ближайшие годы индустрия космического туризма начнет приносить многомиллионные доходы.
Алексей Бондарев, предпоследний номер журнала Корреспондент


Коммерческому чутью британского бизнесмена Ричарда Брэнсона не завидует разве что Папа Римский. Но и у человека, чьи помыслы должны быть самыми бескорыстными, умение Брэнсона видеть отдаленную перспективу наверняка вызывают искреннее восхищение.
Читать и смотреть про космотуризм и космоотели дальше
Total votes 69: ↑63 and ↓6+57
Comments90

Реактивные веб-сайты. Электронные версии

Reading time1 min
Views741
Видимо, это становится хорошей традицией — раз в год выкладывать книги по клиентской оптимизацией в электронном виде. Будем надеяться, что традиция проживет в наше непростое время хотя бы еще несколько лет :)

К делу: выложена полноценная электронная версия книги «Реактивные веб-сайты» (клиентская оптимизация в алгоритмах и примерах). На данный момент она доступна в двух вариантах.
  1. PDF-версия, полностью аналогичная ушедшему в типографию макету книги. Идеально подходит для чтения на ПК или самиздата.
  2. FB2-версия (формат Fiction Book). Соответствует рукописи, по тексту незначительно отличается от PDF.
  3. FB2-версия (картинки шириной 200, меньше в 4 раза). Спасибо leonidas .
  4. FB2-версия (без картинок, меньше еще в 10 раз). Спасибо leonidas .

Все версии доступны для загрузки здесь. Прямых ссылок не будет, чтобы в десяти местах их не исправлять.
Читать дальше →
Total votes 99: ↑92 and ↓7+85
Comments43

Автоматизация использования Javascript API Вконтакте

Reading time7 min
Views3.8K
Пару дней назад, как обычно, никого не поставив в известность, Контакт добавил возможность разработки приложений на JavaScript, подключаемых через iframe. Доступ к API в этих приложениях, в общем-то, такой же, как и доступ к API из Flash — так или иначе, это обычный REST-протокол. Параметры передаются через строку запроса GET, а результат возвращается в виде JSON или XML.

Одной из проблем использования API Вконтакте является передача кроссдоменного запроса на http://api.vkontakte.ru/api.php. Другая проблема — громоздкое вычисление подписи, которой необходимо подписывать все запросы.
Читать дальше
Total votes 36: ↑25 and ↓11+14
Comments38

Seesmic Look — новый крутой твиттер-клиент

Reading time1 min
Views1.4K
Известная компания Seesmic, которая делает одноименный популярный твиттер-клиент, выпустила Look — клиент для самых простых пользователей, который обладает красивым, богатым интерфейсом, непохожим ни на один имеющийся клиент в настоящее время. Кроме привычных функций твиттера, Look содержит ссылки на каналы, тренды и различные интересы, так что неподготовленному пользователю достаточно щелкать по группам и читать ленту новостей о том, что ему интересно.

image

Убежден, многие сочтут уровень «красивостей» зашкаливающим. Но это кому как на вкус. Как заметили обозреватели, внешний вид Seesmic Look и его возможность Playback Mode идеально подходят для вывода картинки на TV.

Seesmic Look с его красивостями доступен только на Windows и использует на полную катушку возможности Windows 7. Скачивать отсюда.

via TechCrunch
Total votes 101: ↑61 and ↓40+21
Comments106

OAuth: описание протокола простым и понятным языком

Reading time16 min
Views190K
OAuth — популярный протокол, который позволяет социальным сервисам интегрироваться между собой и дает безопасный способ обмена персональной информацией. OAuth может связать между собой 2 сервиса, каждый из которых имеет свою пользовательскую базу — именно их я в данном случае называю «социальными». Когда начинаешь работать с OAuth, первое ощущение — что протокол весьма сложен и избыточен. В этой статье я попытаюсь объяснить основы OAuth человеческим языком.

Пример кросс-авторизации


Вернемся в 2005-й год и представим, что мы пишем социальную сеть. В ней имеется форма импорта контактов из адресной книги GMail. Что нужно для доступа к контактам GMail? Конечно, логин и пароль от ящика. Но если мы попросим ввести их на нашем сайте, пользователь заподозрит неладное. Где гарантия, что мы не сохраняем на сервере введенные пароли? Поэтому нам хочется, чтобы пароль вводился только на сайте GMail, и после этого доступ к контактам через API GMail предоставлялся нашей социальной сети (возможно, на время).
Под катом - повествование с примерами
Total votes 134: ↑124 and ↓10+114
Comments34
1
23 ...

Information

Rating
Does not participate
Location
Москва, Москва и Московская обл., Россия
Date of birth
Registered
Activity