Записки программиста, обо всем и ни о чем. Но, наверное, больше профессионального.

2012-09-28

Записки интернет-шопера

Прекрасный сборник опытных (на основе опыта) знаний о покупках всякого через Интернет. Цитирую (http://t-itanium.livejournal.com/27323.html)

Оплата

Как оплатить заказ в иностранном интернет-магазине
Как зарегистрироваться в PayPal привязать карту к своему эккаунту
Основы безопасности использования банковских карт в интернете
Внутренние курсы конвертации платёжных систем Visa и MasterCard
Карты каких банков предпочитают интернет-шоперы – результаты опросов 2008 года2010 года2011 года
Дополнительную информацию можно найти по тегу банковские карты

Доставка

Какие бывают варианты доставки
Как правильно указать домашний адрес
Где отследить путь посылки (!)
Полезные адреса и телефоны

Таможня

Как не попасть на таможню – в России c 1го июля 2010 года (как было до 30го июня 2010 года), в Беларуси с 1го июля 2010 года, (как было до 30го июня 2010 года), в Украине с 1го июня 2012 года, (как было до 31го мая 2012 года), в Молдавиив Израилев Германиив Австралии
Список магазинов, в которых с 1 июля 2010 года можно делать заказы стоимостью до €200 с доставкой UPS без оформления дополнительных документов
Инструкция по самостоятельному растаможиванию посылкок доставленных UPSDHL в Москве
Что может случиться, если попросить продавца занизить сумму инвойса
Инсайдерская информация о Варшавке, 37 (таможня и почта)

Возможные проблемы

Какие документы (раздва) нужны для розыска потерявшейся посылки
Алгоритм розыска посылок и получения компенсации с Почты России за задержку доставки посылок
Что делать, если при вскрытии посылки на почте обнаружится «недостача»

Разное

Что нужно знать (раздва – важно!) при заказе электроники
Образцы писем в саппорт магазинов на английском языке
Как получить скидку в интернет-магазине
Что такое европейский НДС, и в каких случаях его должны возвращать
Что делать, если магазин попросит Вас подтвердить свою личность
Где в Москве померять популярные марки одежды и обуви

Список интернет-магазинов

Можно ли доверять интернет-магазину?
Список магазинов с доставкой в Россию (Titanium First Lookчасть 0 (friends only), часть 1часть 2часть 3часть 4)

Кроме того, внимательно прочитайте все записи с тэгом как покупать.


Удачных покупок.

original post http://vasnake.blogspot.com/2012/09/blog-post_28.html

2012-09-27

Штрихи к портрету

Уже третий день читаю прекрасный журнал http://sasha-smilansky.livejournal.com/
Очень занимательно и развлекательно, рекомендую.

И, читая, наткнулся на нехарактерную запись. Нехарактерную для этого журнала, зато очень полезную. Почитайте, может научитесь чему-нибудь http://sasha-smilansky.livejournal.com/128666.html

original post http://vasnake.blogspot.com/2012/09/blog-post_27.html

2012-09-26

Lisp

Языку Lisp уж сто лет в обед, а он по прежнему привлекает внимание. Вот, к примеру, какие открытия может совершить человек, занимаясь программированием на Lisp

Lisp просветит вас как личность
Все женатые мужчины будут солидарными со Стивеном Леви (Steven Levy), когда он в своей книге "Хакеры: Герои компьютерной революции" (Hackers: Heroes of the Computer Revolution) приводит пример того, как мыслят хакеры. Мардж Сондерс должна была утром в выходной день вернуться в гараж и попросила своего мужа Боба о следующем: "Есть ли у тебя желание помочь мне отнести продукты?". На что тот ответил: "Нет".
Ошеломленная, она должна была сама тянуть на себе продукты. После того, как то же самое произошло несколько раз, она взорвалась, посылая мужу проклятия и требуя объяснить, почему он всегда отвечает на ее вопрос - "Нет". "Глупо спрашивать", - сказал он. "Конечно, я не хочу помогать тебе нести продукты. Вот, если бы ты спросила, могу ли я помочь тебе их перенести, то это было бы другое дело".
Когда я обычно программировал на моем любимом языке программирования, поддерживающим объектное ориентирование, мой ответ бы не отличался. К счастью для меня, я открыл Lisp. Это дало мне целостное представление о себе, космосе, а также научило меня, что есть лучшие ответы на вопрос, чем просто "да" или "нет".
С тех пор я узнал, что правильный ответ на вопрос Мардж Сондерс был бы: "Конечно, дорогая! Тебе нужно, чтобы я еще что-нибудь сделал для тебя?". Излишне говорить, что моя жена счастлива и в прошлом месяце мы отпраздновали наш седьмой год совместной семейной жизни.


В оригинале написано немного не так, но общий смысл не пострадал.

Короче, рекомендую если и не писать на Lisp, то хоть прочесть серию (лучше в оригинале, тем более, что переведена пока только половина)

перевод:

и еще чуть-чуть: http://vasnake.blogspot.com/2009/10/lisp.html

original post http://vasnake.blogspot.com/2012/09/lisp.html

2012-09-25

Translations

Если у вас есть Debian Wheezy и при его обновлении (apt-get update, aptitude update) происходит стопицот тыщ запросов *Translation-* файлов — этот пост для вас.

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

Благо, добрых людей хватает, все (ну, почти все) велосипеды уже сделаны и даже опубликованы. Итак, убрать из обновлений транслейшены:
nano /etc/apt/apt.conf.d/99translations
cat /etc/apt/apt.conf.d/99translations
Acquire::Languages "none";

rm -f /var/lib/apt/lists/*Translation*
Более подробно см.источник

Я аж поразился, насколько быстрее теперь проходит процесс обновления. Рекомендую.

И, кстати, репозиторий debian-multimedia.org теперь называется deb-multimedia.org. Если у кого настроено автоматическое обновление системы, можно и не заметить того, что некоторые пакеты перестали обновляться.

original post http://vasnake.blogspot.com/2012/09/translations.html

2012-09-24

Спасение утопающих

Пока одни пытаются замаскировать принципиально немаскируемый битторрент,

- Feature: don't use a consistent peer-id (to mitigate tracking)

другие работают над защитой свободы слова фундаментально

Freenet — одноранговая сеть, предназначенная для децентрализованного распределённого хранения данных без возможности их цензуры, созданная с целью предоставить пользователям электронную свободу слова путём обеспечения их строгой анонимности.
wikipedia.org/wiki/Freenet
wikipedia.org/wiki/Perfect_Dark


original post http://vasnake.blogspot.com/2012/09/blog-post_24.html

2012-09-21

Book

Ну надо же, оказывается, чтобы читать книги (ebook) с Amazon вовсе не обязательно иметь Kindle. Как я вчера обнаружил, можно почти на любой дивайс залить программу-читалку, после чего любая книга с Амазон, доступная в формате Киндлы, может быть прочтена на этом дивайсе.

Я программулину залил на iPad и на андроидный Булыжник. На айпадке все прекрасно читается, на Булыжнике смертельно тормозит.

Могу рекомендовать следующее: перед тем как отдавать деньги за книги, проверьте, как оно все работает и читается на парочке бесплатных книг, их достаточно на Амазоне.

С первого октября буду читать вот эту книгу



original post http://vasnake.blogspot.com/2012/09/book.html

2012-09-20

Тревога!

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

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

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


А мне вот интересно — поскольку организм представляет собой уравновешенную (обычно) динамическую систему, значит есть часть организма отвечающая за подавление (уравновешивание) тревоги. Это какая часть?

original post http://vasnake.blogspot.com/2012/09/blog-post_20.html

2012-09-19

GDAL/OGR Plugin for ArcGIS

Вот так, незаметно, у ArcGIS people появился инструмент обработки неограниченного количества форматов данных. Теперь любой толковый ГИС-инженер может в ArcMap (или скриптами) зацепить любой слой из любого источника. Ну, может и не из любого, но глядя на список поддерживаемых форматов, сложно сходу сказать, какой формат не поддерживается.

AmigoCloud's GDAL/OGR Plugin for ArcGIS
The GDAL/OGR Plugin adds read support to any of the vector formats supported by GDAL/OGR.
This project uses the GDAL CSharp Bindings and of course GDAL, so you will need to get binaries for those. If you don't want to go through the trouble of compiling GDAL from scratch, you should try the GDAL SDK binaries compiled by Tamas Szekeres which I used to write the initial version of this Plugin


Спасибо тебе, добрый человек.

original post http://vasnake.blogspot.com/2012/09/gdalogr-plugin-for-arcgis.html

2012-09-18

DoubleClick

Уже больше года у нас в конторе потихонечку развивается одна программулина на Silverlight. И вот, внезапно и вдруг, боссу захотелось выбирать элементы из списка даблкликом. Весь год он смотрел на стопицоттыщ списков и не обламывался нажимать кнопки «ОК». А тут вдруг моча в голову ударила захотел даблкликать.

Да и ладно бы, ерунда какая, если не думать о том, что теперь надо бы все списки оснастить такой опцией. Но не все так просто. Беспощадный Microsoft не захотел делать событие doubleclick для контрола ListBox в Silverlight. Не знаю и знать не хочу как дело обстоит с другими контролами, а вот ListBox не ловит событие doubleclick. Надо делать свой велосипед, первая мысль — присобачить таймер.

Не надо таймер, все гораздо проще. Смотрите
MouseLeftButtonUp += new MouseButtonEventHandler(onMLBUp);
...
private void onMLBUp(object sender, MouseButtonEventArgs e) {
    DateTime n = DateTime.Now;
    var delta = (n - lastMLBClick).TotalMilliseconds;
    lastMLBClick = n;

    if(delta < 500.0) {
        onOKButtonClick(sender, null);
    }
}
По каждому клику мы проверяем, как давно был предыдущий клик. И если не очень давно — делаем вид, что мы поймали doubleclick.

Я проблему вижу только одну, интервал даблклика не регулируется через системные настройки. По уму надо бы похерить убогий Сильверлайт считывать интервал из реестра системных настроек.

2012-09-17

Query Related Records

Если кого интересует тема related records в ArcGIS Silverlight API, пожалуйста, берите и пользуйтесь: плагин к ArcGIS Viewer for Silverlight, находит и показывает объекты связанные с выбранным.

Написано на C#, по сути исправленная и дополненная версия оригинального плагина.

Пакет находится на моем складе равно как и на этой страничке. Оригинальная версия была опубликована тут и тут.

В процессе написания я нарыл полезную статью про анонимные методы (делегаты) в C#. А еще теперь там (в C#) есть подобие лямбды.

2012-09-16

Как сделать автоматический репост из blogspot в livejournal

Вот я пописываю на площадке blogspot и вдруг, внезапно, захотелось мне, чтобы мои посты появлялись и в LJ. Как это сделать?

lexislounge.net/2007/09/publish-your-blogger-blog-to

В настройках учетки ЖЖ, во вкладке Mobile надо указать электропочту отправителя, то есть ту электропочту, что используется в блогспот. Придумать и вписать PIN. После чего взять адрес вида ljusername+PIN@post.livejournal.com и вписать его в настройках учетки блогспота, там где про отправку записей на адреса электропочты.

И вроде как на этом все. Весь креатив засылаемый в блогспот будет по почте уходить в жж. Щаз проверим.

Проверил, пост в жж не появился. На странице http://www.livejournal.com/tools/recent_emailposts.bml
мне показали, что пост пришел с адреса no-reply@blogger.com
Его тоже придется внести в настройки допустимых присылателей текста.

2012-09-14

Погоняло


    А вон у того погоняло «Конюхов».
    А почему?
    Долго объяснять, но за водкой его лучше не посылать.

На днях столкнулся с чудесным.

Сижу, делаю очередную кнопку для ArcGIS Viewer for Silverlight, никого не трогаю. И вдруг, внезапно и без обьявления войны, отладка показывает, что в атрибутивной таблице рабочего слоя у выбранной записи нет ключа (ID)! В смысле, ключевое поле есть, стандартное для ArcGIS поле OBJECTID, а вот значения в нем нету. И ладно бы, если бы это был самопальный «левый» слой — нет, это вполне себе общедоступный, можно сказать эталонный слой с серверов ESRI (http://sampleserver3.arcgisonline.com/ArcGIS/rest/services/Petroleum/KSPetro/MapServer/1).

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

Поскольку расстрелять владельцев таблицы у меня бы не получилось, я занялся следствием. Ибо мало ли, что показывает отладка, может сама таблица в порядке? И точно, в таблице все на месте, есть только маленькая неувязочка — ключевое поле, традиционно названное OBJECTID имеет нетрадиционный алиас «Object ID». Да, с пробелом. Какая фигня, скажете вы. И будете 100% правы. Кому какое дело, какой у поля алиас? Все равно эти алиасы используются только для подписей. И вот тут мы подходим к развязке сюжета.

В программе использовался код (написанный инженером ESRI, между прочим) наподобие такого

objectIDFieldName = selectedFeatureLayer.LayerInfo.ObjectIdField;
keyValue = selectedObj.Attributes[objectIDFieldName];

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

Короче, теперь код получения ID у выбранного обьекта выглядит приблизительно так
string objectIDFieldName = selectedFeatureLayer.LayerInfo.ObjectIdField;
string objectIDAlias = "";
var fields = selectedFeatureLayer.LayerInfo.Fields;
foreach(var f in fields) {
 if(f.Name == objectIDFieldName) {
  objectIDAlias = f.Alias;
  break;
 }
}
if(objectIDAlias != "") objectIDFieldName = objectIDAlias;
keyValue = selectedObj.Attributes[objectIDFieldName];

И вот в таком виде оно работает. Ужоснах.

Не забыть переделать все взад, когда ESRI исправит багу. Хотя, с их скоростями, к тому времени я точно забуду.

2012-09-13

Системная борьба с пробками

Позволю себе немного потоптаться по тексту

В моем понимании, основные тезисы, выраженные товарищем Кацем из транспортного цеха звучат так:

1. С автомобильными пробками надо бороться, но мэрия не справляется.
2. Транспортная система города складывается из частного транспорта, общественного транспорта и факторов, учитываемых среднестатистическим пассажиром при выборе средства передвижения.
3. Транспортная система не статична, она стремится к точке равновесия, где общее количество пассажиров делится на две части в соответствии с текущими показателями факторов цена-скорость-комфорт. Причем цена и скорость в рассуждениях явно превалируют.
4. В отличие от общественного транспорта, автомобильные дороги «очень уязвимы к перегрузке... Ехать по ним становится дольше, комфорта меньше, пропускная способность падает и т.д.».
5. «с общественным транспортом всё наоборот — чем больше людей едет по маршруту, тем более качественный сервис они получают: транспорт ходит чаще, становится удобнее, больше можно затратить денег на инфраструктуру. В результате этого и получается более надежный и комфортный транспорт.»
6. Развитие общественного транспорта при повышении нагрузки — естественный процесс идущий за выгодой.

«Если обобщить — каждый автомобилист теряет в скорости и комфорте, если на дорогу выезжает другой автомобилист. А каждый пассажир общественного транспорта выигрывает в скорости и комфорте, если по его маршруту едет другой пассажир.»

7. «Цель мэрии — сделать так, чтобы средние затраты на поездку по городу снижались».

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

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

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

С шестым тезисом, про выгоду, уже не так очевидно. Казалось бы, при стоимости проезда в общественном транспорте в $1 должно быть очень выгодно владеть хоть частью перевозок. Одно из моих развлечений — подсчитывать дневную выручку Московского Метро. Раз выгодно, значит стоит стремиться перевезти больше пассажиров в единицу времени.
Не все так просто, как в сферическом городе. Если бы было так просто, то мы бы ездили сейчас на скоростных трамваях и на метро с поездами на магнитном подвесе. Во первых, выгода достигается не только повышением доходов через увеличение пассажиропотока (кстати, очень выгодно нанять узбеков-трамбователей, чтобы утрамбовывали плотненько людей в вагоны, правда, на этом месте пятый тезис выпадает начисто), выгоды можно достичь снижением издержек, например, выпустив на линию дешевые вагоны. Почитайте Теодора нашего Драйзера, про финансиста, где этюды про трамвайные линии в Чикаго. Ну или отцасергия, про его автобусный бизнес.
Во вторых, чтобы перестроить старые ветки и/или построить новые, надо настолько неслабо вложиться, что выгода настанет в весьма отдаленном будущем. А это не наш случай, несмотря на декларируемую стабильность. Да и денег столько где взять?
Пока что нашей мэрии выгоднее плитку перекладывать. Деньги в карман здесь и сейчас.

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


2012-09-11

Сравни

спорят хохол с кацапом, у кого язык непонятней : кацап спрашивает у
хохла: вот у вас есть слово "НЕЗАБАРОМ" - это обозначает где, если не за
баром? совсем не понятно.
хохол ему: та шо там наша мова не розумила вы на свий подывиться ! шо такэ
ваше слово "СРАВ НИ" -це як, чи срав, чи ни?

А вот по мотивам двухдневного квеста.
ArcGIS Viewer for Silverlight, в документации рассказано о трех библиотеках:

  • ESRI.ArcGIS.Client.Application.Controls,
  • ESRI.ArcGIS.Client.Application.Layout,
  • ESRI.ArcGIS.Client.Extensibility.

Плюс о шести в другой документации:

  • ESRI.ArcGIS.Client.dll
  • ESRI.ArcGIS.Client.Behaviors.dll
  • ESRI.ArcGIS.Client.Bing.dll
  • ESRI.ArcGIS.Client.Toolkit.dll
  • ESRI.ArcGIS.Client.Toolkit.DataSources.dll
  • ESRI.ArcGIS.Client.WebMap.dll

В приложении у меня используется, помимо перечисленных:
ESRI.ArcGIS.Mapping.Core
Эта появилась сегодня, без нее не решалась задача.

А на диске находится (считайте сами):

  • ESRI.ArcGIS.Client.Application.Controls.dll
  • ESRI.ArcGIS.Client.Application.Layout.dll
  • ESRI.ArcGIS.Client.Behaviors.Design.dll
  • ESRI.ArcGIS.Client.Behaviors.dll
  • ESRI.ArcGIS.Client.Behaviors.resources.dll
  • ESRI.ArcGIS.Client.Bing.Design.dll
  • ESRI.ArcGIS.Client.Bing.dll
  • ESRI.ArcGIS.Client.Bing.resources.dll
  • ESRI.ArcGIS.Client.Design.dll
  • ESRI.ArcGIS.Client.Design.Editors.dll
  • ESRI.ArcGIS.Client.Design.Types.dll
  • ESRI.ArcGIS.Client.dll
  • ESRI.ArcGIS.Client.Extensibility.dll
  • ESRI.ArcGIS.Client.resources.dll
  • ESRI.ArcGIS.Client.Toolkit.DataSources.dll
  • ESRI.ArcGIS.Client.Toolkit.DataSources.resources.dll
  • ESRI.ArcGIS.Client.Toolkit.Design.dll
  • ESRI.ArcGIS.Client.Toolkit.dll
  • ESRI.ArcGIS.Client.Toolkit.resources.dll
  • ESRI.ArcGIS.Client.WebMap.Design.dll
  • ESRI.ArcGIS.Client.WebMap.dll
  • ESRI.ArcGIS.Client.WebMap.resources.dll
  • ESRI.ArcGIS.Mapping.Behaviors.dll
  • ESRI.ArcGIS.Mapping.Controls.ArcGISOnline.dll
  • ESRI.ArcGIS.Mapping.Controls.dll
  • ESRI.ArcGIS.Mapping.Core.dll
  • ESRI.ArcGIS.Mapping.DataSources.dll
  • ESRI.ArcGIS.Mapping.GP.dll
  • ESRI.ArcGIS.Mapping.Identify.dll
  • ESRI.ArcGIS.Mapping.Viewer.dll
  • ESRI.ArcGIS.Mapping.Windowing.dll

Как это называется? Я щетаю — свинство. Код закрыт, документации нет, пользуйтесь нашим продуктом, лучшим в мире.

Задача была — считывать и записывать один из параметров для вложенных в ArcGISDynamicMapServiceLayer слоев. А именно PopUpsEnabled. Что характерно, ихний ApplicationBuilder управлять этим параметром умеет. Но поскольку в документации на эту тему ничего нет, есть только про вкл/выкл попапов для слоев верхнего уровня, все мои попытки были обречены.

И только на форуме нашлась информация по теме
после чего задача решилась достаточно банально
// получить номера слоев с включенными popups
var ids = ESRI.ArcGIS.Mapping.Core.LayerExtensions.GetIdentifyLayerIds(l);
var xmlszn = new System.Xml.Serialization.XmlSerializer(typeof(System.Collections.ObjectModel.Collection<int>));
var sw = new StringWriter();
xmlszn.Serialize(sw, ids);
identifyLayerIds = string.Format("{0}", sw.ToString().Trim());

// задать номера слоев для которых включены popups 
var xmlszn = new System.Xml.Serialization.XmlSerializer(typeof(System.Collections.ObjectModel.Collection<int>));
var sr = new StringReader(identifyLayerIds);
var ids = xmlszn.Deserialize(sr) as System.Collections.ObjectModel.Collection<int>;
ESRI.ArcGIS.Mapping.Core.LayerExtensions.SetIdentifyLayerIds(layer, ids);

Правда, в GUI эти настройки не отражаются, спишем на баг, признанный на том самом форуме.

Резюме: используйте OpenSource и забудьте про язву.

2012-09-10

Просто они очень любят свою страну

Прекрасный отрывок из шоу «A Bit Of Fry And Laurie», про крикет патриотизм.
Спасибо dok-zlo за наводку

В переводе на русский


По аглицки

Фактически учебник по сведению дискуссии о игре в мяч к обвинению оппонента в непатриотичности. У нас это нынче актуально.

Вот тут elliptica.blogspot.com/2008/01/fry-laurie-on-patriotism, в каментах, есть мнение, что если этот скетч показать в США, то он не будет воспринят как пародия, настолько часто там применяют такие приемы ведения дискуссий :)

Having a ball

А я и не знал, что есть такая песенка

Hitler had only one big ball.
Rommel had two but very small.
Himmler had something similar,
But poor, old Go-balls had no balls at all.


Напевать надо на этот мотивчик
Улетно выходит.

2012-09-07

57 миллионов супротив 83 миллионов

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


Запрос «погода москва», браузеры FF and Chrome.


А еще сегодня убедился в своей правоте насчет паруса-мешка. Уговорили прокатчика дать Наташке не мешок а нормальный пластиковый парус хорошей жесткости. Так она два часа каталась и вернулась живой и довольной, в отличие от прошлого раза, где через час у нее отвалились руки от мешковой тяги. И это несмотря на то, что хороший парус на полметра больше мешкового.

Samba

Год назад
Увидел свет первый стабильный релиз новой ветки Samba 3.6, в которой доведена до готовности к промышленному внедрению поддержка протокола SMB2, используемого в Windows Vista и Windows 7
Кроме того, продолжается работа по обеспечению плавного слияния кодовых баз веток Samba 3 (winbindd и код файлового сервера) и Samba 4 (контроллер домена). В будущем планируется выпустить единый многофункциональный продукт Samba 4, который будет поддерживать бесшовную миграцию с Samba 3 и сможет выступать в роли файлового сервера, сервера печати, сервера идентификации (winbind) и совместимого с Active Directory контроллера домена.


Через год нам доступна седьмая редакция ветки 3.6.

И что? Да ничего, народу рекомендуют ставить 3.4, 3.5 но не 3.6, ибо до сих пор в коде находят смертельно опасные баги. А жаль, список возможностей выглядит очень вкусно.

2012-09-05

Моя твоя не понимай

Лингвистическое.

Некоторые думают, что pussy riot означает бешенство матки. Некоторые думают, что это нечто вроде тетки атакуе. Или буйные котики (кошечки), и так далее. Преподаватель аглицкого, носитель языка, не уверен в том, что он понимает:

I am not even sure what the name means.
What actually is a pussy riot?
Perhaps the most polite way of explaining my question would be to ask: what is the opposite of that type of riot?
Is it a puppy riot or a cocky riot?


Получается, он воспринимает название как буйство типа pussy? Пусевая необузданность, кошачье буйство, пушистое буйство, п..датое буйство? Ну да, конечно, если pussy cat это мягкий пушистый котик, то pussy riot это нечто вроде итальянской забастовки, хотя, вообще-то, оксюморон выходит.

Дядя пошутил, я думаю. Имена не переводятся.

2012-09-04

Intents

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

Можно посмотреть примеры. У меня они работают в Chrome и не работают в FF.


Web Intents is a framework for client-side service discovery and inter-application communication. Services register their intention to be able to handle an action on the user's behalf. Applications request to start an Action of a certain verb (share, edit, view, pick etc.) and the system will find the appropriate Services for the user to use based on the user's preference.
...
The Web Intents specification is currently being developed in a Web Intents taskforce in combination with the public-webapps and DAPgroup.
The specification is currently in Editors DRAFT and is being discussed on the public-intents list.



технология позволяет на стороне клиента определить наличие дополнительных доступных сервисов и организовывать канал связи с ними, решая таким образом проблему интеграции web-приложений с различными внешними web-сервисами.
Имя проекта Web Intents и организация работы заимствованы из платформы Android, в которой представлена аналогичная функция Intents, позволяющая мобильным приложениям работать вместе. При использовании Web Intents приложения, выступающие в роли сервисов, регистрируют свое намерение обеспечить обработку определенных действий от имени пользователя, таких, как обработка изображений, проверка ссылки по URL или редактирование текста. Другие Web-приложения запрашивают определенный тип действий (распространение, редактирование, просмотр и т.п.) и система подбирает для них подходящие сервисы, которые могут быть выбраны в зависимости от предпочтений пользователя.


Пока идет работа над стандартизацией и внедрением нативной поддержки в браузеры, можно воспользоваться яваскриптовой реализацией и заценить, что почем. Может пригодиться разработчикам как сервисов, так и сайтов/приложений, более развесистых нежели «визитка».

2012-09-03

Учиться, учиться и еще раз учиться

Прочел я на днях рекламу учебных курсов

А в восторге я от формата самого обучения, качества подготовки материалов и онлайновой технологии проведения.
Вкратце.
Курс длится шесть недель. На каждую неделю дается около полутора часов видеолекций, разбитых на эпизоды по 10-20 минут. Видео интерактивное, и в некоторых есть моменты, когда оно останавливается, и предлагаются вопросы для закрепления прослушанного. Для каждой лекций есть две соответствующие PDF’ки со слайдами: одна с надписями вручную, которые по ходу видеолекции появляются постепенно со объяснениями лектора, а вторая с текстом, набранном привычными шрифтами. Видео можно смотреть сколько угодно раз. Можно прямо в браузере, но можно скачать видеофайлы (правда, тут я не уверен, будут ли работать интерактивные вопросы). Есть английские субтитры и транскрипт. А еще у видео, которое смотришь в браузере, есть мега возможность – менять скорость просмотра в пределах от 0.5 до 1.5. Когда начинается много “бла-бла” можно ускорить, на время


и заинтересовался. Пошел, поглядел, что там для нас, айтишников, есть интересного и полезного. Много чего.

Четыре раздела по Computer Science: теория; системы, защита/безопасность и сети; программирование и создание софта; искусственный интеллект, робототехника, комп.зрение.
В каждом из разделов от 10 до 15 курсов. Прям глаза разбегаются, сколько всего вкусного.

Может быть попробую пройти Software Engineering for SaaS.

2012-09-02

Omnipotent, Idempotent

- Что бы ты сделал, если бы стал омнипотентным?
- Убил бы себя. 
- ?
- Если умер маленький Джонни, то и мне жить не за чем.


Вообще-то я зацепился за слово «идемпотентный» из статьи

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


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

Архив блога

Ярлыки

linux (241) python (191) citation (186) web-develop (170) gov.ru (159) video (124) бытовуха (115) sysadm (100) GIS (97) Zope(Plone) (88) бурчалки (84) Book (83) programming (82) грабли (77) Fun (76) development (73) windsurfing (72) Microsoft (64) hiload (62) internet provider (57) opensource (57) security (57) опыт (55) movie (52) Wisdom (51) ML (47) driving (45) hardware (45) language (45) money (42) JS (41) curse (40) bigdata (39) DBMS (38) ArcGIS (34) history (31) PDA (30) howto (30) holyday (29) Google (27) Oracle (27) tourism (27) virtbox (27) health (26) vacation (24) AI (23) Autodesk (23) SQL (23) humor (23) Java (22) knowledge (22) translate (20) CSS (19) cheatsheet (19) hack (19) Apache (16) Klaipeda (15) Manager (15) web-browser (15) Никонов (15) functional programming (14) happiness (14) music (14) todo (14) PHP (13) course (13) scala (13) weapon (13) HTTP. Apache (12) SSH (12) frameworks (12) hero (12) im (12) settings (12) HTML (11) SciTE (11) USA (11) crypto (11) game (11) map (11) HTTPD (9) ODF (9) Photo (9) купи/продай (9) benchmark (8) documentation (8) 3D (7) CS (7) DNS (7) NoSQL (7) cloud (7) django (7) gun (7) matroska (7) telephony (7) Microsoft Office (6) VCS (6) bluetooth (6) pidgin (6) proxy (6) Donald Knuth (5) ETL (5) NVIDIA (5) Palanga (5) REST (5) bash (5) flash (5) keyboard (5) price (5) samba (5) CGI (4) LISP (4) RoR (4) cache (4) car (4) display (4) holywar (4) nginx (4) pistol (4) spark (4) xml (4) Лебедев (4) IDE (3) IE8 (3) J2EE (3) NTFS (3) RDP (3) holiday (3) mount (3) Гоблин (3) кухня (3) урюк (3) AMQP (2) ERP (2) IE7 (2) NAS (2) Naudoc (2) PDF (2) address (2) air (2) british (2) coffee (2) fitness (2) font (2) ftp (2) fuckup (2) messaging (2) notify (2) sharepoint (2) ssl/tls (2) stardict (2) tests (2) tunnel (2) udev (2) APT (1) Baltic (1) CRUD (1) Canyonlands (1) Cyprus (1) DVDShrink (1) Jabber (1) K9Copy (1) Matlab (1) Portugal (1) VBA (1) WD My Book (1) autoit (1) bike (1) cannabis (1) chat (1) concurrent (1) dbf (1) ext4 (1) idioten (1) join (1) krusader (1) license (1) life (1) migration (1) mindmap (1) navitel (1) pneumatic weapon (1) quiz (1) regexp (1) robot (1) science (1) seaside (1) serialization (1) shore (1) spatial (1) tie (1) vim (1) Науру (1) крысы (1) налоги (1) пианино (1)