BugTraq.Ru
Русский BugTraq
https://bugtraq.ru/lj/?page=145

свеженькое о цифровом видео
28.04.06 16:15 // оригинал
http://lenta.ru/news/2006/04/28/encoding/
"...компактное устройство Catapult позволит на ходу оцифровывать видеокассеты MiniDV и скопировать оцифрованное видео на любой портативный гаджет. Устройство можно будет подключить к любому HD-камкордеру с помощью порта FireWire. Catapult будет преобразовывать видеосигнал в цифровой формат одновременно с видеосъемкой, что позволит избежать последующей оцифровки."

Угу, прямо так с цифрового порта FireWire Catapult снимет видеосигнал и еще разок его оцифрует. C цифровой кассеты оно тоже здорово цифровать - двойная перегонка практически, или масло пятикратной очиски.
В оригинале, кстати, нет ни слова об оцифровке - только processing video, так что ляп целиком на совести переводчика, не понимающего разницы между аналоговыми и DV-камерами. До кучи подключение к "any standard or HD camcorder with a FireWire port" превратилось в подключение к "любому HD-камкордеру с помощью порта FireWire" - в сущности, какая разница, стандартная камера, HD, не говоря уж о том, что "with" в данном контексте означает не "с помощью", а "имеющему", что тоже несколько меняет акценты.

обсудить  |  все отзывы (0)  |  обсудить в LJ


сайт
26.04.06 17:28 // оригинал
За прошлый год багтрак отдал без малого 500 гигов и принял 67. Судя по динамике, смена дизайна неплохо повлияла на объемы - при росте посещаемости в процентов десять по сравнению с позапрошлым годом суммарный трафик даже слегка упал.
Похоже, РТКоммовские страшилки повлияли на хостера - на случай возможного роста цен за трафик теперь придется расплачиваться ежемесячно. Впрочем, с учетом того, что за последнее время нарисовался некий избыток вебмани, это не так уж критично.

обсудить  |  все отзывы (0)  |  обсудить в LJ


стрим
26.04.06 16:35 // оригинал
Убив Нео, сделали вкусное предложение по Твину. Анлим 512 за 35$ - надо подумать...

теги: стрим  |  обсудить  |  все отзывы (0)  |  обсудить в LJ


киношное
22.04.06 22:07 // оригинал
Посмотрели с ребенкой "Азирис Нуна". Ребенка в восторге, да и взрослым было чему порадоваться. Конечно, как это часто у Лукьяненко, ближе к концу ощущение, что автору все надоело, и он хочет закруглиться побыстрее, да и египетский кусок немного просел (с точки зрения реализации, пародийные вставки это вполне спасают), но у целом очень симпатично, заставляет вспомнить детские впечатления от "Полета навигатора" с "Гостьей из будущего". Так что для семейного просмотра очень рекомендую. Хотя, похоже, прочитавшие книжку до просмотра на фильм все больше плюются, ну да это нормально.

обсудить  |  все отзывы (0)  |  обсудить в LJ


википедическое
16.04.06 18:21 // оригинал
На Ежелисте бушует обсуждение Википедии. Повелся на предложение ткнуть носом в плюхи, побродил по программистским разделам.

http://ru.wikipedia.org/wiki/Абстрактный_тип_данных

Процитирую целиком, это песня:
"Абстрактный тип данных (АТД) - отвлечение от конкретного типа данных и работа с их структурой или структурой объекта, их содержащей. При этом не используются свойства данного типа. Однако не запрещается применять свойства объктов, как то: существование, порядок, существование способа сравнения и т.п."

Я примерно представляю, по какому пути шел автор, заблудившийся в трех строчках текста, но способен ли кто-то, не знакомый с понятием АТД, понять из этого текста, каким образом отвлечение от типа данных может привести к работе с их структурой (или, пуще того, "структурой объекта, их содержащей)?
В примерах тоже такой добрый тип данных "дека" приведен, ссылка на который ведет на музыкальную деку.

Дальше я вошел во вкус.

http://ru.wikipedia.org/wiki/Стек
Стек, оказывается, "даже поддерживается аппаратурой процессора". Аппаратура, архитектура, какая фиг разница...

http://ru.wikipedia.org/wiki/Язык_ассемблера
"Также в процессе линковки происходит связывание программы со статическими и динамическими библиотеками (тоже, по сути, объектными файлами)." Угу, библиотеки, по сути, являются книгами.

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

http://ru.wikipedia.org/wiki/Объектно-ориентированный_язык_программирования
Всплыла типизация как, видимо, одна из ключевых, по мнению автора, составляющих ООП (поставлена перед полиморфизмом).

http://ru.wikipedia.org/wiki/Си_плюс_плюс
"Описатель inline означает, что вызовы функций заменяются макро-расширениями." Кхм. Тепло, конечно, но...

"Прежде всего, основным способом организации информации в Си++ являются классы. В отличие от структуры, состоящей только из полей, класс (class) состоит из полей и функций-членов (member functions)." Да, мои третьекурсники тоже часто не могут правильно рассказать, в чем разница между структурой и классом в С++.

"Для создания классов с добавленной функциональностью вводят наследование. Класс-наследник имеет поля и функции-члены базового класса, но не имеет права обращаться к собственным функциям базового класса." Я сперва слегка обалдел, потом наткнулся на формулировку "Наследование бывает публичным, защищённым и собственным." Традиция перевода термина private не для нас, да.

"Класс Си++ представляет собой объект ООП." Ну, положим, лет десять назад и можно было встретить подобную путаницу в терминологии (особенно у жертв Турбо Паскаля), но с этим уже давно разобрались, и классы с объектами давно разведены по своим углам.

Ну и из серии придирок.
"Например, объект cout, используемый для вывода текста в консоль, имеет переопределённый оператор << для вывода информации." - формально говоря, этот оператор все-таки имеет не объект cout, а класс ostream.
"Защищённые и собственные поля нельзя менять по-дурацки: к ним могут обращаться только функции-члены (и ещё так называемыефункции-друзья)."
"Функции-члены (и только они) могут иметь описатель const... Такие функции не имеют права изменять поля класса. Если они пытаются это сделать, программа вылетает на стадии компиляции."
"Копи-конструктор (copy constructor) Array::Array(const Array&) вызывается при присваивании." Перевод "конструктор копирования" тоже не катит.

И вот еще абсолютно шикарный код:


class ArrayWithAdd : public Array {
ArrayWithAdd(int n) : Array(n);
ArrayWithAdd() : Array();
ArrayWithAdd(const Array& a) : Array(a);
void Add(Array a);
};

Вызов базового конструктора в описании и без остального тела, ага.


В общем, до сих пор я студентам в качестве источника, на который никогда нельзя полагаться при программировании, давал только книжки Шилдта, теперь список пополнился.

обсудить  |  все отзывы (0)  |  обсудить в LJ


цирковое
13.04.06 21:51 // оригинал
Похоже, на сегодняшнем "К барьеру" будет рекордная разница в голосовании.

обсудить  |  все отзывы (0)  |  обсудить в LJ


бибика
13.04.06 19:02 // оригинал
Не прошло и двух недель, как нарисовалась машина подходящей конфигурации и даже подходящего цвета. К сожалению, не L118ehbc с боковыми подушками, климат-контролем и прочими рюшками типа спойлера, а только L116ehbc, но 118-ю народ, как выяснилось, ждет с октября, так что утешусь экономией в 1100.

обсудить  |  все отзывы (0)  |  обсудить в LJ


акустическое
11.04.06 16:42 // оригинал
Я-то думал, что это машина в последнее время (читай, два месяца) стала реветь все громче - не иначе как где-то соединение глушителя ослабло, или глушитель начал прогорать. Ага, начал. Сегодня обнаружил на стоянке проржавевший кусок этак 10 на 10, подлез к глушителю, так вся его нижняя поверхность в принципе отсутствует - не иначе, зимние парковки задом в сугроб аукнулись.

обсудить  |  все отзывы (0)  |  обсудить в LJ


первоапрельное
01.04.06 17:15 // оригинал
Чем дальше, тем больше раздражают все эти вымученные попытки родить остроумные фейковые новости. Юмор по расписанию, как и многократно повторенная пусть даже хорошая шутка - отвратительное зрелище.

обсудить  |  все отзывы (0)  |  обсудить в LJ


stlное
29.03.06 22:54 // оригинал
Жутко раздражает, что в stl нет встроенного варианта очистки контейнеров с принудительным вызовом delete для каждого элемента, из-за чего вечно приходится придумывать какие-то подпорки (да, я в курсе про boost::shared_ptr, который можно использовать в контейнерах, но пока не заставил себя на него перейти).
Первый вариант моих функций ClearList и ClearMap использовал честный проход итератором по циклу, что несколько раздражало, второй был сделан через for_each и пару классов-функционалов (привет примеру из Мейерсовского Effective STL), что все равно оставляло некую неудовлетворенность громоздкостью и наличием двух классов с чуть разным интерфейсом, нужных только для удаления поступающего на вход объекта.



struct DoDelete
{
template<typename T> void operator()(const T* p) const
{
delete p;
}
};

struct DoDeleteMap
{
template<typename T1, typename T2> void operator()(const pair<T1,T2>& p) const
{
delete p.second;
}
};

template <class List> void ClearList(List& lst)
{
for_each(lst.begin(), lst.end(), DoDelete());
lst.clear();
}

template <class Map> void ClearMap(Map& map)
{
for_each(map.begin(), map.end(), DoDeleteMap());
map.clear();
}




Ну а поскольку в последнее время все чаще использую boost::bind, последний вариант сделал через нее, с чувством глубокого удовлетворения выкинув дублирование функционалов. Но, честно говоря, хоть я и охотно допускаю, что существуют люди, способные спокойно сходу писать/читать подобный код, для меня это уже совсем другой язык, мощность которого я вполне осознаю, но использование которого дается с баальшим скрипом (а это ведь еще самые верхи, без использования boost::function, boost::lambda или, упаси господь, boost::mpl).



template<class T> void DoDelete(const T& p)
{
delete p;
}

template <class List> void ClearList(List& lst)
{
for_each(lst.begin(), lst.end(), boost::bind(&::DoDelete<List::value_type>, _1));
lst.clear();
}

template <class Map> void ClearMap(Map& map)
{
for_each(map.begin(), map.end(), boost::bind(&::DoDelete<Map::mapped_type>, boost::bind(&Map::value_type::second, _1)));
map.clear();
}

обсудить  |  все отзывы (0)  |  обсудить в LJ




««    «   141  |  142  |  143  |  144  |  145  |  146  |  147  |  148  |  149  |  150 >>  »    »»






  Copyright © 2001-2025 Dmitry Leonov Design: Vadim Derkach