shobylogy

叩けシンプルの杖

bitFlyerの過去チャートを1時間足で取得する

以前、bitFlyerの過去チャートを取得するという記事を書いたが、betterなサービスを発見したのでメモ。 CryptCompareというサービスのAPIで、1時間足であれば、Cryptwatch以上に過去に遡ってチャートを取得できる。*1 https://www.cryptocompare.com/api/ 使…

Kerasで過学習を防止するためにEarlyStopping Callbackを使う

Kerasには過学習を防止するためのEarlyStopping Callbackが存在します。 コールバック - Keras Documentation 使い方 使い方は簡単で、modelのfitメソッドのcallbackに渡すだけです。 from keras.callbacks import EarlyStopping model.fit(X_train, Y_train…

Jupyter NotebookでKerasのTraining進行状況を表示する(keras-tqdm)

Jupyter NotebookからKerasを使用すると、Trainingの進行状況がよくわからなくて不便ですよね。 keras-tqdmというライブラリを使うと、Jupyter NotebookでKerasのfitメソッドの進行状態をprogress barで表示してくれます。 GitHub - bstriner/keras-tqdm: Ke…

bitFlyerの過去チャートを取得するAPI

bitFlyer公式では現在の価格を取得するAPIしか提供されていない。 ビットコイン取引所【bitFlyer Lightning】 過去のチャートを取得するにはCryptowatchというサービスのAPIを利用する。*1 OHLC Candlesticks - Market Data REST API エンドポイントは以下。…

Skype英会話のすゝめ

Skype英会話を始めて約3年が経ち、皆さんにも是非おすすめしたいと思うようになってきたのでこの記事を書きました。 概要 Skype英会話を始めて変わったこと 良いところ いまいちなところ おすすめの学習ステップ Skype英会話を始めて変わったこと 英語を話す…

分離型キーボードを買ったら肩こりが改善した話(Mistel Barocco)

最近、肩こりが悩みだったのですが、分離型キーボードを買ったら改善しました。 買ったのは、Mistel Baroccoというコンパクトなタイプの分離型キーボードです。*1 このような感じで仕事をしています。 なぜこれを選んだの? 手軽に入手でき、Happy Hacking K…

深夜に高熱を出した際にやったことと、使ったサービスまとめ

先日、深夜に39.4度の高熱が出てしまい、相当大変だったため、その時に使ったサービスなどをまとめておきます。 概要 病院に行くべきか相談する 病院まで行く 病院で症状を伝える 回復する 病院に行くべきか相談する 深夜に病院に行くべきか迷った際には、救…

Swift + iOS 8のUITableViewControllerのバグを回避するためのSwiftLintカスタムルール

iOS 8のUITableViewControllerの実装にはバグがあり、Swiftでサブクラスを作ると、iOSのクラッシュが発生する場合があります。 今回はそれをSwiftLintで検知して回避するためのカスタムルールについて説明します。 なお、以下の説明はXcode 7.3.1 + Swift 2.…

iOS DCの前夜祭で大規模リニューアルのノウハウについて発表してきました

だいぶ時間が経ってしまいましたが、 iOS DC 2016の前夜祭で、大規模リニューアルのノウハウについて発表してきました。 こちらが発表資料です。 この発表で伝えたかったのは「ノウハウがあれば、リニューアルは怖くない」ということです。 リニューアルがユ…

エンジニア向け日頃の疲れを取るおすすめの入浴剤

エンジニア、肩や腰が凝りますよね。 温泉に行きたい…でも忙しくてなかなか行けない。 そんな方は入浴剤を使って毎日の疲れを取るのがおすすめです。 今回は、私が日頃から使っている入浴剤を紹介します。 温泉に行きたい方はこちらをどうぞ blog.shoby.jp …

SwiftとObjective-C混在のプロジェクトで、BridingHeaderのビルドが低頻度で失敗する問題を修正する

iOS

SwiftとObjective-C混在のプロジェクトで、CI上でBridingHeaderのビルドが低頻度で失敗する現象に悩まされていました。(失敗した場合もRebuildすると成功します) 常に失敗するのではなく低頻度で失敗するケースの場合、Headerのimport周りが怪しいことが多…

心理的安全性を向上させる「ドラッカー風エクササイズ」を自分のチームでやってみた

最近、良いチームには「心理的安全性」が必要だということが話題になっていて、個人的に気になっていたところに、ninjinkunさんが「ドラッカー風エクササイズ」を紹介してくれたため、自分の所属するチームで試してみた。 ドラッカー風エクササイズのすすめ …

iOSアプリの画像を最適化してアプリの容量を減らす

iOS

最近アプリの容量が増えてきたので、容量を減らすべく画像の最適化を行いました。 調べて出てくる情報がどれも古かったため、今だとどうしたらいいかを書いておきます。 以下の情報はXcode 7.2.1環境を想定しています。 概要 Asset Catalog を使う ASSETCATA…

I'll talk about color detection from fashion images in Fasion Tech Meetup #2

I'll participate in Fashion Tech Meetup #2, and talk about color detection from fashion images. The meetup will be held on March 22. fashion-tech.connpass.com Sad to say, the event will not be translated into English. However I'll translat…

第二回 Fashion Tech Meetup (3/22) で商品画像からの色検出について話します

3/22(火)に第二回 Fashion Tech Meetupというイベントに参加します。 フリルにカラー検索という機能を実装した際に、商品画像から色情報を検出した話をする予定です。 fashion-tech.connpass.com Fashion Tech Meetupは、ファッション x テクノロジーとい…

Objective-Cで書かれたメインプロダクトを少しずつSwiftに書き換える

iOS

現在、私はObjective-Cで書かれたメインプロダクトを少しずつSwiftに書き換えている最中です。*1 おそらく奮闘中の皆さんのためにも、私が得た知見をお話ししようと思います。 なぜメインプロダクトのSwift移行が進まないのか これは、単純にメインプロダク…

UIAlertControllerを最前面に表示できるよう拡張する

UIAlertController、UIAlertViewのshowみたいな感覚で表示できなくて不便ですよね。 特に、Modalで表示したViewControllerの上に、UIAlertControllerを被せるような使い方をしようと思うと大変です。 そこで、若干ゴリ押しですが、常に最前面にUIAlertContro…

エンジニア向け都内から行ける日帰り温泉

エンジニア、肩や腰が凝りますよね。そんな疲れた時には温泉に行きましょう。 実は都内から気軽に行ける日帰り温泉がたくさんあります。 今回は、私が頻繁に通うおすすめの温泉を紹介します。 おすすめ温泉 東京染井温泉 Sakura 港北天然温泉 スパガーディッ…

「シリコンバレー式 自分を変える最強の食事」を読んで「完全無欠生活」を始めた

最近どうにも体調がすぐれず「健康になりたい」という漠然とした思いを抱いていたのですが、「シリコンバレー式 自分を変える最強の食事」という良さそうな本を見つけたため、その本に則って「完全無欠(Bulletproof)生活」を始めました。 シリコンバレー式…

RMagickで画像のホワイトバランスを調整する

蛍光灯下で撮影された画像が緑っぽくなってしまうのを補正するために、RMagickでホワイトバランスを調整する手法を実装してみました。 手法 実装がシンプルなgray worldとretinexをRMagickを使って実装してみました。 qiita.com 上記記事のcolorcorrectと元…

iOS 7をサポート対象外にして得られたもの

iOS

年末に「iOS 7をサポート対象外にしよう!」ということを勧めていたのですが、 blog.shoby.jp この度無事に自分の関わるプロジェクトでiOS 7をサポート対象外にすることに成功しました。 無事にiOS 7を切れたのでめでたい https://t.co/KdLGDXnW6o— shoby (…

RMagickでHSLへの変換がうまく動かないことがある

RMagickのPixel#to_hslaでsやlが正しく変換できない現象が発生していた。*1 原因はImageMagickのバグだった。 2011-05-14 6.6.9-9 Cristy <quetzlzacatenango@image...> Fix transient bug for HSL to RGB and back. http://www.imagemagick.org/script/changelog.php 6.6.9-9 以降のImag</quetzlzacatenango@image...>…

Universal Linksの運用の手間を減らす

iOS

概要 apple-app-site-associationを署名したファイルではなく、JSON形式のAPIにする JLRoutesを使ってWebPageURLをCustomURLと合わせてハンドリングする apple-app-site-associationを署名したファイルではなく、JSON形式のAPIにする iOS 9以降の場合、HTTPS…

「 iOS 7をサポート対象外にして開発を健全化する」というタイトルで発表しました

iOS

第24回 potatotipsで、「 iOS 7をサポート対象外にして開発を健全化する」というタイトルで発表しました。 こちらの発表には、業界全体で、最先端の技術を追い求められる健全な開発環境を当たり前にしたいという思いを込めています。 最近は、Swiftがオープ…

モックAPIを使ってアプリの開発をスムーズに進める

API

mokable.ioという実際に叩けるモックAPIを作れるサービスがあります。 これを使うとアプリの開発をスムーズに進められることが分かったので、書いておきます。 モックAPIを使った開発フロー クライアント側のエンジニアがAPIのレスポンス(仮)を考える API…

LGTM画像に貼る用の猫画像を集める

結論から。The Cat APIというサービスを使うと猫画像を効率的に集められます。 その名の通りAPIを提供してくれているので、アニメーションGIF画像だけを集めることもできます。 http://thecatapi.com/api/images/get?format=html&results_per_page=20&type=g…

Google I/O & WWDC情報共有会でiOS 9の新機能について発表しました

iOS 9の新機能について、実際にサービスに活かすとしたら、という観点で発表しました。 今回、Search APIsがサービス運営的な意味では特に意味を持つと考えています。 Webとアプリの連携が強まり、アプリ内のコンテンツが検索できるようになりましたが、これ…

How Google Worksを読んだ

How Google Worksという本を読んだ 「グーグルはこの方法で成功した!グーグル会長がビジネスの真髄を初公開!」という帯がついていたので、ビジネス書かと思ったら全然違った。 一言で言うと、経営者、マネージャー向けの「エンジニアの取り扱い説明書」だ…

記事を公開する時間で見られる数が変わるらしい

ブログや何かで記事を公開する場合、読まれやすい時間があるらしい。読んで欲しい層の行動を予測して記事を公開するのが良いと聞いた。 もちろん話題になる記事はいつ公開しても話題になるし、ならない記事はいつ書いてもならない。 ただ、目に止まる人の数…

CLGeocoderを使って郵便番号を住所に変換する

iOS

住所入力をさせる際に、郵便番号から住所を補完したいことはよくあると思いますが、アプリでそれを実装しようと思うと少し面倒です。 しかし、iOSだけであれば、CLGeocoderを使うと、自前で郵便番号変換用のAPIを作らなくても済みます。 また、現在地を取得…