diff --git a/src/compatibility/cts-intro.md b/src/compatibility/cts-intro.md
index 5cc5240..c9550df 100644
--- a/src/compatibility/cts-intro.md
+++ b/src/compatibility/cts-intro.md
@@ -38,9 +38,15 @@
 
 1. For CTS 2.1 R2 and beyond, setup your device (or emulator) to run the accessibility tests:
 
-    a. adb install -r android-cts/repository/testcases/CtsDelegatingAccessibilityService.apk
+    2. adb install -r android-cts/repository/testcases/CtsDelegatingAccessibilityService.apk
 
-    a. On the device, enable Settings > Accessibility > Accessibility > Delegating Accessibility Service
+    2. On the device, enable Settings > Accessibility > Accessibility > Delegating Accessibility Service
+
+1. For CTS 2.3 R4 and beyond, setup your device to run the device administration tests:
+
+    2. adb install -r android-cts/repository/testcases/CtsDeviceAdmin.apk
+
+    2. On the device, enable all the android.deviceadmin.cts.* device administrators under Settings > Location & security > Select device administrators
 
 1. Launch the CTS. The CTS test harness loads the test plan onto the attached devices. For each test in the test harness:
 
diff --git a/src/compatibility/downloads.md b/src/compatibility/downloads.md
index 503f761..9f7b811 100644
--- a/src/compatibility/downloads.md
+++ b/src/compatibility/downloads.md
@@ -26,7 +26,7 @@
 Android 2.3 is found in the 'gingerbread' branch in the open-source tree.
 
 - [Android 2.3 Compatibility Definition Document (CDD)](2.3/android-2.3.3-cdd.pdf)
-- [Android 2.3 R3 Compatibility Test Suite (CTS)](http://dl.google.com/dl/android/cts/android-cts-2.3_r3-x86.zip)
+- [Android 2.3 R5 Compatibility Test Suite (CTS)](http://dl.google.com/dl/android/cts/android-cts-2.3_r5-x86.zip)
 
 ## Android 2.2 ##
 
@@ -35,7 +35,7 @@
 open-source tree.
 
 - [Android 2.2 Compatibility Definition Document (CDD)](2.2/android-2.2-cdd.pdf)
-- [Android 2.2 R6 Compatibility Test Suite (CTS)](http://dl.google.com/dl/android/cts/android-cts-2.2_r6-x86.zip)
+- [Android 2.2 R7 Compatibility Test Suite (CTS)](http://dl.google.com/dl/android/cts/android-cts-2.2_r7-x86.zip)
 
 ## Android 2.1 ##
 
diff --git a/src/source/building-devices.md b/src/source/building-devices.md
index f47de4e..f298e5a 100644
--- a/src/source/building-devices.md
+++ b/src/source/building-devices.md
@@ -117,9 +117,9 @@
 
 Device   | Branch           | Build configuration
 ---------|------------------|------------------------
-crespo   | android-2.3.4_r1 | full_crespo-userdebug
-crespo4g | gingerbread      | full_crespo4g-userdebug
-passion  | android-2.3.4_r1 | full_passion-userdebug
+crespo   | android-2.3.5_r1 | full_crespo-userdebug
+crespo4g | android-2.3.5_r1 | full_crespo4g-userdebug
+passion  | android-2.3.5_r1 | full_passion-userdebug
 sapphire | android-2.2.2_r1 | full_sapphire-userdebug
 dream    | android-2.2.2_r1 | full_dream-userdebug
 
@@ -162,6 +162,7 @@
 2.3.2 (GRH78C)  | I9020XXJK1           | I9020XXJK8
 2.3.3 (GRI40)   | I9020XXKA3           | I9020XXKB1      | All previous versions
 2.3.4 (GRJ22)   | I9020XXKA3           | I9020XXKD1      | All previous versions
+2.3.5 (GRJ90)   | I9020XXKA3           | I9020XXKF1      | All previous versions
 
 Nexus S (850MHz version "UC"):
 
@@ -169,6 +170,7 @@
 ----------------|----------------------|-----------------|--------------
 2.3.3 (GRI54)   | I9020XXKA3           | I9020UCKB2
 2.3.4 (GRJ22)   | I9020XXKA3           | I9020UCKD1      | All previous versions
+2.3.5 (GRJ90)   | I9020XXKA3           | I9020UCKF1      | All previous versions
 
 Nexus S (Korea version "KR"):
 
@@ -176,6 +178,7 @@
 ----------------|----------------------|-----------------|--------------
 2.3.3 (GRI54)   | I9020XXKA3           | I9020KRKB3
 2.3.4 (GRJ22)   | I9020XXKA3           | M200KRKC1       | All previous versions
+2.3.5 (GRJ90)   | I9020XXKA3           | M200KRKC1       | All previous versions
 
 Nexus S 4G:
 
@@ -183,6 +186,7 @@
 ----------------|----------------------|-----------------|--------------
 2.3.4 (GRJ06D)  | D720SPRKC5           | D720SPRKC9
 2.3.4 (GRJ22)   | D720SPRKC5           | D720SPRKD8      | All previous versions
+2.3.5 (GRJ90)   | D720SPRKC5           | D720SPRKE5      | All previous versions
 
 If you're building a new version of Android, if your Nexus S or Nexus S 4G has
 an older bootloader and radio image that is marked as being also possible in
diff --git a/src/source/developing.md b/src/source/developing.md
new file mode 100644
index 0000000..042ec6a
--- /dev/null
+++ b/src/source/developing.md
@@ -0,0 +1,42 @@
+<!--
+   Copyright 2011 The Android Open Source Project
+
+   Licensed under the Apache License, Version 2.0 (the "License");
+   you may not use this file except in compliance with the License.
+   You may obtain a copy of the License at
+
+       http://www.apache.org/licenses/LICENSE-2.0
+
+   Unless required by applicable law or agreed to in writing, software
+   distributed under the License is distributed on an "AS IS" BASIS,
+   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+   See the License for the specific language governing permissions and
+   limitations under the License.
+-->
+
+# Development Tips and Tricks #
+
+A collection of helpful tricks and available facilities for developing
+the platform code.  This tips assume that you are working with an eng
+or userdebug build of the platform, not on a production device.
+
+## Debugging Native Memory Use ##
+
+Android's native memory allocator has some useful debugging features.  You
+can turn on memory tracking with:
+
+      $ adb shell setprop libc.debug.malloc 1
+      $ adb shell stop
+      $ adb shell start
+
+You need to restart the runtime so that zygote and all processes launched from
+it are restarted with the property set.  Now all Dalvik processes have memory
+tracking turned on.  You can look at these with DDMS, but first you need to
+turn on its native memory UI:
+
+  - Open ~/.android/ddms.cfg
+  - Add a line "native=true"
+
+Upon relaunching DDMS and selecting a process, you can switch to the new
+native allocation tab and populate it with a list of allocations.  This is
+especially useful for debugging memory leaks.
diff --git a/src/source/sidebar.md b/src/source/sidebar.md
index 4a9f797..373db15 100644
--- a/src/source/sidebar.md
+++ b/src/source/sidebar.md
@@ -26,6 +26,7 @@
     - [Git Resources](git-resources.html)
 - [Using Eclipse](using-eclipse.html)
 - [Code Style Guidelines](code-style.html)
+- [Development Tips and Tricks](developing.html)
 - [FAQs](/faqs.html)
 
 
diff --git a/src/tech/bluetooth/index.md b/src/tech/bluetooth/index.md
deleted file mode 100644
index 2f5d459..0000000
--- a/src/tech/bluetooth/index.md
+++ /dev/null
@@ -1,23 +0,0 @@
-<!--
-   Copyright 2011 The Android Open Source Project 
-
-   Licensed under the Apache License, Version 2.0 (the "License"); 
-   you may not use this file except in compliance with the License.
-   You may obtain a copy of the License at
-
-       http://www.apache.org/licenses/LICENSE-2.0
-
-   Unless required by applicable law or agreed to in writing, software
-   distributed under the License is distributed on an "AS IS" BASIS,
-   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-   See the License for the specific language governing permissions and
-   limitations under the License.
--->
-
-# Bluetooth Technical Information #
-*Placeholder*
-
-The Android Open-Source Project includes a bluetooth subsystem currently based
-on the upstream bluez project. Android then layers various IPC and similar
-libraries to link the bluez library with the Android Bluetooth stack and API.
-
diff --git a/src/tech/encryption/android_crypto_implementation.md b/src/tech/encryption/android_crypto_implementation.md
index 4e7b733..f3de9da 100644
--- a/src/tech/encryption/android_crypto_implementation.md
+++ b/src/tech/encryption/android_crypto_implementation.md
@@ -54,7 +54,7 @@
     "setprop vold.post_fs_data_done 1".
 
 
-## How Adroid encryption works
+## How Android encryption works
 
 Disk encryption on Android is based on dm-crypt, which is a kernel feature that
 works at the block device layer.  Therefore, it is not usable with YAFFS, which
diff --git a/src/tech/index.md b/src/tech/index.md
index cdcaac0..9bf5867 100644
--- a/src/tech/index.md
+++ b/src/tech/index.md
@@ -30,24 +30,6 @@
 [&raquo; Dalvik Information](/tech/dalvik/index.html)
 
 
-## Bluetooth Technical Information ##
-The Android Open-Source Project includes a bluetooth subsystem currently based
-on the upstream bluez project. Android then layers various IPC and similar
-libraries to link the bluez library with the Android Bluetooth stack and API.
-
-[&raquo; Bluetooth Information](/tech/bluetooth/index.html)
-
-
-## NFC Technical Information ##
-The Android Open-Source Project also includes an NFC implementation. Unlike
-the Android Bluetooth stack, much of the Android NFC stack is new code
-originally contributed to the Android Open-Source Project. This code links the
-Android NFC API to a device's NFC hardware. This section also includes
-information on related Android technologies, such as the simple NDEF Push
-Protocol.
-
-[&raquo; NFC Information](/tech/nfc/index.html)
-
 ## Encryption Technical Information ##
 The Android Open-Source Project includes the ability to encrypt the user's data.
 This document is written for 3rd parties developing Android devices who want to
diff --git a/src/tech/nfc/index.md b/src/tech/nfc/index.md
deleted file mode 100644
index 94a41dd..0000000
--- a/src/tech/nfc/index.md
+++ /dev/null
@@ -1,25 +0,0 @@
-<!--
-   Copyright 2010 The Android Open Source Project 
-
-   Licensed under the Apache License, Version 2.0 (the "License"); 
-   you may not use this file except in compliance with the License.
-   You may obtain a copy of the License at
-
-       http://www.apache.org/licenses/LICENSE-2.0
-
-   Unless required by applicable law or agreed to in writing, software
-   distributed under the License is distributed on an "AS IS" BASIS,
-   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-   See the License for the specific language governing permissions and
-   limitations under the License.
--->
-
-# NFC Technical Information #
-*Placeholder*
-
-The Android Open-Source Project also includes an NFC implementation. Unlike
-the Android Bluetooth stack, much of the Android NFC stack is new code
-originally contributed to the Android Open-Source Project. This code links the
-Android NFC API to a device's NFC hardware. This section also includes
-information on related Android technologies, such as the simple NDEF Push
-Protocol.
diff --git a/src/tech/sidebar.md b/src/tech/sidebar.md
index d1d6dbb..b770eb8 100644
--- a/src/tech/sidebar.md
+++ b/src/tech/sidebar.md
@@ -1,5 +1,3 @@
 # Topics #
-- [Bluetooth](/tech/bluetooth/index.html)
 - [Dalvik](/tech/dalvik/index.html)
 - [Encryption](/tech/encryption/index.html)
-- [NFC](/tech/nfc/index.html)
