Ways to prevent over-engineering?
When developing software I usually find myself continually questioning "Is this the best way?", "Is there better technology for the job?" and as a result I put more effort into actually investigating & researching different design patterns/technologies/best practises than actually just developing the thing with tools I know will work! ...