botよけったー制作記part1

勉強、就活のために始めた当サイトの制作も一旦、ひととおりのガワができました。これからもう一段階進めるべく、新しいことにチャレンジしたいと思います。タイトルにある通り、TwitterAPIを利用した検索サービスを制作することにしました。これから少しずつ進めていきたいと思います。
なぜTwitterAPIか
Web系APIを提供しているサービスは多数あるのですが、その中でも自分にとって一番身近で、実際に困っていることがあったので作ろうと思いました。困っている内容は検索機能です。余計なものがヒットしすぎて肝心な情報にたどり着きません。そこをどうにかするサービスにしたいと思います。
要件
検索に特化したものにします。フォローやツイート、リツイートなどは実装しないつもりです。あくまで検索して表示するものとします。それだと本家でいいじゃないかとなるんですが、前述したとおり、現状のTwitter検索には問題があり使い勝手が悪いです。そこを改善する、Twitterと利用者の架け橋となるようなサービスを目指します。また、なるべく簡単に使えるものを目指します。
Twitter検索における問題点
現状のTwitter検索だと余計なものがヒットしすぎます。それを回避する手段が公式には乏しいです。一応、高度な検索や検索オプションにてある程度の絞り込みは可能なのですが、知っている人じゃないと敷居が高いです。また、知っている人でも回避しきれない問題、手間の問題があります。
余計なものとは
私個人の主観ですが、以下のようなものがあります。
- botによるつぶやき
- リツイート
- 英語の情報
- その他、宣伝や不適切な表現をするユーザーのつぶやき
一番邪魔なのはbotによるつぶやきです。特定のハッシュタグで検索した際、必ずと言っていいほど、まとめサイトや宣伝、アフィリエイト目的のつぶやきが大量にヒットします。昔は公式で-source:検索オプションを複数指定でき、ある程度除外できたのですが、今は-source:オプションは一つしか指定できません。最近はbotのサービスも多く、一つ除外しただけではとても間に合いません。また、botクライアント名にオリジナルのものを使用したユーザーもいますのですべて除外するのは難しいです。
リツイート、英語の情報は-rt,lang:jaオプションで対応可能です。ですが、毎回毎回入力するのは手間です。デフォルトでそうなって欲しいのですが、現状は毎回指定する必要があります。
その他、ハッシュタグによる検索などで、例えばネタバレや不快なことを多数つぶやくユーザーもいます。もちろんつぶやく内容は個人の自由ですが、見たくはないのでユーザー単位で除外できるようにしたいです。これはTwitterクライアントによってはクライアントミュートの機能で除外できます。公式のミュートでは検索には対応していなかったと思います。
仕様
まだまとまっていませんが、実装したい機能を列挙します。
- bot除外検索(デフォルトで有名botクライアント除外)
- リツイート除外、日本語のみ検索(デフォルトにする予定)
- 特定ユーザーNG機能
- 特定クライアントNG機能
- 検索条件保存機能
- 除外条件保存機能
- 検索比較(除外前と除外後の比較、確認)機能
- ドラッグ&ドロップによる除外操作
デフォルトでtwittbot,IFTTTなど有名クライアントを除外し、-RT,lang:jaもデフォルトオプションとしたいです。それらを検索に含めたい人への対応もいれたいです。D&D操作ですが、できるかわかりませんが、検索結果からいらないユーザーやクライアントを除外テキストボックスにドラッグできるようにしたいです。わざわざ一字一句入力するのは手間ですし間違いのもとですから。
制作を通じて達成したいもの
技術力、デザイン力の向上です。現時点では、フロントエンド、バックエンドともにサンプルソースを参考に軽く修正したものが主です。特にバックエンドであるPHPはこれを通してしっかりと一からプログラムを組むことで技術力向上が期待できると思います。あとはデザインです。アウトプットがしっかりしていないと機能が揃っていても使おうと思えません。わかりにくく使いづらい、なんかダサいなど、使ってて気持ちよくないと誰にも使ってもらえません。当サービスはあくまで勉強のためであり、商用でもなんでもないですが、誰かに使ってもらうつもりで、ユーザーを意識して作りたいと思います。
今後の予定
まずはTwitterAPIの機能、使い方の確認がてら、軽く動かしてみたいと思います。それとワイヤーフレームを作成してみたいと思います。Web制作にはワイヤーフレームを作るという段階があるそうなので。コーディング以外の部分も勉強していきたいと思います。