Giba

ジバブログ - Webエンジニアリングとマーケティング

本屋に貢献しつつ電子書籍を利用する方法は無いものか

私はジュンク堂が好きだ。

Amazonでは味わえないときめきがここにある - それは恋とか愛とかの類ではなくて

このブログ記事に大いに頷く。 私も学生時代にジュンク堂書店池袋店に自転車で30分かけて通ったものだ。

沖縄に移り、ジュンク堂書店那覇店が出来たときは歓喜した。 しかも懐かしきダイナハ跡に。ダイナハの書店にも幼き頃歩いて行った覚えもある。

さて、そのジュンク堂書店を今も利用するのだが、毎回葛藤に陥ってしまうことがある。 電子書籍kindle)で購入するか、リアル書籍をその場で購入するか、だ。

本棚のスペースにも限りがあり、なるべく電子書籍を利用したいというのが本音だが、ジュンク堂の売上にも貢献しないといつかこの夢のような場所が無くなってしまうのではという懸念もある。

今のところ、この葛藤を解決する術は見つかっていない。 良い方法をご存知の方は教えて欲しい。

「空は青い」は正しいか?

昨年末のこと。妻とテレビを見ていたら、空が青く見える理由(ついでに夕陽が赤く見える理由)をなぜか説明することになった。

1.青い光は大気中で散乱しやすく、赤い光は直進しやすいこと
2.地球を大気の層が囲んでおり、太陽が真上にあるときと水平線近くにあるときとでは太陽光が大気を通過する距離に大きな違いがあること

という前提の説明から話を進めていったがイマイチ腑に落ちない様子。

私の説明を別の言葉で言い換えてもらいながら理解を確認していると、「○○○だから空は青い。」という表現がでてきた。

「空は青いっていうより、空は青く見えるんだよね?」と私。何を言いたいのかさっぱり理解できないという表情の妻。

「じゃあ、あのサンタクロース(の人形)の服は赤く見えるよね?」
「うん、赤いよね」

『赤く見える』という表現と『赤い』という表現の差を気にしていないようだ。

「赤いものはいつでも赤いの?今はヒゲは白く、服は赤く見えるけど、例えば青色LEDで青い光を当てたらどう見えると思う?」
「ヒゲは青くて、服は……黒かな?ああ、そういうことか!」

なんとなく理解してもらえたようだ。

Ruby on Railsで「いいね」機能の実装で自分自身の記事に「いいね」するとカウントされない(一応解決したが。。。)

Rails4.1で簡易SNSを構築中。「いいね」機能を実装する中で、次の記事とほぼ同じモデル構成になった。

※ ただし、私の場合はユーザーが自分の記事に対しても「いいね」がつけられるようにしたかった。

Rails3.2でスター機能実装 - Qiita

余談だが

user -> post の関係を複数作る場合、別の名前(:stared_users)を付け、sourceオプションで本当の名前を指定するらしい。

というのは上記の記事で知った。素敵な機能である。

さて本題だが、「いいね」数のカウントでユーザー自身の分がカウントされていなかった。

続きを読む

canvasの画像をtoDataURL()を使ってRailsのcarrierwaveで保存するまで

個人的にとてもタイムリーな記事を参考に試してみた。


[rails]base64エンコードされた画像をcarrierwaveに保存する | hello-world.jp.net

だがRails4のstrong parametersの理解不足で余計な時間が掛かってしまった。

まずはデータの流れ。

続きを読む

chef:berkshelfの"database"で作成したデータベースの文字コードがlatinになっていた件

chef-solo練習中。そしてberkshelfを利用してみる。

berkshelfの"database"というコミュニティクックブックを入れてみた。

自分で作成したクックブックからそのコミュニティクックブックを利用する形式。

# site-cookbooks/set_database/recipes/default.rb
user_data = Chef::EncryptedDataBagItem.load('users', 'xxxxx')

include_recipe 'database::mysql'

mysql_connection_info = {:host => "localhost",
                         :username => 'root',
                         :password => node['mysql']['server_root_password']}

mysql_database "rails" do
  connection mysql_connection_info
  action :create
end

mysql_database_user "xxxxx" do
  connection mysql_connection_info
  password user_data['password']
  database_name "rails"
  host "localhost"
  privileges [:all]
  action [:create, :grant]
end

これだとデータベースの文字コードがlatinになってしまっていた。 適当にググってみたが原因がわからない。

続きを読む