2016/05/28

"Gradle version x.xx is required" が出たときの対処方法

[Android Studio](https://developer.android.com/studio/index.html) を 2.1.1 にしたら以下のように [Android Gradle Plugin](https://developer.android.com/studio/releases/gradle-plugin.html) のアップデートを促すダイアログが。
2016/05/16

Chrome 間でブックマーク等の同期が出来なくなった場合の対処方法

自分用メモ

Chrome の[同期機能](https://support.google.com/chrome/answer/165139?hl=ja)がうまく動かなかったら、
[Chrome Sync](https://www.google.com/settings/chrome/sync) にアクセスして「同期をリセット」してみると良い。

その後、Chrome の設定からログインし直す。
2016/05/13

Emacs で日本語を保存しようとすると "undecided-unix cannot encode" というエラーが出るようになったので修正してみた

### 日本語のメッセージ保存でエラー
私は [Git](https://git-scm.com/) のエディタとして [Emacs](https://www.gnu.org/software/emacs/) を使用しています。  
つい最近まで問題なく使用していたのですが、ここ最近、日本語(マルチバイト)のメッセージを保存しようとすると以下のようなエラーが出るようになってしまいました。  
都度、コーディングシステムを指定すれば保存は出来るのですが、不便なので原因を探ってみました。

2016/04/24

Python の FTP_TLS で "522 Data connections must be encrypted." というエラーが出たら

login の後に `FTP_TLS.prot_p()` を呼ぶ
```python
from ftplib import FTP_TLS

ftp = FTP_TLS(site, user, password)
try:
    ftp.prot_p()
    # 何か処理
finally:
    ftp.quit()
```
2016/04/21

Python 3 で配列の型を一括変換する方法

自分のための備忘録として (for Python 3動作確認は Python 3.4.3)

以下のような文字列配列を `int` に変更する
```python
>>> data
['12', '345', '6789']
```

### map を使う方法
```python
>>> list(map(int, data))
[12, 345, 6789]
```
Python 3.1 より以前は `list()` は必要ないので注意。
> 参考  
> [Python3でmapがmap objectを返す(ようになった)件 | swimmingpython blog](http://swimmingpython.net/ja/?p=565)

### リスト内包表記List Comprehensionsを使う方法
```python
>>> [ int(x) for x in data]
[12, 345, 6789]
```