俺の出席がこんなに酷いわけがない!

CPS-LAB の shino です。

始まりました!
CPS Lab(ラボライフ!) Advent Calendar 2014 - Adventar

1日目。

"始まりました!"


とはいえ
Advent Calendarなる文化を初めて知りました。


さて、僕が研究室でいそいそと開発していた成果物をこの場を借りて発表させていただきますね。

俺の出席がこんなに酷いわけがない!

です。


What kind of Service?

あれ、俺この授業「ピッ」したっけ?という不安を解消します。通称、俺席。

講義に出席をしたことが確認されたらユーザのTwitterアカウントに通知をします。

I科はTwitter稼働率が高いのでTwitterで通知するのが妥当だろうということ
またOAuth認証が使えるからセキュアなシステムがきっと作れると期待してTwitterを利用。

Story

FI科鯖プロの授業で発表したものをリニューアルして稼働したいねって話から。

What's "Sabapro"?(Mackerel?)

FI科3年のサーバープログラミング演習の略。
グループワーク。4~5人のグループでシステムを提案して実装まで行う演習

噂では友情崩壊演習とか、とか.....

Suggest Problems

東京電機大学千住キャンパスでは講義に出席する際各教室に取り付けられたICカード読み取り端末に学生証をタッチすることで出席判定がされる。

その手軽さゆえに、学生証をタッチしたか覚えていないことがあったり
(「あれ、タッチしたっけ?」)

講義開始時間10分より前に学生証をタッチしてしまって出席判定がされなかったり。
(「えっ、タッチしたのに出席になってないんだけど!?」)

などなど。出席関係で悶々とした講義を過ごした人がいるんじゃないかな。

How to make it?

python2.7+Django1.7
selenium , PhantomJS 使ってスクレイピング

Difficulty in solving

出席情報の取得。3日ぐらいかかったかな。
python の UnicodeDecodeError これでpython挫折しそうだった(泣)
(出席情報の取得部分のみを実装するためにRubyのお勉強を始めてみたりもした。)
最初python3 で実装していたんだけど、twitter連携の部分で対応しているライブラリがなくて敢え無く2.7に切り替えた。

print "hello,python" # これがpython3では怒られる, 2系はok
print("hello,python")

Impressions

人生で2個目のwebサービス開発(1個目は杭)
ちょっと背伸びしてpython3を使ってみたけど、python2と殆ど変わらない?
ただunicode, strを気にしないで実装できるけど、まだまだ定着はしていないので先人の知恵をお借りすることができない。


pythonのUnicodeDecodeErrorに勝てない。
玄人はそこを乗り越えているのだろうか....。
みっちり教えて欲しい!
というかみっちり勉強して乗り越えるか。
またはRubyに乗り換えるか。

Gain

・忍耐力
・忍耐力
・忍耐力
・鯖立て力(何か適当な言葉があったらコメントください)
python力(まだまだ使いこなせてないよなぁ)
webサービス一通り作る力
・webスクレイピング
・セキュリティの知識,SSLの発行
・node.jsさわった力
(最初はnode.jsで実装する予定だった。)
(でも慣れてるDjangopythonで作りたくなった。)
Rubyさわった力
javascript直接叩くところtjmspにご教授願いたい)
(↑スクレイピングjavascriptを直接叩けなかったらこのサービス稼働できなかった。)
口内炎1こ

Lost

・健康な生活習慣
・不規則な食生活
・研究する時間(うふ)

Introduction

星太先生@ごりりん (@seita_sensei) | Twitter
twitterで鯖プロ一緒にやろう!って誘ったら一緒にやってくれた大事なお友達
演習時代ははC#スクレイピングのところを実装してくれた。
今回はフロント担当。


また何か作りたいなぁ。

以上、1日目でした。


俺の出席がこんなに酷いわけがない!
https://oreseki.cps.im.dendai.ac.jp/
(12/06 18:25 現在 運転中 。)


次回は 超Vim使いのえるざっぷくん。
ざっぷくんのVim捌きを見て僕もVimmerになりたい!って思うほど。

期待。


来週は
誰でも作れるWebサービス入門Django
または
誰でも作れるWebサービス入門Ruby on Rails
を書こうかな?

print "hello, python!"
print "hello, Django!" # 読み方は"じゃんご"
print "hello, oreseki!"