Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Клуб программистов > Свободное общение
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 05.05.2015, 06:50   #1
yaapelsinko
Пользователь
 
Регистрация: 15.01.2012
Сообщений: 67
По умолчанию Как развивать мОзги?

Такие дела, я тупой.

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

Разумеется, это вообще повсеместный способ решения сложных задач. Проблема в том, что (как мне кажется) в моём случае приходится слишком уж сужать проблемную область. А, например, все эти новомодные премудрости про многопоточность, асинхронность, другие навороты, всякие смежные технологии - я этого всегда стараюсь избегать, пока оно действительно не понадобится. Мне неинтересно "просто поразбираться" в чём-то смежном, потому что трудно (нетрудно просто разбираться, трудно делать это в контексте теоретической применимости в другой задаче) и забивает голову. Только когда есть конкретная необходимость. Иначе получается слишком много взаимосвязей, среди которых легко запутаться.

Хороший пример - так называемая "загадка Эйнштейна". Если решать её в уме, то там нужно держать в голове сразу много фактов и исключений. Даже если рисовать таблицу на бумаге, то всё равно что-то надо держать в уме. И тут я вдруг осознаю, что и правда - держать в уме сразу много я не могу.

Думаю, надо с этим что-то делать. Вопрос - как? Что это за навык - удерживать в уме много вещей, связанных между собой? Кратковременная память, или что-то другое? Как это развивать?

Искал в интернетах книжки-задачки по "развитию интеллекта". Кажется, их составляли граждане без интеллекта вообще. Что-то работающее бывает? Кто-нибудь знает?
yaapelsinko вне форума Ответить с цитированием
Старый 05.05.2015, 07:51   #2
ds.Dante
Старожил
 
Аватар для ds.Dante
 
Регистрация: 06.08.2009
Сообщений: 2,992
По умолчанию

Цитата:
Сообщение от Стив Макконнелл
Никто не обладает достаточным для программирования уровнем интеллекта. Чтобы полностью охватить и понять сразу все детали даже средней программы, человек должен был бы обладать почти неограниченными возможностями. Способ использования интеллекта важнее, чем его уровень.
...
Самые лучшие программисты — те, кто понимают, насколько ограничены их возможности. Они скромны. ... Чем усерднее вы работаете над компенсацией ограниченных возможностей своего разума, тем лучше будете программировать. Быстрота вашего развития напрямую зависит от вашей скромности.
...
Возможно, вы думаете, что было бы благороднее развить умственные способности и отказаться от этих костылей. Возможно, вам кажется, что программист, использующий умственные костыли, идет окольными путями. Однако эмпирически было показано, что скромные программисты, компенсирующие свои недостатки, пишут более понятный код, содержащий меньше ошибок. Настоящий окольный путь — это путь ошибок и сорванных планов.
Совершенный код 33:2

Последний раз редактировалось ds.Dante; 05.05.2015 в 07:54.
ds.Dante вне форума Ответить с цитированием
Старый 05.05.2015, 08:37   #3
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
Кто-нибудь знает?
Я нет. Спроси у обезьян как им удалось эволюционировать
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 05.05.2015, 08:42   #4
mv28jam
Старожил
 
Аватар для mv28jam
 
Регистрация: 09.09.2008
Сообщений: 2,624
По умолчанию

Цитата:
В принципе, сколько программирую, ещё с института подметил за собой такой способ решения сложных (не значит - трудных, а значит - комплексных) задач - разбить её на элементарные достаточно узкие составляющие, и по одному компоненту последовательно всё это переделать.
Не знаю ни одной области где делается по другому.
Цитата:
А, например, все эти новомодные премудрости про многопоточность, асинхронность, другие навороты, всякие смежные технологии - я этого всегда стараюсь избегать, пока оно действительно не понадобится.
Да вы не волнуйтесь, как правило те, кто больше всего об этом говорит мало понимают как оно на самом деле работает и как это правильно использовать.
Цитата:
Что-то работающее бывает? Кто-нибудь знает?
Читать, думать, бвть внимательным. Эволюционировать активней!
Стрелок-охотник
mv28jam вне форума Ответить с цитированием
Старый 05.05.2015, 09:24   #5
yaapelsinko
Пользователь
 
Регистрация: 15.01.2012
Сообщений: 67
По умолчанию

Ответ всем сразу.

Это всё понятно. Большая часть тех, кого я видел, была в этих материях потупее меня. Тут мне до дна далеко.

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

Кто-то выпускает свои программы, кто-то делает игрушки, или там пишет движки-"убийцы кризиса". Часто, когда смотрю поближе, вижу, что техническое исполнение даже хуже того, что мог бы сделать я. Но разница в чём - люди могут объять умом свой замысел в целом и пусть плохо, но сделать. Я же обычно увязаю в деталях, теряя общую цель из виду. Мало того, она, общая цель, и видна-то всегда весьма смутно, так как многочисленные детали, которые там очевидно должны быть, не слишком хорошо складываются в общую картину.

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

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

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

Вооот. Всё-таки, надо что-то в башке развивать, по-видимому.
yaapelsinko вне форума Ответить с цитированием
Старый 05.05.2015, 09:48   #6
mv28jam
Старожил
 
Аватар для mv28jam
 
Регистрация: 09.09.2008
Сообщений: 2,624
По умолчанию

Цитата:
Кто-то выпускает свои программы, кто-то делает игрушки, или там пишет движки-"убийцы кризиса". Часто, когда смотрю поближе, вижу, что техническое исполнение даже хуже того, что мог бы сделать я. Но разница в чём - люди могут объять умом свой замысел в целом и пусть плохо, но сделать. Я же обычно увязаю в деталях, теряя общую цель из виду. Мало того, она, общая цель, и видна-то всегда весьма смутно, так как многочисленные детали, которые там очевидно должны быть, не слишком хорошо складываются в общую картину.
Тут есть обратная связь. Программистам с меньшим уровнем знаний и меньшим охватом проще выпустить "готовый" продукт. У более квалифицированных программистов есть нехорошая привычка - закапываться в деталях(в силу того что они имеют об этих деталях представление).
Я вас уверяю некоторые офигенные с виду проекты, имеющие ком успех, внутри работают через пень-колоду, выпускаются в сыром полурабочем виде.
Цитата:
Это как если вы задумаете делать компьютерную игрушку, и начнёте там клепать движок, арт, логику и т.п. но забудете о главном - как это всё вместе составляет игровой процесс. В результате получите хороший движок, арт, логику - и отсутствие готового цельного продукта.
В больших проектах за сопряжение и общую картину отвечают отдельные специалисты. Им не надо знать частностей, они как раз собирают продукт из больших готовых блоков.
Цитата:
Типа, отдельные элементы могу видеть сравнительно глубоко, но картину в целом - тут какие-то сложности. По крайней мере, по моему мнению недостаточно хорошо, как можно было бы ожидать, раз уж я занимаюсь программированием и соответствующие навыки у меня должны сами собой развиваться.
Это отдельный навык - проектирование систем.
Стрелок-охотник
mv28jam вне форума Ответить с цитированием
Старый 05.05.2015, 10:32   #7
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
надо что-то в башке развивать, по-видимому.
Надо прежде всего развивать... устойчивое сопротивление панике )
Че ты паришься то? Какая разница чего ты там достиг в глазах окружающей толпы? Если ты себя так низко самооцениваешь, то исправить положение можно только одним - кольт и патрон. Грубо говоря )))
Не без иронии конечно, но по-моему париться из-за "прыщей в жизни" удел подростка, но не мужчины.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 05.05.2015, 11:01   #8
WebPHP
wordpress
 
Регистрация: 03.05.2014
Сообщений: 4
По умолчанию

1)усложнять постепенно задачи, 2) выбирать задачи, которые были бы интересны и решались только с помощью новых знаний, а не старыми простыми подходами.
3) укрепить здоровье. добавить легкий бег, обливание, зарядка, строгий график, диета (хотя бы два пункта из пяти), потому что возможно, что причина в рассеянном внимании как следствие проблем со здоровьем (утомляемость, невроз и т.д.)
WebPHP вне форума Ответить с цитированием
Старый 05.05.2015, 12:30   #9
ds.Dante
Старожил
 
Аватар для ds.Dante
 
Регистрация: 06.08.2009
Сообщений: 2,992
По умолчанию

Цитата:
Сообщение от mv28jam Посмотреть сообщение
Программистам с меньшим уровнем знаний и меньшим охватом проще выпустить "готовый" продукт. У более квалифицированных программистов есть нехорошая привычка - закапываться в деталях(в силу того что они имеют об этих деталях представление).
Это перфекционизм. На первом этапе он мешает в практической работе, но здорово помогает в развитии, если сравнивать с хакерами. Когда перфекционист достигает определённого уровня знаний, для дальнейшего развития он должен научиться "прототипировать", то есть склеивать костыли говнокодом и оживлять их дефибриллятором. Опытные разработчики умеют варьировать процент говна в коде, а также определять необходимый процент для каждой конкретной задачи.
ds.Dante вне форума Ответить с цитированием
Старый 05.05.2015, 14:27   #10
Человек_Борща
Старожил
 
Аватар для Человек_Борща
 
Регистрация: 30.12.2009
Сообщений: 11,430
По умолчанию

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

Таки да, визуально, одновременно, человек способен фокуироваться на 7и вещах одновременно.
Концентрированно думать можно только об одном деле, в противном случае наломаете дров.

Потому планируйте, используйте визуальную память, умственную память, и два других вида памяти, если сумеете.
Человек_Борща вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Давайте развивать наших детей. bulanovivan Софт 3 15.01.2013 22:41
Мозги уже плывут! Skull_psyhothik Visual C++ 2 07.09.2012 02:02
Есть тут Мозги по электронике? Air Свободное общение 18 13.01.2012 00:41
Желание,терпение и мозги Gamestop Свободное общение 18 03.04.2011 08:37