Pull to refresh
20
0.3
Send message

Первоисточник: «закон Конвея»

Reading time14 min
Views19K
image

Примечание автора спустя 42 года после публикации:

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

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

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

Предлагаю вам ознакомиться с материалом, а потом оглянуться и поискать его в других сферах.

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


Как комитеты создают новое?

Мелвин Конвей (Melvin E. Conway)
Оригинал PDF.

Карьерные стероиды. Лифты

Reading time10 min
Views30K
Лифты – это разного рода конкурсы, программы развития и т.д., которые объявляются как внутри компании, так вне ее. На мой личный взгляд, среди айтишников – это самый недооцененный способ подняться по карьерной лестнице.

В конкурсах, обычно, любят участвовать не айтишники, а всякие там… Не знаю, как назвать. Активные, короче. Те, кто любил, когда еще учился в школе или институте, участвовать в самодеятельности, кружках и осенних балах. Да, обычно это – женщины (это не stereotyping, а статистика).

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

Но есть у лифтов три неприятные особенности.
Читать дальше →

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

Reading time3 min
Views46K
Вы когда-нибудь задумывались, насколько важна память для человека и конкретно для вас? Что можно достичь, с помощью хорошей памяти? А давайте прикинем прямо сейчас!? Для начала я думаю, стоит вспомнить образование и работу: прочитали книгу за несколько дней и все запомнили, экзамены за вечер на 5, язык программирования за месяц… можно продолжать долго.

Некоторые люди рождаются с феноменальной памятью, а остальные могут память тренировать и достигнуть хоть и не феноменальных результатов, но очень даже приличных, которые позволят достичь очень больших высот, не говоря уже о довольно простых вещах, перечисленных чуть выше… Поэтому моя заметка именно о тренировке памяти обычных людей: сжато и по сути.
Читать дальше →

Взгляд биолога на корни нашего старения

Reading time16 min
Views35K
Здравствуйте!

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

Дисклеймер: если вам кажется, что текст направлен определённому человеку, а не аудитории в целом, то так оно и есть, но менять я ничего не буду.

Эта статья написана полностью из головы, что называется на одном дыхании (правда в три захода), потому в ней минимальное количество ссылок и картинок – прошу понять и простить, либо написать в комментарии, возможно я что-то исправлю.
Читать дальше →

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

Reading time6 min
Views52K
Разработчик — в среднем человек увлеченный, спорить с этим смысла мало. Объективно, из-за того, что обучение программированию с самой юности отнимает много времени и сил, многие разработчики становятся чуть-чуть похожими на медведей. И сейчас объясню почему.

Медведь — вообще уникальное животное. Одна только система зимней спячки вызывает уважение. Добавить к этому размеры, всеядность и ареал обитания и мы получаем высшего хищника, у которого нет естественных врагов. Любой зоолог скажет вам, что медведь — зверь-одиночка. И как раз в образе жизни в качестве одиночек и кроется основная проблема взаимодействия с медведем: у него практически нет мимической сигнальной системы. Вред медведю в природе может причинить только другой медведь, но они просто расходятся в разные стороны предпочитая тактическое отступление кровавой схватке. То есть уровень эмоциональности этого зверя можно сравнить с эмоциональностью Чака Норриса, посмотрите сами:



Среди разработчиков много вот таких-вот прямолинейных «медведей». Проблема в том, что с такой прямолинейностью «медведь» теряет любые шансы распознавать намеки и полутона, во всяком случае без обширного печального опыта за плечами. Так что в этой публикации мы расскажем про несколько основных «методов», которыми пользуются нехорошие люди для того, чтобы выдавить неугодного им сотрудника из компании.
Читать дальше →

Современная MVI-архитектура на базе Kotlin

Reading time8 min
Views57K


За последние два года Android-разработчики в Badoo прошли длинный тернистый путь от MVP к совершенно иному подходу к архитектуре приложений. Мы с ANublo хотим поделиться переводом статьи нашего коллеги Zsolt Kocsi, описывающую проблемы, с которыми мы столкнулись, и их решение.

Это первая из нескольких статей, посвящённых разработке современной MVI-архитектуры на Kotlin.
Читать дальше →

В трёх статьях о наименьших квадратах: ликбез по теории вероятностей

Reading time10 min
Views23K
Полтора года назад я опубликовал статью «Математика на пальцах: методы наименьших квадратов», которая получила весьма приличный отклик, который, в том числе, заключался в том, что я предложил нарисовать сову. Ну, раз сова, значит, нужно объяснять ещё раз. Через неделю ровно на эту тему я начну читать несколько лекций студентам-геологам; пользуюсь случаем, излагаю тут (адаптированные) основные тезисы в качестве черновика. Моей основной целью не является дать готовый рецепт из книги о вкусной и здоровой пищи, но рассказать, почему он таков и что ещё находится в соответствующем разделе, ведь связи между разными разделами математики — это самое интересное!

На данный момент я предполагаю разбить текст следующим образом:


Я зайду к наименьшим квадратам чуть сбоку, через принцип максимума правдоподобия, а он требует минимального ориентирования в теории вероятностей. Данный текст рассчитан на третий курс нашего факультета геологии, что означает, (с точки зрения задействованного матаппарата!) что заинтересованный старшеклассник при соответствующем усердии должен суметь в нём разобраться.

Насколько обоснован теорвер или верите ли вы в теорию эволюции?


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


Читать дальше →

Time management без жестких расписаний, опыт разработки мобильного приложения

Reading time7 min
Views8.8K
Планирование времени, контроль, повышение эффективности. Тема заезженная, но осмелюсь предложить ещё одно решение.


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

У меня так: собрался, настроился, принялся за работу и тут — «то тюлень позвонит, то олень». Под конец дня вообще бывает ощущение что непонятно чем занимался и что в итоге.

Однажды возникла идея: «вот бы было классно, позвонили тебе и ты как в шахматной партии
нажал на кнопку и

Родина, верни мои деньги! Налоговые вычеты

Reading time9 min
Views41K
Недавно у Эльбы вышло обновление, в котором появилась возможность сдать справки 2-НДФЛ за своих работников в налоговую. К нам тут же посыпалась куча испуганных возгласов от предпринимателей: «Что это еще за 2-НДФЛ? Когда сдавать? Почему я про это не знаю? Достали уже эти чиновники». И мы поняли, что немного испугали народ.

Ребята! Все окей — 2-НДФЛ сдается только за ваших сотрудников :)

Но подумав о наемных работниках, мы вспомнили, что не все фрилансеры стали акулами бизнеса и многим была очень интересна тема — как обычному трудяге можно законно изъять отданный государству подоходный налог. Мы решили отойти от своей ПроБизнес-тематики и просветить желающих: сегодня мы раскроем магию налоговых вычетов по НДФЛ.

Читать дальше →

Kotlin 1.3 с поддержкой корутин, бета-версией Kotlin/Native и не только

Reading time5 min
Views16K
На днях вышел Kotlin 1.3 с комплектом сопутствующих библиотек, инструментов сборки и учебных материалов.

Мы делаем Kotlin как инструмент для разработки приложений любого масштаба на любых платформах. В Kotlin 1.3, благодаря корутинам, читать и писать неблокирующий асинхронный код стало легко и удобно. Масштабируемость стала гораздо доступнее. В новом релизе мы также выпустили бета-версию Kotlin/Native, позволяющую компилировать код Kotlin непосредственно в машинный код. Мультиплатформенные возможности Kotlin теперь работают на всех поддерживаемых платформах, что позволяет, например, использовать одну и ту же бизнес-логику в приложениях для Android и iOS. Общую логику можно также использовать для серверов и мобильных и веб-клиентов. Кроме того, появилась возможность писать легко переносимые мультиплатформенные библиотеки, которые возьмут на себя большинство повседневных задач.

image

В ближайшее время мы проведем серию вебинаров по основным возможностям версии 1.3, записывайтесь здесь.
Читать дальше →

Эффективные личные финансы. Уровень 1

Reading time8 min
Views206K
Я решил написать эту статью для сотрудников нашей компании, так как понял, что они очень образованные и умные люди, но не перестают беспокоиться о пенсионной реформе
эффективно обращаться с финансами их никто не научил. Как руководитель, заботящийся не только о своем благосостоянии, но и о благосостоянии своих коллег, я постарался взять на себя роль финансового наставника. А мои наставления о том, как стать финансово-эффективным вы можете прочесть под катом.


Читать дальше →

Курс MIT «Безопасность компьютерных систем». Лекция 13: «Сетевые протоколы», часть 2

Reading time16 min
Views7K

Массачусетский Технологический институт. Курс лекций #6.858. «Безопасность компьютерных систем». Николай Зельдович, Джеймс Микенс. 2014 год


Computer Systems Security — это курс о разработке и внедрении защищенных компьютерных систем. Лекции охватывают модели угроз, атаки, которые ставят под угрозу безопасность, и методы обеспечения безопасности на основе последних научных работ. Темы включают в себя безопасность операционной системы (ОС), возможности, управление потоками информации, языковую безопасность, сетевые протоколы, аппаратную защиту и безопасность в веб-приложениях.

Лекция 1: «Вступление: модели угроз» Часть 1 / Часть 2 / Часть 3
Лекция 2: «Контроль хакерских атак» Часть 1 / Часть 2 / Часть 3
Лекция 3: «Переполнение буфера: эксплойты и защита» Часть 1 / Часть 2 / Часть 3
Лекция 4: «Разделение привилегий» Часть 1 / Часть 2 / Часть 3
Лекция 5: «Откуда берутся ошибки систем безопасности» Часть 1 / Часть 2
Лекция 6: «Возможности» Часть 1 / Часть 2 / Часть 3
Лекция 7: «Песочница Native Client» Часть 1 / Часть 2 / Часть 3
Лекция 8: «Модель сетевой безопасности» Часть 1 / Часть 2 / Часть 3
Лекция 9: «Безопасность Web-приложений» Часть 1 / Часть 2 / Часть 3
Лекция 10: «Символьное выполнение» Часть 1 / Часть 2 / Часть 3
Лекция 11: «Язык программирования Ur/Web» Часть 1 / Часть 2 / Часть 3
Лекция 12: «Сетевая безопасность» Часть 1 / Часть 2 / Часть 3
Лекция 13: «Сетевые протоколы» Часть 1 / Часть 2 / Часть 3

Советы для джуниоров: формируем хорошие привычки

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



Итак, приступим.
Читать дальше →

Хеджирование успеха

Reading time10 min
Views15K
Термин «хеджирование успеха» – довольно странный. Поиск по этой ключевой фразе в интернете ничего особо не дает. Откуда же он взялся?

Я его узнал от одного очень толкового собственника, на котором я и пытался применить этот метод. Он меня раскусил, и объяснил мне, что это – хеджирование успеха. Мне термин понравился, запомнился, и я его теперь с удовольствием применяю. Как и сам метод.

Суть метода проста: попросить чего-то для себя в момент достижения промежуточного успеха.

Важным отличием является применение именно в момент промежуточного успеха. Если вы, например, договорились с начальником о повышении должности или зарплаты при выполнении каких-то критериев, достижении какого-то конкретного результата или срока, то это – не хеджирование успеха, а другой стероид.

Для применения хеджирования успеха даже лучше, если у вас нет никаких договоренностей, потому что они будут только мешать. Например, вы договорились, что получите повышение, выполнив некий проект. Если вы в середине проекта придете, и попросите себе, например, прибавку, то с высокой вероятностью получите отказ – вам прямо скажут, что надо доделать проект, и тогда уже можно будет разговаривать.
Читать дальше →

Как делать дела, когда их не хочется делать

Reading time6 min
Views26K

Пять стратегий доведения дел до конца


Случалось ли вам приходить на работу, садиться за компьютер, чтобы начать проект, открыть редактор, и потом просто пялиться в экран? Со мной это происходит постоянно, поэтому мне знакомы ваши мучения.

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

Ваш разум может быть занят внешними событиями – проблемами в семье, разрывом отношений, больным домашним животным – из-за чего будет трудно сконцентрироваться. На работе, конечно, тоже бывают проблемы, из-за которых сложно почувствовать мотивацию. Плохой обзор вашей работы может сбить ваш настрой. А если вы изо всех сил работаете над проектом, который ваш менеджер не ценит, вы можете задуматься над тем – зачем же вы так напрягаетесь.
Читать дальше →

Теория счастья. Термодинамика классового неравенства

Reading time23 min
Views33K
Продолжаю знакомить читателей Хабра с главами из своей книжки «Теория счастья» с подзаголовком «Математические основы законов подлости». Это ещё не изданная научно-популярная книжка, очень неформально рассказывающая о том, как математика позволяет с новой степенью осознанности взглянуть на мир и жизнь людей. Она для тех кому интересна наука и для тех, кому интересна жизнь. А поскольку жизнь наша сложна и, по большому счёту, непредсказуема, упор в книжке делается, в основном, на теорию вероятностей и математическую статистику. Здесь не доказываются теоремы и не даются основы науки, это ни в коем случае не учебник, а то, что называется recreational science. Но именно такой почти игровой подход позволяет развить интуицию, скрасить яркими примерами лекции для студентов и, наконец, объяснить нематематикам и нашим детям, что же такого интересного мы нашли в своей сухой науке.



В этой главе мы порассуждаем о деньгах, рынках и энтропии, а также посмотрим на анимированные гифки, которых, увы, в книжке напечатать не получится.


Читать дальше →

Новости о борьбе со старением

Reading time16 min
Views32K

Увеличение времени между приёмами пищи и ограничение калорий продлевает жизнь


В сентябре 2018 года в журнале Cell Metabolism вышло исследование американских геронтологов из Национального института по проблемам старения (NIH) о влиянии времени между приёмами пищи на продолжительность жизни. Подопытные мыши были разделены на две группы. У первой группы был рацион с естественным питанием (уменьшенным количеством очищенных углеводов и жиров, и повышенным содержанием белков и клетчатки). Другая группа грызунов, напротив, была посажена на «нездоровую» диету – с увеличенным количеством простых углеводов и жиров, и уменьшенным – белков и клетчатки. Кроме этого, мышей в каждой группе разделили на три подгруппы, исходя из того, как часто они имеют доступ к пище. Первая подгруппа мышей имела доступ к еде круглосуточно. Второй подгруппе мышей давалось питание один раз в день, и количество калорий в их порции было таким же, как и у мышей из первой подгруппы, т.е. не урезанным. Третью подгруппу кормили рационом, уменьшенным на 30% калорий.

Вторая и третья подгруппы, по наблюдениям учёных, имели более сильный аппетит и быстро съедали принесённую еду, что приводило к более продолжительным ежедневным периодам голодания для обеих групп.


Рисунок из статьи.
Первая подгруппа мышей (ad libitum) — питавшиеся досыта, имевшие доступ к пище 24 часа в сутки
Вторая подгруппа мышей (meal-fed) — получавшая пищу один раз в день, без урезания калорий.
Третья подгруппа мышей (CR, calorie restriction) — получавшая рацион, уменьшенный по калориям на 30%.

Читать дальше →

Kotlin: копаем глубже. Конструкторы и инициализаторы

Reading time12 min
Views29K


В уже далёком мае 2017 года Google объявила о том, что Kotlin стал официальным языком для разработки под Android. Кто-то тогда впервые услышал название этого языка, кто-то на нём уже продолжительное время писал, но с того момента стало понятно, что все, кто близок к Android-разработке, теперь просто обязаны познакомиться с ним. Далее последовали как восторженные отклики «Наконец-то!», так и жуткое негодование «Зачем нам нам новый язык? Чем Java не угодила?» и т.д. и т.п.

С тех пор прошло достаточно времени, и хоть споры о том, хороший Kotlin или плохой, до сих пор не утихли, всё больше кода под Android пишется именно на нём. И даже вполне консервативные разработчики тоже переходят на него. Кроме того, в сети можно наткнуться на информацию, что скорость разработки после освоения этого языка увеличивается на 30% по сравнению с Java.

Сегодня Kotlin уже успел вылечиться от нескольких детских болезней, оброс большим количеством вопросов и ответов на Stack Overflow. Невооружённым взглядом стали видны как его плюсы, так и слабые места.

И вот на этой волне мне пришла в голову идея подробно разобрать отдельные элементы молодого, но популярного языка. Обратить внимание на сложные моменты и сравнить их с Java для наглядности и лучшего понимания. Разобраться в вопросе несколько глубже, чем это можно сделать, прочитав документацию. Если эта статья вызовет интерес, то, скорее всего, она положит начало целому циклу статей. А пока начну с довольно базовых вещей, которые, тем не менее, скрывают массу подводных камней. Поговорим о конструкторах и инициализаторах в Kotlin.
Читать дальше →

Задача о многоруком бандите — сравниваем эпсилон-жадную стратегию и Томпсоновское сэмплирование

Reading time12 min
Views22K
Привет, Хабр! Представляю вашему вниманию перевд статьи Solving multiarmed bandits: A comparison of epsilon-greedy and Thompson sampling.

Задача о многоруком бандите


Задача о многоруком бандите – одна из самых основных задач в науке о решениях. А именно, это задача об оптимальном распределении ресурсов в уcловиях неопределенности. Само название «многорукий бандит» пошло от старых игровых автоматов, которыми управляли при помощи ручек. Эти автоматы получили прозвище «бандиты», потому что после общения с ними люди обычно чувствовали себя ограбленными. А теперь представьте, что таких машин несколько и шанс выиграть у разных машин разный. Раз уж мы взялись играть с этими машинами, мы хотим определить, у какой этот шанс выше и использовать (exploit) эту машину чаще, чем другие.


Проблема в следующем: как нам эффективнее всего понять, какая машина подходит лучше всего, и при этом перепробовать много возможностей в реальном времени? Это не какая-то теоретическая проблема, это проблема, с которой бизнес сталкивается все время. Например, у компании есть несколько вариантов сообщений, которые надо показывать пользователям (в число сообщений, например, входят и реклама, сайты, изображения) так, чтобы выбранные сообщения максимизировали некое бизнес-задание (конверсию, кликабельность и пр.)


Читать дальше →

Жизнь и смерть митохондрий

Reading time14 min
Views96K
Митохондрии – маленькие труженики или большие начальники?

Если вы думаете, что самая важная для нас история совместной жизни начинается во время свадьбы, то это совсем не так. Самая важная история совместной жизни каждого человека началась более миллиарда лет назад, когда наши далекие одноклеточные предки вынуждены были подписать «брачный контракт» с теми, кого мы сейчас называем митохондрии (см. теория симбиогенеза).

Митохондрии имеют две мембраны (внутреннюю и внешнюю) и собственный наследственный материал в виде ДНК (рис.1). На внутренней мембране митохондрий находится система окислительного фосфорилирования, работа которой обеспечивает окисление энергетических субстратов с образованием АТФ.


Рис. 1. Схематическое строение митохондрии

В брачном контракте клетки и митохондрии нет пункта «в болезни и здравии», — и хорошо. Если митохондрия становится старой, клетка может ее убить в процессе митофагии, а митохондрии, в свою очередь, регулируют процесс апоптоза у недееспособных и старых клеток. Если процесс обоюдного контроля качества нарушается, запускаются механизмы старения. Нарушаются механизмы апоптоза, увеличивается количество свободных радикалов, не контролируемых митохондрией. Это вызывает системное воспаление, повреждение ДНК клетки. Таким образом, есть сильная взаимосвязь между МХ дисфункцией, возраст-зависимыми заболеваниями, старением организма и метаболическими дисфункциями [1]. Метаболическая дисфункция – неизменный всадник апокалипсиса старения.
Читать дальше →

Information

Rating
3,876-th
Registered
Activity