Adding a slightly reorganized version of skyler's revamped s.a.c.
Change-Id: I19439883c25d887fa4409b33a70c235af3a78eaf
diff --git a/src/source/build-numbers.md b/src/source/build-numbers.md
new file mode 100644
index 0000000..b3e3836
--- /dev/null
+++ b/src/source/build-numbers.md
@@ -0,0 +1,70 @@
+# Codenames, Tags, and Build Numbers #
+
+At a high level, Android development happens around families of
+releases, which use code names ordered alphabetically after tasty
+treats.
+
+The code names match the following version numbers, along with
+API levels and NDK releases provided for convenience:
+
+Code name | Version | API level
+---------------|---------|------------
+(no code name) | 1.0 | API level 1
+(no code name) | 1.1 | API level 2
+Cupcake | 1.5 | API level 3, NDK 1
+Donut | 1.6 | API level 4, NDK 2
+Eclair | 2.0 | API level 5
+Eclair | 2.0.1 | API level 6
+Eclair | 2.1 | API level 7, NDK 3
+Froyo | 2.2.x | API level 8, NDK 4
+Gingerbread | 2.3.x | API level 9, NDK 5
+
+Starting with Cupcake, individual builds are identified with a short
+build code, e.g. FRF85B. The first letter is the code name of the
+release family, e.g. F is Froyo. The second letter is a branch code
+that allows Google to identify the exact code branch that the build
+was made from, and R is by convention the primary release branch.
+The next letter and two digits are a date code. The letter counts
+quarters, with A being Q1 2009. Therefore, F is Q2 2010. The two
+digits count days within the quarter, so F85 is June 24 2010.
+Finally, the last letter identifies individual versions related to
+the same date code, sequentially starting with A; A is actually
+implicit and usually omitted for brevity. The date code is not
+guaranteed to be the exact date at which a build was made, and it is
+common that minor variations added to an existing build re-use the
+same date code as that existing build.
+
+Starting with Donut, the exact list of tags and builds is in the
+following table:
+
+Build | Tag | Notes
+-------|--------------------|-----------------------------------
+DRC83 | android-1.6_r1.1 earliest Donut version, ADP1, ADP2
+DRC92 | android-1.6_r1.2
+DRD08 | android-1.6_r1.3
+DRD20 | android-1.6_r1.4
+DMD64 | android-1.6_r1.5 | latest Donut version
+ESD20 | android-2.0_r1 | earliest Eclair version
+ESD56 | android-2.0.1_r1
+ERD79 | android-2.1_r1 | Nexus One
+ERE27 | android-2.1_r2 | Nexus One
+EPE54B | android-2.1_r2.1p | Nexus One
+ESE81 | android-2.1_r2.1s
+EPF21B | android-2.1_r2.1p2 | latest Eclair version
+FRF85B | android-2.2_r1 | earliest Froyo version, Nexus One
+FRF91 | android-2.2_r1.1 | Nexus One
+FRG01B | android-2.2_r1.2
+FRG22D | android-2.2_r1.3
+FRG83 | android-2.2.1_r1 | Nexus One
+FRG83D | android-2.2.1_r2 | Nexus One
+FRG83G | android-2.2.2_r1 | latest Froyo version, Nexus One
+GRH55 | android-2.3_r1 | earliest Gingerbread version, Nexus S
+GRH78 | android-2.3.1_r1 | Nexus S
+GRH78C | android-2.3.2_r1 | latest Gingerbread version, Nexus S
+
+The branches donut, eclair, froyo, gingerbread represent development
+branches that do not exactly match configurations that were tested
+by Google. They might contain a variety of changes in addition to
+the official tagged releases, and those haven't been as thoroughly
+tested.
+