wizzard: (Default)
оказывается, single-threaded performance у процессоров (а это то, что по факту решает в современных GUI приложениях типа браузеров) таки растет!

если верить PassMark, то мой старенький Phenom II X6 медленнее современного Xeon E3-1270v3 более чем в 2 раза на ядро (нет, i7-4771 я брать не буду, на 32 гб RAM надо брать только ECC - возьмите доки у производителей и посчитайте bit error rate сами)

Хмм. Проапгрейдить, что ли, десктоп... Какой там ныне последний чипсет рекомендуют?
wizzard: (Default)
1. посчитать velocity aka отношение планируемых часов по [его] таскам к часам календарным
2. посчитать efficiency aka "записанные часы по таскам к прошедшим часам календарным"
3. показать todo-list :)

если человек прошел все три испытания - впасть в депрессию в ближайшие полгода ему не грозит ;)

UPD: из зала подсказывают, что есть еще sink rate - "входящие таски к выполненным к дропнутым"

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

p2p wiki

Sep. 26th, 2013 03:15 pm
wizzard: (Default)
сделал наконец в своей p2p wiki wysiwyg аутлайнер.

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

но до слезания с OneNote еще очень-очень далеко...

и надо бы перевести ее на Markdown наконец (а вот тут как раз не NIH, этот проект начался до того как Markdown вообще появился, бгг)

и косяки с криптой вылечить чтобы в паблик можно было релизнуть...

и вообще столько всяких TODOшек :/

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

Поэтому они с детства привыкли, что работа приносит личное пространство, которого интровертам типично не хватает.
wizzard: (Default)
Любопытное рассуждение тут нашел. В целом, согласен.

Linux has had almost 2 decades of annual "Linux on the Desktop" pushes that universally failed, and there's a reason for this. Open source development can't do good user interfaces for the same reason wikipedia can't write a novel with a coherent plot. The limitations of the development model do not allow for this. The old adage "too many cooks spoil the soup" is not a warning about lack of nutrition, it's a warning that aesthetic issues do not survive committees. Peer review does not produce blockbuster movies, hit songs, or masterpiece paintings. It finds scientific facts, not beauty.

Any time "shut up and show me the code" is not the correct response to the problem at hand, open source development melts down into one of three distinct failure modes:

1) Endless discussion that never results in actual code, because nobody can agree on a single course of action.

2) The project forks itself to death: everybody goes off and codes up their preferred solution, but it's no easier to agree on a single approach after the code exists so the forks never get merged.

3) Delegating the problem to nobody, either by A) separating engine from interface and focusing on the engine in hopes that some glorious day somebody will write an interface worth using, or B) making the interface so configurable that the fact it takes hours to figure out what your options are and still has no sane defaults is now somehow the end user's fault.

Open source development defeats Brooks' Law by leveraging empirical tests. Integrating the results of decoupled development efforts is made possible by the ability to unequivocally determine which approaches are best (trusted engineers break ties, but it has to be pretty close and the arguments go back and forth). Even changing the design and repeatedly ripping out existing implementations is doable if everyone can at least retroactively agree that what we have now is better that what we used to have, and we should stop fighting to go back to the old way.

In the absence of empirical tests, this doesn't work. By their nature, aesthetic issues do not have emprical tests for "better" or "worse". Chinese food is not "better" than mexican food. But if you can't decide what you're doing (if one chef insists on adding ketchup and another bacon and a third ice cream) the end result is an incoherent mess. (At best you get beige and the DMV. Navigable with enough effort, but not appealing.)

The way around this is to a have a single author with a clear vision in charge of the user interface, who can make aesthetic decisions that are coherent rather than "correct". Unfortunately when this does happen, the open source community pressures the developer of a successful project to give over control of the project to a committee. So the Gecko engine was buried in the unusable Mozilla browser, then Galleon forked off from that and Mozilla rebased itself on the Galleon fork. Then Firefox forked off of that and the Mozilla foundation took over Firefox...

Part of the success of Android is that its user experience is NOT community developed. (This isn't just desktop, this is "if the whole thing pauses for two seconds while somebody's typing in a phone number, that's unacceptable". All the way down to the bare metal, the OS serves the task of being a handheld interactive touch screen device running off of battery power first, being anything else it _could_ be doing second.)

Из проекта Aboriginal Linux ( http://www.landley.net/aboriginal/about.html )

(зачем мне это? это я копаю интернет в поисках того, из чего можно собрать Trusted Computing Base на коленке, а это означает минималистичную self-hosting OS)
wizzard: (Default)
вообще очень интересно.

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

а сейчас вот в голове сейчас спокойно и пусто. нет внутреннего диалога, нет мыслей, нет противоречий, нет ничего. последний час сижу просто и слушаю музыку =)

дзен? нирвана? или таки заебался? =)
wizzard: (Default)
...aka "что удерживает меня от перехода с Microsoft'овского стэка на что-то другое"

Пост родился из продолжительной дискуссии с _sorcerer на тему "а чем NaCl хуже?", которая продолжилась в духе "но лучше ведь сделать нельзя", а чтобы не шерстить свои заметки по второму кругу - решил вынести ссылки из коммента в пост.

итак. http://www.cs.virginia.edu/~nrp3d/papers/computers_and_security-net-java.pdf старый, но актуальный обзор
http://www.onjava.com/pub/a/onjava/2004/01/28/javavsdotnet.html?page=4 а вот тут наглядно показана разница между подходами (в одном случае проверяется формальная модель, в другом - валидация отдана на откуп программисту, что и приводит к последствиям описанным в предыдущем обзоре)

http://research.microsoft.com/en-us/um/people/fournet/pwp/default.htm история поиска проблем в секьюрити-модели дотнета и разработки диагностических тулзов (понятно, что можно руками нарисовать на методе formatDisk, что его могут вызывать все, но это можно статически обнаружить, что в Джаве невозможно)

http://msdn.microsoft.com/en-us/magazine/ee677170.aspx к чему в итоге пришли (не стоит читать раньше других ссылок, т.к. будет непонятна терминология)

http://people.csail.mit.edu/jeanyang/papers/pldi117-yang.pdf расширение идей до целой ОС

читать по порядку, потом читать референсы, тоже по порядку. да, читать здесь МНОГО.

при этом у меня так и остался неотвеченный вопрос - почему кроме MS Research никто этим не занимается? ну или может занимается, так где же хотя бы пейперы?
wizzard: (Default)
Какие вы знаете безопасные (в смысле статически верифицируемые) виртуальные машины или форматы байткода?

(Также известно как typed assembly, proof-carrying assembler, managed code и такое прочее). Слайды по теме: http://www.cs.umd.edu/class/fall2006/cmsc631/lectures/talpcc.pdf

Я знаю BEAM (проконсультировался, увы, нет) и CLR.
JVM не подходит, потому что существующие формальные модели (http://cseweb.ucsd.edu/~gmporter/papers/formaljvm-ecoop01.pdf) не моделируют permissions, а смотрят только за integrity самого рантайма.

Требования примерно такие:

Level 0 protection: прога доказанно не может развалять рантайм (с этим проще всего, любой гипервизор или ОС на процессоре с MMU и ring levels подходит), на OOM, slowloris и прочее пока забьем для упрощения.

Level 1: прога доказанно не может развалять соседнюю прогу, иначе как через API (браузеры, JVM, dalvik, nacl, linux/bsd/windows/android итд итп)

Level 2: есть прога, из trusted library + untrusted code, антрастед код может звать методы из трастед либрари без оверхеда на IPC но доказанно не может обойти проверки, встроенные в них, даже если трастед лайбрари делает колбэки в untrusted код (CLR)

Level 3: в общем случае, можно навесить constraints на код, в виде security capabilities, и статически показать, что этот код будет доказанно их придерживаться (F*?)

репост с привлечением комментов в оригинал приветствуется. и, да, стоит ли на английском это написать? на stackoverflow такие вопросы не любят, увы.
wizzard: (Default)
вы наверное в курсе, что MSFT упраздняет Skype Desktop API, а скайп-сообщения с 2007 (еще при eBay) забэкаплены на серверах NSA, да? (ага, мне лень цеплять пруфы, как обычно)

черт с ней с безопасностью, проще считать, что P2P в скайпе отменили и теперь это такой новый ICQ.

так вот...

есть в этом хорошая новость - интеграция с PRISM, Windows Live и Push notifications сервисами дала MSFT возможность без особого гемора сделать скайпу новую вебморду на outlook.com

может какая-нибудь добрая душа эту вебморду отреверсит и сделает гикам новый skype-to-whatever gateway?

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

html5 hype

Sep. 12th, 2013 04:32 pm
wizzard: (Default)
Интелу надо сделать процессор, оптимизированный для Javascript.

Или сделать свой JS-движок, вложив туда наследие от своего С++-компилятора ;)

Тогда x86 начнут снова любить ;)
wizzard: (Default)
после двадцатого изничтоженного дедлока в мозгах отрастает многопоточный симулятор -_-
wizzard: (Default)
You can treat friends of your friends as your friends.. except sometimes you shouldn't.

Situation gets even worse with so-called 'old friends' where your friend is talking about an old, distorted, outdated, romanticized (brain forgets negative experiences faster) image of his used-to-be-friend.
wizzard: (Default)
Сколько розеток в квартире не ставь - все равно не хватит (Народная мудрость)

И, да, как только пораздавал все VGA-кабеля - тут же понадобились :/
wizzard: (Default)
Ненавижу принимать далеко идущие решения про которые четко известно что они имеют последствия, выбираемые сейчас и фиксируемые на будущее, но неясно, блин, какие

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

Для полного шика надо еще, чтоб время действий последствий распростралось эдак лет на 5 вперед :/
wizzard: (Default)
капельница для привлечения внимания

медицинское

Уважаемые Киевские френды! Кто какую медстраховку использует? А то у меня полис заканчивается, надо бы продлять %) без полиса жить, конечно, тоже можно, но лежать в стационаре Медикома, как сейчас - было бы омфг дорого.

Я пока нашел (для частных лиц, не корпоративное) только ИНГО за $1k, в принципе нормально, кто-нибудь ими пользовался?

банковское

Скажите, вот почему такая банальная вещь как "роутить звонок в коллцентр к тому же человеку, с кем ты разговаривал до того, как оборвалась связь" позиционируется как ниибаццо премиум услуга и дается только Особенно Важным Клиентам?
wizzard: (Default)
визитки надо явно делать персонализированные.

и не на бумаге а на пластике или металле. потому что от дождя они как-то удивительно быстро превращаются в говно -_-

ВДПВ:

грани

Jul. 5th, 2013 01:17 am
wizzard: (Default)
PERKALABA - "LULLABY" (insomnia mix by EЛEVEN)

почта

Jul. 1st, 2013 09:33 am
wizzard: (Default)
читаю временами страшилки про почту россии и радуюсь, что нахожусь в киеве %)

амазон последние 4 книжки присылал стабильно "на 3-5 день", а всякая хоббийная электронная рассыпуха приезжает за 7-9 дней, вот и в этот раз так же. конечно, это не same day shipping ;) но довольно предсказуемо.

и, да, штатовская почта оказывается умеет высылать трекинг нотифаи на email, тоже удобно.
wizzard: (Default)
Третий месяц бьемся над выжиманием максимально возможной пропускной способности из полосы.

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

Интересно, будет ли кто-то в реальности пользоваться протоколом, где key exchange занимает два часа и десятки мегабайт трафика? :D
wizzard: (Default)
In many contexts it is quite hard to provide a hard guarantee about not repeating counters, eg can be hard to retain state eg javascript in different browsers on different machines for a roaming user, or in VMs that get rolled back, or disks that get recovered from backup. Also time is unreliable on user machines often. And sources of randomness can also be questionable in some browsers, VMs after rollback, and freshly imaged servers or VMs, or servers with no keyboard/mouse etc.

To have a crypto protocol which does not catastrophically break in event of a one in 100 chance per year of hardware boundary condition happening to your the compute environment is therefore a good idea. Or occasional failure to avoid reuse. There are more protocol fragility levels than "safe" and "broken". A third option is graceful degradation.

ie if you end up falling back to ECB of two different plaintexts for first cipher block of CBC barely hurts. Sending plaintext xors hurts alot.

Bear in mind disks as a rule of thumb fail at a rate of 1%/year and the hardware also similar (motherboard, memory, powersupply etc added together).
And when that happens a VM rollback or a disk replacement and backup recovery are likely to be the method of recovering. If your crypto is not tolerant to that environment you maybe have a problem. And its not outside of the realm of feasible that the attacker can externally influence the hw failure rate.

Similarly reusing k values in DSA/ECDSA is even more catastrophic, leaking the private key. (For DSA a counter-measure can be to generate k from MAC(secret, message) so that if the same message is signed, the same k value is used (which is obviously harmless as its the same serialization).

Adam Back <adam@cypherspace.org>

Profile

wizzard: (Default)
wizzard

January 2019

S M T W T F S
  12 345
6789101112
1314 1516171819
202122 23242526
2728293031  

Syndicate

RSS Atom

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated Jul. 7th, 2025 04:51 pm
Powered by Dreamwidth Studios