Convert from binary to negabinary
APL, 21 characters
'01'[-(16/¯2)⊤-2⊥⍎¨⍞]

I used Dyalog APL for this, with ⎕IO set to 0, allowing us to index arrays starting at 0 rather than 1.
Explanation, from right to left:

⍞ gives us the user's input as a character vector.
⍎¨ applies the execute function (⍎) to each (¨) of the aforementioned characters, resulting in a vector of integer 1's and 0's.
2⊥ decodes the vector from base 2 into decimal.
- negates the resulting decimal integer.
(16/¯2)⊤ encodes the decimal integer into base ¯2 (negative 2). (16/¯2 replicates ¯2, 16 times, yielding 16 digits in our negabinary number.)
- negates each element of our newly encoded number (before this, it consists of -1's and 0's), so that we can use it to index our character vector.
'01'[ ... ] indexes the character array ('01') using the 0's and 1's of the negated negabinary vector. This is so we get a prettier output.

Example:
      '01'[-(16/¯2)⊤-2⊥⍎¨⍞]
10111010001
0001101011010001