Application Strategy and What Goes Where

­Axioms:

  1. Data should be accessible for 50+ years.
  2. Companies go out of business, they drop support for applications, and they turn-off activation servers.
  3. If there isn't a backup of it, the data will be lost eventually.
  4. Storing data in a human-readable (as text) (e.g. HTML, XML) format is insurance against application obsolescence and application-won't-run-under-new operating system.
  5. Eventually, your employer will block every useful web site; the more useful, the sooner they will block it.
  6. Web or cell phone access is helpful, but print-to-paper is permanent and portable.
  7. Zen simplicity beats unnecessary complexity.


There are eleventy-million programs out there, with much overlap in functionality. I need some sort of strategy for deciding which ones to use. Among other things, this may help to curb my download-of-the-day habit that wastes so much time. These items are listed in order by priority (highest priority first).

Product Activation:

Try really hard to avoid applications that require 'product activation' (i.e. after you install it, it has to get permission from the vendor's server in order to continue working). I dislike product activation because:

  • When the vendor goes out of business or drops support for the app, I can no longer install it.
  • When I properly install the app, and activate it, and my computer dies, I can't install the app on a new computer without special approval from the vendor.
  • I can't use the app as a 'portable app' on a USB drive.

Portable Versus Installed Applications:

Prefer an application that runs without an install over an app that must be installed.

  • Using the app as a 'portable app' on a USB drive is really handy.
  • When I reinstall my OS, my apps are instantly ready.

Windows Version Agnostic:

Prefer an app that runs on Windows 2000 and on Windows XP and on Windows Vista over an app that runs on less than all of these.

Operating System Agnostic:

Prefer an app that has versions for Windows, Linux, and OS/X over an app that runs on only Windows.

Less is More

Prefer fewer apps.

  • If I have an app that does tasks A, B, and C reasonably well, plus another app that does C really well, I don't need both.  If there's an integrated suite, prefer the suite over independent best-of-breed apps.

  • Unless the app really provides a benefit, don't use it.

  1. Note taker: Evernote 3.  I really, really like auto-synch and auto-save.  I'm giving up wiki-hyperlinks to get them.

  2. TiddlyWiki - used only for notes/documents that I'd put in Evernote, but I want to share them with others.

  3. Word Processor, Spreadsheet, Presentation Slides, Desktop Database: Office 2003
    1. I really do use VBA, and I sometimes distribute my macros to others with MS Office.
    2. Office 2003 runs on Windows 2000, Windows XP, and Windows Vista.
    3. If you're desperate, you can run it under Linux with WINE or VMWare.
    4. With a large-enterprise CD/DVD, product activation issues can be mitigated.

  4. Gantt charts and project schedules: Project 2003
    1. It is supplied by my employer on my company-supplied laptop.

  5. Visio
    1. It is supplied by my employer on my company-supplied laptop.

­

There are many different locations where I could store my data. The list includes:

  1. Employer-provided laptop (internal drive)
  2. NAS internal drive
  3. NAS external drive 1
  4. NAS external drive 2
  5. Desktop computer (internal drive)
  6. My rent-a-server with a web hosting service
  7. Online with Google (GMail, Google Documents, etc.)
  8. Burned DVDs and CDs
  9. 8GB CF Memory
  10. iPod
  11. GMail

 

There are many different types of data. The list includes:

 

Email

* inbox = GMail

* archive = K:\Outlook\email-archive.pst (tell Outlook to "leave a copy of messages on the server")

Contacts (Address Book) Google Contacts, synchronized with iPhone. I’ve dropped Outlook Contacts and email.
Calendar

Google Calendar, synchronized with iPhone. I also synch with my WORK Outlook Calendar (via iPhone/iTunes).

Task List

Todoist.com

archive = Doings (iPhone application)

It is very handy to be able to access my task list via cell phone when I forget (or don't bother) to bring a paper copy.

Bookmarks

  • Source of record: del.icio.us
  • Desktop access (when del.icio.us is blocked) is via a Konfabulator widget I wrote.
  • Backup strategy: ?
Password data LastPass.  Note that IE and Firefox can use offline data, but the Chrome version is online only.

Reading list and sites to surf K:\@reading
Office documents K:\<by-topic>
Bills and statements K:\finance\<by-topic>
Quicken data K:\finance\quicken-data
Health and financial records (exc. Quicken data) K:\<by-topic>
Installed applications C:\Program Files
Application data files (e.g. Awasu's current state, Firefox profile)

K:\<with-app>

(Quicken data is a special case.)

Portable applications

K:\<app-name> or K:\bin if they have fewer than 5 code/resource files.

If they have tightly bound data (e.g. Bonsai), K:\<app-name>\bin and K:\<app-name>\data

Reference data K:\<by-topic> (e.g. instruction manuals, quick-reference documents, language specifications, etc.)

Music (lossless + MP3) and audio 'books'

* Master copy (lossless or original MP3) in \\kevinpc\C\Music\masters

* MP3s (for Audiotron and iTunes in \\kevinpc\c\Music\mp3)

Family photos \photo share on my NAS
Source Code K:\Code
Install disks, install files, unzip-and-run files * Keep all master CDs/DVDs

* Cache frequently used installs on J:\

Cygwin

K:\cygwin

eBooks K:\ebooks-and-articles

  1. Backups
    1. Drive K:
    2. Drive J: (or S:)
    3. rose.kleinfelter.com
    4. kevinpc
    5. Employer/client PC or laptop
    6. Sue's laptop
    7. The boy's PC
    8. NAS
    9. Blackberry
    10. GMail
    11. Google Calendar
    12. Flash drives
    13. 4-drawer file cabinet
    14. Fireproof safe
    15. Storage room financial archive
  2. TBD



The interesting question is how to map from the second set to the first set. I want to store everything exactly once (not including backups), I want to have access to files (data and executable) when I need them, I don't want to carry a suitcase-sized drive with me wherever I go.

Further complicating matters, I work as a consultant, so I often have to use someone else's computer to do my work. Many large corporations have rules forbidding connecting a non-company computer to the corporate network. These corporations are likely to have a corresponding policy forbidding users on their network from establishing VPN connections to external networks, so I can't just remote-control a single PC from wherever I roam.

I don't always get Administrator rights on computers I don't own. To make matters worse, if I plug in an external USB drive (assuming it isn't forbidden), some corporate computers are set up with virus scanners that take a 'shoot first and ask questions later' approach to files and they sometimes delete suspect files without even telling the user!

I can get to SquirrelMail on my personal host. (I've tweaked SquirrelMail to avoid certain strings that caused a former client's firewall to block its page content.) I don't want to use SquirrelMail as my primary inbox.

What to do? ????


Email

GMail is my primary mail delivery destination and my primary inbox. Thunderbird is my primary email archive.

Some companies block access to GMail (and other webmail services).  So this sets up a series of routes to access my inbox:

  1. If no restrictions, use Firefox to process my GMail directly.
  2. Use my iPhone to access my GMail.
  3. Limit access to my GMail inbox to hours I'm not on the blocking network.
  4. Use an automatic, temporary tunnel and access GMail using the 'basic html' interface (to avoid hidden AJAX traffic).

If I were running a new start-up, beginning at 8 A.M. tomorrow, I'd notify everyone that we were using Gmail and be done with it. I'm not at a start-up.  I routinely work for restrictive Fortune 100 companies.

I use corporate email for corporate email and GMail for personal email. This breaks down the 'one inbox to rule them all' paradigm.

I could run a personal Outlook under a VM or Altiris SVS, and have it handle my GMail and my corporate email. If I'm running on a boat-anchor machine with less than 1 GB of RAM, a VM thrashes. SVS might work for this, although I would have to be able to install it on the corporate machine.

Every once in a while, I think about using Outlook for email. Bad idea because it has no explicit proxy support. (You can work around it by using a transparent local proxy.)

Online or Portable?


Both:

  • +Can run on almost any computer
  • +Can run when my computer is busted
  • -Have to back up somewhere

Online:

  • +Can fetch from cell phone
  • +Most sites are OS portable
  • +++GMail: Can access *real* inbox from Blackberry
  • +GMail: Search is fast
  • -GMail: Doesn't show full email headers.
  • -Cell phone web access can be slow and frustrating
  • =No need to *synch* with WAP phone; can't synch with cell phone.

Portable:

  • +Can use when 100% offline
  • +Never have to worry about a client's firewall blocking access
  • +Generally faster response time
  • =Can *synch* with WAP phone; stale data if I forget
  • =Using a portable PST with Outlook requires setup in Outlook but not in Thunderbird
  • =Outlook (2003) doesn't do proxy support; Thunderbird does.


Conclusion: While I'm at a Fortune 100 company with a highly restrictive firewall, it is best to stick with portable thunderbird because I can use it offline, and when I go via an ssh proxy, my online time is minimal.

Other

  • Enter multiple addresses with address-type as a suffix on the first name.
  • Blackberry is the preferred on-the-go capture.

Bookmarks

Delicious.com via browser plug-in -- It solves several problems in one swoop. 

  • It gives me synchronized bookmarks across IE and Firefox, across VM and real machine. 

  • It gives me tagging in IE and Firefox.
  • The plug-ins now cache data, so I can access my bookmarks even when my employer blocks delicious.
  • Note: Plan-B is to bookmark via Onlywire


Footnotes:

  • When installing apps from PortableApps.com, install them to K:\ (the root directory). PortableApps's installers always create an <app-name> folder.
  • K: is my portable USB drive that I take with me everywhere.
  • J: is my portable USB drive that I take with me everywhere. WHAT'S THE DIFFERENCE?
  • kevinpc is my home desktop comput

Add new comment