Я бы сказал, что в целом это что-то, что приходит со временем и опытом, но вы можете обнаружить, что, если вы немного поработаете с более краткими языками, вы вернете это качество к своим обычным рабочим языкам.
Конечно, через год или два, работая с Ruby, я обнаружил, что мой C # сильно закалился. Я думаю, что если бы я лучше понимал функциональное программирование (постоянные амбиции), я бы, вероятно, взял больше от этого.
Также есть некоторые рекомендации, которые могут помочь, например, если вы пишете одни и те же две строки более одного раза, разделяя их на собственный метод. Это простое руководство, но оно быстро сокращает количество строк кода и программирует, в чем большинство из нас время от времени виноваты.
Если вы понимаете наследование, вы часто можете сэкономить на повторении одного и того же кода в разных местах, предоставляя общие функциональные возможности родительским классам. Это очевидно в принципе, но то, что люди часто упускают на практике.
Может быть разница между написанием меньшего количества кода и меньшим количеством кода в вашем приложении - иногда вы можете использовать генерацию кода, чтобы избежать необходимости повторяться, поэтому вы пишете только несколько строк кода, но затем они генерируют для вас много другого кода - это может дать вам много рычагов. Посмотрите, что делает инструмент, подобный Rails или Entity Framework, чтобы понять, насколько он может быть полезен. Будьте уверены в необходимости этого и подумайте дважды, трижды, а затем четыре раза о том, как развернуть собственную генерацию кода, что может привести вас в ад YAGNI.
Поймите свой язык, ваш API и ваши инструменты. Опять же, это кажется очевидным, но за эти годы я написал так много кода, который позже понял, что воспроизводит функциональность, которую я мог бы просто унаследовать от API, или использовал языковую функцию, чтобы упростить мне понимание того, что за несколько часов чтения документация по API, с которым я работаю, сэкономит мне много часов программирования или отладки позже. Точно так же большинство платформ, с которыми вы работаете, имеют зерно - учитесь работать так, как они ожидают, и ваша жизнь станет намного проще. Потратьте некоторое время на поиск направления наименьшего сопротивления для платформы, с которой вы работаете, и вы добьетесь успеха намного лучше.
Если вам интересно, есть ли лучший способ сделать что-то, возможно, есть, и всегда стоит выяснить, как сделать что-то лучше.