Category: it

Category was added automatically. Read all entries about "it".

пумба

объявление

Несколько пояснений насчет моего журнала
  1. Общедоступны записи связанные с программированием
  2. Friends only записи не очень свзанные с программированием или совсем с не связанные
  3. Есть исключения в обе стороны
Таким образом, если не хочется читать мои лытдыбры - просто попросите удалить вас из списка друзей. Если не хотите читать о программировании и 1С - удалите меня из списка друзей, немного потеряете. Если по каким-то причинам хочется почитать "изнутри", просто попросите меня добавить во френды. Френдов добавляю почти без разбора. Коменты к этому посту скринятся на всякий случай.
пумба

про Linux

С IE на оперу я перелез, когда мне понадобилось сильно экономить трафик. Других достоинств у оперы нет и не было. Как появилась возможность - перелез на FF, так как на тот момент IE уже по удобству сильно-сильно отстал от него. На FF так и сижу. Пробовал перелезть на хром, но в нём не работает несколько нужных мне плагинов/возможностей и глючит веб-интерфейс 1С:Предприятия (а вообще хром мне понравился). Вообще, меня сильно удивляет то, как IE уступил свои позиции с полного и безраздельного царствования, продолжавшегося с IE 4.01 до IE 6. Уступил без особых боёв, просто застыв в развитии. Даже не застыв, а просто перестав бежать. Когда (как мне кажется) спохватились, было уже поздно - альтернативные браузеры уже пустили корни. Да, он остался браузером большинства и сейчас, да вот только уже за счет своей дефолтности и пользователей, которые не могут выбирать (например, на работе).

Но речь не о браузерах. Это просто пример того, как эволюционно меняется догма: было "браузер = IE", стало "браузер = IE и другие". На днях просто столкнулся с подобной проблемой, но уже на уровне ОС. Не так давно дома переехал с Vista на 7. Вроде всё кроме мелочей постепенно перетащил и тут вчера захотел послушать фильм в наушниках. А наушники-то не простые, а наушники-то золотые синезубые Sony DR-BT50. Хорошие закрытые наушники, достойный звук (для bluetooth). Хорошо работают с ноутбуком Ани и со всеми HTC телефонами, которые у нас были. В общем - на них жаловаться глупо. К компу они были поключены через адаптер, который был куплен несколько примерно вместе с ними - Asus WL-BTD201M (был еще адаптер раньше, но он не подошёл ибо древний - bluetooth 1.0). В Vista всё было настроено и работало. Полез я настраивать в Windows 7 - обломался. Штатные драйверы от MS категорически отказались видеть наушники, они их посчитали "неизвестным устройством" и отказались работать, а Asus по-свински решил, что устройство старое и под новую ОС драйверов не нужно. И облом. Не работают наушники. Но не всё потеряно! Ведь есть же виртуальные машины, в которые можно "пробросить" USB-устройство. Машины с XP под рукой не оказалось, пробросил bluetooth в машину с Ubuntu 10.04.2 LTS, которая у меня для проверки работоспособности веб-интерфейса 1С валялась (мне 11.04 как-то не понравилась, да и не LTS она). Всё заработало с первого раза. Вот же ж блин. Медиаплеер с "драйверами наушников" 500 МБ оперативки теперь жрёт (можно до 300 порезать). Причем всё достаточно легко настроил: и файлы с основной машины через samba читаю, и поставил Audacious для прослушивания музыки (остальные не понравились), и доустановились все нужные кодеки для фильмов. Единственное, что vmware-tools не с первого раза устновился, да управление воспроизведением с наушников пока не настроил (на них можно перематывать вперёд/назад, громкость настраивать и альбом менять), ну еще Audacious по удобности уступает привычному AIMP, но не сильно значительно.

пумба

про работу.

Присказка


Я давно тружусь "прикладным программистом для системы 1С:Предприятие". С точки зрения маркетинга и своевременности на рынке очень удачная система и, что характерно, в целом старается оставаться. С технической/технологической - не безупречно, но глядя на остальные какашки отечественного рынка, просто гордость за 1С берёт. Collapse )
пумба

Информационная безопасность в Сбере

Я тут приболел слегка и поэтому у меня есть время на всякие глупые посты. Например про информационную безопасность. Я, может быть кажется, немного параноик, но у меня есть чёткое ощущение, что информационной безопасности уже не существует. И уже, похоже не будет существовать - опоздали лет на 15-20. А понимание ценности информации придёт (опять таки - у нас в стране) лет через 5, наверное. На все тыканья пальцем в откровенные дыры многие разработчики ПО просто отмахиваются до сих пор ("Да кто ж нас ломать-то будет"), только крупнейшие начали оперативно и системно реагировать. К счастью MS и 1С - с которыми я сталкиваюсь чаще остальных относятся с каждым годом всё серьёзнее.
Это я всё к чему? Да вот пошёл госпошлину в Сбербанк заплатить. А Сбербанк надо сказать из совкового быдлобанка семимильными шагами движется в светлое будущее. У них и ставки по кредитам минимальные и доступность филиалов/банкоматов в разы ваше ближайших конкурентов, интернет-обслуживание развивают, сотрудники стали опрятными и приятными в общении. В общем - прогрессивный банк. В том отделении, куда я зашёл - куча терминалов самообслуживания, банкоматов, электронная очередь, кофейный автомат, чисто, светло, реклама по телевизору - в общем, всё очень пристойно (несмотря на плотный поток посетителей). Стоит в энтом отделении "информационный киоск" или ХЗ как он там называется, в общем комп с сенсорным экраном, без клавиатуры с открытым в полноэкранном режиме браузера сайтом банка. Ну. Я посмотрел на экран секунды две, потом подумал "Ой, а что будет если нажать на ссылку, которая ведёт к PDF файлам?". Нажал. Привет, меню "Пуск" ОС Windows XP! Дальше лезть было лень, но меню "Стандартные" там вполне было. Наверное и экранная клавиатура была.
Вот тут большинство скажет - подумаешь, меню пуск нашёл, что ж тут страшного? Страшное здесь следующее:
1. Это была тупо первая, примитивная, простейшая идея "А что если...". И уже на ней прокол.
2. Это комп, подключенный к Интернету, физически находящийся в банке, оснащённый видеокамерой.
3. Я точно знаю, что еще несколько лет назад CTRL-F3 в Citrix в Сбере отключен не был. CTRL-F3 в Citrix - аналог CTRL-SHIFT-ESC.
4. Это Сбербанк. С огромными бюджетами, ненаплевательским (относительно) отношением к безопасности, огромным количеством сотрудников и клиентов. В мелких банках всё хуже.

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

Существующая инфорамцонная безопасность держится, похоже, ровно на том, что "не особо то и ломают". И если США говоря про викиликс упоминают 11 сентября, то у них еще есть шанс организовать хоть какую-то информационную безопасность, а у нас еще нет даже намёков на понимание серьёзности проблемы.
пумба

SQL и недостающие индексы.

В MS SQL Server начиная с версии 2005 появилась отличная возможность - на уровне движка БД накапливается статистика по тем индексам, которые бы помогли в запросах, но их не оказалось. За сбор этой статистики отвечают системные представления sys.dm_db_missing_index_group_stats, sys.dm_db_missing_index_groups, sys.dm_db_missing_index_details, sys.dm_db_missing_index_columns. В плане применимости к 1С там конечно не всё безоблачно - собранную статистику нужно еще правильно проанализировать, но я-то это умею и пользуюсь. У этого инструмента есть неприятная особенность:
Статистика собирается не более чем для 500 групп отсутствующих индексов. Когда этот порог достигнут, данные о группах отсутствующих индексов больше не собираются. Этот порог не подлежит настройке, его изменить нельзя.

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

Бизапастнасть и 1С

Конечно, с каждым годом 1С всё более и более отвественно относится к безопасности. И на текущий момент грамотно выстроенная информационная система на 1С уже не "заходи-кто-хочет-бери-что-хочешь". Но подход у них к безопасности какой-то эволюционный. Эволюционный не в смысле "постепенный", а в смысле "работает естественный отбор", не системное движение исходя из современных требований и сложившихся практик, а методом затыкания дыр и патчинга патчей. И это на уровне платформы, а на уровне прикладных решений даже сейчас дремучий лес - в типовой УПП почти любой пользователь имеет право на загрузку данных, а там code injection тупо в формат зашит.
И мелких штрихов, подчёркивающих это просто вагоны. Collapse )
пумба

Решил снова пописать про 1С результаты некоторых набросков, которые делаю дома

Немного теории.
Работа со стороками. Самый базовый элемент работы любой платформы. Конкатенация (соединение строк). Казалось бы - ну что может быть проще и однозначнее? Ан нет. Выражение T = "А"+"Б"; (если оно не вычислено на этапе компиляции/разбора) требует выделения памяти для "А", памяти для "Б", анализа длин "А" и "Б", выделение памяти для T, копирование первой строки, копирование второй строки. Это медленно, особенно если в цикле дописывается кусочек в конец строки.
В "нормальных" системах, например в .NET от этого можно уйти используя так называемые StringBuilder - это специальный объект, который более эффективно выделяет память (крупными блоками) и не копирует зря строки. По сути это поток (stream) который используется для записи в память, как в файл. А вот в 1С такого нет. Фиг вам товарищи, а не эффективная работа со строками :) Но фиг только тем у кого хитрости мало, а для остальных есть варианты.
ТекстовыйДокумент
Оказывается, что метод ДобавитьСтроку() для типа ТекстовыйДокумент для больших строк работает гораздо эффективнее чем тупая конкатенация. Возможно, это связано с тем, что этот тип - обёртка к текстовому редактору, встроенному в 1С. Кстати, этот редактор для простых текстовых файлов файлов мне нравится гораздо больше, чем например, notepad или редактор Visual Studio - он позволяет бодрее работать с большими текстами, как в длину, так и в ширину.
Но! У этого способа есть недостаток - в 8.0 и 8.1 он не доступен на сервере, т.к. считается "интерфейсным". Обидно. Но это заставляет искать нас более эффективный способ:
ЗаписьXML
Опа! А при чём здесь XML? Правильно, XML нам не нужен. Но важно, что тип ЗаписьXML представляет собой как раз обёртку над последовательной записью в поток. А если учесть, что он позволяет формировать результат в память в виде строки, а не только в файл, то это уже готовый кандидат на замену StringBuilder. Осталось только упомянуть, что он позволяет дозаписывать в "XML" всё что угодно при помощи метода ЗаписатьБезОбработки().

Collapse )
Результаты забегов
У меня на тестовой среде получилось примерно следующее время:
1. Конкатенация - 24 секунды
2. Текстовый документ 1,5 секунды
3. ЗаписьXML - около 0,4 секунды