ブログ

  • WordBench愛媛 もくもく会 を開催しました。

    3月3日金曜日の夕方に WordBench愛媛 もくもく会 を開催しました。

    ブログで収益を上げる学生さんや、はるばる岡山からのデザイナーさんなど少人数ですが多彩な顔ぶれでした。
    きびだんごのお土産もありまして、みんなで美味しくいただきました。

    今回は、最初にみなさんの自己紹介の後、私が直前に作成した簡単な資料でローカル環境についてご紹介。

    その後は、WordPressに関係あることないこと、日常の関心事など、情報交換というよりはよもやま話でとても盛り上がりました。

    開催する前は、手を動かして何らかの成果を上げて、と形式にこだわって若干神経質になっていたのですが、開催してみると、あまりそういうことは気にせず、コミュニケーションを大切にすることでそれなりに充実したイベントになると感じました。要するに、参加者のみなさんのおかげですね。感謝。

    さて、今回(一応)用意したテーマのローカル環境について、もくもく会の当日、Local by Flywheel が良さそう、という話がありまして後日試してみました。
    ダウンロードしてインストールを実行するだけで Dockerベース の環境が簡単に構築できて、GUIで複数のサイトを作ることができます。
    私自身、普段はプラグイン開発やテーマのカスタマイズでVCCWを使っているのですが、コマンドラインが中心の操作になるので、デザイナーさんとのやりとりなど、この Local by Flywheel も活用してみたいと思います。

    追記(2017.03.15)
    参考:Local by Flywheelの紹介記事
    WordPressのローカル環境のためのGUIツール”Local by Flywheel”が便利

  • CI勉強会を開催しました。

    1月28日土曜日にCI勉強会 in 松山を開催しました。
    4名の方にご参加いただきました。ありがとうございます。

    当日の資料はこちら

    Keynoteで作ったものをSpeaker Deckにアップしたら、背景のグラデーションが段々になってしまいました。(はて?
    ※[追記:2017.02.06]Keynoteで「書き出す->PDF…」との場合、かなり圧縮されるようです。「プリント->PDFとして保存…」とするとファイルサイズが10MBと大きくなりましたが背景が少し滑らかになりました。

    実習中に シングルクオート:” と ダブルクオート:”” の使い分けについてアドバイスをもらうなど、勉強になりました。

    Cookbookのソースはこちら。
    (GitHub)kazweda/vagrant-ubuntu-cakephp

  • CI勉強会を開催します

    CI勉強会を開催します

    1月28日土曜日の午前に開催します。
    イベントの詳細はこちら↓
    CI勉強会 in 松山

    昨年末のある飲み会の席で CakePHPPHPUnit のキーワードが上がって、じゃあ勉強会をしましょうか、という話になりました。

    そこで、どういう内容にすれば良いかとジュンク堂に寄ってみたところ、

    この書籍を発見。

    冬休みの宿題にいいかなと思って、まだ一部ではありますが、実践してみました。
    2014年に出版された本で、そのままでは動かない部分もありましたが、最近の環境に合わせて編集してみることで色々と勉強になります。
    何より、開発環境からCIサーバ、デプロイ先サーバの構築と運用まで幅広く網羅されているので、CIについての全体像の把握もできます。

    ちなみに、CHEF SOLO PROVISIONER
    ここに、

    Warning: If you are not familiar with Chef and Vagrant already, I recommend starting with the shell provisioner. However, if you are comfortable with Vagrant already, Vagrant is the best way to learn Chef.

    とあって、確かに最初はとっつきにくくて shell で書いた方が手っ取り早い?と思っていたのですが、弄っているうちに、様々なサービスプログラムやバージョンの違いなどを考えると shell では間に合わなくなりそうです。

    ということで、CIについては今回初めての企画ですが、それこそ継続的に進めたいと思っています。

    補足:バナーはGimpで作ってみました。

  • 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枠にてご紹介しました。飛び入り参加でしたがお時間をいただきありがとうございました。

  • WordBench愛媛 秋のお茶会 を開催しました。

    WordBench愛媛 秋のお茶会 を開催しました。

    WordBench愛媛 – 秋のお茶会
    http://wbehime.connpass.com/event/41726/

    午前中ということもあってか、こじんまりと4名での開催となりました。
    当日の様子はこんな感じです。

    img_20161022_120818

    img_20161022_105009

    img_20161022_105031

    最近のローカル環境の充実ぶりなどを中心に、それぞれ手を動かしながらディスカッションしました。
    次回に向けて準備したいと思いますので、開催内容のご要望とか、プレゼンテーションのご希望などありましたら、
    http://wordbench.org/groups/ehime/
    こちらまでお寄せください。

  • OSunC 愛媛 2016 に参加しました。

    OSunC 愛媛 2016 に参加しました。

    10月8日に開催されたOSunC愛媛に、WordBench愛媛として参加しました。

    Open Source UN-Conference 愛媛2016
    http://connpass.com/event/40867/

    WordBench愛媛 at OSunC愛媛

    Open Source UN-Conference 愛媛2016 のツイートまとめ
    http://togetter.com/li/1034617

  • 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プログラミングにご興味のある方がいらっしゃいましたらお気軽にご参加ください。