MongoDB for Developers

Я пишу этот пост, потому что нахожусь в некотором экстазе от онлайн курса M101: MongoDB for Developers. Если вы вообще смотрите в мир NoSQL, то думаю это самое то, что нужно для того чтобы идти в ногу со временем. Вообще, я заметил что за прошедшие пару лет с окончания вуза я отучился учиться… чтоже Coursera, Udacity и другие ресурсы с Class Central помогут мне вернуться в строй.

RTU любит Ruby/Rails

Сегодня прошло первое занятие по предмету “Электронная коммерция”. Событие конечно ничем не примечательное, если не считать, что преподаватель – господин Лектауерс – решил отойти от стандартных шаблонов и читать этот курс без теоретических заморочек, а в призме новых технологий, именно столь уважемого мной Ruby on Rails.

Понятное дело, что занятия сводятся к груповому чтению pdf-ов, представляющих собой кальку с Agile Web Development with Rails 2ed, но сам факт уже настолько приятный, что я не могу сдержать своего ликования. Похоже, все-таки не все попахивает в нашей системе образования, если есть преподаватели, готовые разбудить в студентах интерес к новым веяниям. Более того, дело идет не только на словах, но и на деле. В частности, нас подразнили ссылкой, где можно будет скачать последнюю книжку AWDwR и сказали что книга уже есть в библиотеке.

А в остальном, новостей к сожалению, нет.

Без заглавия

Здавствуйте, мои дорогие читатели!
С каждым днем заставить себя написать становится все труднее, поэтому я решился опубликовать вот такой вот пост ни о чем, чтобы он послужил некой прелюдией к дальнейшему блогингу. С момента последней публикации в моей жизни произошли достаточно серьезные перемены:

1) Я был зачислен в группу DGIO-2 Рижского Технического Университета, а это значит что моя схватка с бюрократической машиной в борьбе за высшее образование продолжается.

2) Моя любимая супруга достаточно серьезно пострадала в автомобильной аварии, и я на себе узнал что значит заменить ребенку родную мать. Слава Богу, уже все в порядке.

3) Я основательно мигрировал под Linux, выбрав в качестве рабочей платформы Ubuntu 7.10; в процессе миграции обнаружилось несколько интересных моментов с которыми я обязательно всех ознакомлю. Статьи уже в драфтах.

4) Нехватка времени и денег заставила меня иначе взглянуть на рынок ПО для своего мобильного телефона Samsung X700, а также на предлагаемые онлайном сервисы мобильного блогинга и микроблогинга.

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

Борьба за образование: KnockOut

Здравствуйте, мои дорогие читатели!

Битва за образование закончена: сдана бакалаврская, выиграно первое сражение.

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

За подготовкой работы совсем выпал из ритма жизни и почти неделю входил в колею. Было желание творить, а пришлось работать. Благо начальник – не тот который новый занудный педант, а тот который сообразительный дал интересное задание по связке двух баз: магазина на кривущем псевдодвижке и поставщика на огромном ХМЛе. Структура базы поработила мой мозг и осознание ее сожрало почти день.

По ходу работы был обнаружен жестокий баг SimpleXML: если вы считываете из базы поле float или decimals и не проводите дополнительный его cast через floatval, то рискуете потерять знаки после запятой. Обнаружилось на php5.2.1 пащущего под freeBSD6.0.

Кстати, если друзья мои вам набор макрорасширений милее красивого языка программирования, то можете присоединится к Сергею Куракину в его трудах над человечизацией ORM-слоя в php5.

Битва за образование: Final Round

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

Есть картинка и ее увеличение.
Resize

Нужна идея алгоритма, как находить те самые 1ый, 2ой и 3ий пиксель, которых не хватает. Механизм должен быть итерационным (то есть, несколько шагов) и базироваться на сплайн-интерполяции.
Уже испытано 2 метода:

– Сплайн-функцией горизонтальных, вертикальных и диагональных пикселей находятся 1, 2, 3. После чего значение пикселя 0 корректируется в сторону среднего арифметического при помощи некоего коэффициента k. Постулируется то, что среднее арифметическое 0, 1, 2 и 3 должно быть равно исходному значению 0. Результат: после незначительного количества итераций приходим к красивой шумной стабильной картинке, где нифига не понять.

– Сплайн-функцией горизонтальных, вертикальных и диагональных пикселей находятся 1, 2, 3. Значение пикселя 0 корректируется на основании того же постулата “среднее арифметическое 0, 1, 2 и 3 должно быть равно исходному значению 0″. Результат: при переходе от темной границы к светлой, цвет нулевого пикселя уходит в область отритцательных величин и утаскивает туда остальные.

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