Как стать автором
Обновить

django-php: PHP в шаблонах Django

Время на прочтение1 мин
Количество просмотров10K
django-phpВ этом посте я расскажу, как подружить Django и PHP с помощью приложения django-php.

Нам понадобится бинарник php-cgi, установленный в системе. Проверить его наличие можно, введя в терминале

$ which php-cgi

Читать дальше →
Всего голосов 83: ↑59 и ↓24+35
Комментарии67

Небольшая или большая интроспективная программа на C/C++

Время на прочтение1 мин
Количество просмотров2.7K
Под Хабракатом небольшой этюд позволяющий писать маленькие или большие приложения, которые содержат в себе свой же код и выглядят при этом почти адекватно.
Читать дальше →
Всего голосов 33: ↑28 и ↓5+23
Комментарии12

Поля класса доступные по имени с setter и getter в C++

Время на прочтение9 мин
Количество просмотров25K
Как известно, в C++ нет средства описания полей класса с контролируемым доступом, как например property в C#. На Хабрахабре уже пробегала статья частично на эту тему, но мне решительно не нравится синтаксис. К тому же очень хотелось иметь возможность обращаться к полям из ран-тайма по имени.
Читать дальше →
Всего голосов 55: ↑42 и ↓13+29
Комментарии44

Эволюция геймплея на примере одной игры

Время на прочтение7 мин
Количество просмотров4.3K
В конце ноября сего года на платформе Android и, неделей позже, на iOS вышла наша игра под названием Voltage (Android, iOS, Gameplay Video). Небольшой историей её создания я и хочу поделиться с сообществом. Следует сразу предупредить, что это не «success story», не инструкция по обращению с издателями и уж точно не теоретическое введение в разработку игровых приложений.

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

Читать дальше →
Всего голосов 46: ↑38 и ↓8+30
Комментарии16

«Жизнь» Конвея из каждой буквы, только в Emacs!

Время на прочтение2 мин
Количество просмотров916

Одним рабочим декабрьским вечером



Все мы так или иначе сталкивались с игрой «Жизнь» Конвея. Кто-то писал сам, кто-то смотрел и дивился, кто-то играл…

Под новый год, сидя с коллегой за одним компом и решая какую-то проблемку в конце рабочего дня, мы немного отошли от проблемы и как-то дело свелось к M-x life (мы оба пользуемся Emacs), &emdash; кто не знаком с Emacs — это команда запуска игрушки «Жизнь» в Emacs.

Стандартное неинтересно


Вроде бы о чем тут говорить. Да вот только реализация в Emacs имеет около 10 «вшитых» начальных позиции, которые мягко говоря неинтересны.

Вы знаете, что:
  • Конвей первоначально предположил, что никакая начальная комбинация не может привести к неограниченному размножению и предложил премию в 50 долларов тому, кто докажет или опровергнет эту гипотезу.
    цитата из Wikipedia;
  • К настоящему времени более-менее сложилась следующая классификация фигур:
    цитата из Wikipedia;
  • Emacs — это расширяемый текстовый редактор.


Читать дальше →
Всего голосов 25: ↑15 и ↓10+5
Комментарии3

Roflbalt игрушка в ASCII (с ANSI цветом!)

Время на прочтение1 мин
Количество просмотров1.1K
Тем кто работает/учится в консоли Linux/OSx/Windows(Putty) может понравиться вот такая игрушка.

image

Над забавной мини-игрушкой трудились Paul Annesley (@pda) и Dennis Hotson (@dennishotson), вдохновленные Canabalt

исходный код
Всего голосов 37: ↑34 и ↓3+31
Комментарии21

18 фактов о Джоне Ските

Время на прочтение2 мин
Количество просмотров31K
При обсуждении той или иной интересной возможности языка C# рано или поздно заходит речь об известных представителей .NET community и одним из первых в этом списке идет Джон Скит (Jon Skeet), гуру stackoverflow.com и автор одной из самых интересных книг по языку C# — “C# in Depth”.

Чтобы рассказать о том, кто есть Джон и что он сделал для индустрии, достаточно привести о нем несколько фактов. Многие слышали факты о Чаке Норрисе, такие как «Чак Норрис досчитал до бесконечности. Дважды» или что «Чак Норрис единственный человек, который обыграл стену в теннис». Но далеко не все знают о том, что подобные факты есть и о Джоне Ските (сам факт существования которых уже о многом говорит).

Читать дальше →
Всего голосов 39: ↑28 и ↓11+17
Комментарии17

Школьные забавы или мультиплеерная игра без сокетов и p2p

Время на прочтение4 мин
Количество просмотров3.9K
Здравствуйте, дорогие Хабражители!

Сразу хочу оговориться, что эта статья создана just for fun, и не претендует на какое-либо обучающее свойство.

В нашей школе информатику преподают с 6 класса, но ничему практически не научили, ибо мы так дружно и старательно форматировали тексты в Word'e, что закончили его изучать только к 9 классу. Было несколько уныло, и я занялся программированием. Помню, как копипастил «Hello, World!» из книжки по С++, потом первый калькулятор, потом еще калькулятор, затем познал ActionScript, сделал пару жутких игр, ну а потом обленился.
После очередного скучного задания по Excel, мы с другом решили воплотить нашу давнюю идею — сделать мультиплеерную игру. На школьных компьютерах стоял еще Macromedia Flash 8, Borland Delphi 7, и в другом конце класса на мониторе блестела эмблема Windows Server 2003.
Читать дальше →
Всего голосов 69: ↑48 и ↓21+27
Комментарии40

Bomberman Online — HTML5 мультиплеер онлайн игра от хабраюзеров. Тестируем нагрузку!

Время на прочтение2 мин
Количество просмотров18K
Bombermine Online — результат последних двух недель тестирования и подготовки движка для большого кол-ва игроков онлайн.

Движок написан на Java + Jetty (бекэнд). Фронтэнд — HAProxy + Nginx + Node.js. Клиентсайд — GWT, который транслируется в HTML5/canvas + javascript + websockets. Хостится всё в облаке.

На данный момент рекорд — 50 игроков онлайн. Настроен весь необходимый софт для мониторинга нагрузки. После хабраэффекта обещаем выложить отчёт. Ждём гостей.

Ну а под катом: видео геймплея и немного предыстории создания движка
Всего голосов 208: ↑195 и ↓13+182
Комментарии179

Bomberman Online и хабраэффект — 450 игроков на одной карте. Отчёт и детали игрового движка

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


Как и обещали в топике-анонсе нашей игры, выкладываем отчёт о хабраэффекте и детали игрового движка.
Читать дальше →
Всего голосов 180: ↑166 и ↓14+152
Комментарии95

Читалка ithappens

Время на прочтение2 мин
Количество просмотров1.2K
Вот-с, собственно вечерком накодил читалку ithappens на питоне. Умеет сохранять цитаты в формат fortune (правда я не проверял :D) и выводить в файл, либо на терминал.

Читать дальше →
Всего голосов 34: ↑7 и ↓27-20
Комментарии6

Размещаем до 2000 юнитов (XNA)

Время на прочтение6 мин
Количество просмотров20K
Привет, в этом посте будет представлено немного кода, пару картинок и несколько видео, про то, как я реализовывал быстрый алгоритм взаимодействия ракет и юнитов на XNA (2000 — 3000 юнитов) и не только.



Далее
Всего голосов 56: ↑36 и ↓20+16
Комментарии7

Знакомьтесь, Instacode — это как Instagram, только для лучших фрагментов из жизни… исходного кода

Время на прочтение1 мин
Количество просмотров58K
один из шедевров неизвестного программиста
Всем привет. Недавно на просторах интернета наткнулся на очень занимательную вещицу, имя которой Instacode. Чем же занимателен данный сайт — а тем, что он работает по принципу Instagram, только вот изображения генерируются из вашего исходного кода. Не верите? А вы попробуйте. В общем, кому интересно — милости прошу под кат.

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

Переопределение реализации метода. Вдохновленный Java'ой

Время на прочтение10 мин
Количество просмотров11K
Продолжение можно почитать тут habrahabr.ru/post/170265

Вступление


Изучая основы разработки под Android мне пришлось познакомится с таким замечательным языком, как Java. Читая очередной раздел гугловского GetStarted я наткнулся на такую конструкцию:

Button.OnClickListener mTakePicSOnClickListener = 
		new Button.OnClickListener() {
		@Override
		public void onClick(View v) {
			
		}
	};

Объявление представителя OnClickListener и переопределения у него метода onClick (поправьте меня Java программисты). Хм, подумал я, а круто бы эту фичу поиметь в Objective-C, а именно возможность переопределять реализацию метода у объекта(конкретного объекта, а не реализацию метода для всех объектов класса) да еще и через блоки в runtime (!) и забыл о этом всем… пока не оказался в полупустом автобусе в дождливую погоду. Времени было много и я решил поразмыслить над тем, что же тут можно сделать.
Зачем это нужно было? Изначально хотелось уметь делать так:

tableView1.delegate = [[NSObject new] override:@selector(tableView:didDeselectRowAtIndexPath:) imp:^void(NSIndexPath* ip){
       NSLog(@"selected row %i", ip.row);
}]
tableView2.delegate = [[NSObject new] override:@selector(tableView:didDeselectRowAtIndexPath:) imp:^void(NSIndexPath* ip){
       NSLog(@"selected row %i", ip.row);
}]

Обратите внимание, что предполагается изменение именно делегата и добавление/предопределение методов у него. А tableView остается оригинальным, без каких либо изменений.

Тем самым местом я чувствовал, что это вполне реализуемо благодаря богатому внутреннему миру Objective-C Runtime.
И да, то самое место меня не подвело.
Читать дальше →
Всего голосов 9: ↑7 и ↓2+5
Комментарии3

Не пишите код на 45-й строке

Время на прочтение3 мин
Количество просмотров19K
КДПВ

Это перевод статьи блоггера Brian McKenna. Разрешение на перевод получено.

Прямо сейчас в сообществе DynamoDB собираются мнения. Должны ли вы писать код на 45-й строке или нет. Я твёрдо убеждён, что 45-я строка должна быть оставлена пустой. И вот почему.

45-я строка ниже края экрана


По умолчанию высота терминала — 24 строки. Если писать код на 45-й строке, то программисты не сразу заметят его. Если оставить 45-ю строку пустой, то программист ничего не пропустит. Код чаще читается, чем пишется, поэтому убедитесь, что он виден.
Читать дальше →
Всего голосов 105: ↑50 и ↓55-5
Комментарии42

Functional FizzBuzz на Scala

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

FizzBuzz это известная задачка, шутливо или не очень задаваемая на собеседованиях, существует множество вариантов реализации даже для такой простой игры. Существует даже шедевры вроде FizzBuzzEnterpriseEdition.


Предлагаю вашему вниманию еще один вариант, не совсем пятничный, а скорее субботний: FizzBuzz на Scala, functional style.

Читать дальше →
Всего голосов 17: ↑15 и ↓2+13
Комментарии14

Свойства против методов

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


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

Читать дальше →
Всего голосов 12: ↑10 и ↓2+8
Комментарии4
12 ...
9