お知らせ

現在サイトのリニューアル作業中のため、全体的にページの表示が乱れています。
投稿日:
ジャンル::サイト運営

最近ちょいちょい気になっていたのですが、WordPressでGAのURLがURLエンコードされずに生の文字列で出るようになってきています。どうもある時期から切り替わっているようで、URLエンコードされた結果は徐々に減っていて、生の文字列の結果が増えてきています。何故だろう?GAの仕様がある日を境に変わったのかなぁ?

GAのURLがURLエンコードされずに生の文字列で出るようになってきている

投稿日:
ジャンル::鉄道

特急はまかぜ大阪行きは姫路駅で長時間停車を行うことがありますが、播但線ホームに停車するため停車したホームには売店がありません。しかし隣のホームには売店が見えます。

買いに行けそうな距離に売店が見えるが買いに行けない…

何とかして買いたいですが、播但線から出るには中間改札を抜ける必要があります。しかし中間改札を抜けると切符を取られて戻ってこられなくなりそうです。中間改札を出入りして売店を利用することはできないのかと思ったのですが、流石に事故ると怖いし、実験するのも大変なのでJR西日本に聞いてみました。

結論としては停車中に中間改札を往来することは可能ですが、ICカードで自動改札を利用するとエラーになるので駅係員に切符ないしICカードを提示して通行すれば問題ないとのことでした。切符を通した場合にどうなるのかは教えてくれなかったので謎ですが、暇な時に試してみようかとは思います。(不審者に見られそうですが…)大阪市営地下鉄の定期券みたいに出入り自由ならワンチャンある気がします。

勿論、改札通過時に駅員が別に対応をしているなどではまかぜの乗車に間に合わなかった場合は自己責任になるので、ほぼ賭けです。ぶっちゃけほとんどやる意味はないと思います。ただ香澄駅からはまかぜ6号に乗ると駅弁がないんですね。折角の特急なので食べたいじゃないですか。そもそもあの時間に駅弁売ってるかや、在来線ホームでいまだに販売があるのかが謎ですが…w

投稿日:
ジャンル::サイト運営

タイトル通りトップページのレイアウトを変えてみました。

誰が見に来てるのか解らない部分なので変えたところでアレですが…w(トップページはアクセス計測してないので。。。)

PCビュー

変更前は縦長のレイアウトだったのですが、もうちょっと余白を活かした方がいいかなと思い、横にもレイアウトしてみました。デザインセンスが皆無なのでなんか余計に微妙になった気もしますが…。

他にも表組だった場所を段落にしたり、Sponsoredのバナーを縦置きにしたり細々と変えてます。

変更前 変更後
変更前、縦長
変更後、情報を一画面で見やすくした

SPビュー

経験技術のところは見やすさがマシになったと思います。余白が詰まって少し息苦しくなった気もします。

PCビューが縦長だったのはレスポンシブ対応をサボる為というのもあったので、今回はそこそこ真面目にやりました。結果、まぁまぁちゃんとレスポンシブになっているとは思います。まぁ、一応本業なので…。ブレークポイント周りの挙動は怪しい気もしてますが…(

変更前 変更後
PCビューとほぼ変わらないがSkillの部分が見づらい。元々レスポンシブ対応が面倒で縦長にしていた。
横に展開された部分が縦に折りたたまれるようにレスポンシブになっている。

あとがき

半ば何のためにあるかわからないトップページですが、素のHTMLを書く機会が少ないので、それを書くためだけにある節があります。それもあってJSは入れず、HTMLとCSSだけで書いてます。

一応自分なりにセマンティクスには拘って書いているつもりですが、概ね自己満足レベルな気はしています。Lighthouseの数値は悪くない気がするので、無難なところかなという気はしていますが…。

Lighthouseの結果は取り合えずぼちぼちな気はする。

Lighthouseの結果

まぁまた気が向いたときにいじろうと思います。この新レイアウトも8月頭に着想して原型を作って、中途半端な状態で今日まで放置してたのを直して何とか形にしたくらいなので…。

こんなんでもやってるとMedia Queries Level 4という新機能を知れたり、HTMLやCSSを書く能力が多少は鍛えられるので悪くないです。

MDNによるとMedia Queries Level 4の対応状況は「それなり」ということですが、今回使用したMedia Queries: Range Syntaxは、どのブラウザも対応してくれてそうで良かったです。MDNでも全てのブラウザがFull supportとあるので安心です。

ESM化が叫ばれて久しいですが、未だにJestはESMとCJSが混在したコードを処理してくれません。

Getting StartedにもSWCに対する言及がないので、きっともう忘れられているのでしょう。swc-project/jestの方も特にやる気はなさそうだし、やりたければ自分でPR書きましょうって感じだと思います。きっと。

確認環境

node_modules配下にESMで作られたモジュールが存在し、コードはTypeScript、トランスパイルにはSWCを利用する。

Env Ver
@swc/cli 0.1.62
@swc/core 1.3.92
@swc/jest 0.2.29
@swc/register 0.1.10
jest 29.7.0
typescript 5.2.2

やったけど意味がなかったこと

  • package.jsontypemoduleにする
  • jest.config.jstransformIgnorePatternsにESMモジュールのパスだけ除外する設定を書く
  • 上記に加えてtransform.jsc.pathpkg-name: ['node_modules/pkg-name']を追記する
  • node --experimental-vm-modules node_modules/jest/bin/jest.jsで実行する
    • 多少マシになったがコケるものはコケる
  • ESMで書かれたモジュールを丸ごとモックする
    • 一切効果なし

所感

多分Webpackでバンドルしてnode_modulesの中身も外も関係ない状態にするのが一番無難なのではないかと思いました。

Node.jsの組み込みテストランナーにすれば解決するかな?と思ったものの、こちらは現状SWCでは使えそうにないので諦めました。
参考までに以下のコマンドで走らさせられます。

node --require @swc/register --test ./src/**/*.spec.ts

取り敢えずESMに引っかったモジュールはCJS時のバージョンを維持しておくことにしましたが、このままだとSWC使えないし、なんとかなって欲しいですね。Webpack使えば解決できるのはわかるんですが、このために使いたくないので、テストを重視する場合、Vitestを持つViteが有力候補になって来そうです。

2024-02-17追記

esbuild + Node.js built-in test runnerの組み合わせであればテストはできるが肝心の実行ができず無意味だった

投稿日:
ジャンル::雑記

この話には賛否両論あると思うが、個人的に良いと思っている部分を話す。この文化は集団の和を保つ上では非常に有効に思う。

まず日本には「暗黙の了解」と言うものがかつてあった。今でも残っているものはあると思うが、大半は消失しただろう。これは多くの人が知っていることによってお互いが平等に快適に暮らせるものであったと考える。何故なら皆そのことだけは意識するからだ。

例えば電車の走る向きが変わった時に、席の向きを変えるのがあると思うが、アレを一人だけ拒んだ場合どうだろう?その人はいいかも知れないが、他の人は迷惑するだろう。勿論必ず迷惑するとは限らないが、迷惑するかしないかを標準化出来る効力はあると思う。

これが思想の強制と言われてしまうと返す言葉もないのだが、集団生活にはルールが必要だ。これは全ての文化でそうだ。日本に限らない。例えば法律がない国はない。どんな国にでも法律はある。但し法律を杓子定規に適用したり、個々人のマナーにまで適応するのはいささか無理がある。

そこで「暗黙の了解」である。民間人が暗黙の了解を持ち合い、それによって必要最低限のコミュニケーションで快適な生活ができるというのは実に合理的であり、素晴らしいことだ。そこには余計な配慮はいらない。勿論、一定数いる無理解な人物に対しては労力が掛かるが、おおよそ大抵のケースでは不要だろう。

しかし昨今ではこの「暗黙の了解」は個人主義の否定だとか、全体主義と言われ忘れられ始めている。結果として何をするにも相手の了承を得ないといけなくなり、互いに面倒になってしまったと感じる。しかも下手に声をかければ相手が逆上してきて加害されることさえないとは言えない世の中だ。

意見の押しつけだとか、個の否定と言う人もいるかもしれないが、果たしてどちらの方がより幸せになれるだろうか?もし、貴方が誰の力を借りずとも山奥で一人で生活できると言うのであれば咎めはしないが、現実は電車や町中、仕事先や学校などで人と関わらざるを得ない人が大半ではないだろうか?

私はもっと昭和に戻るというか、そういった昔の文化を取り戻していけば昨今言われているストレス社会が緩和され、人々が暗黙的に協調し合うようになり、もっと楽に生きていけるのではないかと思う。

各々が好き勝手言っている社会は様々な衝突が多く、気苦労に耐えず、それはきっと大変なのだと思う。そういう意味で私はこの「暗黙の了解」と言うのはあったほうが良いのではないかと思っている。

勿論、この制度も完璧なものではなく、銀の弾丸にはなり得ない、結局のところこの手の選択肢という物は何を優先したときに一番合理的かと言うのが求めるところにあると思う。治安が悪く、ストレスフルであることを是とするなら個人主義も良いだろうし、治安を良くし、ストレスを減らし、協調的で和のある社会を目指すのであれば全体主義は一つの解になるだろうと言うのが私の見解だ。

日本はかつて国際社会から、その平和さ、治安の良さを見習うべきだと賞賛されていた国だったと思うが、欧米文化の浸透により、そういった美徳はことごとく失われたと思っている。だからこそ、かつて日本を蝕んでいた「暗黙の了解」と言う文化を取り戻し、国際的にも異質な文化を持つ国に戻って欲しいと願っている。

勿論「暗黙の了解」だけで今言ったことの全てが解決するとは思わない。これは鍵の一つでしかなく、本質的にはもっと沢山のことが必要だとは思うが、本題とズレてくるので今回はここで締め括り、また追々話していければと思う。