u____tanの冒険

好きなことについて投稿します。

ラブライブのキャラクターの情報を返すAPIを作った

ラブライブ APIを制作しました。

コードはこちらで公開しています。

github.com

アニメキャラクターとしての情報のみを扱っています。

説明

ラブライブ(μ’s,Aqours,虹ヶ咲)のメンバーのデータを返す REST 形式の API サーバーです。

データの詳細

サーバー

PHP バージョン 7.1

API の仕様

認証

認証を行いません。

エンドポイント

http://utan.php.xdomain.jp/lovelivedatabase/api.php

GET

サーバーが持っているデータを返します。

レスポンス例

idは重複しないユニークな値です。

グループ別に返します。

http://utan.php.xdomain.jp/lovelivedatabase/api.php?groups=myu-z

?groups=myu-z には他に、aqours,nizi,all が用意されています。all はすべてのメンバー情報を返します。

[
  {
    "id": "1",
    "groups": "myu-z",
    "name": "高坂 穂乃果",
    "grade": "2",
    "birthday": "8月3日",
    "bloodType": "O",
    "height": "157",
    "B": "78",
    "W": "58",
    "H": "82",
    "CV": "新田 恵海",
    "description": "μ’sの発起人であり牽引者。多少の困難があっても持ち前の超ポジティブシンキングで次々と突破していくμ’sのリーダー。",
    "image": "https://..."
  },

  {
    "id": "9",
    "groups": "myu-z",
    "name": "矢澤 にこ",
    "grade": "3",
    "birthday": "7月22日",
    "bloodType": "A",
    "height": "154",
    "B": "74",
    "W": "57",
    "H": "79",
    "CV": "徳井 青空",
    "description": "音ノ木坂学院アイドル研究部の創設者で部長。スクールアイドルとしてのこだわりはメンバー1で、μ’sの活動をとても大切に思っている。一人称は「にこにー」。",
    "image": "https://..."
  }
]

学年別で返します。

http://utan.php.xdomain.jp/lovelivedatabase/api.php?grade=2

?grade=2 には他に、1,3 が用意されています。

[
  {
    "id": "1",
    "groups": "myu-z",
    "name": "高坂 穂乃果",
    "grade": "2",
    "birthday": "8月3日",
    "bloodType": "O",
    "height": "157",
    "B": "78",
    "W": "58",
    "H": "82",
    "CV": "新田 恵海",
    "description": "μ’sの発起人であり牽引者。多少の困難があっても持ち前の超ポジティブシンキングで次々と突破していくμ’sのリーダー。",
    "image": "https://..."
  },

  {
    "id": "25",
    "groups": "nizi",
    "name": "優木 せつ菜",
    "grade": "2",
    "birthday": "8月8日",
    "bloodType": "O",
    "height": "154",
    "B": "83",
    "W": "56",
    "H": "81",
    "CV": "楠木 ともり",
    "description": "他校からも注目を集める期待のスクールアイドル。アイドル活動で忙しいためか、「校内でその姿を見た人はいない」という都市伝説のような噂もある。実はアニメや漫画が大好き。",
    "image": "https://..."
  }
]

メンバー1人ごとのデータを返します。

http://utan.php.xdomain.jp/lovelivedatabase/api.php?id=2

?id=2 には他に、1~28 が用意されています。

[
  {
    "id": "20",
    "groups": "nizi",
    "name": "中須かすみ",
    "grade": "1",
    "birthday": "1月23日",
    "bloodType": "B",
    "height": "155",
    "B": "76",
    "W": "55",
    "H": "79",
    "CV": "相良茉優",
    "description": "かわいいもの好きで、スクールアイドルに対する憧れは人一倍強い。いたずらっ子な性格で、よくいたずらをするが、メンバーたちには全然効いていない様子。",
    "image": "https://..."
  }
]

API 試したい場合

github.com

こちらにコードを載せています。

最後のAPI 試したいを参考にして遊んでみてください。

初めてハッカソンに参加して得られたこと

参加したハッカソン

Open Hack U 2020 Online Vol.5

hacku.yahoo.co.jp

ヤフー主催のハッカソンです。

こちらのハッカソンに、23卒エンジニア志望Slackで集まった6人のメンバーで参加しました。

www.youtube.com

hackID:20のチームです。動画の開始時間1:32:10

私はフロントエンドを少し担当しました。プロダクトの詳細は動画を見てください。

嬉しいことにHappy Hacking賞と最優秀賞を頂きました。びっくりしました。

ハッカソン日記

1月18日

Slackで、23卒エンジニア志望Slackを作った方が立ち上げたチーム「サボテンとゆかいな仲間たち」の募集が開始されました。この時、私はHTML,CSS,JavaScriptを少し体験した程度でしたが、フロントエンド担当として参加を決意しました。

他にもチームはありましたが、23卒エンジニア志望Slackを作った方のチームならいけるかもしれないという理由で「サボテンとゆかいな仲間たち」に参加を申し込みました。

1月24日

初めてチームメンバーと話しました。自己紹介がメインでした。

とても緊張してました。

・・・

 これ以降は特にチームメンバーと話すことはなく、僕はハッカソンで使うであろうReactを学び始めました。最初はJSXを使うメリットが全く分からず苦痛でした。
 一人で学ぶことに飽きてしまい、私が所属するサークルのReactで書かれたサイトを拡張することにしました。他の方が書いたコードを見ることで、コードの書き方やディレクトリの分け方を学ぶことができました。

・・・

3月15日(ハッカソン開始)

初めてのミーティング
Next.jsを使いTypeScriptを導入することになりました。Next.jsも書いたことがなく、TypeScriptは難しいイメージがあったので、最後まで耐えられないのではないかと、諦めてかけました。

その後、 「Next.jsで初期プロジェクト立ち上げました、PRを投げていますのでレビューお願いします」というメッセージがスラックに来たので、コードを確認して特に何もせず放置していました。しかし、その後のメッセージがなく3時間ほど経過し、さすがにまずいと思い、「github でチーム開発を行ったことがないので、何をすればいいのか分からないのです。 レビューについては、僕からは何もないです。 すみません。」と返信しました。5分後に「githubの使い方について確認しましょう」と返信が来て、申し訳ないことをしたと思いました。

ここで、何をするべきなのか疑問に思ったら、すぐに聞く!と心がけるようにしました。

ここから、gitがまともに使えていないことが発覚し、チームメイトにたくさん教えていただきました。感謝しています。

3月17日

API定義書が完成し、各自が作るページを決めました、私は技術力に自信がなく、簡単なページを担当することにしました。

もっと重要なページがあったので、勇気を出して引き受けるべきだったかもしれません。

3月26日

なんだかんだ、私は、こまごまとした処理やページを制作して最終日を迎えました。

discordでフロントエンドメンバーと徹夜して開発しました。辛かったですが、私はとても楽しかったです。もし、またハッカソンに参加する機会があれば、発表前日に徹夜しなくて済むように技術力を高めたいです。

まとめ

  • 機会があって、少しでもやってみたいと思ったら挑戦することは大事だと思いました。

  • 学外の様々な方とかかわることができて、とても楽しかったです。

  • わからないことを隠すとチーム開発では迷惑になるので、調べてもわからない場合は助けを求めること、自分の判断で勝手にやらないことが大切だと思いました。(ほうれん草大事)

  • 2週間、チーム開発を行うとメンバーとのお別れが悲しくなる。

 私自身も成長することができ、賞まで頂けてとてもいい体験ができました。HackDayに招待されたので、それまでにたくさん経験を積んで、HackDayでは技術面でも楽しめるように頑張りたいです。

今年の振り返りと来年への抱負


twitter(日記)をすべて見返して今年の振り返りをしました。長いようで短かった。オンライン講義辛かった。。。

目次

今年始めたツール

活動履歴

5月中旬 Blenderをインストール(下の画像はインストールした日に作ったもの)

7月中旬 blenderの制作物を公開するためtwitterを開設

8月24日 伸びる

8月27日 VRChatを始める

9月23日 この日以降、ほとんどBlenderを触らなくなる

9月24日 HTML CSSの勉強を開始する。Visual Studio Codeをインストールする。

10月3日 ポートフォリオサイトを制作し始める

10月6日 完成する。(レスポンシブでなく、無駄に透過してる)

10月8日 PHPの環境を整える

10月10日 javascriptを勉強し始める

11月3日 Pythonを勉強し始める

11月5日 はてなブログを始める

11月9日 レンタルサーバーを借りて現在のポートフォリオサイトを公開する。(完成。拡張するかも)

11月14日 QUEST2(VRの機械)を購入する

12月初旬 初めてインターンにエントリーし落選する。

12月5日 SQLを勉強する

12月8日 ローカルにPythonの環境を整える

12月21日 Pythonで作ったアプリケーションをデプロイする

それ以降は、課題に追われたり、LTに参加したりで、今年は終了です。多分。

今まで紹介してきたアプリケーションは以下のポートフォリオサイトのWorksページからアクセスできます。紹介していないものもあるので見てください。

utan.php.xdomain.jp

来年頑張りたいこと

  • Java,Python,Reactとか、バックエンドもフロントエンドも体験したい。gitをマスターしたい。
  • インターンにも参加したい(受かりたい)。

簡単にPythonでアプリケーションを作ろう

f:id:u____tan:20201225225327p:plain
streamlitで作ってみたアプリ
目次

Pythonでアプリケーションを作るには

環境構築はAnacondaをインストールして行うとライブラリのインストールの時に楽らしい

Anacondaの環境構築 www.creativevillage.ne.jp

本題に入ります。 streamlitというライブラリを用いて行います。このライブラリが好き。

pip install streamlit

でインポートできます。簡単!

pypi.org

streamlitとは

pythonで分析する際にパラメータを優れたUIで簡単に変更できるライブラリです。
使い方

note.com

こちらの記事からもわかるように、pandasでグラフもきれいに描画できます。

デプロイもできる

www.streamlit.io

こちらのサービスにgithubのメールアドレスを登録することで、簡単に公開できます。登録後、承認メールが届くのに2,3日かかりますが、気長に待ちましょう。
詳しい方法

tech.ledge.co.jp

要するにgithubにpushするだけでデプロイできます。

メリット

簡単(特にデプロイ)
html,cssを一切書かなくてもいい(マークダウンも使える)

デメリット

デザインをカスタマイズできない。
データベースを使うサービスを作れない。

最後に

簡単にこんなものを作りました。使ってみてください。

https://share.streamlit.io/ohmoriyusuke/trimming-opencv-streamlit/main.py

Pythonを触ってみた

f:id:u____tan:20201211212848j:plain

 Pythonをローカル環境で実行したかった

私はAnacondaをインストールしローカル(Windows)にPythonの環境を作りました。

インストール後にAnacondaをインストールしたときにインストールされる対話型実行環境であるJupyterLabが起動できなかったりと大変でした。

 

Anacondaとは

【Python 環境構築】「Anaconda(アナコンダ)」とは?普通のPython環境との違いは?使うメリットはなに?についてサクッまとめました【anaconda python】 | Pythonプログラミング祭り: Pyざんまい

JupyterLabとは

図解!Jupyter Labを徹底解説!(インストール・使い方・拡張機能) - AI-interのPython3入門

 でもローカル環境を整えるのは、、、

私も環境構築が嫌で、どうしたらPythonを手軽に体験できるのか探してみると、Google Colaboratoryというものを見つけました。Google Colaboratoryとはローカルに環境を整えずに、クラウドで実行されるJupyterノートブック環境です。クラウドで実行できるので簡単に始めることができます。おすすめです。

 

Google Colaboratoryとは

colab.research.google.com

もちろんライブラリもインストールできます。

Googleドライブのファイル操作も簡単に行えます。

しかし、Google Apps Scriptのようにトリガーをセットして定期実行はできません。残念。

Google Apps Scriptとは

Google Apps Script(GAS)とは?できることから始め方までの基本|アナグラム株式会社

最後に

Google Colaboratoryで我慢できなくてローカルに環境を作りました。

Pythonを頑張りたい。

 

↓ 私が初めてPythonで作ったアプリ

https://share.streamlit.io/ohmoriyusuke/faceapi-streamlit/main.py

おすすめアニメ【笑えるアニメランキング】

笑えるアニメ TOP10

f:id:u____tan:20201111102946p:plain

様々なジャンルのアニメから10タイトル厳選しました!

dアニメストアにある作品はdアニメのリンクを掲載しました。もし、気になったものがあれば、リンク先であらすじなど確認してください。

目次

1.ばらかもん

anime.dmkt-sp.jp

笑えて、人々の成長を描いたアニメです。ストーリーがよい。

2.てーきゅう

anime.dmkt-sp.jp

完全ギャグアニメです。ショートアニメですが9期まであります。

3.あそびあそばせ

anime.dmkt-sp.jp

こちらも完全ギャグアニメです。ストレートなギャグです。

4.はたらく魔王さま!

anime.dmkt-sp.jp

他のアニメにない設定で面白いです。キャラクターが個性的です。

5.ヒナまつり

anime.dmkt-sp.jp

途中シリアスな場面がありますがギャグアニメです。キャラクターがかわいい。

6.プリズンスクール

anime.dmkt-sp.jp

過激な表現とキツイ下ネタが混ざり合うカオスなアニメです。

7.NHKにようこそ

anime.dmkt-sp.jp

鬱アニメとしても紹介されることがありますが、笑える面白いアニメです。自分自身と比べてしまうと鬱になるのかな。

8.三ツ星カラーズ

anime.dmkt-sp.jp

キャラクターがかわいく、ほのぼのでギャグ要素もあるアニメです。かわいい。。

9.荒川アンダーザブリッジ

anime.dmkt-sp.jp

 最初は展開が想像の上を行くアニメです。癖が強いため、最初ハマらなかったらハマらないかも。

10.手品先輩

anime.dmkt-sp.jp

 ほんとに暇なときに、期待しないで見た方が面白いかも。ショートアニメで下ネタ8割です。

おすすめアニメ【感動するアニメランキング】

感動するアニメ TOP10

f:id:u____tan:20201111092737p:plain
様々なジャンルのアニメから10タイトル厳選しました!

dアニメストアにある作品はdアニメのリンクを掲載しました。もし、気になったものがあれば、リンク先であらすじなど確認してください。

目次

1.天元突破グレンラガン

anime.dmkt-sp.jp

漢の友情を描いた作品です。2クールですが、最後は涙が止まりません。

2.ハイスコアガール

www.netflix.com

Netflixのみでの配信です。

ゲーマー小学生の恋愛を描いた作品です。ゲーム好きは必見のアニメです。

3.東京マグニチュード8.0

anime.dmkt-sp.jp

兄弟愛に感動します。地震のシーンが多々あるため、苦手な人は注意してください。

4.ヴァイオレット・エヴァーガーデン

www.netflix.com

Netflixのみでの配信です。

愛がテーマです。1話ごとのストーリーにも感動させられます。

5.輪るピングドラム

anime.dmkt-sp.jp

運命にあらがう子供たちの物語です。毎話見入ってしまいます。

6.宇宙よりも遠い場所

anime.dmkt-sp.jp

ネタバレしないので見てください。最後は泣きます。

7.C

anime.dmkt-sp.jp

世界観がとても面白く先が気になる展開です。守りたい世界は一体何なのか。

8.まどかマギカ

anime.dmkt-sp.jp

衝撃の展開など、飽きさせない展開と、最後の結末が好きです。

9.プラネタリアン

anime.dmkt-sp.jp

 全5話と短いですが、内容がとても濃く、あっという間に見終わってしまいます。こちらも世界観か好きな作品です。

10.とらドラ!

anime.dmkt-sp.jp

 コメディですが、複雑な恋愛模様や人間関係を描いており、心理描写が細かいです。キャラクター全員に注目です。