Итак, в нашу жизнь вошли планшеты. Когда они появились, рахитично слабые и подслеповатые, то для меня они как-бы не существовали. Но я уже во всю напрягал свой телефон HTC Diamond с 2,8” монитором: навигация, как внешний носитель данных (типа флэшки с монитором), плэйер для фильмов и даже RDP-client. И все работало. Пользоваться было мучительно, но вдохновляла сама мысль о возможностях.
При первой же возможности приобрел HTC Desire S. С этим телефоном все встало на свои места: что-то (например навигация, фотоаппарат и, не надо смеяться, фонарик) стали неотьемлемой и полноценной функцией.
Остальное отвалилось либо само, либо запретом самому себе. Например, под такой запрет у меня попал RDP-client: вероятность ошибочного клика на небольшом экране достаточно высока, а последствия такой ошибки могут быть слишком неприятными. Скажем, вместо отключения от сервера (logoff) можно отправить его выключаться (shutdown).
Наконец настал день, когда я проявил интерес к iPad: чудесная графика и великолепное разрешение дисплея, небольшой размер (8” для iPad-mini) и невероятно живучая батарейка (до 14 часов непрерывной работы) ! Мечта.
Приобрел. И попал в параллельную реальность – в iOs все не так. Вернее, все так для моей жены или, скажем, сержанта в армии: при всем желании повредить устройство или работу приложений почти невозможно, при любом затруднении надо лишь нажать круглую кнопку и попасть в начальный экран.
Что хорошо сержанту армии США, то для меня – крах. Потрачено немало времени на поиск решений, есть некоторые результаты.
(Идеи про хак операционной системы были отметены по личным соображениям).
Вернулся в нашу реальность и стал смотреть в сторону андроида: хитом был асусовский Nexus 7, его и приобрел. Не понравилось, что он толще айпада, зато 32Gb памяти против 16-ти айпадовских. Экран и меньше на дюйм, и соотношение сторон не нравится, но есть поддержка 3G. По продолжительности работы – 7 часов максимум, но совсем не факт, что именно 7.
Зато привычно-общая файловая система.
Но засада обнаружилась и здесь. Мелкая и противная.
Во первых, по интерфейсам (microSD, HDMI). Вернее, по их отсутствию. Оправдал пылевлагозащищенностью.
Во вторых, когда для подключения внешней флэшки (через OTG кабель) потребовались платные программы, то моё понимание закончилось.
В третьих, нужные мне программы либо отсутствуют, либо написаны так, что руки чешутся самому все переписать.
Полгода назад мой любимый HTC Desire S начал подводить. После многочисленных падений начала пропадать зона приема. (С этим разобрался и устранил сам, подогнув контакты антенны). Затем, после апдейта, краски дисплея стали о-о-о-чень насыщенными, но стали добивать мозг постоянные pop-up вопросы про навигацию. Никакие меры не помогали, а причина оказалась… в тайваньских инженерах. (Далее надо рассказывать с интонацией Задорнова). Они решили, что если смартфон подключается к автомобильной зарядке, значит автоматически должна загружаться гугль-навигация. Значит, надо пообщаться с водителем про его маршрут, про апдейты и пр. А как телефону отличить зарядку автомобильную от домашней? И решили тогда тайваньские инженеры идентифицировать автомобильную зарядку тем, что на некие контакты повесили резистор 4,7кОм. Телефон проверяет – есть резистор, значит подключена зарядка автомобильная, значит пора общаться. А если нет – значит нет. Логично? Вроде бы да. Но гладко было на бумаге, а по жизни обнаружились овраги. За пару лет в разьеме накопилась грязь, которая имитировала очень частым и случайным образом этот самый резистор... Отключить это не удалось и жизнь стала невыносимой. Собственно этот момент и стал решающим для моего отказа от брэнда HTC.
Я уже давно присматривался к линейке телефонов Samsung Galaxy, а когда увидел в рекламном ролике возможности стайлуса S-pen, то очень заинтересовался смартфоном Samsung Galaxy Note 3.
Сейчас уже месяц, как я владею этим смартфоном и жизнь реально изменилась. Теперь компьютер открываю только для тех задач, которые без него не решить. Мониторинг и масса мелочей теперь делается со смартфона.
У этих девайсов для этого есть два важнейших свойства – они постоянно готовы к работе (включены) и они постоянно с собой.
В мою жизнь вошли планшеты. Что-то внеся новое, кое-что отодвинув на второй, а то и на десятый план.
Чем планшеты взяли меня:
- малыми размерами;
- постоянным он-лайном;
- длинной батарейкой.
Что не нравится в планшетах:
- малый размер дисплея;
- урезанный софт;
- реклама в бесплатных приложениях.
Чего лишили меня планшеты:
- гораздо меньше времени стал проводить за компьютером.
Следствия:
- стал гораздо меньше активен в соцсетях;
- стал гораздо чаще играть в шахматы он-лайн;
- потратил много времени на адаптацию.

... изменить размер диска :
Под Mac-ом:
zanis$ /Applications/VirtualBox.app/Contents/MacOS/VBoxManage modifyhd /Volumes/KINGSTON/Win7\(64\)/Win7\(64\).vdi --resize 80000
... перемещать VDI-файлы
публикации о том, как перемещать виртуальные диски вокруг, имеют тенденцию фокусироваться на изменении файла VirtualBox.xml:
1. Когда VM в состоянии выключения питания, скопируйте файл VDI из точки A в точку B.
2. В Virtual Media Manager (File | Virtual Media Manager) или F12 - удалите перемещаемый файл
3. С помощью выбранной виртуальной машины, выбранной в диспетчере VBox, щелкните значок «Настройки" (шестеренка) вверху.
4. Найдите опцию хранения (4-й вниз) слева и щелкните по ней. В дереве хранения в центре вы увидите контроллер IDE, щелкните его.
[284x177]
Когда в кармане только трешка, то для тебя такие величины, как миллион, миллиард или, к примеру, миллиард миллионов, не очень-то различаются и описываются двумя словами: много и никогда (не будет).
Схожая ситуация была и с оценкой обьема памяти на жестких дисках.
Начинал с дисков обьемом в 10 Мб, 200 Мб - было круто, 1 Гб - очень был нужен, когда работал в банке, чтобы многочисленные базы данных свести в одну.
Прошло неполных 20 лет, суммарная емкость моих дисков для домашних нужд составляет около 5 Тб.
А осознание того, что достиг линии горизонта пришло вчера, когда безуспешно попытался установить Windows 7 на железо с 6-ю дисками по 2 Тб.
То, что когда-то было за горизонтом, стало очередным рабочим ограничением.

<td valign=top><select onchange="location.href='scripts/chvar.asp?page=default.asp&name1=SupplierID&val1='+value"><option value="0">ВСЕ ПОСТАВЩИКИ</option><%var flExists=0;while(!rs.eof){%><option value="<%=rs("SupplierID")%>"<%if(parseInt(rs("SupplierID"))==parseInt(Session("SupplierID"))){ flExists=1;%> selected<%}%>><%=String(rs("SupplierName"))%></option><% rs.MoveNext();}if((flExists==0)&&(Session("SupplierID")!=0)){Session("SupplierID")=0;%><SCRIPT LANGUAGE="JavaScript">document.location="scripts/chvar.asp?page=default.asp&name1=SupplierID&val1=0";</SCRIPT><% }%></select></td>
Я не программист, у меня нет компьютерного образования.
С другой стороны, вся моя жизнь связана с техникой связи и компьютерами.
К языкам программирования у меня отношение... хорошее.
Достаточно хорошее, чтобы при необходимости поправить чужой код либо сделать пару-тройку своих проектов.
Меня всегда умиляли разговоры на форумах о том, что некто уже n-лет как пишет на С++ и он-де ничего не понимает в, например, С# или Java. Умиляли в том смысле, что его "непонимание" гораздо более содержательно, нежели все мои представления о предмете.
В последние дни на меня свалились две микроскопические задачки, которые уже решены, но решение хочу законспектировать здесь.
Итак, на производстве сдали в работу пульт оператора. На экране - порядка 200 параметров. Некоторые критические, поэтому ко мне обратился инженер по автоматике и попросил попробовать выделить цветом критические зоны.
Так как информация передается на пульт как обычная веб-страница, то я сложностей не предвидел и взялся за работу.
Весь проект сделан в IDE iX developer 2.0 от Beijer Electronics
Веб-сервер интегрирован в среду разработки и не документирован.
Код страницы содержит ссылку на SDK/API, написанные на javascript с использованием jQuery и JSON.
Первое ощущение засады появилось после того, когда обратил внимание, как данные получают с сервера и отображают на странице.
Созданы некие собственные атрибуты, которые официально должны отрабатывать с html-тегом SPAN. Далее, по вызову API формируется ajax-запрос к серверу, а полученные данные возвращаются через DOM.
Другими словами, любые параметры я могу лишь вызвать и отобразить на странице, но не получить как переменную для javascript для использования в коде страницы.
Мысль первая (правильная) - найти описание API. Описание разыскал. но нужного мне фукционала не нашел.
Мысль вторая - посмотреть и доработать код API "по образу и подобию". После небольшого углубления в тему понял, что этот путь не столь короткий, да и не вполне разумный - после заводского апдейта проекта мой код будет утерян.
Тогда остался единственный путь - запрашивать значение переменной непосредственно из кода страницы, но тем же способом, как это делает API.
Имя переменной в проекте, которая мне нужна - известна.
Метод скопировал из API. Как формируется тело запроса посмотрел через инспектор Firefox-a.
code:
.ajax({
url:'/tagbatch',
type:"POST",
data:'тело запроса',
contentType:"application/json",
dataType:"json",
cache: false,
success: function(data){что-то делаю с полученными данными});
Дополнено:
Посмотрел немного на инспекторы броузеров - для Firekox сейчас актуальна версия FireDebug ver.1.12. Если бы вовремя обновил установленную версию - спал бы на одну ночь больше :)
Нашел в записях...
В старом престижном доме предстояло оборудовать офис. Работал по плану: сначала пожелания заказчика и уточняючие вопросы про телефонные линии, про факс, про сетевые принтеры, про беспроводную сеть. Затем разметка на плане мест для розеток и трассы для прокладки кабелей. Разметка отверстий. Расписал, через какое отверстие сколько кабелей будет проложено. Стал прикидывать диаметры отверстий и задался вопросом: а можно ли этот диаметр расчитать, ведь количество кабелей, и их диаметр известен? Так я познакомился с одной из увлекательнейших головоломок.
Сначала казалось,что все просто, достаточно расположить кабели шестигранником.
А если кабелей много? Наверное, n*6-гранником.
Если говорить о сечении, то такой многоугольник может состоять лишь из определенного ряда количества этементов (кабелей). А как быть , если кабелей не 7 и не 13, а, например, 10?
Можно, конечно, взять ближайшее большее значение из ряда.
Но... Представил, что в руке держу карандаши. Немного "похрустел" ими, они улеглись в руке. А если один карандаш убрать и опять ими "похрустеть", можно почуствовать, что обьем уменьшился. Значит, есть некое другое, более оптимальное расположение, нежели шестигранником.
Количество вопросов для простой задачи росло.
Может быть, надо поменять способ рассуждений?
Попробую через площади: площадь отверстия должна быть не меньше суммы площадей сечения кабелей
S>n*s
S=pi*R^2
R=(S/pi)^0.5>((n*s)/pi)^0.5>((n*pi*r^2)/pi)^0.5>r*(n^0.5)
R/r>n^0.5
Вроде бы так, но остается неудовлетворенность от знания того, что заполнение не идеально, что между кабелями есть пустоты и соотношение их не учитывает.
Свои идеи закончились, а что говорят математики?
Тут стало совсем интересно. Оказывается, что в математике такие задачи называют "задачами о плотной упаковке" и считают очень неприятными(1)
Оказывается, что сформулирована задача еще до появления знаменитой теоремы Ферма, но в чистом виде не разрешена по сегодняшний день.
Кроме того, меня заинтересовало, как в расчетах можно учитывать нахлесты, ведь в жизни идеальная укладка скорее исключение из правила.
Ссылки по теме:
1. http://www.ega-math.narod.ru/Nquant/Spheres.htm
2. http://mathworld.wolfram.com/CirclePacking.html

После апгрейда остались 3,5” SATA-диски и тут же появилась идея сделать iSCSI массив для одного из филиалов. Прикинули бюджет и посмотрели предложения. Единственное решение, которое подошло - Infortrend EonNAS PRO 800-MC (8Bay NAS Storage, 2 x GbE, Intel Atom 525 Duo-Core, 4GB, de-deplication, thin-provisioning, compression, snapshot, remote replication, ZFS, virus protection, File support CIFS/SMB, AFP, NFS, iSCSI, Vmware, Citrix Ready, Wake on LAN, NDMP, USB Copy ENP800MC-8730)

Но смутил процессор, не создаст ли тормоза? Да и хотелось бы не в tower, а в 19" rack-mount корпусе.
Появилась следующая банальная идея: сделать массив самим. Посмотрели предложения по б/у серверам и как компромиссный вариант выбрали Dell PowerEdge 2950 II 2U 2xXEON QC E5310 (1.60GHZ)/4GB/6 x 3.5” SAS/SATA hdd /DVD/2xPSU
Не очень понравилось, что только 6 мест для дисков, но приемлемая цена, два блока питания и заведомо достаточная мощность сервера убедили остановиться на этом варианте. Очень сильный аргумент „за” – наличие RAC-консоли (аналог iLO у HP). Первым делом научился пользоваться ею, заодно обновил версию firmware. После обновления стало возможно не только удаленно включать/выключать, но и получить доступ к рабочей консоли.
С софтом затруднений не возникло, прекрасные отзывы сотрудников IBM убедили прежде всего пробовать open source проект OpenFiler.
Систему решил ставить на флешку, тем более, что друг обратил внимание на необычно высокую скорость записи чтения в режиме USB2 у флэшек KINGSTON USB 3.0 DataTraveler R30 (25Mb/s – write, 30Mb/s – read)

С установкой софта проблем не возникло. Единственный нюанс – надо флешку четко прописывать в биосе, т.к. сервер в своей конфигурации запоминает конкретный экземпляр загрузочной флэшки. Это значит, что если в биосе один раз выставили загрузку с флэшки, то сервер не будет загружаться с любой
Отлично оформлен наглядный материал "How to connect an ESXi host to an iSCSI storage target"
Не так, чтобы новость большая, но эта та тема, с которой работаешь раз в пять лет и в нужный момент можно просто открыть букварь: а не тратить время на поиски прописывания конфигурации...
http://www.techrepublic.com/pictures/how-to-connec...-to-an-iscsi-storage-target/1/
После поднятия бэкапа на другом MS SQL сервере при попытке поправить maping пользователю возникает вышеуказанная ошибка.
Решается просто, в MS SQL Server Management Studio выполняю два запроса:
use <имя поднятой из бэкапа базы>
alter user <имя пользователя> with login = <имя пользователя>
Взято здесь: http://www.sqlserver-training.com/user-already-exists-in-current-database-sql-server-error-15023/
Обратились диспетчеры:
- Почему в формуляре (вордовский документ), который они заполняют, некоторые строки отображаются "справа-налево" ?
Проверил, не врут.
Понятно, в тексте есть управляющие коды. Какие?
Дело осложняется тем, что документ защищен паролем от редактирования (можно только заполнять поля формы).
Пришлось взломать пароль,
Затем нашел и при помощи HEX-редактора определил управляющий код.
Осталось лишь исправить около трехсот документов...
Сразу подумалось о пакетной обработке.
В итоге был написан такой VBA-скрипт:
Sub DocCorrection()
Set WordObj = CreateObject("Word.Application")
strPassword = "1234567890"
MyPath = "C:\Users\SuperAdmin\Desktop\BDL\"
iFileName = Dir(MyPath)
Do While iFileName <> ""
Set WordDoc = WordObj.Documents.Open(MyPath + iFileName)
WordObj.Visible = False
; снимаю защиту файла
If WordDoc.ProtectionType <> wdNoProtection Then
WordDoc.Unprotect Password:=strPassword
End If
; убираю управляющий код "right to Left override"
WordDoc.Content.Find.Execute _
FindText:=ChrW(&H202E), ReplaceWith:="", Replace:=wdReplaceAll
; восстанавливаю защиту файла
If WordDoc.ProtectionType = wdNoProtection Then
WordDoc.Protect _
Type:=wdAllowOnlyFormFields, NoReset:=True, Password:=strPassword
End If
; сохраняю изменения
WordObj.Documents(iFileName).SaveAs FileFormat:=wdFormatDocumentDefault
WordObj.Documents(iFileName).Close SaveChanges:=True
iFileName = Dir
Loop
WordObj.Quit
Set WordDoc = Nothing
Set WordObj = Nothing
End Sub
На исправление потребовалось менее минуты. На написание и отладку скрипта - несколько часов.
Так уж получается, что проблема, решение которой искал 3 месяца, сейчас кажется абсолютно банальной и очевидной.
Сначала про задачу: один и тот же алгоритм в программах Ms Excel и MS SQL Server порой давал разный результат. Отличие не превышало единицу последнего знака за запятой
(Вспомнил, как подобное, но только в биологии, описывал Ганс Селье в книге "От мечты к открытию")
Оказалось, что для переменной, которая содержала результат вычисления, не хватало разрядности: при конечном результате с округлением до трех знаков за запятой исходных пяти знаков за запятой не хватало.
Исправил обьявление (дефиницию) переменной и на этом проблема была закрыта:
...
-- изменено 2013-07-04 16:45
-- declare @Vu decimal(8,5) <-- так было
declare @Vu decimal(10,8) -- так сейчас
...
Найти решение помогли простые рассуждения:
Есть ли место для интуиции в технике?
Наверное.
Когда-то предчувствовал удаленное управление и стал применять. По телефонным линиям, через модемы. Чтобы пробиться через линии с ужасным качеством. пришлось стать специалистом по модемам и их настройкам.
Коллеги смеялись, сейчас же удаленное управление - это норма.
Потом - многозадачность операционных систем: на дворе боролись MS-DOS с NovellDos, a я вынимал душу из айтишников, желая параллельно запускать задачи.
QuartDesk, потом OS/2.
OS/2 впечатлила, но еще не то.
Наконец Windows-3, глючный, ненадежный. Но это было то, что надо!
Версия 3.11, которая работала значительно стабильнее, стала основой в работе на долгое время.
Почти тогда же интуиция подсказала: интернет!
Не X.25 и прочие СПД (системы передачи данных), а интернет.
Тогда интернет - это FTP, Gopher, почта по UUCP.
Интернет стал модным среди технарей.
Я коллегам говорю: интернет должен стать похожим на Windows: таким же наглядным и простым для использования.
В ответ непонимание, но вскоре, практически спустя неделю-две, мы услышали про веб.
Базы данных.
Novell: его сети и сервера. Мило, но фанатом не стал.
Зато манил, подобно черной дыре, Linux.
В практику вошла виртуализация...
Некоторое время назад стал обладателем Макбука. Сила, мощь, надежность.
Попробовал Android. Для мобильного телефона - отлично, Как операционная система - пока это кошмар.
Жене подарил ipad-mini.
iOS взбесила, отсутствие Adobe Flash-технологии раздражает. Но восхитили качество, надежность, продуманность.
Опять предчувствие шепнуло: "Да, это что-то стоящее !"
Продолжил осваивать iOS уже на собственном экземпляре ipad-mini.
Не все задачи решаемы, но пришло понимание - как и почему. То, что для многих было в iPad-е, возможно, очевидно, для меня стало озарением.
Текст был удален с сайта Gazeta.LV и поэтому я его публикую здесь.
Сначала приведу ссылку на английйский оригинал статьи и его FAQ
Нетехнарей хочу предупредить, что технические детали и термины можно смело пропускать при прочтении, в данной истории дело не в них. Итак, сама история:
Я хочу рассказать историю службы техподдержки, которая может показаться невероятной далеким от этой работы людям. Но мне хочется изложить ее широкой аудитории – хотя бы потому, что это прекрасная рассказка под выпивку в коллективе коллег. Кое-что слегка приукрашено, но это – для красоты рассказа, все важные детали сохранены.
Несколько лет назад я работал в службе технической поддержки электронной почты университетского кампуса. Мне позвонил заведующий кафедрой статистики.
«У нас проблема с отправкой почты с кафедры»
Я:
«В чем проблема?»
«Мы не можем послать электронную почту больше чем на 500 миль»
Я роняю чашку с кофе. «Повторите, пожалуйста?»
«Мы не можем отправить письмо адресатам, находящимся далее 500 миль отсюда», повторяет завкафедрой. «Точнее, 520. Но не дальше».
Я пытаюсь собраться с мыслями. Крыша начинает медленно меня покидать, но нельзя позволить крыше уйти в разговоре с завкафедрой. Даже завкафедрой статистики. «Хммм... Понимаете, принцип доставки электронной почты не зависит от расстояния. Почему Вы думаете, что не можете отправлять почту далее 500 миль?»
«Я не думаю, я знаю» – довольно жестким тоном заявляет завкафедрой.
«Когда мы впервые это заметили, несколько дней назад...»
«Вы ждали несколько ДНЕЙ?» – перебиваю я уже слегка дрожащим голосом – «и вы обходились без почты?»
«Нет. Мы могли отправлять письма, но...».
«Но не далее 500 миль, сэр? Но почему же Вы не позвонили раньше?»
«Ну, у нас не было достаточного количества данных до сегодняшнего дня».
Ну да. Кафедра статистики, как-никак. О Господи...
«Ну, так или иначе – я попросил наших геостатистиков разобраться...»
Так. Геостатистики.
«...и у них получилась карта, показывающая расстояние, на которое мы можем отсылать почту. Чуть больше 500 миль. На некоторые адреса, находящиеся ближе, мы тоже не можем отправить почту с первой попытки – но дальше 500 миль мы не можем отправить ничего вообще».
«Я понял, сэр». Крыша-таки решила меня
Давно уже идут разговоры про операционную систему Android.
На моем телефоне тоже стоит Android, на планшеты ее вовсю ставят.
Стали ставить и на медиаплэйеры (Ryan).
На днях, делая покупки в супермаркете, обзавелся вот таким польским изделием:
Главным образом повелся на двухсторонний пульт с qwerty-клавиатурой:
Спецификация тоже показалась приятной:
Что сделал:
1. Установил поддержку принтера
2. Установил файловый менеджер Total Commander и PlugIn-ы к нему
3. Установил AdobeReader
4. Установил VLC-плэйер
Теперь о том, что понравилось:
1. Поддержка работы с беспроводной клавиатурой и мышью.
2. Возможность раздавать WiFi (работать в качестве WiFi AcessPoint, HotSpot)
3. Возможность наводить порядок на внешних дисках, который подчас требует несколько часов, без участия рабочего компа
Теперь о том, что не понравилось:
1. Абсолютно нечеткая работа клавиатуры на пульте. Впрочем, беспроводная клавиатура тоже часто "троит"
2. Достаточно много сбоев
3. Локализация клавиатуры запорота производителем
Общие ощущения:
1. Мне с Android "душно", постоянно чего-то не хватает
2. Когда обновил прошивку, то система стала заметно устойчивее в работе.