[07:12:39] <vlad3> Угу. Помнишь я рассказывал про кооперативный трединг и мегакомпоненту, которая всем этим заправляла?
[07:13:42] <vlad3> Там один из побочных "эффектов" заключался в том, что приложение большую часть времени "йелдило".
[07:14:06] <vlad3> Причем вовсе не потому, что ему нечего было делать полезного.
[07:15:29] <vlad3> После выхерачивания йилдов стало работать на порядок быстрее ;)
[07:17:16] <vlad3> /me правда не понимает зачем может понадобиться больше одной звездочки
[12:28:09] <valexеy> vlad2: а сколько у вас было переключений (елд) в секунду? и сколько одно переключение жрало?
[12:29:32] <valexеy> я вчера немного потестил, похоже мой ручной yield имеет смысл если у нас "стек" у каждой задачи достаточно мелкий (на момент вызова йелды), порядка 4 Кб.
[12:29:42] <valexеy> В этом случае переключение занимает где-то 3 микросекунды.
[12:30:02] <valexеy> То есть примерно столько же сколько переключение силами оськи.
[15:55:06] <alexey.veselovsky> .
[17:28:36] <alexey.veselovsky> vlad2: в диалоговом окне МОЖНО использовать путь вбиваемый с клавы ручками
[17:54:32] <vlad2> КАК????
[17:54:51] <alexey.veselovsky> достаточно нажать /
[17:55:07] <vlad2> Вау!
[17:55:11] <alexey.veselovsky> :-)
[18:07:27] <vlad2> Это с какой версии, интересно.
[18:07:48] <alexey.veselovsky> как минимум с 10.6
[18:09:08] <alexey.veselovsky> вы ведь 10.5 уже закопали?
[18:19:50] <vlad2> Да конечно. Я только недавно переключил все 10.5 CLR. И то подолбаться пришлось.
[18:20:04] <vlad2> CLR -> СДК
[18:22:45] <alexey.veselovsky> это гут
[18:28:40] <vlad2> Статья про хлеб правильная.
[18:28:52] <alexey.veselovsky> а я не осилил еше
[18:31:35] <vlad2> С пропанадируемым решением там не все в порядке, но векто правильныйц.
[18:47:47] <vlad2> По поводу времени наших йелдов - лично я не мерил.
[18:49:19] <vlad2> Там проблема не во времени была. А в том, что нахерачили мегаштуку, а как оно работает никто точно не знает. Т.е. ее даже фиксить было бесполезно. Там люой чэндж мог аффектнуть k.e. часть системы непредстказуемым образом. Можно было только выбросить разом.
[18:49:54] <alexey.veselovsky> брр. не, подобные штуки должны быть достаточно просты и хорошо задокументированы
[18:50:01] <alexey.veselovsky> чтобы любая быдла в проекте знала как оно работает
[18:50:31] <vlad2> На самом деле до сих пор еще разорванные куски торчат :)
[18:51:30] <alexey.veselovsky> зомби!
[18:53:01] <vlad2> Угу. Но ниче. Недолго осталось. Грядет жабаскрипт. Беспощадный.
[18:53:19] <alexey.veselovsky> брр.
[18:53:23] <alexey.veselovsky> все на жабаскрипте?
[18:53:44] <vlad2> "те, кто останется в живых, будут завидовать мертвым" (с) Остров Сокровищ
[18:53:53] <alexey.veselovsky> да уж
[18:54:01] <vlad2> Не, ну не все, конечно. Но почти.
[18:54:05] <alexey.veselovsky> тебе нужно успеть до этого дописать компилятор Оберона!!11
[18:54:11] <vlad2> Угу :)
[18:54:19] <vlad2> Без фатального недостатка.
[18:54:40] <alexey.veselovsky> :-)
[18:55:40] <vlad2> У нас еще одна мегакомпонента есть в гуйне. Она тоже умрет :)
[18:55:45] <vlad2> И это радует.
[18:56:08] <vlad2> Ее несколько раз пытались выхерачить умные люди. Но она выжила.
[18:56:20] <alexey.veselovsky> что из себя представляет?
[18:58:15] <vlad2> Заведует фокусом. Вот такая благая цель оборачивается стращным гемором. Потому что фокус - он везде. И она в даже супермегакомпонента в принципе не может знать все особенности всех мест, где нужен фокус. Поэтому с ней нужно бороться. Постоянно.
[18:59:18] <alexey.veselovsky> ну, если у вас фокус зависит только от нее (то есть больше НИКТО не правит фокусом и никак на него не влияет), то компонентина эта выраждается просто в конфиг/машину состояний
[18:59:21] <vlad2> Выжила все по той же причины - тонны кода на нее завязаны. Т.е. переделки (в отдельной ветке) просто забрасывали.
[18:59:59] <vlad2> Как это никто больше? А винда? :) Винда тоже хочет править фокусом.
[19:01:03] <alexey.veselovsky> в жопу винду! управление фокусом в винде сделано хреново. да везде оно сделано хреново
[19:01:19] <alexey.veselovsky> пожалуй только в swing'e вменяемо
[19:01:21] <vlad2> Или вот, классический пример - встраивается IE в окошко приложения. Ну кто только его не встраивает. Даже последний быдлокодер берет и встравиет. Без проблем. Но только не в моем случае. В моем случае начинается эта самая борьба.
[19:02:08] <vlad2> Вот-вот. Именно так и домали создатели этой компоненты - "фокус в винде хреновый". У него есть фатальный недостаток, как минимум один. Теперь огребаем.
[19:02:17] <alexey.veselovsky> встраиваение сторонних тяжеловесных виджетов - всегда геморрой. они в любом случае пытаются в самый неподходящий момент зохавать фокус
[19:02:48] <alexey.veselovsky> в общем то в браузере в который встраиваются плагины сторонние (тот же флэш) постоянно идет борьба за фокус. достало
[19:03:19] <vlad2> Понятно, что будут проблемы. Но эти проблемы банально гуглятся. А вот когда у тебя такая херня в приложении - то бороться с ней ты будешь один на один.
[19:03:56] <vlad2> Не, одно дело когда у тебя просто фокус ведеи себя "странно", другое - когда у тебя вообще ничего не работает :)
[19:04:08] <alexey.veselovsky> не, они не гуглятся и не лечатся принципиально. посмотри на тот же ютуб. далеко не всегда по тыканью в пробел там будет пауза при проигрывании ролика
[19:04:22] <vlad2> Ну вот это я и говорю - косметика.
[19:04:26] <vlad2> Можно жить.
[19:04:45] <alexey.veselovsky> фига се косметика! жить нельзя - не юзабельно же! я регулярно матом крою флеш и ютуб из за этого.
[19:04:56] <vlad2> А вот если оно падает.... ;)
[19:05:00] <alexey.veselovsky> но в ынтырпрайз приложениях наверно да, это косметика :-)
[19:05:03] <vlad2> Или не нажимаются кнопки...
[19:05:43] <alexey.veselovsky> у вас там походу какой-то обобщенный монстр :-)
[19:06:31] <alexey.veselovsky> я предпочитаю мелких монстров. узко заточенных.
[19:16:30] <vlad2> Да, я ж говорю - он с одной стороны везде, с другой стороны - он не может знать специфики всхе мест, где он пристутсвует. Короче вот, скоро он умрет и у меня будет радость :)
[19:24:42] <alexey.veselovsky> но это не значит что когда её делали она сразу была вредной :-)
[19:28:26] <alexey.veselovsky> О, черт! Я кажется знаю почему именно в Австралии родился промышленный Оберон-7 компилер!
[19:28:31] <alexey.veselovsky> https://google-developers.appspot.com/maps/documentation/javascript/examples/map-simple?hl=ru
[19:28:50] <alexey.veselovsky> Внимательно посмотри на населенные пункты к западу от Сиднея
[19:30:46] <vlad2> Сама предпосылка - вредная. Желание решить все проблемы в одном месте. И нежелание признать ошибочность решения спустя какое-то время, когда начали появляться "звоночки".
[19:31:21] <vlad2> Гы! :)
[19:31:48] <alexey.veselovsky> эмм.. очень часто бывает что намного удобней собрать все относящееся к какой-либо логике в одном месте, чем тонким слоем размазывать по всем, скажем, классам.
[19:32:21] <alexey.veselovsky> так например у меня все связи между вычислительными узлами сосредоточены в одном месте, просто в виде таблички. при этом модули друг про друга ничего не знают вообще.
[19:32:32] <alexey.veselovsky> тьху, не модули, узлы вычислительные
[19:32:51] <vlad2> Это да. Просто надо оставновиться, когда появляется уже n-ое переферийное место, ради которого приходится хэкать центральную кмегакомпоненту.
[19:33:25] <alexey.veselovsky> если приходится хакать, то да. а если просто еще одну строчку в таблицу внести - то нет :-)
[19:34:14] <vlad2> Гы! Я щаз тебе покажу эти строчки!
[19:34:31] <alexey.veselovsky> /me уже боится
[19:35:01] <vlad2> if ( 0 != strcmp( className, "OleMainThreadWndClass" )
&& 0 != strcmp( className, "CicMarshalWndClass" )
&& 0 != strcmp( className, "CLIPBRDWNDCLASS" )
&& 0 != strcmp( className, "MSCTFIME UI" )
&& 0 != strcmp( className, "IME" )
[19:35:24] <vlad2> Ждем следующую версию винды/эксплорера, чтоб добавить еще одну строчку ;)
[19:35:56] <vlad2> Или две.
[19:36:11] <alexey.veselovsky> O_o
[19:36:31] <vlad2> Я ж говорю - вовремя оставноиться наждо было и признать, что оно не рабоает.
[19:37:44] <alexey.veselovsky> точнее что этот метод руления фокусом не работает :-)
[19:39:14] <vlad2> Для сравнения есть мак - в котором тоже есть "толстая" обертка над фокусом. Но именно обертка, а не "мэнэджер".
[19:39:50] <vlad2> И на маке долбания с фокусом - было на порядок меньше. Хотя приложение одно и то же.
[19:41:22] <alexey.veselovsky> хы
[19:41:36] <alexey.veselovsky> их что, разные люди делали?
[19:41:44] <vlad2> Да :)
[19:41:58] <vlad2> Причем на винде делалось позже :)
[19:43:24] <alexey.veselovsky> ну да, ведь целый менеджер осилили!
[20:39:32] <vlad2> !@#$ Ну почему каждый изобретает сою строку???
[20:39:50] <vlad2> Ну в _АПИ_ хотя бы можно оставить нормальную std::string???
[20:40:07] <alexey.veselovsky> ЕТ!
[20:40:23] <alexey.veselovsky> заметь, это только в С++ такие сложности
[20:41:10] <vlad2> Какие сложности? Ну выставил ты плюсовое апи - ну и используй плюсовы строки! Нах придумывать?
[20:43:14] <alexey.veselovsky> исторически сложилось :-)
[20:43:24] <alexey.veselovsky> не сразу в плюсцах были нормальные строки
[20:43:37] <alexey.veselovsky> алсо отсутсвие строки в ЯЗЫКЕ (не либе) провоцирует на велосипедостроение
[20:43:46] <alexey.veselovsky> в жабе и шарпах никто свои строки не придумывает
[20:43:51] <alexey.veselovsky> равно как и в Аде например
[20:46:58] <vlad2> Пичем эта строка, естественно полное гавно с точки зрения дизайна.
[20:47:27] <vlad2> Стоит коммент, типа GetPath() : возвращает utf16 строку
[20:47:47] <vlad2> (то бишь объект типа Строки)
[20:47:50] <alexey.veselovsky> ну, нормально. это ж самое оно для винды!
[20:48:37] <vlad2> Смотришь класс строки и не видишь там ничего юзабельного кроме: convert_to_utf8
[20:48:40] <vlad2> Охренеть.
[20:48:43] <alexey.veselovsky> /me прикрутил карту. теперь будем палить кто где гуляет с нашим датчиком.
[20:55:20] <vlad2> Хе-хе.
[22:34:06] <vlad2> Гы. Адобовский индезайнер все еще 32-битный на маке.
[22:34:19] <vlad2> Непросто откручивается карбон :)
[22:49:14] <vlad2> Возвращаяь к классу строки: там нет длины!!! Полный пипец! Зачем придумывать свой класс строки, если это все равно обычная сишная строка???
[22:49:33] <vlad2> И это не какая-то поделка студента, а адобовский СДК!
[23:14:21] <valexеy> vlad2: что мешает адобовскому СДК быть студенческой поделкой?
[23:14:44] <valexеy> vlad2: ты намекаешь что там даже метода/функции нет которая длину вернет? (ибо отсутствие ПОЛЯ длины я вполне могу понять)
[23:23:45] <valexеy> vlad2: О! Про фокус и html5! Тебе может быть актуальненько: http://habrahabr.ru/post/153613/
[23:25:19] <valexеy> или у вас там js без html совсем?
[23:28:14] <valexеy> http://habrahabr.ru/post/153643/
[23:29:52] <valexеy> Заместитель руководителя Роскомнадзора Максим Ксензов вчера заявил, что открытый доступ к Wi-Fi сетям для несовершеннолетних должен быть ограничен.
[23:29:58] <valexеy> http://habrahabr.ru/post/153577/
[23:52:02] <vlad2> Все идет к запрету инета. Только что-то поздно спохватилмсь.
[23:53:29] <valexеy> почему поздно?