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

Чулан

Всякая всячина

Сначала показывать
Порог рейтинга
Уровень сложности

Робот-охранник

Время на прочтение1 мин
Количество просмотров635
Создать робота-охранника не так сложно (есть к примеру роботы-солдаты), но как быть с вооружением?
Огнестрельное, травмирующее и газовое вооружение не подходит. Оригинальное решение было найдено. Преступника не обезвредит, но задержит до прихода охраны.

Замечательная операционная система Ubuntu

Время на прочтение2 мин
Количество просмотров609
Вчерась, узнав, что Ubuntu alternate install умеет шифровать системный раздел, задался целью поставить себе сию замечательную систему.

Все шло отлично, до пункта base install. На 77-ом проценте я получил следующее сообщение:

'Please insert the disc labeled: 'Ubuntu 9.04 _Jaunty Jackalope_ <номер версии>' in the drive '/cdrom/' and press enter.'

И две кнопки, нажатие по которым ни к чему не приводит. На этот момент установщик уже успешно отформатировал загрузочный винчестер.

По счастью, у меня оказался под рукой еще один работающий компьютер с интернетом — я уже не первый раз Линукс ставил и подозревал, что без этого никак. Легким гуглением я выяснил, что эта проблема (каким-то образом связанная с наличием SATA-винчестера и IDE-CDROM'а) тянется как минимум с СЕДЬМОЙ (а судя по некоторым упоминаниям — аж с ПЯТОЙ) версии сей замечательной операционной системы!

Я нашел аж целых три варианта решения этой замечательной проблемы (очевидно, разработчики посчитали, что раз напильником проблема решается — значит, можно не исправлять):

1. Воткнуть SATA-шный винт из разъема SATA2 в SATA1. Не помогло.
2. Некие странные манипуляции в консоли, описанные здесь: ubuntuforums.org/showthread.php?t=1083783. Помогло, но дальше base install установка идти отказалась.
3. Воспользоваться USB-CDROM'ом. По странному стечению обстоятельств у меня такового под рукой не оказалось. Ну ничего, когда в следующий раз я буду ставить Убунту, я обязательно одолжу у кого-нибудь и его — на всякий случай.

В конце концов, скачав повторно образ CD и записав его на флэшку (к счастью, моя материнка поддерживала загрузку с флэшки) я таки установил гребаного рогатого зайца. Правда, замечательное свободное и бесплатное ПО не упустило шанса поднасрать и записала mbr не на тот винчестер, на который я ее ставил, а на тот, который детектился первым. Вопрос к залу: как мне удалить mbr со второго винчестера (не повредив инфу, естественно) и выставить на первый?

«Бесплатное ПО» бесплатно, только если не ценить свое время и нервы.

Александр Александрович Розов. Цикл «Меганезия»

Время на прочтение2 мин
Количество просмотров16K
Офигительный молодой автор. Настоятельно рекомендую всем любителям фантастики, утопии, альтернативной истории (возможно). Это такая фантастика, которая создает будущее. Его идеи меняют мир. Книги увлекательны, захватывающе. Это — новый ветер в фантастике, футурологии. Вам будет непривычно, но безумно интересно. Не буду портить удовольствия и пересказывать книги — прочтите сами и все поймете.

Скажу лишь в двух словах.
Читать дальше →

Хроники Пиратской Партии: начало

Время на прочтение5 мин
Количество просмотров682
Главное — нАчать, как говорил первый Президент СССР. Он же последний.

Итак, как оно было? История куется прямо у нас на глазах. Заметьте — не мы первые напали!

24 июня, 2008 Волны возмущений по поводу принятия нового антидемократичного закона буквально сотрясают Швецию. Жители страны готовы на многое, лишь бы принятый в прошлую среду закон не вступил в силу. За день до голосования в парламенте четыре правящие коалиции потребовали внесения поправок в законопроект с целью снять с себя обвинения в недемократичности — в противном случае они обещали проголосовать против вместе с оппозицией.

02.06.2009 “Пиратская партия” претендует на места в Европарламенте. 7 июня состоятся выборы в Европарламент.
Читать дальше →

FCKEditor vs Opera — Подвисающие диалоги

Время на прочтение1 мин
Количество просмотров458
История началась с того что нужно было прикрутить WYSIWYG редактор к одному сайту. Выбор пал на FCKEditor, последней версии разумеется. Прикрутил. Проверил. Во все возможных браузерах. Работает. Сдал в тестовую эксплуатацию. В результате нее выяснилось что в моем любимом браузере (Opera 9.64 и Opera 10b3) диалоги добавления картинок, ссылок, и обозреватель файлов на сервере — загружаются, но подвисают на выполнении какой то инструкции и содержимое не отображают. Учитывая что процент тех кто просматривает сайт именно через оперу девятку достаточно большой (порядка 30%) пришлось выснить где
собака зарыта

MT Browser Switcher — для тех, кто пользуется несколькими браузерами

Время на прочтение1 мин
Количество просмотров910
Вот я использую Opera. Но есть некоторые сайты, которые предпочитаю открывать в Mozilla Firefox или Google Chrome. Вот приходит мне в почтовый клиент ссылка на событие в моём google-календаре. Если в неё тыкнуть — откроется браузер по-умолчанию, т.е. Opera. А я на гугл лажу Google Chrome'ом. Поэтому приходится копировать ссылку, запускать Google Chrome руками, вставлять её туда и открывать страницу. Неудобно.

Стал искать что-нибудь, что помогло бы решить проблему. Не нашёл.

В творческом порыве наваял MT Browser Switcher. Эта небольшая программа позволит Вам назначать разным сайтам разные браузеры по-умолчанию. MT Browser Switcher выступает для системы в качестве браузера по-умолчанию. После запроса на открытие какого-либо URL (например, после клика на ссылке в текстовом редакторе или в любимом RSS-ридере) MT Browser Switcher анализирует этот URL и выбирает нужный браузер в соответствии с заданными Вами правилами. Если ни одного правила не подошло под URL, то ссылка просто открывается в браузере по-умолчанию.

Схема работы
image

Кому интересно, подробности тут: http://mito-team.com/ru/projects/mt-browser-switcher

За отзывы, багрепорты или пожелания буду благодарен :)

Мошенники не дремлют!

Время на прочтение1 мин
Количество просмотров401
Сегодня утром получил письмо с адреса news@yandex.com следующего содержания:

«У нас возникли проблемы с вашими персональными данными на нашем сервере.Мы были бы признательны если бы Вы посетили наш Платежный Центр и надлежашим образом заполнили информц 2ию о себе.Если вы не выполните данное требование до 26 августа 2009 г. ваше членство в системе «Яндeкc.Дeньги» может быть приостановленно или даже удалено из списка.

Пожалуйста неотвечайте на это сообщение оно сгенерировано и отправлено роботом.

Здесь спама нет mail.yandex.ru/nospam/sign»

Причем в письме вставлена форма, которая ведет на адрес 1ink.ru/ooy

Что-то мне подсказывает, что это далеко не Яндекс разослал ;).
Всем кому пришло такое письмо, не вздумайте вводить свои данные на странице «псевдо-яндекса».

Сибирьтелеком и «анлим»

Время на прочтение2 мин
Количество просмотров496
www.sibirtelecom.ru_2
Дело в том что у нас в Иркутске только Сибирьтелеком предоставляет более-менее приличный интернет (в том числе и безлимитный), есть конечно еще другие компании вроде Билайна или более мелких контор, но их процент настолько мал, а услуги убоги, что к ним идут только те, кого отвергла Сибирьтелеком по каким-либо причинам.
Так вот, долгое время все у нас было хорошо — ADSL-анлим со скоростью 512, за нереальные деньги, но это никого не удивляло, такая ситуация была в каждом городе население которого не превышало один миллион человек. Но время шло, скорость росла, цены падали и мы, простые смертные, были относительно счастливы…
Читать дальше →

Антивирусное спасение: набор того чем лечить вирусы, быстро восстановить работоспособность завирусованого ПК

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

Сначала с грустного: пробовал использовать Dr.Web LiveCD — абсолютно не функциональное решение, 30 минут сканировало папку Windows, это много.
все остальные возможности — при лечении не нужны, ну кроме как браузер еще. Еще порадовало что используется OpenBox, прямо как в CrunchBang Linux.

Набор:
1. Sysinternals Autoruns — http://technet.microsoft.com/en-us/sysinternals/bb963902.aspx.
2. Sysinternals Process Explorer — http://technet.microsoft.com/en-us/sysinternals/bb896653.aspx.
3. DrWeb Cureit — http://www.freedrweb.com/cureit/.
4. AVP Tool или Kaspersky® Virus Removal Tool — http://avptool.virusinfo.info/.
5. AVZ — http://www.z-oleg.com/secur/avz/.
Если с вирусами покончено, понадобится почистить хвосты и восстановить работу реестра.
6. CCleaner — http://www.ccleaner.com.
Если не покончено следует добавить:
7. HijackThis — http://www.trendsecure.com/portal/en-US/tools/security_tools/hijackthis.
8. SDfix — ссылка с описанием на русском и ссылка для загрузки.
9. ComboFix — ссылка с описанием на русском и ссылка для загрузки.

Top антивирусов по моему мнению на август 2009-го:
1. Eset Nod32.
2. McAfee VirusScan Enterprise.
3. Kaspersky.
А мою Windows 7 на нетбуке я доверил:
4.Microsoft Security Essentials (MSE).

Links которые помогут грамотно побороть вирусную заразу:

http://www.spyware-ru.com/
http://virusinfo.info/
http://www.securitylab.ru/
http://www.securelist.com/ru/descriptions
http://www.virscan.org/

Одноразовые пароли. Где? Зачем? Как?

Время на прочтение3 мин
Количество просмотров3K
Когда я впервые услышал фразу «одноразовый пароль» я был в недоумении. Как это одноразовый? Кто будет использовать пароли, которые действуют только один раз? это сколько же надо паролей помнить, чтобы после первого же использования его выбросить? Да и вообще кому это нужно, ведь есть же нормальные долгоживущие пароли.

Если Вы так же как и я впадаете в некоторое недоумение при словосочетании «одноразовый пароль», то я постараюсь рассказать что это такое, для чего их можно использовать и как они работают.
Читать дальше →

Технологии привязки покупателей – Разъемы

Время на прочтение4 мин
Количество просмотров880
Речь пойдет о проприетарности. Но не софта, и даже не железа, а всего лишь разъемов. Мне кажется, что эта информация может оказаться кому-нибудь полезной. Во всяком случае, если бы я заранее знал об этих граблях, все было бы проще.

Читать дальше →

Часы с ломающейся стрелкой

Время на прочтение1 мин
Количество просмотров703
Я, как всякий порядочный дизайнер, решил не оставаться в стороне от современных тенденций, и заново придумал часы.
Принцип следующий: минутная стрелка вращается на конце часовой, а секундная — на конце минутной. Такие еще не встречал, и решил накидать часы на флеше.

Часы с ломающейся стрелкой, на флеше

Часы с ломающейся стрелкой

По клику на часы, время ускоряется (для просмотра). Технически такой дизайн реализовать я пока не считаю возможным, разве что при увеличении стрелок до толщины в пол-сантиметра. В таком случае будет возможность расположить механизм внутри стрелок.

За хостинг спасибо drfaustxx.
P.S. Аналоговые часы я никогда не любил :)

Ближайшие события

radikal.ru запретил использование сервиса на torrents.ru

Время на прочтение1 мин
Количество просмотров956
Один из крупнейших сервисов изображений радикал.ру запретил использование выложенного материала на торрентс.ру
Чем это вызвано, пока не ясно, однако явно не шибко приятно
Выглядит это примерно так:
image

UPD: Часть изображений вернулась

Транспорты из IRC в Jabber

Время на прочтение4 мин
Количество просмотров908
Почти все из нас слышали про транспорты из Jabber в IRC. Многие ими даже пользуются каждый день. Но во времена отключений ICQ я встречал информацию и про транспорты из IRC в Jabber. Сегодня просматривал закладки и наткнулся на их домашние странички. Вот и решил немного написать о них, тем более, что поиск по их названиям на любимом Хабре ничего вменяемого не выдал.

Если вы задались вопросом «а зачем?» — прочитать про это вы сможете в самом конце статьи.

Мне известны 2 подобных транспорта — ejabberd_ircd и telepaatti. К сожалению про второй мне сейчас удалось найти только описание. Ещё есть бот, который умеет транслировать сообщения из muc на IRC канал и наоборот — jirc.

Читать дальше →

Суровые челябинские 1С-разработчики и как же юзать XSLT

Время на прочтение6 мин
Количество просмотров1.7K
Озадачился я вопросом — а что такое «шаблонизаторы» и какой в них смысл?

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

Вся сложность восприятия этой темы возникает лишь из-за того, что есть настоящие шаблонизатор — например XML -> XLST -> «Привет мир!» и многие другие, по факту являющееся библиотеками расширения языка.

Что я хочу этим сказать? Да то что Smarty к примеру — не шаблонизатор, а лишь библиотека акронимов, позволяющая писать (я не знаю ни PHP ни Smarty, это лишь попытка объяснения на пальцах, не приставайте к коду)
{foreach from=$data item="entry"}
{$entry.Comment|escape}

{/foreach}

Вместо
<?php
//... а здесь мы пишем функцию, которая читает из базы и последовательно вставляет полученное нами в
$output = $output.''.$entry.''
//... и делает это наверное в цикле
?>

Т.е. разделения логики и отображения не происходит — мы просто используем расширение языка. Мы обязаны быть в курсе, какие именно переменные и в каком виде (какого типа) у нас возвращаются из основного кода, после чего в «шаблонизаторе» мы эти переменные используем для отображения.

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

Ну например, если принять выражение -«Эта булка стоит 5 рублей!» за сериализованное, то варианты несереализованных выражений будут такими — «Это стоит 5 рублей! (Что?)», «Булка стоит 5 рублей (Какая?)», «Эта булка стоит 5 (Чего?)», «Эта булка — 5 рублей!(Местная валюта-хлеб?)» ну и апофеозом будет «Это стоит денег (???)» и «Смотрите прайс-лист! (wtf?!)».

Smarty позволяет разработчику сказать что-то типа "-Эта булка стоит 5 тышш рублей, потому что мы — пафосный бутик на Тверской!" и следует принимать решение на основе полученных от него данных и находясь в границах его логики. То есть начать соображать "- А, этож Тверская, тут же все дорого, значит надо баблос слюнявить как сказали".

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

Сериализация — это пачка распечатанных фотографий из последней поездки, которые Вы прихватили с собой показать бабушке в деревне. Не-сериализованные данные — когда вместо распечатанных на матовой бумаге фотокарточек 13х15 Вы везете с собой Blu-ray диск, находя очевидным, что уж где-нибудь там найдется ноут с поддержкой Blu-ray.

Отлично, мы прониклись идеей, что «сериализация» есть благо, но при чем тут 1С?

Ну, они похоже этой идеей просветлились, во всяком случае г-н Рыжиков, создавший незабвенную виршу Иллюзии XML/XSLT технологий. Я лично смутно себе представляю, сколько и чего нужно раскурить, чтобы «я сам программист», прочитавший
много книг и учебников, в которых программистов и проектировщиков учили, что лучший способ создать шаблонизатор или абстрагировать внешний вид (представление) от данных — это загнать все в XML, пропустить потом через XSLT и уже на выходе получить HTML.

наложил табу на back-end логику и
Все восприняли это буквально и начали делать подобные продукты. Ну и конечно мы тоже наслушались и уверовали, что наше будущее — это XML/XSLT технологий.
Совершили подвиг, заставив XSLT шаблоны работать достаточно быстро, вложили кучу сил, времени и денег в разработку технологии… Самые большие каталоги товаров вмещали по 70 тысяч товаров.

сделал вывод, что:
Как не стараются РАЗРАБОТЧИКИ, производительность XML/XSLT систем остается очень низкой, несмотря на все усилия индустрии. Да и как выжать эту производительность? Сначала данные из SQL базы преобразуются в XML (а это текстовый файл большого размера в силу своей структуры). Потом XML данные загружаются в XML парсер уже в серверной части, где они занимают еще больше памяти для работы XPATH, формирования индексов по XML данным в момент загрузки и т.п. Далее XSLT проходит по огромному массиву данных, получая на выходе опять же текст, который занимает память.

При этом искренне не понимал о чем идет речь, когда ему задавали вопрос — «Откуда берутся огромные объемы данных, если контента на страницу бывает кило 100 максимум???».

Действительно, как же не взяться огромным объемам, если обрабатывать xml-дамп базы XSL-шаблоном?

Безумству храбрых поем мы песню!

Не менее весело читать «независимых разработчиков», которые согласны с мэтром — «XSLT — тормоза и отстой!».

Нет, ну вообразите себе — это ровно (в смысле абсолютно эквивалентно) как наткнутся в ЖЖ на топик
-Сегодня взялся за голые провода, стоя в мокрой ванне. Нехило меня током долбануло, 3 часа в себя приходил!

с толпой комментов:
— И я сегодня взялся за провода! И меня долбануло!

-+1, ванны отстой! Резиновые коврики рулят!

— Резина — отстой, лучше пластик!

— Сам ты отстой, и пластик твой — фуфел!

— Ответил за базар, что пластик — фуфел?

— Ха, да у меня друг — директор шинного завода, они там только резину и юзают, а не какой-то говнопластик. Не надо же тебе объяснять, как это круто — делать шины! Это не какой-то там свечной заводик в Урюпинске, это же production!

— А меня так каждый раз током долбит, когда я за провода берусь, достало!

— Да ты лошара, вот меня один раз долбануло в ванне от проводов, так я нахрен их вырубил в щитке в подвале! Чтоб ни меня, не мою семью, ни соседей не било! Надо же и об окружающих думать!

Клиника, одним словом :)

Пожалуйста, не делайте так!

Шаблон должен делать ровно то, что он делает — взять с полки и укомплектовать товар аксессуарами, в зависимости от того — OEM это или Retail. Если Retail — то и диск положи, и шлейфы и мануалы на всех языках, и брелок. А если OEM — чихни в пакет для комплекта к самой железяке. При этом комплектовщик работает с конкретной железкой и каким-то конечным объемом аксессуаров, подходящих к этому устройству. Он не пытается запихнуть в коробку с видеокартой блок питания, потому что у нее есть дополнительный разъем — блок питания не входит в комплект по его ТИ, или вместо видюхи положить бутылку коньяка, метнувшись за ним в магазин, потому что это для «самого». И уж тем более ему не говорят — «Вот видюха, вот склад комплектов — выбери чего-нить и сунь туда, ты же головастый малый!»

Разделение логики означает ее, логики, разделение — не более и не менее!
(если Вас передернуло от такой формулировки — просто проигнорируйте, а если какая-то смутная догадка мелькнула в мозгу — перечитывайте до просветления)

У вас все еще есть база SQL с хреновой тучей записей (как и положено приличной SQL-базе); back-end который ходит в базу и получает от нее полтора десятка записей (в соответствии с запросом пользователя и логикой постраничного отображения, предписывающего отображать 15 записей, причем в названии не должно быть слова «Жопа» если в графе «Возраст» у юзера стоит «до 18») на выходе заворачивающий результаты своей работы в XML; front-end получающий коротенький XML и накладывающий на него свою таблицу стилей ака XLST в результате чего получается новый XML-файл, в котором первоначальный узел <bullshit>Костюм и галстук — $5000</bullshit> меняется на <Haute couture>Костюм и галстук — $5000</Haute couture>.

А где же HTML? Да здесь он, родимый, просто в другом шаблоне — toHTML, для узла <bullshit> задано другое правило, трансформирующего его в <span class=«amazing» >, которое отдается клиенту тем же front-end-ом, если пользователь не умеет читать XML. Да, суть front-end-а именно в том, чтобы говорить с клиентом на одном языке, при этом ему пофигу о чем ведется речь — про шмотки или бухло. Он и о том и о том может, если суфлер-back-end подскажет, что вставлять после «Это очень крутая штука, наша»…

Короче, если Вы смогли это дочитать и все еще пытаетесь реализовать back-end как XLST-преобразование XML-дампа базы данных — прямая дорога вам в 1С, делать «Битрикс-ы» под руководством г-на Рыжикова. Или нет, не возьмут Вас за слова XML и XSLT, они же уже «накололись» на этом и больше так не «лохонутся». Ну, тогда перечитайте еще разок этот опус или попробуйте написать гневный отклик на него, думая над каждой своей фразой.

UP. Disclaimer — сложность текста, его сумбурность, оторванность примеров от предмета и тэдэ — результат крайне поверхностных знаний автора в обсуждаемом предмете. На данный момент вся моя профессиональная подготовка по XLST состоит в прочтении первого предложения XLST — стандарта, гласящего:
This specification defines the syntax and semantics of XSLT, which is a language for transforming XML documents into other XML documents.

Еще вопросы?

TagToDo, Да еще одна ToDo-шка

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

Мечта


У меня всегда была мечта написать «незабывайку». Множество раз я приступал к этой задаче, но либо желание пропадало на этапе макета, либо друзья говорили: «зачем на еще одина ToDo-шка, их итак миллион». Но желание написать что-то свое не пропадало. И вот на работе выдались относительно спокойные деньки, и я вновь задался темной целью: написать в конце концов свою «незабывайку». А так как я до селе работал только с десктопными приложениями, и в Web не зуб ногой, то решил совместить изучение и давнюю мечту. Учитывая, что основной мой хлеб это .Net + WPF. Я избрал платформой Silverlight. Вроде как и .Net + WPF, но что-то новенькое. Быстро поставил цель, и в идеале я должен был завершить в 5 дней.
Читать дальше →

Маркетинговый ход или недоработка?

Время на прочтение1 мин
Количество просмотров465
Пару месяцев назад мне в руки попал не совсем новый, а точнее уже повидавший жизнь ноутбук. Попросили посмотреть что да как/исправить/настроить. Сам по себе ноут как ноут, небось не мало стоил когда его покупали.



Читать дальше →