
【TAKE ACTION】ルクセンブルクへの挑戦
先日、4泊6日でルクセンブルクに行ってきた。
ルクセンブルクってどこ??欧州です。
フランスとドイツとベルギーに囲まれた神奈川県ぐらいの面積の小国。
僕も今回行くことになるまで、何処にあるのかもよく分かっていなかった。
行くことになった経緯
今年の始め、僕らが開発している baserCMS で、利用しているフレームワーク「CakePHP」の、年に1度のお祭り「CakeFest」をルクセンブルクで開催すると連絡があった。
以前から、CakePHPを長く利用させてもらっているので、CakeFest にはそのうち参加しようと考えていて、それに向けて、Duolingo や Cambly を使って英語も少しずつだけど勉強もしていた。
(英語学習はそのうちビジネスにも役立てたいというのもあり)
ただ、できればアメリカでの開催の際に行きたかったので、ルクセンブルクは何処にあるかも分かっていないし、今回はオンラインで参加しようと決め、オンラインで申込をしていた。
そう思っていたら、後日、主催者側から、『もうホテルは決まりましたか?』と連絡が。
間違って現地参加で申し込んでいたことに気づく。
それが CakeFest の1ヶ月前。
「え。まじか。どうしよう。ま、キャンセルしても問題ないかな。」
「んー、でも、こんなきっかけがないと、もしかしたら一生行かないかも。」
など考えていたら、またメールが届き、『今回は、渡航制限などにより、小規模な開催になる』という事が書いてあった。
「これはボードメンバーと直接交流できるチャンスじゃないか?」
「もしかしたら、CakePHP のファウンダーに直接会って、これまで利用させてもらってきたお礼が言えるのでは?」
「新たに何かしら次に繋がる何かが見つかるかも?」
というわけで、ルクセンブルクへのチャレンジを決めた。
スケジューリング
CakeFest の開催は 7月24日〜26日。そのタイミングは会社が人事評価の真っ只中であり、僕も関与している状況だったため、ギリギリ会社に迷惑がかからないようにタイトなスケジュールで計画を立てた。
結果、立てたスケジュールは次のとおり。
7月23日(火)
6:40:羽田でチェックイン
8:40:羽田発 → 上海(3時間15分)
10:55(現地時間):上海発 → パリ(12時間 20分)
19:15(現地時間):パリ着 → タクシーでパリのホテルへ
7月24日(水)
6:00:ホテルをチェックアウト
道中にエッフェル塔と凱旋門を軽く観光
8:14:パリ東駅 → TGV(高速列車) → ティオンビル
10:30:ティオンビル → バス2台乗り継ぎ → ベルヴァル
13:00:CakeFestの開催場所「Technoport」に到着
13:45:ワークショップ(Mark Story)に参加
17:00:ルクセンブルクのホテルにチェックイン
7月25日(木)
9:00:ルクセンブルク市街にバスで移動し2時間程度、観光
12:30:CakeFestの開催場所「Technoport」に移動
13:45:Keynote(Passbold)からCakeFestに参加
7月26日(金)
8:30:CakeFestに終日参加
16:15:ケーキセレモニー
17:00:「Technoport」を出発
17:30:ベルヴァル → バス2台乗り継ぎ → ティオンビル
19:04:ティオンビル → TGV(高速列車)→ パリ東駅
22:30:パリのホテルにチェックイン
7月27日(土)
9:30:パリ東駅 → シャルル・ド・ゴール空港
11:00:シャルル・ド・ゴール空港でチェックイン
13:25:パリ発 → 上海(11時間 35分)
7月28日(日)
9:05(現地時間):上海 → 成田(2時間 45分)
15:00(日本時間):成田 → 福岡
これまでの人生でこんなに緻密にスケジュールを立てたのは初めてかな。
観光もほんの少しだけ入たけど、改めてブログのために書き出しただけで吐きそうなくらいハードスケジュール。
ヨーロッパ圏に旅行されている方はみんなこんな感じなのかな・・・。
特に肝と感じたのは、高速鉄道「TGV」これに乗れなかったら全てのスケジュールが破綻する。
TGVは、日本で言う新幹線的なやつで、パリ東駅と、ルクセンブルクに近いティオンビルを2時間程度で移動する。これに乗れなければ鈍行列車で10時間以上かかる。絶対に間違えられない。
現地までの道のり
現地までは、常に何かしらのハードルがある感じだった。
一つのハードルを乗り越えると、次のハードルが待ち構えている。
まずは、上海WiFi問題
2時間程度のトランジットだったが、ネットに繋がらない。
そう、上海でのWiFiは手配していない。
ここで色々と調べて行こうと思ったが、何も調べられないし、Google翻訳も使えないので、コミュニケーションもままならない。どうしよう。
いや、空港にはWi-Fiがあるはず。
上海空港のWi-Fi をなんとか見つけて、ネットには繋げることができた。
ただ、中国圏は、SNS関連には繋げられないと聞いてたが、上海もなのね。
Google、LINE、Facebook、インスタ全部だめ。
ただ、Bingは繋げれたので何とか調べ物はできたのでよかった。
フランス語の壁
上海でそんな2時間を過ごして、12時間後、やっとパリに到着。
知人からパリの夜は治安が悪くかなり危険だと聞いていたので、パリのシャルル・ド・ゴール空港でタクシーを予約。でも、タクシーが見つけられない。早く見つけないとホテルのチェックインが間に合わない。
焦って現地の人に尋ねるが、ここはフランス。Google翻訳で訪ねても、返答がフランス語。何を言っているのか全く理解できない。
Google翻訳に向かって話してくれとお願いし、なんとか案内してもらった。

その後も、道に迷ったりで、フランス人と何度もやり取りをする機会があったのだが、Google翻訳のフランス語の精度があまり良くないと感じた。
声をかけたフランス人が早口だったのか、ネイティブ過ぎたのか、何度も誤認識があり、会話が成り立たないことが何度もあった。
しかし、フランスの街並みはキレイだね。どう写真を撮っても様になる。

フランスの治安と軽い観光
前述のように、知人からフランスの治安の悪さをずいぶんと聞かされていたので、かなり用心をし、夜もほとんど出なかった。でも、ちょうどオリンピック開会式前だったというのが功を奏した。
警備がある程度厳重となっていて、パリの街中をある程度安心して歩けた。
ただ、エッフェル塔を見たかったのだが、エッフェル塔の周りは警備で囲まれており、中に入るにはオリンピックのチケットが必要だったようだ。ほんと遠目でしか見ることができなかった。
ただ、凱旋門は見れた。デカい!感激した。

列車の乗り場
次に遭遇したハードルは、2日目の高速鉄道「TGV」の乗り場。
乗り場が5つ程あったのだが、周りの人に聞いても「もう少し待て」のような意味が分からない返答。
「どういうこと?」
もう時間がないのに、、、これに乗り遅れたらイベントに間に合わないのに、、、3人ぐらいに聞いたが誰も似たような返答。
どうやら、列車が到着する10分ぐらい前に入るホームが決まるらしく、それまで電光掲示板を見ておけとのことだった。こりゃ分からんわ。危なかった。

時刻表がないバス停
なんとか列車に乗り、パリ東駅から、ルクセンブルクに近い ティオンビル という場所に行ったのだが、ここからはバスで移動。
バス停が8箇所ぐらいある フォッシュキオスク という所から乗るのだが、どのバス停で待てばいいか、バスの運転手に聞いてみると、501番というバスに乗れば、ルクセンブルクのベルヴァルという場所に行けるという。
ただ、どこのバス停にも501番の表記がある時刻表がない!
時間もないので焦って別のバスの運転手に聞いてみると、一つのバス停を指差し、「あのバス停で待つといいさ」なことを言っている。
そのバス停に行って確認してみると、このバス停だけ、時刻表がない。
えええ、どういう事?さっきのバスの運転手は嘘ついている?
でも、この時刻表がないバス停には、時折、バスが停車していたので、バスに乗り込んで、「ベルヴァルには行きますか?」と確認するが、どれも違うという。
不安でたまらず、ChatGPTに聞く。
「501番というバスは存在するのか?」「存在します。」「何時にバス停に来るの?」「このオフィシャルサイトで確認できます。」オフィシャルサイトを見てみるが、501番なんで存在せず、時刻表もない。どういう事?
「501番の現時点で最新の時刻表を調べてください。」
・・・
しばらくして、ChatGPTが返した回答が、なんとJSONデータの時刻表。
もう全く意味がわからんが、とにかく実在していて時刻表のデータもあるらしいのでもうちょっと待ってみる事にした。
時刻表の時刻になっても501番のバスは来ない。
どうやら同じバスを待っていそうな黒人の女性がいて、その方も何度も停車したバスに乗り込んでは運転手に質問をし、肩を落としてバスを降りていた。
途方に暮れていた矢先についに501番のバスが到着ー。
「もう時刻表から30分ぐらいオーバーしてるよ。勘弁してよ。」と思いながら乗車。
日本に帰って、後から聞くと、時間通りにバスが来るのは日本ぐらいで海外は結構ルーズなんだとか。
ふー。でもよかった。CakeFestのワークショップにはなんとか間に合った。
CakeFest に到着
日本を出発して約30時間。やっとCakeFestの会場である「Technoport」に到着。
Technoportは、ルクセンブルグのスタートップ施設としてとても有名な場所の様子。昔の工場跡地につくられたらしく、まわりの工場的な建物は稼働しているのではなく、全てオブジェと化しているとのこと。なんともオシャレな場所だ。


会場では、ちょうど CakePHPの開発者の一人である Mark Story のワークショップというかセミナーが始まったばかりだったので、参加者に軽く挨拶をして参加した。会場の参加者は40名ぐらいだったかな。

これまでフランス語に悩ませられていたが、この会場に来てからは、主言語が英語になった。
え?英語だったら理解できるのかって?
分かるようになるため、これまで少しずつ勉強してきて、パリまでの長い長い飛行機の中でもAmazon Audible で初心者向けの英会話の書籍を頑張って聞いていたのだが、口調が早すぎてさっぱり・・・。
ただ、スライドとプログラムコードのエディタをベースに話していたので、なんとか「こういう事を言っているのだろう」という雰囲気だけは掴めた。
もっとリスニングの勉強しておけばよかった・・・。
CakePHPのボードメンバーとの出会い
CakeFest 一日目の終了後、一度、ホテルにチェックインしてから、行けるメンバーで食事に行くことになった。ついにCakePHPの中核メンバーと直接交流する機会が来た。
交流といっても、僕の語学能力では、スムーズな意思疎通が難しいという事が改めて発覚。とにかくGoogle翻訳とノリに頼りまくってなんとかやり取りができたレベル。もっと勉強せねば・・・!

ただ、CakePHPのファウンダーである、Larry Masters に会えた事はすごく光栄だった。Google翻訳を使ってではあるが、思いの丈を伝えた。
「僕は CakePHP のバージョン1からずっと使っていて、先日、Awesome CakePHP に掲載してもらったbaserCMSは、CakePHPを利用して15年近く開発しています。お陰様で僕たちはこれによってビジネスを続ける事ができています。本当にありがとう。」
Larry Masters はハグをしてくれた。
これでルクセンブルクに来た一つ目の目的は達成した。
ルクセンブルク市街の観光
CakeFest 2日目は、ルクセンブルクの市街に移動して午前中だけ観光へ。
市街へは1時間程度バスで移動。ティオンビルからルクセンブルクに入る時もそうだったのだが、バスの料金を払おうとすると、バスの運ちゃんはいらないと言う。
どういう事かなと思って調べたのだが、ルクセンブルクは2020年より国内の公共交通機関は全て無料なのだそうだ。自動車の渋滞対策とのこと。
日本じゃ考えられないな。
ルクセンブルク市街では、要所を周るための2時間弱のウォーキングコースがあるとの事だったので、それに従って周って見ることにした。


とにかく、自然豊かで景色も良く、歩いていてかなり癒やされた。
ルクセンブルクの名物だという太めのパスタのカルボナーラを食べて午後からまた CakeFest に戻った。
事件勃発
そして、CakeFest 最終日。朝から CakeFest 参加していた。
CakeFest では、一番最後のイベントとして、CakePHPというプロダクト名にちなんで、本当のオリジナルケーキを準備して、みんなでカットして食べるという「ケーキセレモニー」というのがあるらしいのだが、それに参加して帰国と考えていた。
11:35、友達からLINEが。
「テロでTGVが停まってるとかTVでやってるけど、帰ってこれるかー?」
・・・
調べてみると、高速鉄道「TGV」の路線で、線路脇のケーブルが放火されるなどの被害があっている様子。
オフィシャルサイトを見ても、鋭意復旧作業中というような情報しか出てこない。TGVが動かなかったら予定通りには日本に帰れない。こりゃあかん。
とにかく情報が得れないまま CakeFest に参加し続けるような心の余裕がなかったので、ケーキセレモニーへの参加は諦めて、まずは、情報を得るために1時間かけてTGVの発着駅ティオンビルに移動することにした。
(電話で状況確認なんて難易度が高過ぎるので)
ティオンビル に到着し、駅のガイドの方にTGVが動いているか確認すると「aucun problème(問題ない)」と回答をもらった。
日本に戻って後から聞いたが、TGVはパリを中心に四方八方に路線がのびているが、北側と西側に影響があり、僕が乗った東側には影響がなかったようだ。
まだ時間はあったが、また何か問題があるかもしれないので、CakeFestに戻ることは諦め、早めにパリに移動することにした。
パリのホテルで一泊して翌朝のフライトに備えた。

帰路
帰路はなかなかハードで2日間かけて福岡に戻る。
パリ → 上海 → 成田 → 福岡
そして最後のトラブル。
成田から福岡へのエアのチケットが、1ヶ月間、日付を間違っていた。
チケットを取り直すと待ち時間が5時間。
土曜日の9時にパリの飛行機に乗って、福岡に辿り着いたのは、日曜日の21時だった。さすがに疲れた。
色々とトラブルはあったが、強行スケジュールで日程を変えずに無事に帰れたのは本当によかった。
Jorge からの連絡
ヨーロッパから家に辿り着き、翌朝、メールのチェックをしていると、baserCMSのGitHub に対して、英語のIssueが投稿されていた。
「Unable to go to the admin panel after following docker basic setup」
Docker の基本セットアップを実行した後、管理パネルに移動できない
どうやら、CakeFestの現地で連絡先を教えてくれた Jorge が早速、baserCMSをインストールしてくれたようだった。驚いた。
連絡先を教えてもらった事を思い出し、早速現地でのお礼のメールを送った。そうすると次のような返事が返ってきた。
「はい、午前中に baserCMS を試していました。既存のプロジェクトの上にインストールしてページ編集機能を提供できるプラグインがあるというアイデアは気に入っています。baserCMSを引き続き調査し、プロジェクトで使用できるかどうかを確認します。
また、私たち (CakeDC) は、日本で CakePHP を広める方法を模索しています。私たちは国内に優れたユーザーベースを持っており、このフレームワークを支援し宣伝したいと考えています。フレームワークのプロモーションに役立つと思われるアクションは何かありますか?」
そして、メールの署名で知ったが、Jorge は、CakePHPの開発元である、CakeDCの Vice President(副社長)らしい。
なんと。
現地では英語がまともに話せず、良いディスカッションやは何一つできなかったが、これで何とか、ルクセンブルクに行った2つ目の目的「何かしら次に繋がる何かを見つける」に繋がりそうだ。
もともと、日本に広くCakePHPが導入される事を願って baserCMSを作ったというのもある。これからさらに英語を勉強しつつ、次に繋がるようディスカッションを重ね、CakePHPにも協力していきたい。
まとめ
これまで、海外旅行に行ったことはあったが、常に海外に慣れた誰かと一緒で、一人での海外は今回初めてだった。そのため、不安で事前準備にかなり時間をかかったが、これまでは一緒に行ってくれていた誰かが様々な手配をやってくれていたんだなと実感。(もしくは経験値をシェアしてもらっていた)
また、初めての一人での欧州経験で視野が広がったことも大きかった。
これまでは海外に連れられて行っていたので、何も調べる事もなく、やり取りも他の人にやって頂いていたので、視野があまり広がらず、「日本の常識が海外では常識ではない」という事にもあまり気づけていなかった。
最後に、今回、行く前に色々迷い、「申込を間違った」という一つのきっかけを元に「ルクセンブルクに行く」という意思決定をしたわけだが、それによる経験が自分自身の大きな成長に繋がっていると感じている。
もし行かなかったのであれば今回のような貴重な経験はできていないし、目的達成もできていない。
「行動を起こす」という事が自身の成長やチャンスに繋がると良く言われるが、今回の旅はそれを経験できる旅だったなと改めて実感。
あなたも何かチャレンジしてみてはいかがでしょう?