Как стать автором
Обновить
0
0
Aleksey Laletin @Alexion

Пользователь

Отправить сообщение

Теория и практика игры «Морской бой» — по-честному

Время на прочтение3 мин
Количество просмотров73K
Читая в очередной раз Хабр, я заинтересовался статьей «Морской бой с искусственным интеллектом — по-честному» и программой «Интеллектуальный морской бой».
Попробовав сыграть с ней, я обнаружил, что стратегия программы пока оставляет желать лучшего, т.к. счет был 9:1 в мою пользу.
Я решил поделиться своими мыслями со всеми, и в частности с автором(michurin) программы, т.к. проект очень интересный.

Внимание!
После прочтения данной статьи исход игры «Морской бой» перестанет быть для вас случайностью.

Статья писалась простым языком без использования формул.
«Любая формула, включенная в книгу, уменьшает число ее покупателей вдвое» Стивен Хокинг.
Читать дальше →
Всего голосов 102: ↑98 и ↓4+94
Комментарии91

flash-видео на веб-страницах и PHP

Время на прочтение8 мин
Количество просмотров6K
Эта статья — перепечатка статьи от 16 ноября 2007 г. с моего блога, ссылку на который можно найти в моем же профайле — но, поскольку так уж вышло, что тема эта, кажется, до сих пор многим интересна, к тому же не так давно я читал на эту тему доклад на конференции PHPConf… в общем — судите сами.

Вступление


В последнее время все большее распространение получает технология трансляции видео через веб – без необходимости скачивать медиа-контент на машину пользователя, с просмотром прямо из браузера. Таким образом можно просматривать довольно большое количество различных форматов видео, однако, это требует наличия определенных плагинов на стороне пользователя. Очевидно, самым распространенным подобным плагином является flash-player (ну хорошо, хорошо: если быть точным, то он, конечно же, не может сам по себе проигрывать видео – но позволяет легко создать приложение, способное воспроизводить видео-контент). Яркий пример такого подхода – youtube.com. Попытаюсь рассказать о том, как самостоятельно организовать трансляции флэш-видео на своей веб-странице и какие существуют подходы к этой проблеме.

Читать дальше →
Всего голосов 19: ↑19 и ↓0+19
Комментарии20

NodeSchool, Node.js и один урок для самых маленьких

Время на прочтение4 мин
Количество просмотров25K




Сегодня я вам расскажу про одно очень интересное сообщество под названием NodeSchool. Данное сообщество продвигает обучение по платформе node.js
Читать дальше →
Всего голосов 29: ↑23 и ↓6+17
Комментарии6

Сериализация целочисленных массивов Judy в PHP

Время на прочтение5 мин
Количество просмотров5.4K
Как известно, переменная в PHP это не только ценные данные, а целый контейнер zval. А массив таких переменных занимает в памяти чересчур много места.
В PHP есть реализация Judy массивов — быстрых, ассоциативных и потребляющих на порядок меньше памяти. Но, к сожалению, методов сериализации\десериализации для них не существует.
Читать дальше →
Всего голосов 30: ↑27 и ↓3+24
Комментарии2

Как мы делали API для социальной сети (REST API для WEB)

Время на прочтение9 мин
Количество просмотров55K
Я в своей работе часто сталкиваюсь с разными новыми концепциями, идеологиями и проектами. В основном из-за того, что участвую в разработке разных больших проектов, в каждом из которых встречаю что-то новое. Сегодня я хочу рассказать о своем опыте с REST API. Идеологии, которую мне как-то раз довелось применить при разработке одной социальной сети.

Об этом уже немало написано, и все же чего-то полного, позволяющего найти все необходимые мне детали в одном месте, когда я только начинал этим заниматься, в русскоязычной редакции я не встречал. Попробую собрать то, что удалось выяснить, путем проб, ошибок и постоянных поисков в работе с различными проектами. Итак, приступим!

Хочу сразу оговориться: REST для меня — это, в первую очередь, идеология, к которой я отношусь трепетно и нежно. И, если кто-то не готов принять ее такой, какая она есть — не стоит читать дальше эту статью. У программиста всегда есть куча полезных дел, которыми можно заняться, пока приходит понимание необходимости писать узнаваемые интерфейсы и прятать за их простотой логику приложений любой сложности…

Сразу должен оговорить, что я программист, а не писатель и это моя первая статья. Возможно, получилось сухо, но мы тут все технари, надеюсь, будет интересно. В статье я буду описывать свой опыт с REST API. Постараюсь сделать статью универсальной, чтобы эту идеологию по моей статье можно было применять для любого интернет-проекта.

Теперь давайте по порядку.
Читать дальше →
Всего голосов 61: ↑49 и ↓12+37
Комментарии52

Разработка web API

Время на прочтение9 мин
Количество просмотров287K

Интро


Это краткий перевод основных тезисов из брошюры «Web API Design. Crafting Interfaces that Developers Love» Брайана Маллоя из компании Apigee Labs. Apigee занимается разработкой различных API-сервисов и консталтингом. Кстати, среди клиентов этой компании засветились такие гиганты, как Best Buy, Cisco, Dell и Ebay.

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

Собираем API-интерфейсы, которые понравятся другим разработчикам


Понятные URL для вызовов API

Первый принцип хорошего REST-дизайна — делать вещи понятно и просто. Начинать стоит с основных URL адресов для ваших вызовов API.

Ваши адреса вызовов должны быть понятными даже без документации. Для этого возьмите себе за правило описывать любую сущность с помощью коротких и ясных базовых URL адресов, содержащих максимум 2 параметра. Вот отличный пример:
/dogs для работы со списком собак
/dogs/12345 для работы с отдельной собакой
Дальше
Всего голосов 235: ↑224 и ↓11+213
Комментарии128

Как вывести деньги из App Store на карту Payoneer

Время на прочтение2 мин
Количество просмотров44K
Обещанного ждут не три года, а всего несколько месяцев. В нашем прошлом посте мы обещали рассказать про вывод из App Store и, вот, рассказываем.

Многие владельцы карт Payoneer зарабатывают на жизнь нелегким трудом разработчика приложений. А перед каждым разработчиком (или компанией оных) рано или поздно встает вопрос вывода заработанных средств. Услуга US Payment Service компании Payoneer позволяет получать выплаты от Apple, PayPal и Google и многих других прямо на вашу карту Payoneer MasterCard.
Читать дальше →
Всего голосов 48: ↑44 и ↓4+40
Комментарии53

Coroutines в PHP и работа с неблокирующими функциями

Время на прочтение18 мин
Количество просмотров79K
Одним из самых больших нововведений в PHP 5.5 будет поддержка генераторов и корутин (сопрограмм). Генераторы уже достаточно были освещены в документации и в нескольких других постах (например в этом или в этом). Сопрограммы же получили очень мало внимания. Это гораздо более мощный, но и более сложный для понимания и объяснения, инструмент.

В этой статье я покажу как реализовать планировщик задач с использованием корутин, чтобы вы поняли, что с ними можно делать и как их применять. Начнем с нескольких вступительных слов. Если вы считаете, что вы уже достаточно хорошо знаете как работают генераторы и корутины, тогда можете сразу перейти к разделу «Совместная многозадачность».

Генераторы


Суть генератора в том, что это функция, которая возвращает не просто одно значение, а последовательность значений, где каждое значение выброшено одно за другим. Или, другими словами, генераторы позволяют вам реализовать итератор, без лишнего кода.
Читать дальше →
Всего голосов 111: ↑103 и ↓8+95
Комментарии57

Шпаргалка по верстке для больших и маленьких

Время на прочтение3 мин
Количество просмотров100K
Приветствую!

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

Статья рассчитана скорее на новичков и на людей, имеющих косвенное отношение к верстке, но которым по долгу службы часто приходится иметь с ней дело. Возможно, даже гуру верстки найдут в ней что-нибудь новое для себя, если давно не совершенствовали свои навыки.
Читать дальше →
Всего голосов 167: ↑135 и ↓32+103
Комментарии103

Standard PHP Library (SPL) — Часть 1: Структуры данных

Время на прочтение5 мин
Количество просмотров64K
Привет, Хабр! В данной статье речь пойдет про Standard PHP Library (SPL). На хабре до сих пор нет толкового мануала об этой библиотеке, которая уже стала частью ядра PHP (с версии 5.3). Данная библиотека содержит набор интерфейсов, классов структур данных, итераторов и функций, с помощью которых можно значительно упростить себе жизнь и повысить качество кода. В данной статье я рассматриваю такую часть библиотеки, как структуры данных. Также я покажу альтернативные решения поставленных задач и сравню скорость выполнения в обоих случаях.

Подробнее
Всего голосов 66: ↑56 и ↓10+46
Комментарии38

Полезные штуки для iOS-разработчика #1

Время на прочтение4 мин
Количество просмотров83K
На Хабре в свое время было несколько статей «Очень много полезных штук для AS3». Автор попытался собрать ссылки на самые полезные и интересные библиотеки. И т.к. в последнее время я разрабатываю под iOS, решил последовать его примеру и сделать то же самое, но для своей платформы. Описания почти прикладывать не буду, все есть на страничках проектов.
Читать дальше →
Всего голосов 114: ↑109 и ↓5+104
Комментарии80

Книга “Разработка приложений для Windows 8 на языке C#” доступна для скачивания

Время на прочтение1 мин
Количество просмотров48K

Стала доступна для бесплатной загрузки первая русскоязычная книга по разработке Windows Store приложений на языке C#.
Вы можете скачать PDF версию данной книги на сайте:

http://www.spugachev.com/windows8book
Также, можно купить бумажную версию на OZON.RU.
Авторы книги: я (WizardBox), Atreides07 и kichik.
Читать дальше →
Всего голосов 100: ↑86 и ↓14+72
Комментарии23

Framework в Мармеладе (часть 1)

Время на прочтение12 мин
Количество просмотров13K
В этом цикле статей я опишу разработку небольшого Framework-а, предназначенного для создания 2D-игр, с использованием Marmalade. Marmalade предоставляет API для разработки кросс-платформенных приложений, позволяя собирать их, в том числе, под Android и iOS. Работа в Marmalade довольно комфортна, а его справочная система сопровождена большим количеством примеров, но сам процесс разработки носит довольно низкоуровневый характер. Использование готового Framework-а может сильно облегчить жизнь начинающему разработчику.
Читать дальше →
Всего голосов 24: ↑19 и ↓5+14
Комментарии16

Способ разделения frontend/backend-частей в Yii

Время на прочтение5 мин
Количество просмотров68K

О чем это я?


Хочу немного рассказать, как я разделяю фронтэнд/бекэнд-части сайта во всех своих проектах на Yii. Не претендую на авторство этого способа, просто хочу немного объяснить, что и как организуется и работает.

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

Есть несколько способов добиться этого. Не буду вдаваться в подробности каждого из них, если вам интересно — можете поискать на форуме yiiframework.com.
Самым элегантным и удобным мне показался вариант с использованием своего “поведения” запуска приложения. Он позволяет очень удобно разграничить приложение в плане директорией, использовать разные конфиги для каждой части сайта и т.п.
Читать дальше →
Всего голосов 53: ↑50 и ↓3+47
Комментарии52

Полезные штуки для iOS-разработчика #2

Время на прочтение3 мин
Количество просмотров38K
Некоторое время назад я прочитал интересный пост, посвященный полезным фрэймворкам и библиотекам для разработки под iOS. С вашего позволения и согласия Coder89 представляю «Полезные штуки для iOS-разработчика часть вторая».
Читать дальше →
Всего голосов 63: ↑57 и ↓6+51
Комментарии19

Сервис push-уведомлений Pushover для Android и iOS в связке с PHP

Время на прочтение7 мин
Количество просмотров103K

Вкратце, push-уведомления — это небольшие по объему важные сообщения от программы или сервиса, отображаемые операционной системой тогда, когда вы непосредственно не работаете с указанным приложением или сервисом. Преимущество таких уведомлений в отсутствии необходимости держать программу вечно в памяти, тратя на нее процессорные мощности и память.
Не буду здесь расписывать всю технологию доставки удаленного уведомления, ибо это уже сделано до меня. Выглядит примерно так: периодически демон опрашивает сервер и в случае появления сообщения, показывает его нам.
Для iOS придумали APNS, для Android-а — C2DM-GCM, я же хочу рассказать про кроссплатформенный (громко) сервис Pushover и связке его с php-сайтом.
Читать дальше →
Всего голосов 20: ↑16 и ↓4+12
Комментарии26

Использование преимуществ встроенного PHP сервера

Время на прочтение7 мин
Количество просмотров40K
Одним из крутейший новшеств в php 5.4 является встроенный сервер, созданный специально для разработки и тестирования. Теперь вы можете писать и тестировать свой код не имея полноценного веб-сервера — просто запустите встроенный сервер, протестируйте свой код, и выключите его, когда закончите.
Сервер, так же, предоставляет возможность и для творческого использования. Например, вы можете распространять портативное web-приложение на CD или USB, или даже как десктопное приложение, созданное на PHP без использования GTK или других графических библиотек.
Читать дальше →
Всего голосов 51: ↑45 и ↓6+39
Комментарии24

CSS/JS библиотека в стиле Metro, совместимая с Twitter Bootstrap

Время на прочтение1 мин
Количество просмотров26K
Не так давно я писал на хабре о Bootmetro — дизайне Twitter Bootstrap в стиле Windows 8. Эта разработка хороша идеей, но на практике все работает очень коряво. К счастью, есть качественно сделанный аналог от Ace Subido — CSS3 Microsoft Metro Buttons.



По сути это набор стилей для кнопок и форм, который можно использовать вместе с Twitter Bootstrap.
Читать дальше →
Всего голосов 63: ↑53 и ↓10+43
Комментарии12

Попытка номер раз создать почти идеальный htaccess

Время на прочтение14 мин
Количество просмотров247K
    - Google выше ранжирует сайты, которые загружаются быстрее.
    - Если на eBay или Amazone увеличить время загрузки страниц на 9% они теряют 1% прибыли.
    - Сделать свой сайт быстрее, чтобы сэкономить на клиентском трафике и на числе обращений к серверу.


.htaccess — наш герой


Профессионалы знают, что такое htaccess.
Тем кто собираются уйти с народ.ру на php-хостинг только предстоит узнать, что это такое.
Те кто только что установил свои первые jooml'у или wordpress срочно должны узнать о нашем герое — htaccess

Зачем нам .htaccess ?


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

Или другой пример. Скажем ваш ресурс начинает набирать популярность, но переезжать на выделенный сервер ещё рано, а мощностей VPS уже не хватает. Вас очень может выручить htaccess.

А ещё htaccess может решить некоторые вопросы с безопасностью вашего сайта.

А ещё…

Полезные советы по htaccess с разжевыванием для новичков
Всего голосов 85: ↑70 и ↓15+55
Комментарии77

Free-lance.ru сошёл с ума

Время на прочтение3 мин
Количество просмотров612K
В 4 часа утра, без объявления войны… Нет, не так: проверяю почту с утра, вижу непрочитанные сообщения с фриланса. Лезу на сайт отвечать — там меня встречает огромный баннер во весь экран «Вся работа только через сделку без риска! Обмен личными контактами запрещён!» — по привычке закрыл такой баннер, практически не читая, кликаю на ссылку сообщения и вижу вот такую вот картину:



Для тех, кто free-lance.ru не пользуется, поясню: «Сделка без риска» — это их функционал проведения сделок через сайт, подразумевающий обязательный %, который отстёгивается им за эту работу + бюрократизацию всего процесса, включая проверку обстоятельств работы, тз и прочего. Теперь, значит, фриланс решил сделать это обязательным для всех.

Что же получается:
  1. новшество, кардинально меняющее всю механику взаимоотношений на сайте, было внедрено без консультаций с аудиторией — оно и понятно, любой опрос на эту тему дал бы результат «99% против»
  2. новшество было внедрено без предупреждения — просто поставили перед фактом. Т.е. я, пользователь, который уже платит фрилансу деньги за аккаунт pro регулярно сейчас лишён возможности пользоваться сайтом — вот так завис над этой формой с предупреждением и не решаюсь ставить галочку, потому что
  3. фриланс официально заявляет, что не только читает ЛИЧНЫЕ сообщения на сайте, но и считает себя вправе их модерировать. До такой наглости даже признанные империи зла и добра не доходили.
Читать дальше →
Всего голосов 529: ↑514 и ↓15+499
Комментарии826

Информация

В рейтинге
Не участвует
Откуда
Москва, Москва и Московская обл., Россия
Дата рождения
Зарегистрирован
Активность