Месяц: Январь 2013

  • Степени — ключ к быстрой иерархии в реляционной БД

    от автора

    После публикации на Хабре своей первой статьи, об одном из способов организации иерархии в реляционной БД, у меня осталось чувство не доведенного до конца дела. Судя по комментариям, кто-то принимал предложенный метод за другой, спрашивали чем не устраивает “django-mttp”, рассказывали о поддержке деревьев в PostgreSQL… Спасибо всем отписавшимся, но из-за сумбурного изложения в самой статье,…

  • Иерархический поиск пути

    от автора

    Для разработки небольшой компьютерной игры зачастую применяются базовые алгоритмы поиска пути (алгоритм Дейкстры, А*), которых вполне достаточно для игрового поля не слишком больших размеров. Однако как же решить задачу о поиске пути на громадных игровых пространствах в играх жанра RTS или RPG? Ведь в виду значительного потребления памяти и ресурсов процессора базовые алгоритмы не подходят.…

  • Yota-script или экономим c Yota кроссплатформенно

    от автора

    Доброго времени суток, уважаемые хабражители. Пару месяцев назад и до нашего города добралась цивилизация в виде Yota. После беглого осмотра личного кабинета и выяснения что тарификация работает с точностью до минуты появился автоматизационный зуд 🙂 Тут еще подвернулся топик Экономим затраты на интернет от Yota и понеслась. Главная проблема которую я хотел решить — позволить…

  • Разработка больших программ с нуля, быстро и со вкусом

    от автора

    В этом цикле статей я постараюсь подробно рассказать, как спроектировать, запрограммировать, протестировать, запустить в эксплуатацию и сопровождать большие, сложные и даже высоконагруженные проекты. Нашими жертвами будут www.skillshare.com/ и animoto.com/. В оба проекта на старте вкладывали по нескольку миллионов долларов. Очень дорого эти проекты стоят и сейчас. Пожалуйста, напишите в комментариях, с какого из них начнем?…

  • Введение в CocosBuilder

    от автора

    Перевод статьи Introduction to CocosBuilder CocosBuilder – это бесплатный инструмент, который позволяет быстро и легко управлять спрайтами, макетами и сценами при разработке вашей игры, использующей Cocos2D. CocosBuilder идеально подходит для быстрой планировки меню и других элементов интерфейса игровых сцен, при этом не испытывая проблем по их компоновке в пространстве. В ходе обучения, вы напишите игру…

  • Никогда не отвлекай программиста!

    от автора

    Во многих компаниях программистам запрещают работать в наушниках или отвлекают их по мелким вопросам. Вероятно, причина кроется в плохой информированности менеджеров и других сотрудников, насколько вредно так делать. Крис Парнин (Chris Parnin) из технологического института Джорджии решил восполнить этот недостаток и опубликовал чрезвычайно насыщенную статью со ссылками на различные исследования по этой теме. Для начала,…

  • Новый проект по разработке астероидов

    от автора

    На Хабре неоднократно уже упоминали космические проекты и сегодня мы перевели для вас статью «New venture ‘to mine asteroids’»

  • Обзор предложений Coursera и edX

    от автора

    Продолжаю серию обзоров образовательных курсов, начатую Darcus’ом здесь и здесь. С его же разрешения я воспользовался форматом описания. Расскажу про четыре курса, прослушанных мной осенью 2012 года, на Coursera и edX. На самом деле, курсов я взял чуть больше, но что-то было в рамках самостоятельного просматривания архива оконченных курсов (Computer Science 101, Introduction to Databases),…

  • Эффективная конкатенация строк в .NET

    от автора

    Для программистов на платформе .NET одним из первых советов, направленных на повышение производительности их программ, является «Используй StringBuilder для конкатенации строк». Как и «Использование исключений затратно», утверждение о конкатенации часто неправильно понимается и превращается в догму. К счастью, оно не столь деструктивно, как миф о производительности исключений, но встречается заметно чаще. Было бы неплохо, если…

  • Добавление своего функционала в UMI.CMS при помощи обработчиков событий

    от автора

    В системе управления сайтами UMI.CMS изначально заложено разделение на основной движок сайта, который не трогается вэб-разработчиком (и который перезаписывается при обновлении системы), и дополнительный (кастомный) функционал, который уже разработчик сайта адаптирует под себя: собственные шаблоны дизайна, макросы (PHP-функции, вызываемые из шаблонов), собственные модули, если необходимо. Однако, при разработке своего сайта бывают ситуации, когда надо изменить…