Личный блог, где пишу обо всём, что только может возникнуть в моей голове. В основном это какая-нибудь «айтишная» тематика, но кто может знать, о чём мне ещё захочется написать сюда?
Ctrl + ↑ Позднее

Запись к врачу через интернет — суровая реальность.

11 ноября 2013, 19:17

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

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

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

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

Мегафон, Теле2 и борьба со спамом

7 ноября 2013, 11:29

Итак, дорогие друзья, многие из вас внезапно столкнулись с проблемой, что буквально на днях стало невозможно получить сообщения от множества сервисов на свои мобильные устройства (если вы являетесь абонентом Мегафон или Теле2, конечно же). Что же произошло, почему стало так, а не иначе?

А на самом деле произошло вот что: из-за возросшего негатива со стороны пользователей на спам-сообщения на свои мобильные устройства, было решено сделать фильтр сообщений, который заключается в том, что отправлять сообщения абонентам Мегафон и Теле2 теперь можно только напрямую через шлюзы оператора. Если вы не понимаете, о чём речь в этом абзаце, то поясню: обычно, чтобы сделать какую-нибудь рассылку, ищут поставщика (или организуют сами, кто знает), у которого есть свой шлюз, через который можно будет отправлять сообщения абонентам. Вот эти вот все SMS, у которых вместо номера телефона было что-то своё — с вероятностью 99% пользовались услугами таких вот SMS-шлюзов. Что же происходит теперь? А теперь рассылки такие невозможны, так как такие сообщения обязаны идти через собственные шлюзы оператора. Сказывается это в первую очередь на цене сообщения, ведь на всяческого рода рассылки есть свой прайс в зависимости от количества планируемых сообщений в месяц. У поставщика шлюза так же должна быть техническая возможность отправлять такие сообщения через шлюз оператора напрямую.

Вот такие вот пироги. И могу сказать точно, что такое может в скором времени быть и у других операторов. И то, что не приходят сообщения, например, от сети ресторанов «Тануки» — по сути, вины оператора тут нет, они защищены и поставщики более-менее известных и «правильных» SMS-шлюзов были уведомлены об этом заранее.

Продаю MacBook Pro — [ПРОДАНО]

25 октября 2013, 15:28

Ребята, продаю свой MacBook Pro, служившего мне верой и правдой в течение двух лет. Если кого-то интересует такая покупка, конечно же. Например, в качестве первого компьютера на базе Mac OS X за вполне себе бюджетные деньги. Или, может быть, для каких-то других целей, мне неведомых.

Что можно рассказать об этом экземпляре? Покупал я его когда-то с рук, за 50000р., на то время он мне достался практически по своей стоимости из Америки, откуда он родом. За всё время эксплуатации он меня ни разу не подвёл: все внутренности как работали, так и работают как часы. За «здоровьем» жёсткого диска я следил программой TechTool Pro, периодически в пики нагрузки у меня возникало желание докупить старичку памяти, но до этого так и не дошло.

Вот краткая информация о внутренностях старичка:

А вот текстом спеки: MacBookPro7,1, Intel Core 2 Duo 2,66 GHz, 4Gb 1067 MHz DDR3, NVIDIA GeForce 320M 256Mb, 320Gb HDD (Hitachi), SuperDrive на месте. На нём спокойно работает OS X 10.9 Mavericks, радует глаз всеми встроенными функциями. Возможно, вам захочется поменять в этой модели HDD на SSD — вперёд, будет машинка пошустрее работать. Максимальный объём памяти, который можно впихнуть в эту модель — 8Gb. Клавиатура, кстати, без гравировки, если будете готовы купить, и вам она будет нужна — сделаю за свой счёт, не проблема.

Что касается цены... Мне стало интересно, сколько сейчас берут за ноутбуки со схожей конфигурацией. Пошел в Яндекс.Маркет и заполнил фильтр, результатом которого стал какой-то из HP-шных ноутбуков, за какие-то 66570 рублей. Естественно, у меня ноутбук не новый, так что за свой я с радостью отдам за 20000 рублей (двадцать тысяч рублей). Зарядка к ноуту имеется, даже остался старый чехол к нему, при желании отдам забесплатно.

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

Вместо послесловия

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

LTE Apple edition

25 октября 2013, 14:36

Ночью начались официальные продажи iPhone 5C/S в России, и, как водится, чуда не произошло. Не, кто хотел купить себе новый айфончик — думаю, не обломались. Но вот кто ожидал, что с появлением официальных iPhone в России заработает и LTE — жестоко обломались.

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

Вот что писал по этому поводу наш министр связи:

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

Synergy — «маст хэв» для меня

23 октября 2013, 15:02

По долгу своей работы мне приходится работать за несколькими компьютерами одновременно, на них установлены разные операционные системы. И, понятное дело, довольно-таки быстро мне надоело перескакивать с одного компа на другой. RDP — это, конечно, хорошо, если бы не одно «но» — мне нужно видеть результат работы другого компьютера тут же, не перекрывая окнами на другом компе (монитор к другому компьютеру подключен).

В случае одного монитора, проблема решается либо удаленным подключением (RDP, VNC), либо подключением к компьютерам через KVM-свитч. Но когда монитор подключен к каждому из компьютеров, хотелось бы управлять ими одним комплектом клавиатуры с мышкой, и чтобы всё это работало максимально «прозрачно».

И такое решение есть, и имя ему, как можно догадаться из заголовка, Synergy. Программа бесплатна и по природе своей является кросс-платформенной, что позволяет управлять компьютерами на базе Windows, Linux, Mac OS X. Работает по клиент-серверной архитектуре по локальной сети, переключение происходит лёгким мановением «мышки» (забегая вперёд, скажу, что на сервере настраивается, с какой стороны к какому подключенному клиенту можно подключиться, расскажу подробнее дальше на скриншоте).

Установили? Запускаем установленное приложение и в несколько шагов настраиваем его. Во-первых, нас спросят, где запущено данное приложение — на главном компьютере («сервер», к которому подключены клавиатура с мышкой) или на дочернем («клиент», которым и будет происходить управление). Если настраивать сервер, то нужно задать настройки безопасности (использовать пароль для подключения, или нет) и расположение компьютеров, как минимум, остальное по вкусу.

Вот пример настройки серверного приложения на моём Mac mini:

В центре находится сам «миник», справа — компьютер на Windows, слева — периодически появляется ноутбук на Mac OS X. То, где что расположено, важно потому, что управление на другой компьютер будет передаваться при пересечении соответствующей границы экрана. То есть, пока я работаю с Mac mini, управление на нём. Чтобы передать управление на PC, мне нужно перетянуть курсор дальше правой границы экрана Mac mini. Если нужно управлять ноутбуком — тяну курсор дальше левой границы. Лучше всего понимается принцип работы с изображения на главной странице сайта данного проекта:

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

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

Важное дополнение тем, кто обновился до OS X 10.9 Mavericks! Как водится, после обновления многие любимые утилиты пользователей могли внезапно перестать работать, но произошло это только потому, что в новой системе немного построже стало с разрешениями другим приложениями доступа к ресурсам системы. В частности, нужно разрешить, как минимум, приложению Synergy «Универсальный доступ». Делается это в «Системных настройках», в «Защите и безопасности» (нужно выбрать в списке пункт «Универс. доступ», нажать на замочек внизу, ввести пароль учётной записи, затем включить в списке Synergy). В моём случае даже это не помогло, и пришлось запускать утилиту из терминала. Для этого в терминале нужно запустить следующее:

/Applications/Synergy.app/Contents/MacOS/Synergy &
disown /Applications/Synergy.app/Contents/MacOS/Synergy

Первая команда запускает Synergy по пути установки, параметр & позволяет пользоваться терминалом после запуска, вторая команда «отвязывает» процесс от терминала, после её выполнения можно с чистой душой закрывать терминал (если этого не сделать, то при закрытии терминала закроется и Synergy, так как терминал является, по сути, «родителем» этого процесса). После запуска придётся снова вернуться в «Защиту и безопасность» и аналогичным образом разрешить универсальный доступ приложению «Терминал». Доступ «Терминалу» нужно дать только один раз, в дальнейшем можно будет просто запускать команду для запуска приложения.

Переходы для людей

15 сентября 2013, 0:12

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

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

В качестве бонуса — фото, которое я сделал в одном из дворов моего любимого города.

С Днём программиста!

13 сентября 2013, 17:39

Сегодня 256-ой день в году, а это значит, что сегодня праздник — День программиста. О том, почему именно 256 день в году, я разжёвывать всё-таки не буду, скажу только наводящее слово «байт», а уже остальное человек знающий додумает и сам. =)

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

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

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

Ура! Слава байту!

Belkin YourType Keyboard + Stand

6 сентября 2013, 12:08

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

iPad прочно обосновался у многих, причём вне зависимости от рода занятий. А уж если не iPad, то другой какой-нибудь планшет по вкусу. Когда в 2010 году Джобс представил миру этого «мобильного помощника» миру, к нему отнеслись весьма и весьма критично. Но со временем многие поняли, что он прав: формат и возможности этого устройства с лёгкостью справляются с функцией помощи пользователю, какой бы она ни была: хранить список дел, работать в дороге с почтой, вести календарь, просматривать фотографии и видео, писать заметки для какой-нибудь статьи/поста, причём эти возможности уже «заложены» при покупке! А с тем разнообразием дополнительного софта, который доступен в App Store, планшет обретает новые возможности: читать книги, делать первичную обработку фотографий, получать доступ к различным порталам онлайн-услуг, работать с офисными документами, видеть онлайн-табло рейсов/поездов (и получать push-уведомления), да много чего ещё! Например, у меня на планшете есть программы, которые позволяют мне: вести своё генеалогическое древо (MobileFamilyTree), рисовать в векторе (TouchDraw), писать и читать код с подсветкой синтаксиса большого количества языков программирования и быстрым доступом к методам (Textastic).

Считаю, что набор текста — не самая последняя способность планшета, которой активно пользуются. И насколько бы ни была удобна экранная клавиатура, набирать текст на физической клавиатуре намного удобнее и привычнее. И на этом поприще у пользователя есть огромный выбор: можно купить любую Bluetooth-клавиатуру, а можно купить два в одном и получить чехол и клавиатуру в одном флаконе. У самой Apple был даже Keyboard Dock с «прямым» подключением клавиатуры к планшету. Герой этого поста — отдельная bluetooth-клавиатура с подставкой Belkin YourType + Stand.

На мой вкус, назвать её слишком уж мобильной нельзя, но взять как дополнительный аксессуар на рабочем месте — можно. Ну или бросить с собой в поездку, чтобы не брать ноутбук. Форм-фактор клавиатуры такой, что подойдёт для комфортного набора текста на любом планшете, что позволяет подключить к себе беспроводную клавиатуру, и ряд функциональных клавиш, присутствующих на ней — приятное дополнение, лишь добавляющее удобство пользования ею. Сказать по правде, пользоваться Apple Wireless Keyboard не так удобно — не всякий чехол позволяет поставить планшет в удобное положение, а Belkin'овская клавиатура имеет свою подставку, на которую я могу спокойно водрузить планшет, не снимая чехла. Плюс «стандартной» Apple-клавиатуре не хватает тех горячих клавиш, что есть у клавиатуры от Belkin. Особенно порадовали клавиши «Select All», «Select Right» и «Select Left», «Copy», «Cut», «Paste». Эти клавиши по сути заменяют клавиатурные комбинации: «Select All» — Cmd+A, «Select Left»/«Select Right» — Shift+стрелка вправо/влево, «Copy» — Cmd+C, «Cut» — Cmd+X, «Paste» — Cmd+V. Есть даже горячая клавиша с цветочком, которая запускает режим «Фоторамки», и находится она аккурат там, где у Apple Wireless Keyboard находится клавиша Fn, и это жутко раздражает. Уже много раз пытался нажать её вместе с клавишей Backspace, чтобы удалить текст справа от курсора, и запускался режим фото-слайдшоу. Также что логично, работают и все «стандартные» действия с быстрыми клавишами — так, например, одновременное нажатие кнопки блокировки с кнопкой Home на клавиатуре сделают скриншот, двойное нажатие Home вызовет панель переключения программ, тройное нажатие Home — запустит Гид-доступ, если он был включен в настройках. Вот кстати, по поводу расположения клавиши блокировки тоже хочу пожаловаться — находится она на месте, где в обычной клавиатуре клавиша «Esc», и когда на неё автоматом нажимаешь, чтобы «заглушить» какое-нибудь окно, или какое-нибудь действие, происходит совсем не то, чего ожидаешь. =)

Сразу скажу, что какая бы у вас ни была клавиатура, есть один недостаток: стрелки на клавиатуре работают только для перемещения курсора при наборе текста. То есть, если попытаетесь нажать «вниз», чтобы выбрать предложенное автодополнение в поиске Google — ничего не произойдёт. Равно как и нажатие на клавиши «вверх»/«вниз» в приложении Mail.app не приведёт к выбору следующего/предыдущего письма. Набирав твит, у вас не получится отправить его, просто нажав Cmd+Enter, как вы бы сделали в «настольной» версии, также не сможете отправить набранное в iMessage сообщение. Увы, это проблема всех клавиатур.

Итак, плюсы:

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

Минусы тоже есть:

  • материал — пластик, причём среднего качества;
  • некоторые быстрые клавиши имеют неудобное расположение;
  • назвать клавиатуру компактной не получится — по размерам она практически сходна с самим iPad'ом.

Клавиатура была куплена по совместной акции магазина iVenue и Appleinsider.ru за 600 рублей (акция была в их обзоре).

Спасибо за внимание!

Данные в облаках, или как выжить параноику.

4 сентября 2013, 10:47

Вообще говоря, заголовок родился под впечатлением от постоянных расспросов, безопасно ли хранить файлы в популярных нынче «облачных хранилищах» (коих немало: Dropbox, Apple iCloud, SkyDrive, Box.net и так далее). На этот вопрос у меня по сути один ответ: хранить сколько-бы то ни было секретные данные в Интернете — затея более, чем авантюрная. Каким бы супер-пупер надёжным образом ни хранились бы данные в том или ином ресурсе, всегда будет пара узких мест:

1) есть вероятность того, что ваши файлы доступны администраторам ресурса;
2) если допустите утечку пароля к своему аккаунту — к файлам получит доступ посторонний человек.

Лично я никому не советую хранить в Dropbox какую-либо конфиденциальную иформацию, однако, если всё же хочется воспользоваться удобствами «облака», нужно обезопасить самого себя. Например, шифровать необходимые файлы с конфиденциальной информацией. Как вы будете это делать — целиком и полностью ваш выбор, можете хоть свой алгоритм шифрования придумать. =)

Однако, в своей статье хочу обратить внимание на стороннюю разработку, которая занималась бы шифрованием и расшифрованием файлов «на лету», но при этом чтобы в Dropbox хранились именно зашифрованные файлы. Речь пойдёт о сервисе Viivo.

Принцип работы программы не идеален, но уж лучше так, чем никак. После установки программа предложит зарегистрироваться в своём сервисе, и предложит соединиться с каким-нибудь «облачным» сервисом (в бесплатной версии доступен только Dropbox). После всех действий, на компьютере создастся папка Viivo, и также создастся папка Viivo в Dropbox. Суть пользования проста: вы помещаете в локальную папку Viivo файл, который нужно зашифровать, и после программа поместит зашифрованный файл в папку Dropbox. Как видите, без минусов не обошлось: приходится хранить запущенным процесс Viivo и Dropbox на компьютере, плюс на компьютере хранится теперь две копии одного и того же файла: нешифрованная и зашифрованная (но уверен, прогресс не будет стоять на месте, и вскоре мы получем от этого сервиса возможность сразу помещать файл в папку и проводить шифрование и расшифрование «на лету». О том, что у параноика диск компьютера должен быть зашифрован я и вовсе молчу. =)

Хочу обратить внимание, что Viivo — не единственный сервис подобного рода. Есть ещё, например, Boxcryptor. Более того, есть и другие «облака», которые в своём арсенале имеют возможность шифрования файлов на стороне клиента перед отправкой себе: Wuala, SpiderOak, Tresorit а также известный Mega. У каждого свои методы хранения файлов на своих серверах и свой набор предоставляемых услуг (например, у Mega нет никаких клиентов, всё делается только посредством браузера), свои методы шифрования (не буду заострять на этом внимание, предлагаю самим изучить и сделать свой осознанный выбор).

Удачи вам, и пусть ваша конфиденциальная информация всегда будет только при вас!

О важности исправлять свои ошибки. Быстро!

6 августа 2013, 17:06

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

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

Я могу рассмотреть только банальный пример, с которым пришлось столкнуться недавно, но тем не менее, на который не всегда обращает внимание «новая кровь» в профессии. Представьте себе компанию, у которой, допустим, есть интернет-магазин. Раз у компании есть этот самый интернет-магазин, то есть и база данных, в которой заказы из этого интернет-магазина хранятся, правильно? Можем даже представить совсем плохие условия для данной ситуации: репликации базы нет (ну а что, многие даже слова-то такого не знают!), хорошо хоть бэкапы делаются точно в срок и по расписанию. Ситуацию даже можно облагородить специалистом, который хранит у себя на рабочем компьютере тестовую базу с идентичной структурой для своих экспериментов (тоже ведь не всем может прийти в голову такая идея). И для своих экспериментов вдруг решит очистить какую-нибудь таблицу. Или сделать update без ограничений. Или что-то в структуре поменять. Если это сделано на тестовой базе, на самом деле, никаких проблем нет. Но если он что-то напутал и по ошибке допустил свою ошибку на той самой, рабочей базе? Вот тогда-то все навыки специалиста и можно узреть. Тут, как говорится, «пан или пропал» — можно благополучно не заметить ошибку сразу, а потом, когда станет известно, что каких-то заказов в базе нет, что информация недостоверна, что по «непонятным причинам» система не хочет работать. И тут можно узреть первый полезный навык специалиста — умение быстро увидеть свою ошибку. Подчёркиваю — не просто увидеть свою ошибку, а быстро увидеть свою ошибку! Ошибаться человеку свойственно, особенно новичку, но гораздо более важно быстро свои же ошибки идентифицировать. День выдался сложный, засыпаешь, нажал «Empty table» и по привычке посмотрев на строку подключения увидел, что подключение было к рабочей базе. Тестируешь запрос и опять же, в силу каких-нибудь причин (например, чтобы быстро поправить какие-то данные в заказе), но краем глаза, например, замечаешь, что запрос на самую малость, на мизерную долю, но выполнился дольше. Смотришь — а ограничения поставить забыл, и изменились данные во всех полях таблицы! Ну, принцип вы поняли, уверен.

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

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

Ну и начинаем свои действия по исправлению ошибки! Например, мы предупредили, что есть небольшая проблема с базой данных, из-за ошибки были потеряны данные в таблице, и сейчас база недоступна для восстановления из бэкапа. Другой умелец (а может даже и тот же), разместит на сайте объявление о технических работах, открыл почту, на которую скапливаются отчёты о поступивших заказах, чтобы можно было вручную начать восстанавливать заказы в таблице (которых будет не так уж и много, ведь большая компания, с большим количеством заказов в сутки, уверен, озаботится всеми нужными мерами для приближения к максимальной бесперебойности работы). Или же предупредили, что на значения в поле таком-то у заказов сейчас не стоит обращать внимания, поправим. Восстанавливаем бэкап на тестовый сервер, и подготовим данные для изменения. Как? Ну, вроде select'ы написать проблемы быть не должно, правда? А что мешает сделать запрос, результатом которого будут update'ы с необходимыми данными? Ну, к примеру, по ситуации с ошибочным запросом на изменение без ограничений. Допустим, имеем простую табличку orders с полями id, title, status_id, ext_info, и ошибочным своим запросом мы поставили всем-всем заказам status_id=1 (всего-то нужно написать update orders set status_id=1). Бэкап мы развернули, самое время сделать следующее:

select
concat('update orders set status_id=',`status_id`,' where id=',`id`,';') as sql_text
from orders;

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

  1. Нужно быть внимательным, чтобы успеть максимально быстро заметить свою же ошибку.
  2. Необходимо взять себя в руки и думать не о том, что «мне конец», или «вот же ж, я грохнул таблицу», а о том, как свою ошибку исправить.
  3. После того, как план какой-никакой есть, начинаем его выполнять и обеспечиваем информацией всех остальных, кто тоже имеет дело с этой базой (телефон, IM, рассылка по email, в настоящее время способов корпоративного взаимодействия не счесть).
  4. Решаем проблему, возможно даже, вручную.
  5. ...
  6. Profit!

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

P. S. Кстати, шаблончик-то не только на свои ошибки подойдёт, но и вообще на любую «аварийную» ситуацию, возникающую в компании.

Ctrl + ↓ Ранее