mosowave

sinamon129による(主に)技術ブログ。Ruby,Ruby on Rails,Elasticsearchやその他について書きます。

sublime textが素敵すぎて乗り換えるかもしれない

ひさびさに。
(フォントがとっても読みにくいので、元にもどしました…w)

sublime textが素敵だという噂をよく聞いていたのですが、
エディタの変更ってなれるの大変><だし。。。
と躊躇していたところで、
ゼミでのアプリケーション開発で、
ゼミメンバーで環境統一仕様って話が。


個人的に統合開発環境は重たくてあまり好かないのと、
(もちろんいいところも沢山あるけど;;)
linuxで使う&emacs,vimなど特にお気に入りがない?メンバーだったので、
sublime textを思い切って入れてみるのはどーかなーと思って、実験がてら。




sublime textってなんぞや
恋に落ちるエディタ”「Sublime Text」 完全入門ガイド!
LIGの記事。ここがわかりやすいw


入門でつかったもの
Sublime Text 2入門(ドットインストール)
基礎は大体ここで網羅してるんじゃないかなー
ひと通りやってみて、魅力はけっこう沢山\(^o^)/



エンジニアだけじゃなくて、デザイナーさんもつかいやすそう。
私はマークアップとかかくときはcodaでやって、プログラム書くときはvimでやってるんだけど、
これだったら一本でよさげ。
プラグインも、パッケージコントロールをいれたら、中で検索できるし、
カラースキーマも最初から選択肢あるし!
(そして私がvimで愛用している、monokaiがデフォルト!!)
設定ファイルもjsonだし。構造もわかりやすい気がする。
あと、見た目がとても素敵。これけっこう大事!!←

まだgitとかがめんどくさくなく使えるようにしていない(というか、ほぼまだカスタマイズしていない)ので、
色々いれてまた記事書こうかしら。

aws RDSに接続できなかった件(´・ω・`)

なんか、DB Security GroupがRDSの左リストにあるよってかいてあるんだけど、
なかった。

なんか、EC2のSecurity Groupみろって、かいてあった。

EC2のSecurity GroupのInboudのmysqlのポートを開けないとつながらない\(^o^)/

そりゃそうだよな……はまりました。。。。

Jenkinsでcsrf対策いれるとドロップダウンリストが一部選択できない(´・ω・`)w

ひっかかったので。
f:id:sinamon129:20130505182049p:plain

ここがどろっぷだうんされるんだけど、選択されなくてこまってたら
グローバルセキュリティ設定のCSRF対策をおんにしてたからだった…
えーーーーーー
オフにしたらちゃんと選択できるようになった。

phpで一日前の日付を取得する

ちょっとひかっかったのでめも。
phpでdate関数を使うと日付が取ってこれますが、一日前の日付や一ヶ月前の日付など、
その日以前以後の日付を使う時の話。

<?php
//タイムゾーン
date_default_timezone_set('Asia/Tokyo');

date("Y-m-d",mktime(0,0,0, date("m"), date("d")-1, date("y")))

date関数について、詳しくは、
http://php.net/manual/ja/function.date.php

mktimeの date("m"), date("d")-1, date("y")の部分を、のm,d,yの部分を並び替えてしまってあれーってなってたんだけど、これはこの順じゃないといけなくて、表示の時の整形はdate("Y-m-d", $date)のかの"Y-m-d"のぶぶんでやるらしい。

見た目が一緒なUTF-8な文字列がなぜか一致しなかったお話

躓いたのでめも。

とあるcsvファイルのあるカラムと、DBにあるテーブルのあるカラム(文字列)が一致していたら、
テーブルのidをとってきてほげほげっていうコードをrubyでかいてた。

hoge.csvの中身
hoge_id,title,hoge,hoge2,hoge3
10,あばばば,あば,あばばば,あばばばば

DBのテーブル
id,title,piyo,piyopiyo,piyoyoyo
1,あばばば,aba,ababbababa,ほげほげ

みたいな(雑だけど

で、titleの部分を一致させたいんだけど、
どう見ても一致するとこが一致しない。
謎におもって、コマンドプロンプトにその文字列はっつけたら
片方は「あばばば」って表示されたんだけど、
もう片方は(csvのほう)は「あは<3099>は<3099>は<3099>」(´・ω・`)

この<3099>ってのは、
unicodeの正規化の方式でNFD方式らしい。
http://q.hatena.ne.jp/1246722275
utf-8だったらなんでもいいってわけじゃないのね(´・ω・`)

で、治す。
教えてもらったpythonばーじょん。

import codecs
import unicodedata
import sys

f = codecs.open(sys.argv[1], "r", "utf-8")
unistr = f.read()
print unicodedata.normalize('NFKC', unistr).encode("utf-8")

f.close

rubyhttp://sho.tdiary.net/20110204.htmlを参考にするといいみたい。
いまrubyでかいてるからruby版もやってみよう。


おしえてもらったこれすげーー
http://homepage1.nifty.com/nomenclator/unicode/normalization.htm

rails

railsはじめようとおもって、仮想環境構築してた。

いろいろつまったんだけどとりあえず解決した…

rbenvつかってみた。この辺りを参考にした。
http://d.hatena.ne.jp/katsuren/20121027/1351319825
http://qiita.com/items/a60886152a4c99ce1017

あと、最後にrailsサーバ起動するときに、
起動してポート3000番っていわれるんだけど、
ポート開放しても、なぜか動いてくれない。
ためしに、-p 3000をつけて起動してみたら、
動いた((((;゚Д゚)))なんだったんだ…

railsのポートが違ったんだろうか…?

アクセスランキングを作る

サイト内でアクセスランキングを作りたいのだが、私の脳内じゃぱっと実装が浮かばないので、まとめ&調べ

>こんなものが作りたい
サイドバー等で表示する、記事などのアクセスランキング。
記事本体もしくは、それに付随するキーワードのアクセス数から作成する。
Facebookのイイネ数のランキングも検討中。

>必要とすること
・アクセス数。
ただしサイトはphpで書いているが、CDNでキャッシュをかけていたりするので、本当のアクセス数はgoogleanalyticsしかしらない?

・表示がはやい
サイドバーに表示する予定なので、あまりそこの計算にリソースはかけたくない。

>必要ないもの
・リアルタイム性
秒単位でのリアルタイム性は不要だと思う。時間単位ぐらい。


>使おうと思っているもの
Google Analytics API
CakePHPからGoogle Analytics APIを使う方法

nosql
…なにがいいのかなぁ?Redis?MongoDB?
調査中。