カテゴリー : 2014年 2月

[iOS] The binary you uploaded was invalid. The key CFBundleVersion in the Info.plist file must contain a higher version than that of the previously uploaded version.

iPhoneアプリを修正して、新しいバージョンを App Store へ申請しようとしたところ、下記のようなエラーが発生しました。

The binary you uploaded was invalid. The key CFBundleVersion in the Info.plist file must contain a higher version than that of the previously uploaded version.

invalid_CFBundleVersion

前に申請したバージョンよりも Build version を大きくする必要があり、それのバリデーションに引っ掛かったようでした。


参考情報

Basuke's Blog: AppStoreのバージョン番号ではまる

1週間ハードワークして見えてきたこと

今週は意識して、いつもよりガッツリ仕事してみました。

就業時間

【月】08:00 – 23:10
【火】12:30 – 23:00, 23:45 – 0:30
【水】09:30 – 20:00, 23:00 – 1:00
【木】09:30 – 23:00, 0:00 – 3:30
【金】09:00 – 20:00

火曜日は健康診断があったので始業開始が若干遅めですが、それ以外の曜日は普段より長めに働きました。

「オレ、モットハタライテルゼ」とかいう意見は知らない。あくまで普段の自分との比較なので。

ハードワークしてみた感想

  • 1日ガッツリ仕事すれば結構、色々できる
  • ガッツリ仕事するとTwitter、はてブを見る時間がほぼ無くなる
  • インプットが減った
  • 朝早めに出社するのは余裕ができて良い
  • 飛ばし過ぎると週後半がキツイ
  • 長時間働く前提で、仕事を進めるので詰め込みすぎて余裕がなかった
  • 長時間働くと疲れてきて、無駄が色々と見えてくる

などなど、ハードワークしてみたことで気付きが得れました。

特に、「ここは早いところ改善しとかないとDEVチーム的に負債だな」ってことが、この1週間で分かったので来週は気になったコトを1つずつ潰していきたいです。

はい。

[Node.js][node-csv] Error: Invalid closing quote at line 1; found ” ” instead of delimiter “\t”

Node.js で使える CSV Parser node-csv でタブ区切りテキストの中にダブルクオーテーション ” を含めていたら下記のようなエラーが発生しました。

wdavidw/node-csv

Error: Invalid closing quote at line 1; found " " instead of delimiter "\t"
  at [object Object].Parser.write (/u/apps/com/shared/node_modules/csv/lib/parser.js:104:29)
  at [object Object].CSV.write (/u/apps/com/shared/node_modules/csv/lib/index.js:275:17)
  at write (_stream_readable.js:583:24)
  at flow (_stream_readable.js:592:7)
  at ReadStream.pipeOnReadable (_stream_readable.js:624:5)
  at ReadStream.EventEmitter.emit (events.js:92:17)
  at emitReadable_ (_stream_readable.js:408:10)
  at emitReadable (_stream_readable.js:404:5)
  at readableAddChunk (_stream_readable.js:165:9)
  at ReadStream.Readable.push (_stream_readable.js:127:10)
  at onread (fs.js:1561:12)
  at Object.wrapper [as oncomplete] (fs.js:454:17)

一部、手動で作成したCSVファイルだったので、ダブルクオーテーションを消して解決しました。


参考情報

double quotes in a tab-delimited file throws error · Issue #46 · wdavidw/node-csv

[JavaScript] 配列の中から最大値 or 最小値を取得する

JavaScript で、配列の中から最大値、または最小値を取得するスニペットをメモ。

var arr = [3, 1, 4, 1, 5, 9, 2, 6];
 
// 最大値
Math.max.apply(null, arr);  // → 9
 
// 最小値
Math.min.apply(null, arr);  // → 1

参考情報

【Javascript】配列の値の中から、最大値、最小値を求める(配列を引数に展開する) at softelメモ

[Heroku] Ruby on Rails 4 + Mongoid + MongoHQ で「500 Internal Server Error」

Ruby on Rails 4 + Mongoid + MongoHQ on Heroku という環境で、1stデプロイしたら初っ端から「500 Internal Server Error」に遭遇しました。

エラーログ

 app/web.1:  I, [2014-02-11T01:13:25.785412 #2]  INFO -- : Started GET "/" for 223.132.104.209 at 2014-02-11 01:13:25 +0000 
 app/web.1:  I, [2014-02-11T01:13:25.790612 #2]  INFO -- : Processing by VideosController#index as HTML 
 app/web.1:  I, [2014-02-11T01:13:25.817544 #2]  INFO -- :   Rendered videos/index.html.haml within layouts/application (3.9ms) 
 app/web.1:  I, [2014-02-11T01:13:25.817786 #2]  INFO -- : Completed 500 Internal Server Error in 27ms 
 app/web.1:  F, [2014-02-11T01:13:25.819195 #2] FATAL -- :  
 app/web.1:  ActionView::Template::Error (:consistency is an unknown option. Valid options  :max_retries, :pool_size, :retry_interval, :refresh_interval, :down_interval, :ssl, :timeout, :instrumenter, :auto_discover.): 
 app/web.1:       9:     %th 
 app/web.1:      10:     %th 
 app/web.1:      11:  
 app/web.1:      12:   - @videos.each do |video| 
 app/web.1:      13:     %tr 
 app/web.1:      14:       %td= video.name 
 app/web.1:      15:       %td= video.url 
 app/web.1:    app/views/videos/index.html.haml:12:in `_app_views_videos_index_html_haml___1990342454341184297_70073653532820'

どうやら、conf/mongoid.yml の書き方が良くなかったみたいです。

MongoHQ 向けの動かない conf/mongoid.yml

production:
  sessions:
    default:
      uri: <%= ENV['MONGOHQ_URL'] %>
      options:
        consistency: :strong
        max_retries: 1
        retry_interval: 0

↓ 修正

MongoHQ 向けの正常動作する conf/mongoid.yml

production:
  sessions:
    default:
      uri: <%= ENV['MONGOHQ_URL'] %>

options の何がダメだったのか詳しく追ってないので、時間を見付けて最適なオプションを調べたいです。


参考情報

500 Internal Server Error using MongoLab + Rails 4 + Mongoid on Heroku – Stack Overflow

[Heroku] ログ管理アドオン Papertrail

Heroku でも使えるログ管理アドオン Papertrail を導入してみました。

Heroku

続きを読む

[Heroku] master 以外の branch を git push する方法

Heroku に master branch 以外の branch を git push する方法をご紹介します。

Heroku

git push heroku branch_name:master

以上、Heroku に master branch 以外の branch を git push したい、現場からお送りしました。

[iOS] レビュー依頼は「iRate」、バージョンアップ通知は「iVersion」

ポッドキャスト Rebuild: 29: Rate My App (Naoya Ito) を聴いて、iOSアプリでよく使いそうなライブラリを知りました。

nicklockwood/iRate

nicklockwood/iVersion

レーティング依頼のダイアログ表示は、前に自分で実装したのですけど、そりゃあライブラリありますよね。

何でライブラリ探せなかったんだろう。

レーティング依頼のダイアログ表示はウザいという話もあるので、実際に使うかどうかは考える必要がありますけどね。

[Ruby on Rails 4] group :assets do … end は廃止

Ruby on Rails 4 から Gemfile に group :assets do … end と書くのは廃止になったそうです。

Ruby on Rails | ルビーオンレイルズ

続きを読む

固定IPを使うためにアサヒネットでプロバイダーのみ契約した

固定IPを使うためにアサヒネットでプロバイダーのみ契約しました。

公式サイトからだと、NTT回線やWiMAXと同時契約の導線ばかりで、プロバイダーのみを契約するページが分からなかった。

結局、サポートに問い合わせて教ええてもらいました。オンラインの入会申込窓口は以下からできるそうです。

ASAHIネット : オンライン入会

あと、個人契約だと決済方法はクレジットカードのみで手数料は掛からないのですが、法人契約だと謎の事務手数料が500円掛かるので法人契約するなら割高なので他のプロバイダーでいいかな。

もちろん、法人であってもクレジットカード決済できるそうです。