RSS Записей | RSS Комментариев
Ядоблог - Stay upwind

Архив ‘Программирование’ Категории

Node.js loopback

октября 4, 2014 | Комментариев нет

Node.js loopback, как отличный инструмент для разворачивания RESTful бекендов:

Мастер-класс по подготовке RESTful API с нуля за пол часа:
источники данных, модели, связи, ACL, API explorer, сервис для AngularJS.

Без рубрики IAD

Хакатон «Вперёд вместе с Google!» завершён =)

декабря 2, 2013 | Комментариев нет

Вот и завершился хакатон. За 3 дня мы сделали геопланировщик для андроид. Призового места не заняли, но поняли, что нужна максимально упоротая идея =)
Стек:
Frontend: PhoneGap + BackBone.js
BackEnd: GoLang + MongoDB
Other: Google Maps API
Фоточки





Без рубрики IAD

Фотоархив.

сентября 8, 2012 | 2 Комментариев

Наткнулся на фото. Никлаус Вирт в 2005 году посетил НГУ. На встрече со студентами рассказывал о языке Оберон.

Ближний ряд справа, в галстучке — это я =)

Без рубрики IAD

Смена работы

июня 15, 2012 | 3 Комментариев

15.06.2012 покидаю ООО «СПК Софт», где суппортил и дорабатывал(ASP + MSSQL) систему документооборота paydox.
Отвальная отмороженная вечеринка уже закончилась. Все желают удачи, так что, похоже, выезжать буду только на ней(удаче) =)
Дела почти все закончены, осталось собрать RAID 1, не уронив сервер.

18.06.2012 меня ждут в SoftService в роли PHP+MySQL бэкенд разработчика.

Большое спасибо коллегам за вместе проведённое время. Был рад работать вместе.

Без рубрики IAD

Книга выходного дня: Фриман и Фриман. Паттерны проектирования.

июня 1, 2012 | Комментариев нет

Рецензия на хабре: http://habrahabr.ru/post/144995/
Написана достаточно свежо. Книга насквозь пропитана примерами из рисунков с надписями, читать прятно и весело(порой разрывает от смеха) =)
Думаю отличная книжка для начинающих изучать паттерны. Настоятельно рекомендую.

Пример иллюстраций:

Без рубрики IAD

sphinx, xmlpipe2, PHP и MongoDB или загибаем трубу из MongoDB в сфинкс, используя PHP

мая 22, 2012 | Комментариев нет

ТЗ: организовать релевантный поиск.

ТУ: данные хранятся в MongoDB, бэкенд на PHP.
Читать полностью »

Без рубрики IAD

О программировании

мая 21, 2012 | Комментариев нет
  • Красивое лучше, чем уродливое.
  • Явное лучше, чем неявное.
  • Простое лучше, чем сложное.
  • Сложное лучше, чем запутанное.
  • Плоское лучше, чем вложенное.
  • Разреженное лучше, чем плотное.
  • Читаемость имеет значение.
  • Особые случаи не настолько особые, чтобы нарушать правила.
  • При этом практичность важнее безупречности.
  • Ошибки никогда не должны замалчиваться.
  • Если не замалчиваются явно.
  • Встретив двусмысленность, отбрось искушение угадать.
  • Должен существовать один — и, желательно, только один — очевидный способ сделать это.
  • Хотя он поначалу может быть и не очевиден, если вы не голландец.
  • Сейчас лучше, чем никогда.
  • Хотя никогда зачастую лучше, чем прямо сейчас.
  • Если реализацию сложно объяснить — идея плоха.
  • Если реализацию легко объяснить — идея, возможно, хороша.
  • Пространства имён — отличная штука! Будем делать их побольше!

ty to http://trurl123.blogspot.com/2012/03/blog-post.html

Без рубрики IAD

Абстракции

мая 10, 2012 | Комментариев нет

… дальше остается только решить проблему возросшего количества уровней абстракции. Которую мы решим введением еще одного уровня абстракции. Whait… oh, shi…

Без рубрики IAD

PHP, добавляем новый метод в уже существующий объект

мая 2, 2012 | Комментариев нет

Допустим у нас есть объект — курсор из субд. Но мы хотим расширить его, для возвращения объектов. Добавить метод next_object(), который будет использовать метод getNext()

Проблема:
Мы не можем заставить модель возвращать объекты другого типа.

Решение 1: сделать итератор на этот курсор(который тоже является итератором). Сделать много магии для методов и свойств и получить новый итератор с нужным нам свойством.

Решение 2: Для PHP 5.4.0, использовать анонимные функции. О нём я и расскажу:
Внутри мапера, в методе findWhere($where) сделаем добавление анонимной функции в курсор, с передачей колбека и самого курсора

	/**
	 * @return MongoCursor
	 */
	public function findWhere($where)
	{
		$collection=$this->collection->find($where);
		$callback=$this;
 
		$collection->next_object=function() use ($collection, $callback)
		{
			$data=$collection->getNext();
			$obj=$callback->create_object($data);
			return ($obj);
		};
		return ($collection);
	}

Теперь, по идее можно обращаться к $collection->next_object() и получать объект, созданный мапером. Но к сожалению это не работает, т.к. PHP попробует выполнить user_func_array и не найдёт метод. Для этого присваиваем свойство переменной, значение которого является анонимной функцией и выполняем, через $func():

	public function findOneWhere($where)
	{
		$collection=$this->findWhere($where);
		$func=$collection->next_object;
		return ($func());
	}

Кривенько, но работает.

Без рубрики IAD

saas и se. Первые впечатления =)

марта 8, 2012 | Комментариев нет

saas:

Читаю книжку по руби и потихоньку делаю домашние задания.

На первой неделе узнал синтаксис руби, работу с объектами, методами, переопределение методов, регулярки, работу со строками, массивами. Научился запускать руби программы =)

Материал достаточно тяжёлый.

Руби зохавал часов 9 моего времени на этой неделе.

За домашку срезают баллы на 50%, если прощёлкал дедлайн:

 

se:

Питон же, простой как 3 копейки (пока) =)

Осилил unit 1 , unit 2. Сложность — школьный уровень(первые 2 занятия)

Питон отнял 3 часа на этой неделе.

работа со строками, процедуры, рекурсии. Как результат — научились добывать из html кода ссылки =)

Удачного дня!

Без рубрики IAD
© 2010 Ядоблог. Все права защишены.
Powered by Лаборатория Яда. Написать администратору