6061

Прикручу почти бесплатно

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

— Здравствуйте. Хотел бы спросить, как часто вы проверяете свои продажи через нововведённую систему оплаты?

— Здравствуйте. Ежедневно. Почему вас это заинтересовало?

— Вот смотрите, сколько стоит лицензия на вашу программу?

— Цена на один ключ — 1200 рублей.

— И часто у вас покупают ключи?

— Несколько штук в день.

— Скажите, а кто писал скрипты продажи через электронные деньги?

— Нанятый программист, а что?

— Советую вам выпустить новую версию либо закрывать фирму.

— Вы угрожаете?

— Нет. Заглянув в ваши логи, я увидел 28 покупок программы за 0 рублей, а также обнаружил на *****.ru лицензии на вашу программу по 200 рублей.

Фрилансер, писавший скрипт, добавил небольшую дырку, позволявшую купить ключ, не платя за него.

В конце концов, найдите денег на нормального программиста. Вам же лучше будет.

6060

Справимся без спайса

А вы знаете, что искусственный интеллект уже существует? В том самом смысле, в каком его понимал Тьюринг, даже почти проходит тот самый тест, правда, немного с другой стороны.

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

Например, если в запросе есть фраза «сменить тариф», девушка начинает рассказывать о том, как можно его сменить, причём, пока она не отправит весь пакет с ответом, прервать её невозможно.

После фразы, содержащей «интернет с телевидением», она начинает рассказывать, что в тариф включено цифровое телевидение.

На фразу «декодер телевидения» девушка реагирует однозначно: «Для получения декодера надо заполнить заявление у нас в офисе».

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

Похоже, Герберт в своей «Дюне» неплохо угадал будущее ИИ, когда вместо компьютеров используются живые вычислители — ментаты. Зачем делать искусственный интеллект из кремния, когда его можно сделать из интеллекта естественного?

6059

Он не умер, он просто так пахнет

Только что потребовалось срочно встроить в нашу программу на C# поддержку одного из сетевых протоколов. Недолго думая, решил погуглить в поисках готовых решений. Первой стояла ссылка с таким текстом:

No this project isn’t dead.

Last updated: 2004-10-10 22:51.

6058

Реальность вносит коррективы

Одному гениальному учёному захотелось, чтобы холодильник сам мог сказать, сколько в нём чего осталось, может быть, даже присылал эсемески: «Мужик, у тебя тут молоко заканчивается и огурцы уже привет передают». Как этого добиться?

Очевидный выход — сканер штрих-кодов с базой данных по всем покупаемым товарам. Но как сканер узнает, сколько молока осталось в двухлитровой коробке? И где на огурце штрих-код? От идеи оснастить холодильник весами и заставить всех домашних каждый раз ставить вещи на весы учёному хватило ума отказаться.

Следующей идеей стала цифровая камера — они тогда (в начале двухтысячных) только-только начали набирать популярность. Точнее, несколько камер, расположенных так, чтобы увидеть всё, что есть в холодильнике. С анализом изображения, классификацией согласно базе данных и мониторингом количества после каждого открывания дверей. Учёный вздохнул тяжко, поднял свои конспекты по machine learning, натравил Wget на парочку сайтов с изображением продуктов, чтобы набить базу данных картинками обёрток и тактико-техническими характеристиками товаров, и сел писать алгоритм.

Получалось плохо. Для начала оказалось, что для создания устойчивой трёхмерной диспозиции объектов каждая полка должна была быть оснащена минимум тремя камерами, а лучше — четырьмя. (Ещё лучше — пятнадцатью, но тут уже включались экономические факторы.) Во-вторых, надо было построить объёмную модель каждой упаковки по тем её кускам, которые не загорожены другими упаковками, определить её раскраску и сверить с базой данных всех возможных упаковок под разными углами и с разных расстояний. Это примерно то же самое, что по мочке уха и левой пятке с расстояния в несколько метров определить личность человека и узнать, за какую команду он болеет в каждом виде спорта. Требования к счётным мощностям тут совершенно дикие; на такую задачу впору натравливать NASA или Министерство обороны, а не домашний сервер на основе Pentium IV, который учёный хотел нагрузить этой задачей вдобавок к остальным. В-третьих, надо было что-то придумать с распознаванием образов внутри полиэтиленовых пакетов: большое и зелёное — это огурец или авокадо? Незрелый мандарин или уже перезрелый? В-четвёртых, как поступить, если упаковка смята или этикетка наклеена очень криво? В-пятых, что делать с отделением для колбас? Оно слишком тонкое, чтобы туда поместилось несколько камер, и вещи там лежат друг на друге очень плотненько, и все в одинаковых пакетиках, а колбасы-то разные. В-шестых, как по внешнему виду упаковки понять, сколько ещё продукта осталось внутри? С молоком всё просто — упаковка полупрозрачная, но кефир и сок поставляются в картонных тетрапакетах, а шоколадная паста имеет тенденцию залеплять упаковку изнутри вне зависимости от её реального количества.

Coup de grâce идее с автоматическим распознаванием образов нанесла жена, на глазах у учёного доставшая сыр из коробки из-под котлет, потому что эта коробка, видите ли, удобнее.

Но гениальные учёные не сдаются! Если нельзя автоматически подсчитать, что в холодильнике заканчивается, то, может, удастся хотя бы облегчить эту задачу обычному пользователю? Итак, берём цифровые камеры, вешаем их на дверь холодильника изнутри. Берём LCD-экраны бросового качества (пять-семь битых пикселей в этом случае роли не играют), вешаем их на эту же дверь снаружи. Берём тот самый Pentium, пишем ему софт, который тупо пересылает картинки с камер внутри на экраны снаружи. Profit!

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

Всё работало идеально. Экраны показывали внутренности холодильника. Жена была в восторге. Учёный гордо закрыл дверь. В холодильнике погас свет.

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

6056

Чайник без чайника

Давненько работал я телефонистом в довольно крупном провайдере. Приходит к нам новый работник, вводим в курс дела: как отвечать, какие ошибки у виндов что значат. Но это не суть. Я понял тогда, почему одним из требований была стрессоустойчивость. На второй день я подслушал кусочек разговора новичка с клиентом:

— Вот представьте, что у вас есть чайник.

— …

— Нет, я сказал, чайник! Вот вы с его помощью можете выйти в интернет? Отвечайте на мой вопрос!

— …

— То-то! А вот если бы в нём была сетевая карта, то смогли бы!

6054

Ужин с Бордо и Атлоном

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

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

Открыл сумку только ближе к ночи. Неповоротливая старая машина была в таком состоянии, что у меня непроизвольно открылся рот. Дисплей — как будто сидевшая за ним в него каждый день плевала. Причём плевала за едой, о чём свидетельствовала дюжина жирных пятен с прилипшими крошками. Тачпад — как будто гвозди им забивали. Про пыль и еду под клавишами уж помолчу. Вспомнил, как с помойки приносил системники в лучшем состоянии.

Умру холостым.

6053

Пират из принципа

Спросил меня как-то один приятель:

— Слушай, не знаешь какой-нибудь платный браузер?

— Зачем тебе? — удивился я.

— Бесплатным пользоваться неинтересно. Хочу, чтобы у меня браузер был пиратским.

Я начал вспоминать, какие из современных браузеров являются платными, и не вспомнил ни одного, о чём и сообщил приятелю. Тот взмолился:

— Ну пожалуйста, ну найди платный браузер! Тебе что, трудно, что ли?

Что ж, решил я, нужен платный браузер — будет тебе платный браузер. Прямо на глазах приятеля взял исходники Firefox, добавил спрашивалку кода регистрации (два в пятнадцатой) и собрал.

— Украдёшь браузер у меня. А я, так и быть, никому об этом не расскажу.

Приятель сел устанавливать браузер.

— А где я код регистрации возьму?

— А я его тебе так скажу: тридцать две ты…

— Не, так скучно, — перебил приятель. — Нужен кряк!

Нужен кряк — будет и кряк. Быстро накатал программу, которая выводила на экран число 32768. Приятель был доволен.

6052

Попилили, а дальше-то что?

Работаю продавцом железа, в свободное время уже более десяти лет админю мелкие конторы. Всё отлажено уже так, что работа заключается в выезде раз в месяц за деньгами.

Когда я за прилавком, главное — помочь человеку купить то, что хочет его сердце, разум или руководство. До чего же меня удивляют «системные администраторы» некоторых крупных контор! Вот их вопросы.

Курский аэропорт: «Было два компа, как разделить сеть на три?»

Завод КПД: «Мы купили у вас Виндоус Сервер 2008, как его установить?»

Детская поликлиника: «Да, будет стоять в регистратуре. Зачем нам два жёстких для рейда? Какой такой бэкап? Как может всё пропасть?! Нет, я не знаю как это настроить…»

Росэнерго: «Как установить память DDR3 в слот DDR1?»

Роспотребнадзор: «Нам нужен маршрутизатор, расскажите, как его настроить».

ЖБИ: «Не знаю, как называется, дайте мне! В сеть вставляется! Чтоб она не падала!»

Таможня: «У меня не получается настроить вайфай, у вас есть инструкция по настройке сети на русском?»

Министерство связи и транспорта: «У нас через двадцать минут гаснет ваш монитор. Если пошевелить мышкой, он работает. Почините?»

6051

Ранний быдлокод-примитивизм

Программирование сродни изобразительному искусству. Посудите-ка сами.

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

Во-вторых, сложные программы, как и великие картины, пишутся длительное время.

В-третьих, даже сам процесс написания похож: подготовка (покупка принадлежностей/установка софта), задумка(эскиз/алгоритм) и сам процесс написания.

В-четвёртых, понимание мыслей художника/программиста тоже требует некоторых знаний.

Но почему же бывают выставки известных полотен, а выставок шедевральных программизмов не бывает? Вот представьте: «А тут вы видите код известного программиста N. Произведение исполнено в жанре быдлокода. Как вы можете заметить, автор не использует циклов. Этим он хочет показать неповторимость нашей жизни».

6050

Восточнославянский диалект албанского

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

Недавно поймала себя на том, что мировосприятие как-то резко изменилось: читаю очередную цитату на «Баше» и не вкуриваю, что же должно быть смешного. Оказалось, что мозг, испорченный бухгалтерской практикой, аббревиатуру ОС воспринимает исключительно как «основные средства». А ведь раньше я на 100% была уверена, что это «операционная система»!

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