#えむけーろぐ

間違った事を書いていたらやさしく教えてください

2017/06/11

唐突に街の空気を吸いたくなったので札幌に行った。

札幌に行ったら絶対に行くべきばりきやラーメン。

f:id:mktakuyax:20170611151726j:plain

夜の街をぶらぶらするのが好きである。新宿あたりの方がもっと夜の街って感じで好きだけど、こっちもこっちで好き。

f:id:mktakuyax:20170611204604j:plain

f:id:mktakuyax:20170611204636j:plain

札幌駅の地下にある謎の丼屋で食べた。店の名前は忘れた。これはマグロアボカド丼。

f:id:mktakuyax:20170611211917j:plain

ラーメン食べたし、適当なカフェを転々として熱統計力学の課題と、溜まっていたけど放置していたバイト開発のタスクと、水俣病についての課題レポート半分が終わったので、やることもやったしうまいもの食べたしで充実した日曜日だった。

帰りにちょっと大変な目に遭ったけど、まぁ仕方がない。。たまたま近くにいた中学時代の友人に拾ってもらってドライブして帰ったので、結果的に楽しい夜であった。良い。

2017/06/08 unsubscribeについて

そういや、苫小牧高専News bot メール版も、授業変更フィードも、subscribeの方法はちゃんと用意してあるのに、unsubscribeの方法はあっても説明不足だったりお粗末まものだったりするので、この土日は少しこの辺作り込んでみよう。

いろいろあってGitHubの草も続いているし。

 

先日作ったTNCT授業変更情報 iCalendarフィードがたまに落ちる。再起動すると直る。

TOPページは大丈夫なのだが、各クラスのフィードにアクセスするとInternal Server Errorを吐くので、DBまわりのなんかがまずいのであろう。

詳しい原因の究明はこの土日でするとして、とりあえずcronで半日に一回再起動することによって、落ちたまま放置ということは起こらないようにした。。

しかしまぁ、serviceファイルはsystemdで定義しているのに、timer処理はcron使うというこの歯がゆさよ。。だって、時間なかったんだもの。。

監視ソリューションもなんか用意しておかないとな。うむ。

追記 2017/06/08 22:53

DBのdisconnect忘れてただけであった。。

風呂用スピーカー買った: Anker SoundCore Sport

昔は、風呂なんか音楽聞かずにチャチャッと入ってしまえばいいじゃんという人間だったのだけど、最近は考え方が変わって、風呂で音楽なりPodcastなりを聞きたいという欲求があった。

軽くAmazonで検索してみると、なんと俺達のANKERさんから防水Bluetoothスピーカーが出ていた。2種類も。

前者の後継機が後者という感じかな。機能もいろいろ後者の方がついていそう。僕は、風呂で音楽やPodcastが聴ければなんでもよかったので、安かった前者を購入。

f:id:mktakuyax:20170604105745j:plain

f:id:mktakuyax:20170604105935j:plain

f:id:mktakuyax:20170604110305j:plain

f:id:mktakuyax:20170604110324j:plain

まだ風呂で使ってないけどたぶんいい感じ。小さいスピーカーなので音がこもっている感じがするがまぁそれは仕方がないであろう。このスピーカーに限らず、小さいスピーカーを使っていて音のこもりが気になる人はiPhoneの設定からMusic AppのイコライザをSmall Speakersにすれば良いと思う。めんどいから俺はやらないけど。

追記

実際に風呂で使ってみた。浴室の中にS字フックがあるので、そこにスピーカーのストラップをかける感じ。

音はかなり大きめなので、湯船に使ってる時はもちろん、シャワー浴びてるときでもちゃんと聞こえた。音質云々は、風呂で聞く音楽やPodcastに求めるものではないと思うが、問題には感じなかった。

良い買い物であった。ちなみに今日聞いていたのはyatteiki.fmのep27です。

yatteiki.fm

やる気が出ない20170530

やる気がない。とにかくやる気が出ない。

僕のまわりの人達は、やる気がしないと言いながらもなんだかんだちゃんとやる人ばかりなので、すごいと思う。こういう人達が社会に適応して、より良い社会を作っていくんだと思う。僕はというと、やりたくない事、つまり、やる気の出ないことは、絶対にやりたくない。

学校という場所は、意味があったり無かったりすることを学生に強制的にやらせて、何かを教えた気になっている人達が運営している場所なので、僕ら学生はやる気の出ないこともやらなきゃいけない。

そういうときは無理してやる気を引き出していたのだけど、そのやる気の出し方を忘れてしまった。低学年の頃は、興味のない事(主に電子回路に関するいろいろ)をなんとかやる気を出してやっていたけど、高学年になると授業の内容がだいたい興味のあること(主にソフトウェアやネットワークに関するいろいろ)ばかりになったので、やる気を出そうと思わなくてもそれなりのやる気で物事をこなす事ができていたし、たとえいくつかのクソ授業があっても一応情報工学科の授業だから、ということで自分の中で納得もしていたはずだ。

今のやり方は、なんというか、何もかもできる人材を育てようとして、何もできない人を育てているような気がしなくもない。学生にiPadを配ればクリエイティブになるわけではない。興味のあることを数年間学んでいたせいで、興味も無ければ授業もクソな物事についてやる気を出す方法を忘れてしまった。

やる気を出さないと本当にまずい。

情処LTで発表してきた #josholt

苫小牧高専の情報処理同好会では、不定期で「Josho.LT」という技術系のLTイベントをやっている。昨日23日(火)に、今年度初のLTがあり、せっかくなので発表してみることにした。最近専攻科とSwitchのゼルダとバイトの開発で忙しくて、全然趣味プログラミングをできていなかったので、これをきっかけにサクッとなんかアプリでも作ろうというモチベーションもあった。LT駆動開発である。

今回のLTのために作ったのは、「苫小牧高専授業変更情報 iCalendarフィード」である。学校のWebサイトの授業変更情報ページから情報を取得し、各クラスごとのカレンダーフィードを提供するという、シンプルなWeb Appだ。フィードでは、前の週の月曜日から、次の週の金曜日までの3週間分の授業変更情報が提供される。

TNCT授業変更情報 iCalendarフィード

発表資料はこんな感じであった。

speakerdeck.com

ソフトウェアテクノロジー部で2年生向けにRubyをやっています、その時に僕は「Rubyは(去年やったC言語と比べて)サクッとモノを作れるよ〜」という話をしているけど、実際どうなの?というわけで、サクッとモノを作ってみたよー的な話をしたと思う。

スライドのDemoの部分では、こんな感じの事をやった。

www.youtube.com

スライドにもある通り、このアプリは大きく2つのプログラムから構成されている。授業変更情報を取得してDBに保存するプログラム(mktakuya/jyugyou)と、DBからデータを引っ張ってきてiCalフィードを提供するWebApp(mktakuya/jyugyou-feed)だ。

mktakuya/jyugyouでは、以下のような技術を使っている。

  • プログラム言語はRuby
  • HTMLのパースにNokogiri
  • データベースとしてPostgreSQL
  • DBをRubyからいじるためのライブラリ Sequel

また、mktakuya/jyugyou-feedでは、

という感じだ。

スライドに書くの忘れてたけど、授業変更情報取得プログラムもRaspberry Pi 3上のcronで3時間に1回定期実行するようにしている。また、jyugyou-feedもsystemdのserviceファイルを作って、systemctrlコマンドでstart/stopできるようにしてある。そのうちcronやめてsystemd.timerに移行したい。

あと、HTTPS接続とコンテンツのキャッシュのためにCloudflareを使用している。これiCalフィードもキャッシュしてくれているんだろうか。その辺どうやって調べるんだろう。あとで調べる。

今度の展望としては、まずUIがクソなのでなんとかするのと、コードも書捨てのつもりでサクッと書いたものなのでなんとかするのと、本格的に動かしていくならもっと運用のことも考えていかなきゃいけないという事がある。まぁぼちぼちやる予定。

LTということで発表時間は一応5分で長話もできないし、低学年も増えてきてみんなやってることもバラバラなので深すぎる話をしても意味ないと思うしで、「こんなんあって、こんなん作れる。みんなもやってみて!」的なノリで話した。

RubyなりPythonなりのLLの使い方覚えて、適当なライブラリ探して適当にやりたい事見つけて適当にモノ作るという体験、早めにしておくとプログラミング楽しいってなりやすいと思う。授業でC言語やってるけど思ってたのと違うつまらんって人は、もちろん授業でやるC言語も大事だけど、こういう言語に手を出してみて、適当にTwitter APIなり学校のWebサイトのデータ収集して加工したりなんなりして遊んでみてはどうでしょう。