Reinventing the wheel
Sometimes things are good enough. Sometimes you can work around the problems and make do. Sometimes you have to start from scratch.
Last week I was tapping away in SciTE, trying to overlook its obvious shortcomings as a text editor, as I always do, since it's the best that I can find. I was writing a program to tunnel telnet over HTTP, because neither protocol on their own was good enough for what I was doing. I was writing it in Python, which doesn't offend me as much as some languages, but it's still not perfect. I ...