人生の恥は書き捨て

プログラムとかいろいろ

ベトナムで世界一安いビールらしい「ビアホイ」を飲んできた

GWにベトナム旅行に行ってきました。

ベトナムはとにかくバイクの量が半端ないですね。

f:id:kazuhei0108:20160506095824j:plain

車と車の間にバイクがぎっちり。

3人乗り、4人乗りはアタリマエです。



ベトナムにはビアホイ

ビア・ホイ - Wikipedia

という激安ビールがあって、ベトナムに行くからには是非飲もうと思っていました。

今回行ったのはホーチミンだったのですが、

ビアホイはハノイの文化であり、最近は出す店もかなり減ってきているということで、

1日目は見つけることができず...。

地球の歩き方に載っていた店でも、時間が悪いのか出せないということでした。


そして2日目、

ツアーのガイドさんにビアホイの話をしたところ、

「よくビアホイなんて知ってるね!もうホーチミンでは飲めるところなんてほとんどないんだけど、一か所いいところがあるよ。

客は地元の人ばかりだし、店も汚いけどそれでも良いかい?」

と親切に教えてくれました。


朝8時開店という信じられない店です。


店に入って、店員のおばちゃんに拙い英語で話かけましたが全く通じなかったので、ノリで注文。

f:id:kazuhei0108:20160506195533j:plain

おもむろにプラスチック容器を用意してそれにビールらしき液体を注ぎ始めるおばちゃん

f:id:kazuhei0108:20160506195547j:plain

あやしい...。

これ1本で2Lあり、値段は40万ドン(200円)

でした。

氷を入れたグラスにたっぷり注いで乾杯します。


f:id:kazuhei0108:20160506195702j:plain

写真に撮り忘れましたが、氷は洗面器に入れられて運ばれてきました^^;

味はちょっと薄めでしたがなかなかのものでした!氷入れて飲むのが、これまた意外にも合っていておしいいです。

f:id:kazuhei0108:20160506200421j:plain


ビール 2L × 2

お通しのゆでた落花生

サラミ?ソーセージ?の盛り合わせ

揚げ春巻き

で3人で約20万ドンとちょっとでした。

3人で1000円ちょっととは。ベトナムすげえ

なぜチケットの転売が批判を浴びるのか

なぜチケットの転売が批判を浴びるのかという話です。
法律的にだめとかそういう話ではなく、なぜ批判されるのかという話なので、
せどりが合法か違法かというような話をする気は全くありません。

導入


結論から言ってしまうと、ライブなどのチケットの値段は、
ファンへの感謝などの意味を込めて需要にくらべて低めにつけられており、
また、すべてのファンに等しく参加可能性があるように抽選になっているからです。

チケットの値付け

もし発売側が需要と供給を考えて値段を付けるなら、
極端な話最初からオークションしてしまえばよいのです。

一番お金を払った人が最前列、二番目の人がそのとなりという風にすれば、
人気のチケットなら、発売元はかなり儲かるでしょう。
でも、わざとそれをしていないのです。

もちろんそんなことをしたらチケットの発売元は叩かれるかもしれませんが、
叩かれるのを避けるためだけに定額で売っているなんてことはないはずなので、
やはりファンへの感謝やサービス、また、一定の額に抑えて新規のお客さんを獲得するなど
様々な思惑で(需要にくらべて)割安かつ定額になっているんだと考えられます。

チケットの転売の何が悪いか

では、なぜチケットの転売が批判を浴びるのかですが、もうお分かりだと思います。
チケットの転売はファンへのサービスやその他の思惑を破壊してしまうからです。
さらに、本来ならライブの出演者や関係者などに負の影響を与えかねないからです。
チケットを買う側はただ高くなるから批判しているわけではありません。
チケットを売る側はただダフ屋が儲けているのが憎いから批判しているわけではありません。

チケットがオークションに流れてしまうと、人気の講演では値段が上がってしまいます。
そうしたら新規のファンはその値段に躊躇してライブに来ないかもしれません。
また、前からいるファンもチケットを高値で手に入れてしまったら、
その分ライブグッズは買い控えるかもしれません。
チケットの転売は発売元の思いを踏みにじり、金銭的にも迷惑をかける行為だと思います。

終わりに

もちろんチケットが余ってしまった、急に行けなくなってしまった、ということはよくあることで、
しょうがないことです。そういうときに、周りに行ってくれる人がいなければオークション等に出すこともやむなしだと思います。
誰も行かないよりは誰かが行く方がよっぽどマシですからね。
でも転売目的でチケットを買い占めるなどの行為はやるべきではないと考えます。

ニコニコ漫画で読めるおすすめ百合作品の紹介

これはなに?

この記事は百合 Advent Calendar 2015、16日目です。

www.adventar.org

あなたは誰?

ニコニコ漫画iOSの開発を担当しています。エンジニアです。
ニコニコ漫画はニコニコ静画の漫画を読むことが出来るスマートフォンアプリです。

僕は毎日、ニコニコ静画に投稿される漫画を読んでいます。
まだまだ読めていない素晴らしい作品が沢山あるので、発掘するのが楽しいです。
でも最近お気にい入りしている作品ですら読むのが追いつかなくなってきています...。

それでは、早速おすすめの作品を紹介していきたいと思います。
どれもwebやアプリですぐ読めるのでぜひ読んでみてください。
アプリはこちら
info.nicovideo.jp

出版社作品

seiga.nicovideo.jp
高校時代の先輩と後輩が、OLと大学生になってからルームシェアする話です。
ストレッチ要素は途中からどんどん減っていきますw



seiga.nicovideo.jp
1日に3分だけ時間を止めることが出来る主人公と、
その中で主人公以外にただ一人だけ動くことが出来る村上さん。
時間をとめて自分たちだけの時間を共有する二人というシチュエーションにドキドキします。
ちょっと全然魅力伝えられてる気がしないんですが、一番おすすめかも知れない作品です。



seiga.nicovideo.jp
どんな話なのかは9日目のこちらの記事にかかれていますね。
ずるい女の子の百合など - ねむい
七海先輩はずるいけど、侑だって先輩のこと試したりいじわるだよなあ。



seiga.nicovideo.jp
次に来る漫画大賞のノミネート作品だったので読みました。
友情と恋心がからみ合って...うわあああああ青春!と言った感じの話です。



seiga.nicovideo.jp
親が再婚して娘同士が急遽姉妹になるという話です。ありがちですね。
可愛い女の子がおいしい料理を食べて良い笑顔を見せてくれます。ありがちですね。
でも2人の個性と魅力がしっかり描き出されているので、面白かったです。
まだ1話だけですが続きに期待。


ユーザーオリジナル作品

静画には百合タグのついた作品が200件くらいあるのですが、
その中でもユーザーのオリジナル作品はまだまだ少ないですね。もっと増えろ〜。

あとユーザー作品はいつの間にか更新止まっているのが多くて寂しいです...。



seiga.nicovideo.jp
引っ込み思案な主人公リナと天真爛漫な茜の二人が徐々に仲良くなっていく話してです。
ゆるくてふわふわした雰囲気が最高の作品です。
続きが読みたいけど2013年5月から更新が止まっています(泣)



seiga.nicovideo.jp
メインの登場人物は中学生の女の子と中学の先生の2人なのですが、
当然?先生が振り回される側です。



seiga.nicovideo.jp
1話目読んだら面食らうと思いますが、2話目から女の子出てきますよw
リアルっぽい絵柄とそうじゃない絵柄ところころ変わるけど両方角生えてるし、話はつながってるのかな?
と思ったのですがつながってたりつながってなかったりします。



seiga.nicovideo.jp
作者さんの中高生時代の思い出実録漫画だそうです。
まだ話数少ないですが、絵も可愛いし勝手に期待してます。



seiga.nicovideo.jp
続きが読みたいです。でももう更新されないんだろうな。


ファンコミック

seiga.nicovideo.jp
ゆるゆりの二次創作です。タイトル通りひまわりと櫻子の話です。
かわいいしキャラの特徴も掴んでいてとても楽しませてもらいました。



seiga.nicovideo.jp
またまたゆるゆりです。1話目が2012年3月で最近も更新があるという珍しい漫画です。
作者さんの作品への愛が伝わってきます。



中田島さんの漫画

seiga.nicovideo.jp
ちょっとここにはタイトルを載せるのも憚られるドギツイ下ネタギャグ漫画を投稿されています。
内容についてはここでは触れませんが僕はこの作風が大好きです。

番外編

もうニコニコ漫画関係無いですが、今年読んだ百合作品で特に良かったものを2つ上げておきます。

citrus

seiga.nicovideo.jp

見た目はギャルなのに一度も恋をしたことがないjk・柚子は、親が再婚した都合で女子校に編入することに。彼氏ができない!と不満爆発の転校初日、黒髪美人の生徒会長・芽衣と最悪の出会い方をする。その後、偶然芽衣とイケメン担任教師のキスシーンを目撃し、心とは裏腹にそのシーンが胸に焼き付いてしまった柚子。さらに生徒会長と義理の姉妹の関係になり、同室で生活することになってしまい…!?

ヒロイン二人の思いの強さが入れ替わりながらも徐々に接近していくのがいいっすねえ。


ハッピーシュガーライフ

seiga.nicovideo.jp

松坂さとうには、好きな人がいます。
一緒に暮らして愛を語り合うと、とても甘い気持ちになるのです。
きっとこれが「愛」なのね。
彼女はそう思いました。
この想いを守るためなら、どんなことも許される。
騙しても犯しても奪っても殺してもいいと思うの。

必見の「戦慄の純愛サイコホラー」作品!

初めて読んだときには「やべえええええ」ってなりましたね。
さとうちゃんのしおちゃんへの愛は本物なのでしょうか?それは正しいのか?




ここまで読んでくださってありがとうございました。
宣伝乙

Quickのテスト結果の表示がおかしい

Quickというswiftでアプリケーションの振る舞いをテストできるフレームワークがあるのですが、
そのテスト結果が正しく表示されなかったので、それについてのメモです。

結論からいうと、今のところ有効な修正方法はないようです。

現象

こんな感じでテスト結果が一瞬しか表示されず、残りません。

https://cloud.githubusercontent.com/assets/608595/5426982/97573142-837f-11e4-9ed0-266a5d371313.gif

対策

一回テストを実行してからxcodeを開き直すなどするとテストナビゲーターに出てくるようになります。
今のところ他に直し方もない?ようなので、これで…

Swift 文字列の表示域のサイズを取得する

やること

文字列を表示する場合に横幅がどれくらいになるか、高さがどれくらいになるか、を取得します。

縦幅が取得できればtwitterのタイムラインのように可変のUITableViewを作れたりします。

類似のエントリーはたくさんあったのですが、微妙に古くてそのままでは使えないものが多かったので、

それらを参考にさせてもらいながら書き直しという感じです。


類似のエントリー

  • qiita.com
  • www.toyship.org

ソースコード

let text = "表示域を計測したい文字列"
let paragraphStyle = NSMutableParagraphStyle()
paragraphStyle.lineBreakMode = NSLineBreakMode.ByWordWrapping
let attributeDict = [
    NSFontAttributeName: UIFont.systemFontOfSize(16.0),
    NSParagraphStyleAttributeName: paragraphStyle
]
let constraintsSize = CGSizeMake(100, 100)
let textSize = NSString(string: text).boundingRectWithSize(constraintsSize, options: NSStringDrawingOptions.UsesLineFragmentOrigin, attributes: attributeDict, context: nil)

これのtextSizeがテキストが実際に表示される範囲のサイズです。

解説(メモ)

let paragraphStyle = NSMutableParagraphStyle()
paragraphStyle.lineBreakMode = NSLineBreakMode.ByWordWrapping

文章の改行モードを指定します。今回は単語区切りで改行するように。
NSLineBreakMode.ByWordWrappingは他の記事だとNSLineBreakByWordWrappingとかになっているかもしれないですが、多分古いです。

let attributeDict = [
    NSFontAttributeName: UIFont.systemFontOfSize(16.0),
    NSParagraphStyleAttributeName: paragraphStyle
]

NSAttributedStringのAttributeを指定。文字サイズは16。

let constraintsSize = CGSizeMake(100, 100)

表示域の制約です。width=100でNSLineBreakMode.ByWordWrappingなので100に行く前に単語で改行します。

NSStringDrawingOptions.UsesLineFragmentOrigin

文字が表示域の制約からはみ出てしまう場合どのように処理するかです。

YosemiteにあげたらModule file was created by an older version of the compilerっていうエラー出た

Libraryが続々とSwift1.2対応されたので、PCをYosemiteにあげました。

そしたらAlamofireを読み込んでるimport文で

```
Module file was created by an older version of the compiler
```

というエラーが...

もちろんCocoaPodsで最新版に上げたのですが、ダメな模様。

ググったところによると、

「理由は分からんが、cleanしたら直ったよ!」みたいな記事がstack over flowあたりに散見される。

とりあえず、メニューからProduct > Clean でCleanしてみる。

...だめだ。

その後も色々調べたところ

Cmd ⌘ + Alt ⌥ + Shift ⇧ + K で

build folderのCleanができてそれでイケるっぽいコメントを見つました。

buid folderのCleanをした後にpod installしなおしてbuildしてみると...直ったー。






結局何だったんだ...

navigationbarとtoolbarをスクロール時やタップ時に表示/非表示する

スクロール時やタップ時にnavigationbarとtoolbarの表示/非表示を切り替えたいという話です。
twitterアプリの画像の表示の部分とかで使われていますね。

基本的なやり方

viewDidLoadかviewWillAppearあたりで

self.navigationController?.hidesBarsOnSwipe = true
self.navigationController?.hidesBarsOnTap = true

でokかと思います。

ハマったとこ

  1. toolbarはnavigationControllerの持っているtoolbarを使います。
  2. toolbarのitemが0の場合は正しく動きません。
  3. toolbarのitemはtoolbar.setItemsではなくnavigationController.visibleViewController.setToolbarItemsを使わなければいけない

2は仕様みたいです。
3はここに書かれていて助かった。

UIToolbar: setItems and UINavigationController setToolbarItems - codeitive.com

navigationControllerの持っているtoolbarのitemはviewControllerから取得されるようなことが書いてある。

じゃあvisibleViewControllerにしなくても今のviewControllerにsetToolbarItemsすればオッケーじゃないか。
やってみたらできた。