I had been meaning to do this for some time, and even had a nascent page for it on this site already. I just noticed my old friend Jessica Hammer was featured on usesthis.com. Then I remembered Kenneth Reitz blogged about his tools not that long ago. Looks like it is my turn now.
So without further ado, seven of my tools, specifically software.
"My relationship with Textmate isn't healthy."
I continue to use it, even though it's unsupported, has weird whitespace issues, and people make fun of me. I don't mean the EMACS/Vim people, cause they mock everyone, I mean people using Sublime Text 2, PyCharm, and NotePad on Windows. I try to make a brave face of it and for the most part I succeed.
Speaking of which, you know how you sometimes wish deep inside that the fairy tales of youth were actually true? Or that there was a zombie apocalypse and you got the chance to show off how all your eclectic skills and pursuits would make you a survival genius? Well, I feel that way about TextMates 2 being released in my lifetime. Alas, stark reality stares me in the face; yet I cling to hope.
Alright, sometimes I dabble in Sublime Text 2. I've played with PyCharm. In 2010 I even worked on a project where use of PyDev was mandatory. When I touch servers it's EMACS, Vi, or even Nano. And yet to TextMate I always return.
Is TextMate dead? Probably. And yes, someday I'll switch over to something else, probably Sublime Text 2. In order to be certain I'm starting to list all the Python editors so I can review them properly before switching.
I never liked Powerpoint. I tried to use Google Presentations for years. Finally I tried Apple's Keynote for presentations and it was an amazing decision. It's simple, easy, and remains out of my way. To make code pretty I copy/paste pygmentized code and it just works.
"Wikis are where documentation goes to die."
I'm of the opinion that Python open source projects that don't have Sphinx documentation are not ready for production use. And if I have to decide between two projects that are close in capability and one of them isn't on Read the Docs, then you know which way I'll go.
Because I want my documentation as up-to-date as possible. Wikis often fail in this, so do custom documentation solutions, and so does upload tarballs to a service. You should be using the same patterns for documentation as you do coding. Use Read the Docs.
When I first heard that Heroku had become yet-another-Python-PAAS, I shrugged. The field is crowded. We've tried a bunch, but never felt like committing a real project to this type of service.
After a coding contest in October over in Hollywood where Randall Degges served as sys admin for the project and tried out Heroku, I was impressed. Heroku provided a nice command-line interface and had an impressive feature set on it's own. A stand-out feature I noticed was the add-ons, which are Heroku moderated third-party plug-ins for their service. Finally, it didn't hurt that Heroku has the staff to provide 24/7 coverage of their servers.
We decided to give it a try and the results are that Consumer Notebook is hosted by Heroku. We're more than pleased, and I'll be blogging about the advantages of PaaS over doing-servers-yourself in a future article.
For all my umpteen accounts they all have different, crazy obscure passwords. All I need to do is remember one password and I've got access to them. What is even better is that it allows me to look up passwords in a crowded room - they are kept obfuscated by the password **** field. So much better than trying to keep it all in my head, or relying on weird coding patterns.
Yup, I eat my own dogfood. It lets me build comparison grids or look at what other people are comparing. I can list stuff for any purpose, and turn the content of those lists into grids. It is still in BETA, so things are still under development. However, on the other side, since I'm the one building and using it, I get to determine the features going in or coming out.
Mac OS X
I started as an Apple user:
I use Mac OS X professionally and have done so since 2006. However, between autumn of 1985 and 2006 I used MS/DOS and Windows (deployments usually to Unix/Linux). Not by choice but by hard reality of management decision. In September of 2006 as I started to learn Python work gave me an old, discarded Macbook Pro. Since then coding on OS X and then deploying on Linux has been my pattern. I've followed this pattern ever since, and I'm going to hit six years now as an OS X user.