Ask HN: What are your favorite developer-efficiency tips?
Probably an unpopular opinion but... Write your own text editor.<p>I&#x27;ve been working on my own (<a href="https:&#x2F;&#x2F;github.com&#x2F;alefore&#x2F;edge" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;alefore&#x2F;edge</a>) as a side project and using it exclusively for about six years. I don&#x27;t expect it to be very usable by other people (it&#x27;s very customized for my workflows, I suppose; e.g., it&#x27;s mostly useful for writing C++ and Markdown files) but, because I know it inside out (and I&#x27;ve invested in making it easy to customize through its extension language), it&#x27;s very easy for me to adjust it to behave exactly the way I want it, which allows me to lower the friction for any operations I care about (and it abides very exactly to my principles&#x2F;expectations for how an editor should behave; e.g. never block the main thread&#x2F;UI while executing some operation such as opening a file). Because I don&#x27;t have to use but a small set of computers directly (mostly my laptop and my workstation), this works well enough.<p>I don&#x27;t know if overall it&#x27;ll save me more time than it has taken me to implement it, but I do believe it allows me to move significantly faster than if I still used Vim or Emacs (or than most of my team mates), especially because it allows me to operate at a higher semantic level than otherwise, eliminating distractions from lower level details.<p>... and, I guess, it has been a lot of fun to implement it (and I&#x27;ve probably learned a bunch). I think it has played a role for me similar to that videogames have played for some of my friends (e.g., this weekend&#x27;s challenge may be to generate visualizations for the logs I keep for every interaction I have with each file I&#x27;ve edited; implementing stuff like that feels similar to how in the past I felt about making progress in some videogames).