Dec 29

Ну что ж. Учитывая, что сегодня последний рабочий день в этом году, а не у всех есть дома интернет - всех моих читателей поздравляю с наступающим новым годом!

PS. А я потопал на последний день учебы в этом году…

written by fxposter

Dec 29

Достало меня уже всё… Остался последний отчет, который я пишу из последних сил в последний день учебы в этом году…

Вот такое у меня сейчас в отчете родилось:

Отчет по БД

written by fxposter

Dec 28

Вот такая у нас учеба:

Кароче слушай, всё заебись как херово знаешь я только что заметил, что сёдня я матерился уже больше чем за последние 3 месяца, а вчера походу почти стока же.
Мне <предмет> завтра здавать на зачёт, а я ещё не садился, плюс сцуко <препод> со своим сцуко дегроидным проектом, плюс я вышу вчера написал и не знаю что она мне там влепит и эт меня напрегает. и <препода> на завтра я никак не успеваю сделать и бля у меня ща взорвётся бошка и плюс:
приехал в 6-6:30
вечера домой и час убил на <друга> - помогал с вышкой
потом поужинал и попытался поспать\нихера не вышло плюс меня вовреммя не подняли
и я не погрелся в ванной, теперь очень злой невыспавшийся и неготовый к зачёту студент пишет тебе сообщение и мысленно посылает этот долбанный универ нах, за то чот в таком состоянии через часов 7 будет сдавать всякую хрень вот

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

written by fxposter

Dec 27

Ющенко рассказывает о том, как пропатчить KDE2 под FreeBSD:

written by fxposter \\ tags: , ,

Dec 25

А в мануалке теперь есть кучка примеров того, что будет в грядущем PHP 5.3.0. Смотрим, например, сюда.

Кстати, этот Late Static Binding может сильно упростить разработку нормального ORM на базе ActiveRecord. Пример:

class AR {
  public static function findOne($where) {
    $sql = 'SELECT * FROM ' . strtolower(__CLASS__) . ' WHERE ' . $where;
    return new self(self::$db->query($sql)->result());
  }
}
сlass User extends AR {
}
User::findOne();

В PHP <= 5.2.5 User::findOne() вернет обьект класса AR (и записи будет выбирать из таблицы ar, что, естественно, нам не подходит). В PHP 5.3 по идее должен уже вернуть User’а с записями из таблицы user.

written by fxposter \\ tags: ,

Dec 22

На сей раз тема достаточно интересная. Все вы уже, конечно, слышали про траффки. И все очень хотите их собирать. Только вот беда - когда вы кликаете по очередному блогу из “Комбатлога” - либо этот блог траффки не выращивает, либо их уже собрали (хех, продефлорировали блоги, да :) ). В отдельных случаях вам может повезти и вы соберете траффку. Собственно, это все знают и тут ничего нового нет, но это только затравка…

Сейчас я вам расскажу, как можно добывать траффки гораздо быстрее и эффективнее. Метод, на удивление, прос, но, на еще большее моё удивление, пользуются им единицы. Идем на главную страницу блоговара и ищем там 2 иконки фидов (feedburner’овские такие). Смотрим на вторую, читаем подпись - “комбатлог в RSS“. Вроде бы ничего интересного… А теперь заходим на этот фид. Вашим глазам открываются не только обычные действия по увеличению унца (из обычного комбатлога), но еще и различные применения магии и прочее. Внимательно изучаем фид, ищем слово “Gardening”, если находим - траффка практически у вас в кармане. Переходим по ссылке из фида, заходим на сайт и собираем трафку.

PS. Откуда в фиде целая куча блогов, применяющих на себя Gardening, спросите вы? Ищем ответ в названиях ботов. ;) 

written by fxposter \\ tags:

Dec 22

Вообще крышу срывает эта учеба…

Делал лабу по C++. Имеем классы:

enum AttributeType {BOOL, INT, DOUBLE, STRING};
class Attribute;
class BoolAttribute;
class IntAttribute;
class DoubleAttribute;
class StringAttribute;

Зачем - не спрашивайте. Кривовато (из-за AttributeType), но на С++ по другому не получалось.

Неделю назад час ебался мучался вопросом, какого хера почему это у меня каст из BoolAttribute* в Attribute* делал хер знает непонятно что, но только не то, что нужно… В итоге забил… Сейчас сел доделывать лабу… На 2-й минуте меня осенило - забыл прописать наследование… Пипееец. Нужно было так:

enum AttributeType {BOOL, INT, DOUBLE, STRING};
class Attribute;
class BoolAttribute : public Attribute;
class IntAttribute : public Attribute;
class DoubleAttribute : public Attribute;
class StringAttribute : public Attribute;

Я с себя потихоньку шизею…

written by fxposter \\ tags:

Dec 21

Разработчики Zend Framework решили последовать примеру популярных на данный момент не-PHP’шных фреймворков (в частности, ROR) и решили добавить в ZF работу с консолью и генерацию кода. Подробно можно прочитать тут (англ).

Хочется отметить комментарий Александра Макарова:

Разработчики ZF последовали моде и скорее всего включат в ZF 1.5 консольный генератор кода. Что означает возможность билда из метаданных и наличие столь модного сейчас скаффолдинга.

Позволю себе немного не согласится. Если походить по ссылкам и почитать про Zend_Console, Zend_Build, Zend_Build for Core, то можно заметить первое несоответствие - нигде в них не содержится Zend_Db в зависимостях ни в каком виде. Это раз. Два - структура ZF очень продуманная и гибкая, таким образом предполагать, что CRUD будет реализован простым наследованием от Zend_Controller_Action, с которым будут связаны определенного вида View’хи, по меньшей мере - странно. Мне видится реализация  такого CRUD’а только, если у нас появится 2 дополнительных набора элементов - поля для таблиц (что-то типа Zend_Db_Table_Field) и widget’ы (типа ), которые будут вызваны для этих полей при их рендеринге (Zend_View_Widget, хелперы тут не подойдут немного, ИМХО, хотя в данном случае могу ошибаться). Вот тогда всё будет точно следовать стилю ZF. :) Но тогда назревает другая проблема - если есть Field’ы (с валидаторами и прочим), то почему не сделать нормальный ORM (заюзав, естественно паттерн ActiveRecord). А, насколько я знаю, полноценная реализация ORM в roadmap ZF не входит никаким боком. Более того - они явно говорили, что реализовывать её не будут (ссылку найти сейчас не могу, к сожалению). Так что, ИМХО, Scaffolding’у в ZF не быть…

PS. А как вообще можно перевести Scaffolding на русский язык?…

written by fxposter \\ tags: ,

Dec 19

Опера в последнее время дарит приятные сюрпризы в виде поддержки той или иной фичи (например, очень понравился в 9.50 поиск страниц при вводе слова в строку адреса не только по началу этого самого адреса, но и по самим страницам тоже). Но не суть. Сейчас же просто хочется сказать, что пару минут назад Опера меня порадовала в очередной раз - на этот раз реализацией алгоритма rescale’а.

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

Смотрим сами: Opera, FF, IE6.

PS. Кстати, у FF и IE6 rescale делается одинаково. Пиксель в пиксель. :) А опере - респект.

written by fxposter \\ tags: , ,

Dec 19

Укртелекомовцы молодцы! Под новый год такой подарок сделали:

Новые тарифы Укртелекома

Для сравнения, старые тарифы:

Старые тарифы Укртелекома

Хехе, завтра попробую переключится на 4Мбита ;)

written by fxposter \\ tags: