FTP Applications

FTP clients allow you to connect to remote servers for viewing, transferring and editing files. Good ones will have an intuitive interface that simulates the Windows Explorer or Mac Finder. You can drag and drop and rename files in a similar way.

There are many FTP clients out there, especially for Windows. Here are some of the most stable and popular ones:

App Platform Notes
Cyberduck win/mac Originally mac-only, now cross-platform. Free, simple, works well and has all the features you'll probably ever need.
FileZilla win/mac Originally windows-only, now cross-platform. Very popular. I find the interface a little confusing for beginners, but once you figure out all the panes it works great.
Transmit mac only Paid, but definitely the best option for mac. Very full-featured; beautifully designed and well thought out; more stable and polished than Cyberduck.
Fetch mac only Stable and works fine, but I personally find it very unintuitive.
Your Text Editor win/mac Some text editors have ftp functionality built in. Nova and Transmit are from the same company, so several of Transmit's features are baked into Nova. BBEdit also includes FTP functionality.

On most web servers you won't be using regular FTP, but rather SFTP or FTP-SSL, which are almost identical to use, but wrap all communication between your computer and the server in a "layer" of added security. This prevents anyone from eavesdropping on your files as they go back and forth.

Local or Remote

Files can either be local or remote. Local files exist on our computer, offline, where we'll spend most of our time working and testing. Remote files are stored on a server, where the web site can be publicly accessed. When you make changes or updates to your local files and they are polished, working, and ready to go "live", you'll upload them to the remote server so the world can see them.

When working with a web server, it's always best to follow these two general rules:

  • Remote file structure should always mirror local file structure as closely as possible. Mirroring simply means that the folders and files on your server should be organized exactly the same as on your computer. This helps prevent broken links and makes it much easier to keep the two sets of files in sync.
  • Never edit remote files directly. While it's entirely possible to edit the files and work directly off of your remote server, it's almost never a good idea. Editing two sets of the same files—online and offline—becomes very confusing. Always edit the local files on your computer, and "push" the updates to your server.