Цитата:
Дальше нужно не с нуля писать, а собрать систему из компонентов. Благодаря Open Source, а также коммерческим продуктам с частично открытой функциональностью, можно начинать конструирование.
Так и нужно поступать для того, чтобы набрать опыт. Однако в некоторых областях науки данный подход больше ни для чего другого не годится, тем более для решения реальных задач. Проблема в том, что многие такие компоненты написаны неквалифицированными разработчиками или просто студентами первого курса. Даже в системе Maple известно боле 5000 багов, связанных с тем, что одна точка зрения одного разработчика наслаивается на точку зрения другого, потом часть людей уходит, а другая не понимает, что было написано до них. Все это превращается в огромный ком несовместимости и раздувание софта до таких размеров, что ничего серьёзного уже не решить.
Например, для решения некоторых труднорешаемых задач перечислительной комбинаторики нет ни одного пакета или готовой компоненты, которая решала бы необходимые для меня задачи. Кроме того, операционная система не всегда позволят выжать из процессора необходимый максимум (даже многозадачность мешает). Единственный выход, который я вижу, реализовывать систему с нуля, делать её загружаемой при старте компьютера, чтобы она работала без операционной системы. Например, в 64-битном длинном режиме и без многозадачности. Надо только комп собрать на 64 Гб памяти минимум, меньше просто не серьезно.
То есть я просто хочу сказать, что перед тем, как создавать что-то новое, нужно решить много задач (набраться опыта) и очень хорошо себе представлять
чего вы хотите от компьютера. Если этого понимания нет, вы кроме игрушки типа Doom (в плане полезности) ничего не создадите. Хотя в создании нового есть какая-то романтика, но только первое время. Потом начинается понимание того, что оно тратится зря, особенно когда выясняется, что для задач сложнее школьных упражнений все равно приходится всё писать с нуля. Я, например, около 10 лет ждал прежде чем начать что-то реализовывать, хотя руки чесались, так как чувствовал (а потом и понимать начал), что ещё плохо представляют, чем мои идеи отличаются от уже сделанного и что именно я хочу. Сейчас, когда решено много задач, я хорошо вижу проблему всего многообразия софта, написанного до меня. Будь моя воля, я бы даже начал разработку другого процессора, но это неподъёмная задача.
Да, ещё все сильно зависит от области исследования. Может быть в классе полиномиальных задач не всё так плохо, как я представляю.