to post messages and comments.

← All posts tagged programming

А кто-нибудь знает какой-нибудь десктопно/интерактивный вьюер логов, в котором можно было бы легко задать критерий (например, значение поля в логе, содержащее thread ID), и этот вьюер показывал бы логи не в одну колонку, а в несколько, наподобие sequence diagram — из каждого конкретного thread-а в соответствующей ему колонке?

Кто там хотел ACID и «нормальное хранилище вместо основанного на mmap-е» в MongoDB?
Встречайте MongoDB 2.8.0 rc0 с подключаемыми storage engine-ами, и, в качестве «первого пробного камня» — WiredTiger, от архитекторов Berkeley DB в Sleepycat Software (купленном потом Oracle-ом): blog.mongodb.org

Кто-нибудь знает какие-нибудь mesh-сети/протоколы, которые бы, с одной стороны, не требовали никакого центрального координатора (как требует ZigBee) – то есть каждый узел был бы самодостаточен? А с другой стороны, устанавливали соединение с новой сетью за время порядка секунды, не больше?
Этакий mesh UDP, для бродкастов своего состояния соседям и на несколько хопов вглубь.

Хелп нид. Ни у кого случайно под рукой нет диаграммки/таблички, в которой бы наглядно сравнивалась скорость различных примитивных программных операций? Типа, cached memory read, non-cached memory read, SSD read, HDD read, network read? Вспоминаю, я такую видел, но найти не могу с лёту.

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

Пролистал книжку про Swift.
Да, приятные фенечки есть, даже много (например, весьма порадовала фенечка с optional chaining, пришедшая явно из функционального мира и композиции функций с монадой Maybe; или там возможность сделать observer на любое property; ну, выведение типов опять же).
Но, как и в Objective-C, жутко не хватает сопроцедур и функций-генераторов. И, соответственно, каких-нибудь fiber-ов на их базе. Впрочем, подозреваю, для этого понадобится много чего изменять в LLVM...
Зато нет никаких указателей, уже за одно это можно быть благодарным :)

Напомню, что чеклист для любого разработчика, реализующего на сервисе механизм рейтингов и кармы, состоит из одного пункта:
[ ] Прочитать про доверительный интервал Вильсона для параметра Бернулли (http://habrahabr.ru/company/darudar/blog/143188/ — рус, evanmiller.org — оригинал на англ.)

washingtonpost.com — Гейб Ньюелл из Valve рассказывает об управлении компанией — и, в частности, использует интересный подход к управлению крупной компанией как к задаче по масштабированию:

“Part of me as somebody with a computer software background thinks most systems that have trouble scaling it's because of internal communications bandwidth problems. If you look at the old way of doing things called master-slave computing systems, they tended to clog up around I/O if you really want to scale something to huge levels what you have to do is have as much local data as possible and minimize the amount of shared state between all of the different processors. That's a description of about how some engineer at Google who is thinking about how they do search, but it applies to organizations just as much as describing very, very large computing problems.
I actually think that it's testable, and we'll find out. I think our structure will work better than most of the older command and control type hierarchical systems that require a huge amount of shared state between everybody, and move very ponderously, and have to throw away huge amounts of data because otherwise the person at the top can't possibly know what every single person at the organization is doing. To me it always seems like a lot of those organizations, the person at the top seems incredibly ignorant of the actual experiences of their customers. And it's really that if everything has to go through that one person they have to trivialize and simplify everything down to stuff that is really sort of a caricature of what is really going on in their organization or for their customers.”

Казалось бы, при чём тут Путин.

Рождество — это время сказок, милости и прощения.

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

С 24-го декабря официально вступает в силу Королевское помилование для Алана Тюринга.

bbc.co.uk

Слушайте, а у нас сейчас Госдума же всё равно безумная, и каждый новый принятый законопроект страннее предыдущего, да?
Так давайте хоть какую-нибудь пользу от этого получим, а? Куда выставить законопроект о введении на территории всей России одной таймзоны, причём UTC?

(Сорри, рабочим навеяло).

Хороший вопрос подняли (но недотянули) сегодня на Go Moscow Meetup — а почему языки с green threads и, в частности, Go, не использует шедулер ядра для их шедулинга и прочих фишечек? Там бы могло быть и вытеснение, и thread affinity...
И вообще, в ядре Linux есть какая-нибудь реализация fibers? Чтобы её для этого как раз можно было использовать.