2022年 1月、プログラミング・シンポジウム (プロシン) の Web サイトが大きく変わりました。それに先んじて 2020年に URL が変わったことも含めて、変わった点をまとめてご紹介します。

URL を http://www.ipsj.or.jp/prosym/ から https://prosym.org/ に移転しました

http://www.ipsj.or.jp/prosym/ だった URL を 2020年 7月に https://prosym.org/ に移転しています。これには、いくつかの理由がありました。

理由1: HTTPS 化

ここ数年の Web では、暗号化されていない HTTP をなるべく止めて、暗号化された HTTPS に移行していこう、という明らかな動きがあります。 1 2

プロシンの Web サイトもこれに追従して HTTPS 化したかったのですが、そのとき www.ipsj.or.jp から Web サイトを提供していたプロキシの仕組み 3 の問題で、簡単にはできない状態でした。

www.ipsj.or.jp のホストは情報処理学会事務局が管理するものであり、そこにプログラミング・シンポジウム幹事団が変更を加えることは気軽にはできません。仮に www.ipsj.or.jp のままでプロキシ設定だけをなくすと、情報処理学会のホストから直接プロシンのページを配信することになり、今後の編集・更新が非常に面倒になってしまいます。

さらに www.ipsj.or.jp の設定変更には毎回メールを通した事務手続きが必要で、これまた大きな面倒がかかります。技術的にはプロキシ設定のまま HTTPS 化することもできたかもしれないのですが、そこに至るまでの試行錯誤にともなう手続きの多さを考えると、現実的ではありませんでした。

これらのことから、プロシンの幹事団がサイトを www.ipsj.or.jp から離れて管理できるようにしないと HTTPS 化は難しい、という結論になりました。これが、独立したドメインに移転しようか、という議論のひとつめのポイントでした。

理由2: バージョン管理と GitHub Pages

プログラミング・シンポジウム幹事団が管理するホストは、いわゆるレンタルサーバでした。幹事 (Web 担当) の引き継ぎに合わせてログイン情報などを変更しながら引き継ぎ、編集するときはファイルを (S)FTP で同期して…、とやっていて、コンテンツのバージョン管理もしていませんでした。

すると、どこかを少し変えたときに他の箇所への影響を把握しづらく、想定外に壊れたら戻すことも難しいので、いつも必要最小限の更新だけを加えて他には触れないのが通例になってしまっていました。そのため、現代にしては古めかしいページとして残り続けていました。

ひとまずレンタルサーバのままバージョン管理だけを導入することもできたのですが、独立したドメインへの移転する議論も進んでいましたし、ついでに GitHub Pages などにしてしまえばレンタルサーバの契約も必要なくなり、管理も楽になるのでは、ということで GitHub Pages への移行も決めました。逆にドメイン移転をすればレンタルサーバを落として GitHub Pages にできるということにもなり、これ自体が移転を進めるモチベーションにもなりました。

ちなみにこのとき、既成の CMS (Contents Management System) の利用はあまり考えていません。 SaaS の CMS には持続性の問題があり、いざ予定外にサービスが終了すると大規模な移行作業が必要になります。また、既成の CMS を自分たちでインストール・運用するにはそれ相応の専門性が必要で、脆弱性対応なども即応的におこなう必要があります。いずれも、プロシンのような「幹事業務を一定期間で引き継ぐ」という形態と相性がよくありません。さらにプロシンでは Web サービス運用ではなく研究に専門性を持つ学術系の人の割合が多いため、そのように持続的な運用体制の構築は難しいと考えました。長い歴史を残す意味でも以前のコンテンツは捨てたくないですし、既存のページ群を大きく変えずにできるやり方を主として検討しました。

理由3: prosym.org ドメインは既にあった

実は prosym.org というドメインは移転以前から存在していました。 2018年の夏のプログラミング・シンポジウムの幹事団が取得して使用し、そのまま 2020年まで維持されていました。

独立したドメインに移転しようとなったときに、既に prosym の名を冠するドメインがありながらもこの年にしか使われていないのなら、これを移譲してもらって活用できたらちょうどいいのでは、という発想に自然と至りました。

そこで当時の幹事団の方々にコンタクトを取り、それから 2020年 1月の第61回プログラミング・シンポジウムの会場でドメインの移管手続きを実際に開始しました。ドメインの移管が終わり、そして 1月のシンポジウムから少し時間を空け、年度をまたぐのを待ち、各種の確認作業を済ませ、レンタルサーバの契約が更新になる 7月の前に www.ipsj.or.jp からの転送を設定してもらって (後述) サイトの正式な移転となりました。このときは、まずサイトのコンテンツを一切変えないところから始めました。 4

ちなみに、過去には 2009年と 2012年の夏のプログラミング・シンポジウムや 2010年の情報科学若手の会などで prosym.jp というドメインが使われたこともありました。しかしその後こちらのドメインは放棄され、この移転のときにはプログラミング・シンポジウムとは無関係な方が使用していたため、この prosym.jp の使用は断念しました。 (この後、さらにその方も放棄していたのを確認し、過去のドメインの一貫性を担保する目的もあって現在はプログラミング・シンポジウム幹事団で確保・保持しています)

URL と転送

こうしてサイトは prosym.org で運用することになりましたが、過去のシンポジウムの印刷済みの報告論文集・予稿集や、他のさまざまなページからのリンクに "http://www.ipsj.or.jp/prosym/" の記載がたくさん残っています。

独立したドメインへの今回の移転は必要な措置でしたが、基本的には URL は変わるべきではありません。 5 http://www.ipsj.or.jp/prosym/ 以下の URL が完全に無効になることは望ましくありません。

そこで次善策として http://www.ipsj.or.jp/prosym/* から https://prosym.org/*301 Moved Permanently での転送を設定してもらった上で、新しい https://prosym.org/* でも基本的に同じパス構造を維持することにしました。プログラミング・シンポジウムと情報処理学会の関係はまだまだ続きますし、この転送が失われるようなことはかなり先までないだろうと考えています。

構成とスタイル (外観) を刷新しました

移転からしばらく経った 2022年 1月の第63回プログラミング・シンポジウムの直後に、トップページの構成とスタイル (外観) を刷新しました。それから少しずつ、トップページ以外にも同様の更新を広げています。

この刷新はずっとやりたかったことなのですが、方針を決めかねたまま時間だけが過ぎていました。方針を決めて一気に進める契機になったのは、第63回のページを更新するときに、たびたび更新漏れを起こしてしまっていたことでした。ページの構成上、似たような文言を複数のページに記載する必要があり (例: 参加申し込みとプログラムなど) 一部のページの更新を忘れることがあったのです。

そこで、ナビゲーションメニューを付けるなど構成から改善して、重複記載が必要になること自体を減らそう、というのが大方針になり、一気に刷新を進めることができました。次の第64回からは、もう少し使いやすいページを提供できると思います。

スタイルの刷新にあたって、以前のページの雰囲気やカラー (文字通り「色」も含め) はなるべく残すようにしました。しかし、内側ではそれなりに新しめの HTML / CSS 仕様を使っています。 (最新というほどではないです)

静的サイトジェネレータを導入しました

CMS の利用は考えなかったと前述しましたが、「ナビゲーションメニューを付けるなど」のような構成を、なにもツールを使わず、無手で HTML の手書きですべて実現するのは、もちろん現実的ではありません。別の更新漏れを起こすだけの結果になるのは目に見えています。

そこで、構成とスタイルの刷新にともなって静的サイトジェネレータを利用することにしました。その理由として、サーバを運用するわけではないので脆弱性対応などのコストが (ゼロではないまでも) 圧倒的に低い 6 こと、いざとなれば HTML / CSS をそのまま抜き出して持っていくこともできるし、内容はそのままで GitHub Pages 以外のサービスに移すこともでき、一時的にでも自分たちでサーバを運用する逃げ道もあること、などがあります。将来の幹事団は Web サービス運用の専門家とはかぎらなくとも、計算機に関する一定以上の知識はあると期待され、その中で幹事業務を一定期間ごとに引き継ぐ、という形態にはちょうどマッチしていると考えました。

ちょうど GitHub Pages がネイティブで Jekyll をサポートしていることもあり、いまのところ、これをそのまま利用しています。

過去のプログラミング・シンポジウムをまとめなおしました

スタイル刷新のついでに、「過去のプログラミング・シンポジウムの記録」のページを再構成して、これまで専用のページがなかった第1回 (1960年) から第43回 (2002年) のページを個別に用意しました。旧「過去のプログラミング・シンポジウムの記録」のページ群からプログラムを抜き出して載せたり、当時の日程や会場の情報を掘り起こして (場合によっては推定して) 載せたりしています。

また、過去のプログラミング・シンポジウムの報告集を情報処理学会の電子図書館 (情報学広場) に掲載する取り組みが現在進んでおりますので、今後、それらへのリンクなども加えて連動させることを考えています。お楽しみにお待ちください。

「記事」コーナーを作りました

さらに、この記事自体も載せている「記事」コーナーを作りました。

ここ数年、プロシンに新しく参加する人が少ないよねえ、という問題意識がありました。これには複数の要因があると思いますが、「プロシンに参加したことがない人が、プロシンというイベントについて知る機会が、プロシンに参加する以外にない」という現状は間違いなく理由の一つではあると思います。参加してみないとよくわからない催しに、あまり安くはない参加費を払って参加してみる、という人は、ほとんどいないでしょう。

この「記事」コーナーを通して、論文集に載せたりメーリングリストに投げたりするほどの内容ではなくても、プロシンに少し興味を持ってもらえるような内容を発信していきたいと考えています。このことだけで状況は改善しないと思いますが、一つずつ障壁を取り除いていこうという考えです。

幹事団からの発信だけでなく、過去にプロシンに参加したことがある人から、自由に投稿を受け付けるようにしたいとも考えています。おそらく、寄稿していただく記事には Creative Commons ライセンスを指定していただく形にし、また Canonical link (正規化リンク) を指定できるようにして他の Web 媒体とクロスポストしやすいようにもしたいと考えています。

始まったら、ぜひ記事をお寄せください。

OGP (Open Graph Protcol) を設定しました

ソーシャルメディアなどを通してシンポジウム各回のページや記事が伝わりやすいように OGP (Open Graph Protocol) の設定も追加しました。

Twitter などで共有すると、アイコンや概要などのカードが出るようになっています。お試しください。

まとめ

刷新したプロシン Web サイトとともに、公開での情報発信を、これから以前よりも増やしていきたいと考えています。ぜひ共有などしていただければ幸いです。

今後ともプログラミング・シンポジウムをよろしくお願いします。

  1. Securing the Web”, W3C (2015). 

  2. 【翻訳】安全でない HTTP の廃止」, Mozilla Security Blog 日本語版 (2015). 

  3. 情報処理学会事務局が管理するホストの /prosym/ から、プログラミング・シンポジウム幹事団が管理する別のホストへのプロキシ転送 (RewriteRule [P]) をしていました。 

  4. ただ、以前のページの中にはいわゆる Shift JIS や EUC-JP で書かれたページも多かったため、それらを UTF-8 に変換するような変更は加えています。 GitHub Pages では HTTP ヘッダに content-type: text/html; charset=utf-8 が強制的に設定されるようで、そのままでは文字化けを避けられなかったのですが、これはちょうどいい機会でもあったと思います。 

  5. Tim Berners-Lee: “Hypertext Style: Cool URIs don’t change.”, W3C (1998). 

  6. ちなみに、将来の脆弱性対応などのコストを減らすため「極力 JavaScript は使わない」「少なくとも外部 JavaScript ライブラリは使わない」という方針を採っています。それでできる範囲のことしかやらない、ということでもありますが、それでも意外といろいろできますね。