インターン概要
成果物
anancus
ユーザーは投稿欄に新設されたボタンを押すと、簡単にアンケートを作ることができます。質問文と最大4つの選択肢を入力すると…
このように、タイムラインに投票ボタンつきの投稿が現れ、30秒のあいだ回答を受け付けます。締め切りを過ぎるとタイムラインに結果が現れるので、ぜひみなさんも試してみてください。
mahout
PHP
- akifuji613
- yuki540 (Web)
- KageShiron (GitHub / Web)
こんにちは。チームPHPです。
チーム名は、Mastodonが象の祖先ということで、PHPにしました。
我々がこのインターンシップでどんなことをしたかを報告させて頂きます。
不満とその解決
まず、現在のfriends.nicoに対するユーザーが抱える不満を挙げていきました。その結果、「friends.nicoユーザーはローカルタイムラインを中心に見ているのに、ウェブクライアントはPCの全画面で見ることを想定していて、省スペース派、ネイティブアプリ派のユーザーが不満を抱えているだろう」という意見でまとまりました。
その不満を解決するために、「frineds.nico専用の省スペースクライアントアプリ」を作ることにしました。ここでいう省スペースとは、画面の端に置いて鑑賞できるようなものを想定しています。また、Mastodonの全てのインスタンスではなく、frineds.nicoに限定したのは、よりユーザーの体験を具体的に想像できて、プロダクトとしての魅力を高められると思ったからです。
コンセプトを叶えるための機能として
- 省スペース
- 高いカスタマイズ性
- friends.nicoに特化
の3点を意識しました。省スペースはミニマリズムとして当然です。しかし、どのような省スペース性や機能が欲しいかというのは個人によって結構異なるので、それぞれの需要に応えられるようにカスタマイズできるようにしたいと考えました。
成果物
実際に開発したものが、これです。開発はメンバーの技術とマルチプラットフォームでの動作を考え、Electronを使用しました。フロントの実装にはマストドン本家と同様にReactを採用しました。
左が、僕らの作ったアプリのホーム画面です。ウェブクライアントでは別々になっているローカルタイムライン、ホーム、通知を1つのタイムラインで見れるようにして、画面の端に置いておける省スペースアプリとなりました。また、タイムラインの1カラムも出来るだけ細くしました。しかし、friends.nico特有のニコるをしやすいように、ニコるボタンは大きめに設定しています。
これは、設定画面です。他画面が必要な時はドロワーを横から出しています。friends.nicoではトゥートの更新が非常に速いので、画面遷移ではなく画面拡張をすることによって、タイムラインを常に表示し、話題においてけぼりにならないようにしました。設定からは、何をタイムラインに流したり、通知するかを選べたり、アプリのテーマカラーを変えられたりします。
これは、ホワイトバージョンです。α版を使ってくれた人からは人気がありました。ちなみに、タイムラインの右上のピンボタンをクリックすることで最前面表示もできます。これもレビュー会で好評だった機能でした。
成果発表会を通して
成果発表会を行い、メンターの方からフィードバックを頂きました。僕らは、オープンソースとして公開することを目指しましたが、残念ながらそれは叶いませんでした。
しかし、省スペース性の追求という、自分たちのコンセプトは間違っていないことは開発を通して感じました。しかし、現段階でユーザーが満足に使えるレベルには達していない、コードが汚くて今後誰かが引き継げるような状態ではない、というのが問題でした。反省点としては、開発の全体の構成や、メンバーの技術力を考慮した予定管理ができず、行き当たりばったりの開発になっていたことです。悔しいですが、これからの開発に活かせれば良いかと思います。
最後に
他の社員さんと同じ部屋で開発を行い、多くの社員さんが自由に仕事をしているのを肌で感じる4週間でした。僕らも伸び伸びとプロダクトの考案・開発をしながら、的確なフィードバックを受けられて学ぶことの多いインターンシップとなりました。このような機会を提供していただき、本当にありがとうございました。