Мне кажется, в контексте влияния на технический прогресс правильнее рассматривать не как работает мозг человека сам по себе, а как работает система "человек + рабочий инструмент" в целом.
Сократ, как известно, осуждал хранение информации в письменном виде, апеллируя именно к тому, что мозг человека, который полагается на записи вместо регулярной тренировки памяти, работает по-другому (хуже). И в этом он был прав: действительно, память человека ухудшается. Но память человечества при этом становится лучше (в противном случае мы ничего не узнали бы о самом Сократе), и это, как мы знаем, имело следствием значительный прогресс, а не наоборот.
Первая чувствует опору в своём сообществе и идеологическое обьясение всех проблем, а второй интересна истина
Я недавно открыл для себя теорию спиральной динамики в контексте личностного развития (каковой и был изначально у её автора, Клэра Грейвза). (Рекомендую этот цикл статей).
По Грейвзу, описанные вами различия соответствуют разным уровням существования личности.
Оффтопик. Когда я вижу, как кто-то утверждает, что сумма двух и двух может не равняться четырём, ссылаясь на системы счисления, моя рука тянется к браунингу, я не могу удержаться.
Число два (сущность) плюс число два (сущность) всегда равняется числу четыре (сущность). Тот факт, что число четыре (сущность) может выглядеть как 4 (представление), как 100 (представление), как |||| (представление), как IV (представление), а хоть бы и как 5 (представление), ничуть не меняет дела. В любой системе счисления это утверждение будет верным, различаться будет лишь форма его репрезентации.
Результаты опыта показали, что участники, использовавшие АМА, допустили больше пропусков 6 выделенных событий, чем участники, не пользовавшиеся АМА. Коэффициент точности первой группы в этих событиях составил 59%, когда как второй – 97%.
А известны коэффициенты точности по всем 100 событиям?
Обычно его [принцип открытости/закрытости] объясняют так: «класс должен быть закрыт для модификации, но открыт для расширения». Это означает, что поведение класса следует менять не на уровне его исходного кода, а путем расширения.
Скорее, это означает, что классы следует проектировать так, чтобы за счёт их комбинирования охватить максимальное поле возможностей. Чтобы единственной причиной для изменения поведения было изменение требований со стороны зоны ответственности этого класса, а новую функциональность можно было бы добавить без тюнинга старой, лишь за счет надстройки и рекомбинации.
Типичное объяснение этого принципа [SRP] – «должна существовать всего одна причина, по которой может быть изменен данный класс».
Скорее, здесь имеется в виду "должен существовать всего один класс причин...". Другими словами, структурная модель ООП-классов должна соответствовать функциональной модели системы, разработку которой мы ведем.
Так, в примере из статьи, можно все причины, касающиеся результата (включая ведение истории), отнести к одному классу причин, а можно ведение истории результатов посчитать имеющим больше отношения к истории, чем к результату, -- в зависимости от того, насколько значимое место в функциональной модели нашей системы эта история занимает.
В другом примере из статьи класс, единственная ответственность которого "обеспечивать онлайн-бронирование номера в отеле", не будет нарушать SRP при условии, что он не выполняет сам отдельные операции, на которые декомпозируется онлайн-бронирование, а обращается для этого к модулям более низкого уровня (другими словами, организует функциональность более низкого уровня в решение этой конкретной задачи). Но в таком случае откуда у него возьмется 100k строк кода?
По-видимому, при определении ответственности класса стоит задаваться не вопросом "что делает класс?", а вопросом "зачем он это делает?" Так, если класс состоит из двух методов, возвращающего и сохраняющего цену, соответственно, то ответственность у него, скорее всего, одна -- обеспечивать персистентность данных. Но если функциональная модель системы подразумевает сложное взаимодействие микросервисов, репликацию, шардирование и тому подобное и/или сохранением данных занимается одна часть системы, а получением -- другая, то и ответственности будет две.
Google переводит "guidelines" как "методические рекомендации", а для "rules" предлагает подсказку "rules and regulations", где "regulations" – "нормативные документы".
The BANI framework offers a lens through which to see and structure what’s happening in the world. At least at a surface level, the components of the acronym might even hint at opportunities for response: brittleness could be met by resilience and slack; anxiety can be eased by empathy and mindfulness; nonlinearity would need context and flexibility; incomprehensibility asks for transparency and intuition.
Формально да, но в данном случае это полностью меняет смысл.
Тут приходит на ум классический пример из экономики, почему законы, работающие на микроуровне, не обязательно работают на макро-: если некоторые люди на трибунах стадиона во время матча встанут, им будет лучше видно, но если все люди на трибунах встанут, лучше видно им не будет (но при этом все будут стоять). [от разницы в росте предусмотрительно предлагаю абстрагироваться]
Не похоже на то. Высказывание Хайнлайна – фактически про горизонтальное/вертикальное масштабирование, и оно противоречит наблюдаемым фактам (росту специализации в ходе развития отрасли, в частности IT), в то время как высказывание Ершова – про структуру компетенций отдельной профессии.
Хайлайн говорит о том, что любой человек должен владеть всеми компетенциями бухгалтера, а Ершов – о том, что некоторые люди (те, кто выбрали профессию программиста) должны владеть некоторыми компетенциями бухгалтера (аккуратностью).
Никакой объект не может быть хорошим или плохим сам по себе, быть хорошим или плохим можно только для кого-то, иначе говоря это отношение между субъектом и объектом, а не свойство.
Вот меня и интересовало, какими разными словами следовало перевести это предложение. Но мне уже ответили выше.
Мне кажется, в контексте влияния на технический прогресс правильнее рассматривать не как работает мозг человека сам по себе, а как работает система "человек + рабочий инструмент" в целом.
Сократ, как известно, осуждал хранение информации в письменном виде, апеллируя именно к тому, что мозг человека, который полагается на записи вместо регулярной тренировки памяти, работает по-другому (хуже). И в этом он был прав: действительно, память человека ухудшается. Но память человечества при этом становится лучше (в противном случае мы ничего не узнали бы о самом Сократе), и это, как мы знаем, имело следствием значительный прогресс, а не наоборот.
А как должен переводиться текст в примере?
Я недавно открыл для себя теорию спиральной динамики в контексте личностного развития (каковой и был изначально у её автора, Клэра Грейвза). (Рекомендую этот цикл статей).
По Грейвзу, описанные вами различия соответствуют разным уровням существования личности.
Собственно, этой фразой вы согласились с утверждением в посте, на который отвечали:
Да что уж там – все объекты в мире одинаковые: протяжённы в пространстве, изменяются во времени и взаимодействуют друг с другом.
А если серьёзно, то перед тем как отделять существенные признаки от несущественных, неплохо бы определиться, существенные для чего.
Не могу не поделиться ссылкой на рассказ Скотта Александера "Sort by Controversial"
Нет, так выражаться нельзя. На сотню порядков – это в b^100 раз, где b – основание системы счисления (обычно 10). wiki
Всё просто: в оригинале ноликов меньше: "The scale of a human is less than 1/5,000,000 the scale of Earth…"
Оффтопик. Когда я вижу, как кто-то утверждает, что сумма двух и двух может не равняться четырём, ссылаясь на системы счисления,
моя рука тянется к браунингу,я не могу удержаться.Число два (сущность) плюс число два (сущность) всегда равняется числу четыре (сущность). Тот факт, что число четыре (сущность) может выглядеть как 4 (представление), как 100 (представление), как |||| (представление), как IV (представление), а хоть бы и как 5 (представление), ничуть не меняет дела. В любой системе счисления это утверждение будет верным, различаться будет лишь форма его репрезентации.
Спасибо.
Интересно, чем таким выделялись эти 6 событий, что точность у группы без AMA для них настолько выше средней?
(Думается, для дизайна эксперимента было бы лучше, если бы такие события выбирались рандомно).
А известны коэффициенты точности по всем 100 событиям?
Скорее, это означает, что классы следует проектировать так, чтобы за счёт их комбинирования охватить максимальное поле возможностей. Чтобы единственной причиной для изменения поведения было изменение требований со стороны зоны ответственности этого класса, а новую функциональность можно было бы добавить без тюнинга старой, лишь за счет надстройки и рекомбинации.
Скорее, здесь имеется в виду "должен существовать всего один класс причин...". Другими словами, структурная модель ООП-классов должна соответствовать функциональной модели системы, разработку которой мы ведем.
Так, в примере из статьи, можно все причины, касающиеся результата (включая ведение истории), отнести к одному классу причин, а можно ведение истории результатов посчитать имеющим больше отношения к истории, чем к результату, -- в зависимости от того, насколько значимое место в функциональной модели нашей системы эта история занимает.
В другом примере из статьи класс, единственная ответственность которого "обеспечивать онлайн-бронирование номера в отеле", не будет нарушать SRP при условии, что он не выполняет сам отдельные операции, на которые декомпозируется онлайн-бронирование, а обращается для этого к модулям более низкого уровня (другими словами, организует функциональность более низкого уровня в решение этой конкретной задачи). Но в таком случае откуда у него возьмется 100k строк кода?
По-видимому, при определении ответственности класса стоит задаваться не вопросом "что делает класс?", а вопросом "зачем он это делает?" Так, если класс состоит из двух методов, возвращающего и сохраняющего цену, соответственно, то ответственность у него, скорее всего, одна -- обеспечивать персистентность данных. Но если функциональная модель системы подразумевает сложное взаимодействие микросервисов, репликацию, шардирование и тому подобное и/или сохранением данных занимается одна часть системы, а получением -- другая, то и ответственности будет две.
Google переводит "guidelines" как "методические рекомендации", а для "rules" предлагает подсказку "rules and regulations", где "regulations" – "нормативные документы".
Видимо, в этом и разница.
Так ведь концепция BANI как раз и нужна, чтобы ставить вопрос: "Что делать, чтобы не застрять в BANI-мире?"
Цитата из статьи по теме:
Формально да, но в данном случае это полностью меняет смысл.
Тут приходит на ум классический пример из экономики, почему законы, работающие на микроуровне, не обязательно работают на макро-: если некоторые люди на трибунах стадиона во время матча встанут, им будет лучше видно, но если все люди на трибунах встанут, лучше видно им не будет (но при этом все будут стоять). [от разницы в росте предусмотрительно предлагаю абстрагироваться]
Судя по контексту, автор имел в виду, что логику работы со строками нужно выносить из ядра языка в библиотеки.
Не похоже на то. Высказывание Хайнлайна – фактически про горизонтальное/вертикальное масштабирование, и оно противоречит наблюдаемым фактам (росту специализации в ходе развития отрасли, в частности IT), в то время как высказывание Ершова – про структуру компетенций отдельной профессии.
Хайлайн говорит о том, что любой человек должен владеть всеми компетенциями бухгалтера, а Ершов – о том, что некоторые люди (те, кто выбрали профессию программиста) должны владеть некоторыми компетенциями бухгалтера (аккуратностью).
Никакой объект не может быть хорошим или плохим сам по себе, быть хорошим или плохим можно только для кого-то, иначе говоря это отношение между субъектом и объектом, а не свойство.