How Form Actually Affects Function

Nice Truck Mate!I have been using the MacBook Pro and only the MacBook Pro for all of my work and personal stuff for about 3 weeks now. Sure I’ve had my fair share of annoyances in adjusting my workflows and my bad habits like hitting end and expecting it go to the end of the line instead of the of the end of the document. I’m still unlearning CTRL-C,X,V,Z and re-learning ⌘-X ⌘-c ⌘-V & ⌘-Z. Even in programs like Office and Dreamweaver which I had forever associated with the Windows side of my brain. But funny enough their are quite a few things that have pleasantly surprised me and have really improved my workflow. Like FTP…

Now I know what you are saying: How the hell can FTP affect my workflow so dramatically? Well as a web developer, quite a few ways actually. Under the Windows regime, I would have to rely on Dreamweaver‘s built in FTP, Filezilla, and FireFTP, the Firefox plugin for all those quick and dirty jobs. You see I would be developing in Dreamweaver and suddenly get a call about a logo update and need to quickly pull something off a site or replace a file. FireFTP was ideal for these scenarios. Filezilla could have been a good alternative if it wasn’t for the constant need to update on launch. I had to keep it around in order to manually edit the .htaccess files FireFTP still can’t see. Dreamweaver’s FTP is great for checking files in as you work on them, hit ctrl-shift-u to save and upload and then alt-tab to check your files in a browser. It’s a little but of finger gymnastics but at least you can keep your hands on the keyboard.

These days I rarely open anything else than MactromatesTextMate and Panic’s Transmit. I still break out Dreamweaver for heavier sessions or collaborative work due to the check in / check out feature that prevents you from overriding a colleagues latest changes. I find there is not much that can’t be done perfectly well in TextMate, for one it’s so much more powerful than UltraEdit ever was. Even the column select mode that can be accessed by simply alt-selecting a column rather than having to lock it in or out using the mouse. This is really useful for editing .CSV files and turning them into mass SQL insert statements. These are very subtle differences between two programs but also serve to highlight the basic differences in both operating systems mentality towards tackling the same tasks. Many of the windows programs are islands that are never meant to interact with anything else than the OS, if an item is added to the right click menu, it’s probably going to be there for every program or none at all. For example this is what you get when you right click in Ultraedit , Notepad++, and Dreamweaver :

Right Clicking in Ultraedit is scary poweful Notepad++ appears simpler and somewhat condition sensitive Dreamweaver's right click is more inline with other MS programs
Right Clicking in Ultraedit is scary powerful Notepad++ appears simpler and somewhat condition sensitive Dreamweaver’s right click is more inline with other MS programs

This is what really annoyed me when trying to use these tools, you’d get used to a certain set of “standards” only to find out that they aren’t being used my anyone else. Searching and replacing is also really annoying: CRTL-F, CTRL-R or CTRL-H. If you use the latter in Ultraedit, you will get Hex move and using CTRL-R in SQl Enterprise manager or Visual Studio runs the query of program…. It becomes a mind field where you are constantly double checking what tools you are using and then doing a lot of CTRL-Z (undo).

Textmate is very condition sensitive

As you can Textmate is very condition sensitive, giving you the ability to change case, fold a selected tag, as well as the usual cut, copy, paste. Not to mention the fact that my Antidote french corrector can be launched straight from just about any selected text as well as any conditional Automator service. Above is my [Text • Speak it] service that reads out loud any selected text. All four of these tools are basic text editors, but the very fact that Textmate takes full advantage of the OS’s rich resources, it’s set of tools get an awesome power boost. Couple this with the fact that Panic’s Transmit will allow you to easily set Textmate as the default editing tool so double clicking a file in Transmit will allow you to edit it in place using Textmate. You can then save and close and the file get’s uploaded to the server by Transmit. This allows you to makes for some very very quick changes to production sites.

Transmit Droplets make FTP go down smootherNow the best part of using something like Transmit is that you can create a “droplet” to quickly upload images to a folder on your server. I have one folder that holds all if my customer logos and I have a droplet in a stack in my dock that I simply drop the completed file onto in order to have sent straight to that folder. I have quite a few droplets in my dock stack that all upload to various folders and servers. And thanks to Automator and a little Applescript, I’ll soon be able to resize the images and have the whole workflow automated from resize to upload and online verification. A really silly task that I can now do blind folded but never really should have done in the first place. Basically eliminating the need to rely on a Firefox plugin like FireFTP. A plugin in I started to use simply to compensate for other poorly designed utilities. So something as basic as a File Transfer Protocol tool, if properly thought out, can make a huge difference in streamlining your workflow. As a web developer, put stuff on the web is something I do A LOT and I take very it seriously, especially if it becomes the linchpin in your work day. If you write email all day, you just hit CTRL-RETURN (Windows) or Shift-⌘-D (Mac OS X) and just get on with your life right. Who sweats it about connectivity and establishing the SMTP server anymore?

This is what I mean when I say how form can actually affect function. Both Transmit and Textmate are very simple applications with many free or incredibly more expensive alternatives, however they were both designed to be part of your workflow and not get in it’s way. Their very form is so conducive to your functionality that you can certainly imagine life without either one but you just know it’s gonna suck for a while.