lightほぼPHP日記2018-08-31PHPで雑にカラーコードを生成するPHP適当な文字列のmd5ハッシュから6文字だけ切り出し、頭に#をつけることで雑にカラーコードを生成できる。6);大量のデータを表示するときに、グルーピングしたい単位(IDや日時など)でカラーコードを生成するとパッと見でわかりやすくなる。"hello";連結もできるらしい。"hello";PHP7.0以上で使える。アプリ開発をはじめたAndroidAndroidアプリ開発をはじめた。ニュースアプリみたいなやつをつくっている。使っているので、Xcodeより使い勝手に慣れててスムーズに開発に着手できてる。ライブラリOSSのライブラリが大量にあるので、PHPとかRubyの人でも簡単に開発できるんじゃなかろうか。ライブラリのインストールはgradleにパッケージ名書くだけでいいので楽だし、開発環境も無料だし。Squareの圧倒的存在感を知る。etc...デザインXMLでデザインを作っていくのどうなのと思っていたけど、GUIでポチポチやるより早い。レイアウトの作り方に慣れると、途端に自由になれる。KotlinJavaのコードをコピペすると、自動でKotlinに変換してくれるのちょっと感動。モダンなプログラミング言語なので、書いてて楽しい。画面づくりがメインだったので、ロジックはほぼ未着手でこれから。APIと連携すると、ビューどスレッドがうんぬんで大変と聞いているので、山はまだ先らしい。「ボーン・コレクター」は映画にもなっていて、地上波でも放映されていて、子供のころに何度かみた記憶がある。アンジェリーナ・ジョリーと黒人のおじさん(いま調べたらデンゼル・ワシントンという俳優らしい)が出ていて、寝たきりのおじさんが探偵役っぽいことをしていたのをうっすらと覚えているくらいだったが。原作小説の著者はジェフリー・ディーヴァーという人で、どこかのブログで「ジェフリー・ディーヴァー作品はどれから読むべきか」というのがとりあげられており、そのときあがっていたのが「ボーン・コレクター」だった。(このときはじめて映画に原作があったことを知った)Amazonで著者検索してみると、本屋で表紙を見たことがある作品がちらほらあって、「青い虚空」は学生のときに読んでいた。いえば、一時期”ハッカー”小説にはまりそうな時期があったのをふと思い出した。「ボーン・コレクター」が「リンカーン・ライム」シリーズの1作目というのもこのとき知った(リンカーン・ライムはメインキャラ名)。シリーズものは常に一作品目からたどって読むべき!という信条を持っているので、すでに映画を見たことがあるものの、一作目の「ボーン・コレクター」から読むことに。天才の犯罪者」と、とにかく対決ものっぽい。鑑識技術を駆使して証拠物件から犯人を追うリンカーン・ライムと警察(リンカーン・ライムは警察でなくコンサル(?)的な立場)、警察の行動を読み、裏をかいて自分の犯罪を実行していく犯罪者。いまは2作目は「コフィン・ダンサー」を読み終わったところなので、すべての作品がこう進むかはわからないが。いま3作目以降の作品をまとめて注文して届くのを待っている。リンカーン・ライムシリーズから派生した、キャサリン・ダンスシリーズも気になるところ。最近、文章を書いてないのでリハビリがてら。検索のすごいところは、「検索」でなく「ソート」なのだとどこかで見た。検索結果を"どのような順"で表示するかが、むしろ重要なのだと。検索キーワードがページ内に多く含まれているWebサイトが検索結果のより上位に表示される、と考えてみる。すれば、望まない検索結果が出てくるのは明らかだと直感的にわかるはずである。検索は、検索結果をユーザーが望む(であろう)順番にソートしている、といえる。何を当たり前なことをと思うかもしれないが、そのときは「検索」と「ソート」で受ける印象がだいぶ違う!と感じたのである。"表"とTrelloの”リストのリスト”話は変わるが、ジョエルオンソフトウェアで有名なジョエル先生が、Trelloについてのエントリを書いている。matope.hatenablog.comここにExcelが広まった理由について考察が書かれている。Excelを実際に「計算」と呼べるもののために使っている人間はどこにもいなかった。ほとんどの人々がExcelをリストを作るために使ってたということだ。Improvがなぜ完全に失敗したのかを完全に理解した。あれは計算が大得意だったが、表の作成はひどく下手で、そしてみんなはExcelを計算ではなく表のために使っていたからだ。大部分のExcelユーザーが”表計算”でなく、ただの"表作成"に使っているのだという。自分も思い返してみると、確かにただのそのような使い方をしていることが多いように思える。どれだけ優秀な表計算シートも、表作成ソフトにはかなわなかったのである。表計算のユーザーは少なく、表作成のユーザーは多かった。素晴らしい水平的キラーアプリケーションとは、実際には着飾ったデータ構造に過ぎないのだ。Excelは”表”というデータ構造を着飾ってたアプリケーションなのだと。Trelloは「リストのリスト」を着飾っている。(アハ体験2)表やリスト(またはリストのリスト)といったデータ構造は、多くの人が業務等で普通に使っているものである。必然的にそれらの”データ構造”が(おそらく無意識的にだが)必要とされる機会も多くなる。したがって、それらを着飾ったアプリケーションは広く使われる資質を持っているのである。(もちろん多くの人に実際に使ってもらうのは大変だと思うけど。検索はソートというアルゴリズムを着飾っているといえる。「データ構造とアルゴリズム」を着飾ったアプリケーション(Webサービス)多くの人に使われるWebサービスを作りたいならば、データ構造やアルゴリズムといった観点からサービスをみてみると何かヒントを得られるかもしれない。BOTを作成してみた。いわゆるチャットBOTで最初に作るものといえば、出退勤BOTか近隣レストラン検索かと思うので、今回は近隣レストラン検索を行うことにしました。最初に位置情報を送ってもらい、次に検索キーワード(例:ラーメン)と送ると、ぐるなびの検索結果が返ってきます(お店の精度は......泣)「ラーメン」とメッセージを送ったあとの、「画像+タイトル+説明」の部分がカルーセルタイプです。Type」があります。Centerカルーセルタイプはスワイプで横に移動でき、今回は3件分の結果を横並びで見ることができます。最下部の「検索メニュー」というところが「リッチメニュー」と呼ばれるもので、ここをタップするとシュッとメニューが表示されます。メニュー名は管理画面から設定できます。図2:アイコン(イラスト)のせいでリッチに見えないリッチメニューラーメン検索、とんかつ検索となっているところがボタンになっており、このボタンを押すと「ラーメン」や「とんかつ」といった特定のメッセージを送信することができます。そのため、ユーザーにいちいちメッセージを入力してもらわなくても、ボタンひとつで定型のメッセージを送ってもらうことができます。↓のようにきちんとグリッドで表示するとリッチになります。image.itmedia.co.jpリッチメニュー自体は、LINE@の管理画面から設定することができます(左メニューのリッチコンテンツ作成)。今回のケースでは、左半分・右半分で2つのボタンが設定されていますが、さまざまな形式で表示方法を設定することができます。下記は画像を分割するタイプの種類です。他にも「アイコン+テキスト」による表示形式も選択できます。リッチメニューはUIの第一印象がとてもよかったので、LINEやチャットBOTという用途に限らず、アプリに組み込んで何かするサードパーティ向けのUIとして広く使えるのではないかと思いました。