In my position as Applescript & Cocoa Programmer, I have freedom to prioritize projects as I see necessary. Often specific requests are made of me to move certain projects up or research immediately. I am able to handle concurrent projects with little stress.

Project Scope:
Often I am asked about new projects or needs on the production floor, and I take time to consider the long term impacts of user requests. Sometimes I expand the scope of the project in order to guarantee future compatibility or leave options for the user or for my own programming needs that may come about months or years later. Long term vision has allowed many of my designs and workflow concepts to function for years with little need of major overhauls or reprogramming. As with any system, changes are made periodically, but none have ever been so drastic or radical as to stop production.

Listening to user's real requests:
I am also a proponent of thorough testing and design verification with users. Despite my best imagining, application design must be tailored to the end users. To that end I always get input from the final user to see that any application or script accomplishes their task, and does so while performing well, and also anticipates their future needs or anciliary actions pertaining the the task. I believe that no designer or programmer can fulfill a design if only "giving the user what they said they wanted". Every effort must be made to understand the end user's complete job function, and determine the deeper question of the initial request, and fulfill all needs of their job function.

Organization and Forethought:
At Clipper, I took the initiative to organize and store our backup disks. After being hired for only a few months, I saw the backup system that the Prepress department used would quickly spiral out of control. I developed a naming system and brought all users onboard with keeping files organized. Our backup disks were cataloged with commercial software called CDFinder. Any file could be retrieved from (offline) disk quickly so long as it had a label on it. 15 years later, that system of disk naming and backup is still a cornerstone of keeping over 10,000 disks (CD/DVD) containing over 33 terabytes and 5 million files neatly organized and easily accessible in the Prepress department.

 

Project Management Philosophy:
(by no means a complete list) 

  • Deadlines give a project a goal and instill urgency.
  • Project goals must be established at the outset and enumerated as much as possible before work starts.
  • Unrealistic or impossible deadlines can undermine any attempt at a successful project (usually by way of morale not necessarily project completion)
  • Brainstorming, future planning, and conceptual scenario planning help to avoid pitfalls before committing a path. Working out problem scenarios and use-scenarios in a meeting is easier than getting surprised after a software rollout occurs.
  • Knowledge of the end-user's needs, current workflow, and work duties are essential to any programmer or project manager. Software or workflow that does not take into account user input and feedback becomes a wasted opportunity for real improvement.
  • Nothing can take the place of beta testing and user feedback.
  • Rushing a software implementation before it is done ultimately does more harm than good. Deadline rollout must be flexible in the face of significant bugs or fundament workflow problems/misunderstandings.
  • Thorough training via live presentations is best. Videos are a fine resource but can't take the place of a live Q-n-A session.
  • A successful project will have a project manager that can give it his/her full attention.