YWT(やったこと、わかったこと、次にやること)を書きます。以下がやったことです。
やったこと
- 家に積んであったAruduino UNO R3 Starter Kitを動かし始めた。
- 謎の用語をChatGPTに質問しつつ、マニュアルを読んでみた
- とりあえず、Aruduino IDEをインストールした。
- Aruduino IDEでポートがなかなか認識されない問題にハマった。
- Blinkのプログラムを書き込んだ。(Lesson 2まで)
前提
Aruduino UNO R3 Starter Kitを積んであった。 以前、「Aruduinoを触ってみたい」と思うタイミングがあったのでAmazonで注文した。
その数日後に届き、AruduinoとStarter Kitに部品がいっぱいあるのをみて「これ、何に使えるんだろう?」というところで詰まってしまった。「それはやってみたらわかるんじゃね?」と思って手を動かそうとしたが、マニュアルを開いたら謎の用語が多すぎてそこで放置していた。他にも興味あることがあったし、「めんどいから後でやろ」みたいな感じで放置された。
そして、とりあえず棚の上に置いて次の機運が高まるのを待っていた。今回、機運が高まってきたので、それを触り始めた。
わかったこと
ユースケースが見えるとやる気わく
今回、やる気が湧いてきたのは、ユースケースが見えてきたからだ。 流れ的には、「こんな感じでセンサしかけてこういうデータ収集して云々」という話をした。その中で「これ使えば、こんなことを分析できるのでは?」とか人と話した。話していると実際にやってみたくなる。途端にやる気が湧く。
実現方法を考えていたら、データ収集ではAruduinoが良さそうだぞ、ということに改めて辿り着いた。そこで「あ、そういえば、Starter Kit買ったけど、放置してたわ」と気づいたので触ってた。すぐに触り始められる環境にあるの重要。
ChatGPTがあるとめちゃ捗る
今回、マニュアルを読みつつ、わからん単語は全てChatGPTに質問した。このやり方でマニュアルを読むとめちゃ捗る。
僕の性質なんだろうが、謎の用語を「これはこういうものだ」として進めていくのが結構苦手である。読みながら、気になってしまい、つい調べてしまう。一つ一つのキーワードを全て調べたくなってしまう。なので、最初のハードルが高くなりがち。なんもわからん。となって終了しがち。
それが、とりあえず、わからんキーワードを箇条書きで書いて、ChatGPT にまとめて説明させて、その説明を読むと、なんとなくわかった気になって前に進める。
僕が若干バグっているんだろうが、この説明がどれくらい正しいかは、手を動かす段階では気になっていない。「ああ、なるほど、こういう概念か」と自分の中で理解できれば、とりあえず手を動かすことができる。そしてその理解が合っているかどうかは、実際に動かしてみて確かめる。
自分の頭の中にあるモデルと、実際の動作がどれくらい一致してるかを検証していくイメージ。まず自分の頭の中にモデルがないと、手を動かすのが面倒。 とりあえず雑な理解をするためにChatGPTめちゃ便利。学生時代に欲しかった。今も学生だけど。(専門職大学院生)
ポートがなかなか認識されない時
これは未来の自分に向けたメモだが、マシンを再起動してみたり、IDEを再起動したり、USBを抜き差ししたりすると認識される。macOSでアダプタ挟んでても認識される。
特に今回はUSBが認識されにくかった。アプリ再起動、マシン再起動、USB抜き差しを繰り返してやっと認識された。ソフトウェアの場合は、きちんと繋がってたら認識されるが、ハードウェアは一件繋がってそうに見えてもなかなか認識されないとかあるのを思い出した。
昔、音楽制作をやってた時によくそういうことによく遭遇したなあ、とか思い出した。というか、もうちょっとアレがなぜ発生しているのかを技術的に知りたいなあ。そんなことを考えながらデバイスドライバーについて学びたい気持ちがあったのを思い出した(いつ使うねん)
簡単にプログラム書き込みができる
なんとなく初めて動かすまでは気持ちのハードルが高い。しかし、やってみると意外と簡単にプログラム書き込みができたと思った。
まあ、STEM教育に使われるような10歳以上が使えるキットなので30代のソフトウェア開発者としては、簡単にやっておきたいところでもある。
動かしてみて、学生時代にも近いことをやった気がした。マイコンとかの授業あった気がするな、など。ただ、10年以上前だし、残念ながら当時の私はよくわかってなかった。特にわからない単語が多い状況で、とりあえず手順に従ってやってみたら動いた、という体験だった。「なんかよくわからないけど動いた。おつかれさん。」で終わってた気がする。
そして、用語わからんがどこで調べるのかわからなかったり、周りの人もよくわからん感じだったように思う。それを今回は、用語をChatGPTに聞きながら進められた。それによりかなり理解が進んだ気がする。素晴らしい。
繰り返すが、学生の頃にChatGPT欲しかった。学生はみんなChatGPT使いましょう。
あ、ついでに書きますが、コンビニとかで雑にアルバイトしてる学生がいたら私のお手伝いして欲しいので連絡ください。プログラミングの調べ物しながら簡単なスクリプトを書いてもらうお仕事とかがある。タイピングができてプログラミングに興味があれば、連絡ください。
やはり動くと嬉しい
プログラムの書き込みができて、LEDがチカチカしてると、「おお!」という気持ちになる。めっちゃ簡単なプログラムなのに、物理的なものが動いてるとなんか感動があるように思う。
まだLEDチカチカしか刺せてないし、最初にやろうとしていたようなセンサーからデータをとってくる話もやってないけど、ちょっとワクワクした。
次にやること
今回は時間の都合上、ここで終了する。
が、とりあえずサンプルのプログラムが動く状態になったので、また時間を見つけてチュートリアルくらいは終わらせてみたり、収集したデータをサーバーにためて分析してみるとか、なんかそれっぽい遊びをしてみたい。
今日は終わり