タグ: hiroshima

  • オープンセミナー2020@広島

    オープンセミナー2020@広島が昨日(2020年2月8日)開催されました。


    Togetter まとめ
    私も3年くらい前から実行委員の一人として運営に関わっていて、今回は副委員長を務めました。
    おかげさまで100人を超える(懇親会の参加者だけでも67人)多くの人にご参加いただき、盛況に終わりました。
    次回以降のスタッフ希望のご連絡は @24motz 宛でも結構ですので、お待ちしています。

    PyCon mini Hiroshima 2020

    私の会社(シュアルタ)は前回に続いてスポンサーとなりました。
    去年に続いてスポンサーセッションの時間を5分いただいたのですが、イベントのテーマ「エンジニアライフHacks」に沿った話をするには時間が短すぎました。
    そこで 過去にブログに書いた内容を「PyCon mini Hiroshima のウェブサイトとアクセシビリティ」として紹介しました。

    スライドの中でご紹介した重要な告知は
    「2020年10月10日(土曜)に PyCon mini Hiroshima 2020 をやります」
    です。詳細はこれからすこしずつ発表していきます。よろしくお願いします。

    「正しいことを」の話

    スクリーンリーダー NVDA のコミュニティ活動を踏まえてウェブ制作の配慮の話をしました。
    私の活動のモチベーションを「正しいことを躊躇なく行うのは、気持ちいい」と表現しています。
    「正しいことを躊躇なく」は、Python コミュニティの著名な人たちからヒントを得たキーワードです。
    「正しいことを行うことに喜びを感じている人たち」は、アクセシビリティのコミュニティで著名な人たちについての私の観察です。
    「エンジニアは正しくないことを行いたくたい」は、自分の感じていることでもあり、よく語られていることでもあります。
    こういったことを考えていたら、前述のようなトークになりました。短い時間で説明するのは難しかったですね。

    Hacks?

    各セッションは聞きながら響いたキーワードや感じたことをツイートしています。
    2020年2月8日 @24motz のTwiLog
    どなたもきちんと考え抜いて丁寧に「エンジニアの生き方・学び方」あるいは「ソフトウェア開発の最先端」を語っておられました。
    「働くこと」と「楽しむこと」の両立についても多く語られました。
    これは、前回の「学び方Hacks」のときからテーマ決定に参加している私の反省になるのですが、設定したテーマが「Hacks」という、ちょっと斜に構えたキーワードになっているのは、アンバランスだなあ、と思いました。
    学び方にも生き方にも「Hacks はない、まじめにやろう」という、当たり前のようなことを、去年と今年と2回にかけて、登壇者の皆さんから感じ続けています。

    座長&実行委員長

    昨夜の懇親会で挨拶しましたが、PyCon mini Hiroshima 2020 の座長も、オープンセミナー2021@広島の実行委員長も、どちらも「やります」ということになりました。


    この一年、いろいろご協力、ご支援をいただければ幸いです。よろしくお願いします。

    株式会社シュアルタ

    私が2011年に広島に戻って以来、基本的にフリーランスのような働き方でエンジニアとしてやってこれたのは、オープンセミナーや PyCon のようなコミュニティのイベントで、いろいろなことを学ばせてもらったおかげだと思っています。
    株式会社シュアルタは2018年2月9日(肉球の日)設立で、今日は会社の設立記念日でもあります。
    無事に第2期が終わり、今月から第3期として営業をしております。
    ウェブアプリ、モバイルアプリなどの受託開発、ソフトウェア開発のコンサルティングをしながら、スクリーンリーダー NVDA 日本語版の活動を行い、ペット事業の研究も続けています。
    シュアルタも引き続きよろしくお願いします。

  • PyCon mini Hiroshima 2019 のサイト制作

    2019年10月12日(土曜)に PyCon mini Hiroshima 2019 を開催しました。
    イベント自体については別の場で報告を書こうと思っていますが、チームから「ウェブサイト構築の話を共有してほしい」という意見があったので、忘れないうちに、まずここに書いておきます。
    hiroshima.pycon.jp は2015から2016にかけては GitHub Pages で私が自分で作りました。
    2018 からは参加費をいただくイベントとして開催することに決めて、専門家に制作をお願いして、WordPress で構築されました。
    (現在は静的サイトに変換して残しています)
    2019 では、もっと自分たちでコントロールしながら制作したいと考えて、Next.js を使いました。
    さいわいチームにはコーディングもデザインもやっていただける Nyoho さんがおられて、私は作業をチェックして本番環境にデプロイする、という立場になりました。
    今年の PyCon mini Hiroshima チームは GitHub のプライベートリポジトリを作りました。
    ウェブサイトのソースコードを Git で管理し、ウェブサイト制作のタスクも、それ以外のタスクも、すべてこのリポジトリの issues として管理しました。
    日程だけを告知する私の仮サイト(BootStrap Studioで作成)を、Next.js のサイトに置き換えていく作業は、6月ごろ始まりました。
    リダイレクトに必要な nginx の設定をリポジトリに含める提案があり、それを私が pytest と requests でテスト駆動しながら導入する、というのを(すごい広島 with Python のネタにしながら)やったのが6月下旬。
    7月上旬には、プルリクエストごとにプレビュー用の Web アプリのビルドが行われるようになり、本番環境を更新する前に、ブラウザでレビューが行える体制が整いました。
    このころから、私自身は node.js で React のコードを触るのをやめて、逆に本番環境へのマージの権限は私だけが持つことにして、レビューアーに徹することにしました。
    7月末に Nyoho さんが SVG アニメーションで動くヒーロー画像を制作したあたりから、私は、いろいろな環境に配慮したアクセシブルなサイトであることをレビューするようになりました。
    残念ながら SVG アニメーションは最後まで IE11 や Microsoft Edge では動かせなかったのですが、かわりに動かないタイトル文字を出してもらうようにしました。
    このやりとりの中で、Next.js を使いながらアクセシビリティを確保できそうだ、という見通しが得られました。
    やがて、スクリーンリーダーの利用者が適切に操作・閲覧できることを、私自身が「NVDA でアクセシビリティの検証をするディレクター」の立場で行うようになりました。
    ページが複数になったときには、タイトルをページごとに変えてもらうようにしました。
    アニメーションの機種依存振り分けの議論の途中で、 CSS で display:none するとスクリーンリーダーから読み取れなくなることを紹介すると、そうだったのかと驚かれました。
    「日時」や「会場」などの情報を h2 や h3 などの見出しレベルにどう割り当てたらよいのか、あるいは見出し要素に情報そのものを入れてしまっていいのか、といったことも議論しました。
    例えば「日時」という見出しがあって、その真下に「10月12日」と書いてあるのと、見出しそのものが「10月12日」になっているのは、どちらがうれしいだろうか。
    スクリーンリーダーの「見出しジャンプ」という機能を紹介すると、「じゃあ見出しに情報が入っていたほうが効率的だね」という議論になりました。
    一方で「日時」というテキストをスクリーンリーダー利用者にだけ読めるように提示する、というテクニックはどうだろう。
    いわゆる sr-only クラスのような実装はあるけれど、想定外の閲覧環境で(例えば -10000px の位置指定が)どうなるかわからないし、みんなが同じコンテンツを読むほうがよいのではないか、と私はアドバイスしました。
    テキストの表記についても、「10:00~」はちょっと不安。「10:00開始」はよさそう。「10時00分開始」はさらに安全。
    けれど、このあたりの読み上げはユーザーエージェントに依存しているし、読み手は 10:00 を時刻だと解釈できる可能性は高い、などなど。
    一方で IE や Edge でレンダリングが崩れる、といった指摘、機種依存文字の指摘、などもありました。
    プレビュー Web アプリのおかげで、効率的に検証することができました。
    ですが、Nyoho さんもご多忙だったので、実際に解決したい課題がすべてクリアできたのは、イベントの前日の夕方でした。
    この話には Python の要素がほとんどないのですが、今回の一連の作業を通じて、PyCon mini Hiroshima チームの中で「アクセシビリティ、こんな風にやっていくんだなあ」という感覚を共有できたこと、私自身も「アクセシビリティやっていき勢」としての活動ができたことを、ちょっぴりうれしく感じています。
    今回のイベントにスクリーンリーダーユーザーが参加してくださったわけではなく、リアルなフィードバックをいただくのもまだこれからの課題です。
    このチームの経験を、次回の PyCon mini Hiroshima で、かどうかはわかりませんが、どこかで活かしたいと思っています。

  • PCNひろしま 第15回終了

    写真 IchigoSoda + 音センサー + サーボモーターの配線
    5月26日にPCNひろしま第15回を開催しました。
    申し込みされていた経験者枠・入門者枠の方がいずれもキャンセルされたのですが、集まったスタッフ枠と見学枠の大人だけで「教材研究」をしました。
    私は IchigoJam BASIC でサーボモーター SG-90 を動かす実験をしていました。
    (3月に福岡のこどもプログラミングコンテスト表彰式で見学して、やってみたかった)
    サーボモーターは10個セットが2000円とか3000円とかで売られています。
    検索すると HowToConnectServoToIchigoJam.pdf という資料が見つかるので、ありがたく使わせていただきました。
    古いモデルの IchigoJam ではスムーズにモーターが動かなかったので、きっとマイコンのチップの違いなのでしょう。モーターが1個だったらなんとか電流が足りるようです。
    PDM の値を書き込むだけでホーンが動くのは MicroPython と同じような感覚ですね。
    ホーンにストローを差すのではなく、ホーンの穴に直接、鈴を括り付けました。
    うまく動いたので、以前購入していた HiLetGo の音センサーモジュール(5個セットで700円足らず)を使って「話しかけると鈴を鳴らす」というデモを作りました。
    音センサーを使うところは2月にNT広島でやった方法です。
    IN(4) で音センサーの OUT の値を読み取ると 0 または 1 が返ってきますが、音声認識のようなものではないので、雑音に弱いです。
    ここでは50回読み取って1が返ってきた回数が閾値を超えたら「声が聞こえた」としています。
    この数字がいい感じになるように、動かしている環境に合わせて、音センサーのつまみを調整してやります。


    次回はたぶん6月30日(日曜)開催です。
    今後ともよろしくお願いします。