Enterprises are made up of individual people.
- When you're building solutions, keep in mind that you're building your tools for peoples' benefit.
Workflow strategies
Take advantage of strengths
- Use the right tool for the job you're working on
- If all you have is a hammer, all your problems look like nails.
In reality, only part of the problems you're trying to solve will be nails.
Make your workflow modular
- Design your workflows so that different modules are being connected together to do the job.
- Enable repurposing, adaptation and expansion.
Code re-use is a good thing.
Optimize your workflow
Problems will always appear in a enterprise workflow. Anticipate the issues and optimize your automated solution's workflows
- Eliminate bottlenecks
- Reduce repetition
- Remove complexity / confusion
Design your workflows for your users
- People will avoid complex solutions, they won't like using them if they're hard to understand or operate.
- People will use convenient solutions, all the time.
Pursue inclusion
Success uses AND (inclusion) conditions, not OR (exclusion).
In Apple's case, AND is embraced by finding places where iOS AND OS X can work together smoothly.
OS X's automation technologies:
- AppleScript / AppleScriptObjectiveC
- Javascript for Automation (JXA)
- Automator
- Unix shells / Python / Python / Ruby
Enterprise Automation Scenarios
Scenario 1 - Workgroup Image Repository
Scenario 2 - Automating document creation
Scenario 3 - Automating setup of iOS devices
Workgroup Image Repository
Set up Photos.app on a Mac to house all photos needed for a particular project. All devices associated with working on this project must be able to add their images to this central repository.
Technologies used:
File Sharing (SMB/AFP) - allows Macs and Windows computers to connect to the Photos.app Mac
AirDrop - allows iOS devices to connect to the Photos.app Mac
Automator and Folder Actions
Folder Actions needed
1. For the write-only ~/Public/Dropbox folder available via File Sharing - folder action imports newly-added files into Photos.app
2. For the ~/Downloads folder available via AirDrop - folder action imports newly-added files into Photos.app
3. Folder action to auto-accept the AirDrop authorization dialog
Folder Actions available via https photosautomation dot com
Automating document creation
Create a workflow that automatically creates a Keynote document that uses information from selected documents and AirDrops the presentation to an iOS device.
Watch the video for the demo, I don't think I'll be able to explain the various interactions well.
AppleScript and Automator actions & workflows available via https iworkautomation dot com
Automating setup of iOS devices
Two kinds of deployments
- One-to-one
- Shared-use
One-to-one
Automated setup and provisioning can be handled by the following:
- Device Enrollment Program (DEP)
- Volume Purchase Program (VPP)
Shared-use
Apple Configurator can handle automated setup and provisioning for shared-use devices. Can manage dozens of devices at once and provide management for hundreds of devices.
New version of Apple Configurator now available, Apple Configurator 2.0
IT should have the knowledge needed to manage iOS devices using Apple Configurator. However, often the folks who need to work with or manage some or all their devices aren't in IT.
"Accidental Administrators" - non-IT folks who get charged with handling IT tasks, like configuring iOS devices
Apple Configurator 2.0 includes Automator support. Watch video to see the various Automator actions available.
Note: When building your applications for people, make sure to include dialogs to keep the user informed and in the loop. For example, have a "I'm going to do X, is it OK to do it?" confirmation message at the beginning of an automation workflow, then have a "OK, all done." message at the end of the process.
Create easy-to-use configuration tools for your "Accidental Administrators"
- Integrated Automator actions support modular workflow design
- Save workflows to system-wide Script Menu
Another option here may be building an Automator application
Customization via an integrated Script Library
- - AppleScript
- - JavaScript for Automation (JXA)
Automator actions for Apple Configurator available via https configautomation dot com
Online resources mentioned during the session:
Photos.app automation - https photosautomation dot com
Apple Configuration automation - https configautomation dot com
iWork app automation - https iworkautomation dot com
General OS X automation resources - https macosxautomation dot com