Android programming's ups and downs