bash.im ithappens.me zadolba.li

Программы

12706

Со мной агент, защитник, тёща и прабабка

10 октября 2014, 07:00

Доброго здоровья! Меня зовут Андрей, по образованию — разработчик программного обеспечения. Что может достать людей моей сферы деятельности? Да много что. Соседи с неглубокими навыками работы с ПК (дамы и бабушки — отдельная категория), заказчики, которые в принципе не знают, чего хотят, и не в состоянии смотреть даже на пять минут вперёд. Самый обыкновенный, современный быт IT-сферы, о котором написана уже пара томов «Войны и мира». Но нет. Достали меня коллеги по цеху.

Да-да. Они, родимые. Я могу понять быдлокодеров — со всеми бывало. Стараюсь повысить качество собственного кода, как могу — стараюсь. Могу понять «индусов» — мы все не без греха, и полет инженерной мысли часто бывает слишком витиеват. Что же конкретно? А забодали меня «пейсатели» маленьких «очень-удобных-очень-нужных-жизненно-важных» программулек, которые лепятся по поводу и без ко многим дистрибутивам большого и малого ПО. Хочешь установить самый обыкновенный аудио/видеоплеер. Стоит только упустить одну-единственную галочку — и всё. Первым делом вместо востребованного плеера уже красуются Яндекс-браузер, Яндекс-защитник, бар, виджет, гаджет, напоминалка, а ты подписан на все рассылки разом с обязательным пунктом насчёт виагры и размеров фаллоса.

Хочешь установить какой-то несчастный PDF/DjVu/TXT/PNG-ридер/вьюер (нужное подчеркнуть) — даже не надейся, что после установки ты получишь именно несчастный ридер. Тебя встречает агент Mail.ru, защитник Mail.ru, теперь ты пользуешься поиском Mail.ru. Они напомнят о себе всегда, когда ты притронешься к мышке и откроешь страницу в браузере. Они обязательно дадут талмуд офигительно важных советов, без которых ты точно загнёшь ласты в ближайшие 30 секунд.

Ребятки мои золотые! Я понимаю, что все хотят кушать. Как программист, очень вас понимаю. Работа нервная, результатов требуют. Требуют эффективности от этих самых написанных программулек. Я понимаю, что очень хочется, чтобы программульки непременно очутились на ПК пользователя. Поэтому и скрываются пункты меню, а иногда даже и вовсе отсутствуют. Всё готов понять. Но какого ж фаллоса вы не предоставляете человеческих способов удаления вашего жизненно важного ПО?! Хочешь удалить всю эту «полезность», но нет пунктов деинсталляции. Пытаешься удалить стандартным «Программы и компоненты», но там нет нужных записей. Часто приходится удалять саму папку и чистить реестр.

Антивирусы (да, вы отдельным абзацем)! Я не стану повторяться про эффективность и потребляемые ресурсы. У меня слишком мало опыта, чтоб об этом судить. Не стану даже пытаться оценить, какой лучше. Солнышки вы мои ясные! Почему в каждом антивируснике перестал присутствовать пункт меню «Выход»? Мне надо завершить этот самый антивирус по многим причинам. Запуск очень тяжёлого приложения, диагностика систем компьютера (я должен понять, почему нет интернета у пользователя). Да, «защита» компьютера приостановится. Да, я сам буду виноват, если в эти несколько минут ПК будет подвержен атаке (и, вероятно, будет заражён). Да, я знаю об этом — и всё же вынужден останавливать. Что же на практике? Нет такого пункта меню. Иногда приходится вырубать из автозагрузки и перезагружаться.

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

12684

Да что вы говорите!

3 октября 2014, 07:12

В последнее время забарахлила 3G-связь. Посоветовали приложение на зелёного робота для теста и отправки отчётов.

Отключите Wi-Fi, оставьте только связь с SIM-карты.

Подождите, идёт тест…

Проблема определена автоматически: нет сети. Отправить отчёт?

12677

Пароли? Не, не слышали

30 сентября 2014, 07:24

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

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

12668

СУБД-клёш

26 сентября 2014, 18:48

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

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

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

И производство софта переориентировалось на моду.

Юзера надо заставить купить новый софт. Кнопочки, рюшечки и попугайский интерфейс навешиваются на старую функциональность. Новые стандарты. Новая ОС, которая сделает вас счастливыми. Для особо упорствующих убиваем совместимость с предыдущими версиями. Если не поможет — новое железо, которое несовместимо со старыми программами. Вас всё равно заставят что-нибудь купить, хоть это вам и не нужно, работает хуже и жрёт больше памяти. Мы просто обречены на новые свистоперделки, фейсбуки и айфончики. Кто-то обречён их покупать, а я, например, создавать.

А ведь можно было бы, например, идти вперёд и изобретать штаны для экстремальных условий. Для вакуума. Скафандр называются.

12666

Антошка, Антошка, деплоим мы картошку

25 сентября 2014, 12:48

Менеджеры… Программисты… О! Холиварчик! Вот вам мои пять копеек.

Вообразим картину: в колхозе крестьянин выращивает, скажем, картошку. Дело не сильно прибыльное и, в общем-то, трудное. И норма прибыли примерно такая же, что процентная ставка в банке. То есть для России где-то 8–10%. Почему я так уверен? Будь она меньше — продал бы крестьянин свой надел, положил бы деньги в банк и получал бы тогда больше, чем зарабатывает сейчас. Ну, а если норма прибыли больше? Во-о-от. Для этого стоит посмотреть на программиста. Вложений нужно по минимуму — комп да мозги. Заработать можно… Свою первую программу я писал две недели и продал за три тысячи рублей. Это когда инженерам 120 рублей в месяц платили. Правда, тогда я работал один. А сейчас у меня в отделе несколько аналитиков по каждому продукту, такое же количество маркетологов, development-начальники по профлинейкам и продуктам… Программеров меньше 30%. И норма прибыли снижается до той же банковской ставки, чтобы работникам соседних отраслей не было интереса менять работу и бросаться на разработку софта.

Можете быть уверены: если бы вдруг сельское хозяйство стало ну очень прибыльным делом, то вокруг одного крестьянина крутились бы несколько агрономов (каждый под своё поле и сорт картошки), маркетологи Гидрометцентра, системные архитекторы по квадратно-гнездовой посадке картофеля, сертифицированные консультанты по логистике тракторов и команда из «Формулы-1» для смены колёс у «Беларуси». А суммарная норма прибыли всё равно бы не изменилась.

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

Засим прощаюсь.

12662

Полишинель.xls

24 сентября 2014, 22:00

Сохраняю документ в Экселе, решил запаролить. Так уж вышло, что опыт вскрытия этих паролей у меня есть (пошарить прогу на старых дисках, а если не поможет — набыдлокодить брутфорсилку, если уж очень XLS нужен), а вот самому чтобы пароль задавать — такого ещё не было. Поэтому предупреждение Экселя-2000 в окне задания пароля, которое я увидел первый раз в жизни, очень порадовало:

ВНИМАНИЕ! Способа узнать забытый пароль не существует…

Весьма оптимистично со стороны Майкрософта!

12656

Цирк must go on

23 сентября 2014, 07:00

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

Да вот случилась оказия: ушла в лучший мир материнская плата. К счастью, вовремя это заметили, так что успели сбросить драйвер IDE-контроллера на стандартный для безболезненной замены железа без необходимости переустановки ОС. Да, некоторые могут сказать, что в таких случаях надо полностью ОС переустановить. Ага, щаззз: попробуйте убедить матерящегося бухгалтера, что полчаса — маловато для переустановки лицензионной винды, сервис-пака на неё, поиска драйверов на новомодный чипсет Н97 под «хрюшу» (лицензия же!), перенастройки криптопровайдеров для одновременной работы двух клиент-банков и кучи «перламутровых пуговиц» наподобие картинки рабочего стола!

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

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

  1. ТП просит повторить код активации. Кода подтверждения, естественно, нет.

  2. ТП просит продиктовать лицензионный ключ. Диктую. Мне сообщают, что ключ нормальный и проблем быть не должно. А они есть и никуда не собираются деваться.

  3. ТП предполагает, что установка у меня битая, установочный диск тоже битый, и предлагает скачать установку с сайта MS и переустановить Офис. По ключу, который, как внезапно (ха-ха) выяснилось, OEM, сайт MS шлёт весьма далеко. Но мы же купили продукт, успешно в нём отработали полгода и желаем работать и дальше!

Итогом получасового разговора стало заявление техподдержки мелкомягких, что проблема у нас в компьютере и мы должны, раз машина на гарантии, обратиться к сборщику этого ПК либо его производителю.

Я думаю, бесполезно жаловаться производителям процессора, материнской платы, винчестера, оперативной памяти, кулера и блока питания. Остаётся магазин, где мы имели счастье приобрести это чудо. Догадываетесь, что там ответили? Именно: железо компьютера работает, как и должно работать, офисный пакет запрашивает активацию, как и должен запрашивать, проблемы отсутствуют. А что сторонний сервер не желает его активировать — это проблемы исключительно владельцев этого сервера. И пусть они уже его к сервисникам на диагностику несут.

В итоге бухгалтерия молча осваивает свободный офисный пакет на букву «Л», а директор собирается звонить в техподдержку в присутствии юриста. Цирк продолжается…

12649

Деды воевали, мы не отстаём

Занимаюсь поддержкой и доработкой модуля CRM биллинговой системы. По функциональности очень жирный модуль: около 200 визуальных форм, по сути, одно из основных рабочих мест биллинговой системы.

Разработка начиналась около 15 лет назад на средстве разработки, столь популярном тогда на территории экс-СССР, названном в честь древнегреческого города. Тогда это был передовой край IT — визуальное средство позволяло быстро и качественно рисовать пользовательский интерфейс. А архитектура этого средства позволяла дорабатывать стандартные компоненты и классы, разрабатывать свои собственные или использовать сторонние, что повышало качество и привлекательность создаваемого программного продукта.

В отличии от маститых конкурентов, имевших тяжкий груз наследия старого кода, разрабатывали уже трёхзвенную архитектуру, чем немало гордились. Вот, мол, у них надо драйвера базы ставить (драйвера Оracle поставить и настроить — это довольно муторно, если рабочих мест за сотню с лишним), кому-то ещё фреймворк для работы клиента, а у нас тонкий клиент: создал ярлык на экзешник с файл-сервера, и уже всё работает. Конкуренты апеллировали, что клиентские места надо создавать в средствах разработки, которые заточены для работы с БД и прям со структуры базы сами рисуют пользовательский интерфейс (страшный и кривой, зато возиться не надо), а не на вашем комбайне, на котором только утилитки десктопные строгать.

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

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

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

К чему это я? Да все к тому же баяну, повторяемому тут на каждой странице: холивар вечен и повторяется на каждом витке развития технологий. А каждой технологии своё место и своё применение.

12644

Бесплатных таблеток от жадности — и побольше!

18 сентября 2014, 07:24

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

Первое. «За юзабилити и эргономику пока что денег не берут». Берут — и как раз разработчики платных программ, которые надо купить, а не лихорадочно искать им замену перед приходом Всем Известного Отдела. Специалисты по эргономике и дизайнеры тоже хотят получать зарплату не хуже, чем у программистов. Хотите хороший по вашему мнению, привычный, удобный дизайн — купите MS Office, Corel или Photoshop и пользуйтесь на здоровье. А если что-то не нравится, есть предложения по улучшению дизайна, который вам всё же почему-то оказался неудобен — есть обратная связь с разработчиком. Возможно, вам даже ответят. Возможно, замечания даже учтут в следующей версии, которую, кстати, тоже надо будет купить.

Второе. Непривычный и нелогичный интерфейс. По нашим наблюдениям, переход с МSО 2003 на МSО 2007/2010 в плане изучения нового интерфейса пользователями прошёл гораздо болезненнее, чем изучение установленного параллельно с ними LibreOfiice. И вопросов «А где?», «А как сделать?» в первом случае было намного больше. А ведь интерфейс 2007-го Офиса как раз разрабатывался с участием специалистов по эргономике.

Кстати, пункт меню «Параметры страницы», он же «Формат страницы», гораздо логичнее смотрится в разделе «Формат», рядом с форматом абзаца и форматом символа. А вот почему он в другом офисном пакете оказался в разделе меню «Файл» — ведомо только его разработчикам. Вы им, кстати, напишите — может, исправят. Хотя нет: МSО 2003 с апреля этого года уже не поддерживается.

А теперь собственный опыт. У нас, как повелось ещё с начала нулевых, почти весь софт в организации тоже был пиратским. Когда начали закручивать гайки, и не к нам, а в одну из организаций города, где работал знакомый, пришли и начали интересоваться софтом и его происхождением, то есть вероятность проверки замаячила и у нас, зашевелилось и наше руководство. Наши предыдущие просьбы купить лицензионный софт раньше отбрасывались: «Денег нет, зачем покупать, если и так всё работает?» Очередная докладная записка, наглядный пример начала проверок в родном городе вкупе с их наглядным результатом в виде немаленького штрафа — и процесс пошёл. На всё сразу денег, конечно, не дали, поэтому, кроме покупки части необходимых лицензий, для начала на все компьютеры поставили альтернативные бесплатные программные продукты и учили пользоваться. Посносили у многих специалистов дорогущие графические пакеты, которые ставились много лет назад по принципу «а вдруг пригодится» и с тех пор пользователем даже не включались. На просьбы «А поставьте мне Фотошоп, вот надо, и всё, работать без него не могу» начали реагировать: «А пиши докладную, что оно тебе точно надо». Утвердят и дадут денег — поставим. А пока на́ тебе Гимп фотографии с утренника обрезать — может, и Фотошоп не нужен будет.

Проверки так и не было, но теперь мы можем спать спокойно. Всё, что надо, лицензионное; всё, что не надо — бесплатное, и на нём определённый круг задач решается замечательно. И внезапно проявилась ещё одна особенность открытого софта — кроссплатформенность. Когда один отдел перевели на новую программу, работающую через веб-интерфейс, на их машинах отлично прижился Linux Mint с Файрфоксом и уже изученным и привычным LibreOffice, и особых проблем при переходе не возникло.

Морали не будет. У разных программ есть свои особенности, преимущества и недостатки, и на то мы и специалисты, чтобы во всём этом ориентироваться, иметь возможность подсказать начальству и научить пользователей, а не ждать, пока гром грянет, и потом лихорадочно креститься.