Resume

Yesterday I resumed work on the next version of WarFTPD. It will no longer be a pure FTP server. Even the early beta version will have full support for HTTP and SCP as well. Encryption for the FTP protocol will also be supported early on, in the ALPHA release.

WarFTPD was originally released in 1996, with the current code-base released in 1998. It's still maintained and used. It was my first C++ project.

I have started working on the «next» version several times. However, this time I feel confident that I will deliver. Many of the obstacles of the past has bee overcome by the evolution of the C++ language and the boost project. I have worked on many projects since 1998, and learned quite a bit. Today I am up to speed with C++11/14, and I have already used boost::asio co-routines in another project (basically, it makes asynchronous code look and feel as simple as traditional sequential code). It's also tremendous easier to debug than current asynchronous code implemented with scattered callbacks. I have made a very simple design, that will allow me to launch a highly scalable file server for clouds if there should turn out to be a demand for such a beast.

WarFTPD will probably never regain the popularity and fame it enjoined in the late 1990s' but when released, it will be one of the longest actively maintained, free pieces of software originating from the Windows world. Of course, I no longer use Windows myself (I have Linux even on my Macbook Air), but I will support it for sentimental reasons. (In my opinion, Microsoft is no longer relevant in any context. The last few years of Ballemar buttf*ng the remaining Windows enthusiasts and experts (killed Technet, killed the most prestigious Microsoft certifications, F*cked up the development environment to a point where it was unusable), combined with the disastrous Windows 8 schizophrenic monster that they tried to force upon their unsuspecting customers, created too much damage. Their Patent Troll/Mafia division may still be profitable for a while, collecting Android tax, but Microsoft as an innovative and capable company is long dead).

One of the cool things I'm doing with WarFTPD now, is to use both gcc and clang during the entire development process. It shall be interesting to see which compiler that produce the fastest code in the end.

At this point I have a nice log framework (originally designed for WarFTPD a few years ago), a thread-pool (designed for a nntp server I'm also working on), some HTTP server code (from yet another pet-project), and a very simple interface design for the core classes in WarFTPD. Yesterday I went over the latest sketches and interface definitions, and I even managed to write a few lines of new C++ code.

It's looking good :)