bash.im ithappens.me zadolba.li
11594

Видать, из макбука приполз

7 ноября 2013, 07:15

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

Визг в три глотки чудом не побил окна в квартире. Я попытался схватить зверька конфетной обёрткой. Мне протянули первый попавшийся пинцет (как позже выяснилось, девушки им брови выщипывают), потом ударили по рукам, пытаясь сделать всё самостоятельно. Червяк упал в клаву и попался только после того, как я содрал Backspace и железкой, на которой держалась клавиша, прижал гада за хвост. Девушки успешно схватили его и выбросили в окно.

Про то, что компьютерные черви выглядят именно так, они пошутили сами.

11593

Сам собрал, сам страдал

6 ноября 2013, 07:15

Недавно у меня на работе сотрудница подхватила винлокер, и я наконец-то увидел это чудо воочию. Но лечить мне его было не резон. На это у нас есть департамент IT.

А вчера уже позвонила другая знакомая и тоже пожаловалась на винлокер на домашнем компьютере. Он вылез внезапно, когда знакомая мирно читала какую-то PDF, скачанную с интернета. Компьютер у неё один. Помимо XP на нём стоит ещё 98-я и военный линукс МСВС (ставил это всё я несколько лет назад). Основная система — XP. В 98-ю знакомая давно не заходила, линукс ей нужен по работе: трудится программистом в «почтовом ящике», как говорили во времена СССР. То есть она, конечно, не прямо дома пишет программы для этого «почтового ящика», но просто хотела иметь возможность использовать такую же систему, как на работе, чтобы было можно дома что-то пробовать. Оказалось, что 98-я у неё не запускается, линукс работает, но в интернет она из него выйти не может. Поэтому, вооружившись LiveCD известного отечественного антивируса, я отправился в гости.

С антивирусным LiveCD я до этого тоже дел не имел  — как-то обходилось. Мне диск очень понравился. Gentoo, на основе которого он был собран, прекрасно распознал и примонтировал все разделы на диске, а также виндоусовский реестр. Лечащая утилита, правда, вирус не нашла. Я параллельно проверил точки автозагрузки в реестре и вышел на зловреда. Благодаря встроенному браузеру проверил его на virscan.org. Действительно, его распознавали как вирус только 4 из 36 антивирусов. Тело вируса тут же было отправлено в антивирусную лабораторию, которая выпустила LiveCD, и уже к вечеру его включили в базу.

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

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

11592

Господи, спаси от DROP TABLE

6 ноября 2013, 07:15

Разбирая базу данных, обнаружил поле с именем GOD_MADE. Как вы думаете, что бы это значило? Нет, не угадали. Это всего-навсего год выпуска. Тот, кто это писал, обладал явно нестандартным мышлением.

11591

Долог самурая путь к библиотеке

6 ноября 2013, 07:15

Ещё одна деталь к японскому менталитету.

Вообще-то я на Джаве не программирую. На С++ больше. Но поскольку на Андроиде пользовательские приблуды пишут на этой самой Джаве, а охренеть какой японской «это ж, блин, %businessName%!» захотелось поиметь нашу библиотеку на своём телефоне, то откомпилил я её, написал JNI-прокладку между С++ и Джавой, приложил пример и выкатил японским друзьям попользоваться.

Через месяц пришёл от японцев вопрос: «А можно ли вашу библиотеку грузить из произвольной папки?» А хрен его знает. Сроду так далеко в Джаву не лазил. Погуглил — и нашёл системную функцию, которая именно этим и занимается — грузит либу по абсолютному пути. Задумался. Мысль о том, что андроидные разработчики из такой серьёзной фирмы не знают Джаву, в голову не пришла. Поэтому вопрос в моей голове трансформировался: «Если мы будем грузить библиотеку из другой папки, не нарвёмся ли мы на грабли, которые вы заботливо для нас разложили?» Таковых граблей не было, и я честно ответил: «Можно, грузите из любой папки, разрешаю». И забыл.

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

void LoadLibraryFromAbsolutePath( String path )
{
  System.load( path );
}

Код был отослан в Японию. Через день пришло письмо с благодарностью. Кроме шуток — абсолютно серьёзная и искренняя благодарность. Если бы у нас в конторе не смогли написать три строчки такого кода и отдали бы на аутсорс, уволили бы весь отдел.

Как можно программировать на Джаве без знания основных функций языка, для меня загадка. Равно как загадкой остаётся, как таких программеров наняли на работу и почему в Японии нет Гугла.

11590

Позвони мне, если сможешь

5 ноября 2013, 07:45

Настраивали «русский аналог скайпа» — Sipnet. Не хотел он через прокси выходить. Пишу в техподдержку. Получаю ответ:

— Позвоните нам, мы вам с радостью поможем!

Пытаюсь найти номер телефона на их страничке. Нетути. Пишу ещё раз:

— Покажите, куда звонить?

— Вот наш номер в сети Sipnet.

— Вы действительно осознаёте, что предлагаете мне позвонить вам по айпи-телефонии для настройки этой самой айпи-телефонии?

— Да. У нас нет другого телефона.

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

11589

Вход в выход

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

Тут же парень принёс нам на заправку новый картридж, ещё фабричной заправки, но с полным контейнером тонера. Ну, мы-то вычистили, заправили, но потом всё же спросили, как печатал, нормально ли тонер сыпался на лист — мало ли, вдруг контейнер обдирал тонер с барабана? Такого раньше не видели. А оказалось, что парень сначала решил сам заправить картридж, купил порошка (судя по рассказу, вообще к другому принтеру) и начал искать, куда его засыпать. Раскрутить удалось только контейнер, а поскольку там было почти пусто, только пара крошек уже выгоревшего тонера, он засыпал туда полную «дорожку» порошка, забив контейнер, и только когда порошок «не пошёл», а листы оставались белыми, принёс картридж нам.

Мораль: не знаешь дырку — не суй что попало.

11588

Все мои кнопки для тебя

5 ноября 2013, 07:15

Каждое новое знакомство начинается абсолютно одинаково (что совсем не надоело). Собеседники, узнав, как меня зовут, вздыхают и говорят:

— А фамилия-то у тебя такая… айти-и-ишная!

А всё дело-то в том, что я Аникеева. Но всей «айтишности» во мне — только кулер поменять да роутер настроить. Но вот как только встречу своего Логинова…

11587

Красная книга косяков

4 ноября 2013, 11:45

Решил узнать поподробнее про услугу «мобильный банк». Печатал с Андроида, который услужливо подсказал: «сбербаг».

Машина не ошиблась: при попытке навигации по сайту браузер стабильно вылетает.

11586

«Пошёл на» на всех языках

Знаете, я сейчас понял, что в школах всё-таки нормально учат программированию. Почему? В начальных и средних классах преподают базовую логику. Вроде бы всё просто, но логика — это очень хитрая школа.

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

А как насчёт функций в математике? f(x)? Разве в базе это не одно и тоже? Разве, задав вместо x любое число, мы не получим что-нибудь в переменной f?

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

Недавно, к слову, был в одном лагере, и была там у нас робототехника. Как самый интересующийся, был допущен к программированию. И знаете что? RobotC — это тот же самый С, просто ты, как ребёнок, вводишь, как быстро крутится моторчик или под каким углом наклоняется элемент. А в основе та же логика. Робот что-то увидел? Пусть он держится возле предмета на расстоянии пять сантиметров. Вроде бы сложно, но на деле — обычное условие.

К чему я? Сидя сейчас на уроке информатики в своём девятом классе, я повторяю все задачи на Паскале в С++. И мне ещё поражаются, да.