カテゴリー: programming

  • Agile Japan 2017 愛媛サテライト 参加レポート

    Agile Japan 2017 愛媛サテライト 参加レポート

    Agile Japan 2017 愛媛サテライト にスタッフとして参加しました。
    参加していただいた皆さん、開催に向けて協力していただいた皆さんに感謝。

    イベントの告知ページはこちら
    Agile Japan 2017 愛媛サテライト

    今年のテーマは「安全に失敗できる環境を作るには?」

    ということで、4月13日に東京で開催された Agile Japan 2017 での Joshua Kerievsky さんによる基調講演「モダンアジャイル」のビデオ視聴と、モブプログラミング体験の2つをメインに行われました。

    最初にこばともさん @kobatomo3H のオープニングの説明があって、続いて かけださん @kkd のプレゼン。
    イントロダクション 『モダンアジャイルの前にアジャイル紹介』


    その中での @kkd さんのまとめ

    アジャイルなプラクティスや
    スクラムのようなフレームワークや
    アジャイルマニフェストよりも
    大事なことは、
    自分たちの現場に適した
    よりよいやり方を探し学び続けること

    なるほどー。

    次にメインの基調講演(ビデオ視聴)。
    子供さんの補助輪をつけた自転車の練習の様子や、日本の高度経済成長の象徴である新幹線の開発の事例などを交えて、大変興味深い内容でした。

    ここで、休憩を挟みます。

    いよいよモププログラミングが始まります。
    まず、あんどうさん @nobiinu_and の説明。

    次にやっとむさん @yattom によるTDDのデモの後、3つのチームに分かれて実施。
    1チーム目はそのままメイン会場にて実施しました。

    2チーム目は隣の会議室にて。

    ※MacBookにWin用の英語キーボードという組み合わせで混乱を招いたようですみませんでした。

    3チーム目は座敷の会議室にて。

    3チームともPythonを使ってのモププロでした。各チームとも、付箋を使ってしっかりと振り返りを実施。

    ここで休憩を挟んで、篠原さんご登壇。

    そして、数名の方にLTをしていただいて、最後に集合写真。

    イベントの最後に参加者の皆さんにアンケートに協力していただきました。
    大半の方に満足していただけた様子ですが、その一方で飲み物の問題や、会場の音声についてなど、貴重なご意見もいただきました。今後の課題として改善していきたいと思いますので、Agile459のコミュニティへの参加も含めて、ご協力よろしくお願いします。

    参考までに、当日のツイッターのまとめ。
    Agile Japan 2017 愛媛サテライト まとめ

  • PyEhimeもくもく勉強会を開催しました

    イベントページはこちら

    今回のみなさんの課題は、

    • Djangoチュートリアル
    • 機械学習 – オンライン講座
    • 環境構築 – VirtualBox

    このような感じでした。

    私自身は、前回(昨年12月)のもくもく会の際に、

    環境構築はそれぞれ勉強なり準備するとして、成果物を簡単に共有できた方が良い。

    のような議論があって、そのときにあがった Cloud9 を使ってDjangoチュートリアルを進めました。

    事前に Cloud9 でDjangoプロジェクトを作ってある程度進めていたので、
    はじめての Django アプリ作成、その 6
    はじめての Django アプリ作成、その 7
    このあたりを中心に試してみました。
    テンプレートのカスタマイズや管理サイトの機能追加など、実際にコードを書いてブラウザで確認することでDjangoの雰囲気がつかめて来た気がします。

    さて、次回ですが、まだ具体的な時期とかは決めていませんが、流行の機械学習を一緒に学んでみようと思っています。

    06.12追記
    もくもく会の後半で少し議論させていただいた教育関係のクラウド導入の件で、まとまった資料が公開されていたので参考まで。↓
    総務省 – 「教育ICTの新しいスタイル クラウド導入ガイドブック2016」の公表

  • Firebase勉強会に参加しました

    5月20日土曜日にFirebase勉強会に参加しました。

    Firebase勉強会 in Ehime

    最初に参加者みなさんの自己紹介があって、興味分野とか近況などを軽く共有して本題に。

    どのプラットフォームで勉強するかを選ぶということで、ウェブを希望。

    ちなみにFirebaseの概要はこちら。
    Firebaseドキュメント

    具体的にはこちらの記事を参考にさせていただきました。感謝。
    Firebaseの始め方 – Qiita

    開発環境の準備としては、
    Firebase CLI リファレンス
    Firebase CLIを使うために、npm コマンドがインストールされていなければ、
    Node.js をインストール。そして、
    npm install -g firebase-tools
    で Firebase CLI をインストールします。

    あとは firebaseのコンソール を開いて、記事に沿って進めていきます。

    ということで、言われるままにソースを編集して、コマンドを叩いているうちに簡単なチャットサービスができました。しかも、ローカルの動作確認から実際のウェブで確認(deploy)できるところまで。

    本格的にサービスを構築して運用ということを考えると、色々とやるべきことがあるのかもしれませんが、例えば、ちょっとした要望が上がって、「こんな感じでいかがでしょう」とサクッとプロトタイプ的なものを作って実際に試してみる場合など、非常に効率よく進めることができそうです。

  • PyEhimeもくもく勉強会

    PyEhimeもくもく勉強会

    前回の開催から少し間が空きましたが、2回目のもくもく勉強会を開催しました。

    PyEhime もくもく勉強会

    都合により、今回も急遽の開催となってしまいました。十分な告知ができずすみません。
    次回は、会場の手配を含めてもう少し余裕を持って準備しようと思いますので、ご理解・ご協力をお願いします。

    前回はPyEhimeの初めての自主開催ということもあって、とりあえず集まっての意見交換程度でしたが、今回は少し足並みを揃えて、cloud9でdjangoを動かしてみるというところまではできました。
    ちなみに、私は今回の勉強会のために、事前にvagrantでローカルの開発環境を用意して、準備万端のつもりだったのですが、現地で起動してみるとホストOSからアクセスできない状態。あとで調べて、CentOS(vagrant box)のネットワークインターフェースの問題ということがわかりました。この辺りも、まだまだ経験不足です。
    それと、当日、私が風邪気味で頭がぼんやりしていてあまり手を動かすことができませんでした。いろいろ失礼しました。

    さて、このような感じで、cloud9というクラウド上の開発環境を一つのノウハウとして共有することができましたので、このあたりをベースにして勉強会を継続できればと思っています。
    ただし、具体的な目的や目標がないと、どうしても時間を無駄にしてしまいますので、何か一冊、本を選ぶなどして効率よく学ぶことも考えてみます。
    まだまだぎこちないですが、まったりとやっていますので、pythonプログラミングにご興味のある方はお気軽にご参加ください。
    適宜、ハッシュタグ #pyehime でおしらせします。

    それとPyCon JP参加者交流用のSlackがあります。そちらのehimeチャネルで日常のやり取りをしていますので、よかったらどうぞ。

  • vagrant環境のアップデート ( 1.8.6 -> 1.9.1 )

    vagrant 自体をアップデート(1.8.6 -> 1.9.1)して、vagrant up したらエラーになったのでメモ書き。

    基本的には、vagrantの新しいバージョンをダウンロードして上書きでインストールすれば良さそう。
    https://www.vagrantup.com/docs/installation/upgrading.html

    で、アップデートして起動した際のエラーメッセージ。

    Vagrant failed to initialize at a very early stage:

    The plugins failed to initialize correctly. This may be due to manual modifications made within the Vagrant home directory. Vagrant can attempt to automatically correct this issue by running:

    vagrant plugin repair

    If Vagrant was recently updated, this error may be due to incompatible versions of dependencies. To fix this problem please remove and re-install all plugins. Vagrant can attempt to do this automatically by running:

    vagrant plugin expunge –reinstall

    Error message given during initialization: Unable to resolve dependency: user requested ‘vagrant-vbguest (> 0)’

    ということで、メッセージに従って、
    vagrant plugin repair
    を実行すると、

    Repairing currently installed plugins. This may take a few minutes…
    Fetching: micromachine-2.0.0.gem (100%)
    Fetching: vagrant-hostsupdater-1.0.2.gem (100%)
    Fetching: vagrant-vbguest-0.13.0.gem (100%)
    Installed plugins successfully repaired!

    修復できた模様。
    vagrant up でゲストOSが起動できました。

  • Django on vagrant の環境構築の補足 – Python3

    pyvenv の pip を更新(9.0.1)して、
    $ pip list
    とすると、

    DEPRECATION: The default format will switch to columns in the future. You can use –format=(legacy|columns) (or define a format=(legacy|columns) in your pip.conf under the [list] section) to disable this warning.

    という警告が表示されたので、
    https://pip.pypa.io/en/stable/user_guide/#configuration
    こちらを参考に、
    (pyvenv)/pip.conf
    を作成。

    [list]
    format=columns

    次に、開発用の簡易Webサーバを起動して、ブラウザで開くと、

    DisallowedHost at / …

    のような警告が表示されたので、
    https://docs.djangoproject.com/en/1.10/topics/settings/
    こちらを参考に、
    (project)/settings.pyを編集して、

    ALLOWED_HOSTS = [ '192.168.33.xx' ]

    を追加。

    追記(2016/12/12)
    モデル定義を編集してmigrateしたところでWARINGSが表示された。

    WARNINGS:
    ?: (mysql.W002) MySQL Strict Mode is not set for database connection ‘default’
    HINT: MySQL’s Strict Mode fixes many data integrity problems in MySQL, such as data truncation upon insertion, by escalating warnings into errors. It is strongly recommended you activate it. See: https://docs.djangoproject.com/en/1.10/ref/databases/#mysql-sql-mode

    https://docs.djangoproject.com/en/1.10/ref/databases/#mysql-sql-mode
    http://django-mysql.readthedocs.io/en/latest/checks.html#django-mysql-w001-strict-mode
    このあたりを読んで、settings.pyのDATABASESにオプションを追加。

    'OPTIONS': {
        'init_command': "SET sql_mode='STRICT_TRANS_TABLES'",
    },
  • PyCon mini Hiroshima 2016 に参加

    PyCon mini Hiroshima 2016 に参加

    2016年11月12日(土曜日)に PyCon mini Hiroshima 2016 に参加してきました。
    https://pyconjp.connpass.com/event/39164/

    当日のツイートの様子 - togetter
    PyCon mini Hiroshima 2016 「広島と Python」 #pyconhiro #iotlt広島

    当日の動画や資料が公開されています。
    https://pyconjp.connpass.com/event/39164/presentation/

    IoTというキーワードは持っていなかったのですが、今年、愛媛でもPythonコミュニティが動き始めましたのでLT枠にてご紹介しました。飛び入り参加でしたがお時間をいただきありがとうございました。

  • PyEhimeもくもく勉強会

    7月末にPython Boot Camp in 愛媛(初心者向けチュートリアル)を開催したあとで、Slackでやり取りをしていまして、その中で各々勉強したい課題が幾つか見えてきましたので、今後の愛媛でのPythonコミュニティの活動をどうしていくかという作戦会議を兼ねてもくもく勉強会を開催しました。

    開催に向けて日程調整をしたところ、connpassでイベントを公開したのが開催の2日前という、急遽の開催となってしまいました。
    告知期間が短くてすみません。今後の愛媛での開催に向けての準備ということでご理解いいただければ幸いです。
    また、急な開催にもかかわらず4名の方にご参加いただきました。お忙しい中ありがとうございます。

    会場に利用させていただいたカフェですが、Wi-Fi環境はフリーなものがいろいろ使えます。ただし6人掛けのテーブル席まわりでは電源は取れませんでした。4人掛けのエリアにはいくつかあるそうです。

    開催中の様子。

    PyEhimeもくもく勉強会
    PyEhimeもくもく勉強会

    さて、開催の中身ですが、

    • vagrant + python3 + django
    • python programming on Android
    • urllib + BeautiflSoupによるスクレイピング
    • eclipseのDjango開発環境
    • cloud9でDjango
    • 次回は11月中旬以降?
    • それぞれ興味のあるライブラリを試してみて教えあう
    • もう少しDjangoを使って参加者のレベルを近づける
    • などなど…

    のような感じでした。
    あと、Google Driveでのファイル共有、appear.inでの画面共有なども行いました。

    始めたばかりで右往左往の状態ですが、無理のない範囲で継続していきたいと思います。
    Pythonプログラミングにご興味のある方がいらっしゃいましたらお気軽にご参加ください。

  • Python Boot Camp in 愛媛

    2016年7月30日にサイボウズ株式会社松山オフィス様にてPython Boot Camp in 愛媛を開催しました。

    詳しくはこちら。
    Python Boot Camp in 愛媛 を開催しました!!

    当日のTwitterのまとめ
    Python Boot Camp in 愛媛まとめ(togetter)

    次回は熊本にて開催されます。
    Python Boot Camp in 熊本
    Python Boot Camp in 熊本 懇親会
    この機会にぜひご参加ください。