Вони звучать для мене дуже по-різному, і мені важко було сказати, який з них важливіший.
Ви можете бути дивовижним програмним забезпеченням, але дуже поганим програмістом. Деякі люди дивуються налагодженням коду, знаходять свій шлях через нього, виправляють його та трохи вдосконалюють його. Їх часто порівнюють з двірниками, але це несправедливо: вони можуть володіти справжніми знаннями та ноу-хау, щоб привести речі до кращого стану.
Але вони все ще можуть бути дуже поганими при написанні нового коду та розробці та реалізації алгоритмів. Вони можуть мати розуміння того, чому речі, як правило, краще так чи інакше, і навіть можуть зрозуміти після факту переваги одного дизайну над іншим. Але їм важко придумати один одного. Їм не вистачає глибокого розуміння цього логічного мислення та вирішення проблем.
Вони обоє важливі в моєму розумі. Ви не хочете, щоб тільки хакери, які можуть придумати дивовижні рішення, але створювали нездійснений код для наступних поколінь очних яблук, які збираються переглянути вашу кодову базу. Це може бути чудово для прототипування та короткочасних проектів, але в більшому масштабі, який може пролетіти лише так довго.
Тож перша група також важлива. Але вони не змогли б розробити чудове програмне забезпечення для другої групи. Це досить симбіотично (і найкраще, коли якості справді є в одного розробника). Я б здогадався, якщо ви бачите це як проблему з куркою та яйцями, я повинен визнати, що логічний вид має значення трохи більше, з історичних причин, оскільки вони повинні були існувати першими, щоб пройти шлях. Але чи означає це, що вони важливіші в магазині програмного забезпечення? Я не думаю, що так. Ви можете виробляти чудове і успішне програмне забезпечення, будуючи сантехнічні речі разом і не придумуючи багато.