Some people complain about how GNU/Linux isn't desktop-ready. It's too hard to use, the applications aren't there, it does things in silly and quirky ways... We've all heard the list. And some of us persevere anyway.
Recently, though, I've been working on-site with a client for a few weeks on a PHP project. The web app we are building is on a remote GNU/Linux server. Our desktops are all Windows XP SP2, of course. Because I need to edit the files locally but test them remotely, I need a fair bit of network transparency. Of course, Windows XP provides none unless everything is using SMB, which our production web server does not (naturally). So what setup did I have to cobble together?
- Firefox for testing page appearance
- WinSCP for file transfer
- TextPad for a syntax-highlighting code editor
Of course, it's decidedly less than perfect. TextPad's syntax highlighting doesn't include PHP, so I'm using the C++ highlighter instead. It only kinda works, but it's better than Notepad. WinSCP is the only SFTP client for Windows I could find that would support remote opening of files and automatically saving them back to the remote server. However, it only supports that if it can keep track of what files opened in what program. Because TextPad opens multiple files in the same window (like most such programs) WinSCP loses track after the first file, meaning I can have only one file open at a time if I want the save-back magic to work or else open the others in Notepad or WinSCP's built in text viewer that makes Notepad look feature-rich. And every time the network connection decides to time out on me (about once an hour or more, all day long), I have to close everything I have open because WinSCP has just lost track of what's open. If I've edited anything in the mean time, I have to copy it to the clipboard, close the file, open it again, and paste the new version in and save it back. What a mess!
Nothing like that was ever a problem on my KDE-based desktop, thanks to the wonders of API-level network transparency.
Remote file management? Konqueror can handle remote SFTP or SMB or FTP or whatever directories just as well as local files, with the exact same interface and feature set. Remote file editing? Kate (and every other program) supports the same KIO-based network transparency. I don't even need to open Konqueror to open a remote file in Kate. Network timeouts? All handled automatically by the system. Syntax highlighting? Kate, KWrite, and everything else have a built-in PHP highlighting mode that is quite good, with reasonably good code-completion and much better auto-tabbing than TextPad does.
And that's all available right out of the box.
GNU/Linux not ready for the desktop? Try is THE desktop. Windows isn't ready for my desktop, that's for sure. It's just painful to use once you've tasted the power of an actual modern system. Philosophical issues and legal issues aside, Windows is just hard to use, the applications aren't there, it doesn't handle networking in a clean fashion...
Really, why does anyone use it anymore?