Anyone who works in web development has to keep track of a lot of stuff. For every site you develop there are a variety of passwords and settings. For every server you manage there are even more. For every project there are notes, meetings, code fragments, links to resources, and – of course – lists of things.
On Windows, the application I used to handle this was the awesome MyInfo by Milenix. When I switched to the Mac, I looked at all the information managers and settled on Mori. Mori does what I need (a nice hierarchical folder structure of notes), but the new developer has let the application sit idle and now it feels slow and behind the times. Not good for the application you depend on to manage your most crucial data.
Enter Scrivener 2.0 by Literature and Latte. This is my favorite writing application but with the 2.0 release about to come out (there’s a preview available from their blog … and a Windows version coming out as well) this application becomes so feature-packed that I’m going to switch over to it for my main note-keeping axe. Here are some of the cool things Scrivener 2.0 offers that relate to a developer:
- A really slick outliner mode. Sure the documents and folders are a nice navigation mechanism, but the outliner mode gives you the ability to show/hide columns. This lets you, for instance, see the tags on each document – or the modification date so you can tell when you made a settings change to something.
- Document notes and inline comments. Really handy for note-taking (duh!) but the inline comments are good for jotting down those special instructions you often forget. Oh … there are also project notes too.
- Linkage. Notes and comments are just the start – you can also attach links to web addresses as well as to other documents in the project to any document. Oh – you can also add a URL as a document too – great for keeping track of sites which have resources you use a lot – or keeping track of the sites that have templates/plugins you use on a project.
- Snapshots. Scrivener does backups which is great. But snapshots let you keep versions of your document around. This is invaluable when you’re doing things like updating a site from one system or version to another. Your new settings may change but you’d like to be able to see the old ones in case something blows up. Now you can keep it all together. I haven’t tried it yet, but there is also a sync function to folders and a couple of conduits.
- Customization. You can save window layouts and project templates which is pretty slick. But now you can also have document templates. So, imagine a template for client contact information. A template for WordPress configuration settings. A template for domain setup on a server. The tree view now allows you to set the icon for any document or folder.
- Collections. Kind of like “smart folders” but better. These can be assembled via search or by manual placement. So you could have a collection of all your WordPress deployments by searching for the “wordpress” tag on a document. Or you could have a collection of documents that you want to export and give to a client for their reference – you’d hand-assemble that collection.
There are more features than just these and I’ve barely scratched the surface of what Scrivener 2.0 can do. Obviously if you’re a writer, this is going to quickly become your tool of choice. But for people in technical fields this is a tool to consider for keeping project documentation together. The price for Scrivener 2.0 is only $45 – which is dirt cheap considering how much other information managers (which don’t do a fraction of what Scrivener does) cost. Scrivener 2.0 is due to release on November 1st, 2010.
An interesting security advisory appeared on Adobe’s support site this week:
The summary is as follows:
A critical vulnerability exists in Adobe Flash Player 10.0.45.2 and earlier versions for Windows, Macintosh, Linux and Solaris operating systems, and the authplay.dll component that ships with Adobe Reader and Acrobat 9.x for Windows, Macintosh and UNIX operating systems. This vulnerability (CVE-2010-1297) could cause a crash and potentially allow an attacker to take control of the affected system. There are reports that this vulnerability is being actively exploited in the wild against both Adobe Flash Player, and Adobe Reader and Acrobat. This advisory will be updated once a schedule has been determined for releasing a fix.
Now, the timing of this is mighty nice for Steve Jobs who’s under fire for not supporting Flash on the iPhone and iPad. But as someone who has to (try to) develop for Flash I can say I’m not surprised. Not by the security advisory nor by Jobs’ and Apple’s position. Flash player always crashes on me and it cranks up my CPU meters more than anything other than video conversion.
Should Jobs have allowed Flash onto Apple’s mobile devices? From a pure market-share perspective: yes. But I can see where he’s coming from and being able to see some Flash-based sites at the cost of having your mobile device crash or lock-up isn’t a trade-off I’d really want to make for people.
Mac Dev Tools Worth Having
For a lot of people, the Mac is seen as the PC for a “creative person”. Very “artsy.” Now, I’ve spent years (decades) developing code on Sun workstations, DEC equipment, and PC’s – the Mac, and the tools that are available on it beat all that stuff by a wide margin.
For starters, Mac OS X is itself a Linux environment. So no more shoe-horning a WAMP environment onto a PC. It’s not needed (although I do use MAMP for the Mac because Apple chose not to install some of the standard PHP extensions as standard, but for most developers this may not be needed).
But what IDE does one run? Sure, you can install the ever-present Eclipse platform. Which is capable of pretty much anything and everything if you locate/install/configure/incant the right stuff. For me, Eclipse was just too much work to get running, too slow, and too idiosynchratic to use on a daily basis.
Thus enters Coda, by Panic. Coda combines a solid code editor, a rock-solid FTP client, a terminal, a CSS editor, Subversion, and site management in one package. If you code in Rails or work with CMS-based sites, the inclusion of a SSH terminal which remembers passwords is a life saver. No more neededing to reach for Terminal or iTerm when you need to launch mongrel or change some folder protection – just open a tab, hit the button and you’re in.
If you’re doing code development on a Mac, especially if you’re bouncing onto your web server a lot, there are a lot of little commands and passwords that you need to keep track of. SSH passwords, SVN passwords and accounts, commands for SVN, Rails, Apache, mysql, etc. This is on top of the snippets of text for running the Mac itself and all the various signatures, quotations, recipes, contact information and other endless pieces of data you not only need to store, but be able to quickly retrieve but paste quickly into a browser, email, or shell window.
Enter “ShoveBox“, a great little menubar utility which keeps all this stuff close at hand. There are a lot of clipboard managers, but ShoveBox’s “Organize” window makes the difference. It allows all the clipping to be organized and colorized any way you like. This makes it real easy to track down that Subversion command for creating a branch you only use once or twice in six months – and then just drag-paste it into your terminal window.
Many years ago I was a heavy Mac user, as well as a Mac developer. Then I was more or less forced to adopt the Windows PC – partly for economic reason, partly because I entered the PC game industry.
Recently, though, I acquired a MacBook Pro and am loving it. Not just for the fun of using a Mac again, but also for the fact that it makes a great development machine for web applications. So the site will be adding reviews and articles about the Mac, and using the Mac for software devlopment.