Skip to content

Design Principles

Kristov Atlas edited this page Jul 11, 2016 · 4 revisions

This document outlines some goals for this project that should be adhered to (or amended) with proposed changes.

  1. The tool should be easy for all OS X users to run.
  • The execution environment must be packaged with the operating system (currently: Python).
  • Users should not be required to import new libraries in order to use the tool.
  1. Security configurations should not cripple commonly used functionality without offering alternatives, unless commonly exploited in the wild.
  • For example, disabling Bluetooth is a positive change to security, but not currently disabled by default due to common use and rarity of exploitation.
  1. The intended audience of this tool is average OS X users, as well as small business/enterprise users. Medium sized business and up may find this useful but already have some more mature options available via professional network administrators.
  2. The security of the tool should be easy to audit.
  • It should be written in languages commonly understood by open source code reviewers.
  • It should avoid using obscure language constructions, or other constructions that lend themselves to underhanded code.
Clone this wiki locally