ひとメモ

主にプログラミングのメモ

Railsでボキャビル支援のwebアプリ作った(未完成)

興味のある英文記事から単語を抜き出すアプリを作った

こんにちは。ひとです。

読みたい英文記事があっても、知らない単語ばかり出てきて読み進めるのが大変じゃないですか?

そんな時はこれ。↓

ボキャビルサポーター

作りました。

まだ完成品とはとても言えないのですが、何とか使えなくもないレベルなので紹介させてください。

前提

私がよく利用している英単語学習アプリ、"iVoca"は単語帳を自作して勉強することができます。
そのフォーマットに合わせて、知らない単語を収集・出力し、効率よく単語帳を作ることを目的としています。

単語の学習自体は以下のサイトで進めることになります。

Home - 英単語タイピングゲーム iVoca

後述しますが、基本的には英語版のWikipediaから単語を抽出します。

使い方

トップページの真ん中にあるテキストボックスに知りたい単語を入力します。

次の画面で、頻出単語2800程度を除いた単語リストが出てきます。
ラジオボタンで知らない単語(覚えたい単語)を選び、一番下の送信ボタンを押します。

iVocaにそのまま貼り付け可能(←ここ微妙・字数制限に注意の項目を参照)なフォーマットで覚えたい単語リストが出てきます。copyボタンでコピーできます。

iVocaでブックを自作して、貼り付けます。
自分だけの単語帳を使って楽しくお勉強(^ν^)!

注意点など

怪しい訳に注意

トップページで入力する単語は、英語でも日本語でも大丈夫です。
日本語で入力した場合は、Googleの無料APIを使って単語を翻訳した上で、英語版Wikipediaの記事を探しにいきます。

日本語で入力した場合は全く関係のない記事が選ばれることもあります。
(例:青虫って入力したら鵜についてのページが出た。caterpillarのはずがcormorantで検索)

これはGoogleの翻訳がなぜかそうなってるからです。
調べたい言葉が英語で何と言うのかわかっている場合は、英語で入力することをオススメします。

単語の訳出にはフリーの英和辞書を使ってますが、こちらも正しさを保証しません。今のところそこまで突飛な間違いはなかったですが、怪しいなと思ったら念の為調べてみた方が良さそうです。

字数制限に注意

訳が推奨文字数の60文字を大きく超えていることがよくあります。 この場合、copyボタンを押す前に自分で適当な長さに編集する必要があります。
なお、知らない単語を選ぶ画面で訳文が編集可能なテキストボックスに表示されてはいますが、そこで編集しても最終のリスト出力画面には反映されません

本当はここで字数制限を超えていたら赤く表示したりして、お好みに編集した訳でリストを出力できたらいいんですが、まだそのあたりは未完成です。

なぜ作ったか

一時期Progateの有料会員になってRails講座を一通りやりました。
せっかく勉強したからにはRailsを使ってみたかったので、以前からの趣味である英語の勉強を兼ねて作りました。

かかった期間はギリギリ人に見せられる内容(一応動く程度)を作るのにちょうど3週間で、今もチマチマと改良しています。

ちなみにProgateで学べた部分はあんまり活かせてません…。

これから改善したいこと

  • クリックするのは面倒なので、キーボードで知ってる単語知らない単語を振り分けできるようにしたい。
    どういう技術を勉強すればできるようになるのかもまだわからない。

  • 訳文が60字を超えていると警告を出す。自分で編集した訳文でリストを表示。

  • 使っているとすでに覚えた単語が増えてくるので、簡単な会員登録をしてそれぞれの既に覚えた単語は省く機能?

  • 怪しい訳語があった場合すぐにチェックできる機能が欲しい。
    今のところはchrome拡張でiKnow!のポップアップ辞書とか使うのが良さげ。

  • 30分以内に次の画面に行かないとサーバーが停止して(?)、選択したデータが飛ぶかもしれないのでその対策。

  • URL入力でもうまくスクレイピングできるようにする。

  • スマホでも使えるようにする。

おまけ

読みたい英文記事のURLを入力するとそのページの単語を抜き出せる可能性があります…が、うまく動かない場合も多々あります。仕様です。

お世話になったリンク

何か変なところがあれば(いっぱいあるとは思いますが)、教えてくれると嬉しいです。
読んでくれてありがとうございました。