u16suzuの blog

日々学んだことのメモブログです。

2014-01-01から1年間の記事一覧

NSDateを GMT+9 で表示する

NSDateFormatter *f = [NSDateFormatter new]; f.timeZone = [NSTimeZone timeZoneWithAbbreviation:@"JST"]; f.dateFormat = @"yyyy/MM/dd HH:mm:ss Z"; NSLog( @"%@", [f stringFromDate:[NSDate date]] );

定数にstructを使う

ヘッダファイル extern const struct LocalNotificationAttributes { __unsafe_unretained NSString *weeklyWork; } LocalNotificationAttributes; mファイル const struct LocalNotificationAttributes LocalNotification = { .weeklyWork = @"LocalNotific…

画像ファイルの名前に @2x をつけるスクリプト

# rename.rb # ex. hoge.png => hoge@2x.png require 'pathname' require 'fileutils' Dir.entries('.').each do |entry| if Pathname(entry).extname == '.png' FileUtils.mv entry , Pathname(entry).sub_ext('@2x.png') end end

Mechanizeから投稿

Mechanizeから投稿しました。

プロセスをバックグラウンドにするコマンド

vimとか微妙に重いので ctrl+z をたまにつかう ctrl+z : 実行中のプロセスがサスペンドになる fg : サスペンドしたプロセスを実行する bg : サスペンドしたプロセスをバックグラウンドで動かす jobs : プロセスリストを表示する & : バックグラウンドで動か…

json形式のファイルからインポートする

rails admin だと json形式でエクスポートできるけど, インポートはできない. s = File.read("./site.json", :encoding => Encoding::UTF_8) JSON.parse( s ).each { |elem| s = Site.new(elem); s.save }

Rubyの変数 Ruby variable

ローカル変数 hoge インスタンス変数 @hoge クラス変数 @@hoge グローバル変数 $hoge

deploy時にマイグレーションもする

deploy時にマイグレーションもする. $ be cap deploy:migrations これをやらないと unicorn の restart が必要になってしまうので DBスキーマ更新するときはやった方が良い.

単語単位で削除する

zsh

.zshrc bindkey "^w" backward-kill-word # ctrl+w で 1単語削除

.ssh/config を編集するコマンドを追加する

以下をzshrc に追加する sub は sublime text の起動コマンド alias editssh="sub ~/.ssh/config"

キャッシュをクリアする

Rails コンソールで memcached とかのキャッシュをクリアする方法 ActionController::Base.cache_store.clear ではなくて Rails.cache.clear をつかう. どっちでもクリアできるけど, 前者を使ってしまうとすごく遅い.

diff コマンドと patch コマンドを使ってみた

diffのみかた $ cat hoge.txt 1 3 4 $ cat fuga.txt 1 2 3 4 $ diff hoge.txt fuga.txt 2c2 < --- > 2 1つめのファイル : hoge.txt 2つめのファイル : fuga.txt hoge.txt の2行目を fuga.txtの2行目 にchange する. < : 前のファイルに追加 > : 後のファイル…

HTTPのステータスコード

2XX : 成功 200 : OK 201 : Created 204 : No Content 3XX : リダイレクション 4xx : Client Error クライアントエラー 400 : Bad Request リクエストが不正 定義されていないメソッドを使うなど、クライアントのリクエストがおかしい場合に返される。 401 :…

macにVagrantをインストールしてみる

Vagrantは VirtualBox をCUI からつかえるようにするツール 方法 VirtualBoxをダウンロードしてインストール https://www.virtualbox.org/wiki/Downloads Vagrant をダウンロードしてインストール http://www.vagrantup.com/downloads.html インストールでき…

素のRackを使ってみる

simpleapp.rb class Hoge def call(env) [200, {"Content-Type" => "text/plain"}, ["Hello, world!"] ] end end simpleapp.ru require './simpleapp' run Hoge.new 起動すると Rails でおなじみの WEBrickが起動する. ポート番号は 9292 $ gem install rack…

drb ( Distributed Ruby) のスパイク

server.rb require 'drb' obj = ["drb", "server", "dog", "cat", "rat"] DRb.start_service( "druby://localhost:8787", obj ) DRb.thread.join client.rb require 'drb' DRb.start_service obj = DRbObject.new_with_uri("druby://localhost:8787") obj.ea…

Ruby でマルチスレッドプログラミングなど

Threadを1つ th = Thread.fork do p 33 end th.join Threadを複数 count = 3 count.times.map do |i| Thread.fork do p i end end.each(&:join) Process pid = fork do p 'Process fork' end exitpid, status = *Process.waitpid2(pid) Fiber Fiber とはThre…

アプリが初回起動かをチェックするメソッド

- (BOOL)isFirstLaunch{ NSUserDefaults*ud = [NSUserDefaults standardUserDefaults]; NSString *key = @"isAlreadyLaunched"; NSString *res = [ud objectForKey:key]; if(! [res isEqual:@"Yes"]){ [ud setObject:@"Yes" forKey:key]; [ud synchronize]; …

github のコメント略語

MUST : 必ず直すべき IMO : 自分なら直すけどどう? 緩やかな指摘(In my opinion) IMHO : 丁寧なIMO (In my humble opinion) nits : 細かい指摘(nitspick)

FactoryGirlsメモ

FactoryGirl.build(:user) : オブジェクト生成のみ. DBに保存しない. FactoryGirl.create(:user) : オブジェクトを生成し, かつDBに保存する. 参考 http://o.inchiki.jp/obbr/159#toc_8 http://blog.livedoor.jp/sasata299/archives/51931175.html

Railsのログについてのメモ

カスタムロガーを作ってそこに出力する 以下の方法で専用のログファイルを作成し、そこに出力させることができる configの production.rb に追記 config.hoge_logger = Logger.new( 'log/hoge.log', 'daily' ) ログをとりたい部分に追記する。 タイムスタンプ…

[cui] カレントジョブをバックグラウンドにする

ctrl+z : fore ground jobを back groundにする fg : 最後にバックグラウンドにした jobを fore groundにする fg JOB_ID : 指定した job を fore groundにする jobs : jobの一覧を表示. JOB_IDを確認できる

Create json from hash with using Ruby

require 'json/pure' h = {'dog'=> 'bow', 'cat'=> 'meow'} puts JSON.pretty_generate(h)

sizeToFit

ios

ビュー自身のsizeをコンテンツのサイズにあわせる. [self sizeToFit];

横浜へなちょこiOS勉強会#30 に行ってきました.

昨日 2014/1/25(土) にミューザ川崎にて横浜へなちょこiOS勉強会#30が開催されまして, 久しぶりの勉強会に行ってきました. メインの発表は次のようなものでした. Xcodeと自作スクリプトについてのTIPSなど(@haranicleさん) こちらの記事の補足みたいな感じで…

TestFlightのMacクライアントが有能だというお話

TestFlightのクライアントアプリを入れて起動しておくと, Xcodeでアーカイブしたときに自動で検出してくれます. TestFlight's Desktop App http://www.testflightapp.com/desktop アーカイブ後ノーティフィケーションセンターでポップアップが出現するので, …