I am greatful for any hint or trick how to write code quickly and to work on with in after one year has passed and understand what you have done one year before.
Naming...
Once you wrote a function (or a bigger part of it), go through all variables, and give them meaningful names.
A single loop "for i :=" is fine, 3 or 4 loops with i,j,k,l => not so much. Depending an what they are you could have SourceIdx, TargetIdx, FirstNameIdx, ....
Selecting the entire function, and using "syncro edit" (
https://wiki.lazarus.freepascal.org/New_IDE_features_since#Syncron-Edit ) is a quick way to do that.
Of course good naming goes for function names too.
Also functions are not just for code that is used from more than one location. You can pack code into functions to give it a name, and make the remaining code more readable. (smaller body for loops or if/then)
Is there a smart way to sort the methods in the source?
(not just copy and paste)
Not really... Though...
1) There are option in which order auto-creation will initially place them.
Tools > Options > Codetools > Class completion
2) If needs must, fold all code to the correct level (so you only see procedures). But then its copy and paste from there.
Wouldn't spend to much time on it though.
And: What is the quickest way to write a new method?
At the moment I do it by hand: Copy the method before, delete the class name, copy it in the implemenation den initizialisation part

https://wiki.lazarus.freepascal.org/Lazarus_IDE_Tools#Class_CompletionAnd I do recommend to read the entire page.