My vision? Hmm, world domination, at least.
Jokes aside, I envision FileZilla as
the tool to manage FTP sites. To be precise, not just FTP, but other protocols as well, like for example SFTP and other protocols with a similar concept (usability-wise, not neccessarily from the technical point of view). One example would be WebDAV support, which I plan to implement in a future FileZilla 3 version, although with a low priority (more on that later).
Other features I'd like to add are synchronization, comparision and filesearch. Basically everything which helps managing the sites.
Obviously, different users have different needs, I don't think I'll ever be able to create a "fits all" client. For example I've no incentive to write a virtual drive to map ftp sites to drive letters. Others have implemented this already (e.g. Novell Netdrive), but I believe neither the FTP(-like) protocols nor the local filesystem layers have been designed for this. Basically, FTP, SFTP, WebDAV and the likes are high-latency protocols to be used using potentially very slow connections over the internet. In addition, remote connections are generally unreliable. Local filesystems on the other hand are usually designed for a reliable, low-latency storage. Moreover, file managers like Windows Explorer expect this fact. For example Explorer gets the file icon out of the executable or gets meta-data for media files (e.g. bitrate, resolution, length). This requires random access and low latency. If you have ever accessed an SMB share over a slow VPN connection, you'll know what I mean. And with FTP it would be much worse.
In other words, I in most cases refuse to add features that have only a very limited use.
Another often requested feature is support for automation. The proper solution for this is to write a commandline FTP client with a batch mode.
In FZ3 I've strongly separated the engine from the user interface. So it should be rather easy to write other interfaces, including a commandline interface.
So far FZ3 has evolved pretty close to my vision, At least for me it's fully usable and has replaced FZ2 on all my systems. That also reflects the way I implement new features.
Early in a project it's setting up a flexible foundation, something that's capable to hopefully scale even beyond the planned featureset. Next I'll focus on implementing the features I personally need. Mostly as consequence of the
dogfooding effect. In particular, I believe that good software is the result of a concrete need and not out of financial interest. (Exaggerated usability vs. eye candy).
The final 3.0 release of FZ3 is rather close, I've summarized the missing features in the development diary.