Читать «Bash IT Happens Истории ## 5501 – 5600» онлайн

Bash.org.ru IT

Клиент и саппорт. Разработчик и заказчик. Программист и программа. Вести с фронтов.

#5501: Простите за наглость

12:00 20.02.2011, IT happens

Добрый день!

С паролями для хостинга наметился прогресс: были высланы корректные пароли для MySQL. Прошла всего неделя; понадобились всего три письма с моей стороны, два звонка от меня и один гневный от клиента. Это безусловно серьёзный шаг для компании «*****». Ослепительно яркое будущее, мириады постоянных клиентов и солидная доля рынка — вот мысли, которые приходят на ум, когда вспоминаешь о вашей компании.

Можно ли попросить вас сделать нечеловеческое усилие и выслать корректные пароль и логин для FTP-доступа до конца недели, протестировать их перед отправкой (Господь, прости меня за наглость!) и указать порт, если он отличается от стандартного?

Обязуюсь впредь не беспокоить вашу компанию по подобным пустякам.

Навеки ваш N.

#5502: Споткнулся, упал, очнулся — буква

12:00 20.02.2011, IT happens

Кто хоть раз мучился на C# с выводом форматированного текста в майкрософтовском GDI+, знает, что для точных измерений размеров выводимого текста нужно пользоваться методом MeasureCharacterRanges, так как MeasureString даёт лишь приблизительный размер прямоугольника, в который гарантированно укладывается выводимый на экран текст. Эти пляски необходимы, если ты уже нарисовал какой-то текст на экране, а теперь надо продолжить с того же места. Предлагаемая методика, хоть и громоздка, но считает всё точно, и привыкнуть к ней можно.

Разбирая код одного сумрачного гения с сертификатом MCSE, я узрел совершенно чудный алгоритм решения той же задачи. Определяются размеры буквы W, домножаются на количество букв в выведенном тексте, а потом из полученной точки правее выведенного текста начинется перебор всех пикселей справа налево, пока не встретится пиксель, отличный по цвету от фона. Затем определяется ширина пробела, прибавляется к найденной точке — и отсюда надлежит выводить следующий блок текста. Надо ли говорить, что измеренные таким образом размеры никаких гарантий не давали, если строка с выведенным текстом оканчивалась на буквы вроде T или V, а скорость вывода текста после исправления возросла в три раза?

#5503: Двумя прицельными ударами

14:00 20.02.2011, IT happens

Я айтишник, а в свободное время занимаюсь ремонтом всего и вся электронно-механического. Как-то мне притащили цифровой фотик со вдавленным объективом — ни один СЦ во всём крае его в ремонт брать не взялся. При помощи лупы, тончайших отвёрточек и такой-то мамы я его починил. С тех пор этот же фотик с завидной регулярностью стал попадать ко мне в ремонт с одной и той же проблемой: юзеры умудрялись разными способами довести объектив до нерабочего состояния, то свернув его по оси, то уронив аппарат линзой вниз, то придавив задницей к дивану.

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