https://www.technotification.com/2018/06/best-ides-for-java-programmers.html