КОНЦЕПЦИЯ ЧИСТЫХ ЛИНИЙ
От: ZendCoder  
Дата: 17.08.05 13:07
Оценка: 17 (2) +1 -1
КОНЦЕПЦИЯ ЧИСТЫХ ЛИНИЙ

Понимание.
-Что такое сильные решения?
-Эффективность человека понятие довольно абстрактное. В дальнейшем это следует понимать как относительный объем ресурсов, который затрачивает конкретный человек для достижения требуемой цели. К примеру – один рабочий за смену производит 10 изделий, а второй производит 30, хотя устают они одинаково. Получается, что второй в три раза эффективнее своего коллеги. Считается, что человек может быть эффективнее в несколько раз физически, в десятки раз интеллектуально и в сотни раз духовно.
-Сильным будем называть решение, позволяющее быть эффективнее в несколько раз. Сила решения – это разница в эффективности, чем сильнее разница, тем сильнее решение. Ну и естественно, что слабое решение, это решение, которое снижает эффективность. Например, когда все идут к цели по одной дороге, а вы решаете срезать, и при этом в пару раз сокращаете путь, это сильное решение. Если же вы решите двигаться в обход, то это в несколько раз замедлит вас и, скорее всего, будет слабым решением.
-Из этого не сложно догадаться, что чем чаще вы принимаете сильные решения в разных ситуациях, тем эффективнее вы в целом. Среднестатистический человек довольно редко использует сильные решения и с такой же интенсивностью прибегает к слабым, так что в среднем его суммарная эффективность не меняется и остается именно среднестатистической.

-Не обманывайте себя!
-Мы обманываем себя все время. В своих мыслях – отказываясь трезво смотреть на реальность, в своих делах, отказываясь слушать свои мысли.

Эффективность.
-Случайные решения
-Интуиция – делаем так, как нравиться, как подсказывает интуиция
-Безумие – ни в коем случае не делаем, то что сделали бы другие
-Противостояние – делаем то, что противоположно действиям других

-Правило Парето
-20% действий приносят 80% результатов
-20% программы пишется 80% времени
-20% функций нужно 80% пользователей

-Еще сильные решения
-Любое поражение таит в себе равновеликую победу
-Теория решения изобретательских задач — ТРИЗ

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

-Тайные ходы и мир без границ
-Есть вещи, о существовании которых мы даже не подозреваем, они то обычно, и нужны, вместо их использования, от незнания мы начинаем городить огород
-Есть вещи, о которых мы слишком хорошо знаем, они то и мешают нам освободить разум, и быть свободными и гениальными

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

Чистота.
-Проектирование системы
-Увеличение количества степеней свободы системы неизбежно ведет к увеличению степени ее потенциальной неустойчивости.
-Все объекты должны выполнять свою главную функцию и ни чего больше. Варианты с чайником с лазерным прицелом и газонокосилко-телевизоро-пылесосо-телефоно-феном недопустимы. Если программа может обойтись без этого, значит это следует выбросить. Что бы взлететь следует избавиться от всего возможного балласта.
-Мысль, идея должна быть чистой, свободной от предрассудков, простой, гениальной, идеальной, независимой.

-Отказ от источников информации
-Если вы не располагаете какими-нибудь общеизвестными данными, то при наличии времени, целесообразно попробовать их вывести самостоятельно. Например, неизвестен какой-нибудь алгоритм — можно придумать свой, неизвестен какой-нибудь закон – можно вывести свой и т.д.

Красота.
-Усложняем, что бы упростить
-В некоторых случаях все же есть смысл усложнять систему, но только, что бы улучшить ее основные функции. Подразумевается разного рода оптимизация.

-Искусство, ремесло и опыт
-Как ни крути а получение сильных решений – искусство. Гениальность, красота и изящность игры – прежде всего! Гениальность технологий, изящность оптимизации, красота алгоритмов. Красиво – значит просто!! Нужны решения, которые можно будет назвать олимпиадными, т.е. решения разработанные мастерами, а не любителями.

-Нет ни чего идеального и вечного
-Не возможно сделать ни чего идеального или вечного. Следует учитывать, что весь мир это непостоянство и хаос. Мир движется к беспорядку. Нет ни чего более постоянного, чем временное. Нет ни чего более временного, чем постоянное! Нет смысла делать на века то, что должно послужить всего один раз.

-Ищем ответы в окружающей реальности
-Пишем для души, для своих нужд, а не под заказ

Простота.
-Зачем все усложнять?
-Многие грешат склонностью усложнять. Если задачу возможно решить проще, но не престижным способом, то так и нужно делать! Программисты же пытаются впихать в свой код побольше модных наворотов, что бы выпендриться перед невидимым наблюдателем – их самомнением, этого следует избегать. Это же и является источником излишней усложненности полученной системы в дальнейшем (не только кода). Как пример — зачем использовать ООП, если достаточно процедурного программирования, зачем использовать процедуры, если достаточно линейного программирования?

-Краткость, она же – сестра таланта
-Код длиною в пять строк. Разработка подобна войне. Победа в один день – блестящая победа, приемлема с точки зрения расходов. Победа после нескольких лет в осаде – все измождены, утомлены победой, расходованы колоссальные средства. Отсюда – чем быстрее и проще написана программа, тем она лучше.

-Упрощение цели
-Разбиваем задачу на подзадачи, подзадачи на под- подзадачи и т.д. (Как вариант бинарное деление области поиска ответов, принцип «Разделяй и властвуй»)
-Основной способ упростить задачу сводится к тому, что бы ее не решать (аппроксимация правильных результатов более простым способом)
-Решение задачи на уровне алгоритмов и на уровне структуры данных (правильно сформулированное условие – половина решения, правильно организованные структуры входных данных значительно упрощают жизнь)


Ваши мнения ...
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.