> Часто способы решения той или иной сложности становятся в разы сложнее, чем исходная сложность.
Я хотел сказать совершенно не это. Я хотел сказать что алгоритм qsort сложен, но эту сложность безполезно преодолевать при помощи декомпозиции алгоритма на составные части. Декомпозиция нужна для преодоления другого вида сложности - архитектурной. Точно так же сложность алгоритма qsort бесполезно преодолевать при помощи абстрагирования. Абстрагирование предназначено для преодоления сложности предметной области.
Как известно, мозг человека может одновременно рассматривать 7±2 элемента. Поэтому очень важно стремиться к снижению сложности ПО.
Вокруг проблемы сложности ПО существует огромная масса недоразумений и заблуждений. Часть этих недоразумений вошла в жизнь разработчиков с лёгкой руки классиков, таких как Фредерик П. Брукс и Гради Буч. Часть этих недоразумений строится на непонимании разработчиками ПО природы сложности с которой они сталкиваются.
Советы в этой статье по борьбе со сложностью укрепляют эти недоразумения и заблуждения.
Начать я думаю нужно с того, что существует много видов сложности, и для каждого вида сложности будут свои методы борьбы с нею. К видам сложности относятся:
1. Сложность объёма работ. Сюда-же относится и невозможность воспринимать более чем 7±2 элемента. Из всех видов сложности эта является самой безобидной, и преодолевается простым распаралеливанием работ между работниками.
2. Математическая сложность. Преодолевается при помощи математического анализа.
3. Алгоритмическая сложноть. Преодолевается при помощи алгоритмического анализа.
4. Архитектурная сложность. Преодолевается при помощи архитектурного анализа, архитектурной декомпозиции системы.
5. Сложность предметной области. Реашается при помощи декомпозиции предметной области и абстрагирования.
И так далее.
Для борьбы со сложностью необходимо понимать с какой именно сложностью мы хотим бороться и применять соответствующие методы уже в зависимости от обстоятельств.
Теперь можно будет делать сайты целиком и полностью на флеше. Гугл (а со временем и другие поисковики) контент внутри сайта находить сможет, а вот Adblock Plus и другие рекламорезки уже не смогут так запросто резать рекламу.
Тут есть один ньюанс. Старые телефоны (например мой старенький Siemens A55) показывают не сразу всё сообщение целиком, а построчно (с паузами между строками). В Вашем случае я сначала увижу слово "Баланс", потом после паузы "100,53 р., до", потом "23.59 31.02.2017". А я не хочу ждать эту паузу - я хочу видеть свой баланс сразу. Т.е. если всё таки нужно слово "баланс" вставить в сообщение, то это слово должно идти уже после суммы баланса.
Можно даже без слова "Баланс", просто: "100,53 р., до 23.59 31.02.2017". Я-то набирая *100# знаю, что хочу получить именно баланс а не что нибудь другое.
Ну да, школа, которая будет это учитывать, будет называться уже пост-индустриальной. Я уверен, что сейчас если поискать то пост-индустриальные лицеи найти можно, но школьная программа - именно индустриальная.
> Школа дает именно минимум, одинаковый для всех.
> Ниже минимума нельзя. Выше по любому направлению можно.
Минимум для чего? Для того что-бы дальше делать что или быть кем?
По моему скромному мнению проблема многих школьных учителей в том, что они дают детям минимум, не понимая зачем этот минимум нужен будет детям дальше.
поэтому эта проблема и существует, поскольку если логически развить вашу мысль индустриальной школы в постиндустриальной эпохе просто не может быть:)
Почему нет? В пост-индустриальном есть много атрибутов индустриального общества - фабрики, заводы, школы опять-же. Другое дело, стоит ли 100% детей учить работать именно на заводе? Просто при обучении сразу надо учитывать что некоторые захотят стать предпренимателями, некоторые артистами, некоторые IT-шниками.
Школа была создана для подготовки человека к жизни в индустриальном обществе. В индустриальном обществе от человека не требовалось умение командной работы а требовалось умение работы за конвеером - во время работы нельзя общаться с друзьями, во время работы нельзя ошибаться, во время работы по миллиону раз надо выполнять одни и те-же действия доведённые до автоматизма. Именно этому в школах и учат, и кстати школы и сами работают в режиме конвеера.
Индустриальная эпоха закончилась и наступила пост-индустриальная. В пост-индустриальной эпохе уже совершенно другие представления о принципах жизни и эффективной работы. Иднустриальные школы выпускают детей, подготовленных не к той жизни, которая ждёт их за пределами школы.
Давно мечтал о чём то похожем :) И давно говорил что социальный поиск - это будет (уже есть) смесь поискового индекса (google) и источника тагов (del.icio.us). Буду с удовольствием пользоватся.
Давным давно мечтал о таком :)
Во время программирования приходится одновременно и мышкой работать и печатать текст на клавиатуре. Правая рука постоянно переключается с мышки на клавиатуру и обратно, что отбирает кучу времени. А так руки будут всегда лежать на клавиатуре, а мышкой можно будет манипулировать при помощи ног :)
Персональный компьютер IBM: В 1981 году вышел первый персональный компьютер, отличающийся открытой архитектурой, что позволило пользователям собирать компьютер самостоятельно. Это так всем понравилось, что никто от этого уже не откажется.
Интересно, а когда придумают мобильный телефон с открытой архитектурой :)
Что-бы можно было при желании добавлять\удалять камеру например, или поддержку разных стандартов связи.
А почему сразу меняется? В крайнем случае можно сделать анимацию :) Как например это сделано на Quintura. Единственная разница будет в том что на Quintura теги генерятся автоматически а в моём варианте они будут задаваться в ручную.
Выборку тегов более естественным образом чем Ctrl-Enter можно сделать так - пользователь выбирает 1 тег и ему показывается новое облако, которое уже соответсвует не всем статьям а только тем, которые помечены таким тегом.
Например сейчас теги "программирование" и "AJAX" имеют не очень большой размер, но если я выберу тег "программирование" то "AJAX" уже будет существенно больше. А вот тега "Apple" на новом облаке вообще может не быть, хотя на главном облаке размер у него больше среднего.
А что не так с гинкго? Каких проблем можно поиметь употребляя его?
Я хотел сказать совершенно не это. Я хотел сказать что алгоритм qsort сложен, но эту сложность безполезно преодолевать при помощи декомпозиции алгоритма на составные части. Декомпозиция нужна для преодоления другого вида сложности - архитектурной. Точно так же сложность алгоритма qsort бесполезно преодолевать при помощи абстрагирования. Абстрагирование предназначено для преодоления сложности предметной области.
Вокруг проблемы сложности ПО существует огромная масса недоразумений и заблуждений. Часть этих недоразумений вошла в жизнь разработчиков с лёгкой руки классиков, таких как Фредерик П. Брукс и Гради Буч. Часть этих недоразумений строится на непонимании разработчиками ПО природы сложности с которой они сталкиваются.
Советы в этой статье по борьбе со сложностью укрепляют эти недоразумения и заблуждения.
Начать я думаю нужно с того, что существует много видов сложности, и для каждого вида сложности будут свои методы борьбы с нею. К видам сложности относятся:
1. Сложность объёма работ. Сюда-же относится и невозможность воспринимать более чем 7±2 элемента. Из всех видов сложности эта является самой безобидной, и преодолевается простым распаралеливанием работ между работниками.
2. Математическая сложность. Преодолевается при помощи математического анализа.
3. Алгоритмическая сложноть. Преодолевается при помощи алгоритмического анализа.
4. Архитектурная сложность. Преодолевается при помощи архитектурного анализа, архитектурной декомпозиции системы.
5. Сложность предметной области. Реашается при помощи декомпозиции предметной области и абстрагирования.
И так далее.
Для борьбы со сложностью необходимо понимать с какой именно сложностью мы хотим бороться и применять соответствующие методы уже в зависимости от обстоятельств.
Можно даже без слова "Баланс", просто: "100,53 р., до 23.59 31.02.2017". Я-то набирая *100# знаю, что хочу получить именно баланс а не что нибудь другое.
А что делать с теми детьми которые не удовлетворяют этому минимуму?
> Ниже минимума нельзя. Выше по любому направлению можно.
Минимум для чего? Для того что-бы дальше делать что или быть кем?
По моему скромному мнению проблема многих школьных учителей в том, что они дают детям минимум, не понимая зачем этот минимум нужен будет детям дальше.
Почему нет? В пост-индустриальном есть много атрибутов индустриального общества - фабрики, заводы, школы опять-же. Другое дело, стоит ли 100% детей учить работать именно на заводе? Просто при обучении сразу надо учитывать что некоторые захотят стать предпренимателями, некоторые артистами, некоторые IT-шниками.
Школа была создана для подготовки человека к жизни в индустриальном обществе. В индустриальном обществе от человека не требовалось умение командной работы а требовалось умение работы за конвеером - во время работы нельзя общаться с друзьями, во время работы нельзя ошибаться, во время работы по миллиону раз надо выполнять одни и те-же действия доведённые до автоматизма. Именно этому в школах и учат, и кстати школы и сами работают в режиме конвеера.
Индустриальная эпоха закончилась и наступила пост-индустриальная. В пост-индустриальной эпохе уже совершенно другие представления о принципах жизни и эффективной работы. Иднустриальные школы выпускают детей, подготовленных не к той жизни, которая ждёт их за пределами школы.
Не все :) Например вот люди борятся за Web Programming Without Tiers.
Во время программирования приходится одновременно и мышкой работать и печатать текст на клавиатуре. Правая рука постоянно переключается с мышки на клавиатуру и обратно, что отбирает кучу времени. А так руки будут всегда лежать на клавиатуре, а мышкой можно будет манипулировать при помощи ног :)
Интересно, а когда придумают мобильный телефон с открытой архитектурой :)
Что-бы можно было при желании добавлять\удалять камеру например, или поддержку разных стандартов связи.
Например сейчас теги "программирование" и "AJAX" имеют не очень большой размер, но если я выберу тег "программирование" то "AJAX" уже будет существенно больше. А вот тега "Apple" на новом облаке вообще может не быть, хотя на главном облаке размер у него больше среднего.