銀行定存 零存整付、整存整付、存本取息 的差別

銀行的定期存款(定存),主要的需求是這幾種:

  1. 一筆金額存款,到期後領取比較高的利息
  2. 固定時間扣款固定金額進入定存,到期後一次領回(強迫儲蓄)
  3. 若是想靠利息養老,也有每個月固定領息的功能

但是銀行在網路銀行要設定定存時,會看到三~四個名詞,如下述:

  • 整存整付
  • 零存整付
  • 整存零付
  • 存本取息

到底這四個名詞是什麼意思?

閱讀全文〈銀行定存 零存整付、整存整付、存本取息 的差別〉

MySQL InnoDB 遇到 ./ib_logfile0 is of different size 5242880 bytes 修復

MySQL 使用 Innobackupex 來做備份,詳見此篇:使用 Percona innobackupex 備份 與 還原 MySQL

執行下述命令:

  • $ sudo innobackupex --user=root --password=password /home/user/2017-01-01/

出現下述錯誤訊息:

InnoDB: Error: log file ./ib_logfile0 is of different size 5242880 bytes

註:原始 DB 是 Debian 預設的 MySQL

修復方式如下步驟:

  1. vi /etc/mysql/my.cnf # 增加 innodb_log_file_size 的參數即可
    [mysql]
    innodb_log_file_size=5M
  2. /etc/init.d/mysql reload
  3. 再來 innobackupex 就可以正常執行了

關掉 Pylint 一些特定 Warning 的檢查

依照此篇Syntastic:Vim 存檔自動做「語法檢查」的外掛套件設定完成 Python 的存檔自動檢查(使用 Pylint)。

但是 pylint 預設的檢查很多,在只有打算寫個三行的測試程式來說,會出現很多 warning(ex: 沒有 main().. 等等),這種檢查反而會造成麻煩,要如何將這些檢查關掉呢?

閱讀全文〈關掉 Pylint 一些特定 Warning 的檢查〉

Syntastic:Vim 存檔自動做「語法檢查」的外掛套件

每次在寫完部份段落的程式後,都會需要執行看看有沒有 syntax error,看有沒有漏了 {} 之類等等的問題。

Vim 想要在每次存檔時,自動執行 syntax check 可以使用 Syntastic 的外掛套件來達成。

註:此篇 Syntastic 的設定範例是使用 PHP 和 Python

閱讀全文〈Syntastic:Vim 存檔自動做「語法檢查」的外掛套件〉

Google 開源 Guetzli 對 JPEG 壓縮的演算法

Google 釋出新的對 JPEG 壓縮的演算法,比現有的壓縮在省下 35% 的容量,而且維持現有的清晰度。

註:缺點是壓縮需要的時間比較久 (我的測試最少要 3倍以上的時間)

閱讀全文〈Google 開源 Guetzli 對 JPEG 壓縮的演算法〉

簡訊認證不再安全 建議改用 App OTP 認證

現在做身份確認,常常會使用簡訊來認證,這個已經被認定不是安全的作法,建議改用 App OTP 的認證方式比較安全。

閱讀全文〈簡訊認證不再安全 建議改用 App OTP 認證〉

PHP 於 CLI 單行直接執行的用法

PHP 想要像 Perl、Python 可以單行執行,或者是 cat、tail -f 持續餵資料給程式接收,要怎麼做呢?

範例取自:Decoding URL encoding (percent encoding)

  1. alias urldecode='python -c "import sys, urllib as ul; print ul.unquote_plus(sys.argv[1])"'
  2. alias urlencode='python -c "import sys, urllib as ul; print ul.quote_plus(sys.argv[1])"'
  3. urldecode 'q+werty%3D%2F%3B'
    • q werty=/;
  4. $ urlencode 'q werty=/;'
    • q+werty%3D%2F%3B

閱讀全文〈PHP 於 CLI 單行直接執行的用法〉