How I Coded

「プログラミングは人がやらなくてもいい仕事を機械にやってもらうためのものである」という信念のjustinが考えや経験をまとめるブログです。

エンジニアはStackOverflowで質問すると英語の添削をしてもらえるかも!裏技的な英語勉強法

f:id:justin999:20160713193006p:plain

StackOverflowでiOSのURLについて質問してみた。

エンジニアにはお馴染みのサイトStackOverflow(プログラミングで困ったことを相談したり回答したりできるサイト。日本語版も最近出来たが、英語版の方がとても活発)で思いがけず英語のお勉強ができてしまったのでシェアします。 とある案件で、FacebookのMessengerアプリから直接safariを開きたいという要望がありました。どういうことかというと、Facebook Messangerで送られてきたURLをタップするとアプリ内ブラウザーでそのURLを開いてしまうのですが、今回の依頼主はどうもsafariがいいとのこと。こういった、URLをタップしたら自動的にアプリを開くようにするのはURLを変えることでできます。"URL scheme"や"Universal link"などのキーワードで調べると情報が出てきます。しかし、今回はこれといった情報が見当たらず、どうも情報を総合すると「safariで特定のページを開かせるようにするURL schemeは無い」ということかと思いました。しかし、そんなわけはないだろうと思ってStackoverFlowに質問を投げかけました。http://stackoverflow.com/questions/38288370/how-to-make-url-that-open-in-safari-for-ios-facebook-messeger-app-instead-of-in

質問内容

英語で以下のように質問したのです。

[iOS] I'd like to make facebook messenger bot that send url. Once the url tapped, I want it to open the url in native safari.app instead of in-app browser in Messenger.app. I tried Safari-search URL scheme, but it doesn't work. Are there any way to open native safari by modifying url without modifying ios native source code because, you know, I can't make any change for FB messenger native app?

Typical scenario:
1. I am managing bot and send FB message with amazon product url, let's say, https://www.amazon.com/gp/product/B00T85PMWY/. 
2. The receiver tap the url.
3. Safari will open and show the page. 

修正版

そして数時間後、質問の答えが来たかどうかチェックするためにサイトにアクセスしたらビックリ!質問が書き換えられています。

[iOS] I'd like to make facebook messenger bot that sends a URL. Once the URL is tapped, I want it to open the URL in native safari.app instead of an in-app browser in Messenger.app. I tried Safari-search URL scheme, but it doesn't work. Is there any way to open native safari by modifying URL without modifying iOS native source code because, you know, I can't make any change for FB messenger native app?

Typical scenario:

I am managing bot and send FB message with amazon product URL, let's say, https://www.amazon.com/gp/product/B00T85PMWY/.
The receiver tap the url.
Safari will open and show the page.

change logまでありました。 http://stackoverflow.com/posts/38288370/revisions

質問して勉強になったこと

今回修正されたところは3単元のsが抜けているとか、urlではなくURLとかしょうもないことなのですが、こういう細かいところができていると、ネイティブスピーカーにはとても自然な文章にみえるでしょうから、できる範囲で直していきたいですね。こうやって人に指摘されることで気がつくことができます。 英語を勉強しようと思っていたわけではないですが、予想外のところで勉強になりました。みなさんも一度試してみたらいかがでしょうか?

Xcodeのビルドを早くする方法をまとめたよ。ビルド時間が長くて集中がとぎれとぎれになってしまっている人は要チェック

f:id:justin999:20160705230120p:plain

Qiitaにxcodeのbuildは非常に遅くとてもイライラします。という記事を投稿しました。 iOSエンジニアでXcodeのビルド時間に悩まれている方はぜひ読んでみてください。

Xcodeのビルド時間問題について書こうと思った背景

このまとめを書こうと思った背景として、最近諸事情あり、仕事でiOSをいじることが再び多くなってきました。この半年ぐらいはずっとRails開発を担当することが多かったのですが、大人の事情でiOSをガッツリいじっています。 そこで時間の流れの速さに衝撃を受けました。Rubyを書いているときはこのライブラリどうやって使うのかなって思ったらirbrails c といったコマンドを叩けばすぐに試せる環境に行ける。UIを修正しようと思ったらhamlなどのview templateをいじってsaveしてすぐ反映!しかし、iOS開発はこの点が非常にめんどくさい。コードを直してはビルド、Run、チェック。挙動がおかしかったら、また修正、ビルド、Run、チェック。Railsの時とは違う間隔で充実感無く時間が過ぎて行きました。これは時間が無駄だと思い、Xcodeのビルド時間短縮法を調べ、様々な情報を1つの記事にまとめたのが今回のxcodeのbuildは非常に遅くとてもイライラします。です。

こんな人に読んでもらいたい

  • Xcodeで開発をしている全ての人
  • 特にこれからXcodeと共に過ごす時間の長い初心者。

こんなアドバイスほしい

  • ビルドに限らずこんな方法を取ればiOS開発の効率上がるよというTips

では、ぜひQiitaも見て下さいね。 xcodeのbuildは非常に遅くとてもイライラします。