受験と将来とプログラミング

あると便利らしいから作った。

narou.rbをスマホだけで完結したい

知識、単語の使い方が間違っている可能性が高いです。許してください。

そもそもなぜやりたいのか

  1. スマホでなろう読む
  2. GoogleBooksにぶちこみたい
  3. だからepubが欲しい
  4. 変換するのにnarou.rbが良いらしい
  5. AndroidLinuxだからどうにかなりそう
  6. TermuxでRubyが動くらしい
  7. やろう

今どうなっているのか

Termuxに諸々の必要素材を入れ、narou.rbにLinuxだと認めさせる作業で詰まった。

筆者の知識

Linuxはほぼやったことない(適当にCentOS?っていうのを動かして鯖にしてDiscordBOT運営をしてる)
Rubyは知らない
Pythonは知ってる
FilterProxy使い
NoRootFirewall使い

スペック

SO-01K
Android 9

必要手順(知識収集)

vim(テキストエディタ)やらgit(よくあるやつ)やら、とりあえず色々入れておく。
入れてないとたまにエラーを吐かれる。まず最初に色々入れておく。
後、純粋にLocalhostのproxy噛ませてたり、VPN噛ませてるのもあるかもしれない。
qiita.com
『Homeディレクトリ~/から内部ストレージにリンクを貼る』
ubuntu-in-termuxを入れてUbuntuを動かす』

とりあえずこの通りにやってみる。

上手くいかない

調べると更新が入ったらしい
GitHub - MFDGaming/ubuntu-in-termux: This is a script by which you can install Ubuntu in your termux application without a rooted device

元のgithubを覗いて指示に従う。

ここから試行錯誤タイム(一回ごとにnarou.rb導入しようとしてる)

Javaが原因か?

Javaが存在しない。探して探して探しまくる。
JREJDK?ようわからん。とりあえず入れなければ...

github.com
これにたどり着く。

結局必要だったのかどうかは知らない。

ffiが悪さをしているらしい

なんやかんやでエラーコードが吐かれたので読んでみると
ffilibが存在しない。だとかなんとか。はぁ?
とりあえす普通に入れてみる。ダメ。
devを入れようとする。ダメ。

意味がわからない。詰んでないか?
探す。探す。

github.com
の、
apt install clang make ruby-dev libffi-dev
を打ち込んだらなんやかんや動いた。やったぜ。

まだ動かない

なんで動かないんだ、わからない。
とりあえず環境を変えてみることにする。
qiita.com
これをとりあえず試してみる。エラー吐かないで普通に入った。

手詰まり

github.com
の6で詰まった。

$ narou init
Traceback (most recent call last):
18: from /data/data/com.termux/files/usr/bin/narou:23:in `

'
17: from /data/data/com.termux/files/usr/bin/narou:23:in `load'
#省略
1: from /data/data/com.termux/files/usr/lib/ruby/gems/2.7.0/gems/narou-3.5.1/lib/device/library/linux.rb:12:in `'
/data/data/com.termux/files/usr/lib/ruby/gems/2.7.0/gems/narou-3.5.1/lib/device/library/linux.rb:13:in `': undefined method `name' for nil:NilClass (NoMethodError)

OSの名前?やらなんやらで引っ掛かる。
調べてみるとeuidがPythonで言うNoneになるらしい。だからNameがないと怒られると。
ソースを読んだ感じ、大体そう。
termuxのeuid問題なのかなぁこれ...

とりあえず、解決したら追記します。ここまでで詰まった人はコメントどうぞ。

Pythonのサーバーとか

ちょーっと気になって調べた感じ、違うっぽい。

自分が考えてるPythonサーバーって、リクエスト送って帰ってくるような奴を想像してたんだよね。まさにherokuっぽいの。

でも、他のサーバーってそうじゃないんだね~...

Pythonサーバーとしてherokuをバリバリ使えない理由は書いたけど、なんかなぁ...
herokuの追加機能と要相談だなぁという。
Discord BOTの送信受信もうまくいってないからそれも試行錯誤したい。

今は時間無いからまた今度にでも。

Line botについて

Line API with herokuで英単語BOT完成。Discordの英単語は運用停止。

たまに、Line BOTってそもそもなんでheroku使うんだって言う疑問が出て、数瞬後に『あ、公式推奨か』ってなる。(頑張ればheroku要らないとかないの...?)


heroku、慣れると便利だから他のBOTも(ファイル操作ない物は)移したい。
移せないBOTは無料のサーバー借りて運用だなぁ。

https://xn--t8j4aa4ntgvb8c2dre1cxqka5g3fb2887p2be232esy9i.com

こことか、

https://engineer-milione.com/create/python-execution.html

こことか参考にしてどうにか動かしたいなぁ...

Githubとか

Githubに登録したが、別にこれGoogle driveでよくない・・・?ってなってしまう。

Pushとか便利だし、ブランチ作れるのは良いと思うけども、クソザコプログラマ学生な自分は、ソースをわざわざ晒してまで使おうとは思えなかった。

 

一応登録してあるが・・・

https://github.com/BOMB08

久しぶりに。そして進展

とりあえず、自分に足りないのは「アルゴリズム構築力」だと考え、それが鍛えられるであろうサイトに登録してみた。

「Paiza」という素晴らしいサイト様だ。

 

で、実際どうかというと、

 

中高でプログラミングをある程度齧って、次にすることがねぇ!って子は登録すべき。

別に基本情報取ってもいいし、応用情報取ってもいいが、自分はこっちのサイトをお勧めする。

「Progate」とか、他にも参考になるものは山ほどあるが、「ある程度一つの言語で何かを作れる」「新しい言語ではなく、基礎構築力を伸ばしたい」って人はぜひ登録しよう!

 

で、ここからは別の話。

前回のEnglish BOTのデータベースが完成した(数週間前)。

Discordで実際に稼働させているが、生徒諸君にわざわざDiscordを入れて得体のしれない物を使ってくれるとは思わない。

 

なので、Line BOTの開発を始めることにした。まぁ基礎の基礎からやり始めてるから「あれなにこれなに」状態なんだが。

 

Youtube Live Chatで色々作ろうとしたが結局挫折。Twitterには留めっぱなし。

しばらくしたらまた作ろうと思う。

 

学業が忙しくなってきて、何かを作るってことが非常に難しくなってきた。

そのため、登下校で上記サイトを使い、アルゴリズム力を鍛える・・・そして落ち着いたらまた作るものを作る。という生活を送るつもりだ。

英単語のDiscord bot

最近、英単語のDiscord botを作っている。

コミュニケーション英語の教科書の単語を全部乗っけたBOTを作り、暇な時間にスマホでdiscordを使うだけという何ともシンプルなものだ。

 

単語は全部で1800種の予定だが、文章量が多すぎてついていけない。

 

元々、「!tango (単元番号) (英文) (単語)」という流れで登録してたのが簡略化していくうちに

「(英文1) (単語1)
(英文2) (単語2)...」

という風になった。

スピードは断然速くなったが、それでもまだ追いつかない。

教科書を写真で撮り→読み込み→OCR化→本文をコピー→意味調べ→入力

という面倒極まりない作業が必要だからだ。

 

これも簡略化し、

 

ネットにある本文をコピー→意味調べ→入力

になったのだが、それでも1800は気が遠くなる。

どうにかならんのだろうか・・・

講習会

県の教育委員会が斡旋(?)し、教頭から話が来た新環境を試す講習会を受けた。

HTML,css,jsを使ってスマホアプリを作るという講習だった。

・詳細

某県某市にある会社が主宰する講習会があった。新環境を試してみないか、ということで参加した。
講師としてその環境を作った会社の人が来てお話しした。その人もblogを書かなければいけないらしいので、もしかするとこのブログを見るかもしれない。
その環境を使い、スマホアプリを開発するのだと思っていたが、正しくは「新環境を使い、色々なOSで動作するWebアプリを作る」のようだった。

迷路ゲーム、占いするアプリなどなどを作ったり、弄るなりした。面白い人がいたお陰か基本的に緩やかに、簡単に進み、初心者でも簡単だったと思う。

が、私はパソコン部、他の学校から参加した人達はコンテスト出場をしたという猛者らしい。関係はあまりないように感じた。

パソコンがある程度できる人、が募集条件だったが、かなりガチの人ばかりが集まったのかもしれない。

まず最初に講師の方の簡単な紹介、言語の簡単な説明と勉強。そして昼休憩を挟み(社員食堂はおいしかった)、実際にアプリを作ってみる、例題をダウンロードして弄るなどした。

環境は素晴らしいものだし、講師の方、補助の方も面白く楽しい人だった。しかし、環境には無料プランと有料プランがあり、無料プランだとそこそこ昨日が限られるようだった。

記念品は食品とUSBファンだった。まだ食べてないし、使ってないから講評は出来ないが、悪くない品だろう。

頻繁に休憩をとり、三時にはおやつなどもあった。美味しく食べることができた。


書き殴るように思い付いた順に書いたため、内容がぐちゃぐちゃだ。直すつもりは無いが。


と言った感じで今日あった講習は無事に終わった。