Before trying to answer the question I would like to make a general statement that font encoding and keyboard mappings is an area which is still in a mess. This is not only with LaTeX but also with the web. How many pages still come up with funny characters? The nearest thing to a solution is the use of UTF-8. For the TeX/LaTeX family the answer is XeLaTeX or LuaLaTeX.
For texts that their language is predominantly English, I would stick with the extended ASCII encoding at the cost of typing a few commands for accented letters here and there. This in my opinion is a safer way and ensures that journal archives have an easier time in the longer run.
As to the question, I would place \inputenc first as shown in the below minimal.
\documentclass{article}
\usepackage[utf8]{inputenc}
\def\testa{Umlauts: äöüß}
%\usepackage[T1]{fontenc}
%\usepackage{textcomp}
%\usepackage{lmodern}
%\usepackage[utf8]{inputenc}
\begin{document}
\testa
äöüß
\end{document}
Reasoning, defensive programming means I want to catch errors as soon as possible. Contrary to what one would expect, this works with and without \fontenc. (Since LaTeX loads both the T1 and OT1 encoding files on its own).